@effect-app/infra 0.83.12 → 0.84.0-next.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 (234) hide show
  1. package/.cache/effect/095519d034161945a8d2616a506d3e7f35a9b3d868814f44c747429c60fc4e7f.content +2 -36
  2. package/.cache/effect/095519d034161945a8d2616a506d3e7f35a9b3d868814f44c747429c60fc4e7f.hash +1 -1
  3. package/.cache/effect/134218688132dfbdea493cbe1f26e73449f2759121df35ddd5448346b59c9a8d.content +6 -24
  4. package/.cache/effect/134218688132dfbdea493cbe1f26e73449f2759121df35ddd5448346b59c9a8d.hash +1 -1
  5. package/.cache/effect/14eb9da4ca6d22162888c7fdb7f39ab772d2a2dc6625db6031ecdb32ac89158f.content +40 -75
  6. package/.cache/effect/14eb9da4ca6d22162888c7fdb7f39ab772d2a2dc6625db6031ecdb32ac89158f.hash +1 -1
  7. package/.cache/effect/1bfd92946b11da4292f2ed99dc0e322462b60559148f9524abc20e26f70779e1.hash +1 -1
  8. package/.cache/effect/49c1bd9ec26e6df78b994d8df0bfe21b119803fa4aa46349bf4679fd0f1e7cda.content +1 -3
  9. package/.cache/effect/49c1bd9ec26e6df78b994d8df0bfe21b119803fa4aa46349bf4679fd0f1e7cda.hash +1 -1
  10. package/.cache/effect/58d4ccde8bd2db7829706db5bebd01b99900ee83f0f6a8413b53d17cbd69f510.content +1 -1
  11. package/.cache/effect/58d4ccde8bd2db7829706db5bebd01b99900ee83f0f6a8413b53d17cbd69f510.hash +1 -1
  12. package/.cache/effect/72a5a16a6b62b63cd71719c833091128207d7e6c823cb32293549b3dd58c451b.content +7 -15
  13. package/.cache/effect/72a5a16a6b62b63cd71719c833091128207d7e6c823cb32293549b3dd58c451b.hash +1 -1
  14. package/.cache/effect/7a9c33db6aedaf00093a132c1d4e48e9d043cef05e932b8a37da24d44e224248.hash +1 -1
  15. package/.cache/effect/8594f0f42afc0641b00e88998000cc47382a1d07da31f4a148f7976701ca22d5.hash +1 -1
  16. package/.cache/effect/c67d971634d2dc8118b40452b61c9a51620c35809be4a89982476aa80701d852.hash +1 -1
  17. package/.cache/effect/f38adf43700dab905456a534a0690eaf882cff2cd576c731f23d6d14a3c3d659.content +1 -5
  18. package/.cache/effect/f38adf43700dab905456a534a0690eaf882cff2cd576c731f23d6d14a3c3d659.hash +1 -1
  19. package/CHANGELOG.md +14 -0
  20. package/_cjs/_ext/Array.cjs +3 -2
  21. package/_cjs/_ext/Array.cjs.map +1 -1
  22. package/_cjs/api/defaultErrorHandler.cjs +11 -10
  23. package/_cjs/api/defaultErrorHandler.cjs.map +1 -1
  24. package/_cjs/api/express/makeJsonSchema.cjs +3 -2
  25. package/_cjs/api/express/makeJsonSchema.cjs.map +1 -1
  26. package/_cjs/api/express/makeJsonSchema.test.cjs +2 -2
  27. package/_cjs/api/express/makeJsonSchema.test.cjs.map +1 -1
  28. package/_cjs/api/express/makeOpenApiSpecs.cjs +4 -3
  29. package/_cjs/api/express/makeOpenApiSpecs.cjs.map +1 -1
  30. package/_cjs/api/express/schema/requestHandler.cjs +24 -22
  31. package/_cjs/api/express/schema/requestHandler.cjs.map +1 -1
  32. package/_cjs/api/express/schema/routing.cjs +22 -20
  33. package/_cjs/api/express/schema/routing.cjs.map +1 -1
  34. package/_cjs/api/reportError.cjs +1 -1
  35. package/_cjs/api/routing.cjs +55 -53
  36. package/_cjs/api/routing.cjs.map +1 -1
  37. package/_cjs/api/setupRequest.cjs +3 -2
  38. package/_cjs/api/setupRequest.cjs.map +1 -1
  39. package/_cjs/api/writeDocs.cjs +5 -4
  40. package/_cjs/api/writeDocs.cjs.map +1 -1
  41. package/_cjs/errorReporter.cjs +11 -10
  42. package/_cjs/errorReporter.cjs.map +1 -1
  43. package/_cjs/errors.cjs +8 -8
  44. package/_cjs/errors.cjs.map +1 -1
  45. package/_cjs/instrument.cjs +2 -1
  46. package/_cjs/instrument.cjs.map +1 -1
  47. package/_cjs/logger/jsonLogger.cjs +4 -4
  48. package/_cjs/logger/jsonLogger.cjs.map +1 -1
  49. package/_cjs/logger/logFmtLogger.cjs +5 -5
  50. package/_cjs/logger/logFmtLogger.cjs.map +1 -1
  51. package/_cjs/logger/shared.cjs +4 -4
  52. package/_cjs/logger/shared.cjs.map +1 -1
  53. package/_cjs/rateLimit.cjs +8 -7
  54. package/_cjs/rateLimit.cjs.map +1 -1
  55. package/_cjs/services/Emailer/Sendgrid.cjs +13 -11
  56. package/_cjs/services/Emailer/Sendgrid.cjs.map +1 -1
  57. package/_cjs/services/Emailer/fake.cjs +5 -4
  58. package/_cjs/services/Emailer/fake.cjs.map +1 -1
  59. package/_cjs/services/Operations/live.cjs +31 -29
  60. package/_cjs/services/Operations/live.cjs.map +1 -1
  61. package/_cjs/services/Operations/service.cjs +1 -1
  62. package/_cjs/services/QueueMaker/errors.cjs +7 -6
  63. package/_cjs/services/QueueMaker/errors.cjs.map +1 -1
  64. package/_cjs/services/QueueMaker/memQueue.cjs +18 -17
  65. package/_cjs/services/QueueMaker/memQueue.cjs.map +1 -1
  66. package/_cjs/services/QueueMaker/sbqueue.cjs +16 -15
  67. package/_cjs/services/QueueMaker/sbqueue.cjs.map +1 -1
  68. package/_cjs/services/Repository.cjs +17 -16
  69. package/_cjs/services/Repository.cjs.map +1 -1
  70. package/_cjs/services/RepositoryBase.cjs +35 -33
  71. package/_cjs/services/RepositoryBase.cjs.map +1 -1
  72. package/_cjs/services/RequestContextContainer.cjs +11 -10
  73. package/_cjs/services/RequestContextContainer.cjs.map +1 -1
  74. package/_cjs/services/Store/Cosmos.cjs +49 -46
  75. package/_cjs/services/Store/Cosmos.cjs.map +1 -1
  76. package/_cjs/services/Store/Disk.cjs +19 -18
  77. package/_cjs/services/Store/Disk.cjs.map +1 -1
  78. package/_cjs/services/Store/Memory.cjs +27 -25
  79. package/_cjs/services/Store/Memory.cjs.map +1 -1
  80. package/_cjs/services/Store/Redis.cjs +16 -14
  81. package/_cjs/services/Store/Redis.cjs.map +1 -1
  82. package/_cjs/services/Store/codeFilter.test.cjs +1 -1
  83. package/_cjs/services/Store/index.cjs +6 -5
  84. package/_cjs/services/Store/index.cjs.map +1 -1
  85. package/_cjs/services/Store/service.cjs +1 -1
  86. package/_cjs/services/Store/service.cjs.map +1 -1
  87. package/_cjs/services/Store/utils.cjs +13 -13
  88. package/_cjs/services/Store/utils.cjs.map +1 -1
  89. package/_cjs/services/simpledb/cosmosdb.cjs +19 -17
  90. package/_cjs/services/simpledb/cosmosdb.cjs.map +1 -1
  91. package/_cjs/services/simpledb/diskdb.cjs +9 -8
  92. package/_cjs/services/simpledb/diskdb.cjs.map +1 -1
  93. package/_cjs/services/simpledb/memdb.cjs +11 -9
  94. package/_cjs/services/simpledb/memdb.cjs.map +1 -1
  95. package/_cjs/services/simpledb/mongodb.cjs +20 -18
  96. package/_cjs/services/simpledb/mongodb.cjs.map +1 -1
  97. package/_cjs/services/simpledb/redisdb.cjs +11 -10
  98. package/_cjs/services/simpledb/redisdb.cjs.map +1 -1
  99. package/_cjs/services/simpledb/shared.cjs +5 -5
  100. package/_cjs/services/simpledb/shared.cjs.map +1 -1
  101. package/_cjs/services/simpledb/simpledb.cjs +18 -17
  102. package/_cjs/services/simpledb/simpledb.cjs.map +1 -1
  103. package/_src/api/authorization.jwt.ts +1 -1
  104. package/_src/api/defaultErrorHandler.ts +2 -2
  105. package/_src/api/express/routing.ts.bak +8 -8
  106. package/_src/api/express/schema/requestHandler.ts +12 -12
  107. package/_src/api/express/schema/routing.ts +11 -11
  108. package/_src/api/routing.ts +14 -13
  109. package/_src/errorReporter.ts +1 -1
  110. package/_src/services/Emailer/Sendgrid.ts +1 -1
  111. package/_src/services/Operations/live.ts +5 -5
  112. package/_src/services/QueueMaker/errors.ts +1 -1
  113. package/_src/services/QueueMaker/memQueue.ts +2 -2
  114. package/_src/services/QueueMaker/sbqueue.ts +1 -1
  115. package/_src/services/Repository.ts +9 -9
  116. package/_src/services/RepositoryBase.ts +8 -6
  117. package/_src/services/RequestContextContainer.ts +1 -1
  118. package/_src/services/Store/Cosmos.ts +17 -12
  119. package/_src/services/Store/Disk.ts +4 -4
  120. package/_src/services/Store/Memory.ts +4 -4
  121. package/_src/services/Store/Redis.ts +1 -1
  122. package/_src/services/Store/index.test.ts.bak +5 -5
  123. package/_src/services/Store/index.ts +1 -1
  124. package/_src/services/Store/utils.ts +16 -16
  125. package/_src/services/simpledb/diskdb.ts +1 -1
  126. package/_src/services/simpledb/memdb.ts +1 -1
  127. package/_src/services/simpledb/redisdb.ts +1 -1
  128. package/_src/services/simpledb/shared.ts +1 -1
  129. package/_src/services/simpledb/simpledb.ts +3 -3
  130. package/dist/RequestContext.d.ts +20 -20
  131. package/dist/_ext/Array.js +4 -3
  132. package/dist/api/defaultErrorHandler.js +12 -11
  133. package/dist/api/express/makeJsonSchema.js +4 -3
  134. package/dist/api/express/makeOpenApiSpecs.js +5 -4
  135. package/dist/api/express/schema/requestHandler.d.ts +1 -1
  136. package/dist/api/express/schema/requestHandler.js +35 -33
  137. package/dist/api/express/schema/routing.d.ts +1 -1
  138. package/dist/api/express/schema/routing.js +23 -21
  139. package/dist/api/reportError.d.ts +3 -3
  140. package/dist/api/reportError.d.ts.map +1 -1
  141. package/dist/api/reportError.js +1 -1
  142. package/dist/api/routing.d.ts +2 -2
  143. package/dist/api/routing.d.ts.map +1 -1
  144. package/dist/api/routing.js +59 -57
  145. package/dist/api/setupRequest.d.ts +1 -1
  146. package/dist/api/setupRequest.d.ts.map +1 -1
  147. package/dist/api/setupRequest.js +4 -3
  148. package/dist/api/writeDocs.js +6 -5
  149. package/dist/errorReporter.js +12 -11
  150. package/dist/errors.d.ts +7 -7
  151. package/dist/errors.js +9 -9
  152. package/dist/filter.d.ts.map +1 -1
  153. package/dist/instrument.js +3 -2
  154. package/dist/logger/jsonLogger.d.ts +2 -2
  155. package/dist/logger/jsonLogger.d.ts.map +1 -1
  156. package/dist/logger/jsonLogger.js +5 -5
  157. package/dist/logger/logFmtLogger.d.ts +2 -2
  158. package/dist/logger/logFmtLogger.d.ts.map +1 -1
  159. package/dist/logger/logFmtLogger.js +6 -6
  160. package/dist/logger/shared.js +5 -5
  161. package/dist/rateLimit.d.ts +2 -2
  162. package/dist/rateLimit.d.ts.map +1 -1
  163. package/dist/rateLimit.js +9 -8
  164. package/dist/services/Emailer/Sendgrid.d.ts +1 -1
  165. package/dist/services/Emailer/Sendgrid.d.ts.map +1 -1
  166. package/dist/services/Emailer/Sendgrid.js +16 -14
  167. package/dist/services/Emailer/fake.d.ts +1 -1
  168. package/dist/services/Emailer/fake.d.ts.map +1 -1
  169. package/dist/services/Emailer/fake.js +6 -5
  170. package/dist/services/Emailer/service.d.ts +2 -2
  171. package/dist/services/Operations/live.d.ts +1 -1
  172. package/dist/services/Operations/live.d.ts.map +1 -1
  173. package/dist/services/Operations/live.js +39 -37
  174. package/dist/services/Operations/service.d.ts +7 -7
  175. package/dist/services/Operations/service.d.ts.map +1 -1
  176. package/dist/services/Operations/service.js +1 -1
  177. package/dist/services/QueueMaker/errors.d.ts +4 -4
  178. package/dist/services/QueueMaker/errors.d.ts.map +1 -1
  179. package/dist/services/QueueMaker/errors.js +7 -6
  180. package/dist/services/QueueMaker/memQueue.d.ts +1 -1
  181. package/dist/services/QueueMaker/memQueue.js +17 -16
  182. package/dist/services/QueueMaker/sbqueue.d.ts +2 -2
  183. package/dist/services/QueueMaker/sbqueue.d.ts.map +1 -1
  184. package/dist/services/QueueMaker/sbqueue.js +16 -15
  185. package/dist/services/Repository.d.ts +8 -8
  186. package/dist/services/Repository.d.ts.map +1 -1
  187. package/dist/services/Repository.js +18 -17
  188. package/dist/services/RepositoryBase.d.ts +24 -75
  189. package/dist/services/RepositoryBase.d.ts.map +1 -1
  190. package/dist/services/RepositoryBase.js +37 -35
  191. package/dist/services/RequestContextContainer.d.ts +4 -4
  192. package/dist/services/RequestContextContainer.d.ts.map +1 -1
  193. package/dist/services/RequestContextContainer.js +14 -13
  194. package/dist/services/Store/Cosmos.d.ts +2 -2
  195. package/dist/services/Store/Cosmos.d.ts.map +1 -1
  196. package/dist/services/Store/Cosmos.js +54 -51
  197. package/dist/services/Store/Disk.d.ts +2 -2
  198. package/dist/services/Store/Disk.d.ts.map +1 -1
  199. package/dist/services/Store/Disk.js +20 -19
  200. package/dist/services/Store/Memory.d.ts +3 -3
  201. package/dist/services/Store/Memory.d.ts.map +1 -1
  202. package/dist/services/Store/Memory.js +28 -26
  203. package/dist/services/Store/Redis.d.ts +2 -2
  204. package/dist/services/Store/Redis.d.ts.map +1 -1
  205. package/dist/services/Store/Redis.js +17 -15
  206. package/dist/services/Store/index.d.ts +1 -1
  207. package/dist/services/Store/index.d.ts.map +1 -1
  208. package/dist/services/Store/index.js +7 -6
  209. package/dist/services/Store/service.d.ts +5 -5
  210. package/dist/services/Store/service.js +2 -2
  211. package/dist/services/Store/utils.d.ts +3 -3
  212. package/dist/services/Store/utils.d.ts.map +1 -1
  213. package/dist/services/Store/utils.js +21 -21
  214. package/dist/services/simpledb/cosmosdb.d.ts +2 -2
  215. package/dist/services/simpledb/cosmosdb.d.ts.map +1 -1
  216. package/dist/services/simpledb/cosmosdb.js +19 -17
  217. package/dist/services/simpledb/diskdb.d.ts +2 -2
  218. package/dist/services/simpledb/diskdb.d.ts.map +1 -1
  219. package/dist/services/simpledb/diskdb.js +10 -9
  220. package/dist/services/simpledb/memdb.d.ts +3 -3
  221. package/dist/services/simpledb/memdb.d.ts.map +1 -1
  222. package/dist/services/simpledb/memdb.js +13 -11
  223. package/dist/services/simpledb/mongodb.d.ts +2 -2
  224. package/dist/services/simpledb/mongodb.d.ts.map +1 -1
  225. package/dist/services/simpledb/mongodb.js +16 -14
  226. package/dist/services/simpledb/redisdb.d.ts +8 -8
  227. package/dist/services/simpledb/redisdb.d.ts.map +1 -1
  228. package/dist/services/simpledb/redisdb.js +12 -11
  229. package/dist/services/simpledb/shared.d.ts +13 -13
  230. package/dist/services/simpledb/shared.js +6 -6
  231. package/dist/services/simpledb/simpledb.d.ts +4 -4
  232. package/dist/services/simpledb/simpledb.d.ts.map +1 -1
  233. package/dist/services/simpledb/simpledb.js +16 -15
  234. package/package.json +5 -5
@@ -1,17 +1,19 @@
1
1
  import * as tsplus_module_1 from "effect/Data";
2
2
  import * as tsplus_module_2 from "effect/Effect";
3
- import * as tsplus_module_3 from "effect/Option";
4
- import * as tsplus_module_4 from "effect/ReadonlyArray";
3
+ import * as tsplus_module_3 from "effect/Effect.impl";
4
+ import * as tsplus_module_4 from "effect/Option.impl";
5
+ import * as tsplus_module_5 from "effect/Option";
6
+ import * as tsplus_module_6 from "effect/ReadonlyArray.int";
5
7
  import { typedKeysOf } from "@effect-app/core/utils";
6
8
  import * as Cosmos from "@effect-app/infra-adapters/cosmos-client";
7
9
  import { OptimisticLockException } from "./shared.js";
8
10
  import * as simpledb from "./simpledb.js";
9
- class CosmosDbOperationError extends tsplus_module_1.TaggedError("CosmosDbOperationError") {
11
+ class CosmosDbOperationError extends tsplus_module_1.Data.TaggedError("CosmosDbOperationError") {
10
12
  constructor(message) {
11
13
  super({ message });
12
14
  }
13
15
  }
14
- const setup = (type, indexingPolicy) => tsplus_module_2.tap(Cosmos.CosmosClient, ({ db }) => tsplus_module_2.tryPromise(() => db
16
+ const setup = (type, indexingPolicy) => tsplus_module_3.tap(Cosmos.CosmosClient, ({ db }) => tsplus_module_2.Effect.tryPromise(() => db
15
17
  .containers
16
18
  .create({ id: type, indexingPolicy })
17
19
  .catch((err) => console.warn(err))));
@@ -21,18 +23,18 @@ export function createContext() {
21
23
  return (type, encode, decode,
22
24
  // schemaVersion: string,
23
25
  indexes) => {
24
- return tsplus_module_2.map(setup(type, indexes), () => ({
26
+ return tsplus_module_3.map(setup(type, indexes), () => ({
25
27
  find: simpledb.find(find, decode, type),
26
28
  findBy,
27
29
  save: simpledb.storeDirectly(store, type)
28
30
  }));
29
31
  function find(id) {
30
- return tsplus_module_2.map(tsplus_module_2.map(tsplus_module_2.flatMap(Cosmos
31
- .CosmosClient, ({ db }) => tsplus_module_2.tryPromise(() => db.container(type).item(id).read())), (i) => tsplus_module_3.fromNullable(i.resource)), (_) => tsplus_module_3.map(_, ({ _etag, data }) => ({ version: _etag, data })));
32
+ return tsplus_module_3.map(tsplus_module_3.map(tsplus_module_3.flatMap(Cosmos
33
+ .CosmosClient, ({ db }) => tsplus_module_2.Effect.tryPromise(() => db.container(type).item(id).read())), (i) => tsplus_module_5.Option.fromNullable(i.resource)), (_) => tsplus_module_4.map(_, ({ _etag, data }) => ({ version: _etag, data })));
32
34
  }
33
35
  function findBy(parameters) {
34
- return tsplus_module_2.map(tsplus_module_2.map(tsplus_module_2.flatMap(Cosmos
35
- .CosmosClient, ({ db }) => tsplus_module_2.tryPromise(() => db
36
+ return tsplus_module_3.map(tsplus_module_3.map(tsplus_module_3.flatMap(Cosmos
37
+ .CosmosClient, ({ db }) => tsplus_module_2.Effect.tryPromise(() => db
36
38
  .container(type)
37
39
  .items
38
40
  .query({
@@ -50,20 +52,20 @@ WHERE (
50
52
  value: parameters[p]
51
53
  }))
52
54
  })
53
- .fetchAll())), (x) => tsplus_module_4.head(x.resources)), (_) => tsplus_module_3.map(_, (_) => _.id));
55
+ .fetchAll())), (x) => tsplus_module_6.head(x.resources)), (_) => tsplus_module_4.map(_, (_) => _.id));
54
56
  }
55
57
  function store(record, currentVersion) {
56
- return tsplus_module_2.gen(function* ($) {
58
+ return tsplus_module_2.Effect.gen(function* ($) {
57
59
  const version = "_etag"; // we get this from the etag anyway.
58
60
  const { db } = yield* $(Cosmos.CosmosClient);
59
61
  const data = yield* $(encode(record));
60
- yield* $(tsplus_module_3.match(currentVersion, {
61
- onNone: () => tsplus_module_2.orDie(tsplus_module_2.asUnit(tsplus_module_2.tryPromise(() => db.container(type).items.create({
62
+ yield* $(tsplus_module_4.match(currentVersion, {
63
+ onNone: () => tsplus_module_3.orDie(tsplus_module_3.asUnit(tsplus_module_2.Effect.tryPromise(() => db.container(type).items.create({
62
64
  id: record.id,
63
65
  timestamp: new Date(),
64
66
  data
65
67
  })))),
66
- onSome: (currentVersion) => tsplus_module_2.flatMap(tsplus_module_2.orDie(tsplus_module_2.tryPromise(() => db
68
+ onSome: (currentVersion) => tsplus_module_3.flatMap(tsplus_module_3.orDie(tsplus_module_2.Effect.tryPromise(() => db
67
69
  .container(type)
68
70
  .item(record.id)
69
71
  .replace({
@@ -80,9 +82,9 @@ WHERE (
80
82
  return new OptimisticLockException(type, record.id);
81
83
  }
82
84
  if (x.statusCode > 299 || x.statusCode < 200) {
83
- return tsplus_module_2.die(new CosmosDbOperationError("not able to update record: " + x.statusCode));
85
+ return tsplus_module_2.Effect.die(new CosmosDbOperationError("not able to update record: " + x.statusCode));
84
86
  }
85
- return tsplus_module_2.unit;
87
+ return tsplus_module_2.Effect.unit;
86
88
  })
87
89
  }));
88
90
  return { version, data: record };
@@ -90,4 +92,4 @@ WHERE (
90
92
  }
91
93
  };
92
94
  }
93
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29zbW9zZGIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9fc3JjL3NlcnZpY2VzL3NpbXBsZWRiL2Nvc21vc2RiLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFDQSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sd0JBQXdCLENBQUE7QUFFcEQsT0FBTyxLQUFLLE1BQU0sTUFBTSwwQ0FBMEMsQ0FBQTtBQUVsRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxhQUFhLENBQUE7QUFDckQsT0FBTyxLQUFLLFFBQVEsTUFBTSxlQUFlLENBQUE7QUFHekMsTUFBTSxzQkFBdUIsU0FBUSw0QkFBaUIsd0JBQXdCLENBQXNCO0lBQ2xHLFlBQVksT0FBZTtRQUN6QixLQUFLLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFBO0lBQ3BCLENBQUM7Q0FDRjtBQUVELE1BQU0sS0FBSyxHQUFHLENBQUMsSUFBWSxFQUFFLGNBQThCLEVBQUUsRUFBRSxDQUM3RCxvQkFBQSxNQUFNLENBQUMsWUFBWSxFQUFLLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQ2pDLDJCQUFrQixHQUFHLEVBQUUsQ0FDckIsRUFBRTtLQUNDLFVBQVU7S0FDVixNQUFNLENBQUMsRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLGNBQWMsRUFBRSxDQUFDO0tBQ3BDLEtBQUssQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUNyQyxDQUNGLENBQUE7QUFDSCx1REFBdUQ7QUFDdkQsZ0ZBQWdGO0FBQ2hGLE1BQU0sVUFBVSxhQUFhO0lBQzNCLE9BQU8sQ0FDTCxJQUFZLEVBQ1osTUFBaUQsRUFDakQsTUFBOEM7SUFDOUMseUJBQXlCO0lBQ3pCLE9BQXVCLEVBQ3ZCLEVBQUU7UUFDRixPQUFPLG9CQUFBLEtBQUssQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDLEVBQUssR0FBRyxFQUFF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
95
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29zbW9zZGIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9fc3JjL3NlcnZpY2VzL3NpbXBsZWRiL2Nvc21vc2RiLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUNBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQTtBQUVwRCxPQUFPLEtBQUssTUFBTSxNQUFNLDBDQUEwQyxDQUFBO0FBRWxFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUNyRCxPQUFPLEtBQUssUUFBUSxNQUFNLGVBQWUsQ0FBQTtBQUd6QyxNQUFNLHNCQUF1QixTQUFRLGdCQUFBLElBQUksQ0FBQyxXQUFXLENBQUMsd0JBQXdCLENBQXNCO0lBQ2xHLFlBQVksT0FBZTtRQUN6QixLQUFLLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFBO0lBQ3BCLENBQUM7Q0FDRjtBQUVELE1BQU0sS0FBSyxHQUFHLENBQUMsSUFBWSxFQUFFLGNBQThCLEVBQUUsRUFBRSxDQUM3RCxvQkFBQSxNQUFNLENBQUMsWUFBWSxFQUFLLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQ2pDLGdCQUFBLE1BQU0sQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQ3JCLEVBQUU7S0FDQyxVQUFVO0tBQ1YsTUFBTSxDQUFDLEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSxjQUFjLEVBQUUsQ0FBQztLQUNwQyxLQUFLLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FDckMsQ0FDRixDQUFBO0FBQ0gsdURBQXVEO0FBQ3ZELGdGQUFnRjtBQUNoRixNQUFNLFVBQVUsYUFBYTtJQUMzQixPQUFPLENBQ0wsSUFBWSxFQUNaLE1BQWlELEVBQ2pELE1BQThDO0lBQzlDLHlCQUF5QjtJQUN6QixPQUF1QixFQUN2QixFQUFFO1FBQ0YsT0FBTyxvQkFBQSxLQUFL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
@@ -1,9 +1,9 @@
1
1
  import { Effect } from "effect/Effect";
2
- import { Option } from "@effect-app/core/Option";
2
+ import { Option } from "effect/Option";
3
3
  import type { DBRecord, Index } from "./shared.js";
4
4
  import { CouldNotAquireDbLockException } from "./shared.js";
5
5
  import * as simpledb from "./simpledb.js";
6
- export declare function createContext<TKey extends string, EA, A extends DBRecord<TKey>>(): <REncode, RDecode, EDecode>(type: string, encode: (record: A) => import("effect/Effect").Effect<REncode, never, EA>, decode: (d: EA) => import("effect/Effect").Effect<RDecode, EDecode, A>, schemaVersion: string, makeIndexKey: (r: A) => Index, dir?: string) => {
6
+ export declare function createContext<TKey extends string, EA, A extends DBRecord<TKey>>(): <REncode, RDecode, EDecode>(type: string, encode: (record: A) => Effect<REncode, never, EA>, decode: (d: EA) => Effect<RDecode, EDecode, A>, schemaVersion: string, makeIndexKey: (r: A) => Index, dir?: string) => {
7
7
  find: (id: string) => import("effect/Effect").Effect<simpledb.RecordCache | RDecode, simpledb.InvalidStateError, import("effect/Option").Option<A>>;
8
8
  findByIndex: (index: Index) => import("effect/Effect").Effect<never, never, import("effect/Option").Option<TKey & {}>>;
9
9
  save: (record: A) => import("effect/Effect").Effect<simpledb.RecordCache | REncode, CouldNotAquireDbLockException | import("./shared.js").OptimisticLockException | simpledb.InvalidStateError, A>;
@@ -1 +1 @@
1
- {"version":3,"file":"diskdb.d.ts","sourceRoot":"","sources":["../../../_src/services/simpledb/diskdb.ts"],"names":[],"mappings":";;AAMA,OAAO,KAAK,EAAgB,QAAQ,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AAChE,OAAO,EAAuB,6BAA6B,EAA+B,MAAM,aAAa,CAAA;AAC7G,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AAGzC,wBAAgB,aAAa,CAAC,IAAI,SAAS,MAAM,EAAE,EAAE,EAAE,CAAC,SAAS,QAAQ,CAAC,IAAI,CAAC,uCAErE,MAAM,mBACK,CAAC,qEACN,EAAE,yEACC,MAAM,oBACH,CAAC,KAAK,KAAK;;yBAkGN,KAAK;;EA+B/B;AAQD,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,QASrC"}
1
+ {"version":3,"file":"diskdb.d.ts","sourceRoot":"","sources":["../../../_src/services/simpledb/diskdb.ts"],"names":[],"mappings":";;AAMA,OAAO,KAAK,EAAgB,QAAQ,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AAChE,OAAO,EAAuB,6BAA6B,EAA+B,MAAM,aAAa,CAAA;AAC7G,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AAGzC,wBAAgB,aAAa,CAAC,IAAI,SAAS,MAAM,EAAE,EAAE,EAAE,CAAC,SAAS,QAAQ,CAAC,IAAI,CAAC,uCAErE,MAAM,mBACK,CAAC,KAAK,OAAO,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,cACrC,EAAE,KAAK,OAAO,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC,iBAC/B,MAAM,oBACH,CAAC,KAAK,KAAK;;yBAkGN,KAAK;;EA+B/B;AAQD,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,QASrC"}
@@ -1,6 +1,7 @@
1
- import * as tsplus_module_1 from "effect/Option";
2
- import * as tsplus_module_2 from "effect/Effect";
3
- import * as tsplus_module_3 from "@effect-app/core/Option";
1
+ import * as tsplus_module_1 from "effect/Option.impl";
2
+ import * as tsplus_module_2 from "effect/Effect.impl";
3
+ import * as tsplus_module_3 from "effect/Effect";
4
+ import * as tsplus_module_4 from "effect/Option";
4
5
  import { flow, pipe } from "@effect-app/core/Function";
5
6
  import fs from "fs";
6
7
  import * as PLF from "proper-lockfile";
@@ -27,7 +28,7 @@ export function createContext() {
27
28
  const idx = makeIndexKey(record);
28
29
  return tsplus_module_1.isSome(currentVersion)
29
30
  ? tsplus_module_2.map(tsplus_module_2.scoped(tsplus_module_2.zipRight(lockIndex(record), tsplus_module_2.orDie(tsplus_module_2.flatMap(readIndex(idx), (x) => x[record.id]
30
- ? tsplus_module_2.fail(() => new Error("Combination already exists, abort"))
31
+ ? tsplus_module_3.Effect.fail(() => new Error("Combination already exists, abort"))
31
32
  : tsplus_module_2.zipRight(tsplus_module_2.flatMap(getData(record), (serialised) => fu.writeTextFile(getFilename(type, record.id), serialised)), writeIndex(idx, { ...x, [idx.key]: record.id })))))), () => ({ version, data: record }))
32
33
  : tsplus_module_2.map(tsplus_module_2.flatMap(getData(record), (serialised) => fu.writeTextFile(getFilename(type, record.id), serialised)), () => ({ version, data: record }));
33
34
  }
@@ -57,7 +58,7 @@ export function createContext() {
57
58
  }
58
59
  function readFile(filePath) {
59
60
  return tsplus_module_2.catchAll(fu
60
- .readTextFile(filePath), (err) => tsplus_module_2.die(new ConnectionException(err)));
61
+ .readTextFile(filePath), (err) => tsplus_module_3.Effect.die(new ConnectionException(err)));
61
62
  }
62
63
  function find(type) {
63
64
  return (id) => {
@@ -65,7 +66,7 @@ export function createContext() {
65
66
  };
66
67
  }
67
68
  function getIdx(index) {
68
- return tsplus_module_2.map(readIndex(index), (idx) => tsplus_module_1.fromNullable(idx[index.key]));
69
+ return tsplus_module_2.map(readIndex(index), (idx) => tsplus_module_4.Option.fromNullable(idx[index.key]));
69
70
  }
70
71
  function readIndex(index) {
71
72
  return tsplus_module_2.map(tryRead(getIdxName(type, index.doc)), (_) => tsplus_module_1.match(_, { onNone: () => ({}), onSome: (x) => JSON.parse(x) }));
@@ -75,7 +76,7 @@ export function createContext() {
75
76
  }
76
77
  function tryRead(filePath) {
77
78
  return tsplus_module_2.flatMap(fu
78
- .fileExists(filePath), (exists) => !exists ? tsplus_module_2.sync(() => tsplus_module_3.none) : tsplus_module_2.map(readFile(filePath), tsplus_module_1.some));
79
+ .fileExists(filePath), (exists) => !exists ? tsplus_module_3.Effect.sync(() => tsplus_module_4.Option.none()) : tsplus_module_2.map(readFile(filePath), tsplus_module_4.Option.some));
79
80
  }
80
81
  function getFilename(type, id) {
81
82
  return `${dir}/v${schemaVersion}.${getRecordName(type, id)}.json`;
@@ -86,7 +87,7 @@ export function createContext() {
86
87
  };
87
88
  }
88
89
  function lockFile(fileName) {
89
- return tsplus_module_2.tryPromise(() => PLF.lock(fileName).then(flow(tsplus_module_2.tryPromise, (_) => tsplus_module_2.orDie(_))));
90
+ return tsplus_module_3.Effect.tryPromise(() => PLF.lock(fileName).then(flow(tsplus_module_3.Effect.tryPromise, (_) => tsplus_module_2.orDie(_))));
90
91
  }
91
92
  // TODO: ugh.
92
93
  let initialised = false;
@@ -99,4 +100,4 @@ export function initialise(dir) {
99
100
  }
100
101
  initialised = true;
101
102
  }
102
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlza2RiLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vX3NyYy9zZXJ2aWNlcy9zaW1wbGVkYi9kaXNrZGIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsT0FBTyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQTtBQUN0RCxPQUFPLEVBQUUsTUFBTSxJQUFJLENBQUE7QUFDbkIsT0FBTyxLQUFLLEdBQUcsTUFBTSxpQkFBaUIsQ0FBQTtBQUV0QyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sd0JBQXdCLENBQUE7QUFDL0MsT0FBTyxLQUFLLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQTtBQUV6RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsNkJBQTZCLEVBQUUsWUFBWSxFQUFFLGFBQWEsRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUM3RyxPQUFPLEtBQUssUUFBUSxNQUFNLGVBQWUsQ0FBQTtBQUd6QyxNQUFNLFVBQVUsYUFBYTtJQUMzQixPQUFPLENBQ0wsSUFBWSxFQUNaLE1BQWlELEVBQ2pELE1BQThDLEVBQzlDLGFBQXFCLEVBQ3JCLFlBQTZCLEVBQzdCLEdBQUcsR0FBRyxXQUFXLEVBQ2pCLEVBQUU7UUFDRixVQUFVLENBQUMsR0FBRyxDQUFDLENBQUE7UUFDZixNQUFNLFVBQVUsR0FBRyxhQUFhLENBQUE7UUFDaEMsTUFBTSxXQUFXLEdBQUcsVUFBVSxDQUFDLElBQUksRUFBRSxVQUFVLENBQUMsQ0FBQTtRQUNoRCxJQUFJLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDO1lBQ2hDLEVBQUUsQ0FBQyxhQUFhLENBQUMsV0FBVyxFQUFFLEVBQUUsRUFBRSxPQUFPLENBQUMsQ0FBQTtRQUM1QyxDQUFDO1FBRUQsT0FBTztZQUNMLElBQUksRUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDO1lB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
103
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlza2RiLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vX3NyYy9zZXJ2aWNlcy9zaW1wbGVkYi9kaXNrZGIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLE1BQU0sMkJBQTJCLENBQUE7QUFDdEQsT0FBTyxFQUFFLE1BQU0sSUFBSSxDQUFBO0FBQ25CLE9BQU8sS0FBSyxHQUFHLE1BQU0saUJBQWlCLENBQUE7QUFFdEMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLHdCQUF3QixDQUFBO0FBQy9DLE9BQU8sS0FBSyxFQUFFLE1BQU0scUNBQXFDLENBQUE7QUFFekQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLDZCQUE2QixFQUFFLFlBQVksRUFBRSxhQUFhLEVBQUUsTUFBTSxhQUFhLENBQUE7QUFDN0csT0FBTyxLQUFLLFFBQVEsTUFBTSxlQUFlLENBQUE7QUFHekMsTUFBTSxVQUFVLGFBQWE7SUFDM0IsT0FBTyxDQUNMLElBQVksRUFDWixNQUFpRCxFQUNqRCxNQUE4QyxFQUM5QyxhQUFxQixFQUNyQixZQUE2QixFQUM3QixHQUFHLEdBQUcsV0FBVyxFQUNqQixFQUFFO1FBQ0YsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFBO1FBQ2YsTUFBTSxVQUFVLEdBQUcsYUFBYSxDQUFBO1FBQ2hDLE1BQU0sV0FBVyxHQUFHLFVBQVUsQ0FBQyxJQUFJLEVBQUUsVUFBVSxDQUFDLENBQUE7UUFDaEQsSUFBSSxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQztZQUNoQyxFQUFFLENBQUMsYUFBYSxDQUFDLFdBQVcsRUFBRSxFQUFFLEVBQUUsT0FBTyxDQUFDLENBQUE7UUFDNUMsQ0FBQztRQUVELE9BQU87WUFDTCxJQUFJLEVBQUUsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQztZ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
@@ -1,12 +1,12 @@
1
1
  import { Effect } from "effect/Effect";
2
2
  import { Equivalence } from "effect/Equivalence";
3
- import { Option } from "@effect-app/core/Option";
3
+ import { Option } from "effect/Option";
4
4
  import * as MO from "@effect-app/schema";
5
5
  import type { DBRecord } from "./shared.js";
6
6
  import * as simpledb from "./simpledb.js";
7
- export declare function createContext<TKey extends string, EA, A extends DBRecord<TKey>>(): <REncode, RDecode, EDecode>(type: string, encode: (record: A) => import("effect/Effect").Effect<REncode, never, EA>, decode: (d: EA) => import("effect/Effect").Effect<RDecode, EDecode, A>) => {
7
+ export declare function createContext<TKey extends string, EA, A extends DBRecord<TKey>>(): <REncode, RDecode, EDecode>(type: string, encode: (record: A) => Effect<REncode, never, EA>, decode: (d: EA) => Effect<RDecode, EDecode, A>) => {
8
8
  find: (id: string) => import("effect/Effect").Effect<simpledb.RecordCache | RDecode, MO.CondemnException | simpledb.InvalidStateError, import("effect/Option").Option<A>>;
9
- findBy: <V extends Partial<A>>(keys: V, eq: import("effect/Equivalence").Equivalence<V>) => import("effect/Effect").Effect<RDecode, MO.CondemnException, import("effect/Option").Option<A & {}>>;
9
+ findBy: <V extends Partial<A>>(keys: V, eq: Equivalence<V>) => import("effect/Effect").Effect<RDecode, MO.CondemnException, import("effect/Option").Option<A & {}>>;
10
10
  save: (record: A) => import("effect/Effect").Effect<simpledb.RecordCache | REncode, MO.CondemnException | import("./shared.js").OptimisticLockException | simpledb.InvalidStateError, A>;
11
11
  };
12
12
  //# sourceMappingURL=memdb.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"memdb.d.ts","sourceRoot":"","sources":["../../../_src/services/simpledb/memdb.ts"],"names":[],"mappings":";;;AACA,OAAO,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAExC,OAAO,KAAK,EAAgB,QAAQ,EAAE,MAAM,aAAa,CAAA;AAEzD,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AASzC,wBAAgB,aAAa,CAAC,IAAI,SAAS,MAAM,EAAE,EAAE,EAAE,CAAC,SAAS,QAAQ,CAAC,IAAI,CAAC,uCAErE,MAAM,mBACK,CAAC,qEACN,EAAE;;;;EA2DjB"}
1
+ {"version":3,"file":"memdb.d.ts","sourceRoot":"","sources":["../../../_src/services/simpledb/memdb.ts"],"names":[],"mappings":";;;AACA,OAAO,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAExC,OAAO,KAAK,EAAgB,QAAQ,EAAE,MAAM,aAAa,CAAA;AAEzD,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AASzC,wBAAgB,aAAa,CAAC,IAAI,SAAS,MAAM,EAAE,EAAE,EAAE,CAAC,SAAS,QAAQ,CAAC,IAAI,CAAC,uCAErE,MAAM,mBACK,CAAC,KAAK,OAAO,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,cACrC,EAAE,KAAK,OAAO,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;;yCAmBF,CAAC,MAAM,YAAY,CAAC,CAAC;;EAwCpE"}
@@ -1,7 +1,9 @@
1
- import * as tsplus_module_1 from "effect/Option";
2
- import * as tsplus_module_2 from "effect/Effect";
3
- import * as tsplus_module_3 from "@effect-app/core/Effect";
4
- import * as tsplus_module_4 from "effect/Exit";
1
+ import * as tsplus_module_1 from "effect/Option.impl";
2
+ import * as tsplus_module_2 from "effect/Effect.impl";
3
+ import * as tsplus_module_3 from "@effect-app/core/EffectX";
4
+ import * as tsplus_module_4 from "effect/Option";
5
+ import * as tsplus_module_5 from "effect/Effect";
6
+ import * as tsplus_module_6 from "effect/Exit.int";
5
7
  import { flow } from "@effect-app/core/Function";
6
8
  import * as MO from "@effect-app/schema";
7
9
  import { getRecordName, makeMap, SerializedDBRecord } from "./shared.js";
@@ -26,20 +28,20 @@ export function createContext() {
26
28
  }
27
29
  function findBy(keys, eq) {
28
30
  // Naive implementation, fine for in memory testing purposes.
29
- return tsplus_module_2.map(tsplus_module_2.gen(function* ($) {
31
+ return tsplus_module_2.map(tsplus_module_5.Effect.gen(function* ($) {
30
32
  for (const [, value] of storage) {
31
33
  const sdb_ = JSON.parse(value);
32
34
  const sdb = yield* $(parseSDB(sdb_));
33
35
  const cr = { data: JSON.parse(sdb.data), version: sdb.version };
34
36
  const r = yield* $(tsplus_module_2.exit(tsplus_module_2.flatMap(decode(cr.data), (d) => eq(keys, d)
35
- ? tsplus_module_2.sync(() => d)
36
- : tsplus_module_2.fail("not equals"))));
37
- if (tsplus_module_4.isSuccess(r)) {
37
+ ? tsplus_module_5.Effect.sync(() => d)
38
+ : tsplus_module_5.Effect.fail("not equals"))));
39
+ if (tsplus_module_6.isSuccess(r)) {
38
40
  return r.value;
39
41
  }
40
42
  }
41
43
  return null;
42
- }), tsplus_module_1.fromNullable);
44
+ }), tsplus_module_4.Option.fromNullable);
43
45
  }
44
46
  function store(record, currentVersion) {
45
47
  const version = tsplus_module_1.getOrElse(tsplus_module_1.map(currentVersion, (cv) => (parseInt(cv) + 1).toString()), () => "1");
@@ -49,6 +51,6 @@ export function createContext() {
49
51
  };
50
52
  }
51
53
  function bogusLock() {
52
- return tsplus_module_2.acquireRelease(tsplus_module_2.unit, () => tsplus_module_2.unit);
54
+ return tsplus_module_2.acquireRelease(tsplus_module_5.Effect.unit, () => tsplus_module_5.Effect.unit);
53
55
  }
54
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVtZGIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9fc3JjL3NlcnZpY2VzL3NpbXBsZWRiL21lbWRiLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sMkJBQTJCLENBQUE7QUFDaEQsT0FBTyxLQUFLLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQTtBQUd4QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUN4RSxPQUFPLEtBQUssUUFBUSxNQUFNLGVBQWUsQ0FBQTtBQUd6Qyw0REFBNEQ7QUFDNUQsMkJBQTJCO0FBQzNCLE1BQU0sT0FBTyxHQUFHLE9BQU8sRUFBa0IsQ0FBQTtBQUV6QyxNQUFNLFFBQVEsR0FBZ0MsRUFBRSxDQUFDLFdBQVcsQ0FBM0Msa0JBQWtCLENBQUMsTUFBTSxDQUFrQixDQUFBO0FBRTVELE1BQU0sVUFBVSxhQUFhO0lBQzNCLE9BQU8sQ0FDTCxJQUFZLEVBQ1osTUFBaUQsRUFDakQsTUFBOEMsRUFDOUMsRUFBRTtRQUNGLE9BQU87WUFDTCxJQUFJLEVBQUUsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQztZQUN2QyxNQUFNO1lBQ04sSUFBSSxFQUFFLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsSUFBSSxDQUFDO1NBQ25ELENBQUE7UUFFRCxTQUFTLElBQUksQ0FBQyxFQUFVO1lBQ3RCLE9BQU8sMEJBQUEsOEJBQUEsb0JBQUEsT0FBTztpQkFDWCxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUN6QixDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsb0JBQUEsQ0FBQyxFQUFLLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FB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
56
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVtZGIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9fc3JjL3NlcnZpY2VzL3NpbXBsZWRiL21lbWRiLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQTtBQUNoRCxPQUFPLEtBQUssRUFBRSxNQUFNLG9CQUFvQixDQUFBO0FBR3hDLE9BQU8sRUFBRSxhQUFhLEVBQUUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sYUFBYSxDQUFBO0FBQ3hFLE9BQU8sS0FBSyxRQUFRLE1BQU0sZUFBZSxDQUFBO0FBR3pDLDREQUE0RDtBQUM1RCwyQkFBMkI7QUFDM0IsTUFBTSxPQUFPLEdBQUcsT0FBTyxFQUFrQixDQUFBO0FBRXpDLE1BQU0sUUFBUSxHQUFnQyxFQUFFLENBQUMsV0FBVyxDQUEzQyxrQkFBa0IsQ0FBQyxNQUFNLENBQWtCLENBQUE7QUFFNUQsTUFBTSxVQUFVLGFBQWE7SUFDM0IsT0FBTyxDQUNMLElBQVksRUFDWixNQUFpRCxFQUNqRCxNQUE4QyxFQUM5QyxFQUFFO1FBQ0YsT0FBTztZQUNMLElBQUksRUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDO1lBQ3ZDLE1BQU07WUFDTixJQUFJLEVBQUUsUUFBUSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxJQUFJLENBQUM7U0FDbkQsQ0FBQTtRQUVELFNBQVMsSUFBSSxDQUFDLEVBQVU7WUFDdEIsT0FBTywwQkFBQSw4QkFBQSxvQkFBQSxPQUFPO2lCQUNYLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQ3pCLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxvQkFBQSxDQUFDLEVBQUssQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxD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
@@ -1,11 +1,11 @@
1
1
  import { Effect } from "effect/Effect";
2
- import { Option } from "@effect-app/core/Option";
2
+ import { Option } from "effect/Option";
3
3
  import { MongoClient } from "@effect-app/infra-adapters/mongo-client";
4
4
  import type { IndexDescription } from "mongodb";
5
5
  import type { DBRecord } from "./shared.js";
6
6
  import { OptimisticLockException } from "./shared.js";
7
7
  import * as simpledb from "./simpledb.js";
8
- export declare function createContext<TKey extends string, EA, A extends DBRecord<TKey>>(): <REncode, RDecode, EDecode>(type: string, encode: (record: A) => import("effect/Effect").Effect<REncode, never, EA>, decode: (d: EA) => import("effect/Effect").Effect<RDecode, EDecode, A>, indexes: IndexDescription[]) => import("effect/Effect").Effect<MongoClient, unknown, {
8
+ export declare function createContext<TKey extends string, EA, A extends DBRecord<TKey>>(): <REncode, RDecode, EDecode>(type: string, encode: (record: A) => Effect<REncode, never, EA>, decode: (d: EA) => Effect<RDecode, EDecode, A>, indexes: IndexDescription[]) => import("effect/Effect").Effect<MongoClient, unknown, {
9
9
  find: (id: string) => import("effect/Effect").Effect<simpledb.RecordCache | RDecode | MongoClient, unknown, import("effect/Option").Option<A>>;
10
10
  findBy: (keys: Record<string, string>) => import("effect/Effect").Effect<MongoClient, unknown, import("effect/Option").Option<TKey>>;
11
11
  save: (record: A) => import("effect/Effect").Effect<simpledb.RecordCache | REncode | MongoClient, OptimisticLockException, A>;
@@ -1 +1 @@
1
- {"version":3,"file":"mongodb.d.ts","sourceRoot":"","sources":["../../../_src/services/simpledb/mongodb.ts"],"names":[],"mappings":";;AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,yCAAyC,CAAA;AACrE,OAAO,KAAK,EAAE,gBAAgB,EAAoB,MAAM,SAAS,CAAA;AACjE,OAAO,KAAK,EAAgB,QAAQ,EAAE,MAAM,aAAa,CAAA;AACzD,OAAO,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAA;AACrD,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AAazC,wBAAgB,aAAa,CAAC,IAAI,SAAS,MAAM,EAAE,EAAE,EAAE,CAAC,SAAS,QAAQ,CAAC,IAAI,CAAC,uCAErE,MAAM,mBACK,CAAC,qEACN,EAAE,mEAEL,gBAAgB,EAAE;;mBAqBL,OAAO,MAAM,EAAE,MAAM,CAAC;;GA6D/C"}
1
+ {"version":3,"file":"mongodb.d.ts","sourceRoot":"","sources":["../../../_src/services/simpledb/mongodb.ts"],"names":[],"mappings":";;AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,yCAAyC,CAAA;AACrE,OAAO,KAAK,EAAE,gBAAgB,EAAoB,MAAM,SAAS,CAAA;AACjE,OAAO,KAAK,EAAgB,QAAQ,EAAE,MAAM,aAAa,CAAA;AACzD,OAAO,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAA;AACrD,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AAazC,wBAAgB,aAAa,CAAC,IAAI,SAAS,MAAM,EAAE,EAAE,EAAE,CAAC,SAAS,QAAQ,CAAC,IAAI,CAAC,uCAErE,MAAM,mBACK,CAAC,KAAK,OAAO,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,cACrC,EAAE,KAAK,OAAO,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC,WAErC,gBAAgB,EAAE;;mBAqBL,OAAO,MAAM,EAAE,MAAM,CAAC;;GA6D/C"}
@@ -1,6 +1,8 @@
1
1
  import * as tsplus_module_1 from "effect/Effect";
2
- import * as tsplus_module_2 from "effect/Option";
3
- import * as tsplus_module_3 from "@effect-app/core/Effect";
2
+ import * as tsplus_module_2 from "effect/Effect.impl";
3
+ import * as tsplus_module_3 from "effect/Option";
4
+ import * as tsplus_module_4 from "@effect-app/core/EffectX";
5
+ import * as tsplus_module_5 from "effect/Option.impl";
4
6
  import { MongoClient } from "@effect-app/infra-adapters/mongo-client";
5
7
  import { OptimisticLockException } from "./shared.js";
6
8
  import * as simpledb from "./simpledb.js";
@@ -8,36 +10,36 @@ import * as simpledb from "./simpledb.js";
8
10
  // prev[cur] = 1
9
11
  // return prev
10
12
  // }, {} as Record<string, number>)
11
- const setup = (type, indexes) => tsplus_module_1.flatMap(tsplus_module_1.tap(MongoClient, ({ db }) => tsplus_module_1.tryPromise(() => db.createCollection(type).catch((err) => console.warn(err)))), ({ db }) => tsplus_module_1.tryPromise(() => db.collection(type).createIndexes(indexes)));
13
+ const setup = (type, indexes) => tsplus_module_2.flatMap(tsplus_module_2.tap(MongoClient, ({ db }) => tsplus_module_1.Effect.tryPromise(() => db.createCollection(type).catch((err) => console.warn(err)))), ({ db }) => tsplus_module_1.Effect.tryPromise(() => db.collection(type).createIndexes(indexes)));
12
14
  export function createContext() {
13
15
  return (type, encode, decode,
14
16
  // schemaVersion: string,
15
17
  indexes) => {
16
- return tsplus_module_1.map(setup(type, indexes), () => ({
18
+ return tsplus_module_2.map(setup(type, indexes), () => ({
17
19
  find: simpledb.find(find, decode, type),
18
20
  findBy,
19
21
  save: simpledb.storeDirectly(store, type)
20
22
  }));
21
23
  function find(id) {
22
- return tsplus_module_3.mapOption(tsplus_module_1.map(tsplus_module_1.flatMap(MongoClient, ({ db }) => tsplus_module_1.tryPromise(() => db
24
+ return tsplus_module_4.mapOption(tsplus_module_2.map(tsplus_module_2.flatMap(MongoClient, ({ db }) => tsplus_module_1.Effect.tryPromise(() => db
23
25
  .collection(type)
24
- .findOne({ _id: { equals: id } }))), tsplus_module_2.fromNullable), ({ data, version }) => ({ version, data }));
26
+ .findOne({ _id: { equals: id } }))), tsplus_module_3.Option.fromNullable), ({ data, version }) => ({ version, data }));
25
27
  }
26
28
  function findBy(keys) {
27
- return tsplus_module_3.mapOption(tsplus_module_1.map(tsplus_module_1.flatMap(MongoClient, ({ db }) => tsplus_module_1.tryPromise(() => db.collection(type).findOne(keys, { projection: { _id: 1 } }))), tsplus_module_2.fromNullable), ({ _id }) => _id);
29
+ return tsplus_module_4.mapOption(tsplus_module_2.map(tsplus_module_2.flatMap(MongoClient, ({ db }) => tsplus_module_1.Effect.tryPromise(() => db.collection(type).findOne(keys, { projection: { _id: 1 } }))), tsplus_module_3.Option.fromNullable), ({ _id }) => _id);
28
30
  }
29
31
  function store(record, currentVersion) {
30
- return tsplus_module_1.gen(function* ($) {
31
- const version = tsplus_module_2.getOrElse(tsplus_module_2.map(currentVersion, (cv) => (parseInt(cv) + 1).toString()), () => "1");
32
+ return tsplus_module_1.Effect.gen(function* ($) {
33
+ const version = tsplus_module_5.getOrElse(tsplus_module_5.map(currentVersion, (cv) => (parseInt(cv) + 1).toString()), () => "1");
32
34
  const { db } = yield* $(MongoClient);
33
35
  const data = yield* $(encode(record));
34
- yield* $(tsplus_module_2.match(currentVersion, {
35
- onNone: () => tsplus_module_1.orDie(tsplus_module_1.asUnit(tsplus_module_1.tryPromise(() => db
36
+ yield* $(tsplus_module_5.match(currentVersion, {
37
+ onNone: () => tsplus_module_2.orDie(tsplus_module_2.asUnit(tsplus_module_1.Effect.tryPromise(() => db
36
38
  .collection(type)
37
39
  .insertOne({ _id: record.id, version, timestamp: new Date(), data }, {
38
40
  checkKeys: false // support for keys with `.` and `$`. NOTE: you can write them, read them, but NOT query for them.
39
41
  })))),
40
- onSome: (currentVersion) => tsplus_module_1.flatMap(tsplus_module_1.orDie(tsplus_module_1.tryPromise(() => db.collection(type).replaceOne({ _id: record.id, version: currentVersion }, {
42
+ onSome: (currentVersion) => tsplus_module_2.flatMap(tsplus_module_2.orDie(tsplus_module_1.Effect.tryPromise(() => db.collection(type).replaceOne({ _id: record.id, version: currentVersion }, {
41
43
  version,
42
44
  timestamp: new Date(),
43
45
  data
@@ -45,7 +47,7 @@ export function createContext() {
45
47
  if (!x.modifiedCount) {
46
48
  return new OptimisticLockException(type, record.id);
47
49
  }
48
- return tsplus_module_1.unit;
50
+ return tsplus_module_1.Effect.unit;
49
51
  })
50
52
  }));
51
53
  return { version, data: record };
@@ -53,4 +55,4 @@ export function createContext() {
53
55
  }
54
56
  };
55
57
  }
56
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9uZ29kYi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL19zcmMvc2VydmljZXMvc2ltcGxlZGIvbW9uZ29kYi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0seUNBQXlDLENBQUE7QUFHckUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sYUFBYSxDQUFBO0FBQ3JELE9BQU8sS0FBSyxRQUFRLE1BQU0sZUFBZSxDQUFBO0FBR3pDLHdHQUF3RztBQUN4RyxrQkFBa0I7QUFDbEIsZ0JBQWdCO0FBQ2hCLG1DQUFtQztBQUVuQyxNQUFNLEtBQUssR0FBRyxDQUFDLElBQVksRUFBRSxPQUEyQixFQUFFLEVBQUUsQ0FDMUQsd0JBQUEsb0JBQUEsV0FBVyxFQUNKLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsMkJBQWtCLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQzdGLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsMkJBQWtCLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQTtBQUU3RixNQUFNLFVBQVUsYUFBYTtJQUMzQixPQUFPLENBQ0wsSUFBWSxFQUNaLE1BQWlELEVBQ2pELE1BQThDO0lBQzlDLHlCQUF5QjtJQUN6QixPQUEyQixFQUMzQixFQUFFO1FBQ0YsT0FBTyxvQkFBQSxLQUFLLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxFQUFLLEdBQUcsRUFBRSxDQUFDLENBQUM7WUFDckMsSUFBSSxFQUFFLFFBQVEsQ0FBQyxJQUFJLENBQUMs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
58
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9uZ29kYi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL19zcmMvc2VydmljZXMvc2ltcGxlZGIvbW9uZ29kYi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQTtBQUdyRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxhQUFhLENBQUE7QUFDckQsT0FBTyxLQUFLLFFBQVEsTUFBTSxlQUFlLENBQUE7QUFHekMsd0dBQXdHO0FBQ3hHLGtCQUFrQjtBQUNsQixnQkFBZ0I7QUFDaEIsbUNBQW1DO0FBRW5DLE1BQU0sS0FBSyxHQUFHLENBQUMsSUFBWSxFQUFFLE9BQTJCLEVBQUUsRUFBRSxDQUMxRCx3QkFBQSxvQkFBQSxXQUFXLEVBQ0osQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxnQkFBQSxNQUFNLENBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQzdGLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsZ0JBQUEsTUFBTSxDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUE7QUFFN0YsTUFBTSxVQUFVLGFBQWE7SUFDM0IsT0FBTyxDQUNMLElBQVksRUFDWixNQUFpRCxFQUNqRCxNQUE4QztJQUM5Qyx5QkFBeUI7SUFDekIsT0FBMkIsRUFDM0IsRUFBRTtRQUNGLE9BQU8sb0JBQUEsS0FBSyxDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsRUFBSyxHQUFHLEVBQUUsQ0FBQyxD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
@@ -1,23 +1,23 @@
1
1
  import { Effect } from "effect/Effect";
2
- import { Option } from "@effect-app/core/Option";
2
+ import { Option } from "effect/Option";
3
3
  import { RedisClient } from "@effect-app/infra-adapters/redis-client";
4
4
  import * as MO from "@effect-app/schema";
5
5
  import type { DBRecord, Index } from "./shared.js";
6
6
  import { CouldNotAquireDbLockException } from "./shared.js";
7
7
  import * as simpledb from "./simpledb.js";
8
- export declare function createContext<TKey extends string, EA, A extends DBRecord<TKey>>(): <REncode, RDecode, EDecode>(type: string, encode: (record: A) => import("effect/Effect").Effect<REncode, never, EA>, decode: (d: EA) => import("effect/Effect").Effect<RDecode, EDecode, A>, schemaVersion: string, makeIndexKey: (r: A) => Index) => {
8
+ export declare function createContext<TKey extends string, EA, A extends DBRecord<TKey>>(): <REncode, RDecode, EDecode>(type: string, encode: (record: A) => Effect<REncode, never, EA>, decode: (d: EA) => Effect<RDecode, EDecode, A>, schemaVersion: string, makeIndexKey: (r: A) => Index) => {
9
9
  find: (id: string) => import("effect/Effect").Effect<RedisClient | simpledb.RecordCache | RDecode, simpledb.InvalidStateError, import("effect/Option").Option<A>>;
10
10
  findByIndex: (index: Index) => import("effect/Effect").Effect<RedisClient, import("@effect-app/infra-adapters/redis-client").ConnectionException, import("effect/Option").Option<TKey>>;
11
11
  save: (record: A) => import("effect/Effect").Effect<RedisClient | simpledb.RecordCache | REncode, CouldNotAquireDbLockException | import("./shared.js").OptimisticLockException | simpledb.InvalidStateError, A>;
12
12
  };
13
13
  declare const RedisSerializedDBRecord_base: MO.Model<RedisSerializedDBRecord, MO.SchemaProperties<MO.ToProps<{
14
- version: MO.Property<MO.SchemaDefaultSchema<unknown, string, string, string, {}>, "required", import("effect/Option").None<any>, import("effect/Option").None<any>>;
15
- timestamp: MO.Property<MO.SchemaDefaultSchema<unknown, Date, Date, string, {}>, "required", import("effect/Option").None<any>, import("effect/Option").None<any>>;
16
- data: MO.Property<MO.SchemaDefaultSchema<unknown, string, string, string, {}>, "required", import("effect/Option").None<any>, import("effect/Option").None<any>>;
14
+ version: MO.Property<MO.SchemaDefaultSchema<unknown, string, string, string, {}>, "required", import("effect/Option.impl").None<any>, import("effect/Option.impl").None<any>>;
15
+ timestamp: MO.Property<MO.SchemaDefaultSchema<unknown, Date, Date, string, {}>, "required", import("effect/Option.impl").None<any>, import("effect/Option.impl").None<any>>;
16
+ data: MO.Property<MO.SchemaDefaultSchema<unknown, string, string, string, {}>, "required", import("effect/Option.impl").None<any>, import("effect/Option.impl").None<any>>;
17
17
  }>>> & MO.PropsExtensions<MO.ToProps<{
18
- version: MO.Property<MO.SchemaDefaultSchema<unknown, string, string, string, {}>, "required", import("effect/Option").None<any>, import("effect/Option").None<any>>;
19
- timestamp: MO.Property<MO.SchemaDefaultSchema<unknown, Date, Date, string, {}>, "required", import("effect/Option").None<any>, import("effect/Option").None<any>>;
20
- data: MO.Property<MO.SchemaDefaultSchema<unknown, string, string, string, {}>, "required", import("effect/Option").None<any>, import("effect/Option").None<any>>;
18
+ version: MO.Property<MO.SchemaDefaultSchema<unknown, string, string, string, {}>, "required", import("effect/Option.impl").None<any>, import("effect/Option.impl").None<any>>;
19
+ timestamp: MO.Property<MO.SchemaDefaultSchema<unknown, Date, Date, string, {}>, "required", import("effect/Option.impl").None<any>, import("effect/Option.impl").None<any>>;
20
+ data: MO.Property<MO.SchemaDefaultSchema<unknown, string, string, string, {}>, "required", import("effect/Option.impl").None<any>, import("effect/Option.impl").None<any>>;
21
21
  }>>;
22
22
  export declare class RedisSerializedDBRecord extends RedisSerializedDBRecord_base {
23
23
  }
@@ -1 +1 @@
1
- {"version":3,"file":"redisdb.d.ts","sourceRoot":"","sources":["../../../_src/services/simpledb/redisdb.ts"],"names":[],"mappings":";;AAGA,OAAO,EAAE,WAAW,EAAE,MAAM,yCAAyC,CAAA;AACrE,OAAO,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAExC,OAAO,KAAK,EAAgB,QAAQ,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AAChE,OAAO,EAAuB,6BAA6B,EAA+B,MAAM,aAAa,CAAA;AAC7G,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AAIzC,wBAAgB,aAAa,CAAC,IAAI,SAAS,MAAM,EAAE,EAAE,EAAE,CAAC,SAAS,QAAQ,CAAC,IAAI,CAAC,uCAErE,MAAM,mBACK,CAAC,qEACN,EAAE,yEACC,MAAM,oBACH,CAAC,KAAK,KAAK;;yBAkFN,KAAK;;EAwF/B;;;;;;;;;;AAED,qBAAa,uBAAwB,SAAQ,4BAI3C;CAAG"}
1
+ {"version":3,"file":"redisdb.d.ts","sourceRoot":"","sources":["../../../_src/services/simpledb/redisdb.ts"],"names":[],"mappings":";;AAGA,OAAO,EAAE,WAAW,EAAE,MAAM,yCAAyC,CAAA;AACrE,OAAO,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAExC,OAAO,KAAK,EAAgB,QAAQ,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AAChE,OAAO,EAAuB,6BAA6B,EAA+B,MAAM,aAAa,CAAA;AAC7G,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AAIzC,wBAAgB,aAAa,CAAC,IAAI,SAAS,MAAM,EAAE,EAAE,EAAE,CAAC,SAAS,QAAQ,CAAC,IAAI,CAAC,uCAErE,MAAM,mBACK,CAAC,KAAK,OAAO,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,cACrC,EAAE,KAAK,OAAO,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC,iBAC/B,MAAM,oBACH,CAAC,KAAK,KAAK;;yBAkFN,KAAK;;EAwF/B;;;;;;;;;;AAED,qBAAa,uBAAwB,SAAQ,4BAI3C;CAAG"}
@@ -1,6 +1,7 @@
1
- import * as tsplus_module_1 from "effect/Effect";
2
- import * as tsplus_module_2 from "@effect-app/core/Effect";
3
- import * as tsplus_module_3 from "effect/Option";
1
+ import * as tsplus_module_1 from "effect/Effect.impl";
2
+ import * as tsplus_module_2 from "@effect-app/core/EffectX";
3
+ import * as tsplus_module_3 from "effect/Option.impl";
4
+ import * as tsplus_module_4 from "effect/Effect";
4
5
  /* eslint-disable @typescript-eslint/no-explicit-any */
5
6
  import { flow, pipe } from "@effect-app/core/Function";
6
7
  import { RedisClient } from "@effect-app/infra-adapters/redis-client";
@@ -25,7 +26,7 @@ export function createContext() {
25
26
  function store(record, currentVersion) {
26
27
  const version = tsplus_module_3.getOrElse(tsplus_module_3.map(currentVersion, (cv) => (parseInt(cv) + 1).toString()), () => "1");
27
28
  return tsplus_module_3.match(currentVersion, {
28
- onNone: () => tsplus_module_1.scoped(tsplus_module_1.zipRight(lockIndex(record), tsplus_module_1.map(tsplus_module_1.orDie(tsplus_module_1.zipRight(tsplus_module_1.flatMap(tsplus_module_1.zipRight(tsplus_module_2.zipRightOption(getIndex(record), tsplus_module_1.fail(() => new Error("Combination already exists, abort"))), getData(record))
29
+ onNone: () => tsplus_module_1.scoped(tsplus_module_1.zipRight(lockIndex(record), tsplus_module_1.map(tsplus_module_1.orDie(tsplus_module_1.zipRight(tsplus_module_1.flatMap(tsplus_module_1.zipRight(tsplus_module_2.zipRightOption(getIndex(record), tsplus_module_4.Effect.fail(() => new Error("Combination already exists, abort"))), getData(record))
29
30
  // TODO: instead use MULTI & EXEC to make it in one command?
30
31
  , (data) => hmSetRec(getKey(record.id), {
31
32
  version,
@@ -60,22 +61,22 @@ export function createContext() {
60
61
  function lockRedisIdx(index) {
61
62
  const lockKey = getIdxLockKey(index);
62
63
  // acquire
63
- return tsplus_module_1.acquireRelease(tsplus_module_1.mapBoth(tsplus_module_1.flatMap(RedisClient, ({ lock }) => tsplus_module_1.tryPromise(() => lock.lock(lockKey, ttl))), {
64
+ return tsplus_module_1.acquireRelease(tsplus_module_1.mapBoth(tsplus_module_1.flatMap(RedisClient, ({ lock }) => tsplus_module_4.Effect.tryPromise(() => lock.lock(lockKey, ttl))), {
64
65
  onFailure: (err) => new CouldNotAquireDbLockException(type, lockKey, err),
65
66
  // release
66
67
  onSuccess: (lock) => ({
67
- release: tsplus_module_1.orDie(tsplus_module_1.tryPromise(() => lock.unlock()))
68
+ release: tsplus_module_1.orDie(tsplus_module_4.Effect.tryPromise(() => lock.unlock()))
68
69
  })
69
70
  }), (l) => l.release);
70
71
  }
71
72
  function lockRedisRecord(id) {
72
73
  // acquire
73
- return tsplus_module_1.acquireRelease(tsplus_module_1.mapBoth(tsplus_module_1.flatMap(RedisClient, ({ lock }) => tsplus_module_1.tryPromise(() => lock.lock(getLockKey(id), ttl))), {
74
+ return tsplus_module_1.acquireRelease(tsplus_module_1.mapBoth(tsplus_module_1.flatMap(RedisClient, ({ lock }) => tsplus_module_4.Effect.tryPromise(() => lock.lock(getLockKey(id), ttl))), {
74
75
  onFailure: (err) => new CouldNotAquireDbLockException(type, id, err),
75
76
  // release
76
77
  onSuccess: (lock) => ({
77
78
  // TODO
78
- release: tsplus_module_1.orDie(tsplus_module_1.tryPromise(() => lock.unlock()))
79
+ release: tsplus_module_1.orDie(tsplus_module_4.Effect.tryPromise(() => lock.unlock()))
79
80
  })
80
81
  }), (l) => l.release);
81
82
  }
@@ -94,10 +95,10 @@ export function createContext() {
94
95
  };
95
96
  function hmSetRec(key, val) {
96
97
  const enc = RedisSerializedDBRecord.Encoder(val);
97
- return tsplus_module_1.flatMap(RedisClient, ({ client }) => tsplus_module_1.uninterruptible(tsplus_module_1.async((res) => {
98
+ return tsplus_module_1.flatMap(RedisClient, ({ client }) => tsplus_module_1.uninterruptible(tsplus_module_4.Effect.async((res) => {
98
99
  client.hmset(key, "version", enc.version, "timestamp", enc.timestamp, "data", enc.data, (err) => err
99
100
  ? res(new ConnectionException(err))
100
- : res(tsplus_module_1.sync(() => void 0)));
101
+ : res(tsplus_module_4.Effect.sync(() => void 0)));
101
102
  })));
102
103
  }
103
104
  }
@@ -107,4 +108,4 @@ export class RedisSerializedDBRecord extends MO.Model()({
107
108
  data: MO.prop(MO.string)
108
109
  }) {
109
110
  }
110
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVkaXNkYi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL19zcmMvc2VydmljZXMvc2ltcGxlZGIvcmVkaXNkYi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSx1REFBdUQ7QUFFdkQsT0FBTyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQTtBQUN0RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0seUNBQXlDLENBQUE7QUFDckUsT0FBTyxLQUFLLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQTtBQUd4QyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsNkJBQTZCLEVBQUUsWUFBWSxFQUFFLGFBQWEsRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUM3RyxPQUFPLEtBQUssUUFBUSxNQUFNLGVBQWUsQ0FBQTtBQUV6QyxNQUFNLEdBQUcsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFBO0FBRXJCLE1BQU0sVUFBVSxhQUFhO0lBQzNCLE9BQU8sQ0FDTCxJQUFZLEVBQ1osTUFBaUQsRUFDakQsTUFBOEMsRUFDOUMsYUFBcUIsRUFDckIsWUFBNkIsRUFDN0IsRUFBRTtRQUNGLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLG9CQUFBLENBQUMsRUFBSyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQTtRQUMxRCxPQUFPO1lBQ0wsSUFBSSxFQUFFLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUM7WUFDdkMsV0FBVyxFQUFFLE1BQU07WUFDbkIsSUFBSSxFQUFFLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxlQUFlLEVBQUUsSUFBSSxDQUFDO1NBQ3pELENBQUE7UUFFRCxTQUFTLElBQUksQ0FBQyxFQUFVO1lBQ3RCLDZCQUFPLDhCQUFBLHdCQUFBLFdBQVcsRUFDUCxDQUFDLENBQUMsRUFBRSxF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
111
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVkaXNkYi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL19zcmMvc2VydmljZXMvc2ltcGxlZGIvcmVkaXNkYi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsdURBQXVEO0FBRXZELE9BQU8sRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLE1BQU0sMkJBQTJCLENBQUE7QUFDdEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHlDQUF5QyxDQUFBO0FBQ3JFLE9BQU8sS0FBSyxFQUFFLE1BQU0sb0JBQW9CLENBQUE7QUFHeEMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLDZCQUE2QixFQUFFLFlBQVksRUFBRSxhQUFhLEVBQUUsTUFBTSxhQUFhLENBQUE7QUFDN0csT0FBTyxLQUFLLFFBQVEsTUFBTSxlQUFlLENBQUE7QUFFekMsTUFBTSxHQUFHLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQTtBQUVyQixNQUFNLFVBQVUsYUFBYTtJQUMzQixPQUFPLENBQ0wsSUFBWSxFQUNaLE1BQWlELEVBQ2pELE1BQThDLEVBQzlDLGFBQXFCLEVBQ3JCLFlBQTZCLEVBQzdCLEVBQUU7UUFDRixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxvQkFBQSxDQUFDLEVBQUssSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUE7UUFDMUQsT0FBTztZQUNMLElBQUksRUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDO1lBQ3ZDLFdBQVcsRUFBRSxNQUFNO1lBQ25CLElBQUksRUFBRSxRQUFRLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsZUFBZSxFQUFFLElBQUksQ0FBQztTQUN6RCxDQUFBO1FBRUQsU0FBUyxJQUFJLENBQUMsRUFBVTtZQUN0Qiw2QkFBTyw4QkFBQSx3QkFBQSxXQUFXLEVBQ1AsQ0FBQyxDQUFDLEVBQUUs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QzdELENBQUM7UUFFRCxTQUFTLFNBQVMsQ0FBQyxLQUFZO1lBQzdCLE9BQU8sSUFBSSxhQUFhLElBQUksWUFBWSxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQTtRQUM3RCxDQUFDO1FBQ0QsU0FBUyxhQUFhLENBQUMsS0FBWTtZQUNqQyxPQUFPLElBQUksYUFBYSxVQUFVLFlBQVksQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLEdBQUcsQ0FBQyxJQUFJLEtBQUssQ0FBQyxHQUFHLEVBQUUsQ0FBQTtRQUNoRixDQUFDO0lBQ0gsQ0FBQyxDQUFBO0lBRUQsU0FBUyxRQUFRLENBQUMsR0FBVyxFQUFFLEdBQTRCO1FBQ3pELE1BQU0sR0FBRyxHQUFHLHVCQUF1QixDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQTtRQUNoRCxPQUFPLHdCQUFBLFdBQVcsRUFBUyxDQUFDLEVBQUUsTUFBTSxFQUFFLEVBQUUsRUFBRSxpQ0FDeEMsZ0JBQUEsTUFBTSxDQUNILEtBQUssQ0FBbUMsQ0FBQyxHQUFHLEVBQUUsRUFBRTtZQUMvQyxNQUFNLENBQUMsS0FBSyxDQUNWLEdBQUcsRUFDSCxTQUFTLEVBQ1QsR0FBRyxDQUFDLE9BQU8sRUFDWCxXQUFXLEVBQ1gsR0FBRyxDQUFDLFNBQVMsRUFDYixNQUFNLEVBQ04sR0FBRyxDQUFDLElBQUksRUFDUixDQUFDLEdBQUcsRUFBRSxFQUFFLENBQ04sR0FBRztnQkFDRCxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksbUJBQW1CLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQ25DLENBQUMsQ0FBQyxHQUFHLENBQUMsZ0JBQUEsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQ3JDLENBQUE7UUFDSCxDQUFDLENBQUMsQ0FDYyxDQUNuQixDQUFBO0lBQ0gsQ0FBQztBQUNILENBQUM7QUFFRCxNQUFNLE9BQU8sdUJBQXdCLFNBQVEsRUFBRSxDQUFDLEtBQUssRUFBMkIsQ0FBQztJQUMvRSxPQUFPLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDO0lBQzNCLFNBQVMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUM7SUFDM0IsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQztDQUN6QixDQUFDO0NBQUcifQ==