@effect-app/infra 0.30.2 → 0.31.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +18 -0
- package/_cjs/services/Store/service.cjs +5 -2
- package/_cjs/services/Store/service.cjs.map +1 -1
- package/_src/services/Store/service.ts +9 -5
- package/dist/api/express/makeOpenApiSpecs.d.ts +1 -1
- package/dist/services/Repository.d.ts +14 -14
- package/dist/services/Store/service.d.ts +8 -11
- package/dist/services/Store/service.d.ts.map +1 -1
- package/dist/services/Store/service.js +7 -3
- package/dist/services/simpledb/cosmosdb.d.ts +2 -2
- package/dist/services/simpledb/diskdb.d.ts +2 -2
- package/dist/services/simpledb/memdb.d.ts +2 -2
- package/dist/services/simpledb/mongodb.d.ts +2 -2
- package/dist/services/simpledb/redisdb.d.ts +2 -2
- package/dist/services/simpledb/simpledb.d.ts +3 -3
- package/package.json +3 -3
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,23 @@
|
|
|
1
1
|
# @effect-app/infra
|
|
2
2
|
|
|
3
|
+
## 0.31.1
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- Fix
|
|
8
|
+
|
|
9
|
+
## 0.31.0
|
|
10
|
+
|
|
11
|
+
### Minor Changes
|
|
12
|
+
|
|
13
|
+
- Improve Encoded codegen
|
|
14
|
+
|
|
15
|
+
### Patch Changes
|
|
16
|
+
|
|
17
|
+
- Updated dependencies
|
|
18
|
+
- @effect-app/infra-adapters@0.25.0
|
|
19
|
+
- @effect-app/prelude@0.25.0
|
|
20
|
+
|
|
3
21
|
## 0.30.2
|
|
4
22
|
|
|
5
23
|
### Patch Changes
|
|
@@ -6,7 +6,6 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.makeMap = exports.StoreMaker = exports.ContextMap = void 0;
|
|
7
7
|
var tsplus_module_1 = _interopRequireWildcard(require("@effect-app/prelude/service"));
|
|
8
8
|
var tsplus_module_2 = _interopRequireWildcard(require("@effect/io/Effect"));
|
|
9
|
-
var tsplus_module_3 = _interopRequireWildcard(require("@effect/data/Context"));
|
|
10
9
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
11
10
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
12
11
|
/**
|
|
@@ -68,7 +67,11 @@ const makeMap = tsplus_module_2.sync(() => {
|
|
|
68
67
|
parserEnv
|
|
69
68
|
};
|
|
70
69
|
});
|
|
70
|
+
/**
|
|
71
|
+
* @tsplus type ContextMap
|
|
72
|
+
* @tsplus companion ContextMap.Ops
|
|
73
|
+
*/
|
|
71
74
|
exports.makeMap = makeMap;
|
|
72
|
-
|
|
75
|
+
class ContextMap extends tsplus_module_1.TagClass() {}
|
|
73
76
|
exports.ContextMap = ContextMap;
|
|
74
77
|
//# sourceMappingURL=service.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service.cjs","names":["StoreMaker","tsplus_module_1","TagClass","exports","makeMap","tsplus_module_2","sync","etags","Map","getEtag","id","get","setEtag","eTag","undefined","delete","set","parsedCache","parserCache","setAndReturn","p","np","parserEnv","lax","cache","getOrSetParser","i","getOrSet","getOrSetParsers","parsers","Object","entries","reduce","prev","k","v","parse","c","f","nf","ContextMap"
|
|
1
|
+
{"version":3,"file":"service.cjs","names":["StoreMaker","tsplus_module_1","TagClass","exports","makeMap","tsplus_module_2","sync","etags","Map","getEtag","id","get","setEtag","eTag","undefined","delete","set","parsedCache","parserCache","setAndReturn","p","np","parserEnv","lax","cache","getOrSetParser","i","getOrSet","getOrSetParsers","parsers","Object","entries","reduce","prev","k","v","parse","c","f","nf","ContextMap"],"sources":["../../../_src/services/Store/service.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;;AA6EA;;;;AAIM,MAAgBA,UAAW,SAAQC,eAAA,CAAAC,QAAQ,EAAc;AAQ/D;;;AAAAC,OAAA,CAAAH,UAAA,GAAAA,UAAA;AAGO,MAAMI,OAAO,GAAGC,eAAA,CAAAC,IAAA,CAAY,MAAiB;EAClD,MAAMC,KAAK,GAAG,IAAIC,GAAG,EAAkB;EACvC,MAAMC,OAAO,GAAIC,EAAU,IAAKH,KAAK,CAACI,GAAG,CAACD,EAAE,CAAC;EAC7C,MAAME,OAAO,GAAGA,CAACF,EAAU,EAAEG,IAAwB,KAAI;IACvDA,IAAI,KAAKC,SAAS,GAAGP,KAAK,CAACQ,MAAM,CAACL,EAAE,CAAC,GAAGH,KAAK,CAACS,GAAG,CAACN,EAAE,EAAEG,IAAI,CAAC;EAC7D,CAAC;EAED,MAAMI,WAAW,GAAG,IAAIT,GAAG,EAGxB;EAEH,MAAMU,WAAW,GAAG,IAAIV,GAAG,EAGxB;EAEH,MAAMW,YAAY,GAAGA,CACnBC,CAAkB,EAClBC,EAA+B,KAC7B;IACFH,WAAW,CAACF,GAAG,CAACI,CAAC,EAAEC,EAAE,CAAC;IACtB,OAAOA,EAAE;EACX,CAAC;EAED,MAAMC,SAAS,GAAc;IAC3B;IACA;IACAC,GAAG,EAAE,KAAK;IACVC,KAAK,EAAE;MACLC,cAAc,EAAEL,CAAC,IAAIF,WAAW,CAACP,GAAG,CAACS,CAAC,CAAC,IAAID,YAAY,CAACC,CAAC,EAAEM,CAAC,IAAIJ,SAAS,CAACE,KAAM,CAACG,QAAQ,CAACD,CAAC,EAAEN,CAAC,CAAC,CAAC;MAChGQ,eAAe,EAAEC,OAAO,IAAG;QACzB,OAAOC,MAAM,CAACC,OAAO,CAACF,OAAO,CAAC,CAACG,MAAM,CAAC,CAACC,IAAI,EAAE,CAACC,CAAC,EAAEC,CAAC,CAAC,KAAI;UACrDF,IAAI,CAACC,CAAC,CAAC,GAAGZ,SAAS,CAACE,KAAM,CAACC,cAAc,CAACU,CAAC,CAAC;UAC5C,OAAOF,IAAI;QACb,CAAC,EAAE,EAAS,CAAC;MACf,CAAC;MACDN,QAAQ,EAAEA,CAACD,CAAC,EAAEU,KAAK,KAAS;QAC1B,MAAMC,CAAC,GAAGpB,WAAW,CAACN,GAAG,CAACyB,KAAK,CAAC;QAChC,IAAIC,CAAC,EAAE;UACL,MAAMC,CAAC,GAAGD,CAAC,CAAC1B,GAAG,CAACe,CAAC,CAAC;UAClB,IAAIY,CAAC,EAAE;YACL;YACA,OAAOA,CAAC;WACT,MAAM;YACL,MAAMC,EAAE,GAAGH,KAAK,CAACV,CAAC,EAAEJ,SAAS,CAAC;YAC9Be,CAAC,CAACrB,GAAG,CAACU,CAAC,EAAEa,EAAE,CAAC;YACZ,OAAOA,EAAE;;SAEZ,MAAM;UACL,MAAMA,EAAE,GAAGH,KAAK,CAACV,CAAC,EAAEJ,SAAS,CAAC;UAC9BL,WAAW,CAACD,GAAG,CAACoB,KAAK,EAAE,IAAI5B,GAAG,CAAC,CAAC,CAACkB,CAAC,EAAEa,EAAE,CAAC,CAAC,CAAC,CAAC;UAC1C,OAAOA,EAAE;;MAEb;;GAEH;EAED,OAAO;IACL5B,GAAG,EAAEF,OAAO;IACZO,GAAG,EAAEJ,OAAO;IACZU;GACD;AACH,CAAC,CAAC;AAEF;;;;AAAAnB,OAAA,CAAAC,OAAA,GAAAA,OAAA;AAIM,MAAgBoC,UAAW,SAAQvC,eAAA,CAAAC,QAAQ,EAAc;AAI9DC,OAAA,CAAAqC,UAAA,GAAAA,UAAA"}
|
|
@@ -90,7 +90,7 @@ export abstract class StoreMaker extends TagClass<StoreMaker>() {
|
|
|
90
90
|
/**
|
|
91
91
|
* @tsplus static ContextMap.Ops Make
|
|
92
92
|
*/
|
|
93
|
-
export const makeMap = Effect.sync(() => {
|
|
93
|
+
export const makeMap = Effect.sync((): ContextMap => {
|
|
94
94
|
const etags = new Map<string, string>()
|
|
95
95
|
const getEtag = (id: string) => etags.get(id)
|
|
96
96
|
const setEtag = (id: string, eTag: string | undefined) => {
|
|
@@ -154,12 +154,16 @@ export const makeMap = Effect.sync(() => {
|
|
|
154
154
|
parserEnv
|
|
155
155
|
}
|
|
156
156
|
})
|
|
157
|
-
|
|
157
|
+
|
|
158
158
|
/**
|
|
159
|
-
* @tsplus type ContextMap
|
|
159
|
+
* @tsplus type ContextMap
|
|
160
|
+
* @tsplus companion ContextMap.Ops
|
|
160
161
|
*/
|
|
161
|
-
export
|
|
162
|
-
|
|
162
|
+
export abstract class ContextMap extends TagClass<ContextMap>() {
|
|
163
|
+
abstract get: (id: string) => string | undefined
|
|
164
|
+
abstract set: (id: string, eTag: string | undefined) => void
|
|
165
|
+
abstract parserEnv: ParserEnv
|
|
166
|
+
}
|
|
163
167
|
|
|
164
168
|
export interface PersistenceModelType<Id extends string> {
|
|
165
169
|
id: Id
|
|
@@ -18,7 +18,7 @@ export declare function makeOpenApiSpecs(rdescs: Iterable<RouteDescriptorAny>, i
|
|
|
18
18
|
version: string;
|
|
19
19
|
};
|
|
20
20
|
tags: never[];
|
|
21
|
-
paths: Record<string, Record<"
|
|
21
|
+
paths: Record<string, Record<"GET" | "POST" | "PUT" | "PATCH" | "DELETE", {
|
|
22
22
|
[x: string]: {
|
|
23
23
|
responses: any;
|
|
24
24
|
tags: readonly string[] | undefined;
|
|
@@ -182,7 +182,7 @@ export declare function queryAndSavePureEffect<Id extends string, T extends {
|
|
|
182
182
|
skip?: number;
|
|
183
183
|
}>): <R2, A, E2, S2 extends T>(pure: import("@effect/io/Effect").Effect<FixEnv<R2, Evt, import("@effect/data/Chunk").Chunk<S>, import("@effect/data/Chunk").Chunk<S2>>, E2, A>) => import("@effect/io/Effect").Effect<RequestContext | ContextMap | R | Exclude<R2, {
|
|
184
184
|
env: import("@effect-app/prelude/Pure").PureEnv<Evt, import("@effect/data/Chunk").Chunk<S>, import("@effect/data/Chunk").Chunk<S2>>;
|
|
185
|
-
}>,
|
|
185
|
+
}>, OptimisticConcurrencyException | InvalidStateError | E | E2, A>;
|
|
186
186
|
/**
|
|
187
187
|
* @tsplus fluent Repository queryAndSavePure
|
|
188
188
|
* @tsplus location "@effect-app/infra/services/Repository"
|
|
@@ -198,7 +198,7 @@ export declare function queryAndSavePure<Id extends string, T extends {
|
|
|
198
198
|
skip?: number;
|
|
199
199
|
}): <R2, A, E2, S2 extends T>(pure: import("@effect/io/Effect").Effect<FixEnv<R2, Evt, import("@effect/data/Chunk").Chunk<S>, import("@effect/data/Chunk").Chunk<S2>>, E2, A>) => import("@effect/io/Effect").Effect<RequestContext | ContextMap | Exclude<R2, {
|
|
200
200
|
env: import("@effect-app/prelude/Pure").PureEnv<Evt, import("@effect/data/Chunk").Chunk<S>, import("@effect/data/Chunk").Chunk<S2>>;
|
|
201
|
-
}>,
|
|
201
|
+
}>, OptimisticConcurrencyException | InvalidStateError | E2, A>;
|
|
202
202
|
/**
|
|
203
203
|
* @tsplus getter Repository saveManyWithPure
|
|
204
204
|
* @tsplus location "@effect-app/infra/services/Repository"
|
|
@@ -209,7 +209,7 @@ export declare function saveManyWithPure<Id extends string, T extends {
|
|
|
209
209
|
id: string;
|
|
210
210
|
}, Evt, ItemType extends string>(self: Repository<T, PM, Evt, Id, ItemType>): <R, A, E, S1 extends T, S2 extends T>(pure: import("@effect/io/Effect").Effect<FixEnv<R, Evt, import("@effect/data/Chunk").Chunk<S1>, import("@effect/data/Chunk").Chunk<S2>>, E, A>) => (items: Iterable<S1>) => import("@effect/io/Effect").Effect<RequestContext | ContextMap | Exclude<R, {
|
|
211
211
|
env: import("@effect-app/prelude/Pure").PureEnv<Evt, import("@effect/data/Chunk").Chunk<S1>, import("@effect/data/Chunk").Chunk<S2>>;
|
|
212
|
-
}>,
|
|
212
|
+
}>, OptimisticConcurrencyException | InvalidStateError | E, A>;
|
|
213
213
|
/**
|
|
214
214
|
* @tsplus fluent Repository byIdAndSaveWithPure
|
|
215
215
|
* @tsplus location "@effect-app/infra/services/Repository"
|
|
@@ -220,7 +220,7 @@ export declare function byIdAndSaveWithPure<Id extends string, T extends {
|
|
|
220
220
|
id: string;
|
|
221
221
|
}, Evt, ItemType extends string>(self: Repository<T, PM, Evt, Id, ItemType>, id: Id): <R, A, E, S2 extends T>(pure: import("@effect/io/Effect").Effect<FixEnv<R, Evt, T, S2>, E, A>) => import("@effect/io/Effect").Effect<RequestContext | ContextMap | Exclude<R, {
|
|
222
222
|
env: import("@effect-app/prelude/Pure").PureEnv<Evt, T, S2>;
|
|
223
|
-
}>,
|
|
223
|
+
}>, OptimisticConcurrencyException | InvalidStateError | E | NotFoundError<ItemType>, A>;
|
|
224
224
|
/**
|
|
225
225
|
* NOTE: it's not as composable, only useful when the request is simple, and only this part needs request args.
|
|
226
226
|
* @tsplus getter Repository handleByIdAndSaveWithPure
|
|
@@ -234,7 +234,7 @@ export declare function handleByIdAndSaveWithPure<Id extends string, T extends {
|
|
|
234
234
|
id: Id;
|
|
235
235
|
}, Context_1, R, A, E, S2 extends T>(pure: (req: Req, ctx: Context_1) => import("@effect/io/Effect").Effect<FixEnv<R, Evt, T, S2>, E, A>) => (req: Req, ctx: Context_1) => import("@effect/io/Effect").Effect<RequestContext | ContextMap | Exclude<R, {
|
|
236
236
|
env: import("@effect-app/prelude/Pure").PureEnv<Evt, T, S2>;
|
|
237
|
-
}>,
|
|
237
|
+
}>, OptimisticConcurrencyException | InvalidStateError | E | NotFoundError<ItemType>, A>;
|
|
238
238
|
/**
|
|
239
239
|
* @tsplus fluent Repository saveManyWithPure_
|
|
240
240
|
* @tsplus location "@effect-app/infra/services/Repository"
|
|
@@ -245,7 +245,7 @@ export declare function saveManyWithPure_<Id extends string, R, T extends {
|
|
|
245
245
|
id: string;
|
|
246
246
|
}, A, E, Evt, S1 extends T, S2 extends T, ItemType extends string>(self: Repository<T, PM, Evt, Id, ItemType>, items: Iterable<S1>, pure: Effect<FixEnv<R, Evt, Chunk<S1>, Chunk<S2>>, E, A>): import("@effect/io/Effect").Effect<RequestContext | ContextMap | Exclude<R, {
|
|
247
247
|
env: import("@effect-app/prelude/Pure").PureEnv<Evt, import("@effect/data/Chunk").Chunk<S1>, import("@effect/data/Chunk").Chunk<S2>>;
|
|
248
|
-
}>,
|
|
248
|
+
}>, OptimisticConcurrencyException | InvalidStateError | E, A>;
|
|
249
249
|
/**
|
|
250
250
|
* @tsplus fluent Repository saveWithPure_
|
|
251
251
|
* @tsplus location "@effect-app/infra/services/Repository"
|
|
@@ -256,12 +256,12 @@ export declare function saveWithPure_<Id extends string, R, T extends {
|
|
|
256
256
|
id: string;
|
|
257
257
|
}, A, E, Evt, S1 extends T, S2 extends T, ItemType extends string>(self: Repository<T, PM, Evt, Id, ItemType>, item: S1, pure: Effect<FixEnv<R, Evt, S1, S2>, E, A>): import("@effect/io/Effect").Effect<RequestContext | ContextMap | Exclude<R, {
|
|
258
258
|
env: import("@effect-app/prelude/Pure").PureEnv<Evt, S1, S2>;
|
|
259
|
-
}>,
|
|
259
|
+
}>, OptimisticConcurrencyException | InvalidStateError | E, A>;
|
|
260
260
|
export declare function saveAllWithEffectInt<Id extends string, T extends {
|
|
261
261
|
id: Id;
|
|
262
262
|
}, PM extends {
|
|
263
263
|
id: string;
|
|
264
|
-
}, P extends T, Evt, ItemType extends string, R, E, A>(self: Repository<T, PM, Evt, Id, ItemType>, gen: Effect<R, E, readonly [Iterable<P>, Iterable<Evt>, A]>): import("@effect/io/Effect").Effect<RequestContext | ContextMap | R,
|
|
264
|
+
}, P extends T, Evt, ItemType extends string, R, E, A>(self: Repository<T, PM, Evt, Id, ItemType>, gen: Effect<R, E, readonly [Iterable<P>, Iterable<Evt>, A]>): import("@effect/io/Effect").Effect<RequestContext | ContextMap | R, OptimisticConcurrencyException | InvalidStateError | E, A>;
|
|
265
265
|
/**
|
|
266
266
|
* @tsplus fluent Repository queryAndSavePureEffectBatched
|
|
267
267
|
* @tsplus location "@effect-app/infra/services/Repository"
|
|
@@ -277,7 +277,7 @@ export declare function queryAndSavePureEffectBatched<Id extends string, T exten
|
|
|
277
277
|
skip?: number;
|
|
278
278
|
}>, batchSize?: number): <R2, A, E2, S2 extends T>(pure: import("@effect/io/Effect").Effect<FixEnv<R2, Evt, import("@effect/data/Chunk").Chunk<S>, import("@effect/data/Chunk").Chunk<S2>>, E2, A>) => import("@effect/io/Effect").Effect<RequestContext | ContextMap | R | Exclude<R2, {
|
|
279
279
|
env: import("@effect-app/prelude/Pure").PureEnv<Evt, import("@effect/data/Chunk").Chunk<S>, import("@effect/data/Chunk").Chunk<S2>>;
|
|
280
|
-
}>,
|
|
280
|
+
}>, OptimisticConcurrencyException | InvalidStateError | E | E2, import("@effect/data/Chunk").Chunk<A>>;
|
|
281
281
|
/**
|
|
282
282
|
* @tsplus fluent Repository queryAndSavePureBatched
|
|
283
283
|
* @tsplus location "@effect-app/infra/services/Repository"
|
|
@@ -293,7 +293,7 @@ export declare function queryAndSavePureBatched<Id extends string, T extends {
|
|
|
293
293
|
skip?: number;
|
|
294
294
|
}, batchSize?: number): <R2, A, E2, S2 extends T>(pure: import("@effect/io/Effect").Effect<FixEnv<R2, Evt, import("@effect/data/Chunk").Chunk<S>, import("@effect/data/Chunk").Chunk<S2>>, E2, A>) => import("@effect/io/Effect").Effect<RequestContext | ContextMap | Exclude<R2, {
|
|
295
295
|
env: import("@effect-app/prelude/Pure").PureEnv<Evt, import("@effect/data/Chunk").Chunk<S>, import("@effect/data/Chunk").Chunk<S2>>;
|
|
296
|
-
}>,
|
|
296
|
+
}>, OptimisticConcurrencyException | InvalidStateError | E2, import("@effect/data/Chunk").Chunk<A>>;
|
|
297
297
|
/**
|
|
298
298
|
* @tsplus fluent Repository saveManyWithPureBatched
|
|
299
299
|
* @tsplus location "@effect-app/infra/services/Repository"
|
|
@@ -304,7 +304,7 @@ export declare function saveManyWithPureBatched<Id extends string, T extends {
|
|
|
304
304
|
id: string;
|
|
305
305
|
}, Evt, ItemType extends string>(self: Repository<T, PM, Evt, Id, ItemType>, batchSize?: number): <R, A, E, S1 extends T, S2 extends T>(pure: import("@effect/io/Effect").Effect<FixEnv<R, Evt, import("@effect/data/Chunk").Chunk<S1>, import("@effect/data/Chunk").Chunk<S2>>, E, A>) => (items: Iterable<S1>) => import("@effect/io/Effect").Effect<RequestContext | ContextMap | Exclude<R, {
|
|
306
306
|
env: import("@effect-app/prelude/Pure").PureEnv<Evt, import("@effect/data/Chunk").Chunk<S1>, import("@effect/data/Chunk").Chunk<S2>>;
|
|
307
|
-
}>,
|
|
307
|
+
}>, OptimisticConcurrencyException | InvalidStateError | E, import("@effect/data/Chunk").Chunk<A>>;
|
|
308
308
|
/**
|
|
309
309
|
* @tsplus fluent Repository saveManyWithPureBatched_
|
|
310
310
|
* @tsplus location "@effect-app/infra/services/Repository"
|
|
@@ -315,7 +315,7 @@ export declare function saveManyWithPureBatched_<Id extends string, R, T extends
|
|
|
315
315
|
id: string;
|
|
316
316
|
}, A, E, Evt, S1 extends T, S2 extends T, ItemType extends string>(self: Repository<T, PM, Evt, Id, ItemType>, items: Iterable<S1>, pure: Effect<FixEnv<R, Evt, Chunk<S1>, Chunk<S2>>, E, A>, batchSize?: number): import("@effect/io/Effect").Effect<RequestContext | ContextMap | Exclude<R, {
|
|
317
317
|
env: import("@effect-app/prelude/Pure").PureEnv<Evt, import("@effect/data/Chunk").Chunk<S1>, import("@effect/data/Chunk").Chunk<S2>>;
|
|
318
|
-
}>,
|
|
318
|
+
}>, OptimisticConcurrencyException | InvalidStateError | E, import("@effect/data/Chunk").Chunk<A>>;
|
|
319
319
|
export type AllDSL<T, Evt> = (<R, A, E, S1 extends T, S2 extends T>(pure: (dsl: PureDSL<Chunk<S1>, Chunk<S2>, Evt>) => Effect<R, E, A>) => Effect<FixEnv<R, Evt, Chunk<S1>, Chunk<S2>>, E, A>) & AllDSLExt<T, Evt>;
|
|
320
320
|
/**
|
|
321
321
|
* @tsplus type DSLExt
|
|
@@ -364,7 +364,7 @@ export declare function save<Id extends string, T extends {
|
|
|
364
364
|
id: Id;
|
|
365
365
|
}, PM extends {
|
|
366
366
|
id: string;
|
|
367
|
-
}, Evt, ItemType extends string>(self: Repository<T, PM, Evt, Id, ItemType>): (items_0: T, ...items_1: T[]) => import("@effect/io/Effect").Effect<RequestContext | ContextMap,
|
|
367
|
+
}, Evt, ItemType extends string>(self: Repository<T, PM, Evt, Id, ItemType>): (items_0: T, ...items_1: T[]) => import("@effect/io/Effect").Effect<RequestContext | ContextMap, OptimisticConcurrencyException | InvalidStateError, void>;
|
|
368
368
|
/**
|
|
369
369
|
* @tsplus getter Repository saveWithEvents
|
|
370
370
|
* @tsplus location "@effect-app/infra/services/Repository"
|
|
@@ -373,5 +373,5 @@ export declare function saveWithEvents<Id extends string, T extends {
|
|
|
373
373
|
id: Id;
|
|
374
374
|
}, PM extends {
|
|
375
375
|
id: string;
|
|
376
|
-
}, Evt, ItemType extends string>(self: Repository<T, PM, Evt, Id, ItemType>): (events: Iterable<Evt>) => (items_0: T, ...items_1: T[]) => import("@effect/io/Effect").Effect<RequestContext | ContextMap,
|
|
376
|
+
}, Evt, ItemType extends string>(self: Repository<T, PM, Evt, Id, ItemType>): (events: Iterable<Evt>) => (items_0: T, ...items_1: T[]) => import("@effect/io/Effect").Effect<RequestContext | ContextMap, OptimisticConcurrencyException | InvalidStateError, void>;
|
|
377
377
|
//# sourceMappingURL=Repository.d.ts.map
|
|
@@ -3,7 +3,6 @@ import { Chunk } from "@effect/data/Chunk";
|
|
|
3
3
|
import { Option } from "@effect-app/core/Option";
|
|
4
4
|
import { NonEmptyReadonlyArray } from "@effect/data/ReadonlyArray";
|
|
5
5
|
import { TagClass } from "@effect-app/prelude/service";
|
|
6
|
-
import { Tag } from "@effect/data/Context";
|
|
7
6
|
import { ConfigSecret } from "@effect/io/Config/Secret";
|
|
8
7
|
import type { UniqueKey } from "@azure/cosmos";
|
|
9
8
|
import type { ParserEnv } from "@effect-app/schema/custom/Parser";
|
|
@@ -88,19 +87,17 @@ export declare abstract class StoreMaker extends StoreMaker_base {
|
|
|
88
87
|
* @tsplus static ContextMap.Ops Make
|
|
89
88
|
* @tsplus location "@effect-app/infra/services/Store/service"
|
|
90
89
|
*/
|
|
91
|
-
export declare const makeMap: import("@effect/io/Effect").Effect<never, never,
|
|
92
|
-
|
|
93
|
-
set: (id: string, eTag: string | undefined) => void;
|
|
94
|
-
parserEnv: ParserEnv;
|
|
95
|
-
}>;
|
|
96
|
-
export interface ContextMap extends Effect.Success<typeof makeMap> {
|
|
97
|
-
}
|
|
90
|
+
export declare const makeMap: import("@effect/io/Effect").Effect<never, never, ContextMap>;
|
|
91
|
+
declare const ContextMap_base: (abstract new () => {}) & import("@effect/data/Context").Tag<ContextMap>;
|
|
98
92
|
/**
|
|
99
|
-
* @tsplus type ContextMap
|
|
93
|
+
* @tsplus type ContextMap
|
|
94
|
+
* @tsplus companion ContextMap.Ops
|
|
100
95
|
*/
|
|
101
|
-
export
|
|
96
|
+
export declare abstract class ContextMap extends ContextMap_base {
|
|
97
|
+
abstract get: (id: string) => string | undefined;
|
|
98
|
+
abstract set: (id: string, eTag: string | undefined) => void;
|
|
99
|
+
abstract parserEnv: ParserEnv;
|
|
102
100
|
}
|
|
103
|
-
export declare const ContextMap: ContextMapOps;
|
|
104
101
|
export interface PersistenceModelType<Id extends string> {
|
|
105
102
|
id: Id;
|
|
106
103
|
_etag: string | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../../_src/services/Store/service.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../../_src/services/Store/service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import * as tsplus_module_1 from "@effect-app/prelude/service";
|
|
2
2
|
import * as tsplus_module_2 from "@effect/io/Effect";
|
|
3
|
-
import * as tsplus_module_3 from "@effect/data/Context";
|
|
4
3
|
/**
|
|
5
4
|
* @tsplus type StoreMaker
|
|
6
5
|
* @tsplus companion StoreMaker.Ops
|
|
@@ -62,5 +61,10 @@ export const makeMap = tsplus_module_2.sync(() => {
|
|
|
62
61
|
parserEnv
|
|
63
62
|
};
|
|
64
63
|
});
|
|
65
|
-
|
|
66
|
-
|
|
64
|
+
/**
|
|
65
|
+
* @tsplus type ContextMap
|
|
66
|
+
* @tsplus companion ContextMap.Ops
|
|
67
|
+
*/
|
|
68
|
+
export class ContextMap extends tsplus_module_1.TagClass() {
|
|
69
|
+
}
|
|
70
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL19zcmMvc2VydmljZXMvU3RvcmUvc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQTZFQTs7O0dBR0c7QUFDSCxNQUFNLE9BQWdCLFVBQVcsU0FBUSxnQkFBQSxRQUFRLEVBQWM7Q0FNOUQ7QUFFRDs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLE9BQU8sR0FBRyxxQkFBWSxHQUFlLEVBQUU7SUFDbEQsTUFBTSxLQUFLLEdBQUcsSUFBSSxHQUFHLEVBQWtCLENBQUE7SUFDdkMsTUFBTSxPQUFPLEdBQUcsQ0FBQyxFQUFVLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUE7SUFDN0MsTUFBTSxPQUFPLEdBQUcsQ0FBQyxFQUFVLEVBQUUsSUFBd0IsRUFBRSxFQUFFO1FBQ3ZELElBQUksS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFBO0lBQzdELENBQUMsQ0FBQTtJQUVELE1BQU0sV0FBVyxHQUFHLElBQUksR0FBRyxFQUd4QixDQUFBO0lBRUgsTUFBTSxXQUFXLEdBQUcsSUFBSSxHQUFHLEVBR3hCLENBQUE7SUFFSCxNQUFNLFlBQVksR0FBRyxDQUNuQixDQUFrQixFQUNsQixFQUErQixFQUMvQixFQUFFO1FBQ0YsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUE7UUFDdEIsT0FBTyxFQUFFLENBQUE7SUFDWCxDQUFDLENBQUE7SUFFRCxNQUFNLFNBQVMsR0FBYztRQUMzQiwrRUFBK0U7UUFDL0UsK0hBQStIO1FBQy9ILEdBQUcsRUFBRSxLQUFLO1FBQ1YsS0FBSyxFQUFFO1lBQ0wsY0FBYyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxZQUFZLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsU0FBUyxDQUFDLEtBQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQ2hHLGVBQWUsRUFBRSxPQUFPLENBQUMsRUFBRTtnQkFDekIsT0FBTyxNQUFNLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFO29CQUNyRCxJQUFJLENBQUMsQ0FBQyxDQUFDLEdBQUcsU0FBUyxDQUFDLEtBQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUE7b0JBQzVDLE9BQU8sSUFBSSxDQUFBO2dCQUNiLENBQUMsRUFBRSxFQUFTLENBQUMsQ0FBQTtZQUNmLENBQUM7WUFDRCxRQUFRLEVBQUUsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFPLEVBQUU7Z0JBQzFCLE1BQU0sQ0FBQyxHQUFHLFdBQVcsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUE7Z0JBQ2hDLElBQUksQ0FBQyxFQUFFO29CQUNMLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUE7b0JBQ2xCLElBQUksQ0FBQyxFQUFFO3dCQUNMLGtDQUFrQzt3QkFDbEMsT0FBTyxDQUFDLENBQUE7cUJBQ1Q7eUJBQU07d0JBQ0wsTUFBTSxFQUFFLEdBQUcsS0FBSyxDQUFDLENBQUMsRUFBRSxTQUFTLENBQUMsQ0FBQTt3QkFDOUIsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUE7d0JBQ1osT0FBTyxFQUFFLENBQUE7cUJBQ1Y7aUJBQ0Y7cUJBQU07b0JBQ0wsTUFBTSxFQUFFLEdBQUcsS0FBSyxDQUFDLENBQUMsRUFBRSxTQUFTLENBQUMsQ0FBQTtvQkFDOUIsV0FBVyxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsSUFBSSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQTtvQkFDMUMsT0FBTyxFQUFFLENBQUE7aUJBQ1Y7WUFDSCxDQUFDO1NBQ0Y7S0FDRixDQUFBO0lBRUQsT0FBTztRQUNMLEdBQUcsRUFBRSxPQUFPO1FBQ1osR0FBRyxFQUFFLE9BQU87UUFDWixTQUFTO0tBQ1YsQ0FBQTtBQUNILENBQUMsQ0FBQyxDQUFBO0FBRUY7OztHQUdHO0FBQ0gsTUFBTSxPQUFnQixVQUFXLFNBQVEsZ0JBQUEsUUFBUSxFQUFjO0NBSTlEIn0=
|
|
@@ -6,8 +6,8 @@ import type { DBRecord } from "./shared.js";
|
|
|
6
6
|
import { OptimisticLockException } from "./shared.js";
|
|
7
7
|
import * as simpledb from "./simpledb.js";
|
|
8
8
|
export declare function createContext<TKey extends string, EA, A extends DBRecord<TKey>>(): <REncode, RDecode, EDecode>(type: string, encode: (record: A) => import("@effect/io/Effect").Effect<REncode, never, EA>, decode: (d: EA) => import("@effect/io/Effect").Effect<RDecode, EDecode, A>, indexes: IndexingPolicy) => import("@effect/io/Effect").Effect<Cosmos.CosmosClient, unknown, {
|
|
9
|
-
find: (id: string) => import("@effect/io/Effect").Effect<Cosmos.CosmosClient | simpledb.RecordCache
|
|
9
|
+
find: (id: string) => import("@effect/io/Effect").Effect<RDecode | Cosmos.CosmosClient | simpledb.RecordCache, unknown, import("@effect/data/Option").Option<A>>;
|
|
10
10
|
findBy: (parameters: Record<string, string>) => import("@effect/io/Effect").Effect<Cosmos.CosmosClient, unknown, import("@effect/data/Option").Option<any>>;
|
|
11
|
-
save: (record: A) => import("@effect/io/Effect").Effect<Cosmos.CosmosClient | simpledb.RecordCache
|
|
11
|
+
save: (record: A) => import("@effect/io/Effect").Effect<REncode | Cosmos.CosmosClient | simpledb.RecordCache, OptimisticLockException, A>;
|
|
12
12
|
}>;
|
|
13
13
|
//# sourceMappingURL=cosmosdb.d.ts.map
|
|
@@ -4,9 +4,9 @@ import type { DBRecord, Index } from "./shared.js";
|
|
|
4
4
|
import { CouldNotAquireDbLockException } from "./shared.js";
|
|
5
5
|
import * as simpledb from "./simpledb.js";
|
|
6
6
|
export declare function createContext<TKey extends string, EA, A extends DBRecord<TKey>>(): <REncode, RDecode, EDecode>(type: string, encode: (record: A) => import("@effect/io/Effect").Effect<REncode, never, EA>, decode: (d: EA) => import("@effect/io/Effect").Effect<RDecode, EDecode, A>, schemaVersion: string, makeIndexKey: (r: A) => Index, dir?: string) => {
|
|
7
|
-
find: (id: string) => import("@effect/io/Effect").Effect<simpledb.RecordCache
|
|
7
|
+
find: (id: string) => import("@effect/io/Effect").Effect<RDecode | simpledb.RecordCache, simpledb.InvalidStateError, import("@effect/data/Option").Option<A>>;
|
|
8
8
|
findByIndex: (index: Index) => import("@effect/io/Effect").Effect<never, never, import("@effect/data/Option").Option<TKey & {}>>;
|
|
9
|
-
save: (record: A) => import("@effect/io/Effect").Effect<simpledb.RecordCache
|
|
9
|
+
save: (record: A) => import("@effect/io/Effect").Effect<REncode | simpledb.RecordCache, CouldNotAquireDbLockException | import("./shared.js").OptimisticLockException | simpledb.InvalidStateError, A>;
|
|
10
10
|
};
|
|
11
11
|
export declare function initialise(dir: string): void;
|
|
12
12
|
//# sourceMappingURL=diskdb.d.ts.map
|
|
@@ -5,8 +5,8 @@ import * as MO from "@effect-app/schema";
|
|
|
5
5
|
import type { DBRecord } from "./shared.js";
|
|
6
6
|
import * as simpledb from "./simpledb.js";
|
|
7
7
|
export declare function createContext<TKey extends string, EA, A extends DBRecord<TKey>>(): <REncode, RDecode, EDecode>(type: string, encode: (record: A) => import("@effect/io/Effect").Effect<REncode, never, EA>, decode: (d: EA) => import("@effect/io/Effect").Effect<RDecode, EDecode, A>) => {
|
|
8
|
-
find: (id: string) => import("@effect/io/Effect").Effect<simpledb.RecordCache
|
|
8
|
+
find: (id: string) => import("@effect/io/Effect").Effect<RDecode | simpledb.RecordCache, MO.CondemnException | simpledb.InvalidStateError, import("@effect/data/Option").Option<A>>;
|
|
9
9
|
findBy: <V extends Partial<A>>(keys: V, eq: import("@effect/data/typeclass/Equivalence").Equivalence<V>) => import("@effect/io/Effect").Effect<RDecode, MO.CondemnException, import("@effect/data/Option").Option<A & {}>>;
|
|
10
|
-
save: (record: A) => import("@effect/io/Effect").Effect<simpledb.RecordCache
|
|
10
|
+
save: (record: A) => import("@effect/io/Effect").Effect<REncode | simpledb.RecordCache, MO.CondemnException | import("./shared.js").OptimisticLockException | simpledb.InvalidStateError, A>;
|
|
11
11
|
};
|
|
12
12
|
//# sourceMappingURL=memdb.d.ts.map
|
|
@@ -6,8 +6,8 @@ import type { DBRecord } from "./shared.js";
|
|
|
6
6
|
import { OptimisticLockException } from "./shared.js";
|
|
7
7
|
import * as simpledb from "./simpledb.js";
|
|
8
8
|
export declare function createContext<TKey extends string, EA, A extends DBRecord<TKey>>(): <REncode, RDecode, EDecode>(type: string, encode: (record: A) => import("@effect/io/Effect").Effect<REncode, never, EA>, decode: (d: EA) => import("@effect/io/Effect").Effect<RDecode, EDecode, A>, indexes: IndexDescription[]) => import("@effect/io/Effect").Effect<Mongo.MongoClient, unknown, {
|
|
9
|
-
find: (id: string) => import("@effect/io/Effect").Effect<
|
|
9
|
+
find: (id: string) => import("@effect/io/Effect").Effect<RDecode | Mongo.MongoClient | simpledb.RecordCache, unknown, import("@effect/data/Option").Option<A>>;
|
|
10
10
|
findBy: (keys: Record<string, string>) => import("@effect/io/Effect").Effect<Mongo.MongoClient, unknown, import("@effect/data/Option").Option<TKey>>;
|
|
11
|
-
save: (record: A) => import("@effect/io/Effect").Effect<
|
|
11
|
+
save: (record: A) => import("@effect/io/Effect").Effect<REncode | Mongo.MongoClient | simpledb.RecordCache, OptimisticLockException, A>;
|
|
12
12
|
}>;
|
|
13
13
|
//# sourceMappingURL=mongodb.d.ts.map
|
|
@@ -6,9 +6,9 @@ import type { DBRecord, Index } from "./shared.js";
|
|
|
6
6
|
import { CouldNotAquireDbLockException } from "./shared.js";
|
|
7
7
|
import * as simpledb from "./simpledb.js";
|
|
8
8
|
export declare function createContext<TKey extends string, EA, A extends DBRecord<TKey>>(): <REncode, RDecode, EDecode>(type: string, encode: (record: A) => import("@effect/io/Effect").Effect<REncode, never, EA>, decode: (d: EA) => import("@effect/io/Effect").Effect<RDecode, EDecode, A>, schemaVersion: string, makeIndexKey: (r: A) => Index) => {
|
|
9
|
-
find: (id: string) => import("@effect/io/Effect").Effect<RED.RedisClient | simpledb.RecordCache
|
|
9
|
+
find: (id: string) => import("@effect/io/Effect").Effect<RDecode | RED.RedisClient | simpledb.RecordCache, simpledb.InvalidStateError, import("@effect/data/Option").Option<A>>;
|
|
10
10
|
findByIndex: (index: Index) => import("@effect/io/Effect").Effect<RED.RedisClient, RED.ConnectionException, import("@effect/data/Option").Option<TKey>>;
|
|
11
|
-
save: (record: A) => import("@effect/io/Effect").Effect<RED.RedisClient | simpledb.RecordCache
|
|
11
|
+
save: (record: A) => import("@effect/io/Effect").Effect<REncode | RED.RedisClient | simpledb.RecordCache, CouldNotAquireDbLockException | import("./shared.js").OptimisticLockException | simpledb.InvalidStateError, A>;
|
|
12
12
|
};
|
|
13
13
|
declare const RedisSerializedDBRecord_base: MO.Model<RedisSerializedDBRecord, MO.SchemaProperties<{
|
|
14
14
|
version: MO.Property<MO.SchemaDefaultSchema<unknown, string, string, string, {}>, "required", import("@effect/data/Option").None, import("@effect/data/Option").None>;
|
|
@@ -17,7 +17,7 @@ export interface RecordCache extends ReturnType<typeof makeLiveRecordCache> {
|
|
|
17
17
|
}
|
|
18
18
|
export declare const RecordCache: import("@effect/data/Context").Tag<RecordCache>;
|
|
19
19
|
export declare const LiveRecordCache: import("@effect/io/Layer").Layer<never, never, RecordCache>;
|
|
20
|
-
export declare function find<R, RDecode, EDecode, E, EA, A>(tryRead: (id: string) => Effect<R, E, Option<CachedRecord<EA>>>, decode: (d: EA) => Effect<RDecode, EDecode, A>, type: string): (id: string) => import("@effect/io/Effect").Effect<
|
|
21
|
-
export declare function storeDirectly<R, E, TKey extends string, A extends DBRecord<TKey>>(save: (r: A, version: Option<Version>) => Effect<R, E, CachedRecord<A>>, type: string): (record: A) => import("@effect/io/Effect").Effect<
|
|
22
|
-
export declare function store<R, E, R2, E2, TKey extends string, EA, A extends DBRecord<TKey>>(tryRead: (id: string) => Effect<R, E, Option<CachedRecord<EA>>>, save: (r: A, version: Option<Version>) => Effect<R, E, CachedRecord<A>>, lock: (id: string) => Effect<R2 | Scope, E2, unknown>, type: string): (record: A) => import("@effect/io/Effect").Effect<
|
|
20
|
+
export declare function find<R, RDecode, EDecode, E, EA, A>(tryRead: (id: string) => Effect<R, E, Option<CachedRecord<EA>>>, decode: (d: EA) => Effect<RDecode, EDecode, A>, type: string): (id: string) => import("@effect/io/Effect").Effect<R | RDecode | RecordCache, E | InvalidStateError, import("@effect/data/Option").Option<A>>;
|
|
21
|
+
export declare function storeDirectly<R, E, TKey extends string, A extends DBRecord<TKey>>(save: (r: A, version: Option<Version>) => Effect<R, E, CachedRecord<A>>, type: string): (record: A) => import("@effect/io/Effect").Effect<R | RecordCache, E, A>;
|
|
22
|
+
export declare function store<R, E, R2, E2, TKey extends string, EA, A extends DBRecord<TKey>>(tryRead: (id: string) => Effect<R, E, Option<CachedRecord<EA>>>, save: (r: A, version: Option<Version>) => Effect<R, E, CachedRecord<A>>, lock: (id: string) => Effect<R2 | Scope, E2, unknown>, type: string): (record: A) => import("@effect/io/Effect").Effect<R | RecordCache | Exclude<R2, import("@effect/io/Scope").Scope>, E | E2 | OptimisticLockException | InvalidStateError, A>;
|
|
23
23
|
//# sourceMappingURL=simpledb.d.ts.map
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@effect-app/infra",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.31.1",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"dependencies": {
|
|
@@ -19,9 +19,9 @@
|
|
|
19
19
|
"proper-lockfile": "^4.1.2",
|
|
20
20
|
"pure-rand": "^6.0.0",
|
|
21
21
|
"redlock": "^4.2.0",
|
|
22
|
-
"@effect-app/prelude": "0.
|
|
23
|
-
"@effect-app/infra-adapters": "0.24.2",
|
|
22
|
+
"@effect-app/prelude": "0.25.0",
|
|
24
23
|
"@effect-app/core": "0.32.1",
|
|
24
|
+
"@effect-app/infra-adapters": "0.25.0",
|
|
25
25
|
"@effect-app/schema": "0.23.1"
|
|
26
26
|
},
|
|
27
27
|
"devDependencies": {
|