@effect-app/infra 0.86.2 → 0.87.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.
Files changed (26) 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 +11 -1
  20. package/_cjs/services/RepositoryBase.cjs +12 -11
  21. package/_cjs/services/RepositoryBase.cjs.map +1 -1
  22. package/_src/services/RepositoryBase.ts +108 -57
  23. package/dist/services/RepositoryBase.d.ts +52 -16
  24. package/dist/services/RepositoryBase.d.ts.map +1 -1
  25. package/dist/services/RepositoryBase.js +14 -12
  26. package/package.json +2 -2
@@ -1,3 +1,4 @@
1
+ /* eslint-disable @typescript-eslint/ban-types */
1
2
  import type { ParserEnv } from "@effect-app/schema/custom/Parser"
2
3
  import type { Repository } from "./Repository.js"
3
4
  import { StoreMaker } from "./Store.js"
@@ -67,17 +68,17 @@ export function makeRepo<
67
68
  T extends { id: string },
68
69
  ConstructorInput,
69
70
  Api,
70
- E extends { id: string }
71
+ Encoded extends { id: string }
71
72
  >(
72
73
  name: ItemType,
73
- schema: Schema.Schema<unknown, T, ConstructorInput, E, Api>,
74
- mapFrom: (pm: Omit<PM, "_etag">) => E,
75
- mapTo: (e: E, etag: string | undefined) => PM
74
+ schema: Schema.Schema<unknown, T, ConstructorInput, Encoded, Api>,
75
+ mapFrom: (pm: Omit<PM, "_etag">) => Encoded,
76
+ mapTo: (e: Encoded, etag: string | undefined) => PM
76
77
  ) => {
77
78
  const where = makeWhere<PM>()
78
79
 
79
80
  function mapToPersistenceModel(
80
- e: E,
81
+ e: Encoded,
81
82
  getEtag: (id: string) => string | undefined
82
83
  ): PM {
83
84
  return mapTo(e, getEtag(e.id))
@@ -86,23 +87,33 @@ export function makeRepo<
86
87
  function mapReverse(
87
88
  { _etag, ...e }: PM,
88
89
  setEtag: (id: string, eTag: string | undefined) => void
89
- ): E {
90
+ ): Encoded {
90
91
  setEtag(e.id, _etag)
91
92
  return mapFrom(e)
92
93
  }
93
94
 
94
95
  const mkStore = makeStore<PM>()(name, schema, mapTo)
95
96
 
96
- function make(
97
- publishEvents: (evt: NonEmptyReadonlyArray<Evt>) => Effect<never, never, void>,
98
- makeInitial?: Effect<never, never, readonly T[]>,
99
- config?: Omit<StoreConfig<PM>, "partitionValue"> & {
100
- partitionValue?: (a: PM) => string
101
- }
97
+ function make<R = never, E = never, R2 = never>(
98
+ args: Evt extends {} ? {
99
+ publishEvents: (evt: NonEmptyReadonlyArray<Evt>) => Effect<R2, never, void>
100
+ makeInitial?: Effect<R, E, readonly T[]>
101
+ config?: Omit<StoreConfig<PM>, "partitionValue"> & {
102
+ partitionValue?: (a: PM) => string
103
+ }
104
+ }
105
+ : {
106
+ makeInitial?: Effect<R, E, readonly T[]>
107
+ config?: Omit<StoreConfig<PM>, "partitionValue"> & {
108
+ partitionValue?: (a: PM) => string
109
+ }
110
+ }
102
111
  ) {
103
112
  return Do(($) => {
104
- const store = $(mkStore(makeInitial, config))
113
+ const store = $(mkStore(args.makeInitial, args.config))
105
114
  const cms = $(ContextMapContainer)
115
+ const pubCfg = $(Effect.context<R2>())
116
+ const pub = "publishEvents" in args ? flow(args.publishEvents, (_) => _.provide(pubCfg)) : () => Effect.unit
106
117
 
107
118
  const allE = store.all.flatMap((items) =>
108
119
  Do(($) => {
@@ -130,7 +141,7 @@ export function makeRepo<
130
141
  return findE(id).flatMapOpt(EParserFor(schema).condemnDie)
131
142
  }
132
143
 
133
- const saveAllE = (a: Iterable<E>) =>
144
+ const saveAllE = (a: Iterable<Encoded>) =>
134
145
  Effect(a.toNonEmptyArray)
135
146
  .flatMapOpt((a) =>
136
147
  Do(($) => {
@@ -148,7 +159,7 @@ export function makeRepo<
148
159
  saveAll(items)
149
160
  > Effect(events.toNonEmptyArray)
150
161
  // TODO: for full consistency the events should be stored within the same database transaction, and then picked up.
151
- .flatMapOpt(publishEvents)
162
+ .flatMapOpt(pub)
152
163
 
153
164
  function removeAndPublish(a: Iterable<T>, events: Iterable<Evt> = []) {
154
165
  return Effect.gen(function*($) {
@@ -162,7 +173,7 @@ export function makeRepo<
162
173
  yield* $(
163
174
  Effect(events.toNonEmptyArray)
164
175
  // TODO: for full consistency the events should be stored within the same database transaction, and then picked up.
165
- .flatMapOpt(publishEvents)
176
+ .flatMapOpt(pub)
166
177
  )
167
178
  })
168
179
  }
@@ -305,7 +316,7 @@ export function makeStore<
305
316
  export const RepositoryBaseImpl = <Service>() => {
306
317
  return <
307
318
  PM extends { id: string; _etag: string | undefined },
308
- Evt = never
319
+ Evt = unknown
309
320
  >() =>
310
321
  <ItemType extends string, T extends { id: string }, ConstructorInput, Api, E extends { id: string }>(
311
322
  itemType: ItemType,
@@ -313,13 +324,21 @@ export const RepositoryBaseImpl = <Service>() => {
313
324
  mapFrom: (pm: Omit<PM, "_etag">) => E,
314
325
  mapTo: (e: E, etag: string | undefined) => PM
315
326
  ): (abstract new() => Repository<T, PM, Evt, ItemType>) & Tag<Service, Service> & {
316
- make<R = never, E = never>(
317
- publishEvents: (evt: NonEmptyReadonlyArray<Evt>) => Effect<never, never, void>,
318
- makeInitial?: Effect<R, E, readonly T[]>,
319
- config?: Omit<StoreConfig<PM>, "partitionValue"> & {
320
- partitionValue?: (a: PM) => string
321
- }
322
- ): Effect<StoreMaker | ContextMapContainer | R, E, Repository<T, PM, Evt, ItemType>>
327
+ make<R = never, E = never, R2 = never>(
328
+ args: Evt extends {} ? {
329
+ publishEvents: (evt: NonEmptyReadonlyArray<Evt>) => Effect<R2, never, void>
330
+ makeInitial?: Effect<R, E, readonly T[]>
331
+ config?: Omit<StoreConfig<PM>, "partitionValue"> & {
332
+ partitionValue?: (a: PM) => string
333
+ }
334
+ }
335
+ : {
336
+ makeInitial?: Effect<R, E, readonly T[]>
337
+ config?: Omit<StoreConfig<PM>, "partitionValue"> & {
338
+ partitionValue?: (a: PM) => string
339
+ }
340
+ }
341
+ ): Effect<StoreMaker | ContextMapContainer | R | R2, E, Repository<T, PM, Evt, ItemType>>
323
342
  where: ReturnType<typeof makeWhere<PM>>
324
343
  flatMap: <R1, E1, B>(f: (a: Service) => Effect<R1, E1, B>) => Effect<Service | R1, E1, B>
325
344
  makeLayer: (svc: Service) => Layer<never, never, Service>
@@ -343,41 +362,73 @@ export const RepositoryDefaultImpl = <Service>() => {
343
362
  schema: Schema.Schema<unknown, T, ConstructorInput, E, Api>,
344
363
  mapFrom: (pm: Omit<PM, "_etag">) => E,
345
364
  mapTo: (e: E, etag: string | undefined) => PM
346
- ): Tag<Service, Service> & {
347
- new(
348
- impl: Repository<T, PM, Evt, ItemType>
349
- ): Repository<T, PM, Evt, ItemType>
350
- make<R = never, E = never>(
351
- publishEvents: (evt: NonEmptyReadonlyArray<Evt>) => Effect<never, never, void>,
352
- makeInitial?: Effect<R, E, readonly T[]>,
353
- config?: Omit<StoreConfig<PM>, "partitionValue"> & {
354
- partitionValue?: (a: PM) => string
355
- }
356
- ): Effect<StoreMaker | R, E, Repository<T, PM, Evt, ItemType>>
357
- toLayer<R = never, E = never>(
358
- publishEvents: (evt: NonEmptyReadonlyArray<Evt>) => Effect<never, never, void>,
359
- makeInitial?: Effect<R, E, readonly T[]>,
360
- config?: Omit<StoreConfig<PM>, "partitionValue"> & {
361
- partitionValue?: (a: PM) => string
362
- }
363
- ): Layer<StoreMaker | R, E, Service>
364
- where: ReturnType<typeof makeWhere<PM>>
365
- flatMap: <R1, E1, B>(f: (a: Service) => Effect<R1, E1, B>) => Effect<Service | R1, E1, B>
366
- makeLayer: (svc: Service) => Layer<never, never, Service>
367
- map: <B>(f: (a: Service) => B) => Effect<Service, never, B>
368
- repo: Repository<T, PM, Evt, ItemType> // just a helper to type the constructor
369
- } => {
365
+ ):
366
+ & Tag<Service, Service>
367
+ & {
368
+ new(
369
+ impl: Repository<T, PM, Evt, ItemType>
370
+ ): Repository<T, PM, Evt, ItemType>
371
+
372
+ where: ReturnType<typeof makeWhere<PM>>
373
+ flatMap: <R1, E1, B>(f: (a: Service) => Effect<R1, E1, B>) => Effect<Service | R1, E1, B>
374
+ makeLayer: (svc: Service) => Layer<never, never, Service>
375
+ map: <B>(f: (a: Service) => B) => Effect<Service, never, B>
376
+ repo: Repository<T, PM, Evt, ItemType> // just a helper to type the constructor
377
+
378
+ make<R = never, E = never, R2 = never>(
379
+ args: Evt extends {} ? {
380
+ publishEvents: (evt: NonEmptyReadonlyArray<Evt>) => Effect<R2, never, void>
381
+ makeInitial?: Effect<R, E, readonly T[]>
382
+ config?: Omit<StoreConfig<PM>, "partitionValue"> & {
383
+ partitionValue?: (a: PM) => string
384
+ }
385
+ }
386
+ : {
387
+ makeInitial?: Effect<R, E, readonly T[]>
388
+ config?: Omit<StoreConfig<PM>, "partitionValue"> & {
389
+ partitionValue?: (a: PM) => string
390
+ }
391
+ }
392
+ ): Effect<StoreMaker | R, E, Repository<T, PM, Evt, ItemType>>
393
+ toLayer<R = never, E = never, R2 = never>(
394
+ args: Evt extends {} ? {
395
+ publishEvents: (evt: NonEmptyReadonlyArray<Evt>) => Effect<R2, never, void>
396
+ makeInitial?: Effect<R, E, readonly T[]>
397
+ config?: Omit<StoreConfig<PM>, "partitionValue"> & {
398
+ partitionValue?: (a: PM) => string
399
+ }
400
+ }
401
+ : {
402
+ makeInitial?: Effect<R, E, readonly T[]>
403
+ config?: Omit<StoreConfig<PM>, "partitionValue"> & {
404
+ partitionValue?: (a: PM) => string
405
+ }
406
+ }
407
+ ): Layer<StoreMaker | R, E, Service>
408
+ } =>
409
+ {
370
410
  return class extends RepositoryBaseImpl<Service>()<PM, Evt>()(itemType, schema, mapFrom, mapTo) {
371
- static toLayer<R = never, E = never>(
372
- publishEvents: (evt: NonEmptyReadonlyArray<Evt>) => Effect<never, never, void>,
373
- makeInitial?: Effect<R, E, readonly T[]>,
374
- config?: Omit<StoreConfig<PM>, "partitionValue"> & {
375
- partitionValue?: (a: PM) => string
376
- }
411
+ static toLayer<R = never, E = never, R2 = never>(
412
+ args: Evt extends {} ? {
413
+ publishEvents: (evt: NonEmptyReadonlyArray<Evt>) => Effect<R2, never, void>
414
+ makeInitial?: Effect<R, E, readonly T[]>
415
+ config?: Omit<StoreConfig<PM>, "partitionValue"> & {
416
+ partitionValue?: (a: PM) => string
417
+ }
418
+ }
419
+ : {
420
+ makeInitial?: Effect<R, E, readonly T[]>
421
+ config?: Omit<StoreConfig<PM>, "partitionValue"> & {
422
+ partitionValue?: (a: PM) => string
423
+ }
424
+ }
377
425
  ) {
378
- return this.make(publishEvents, makeInitial, config).map((impl) => new this(impl) as any as Service).toLayer(
379
- this
380
- )
426
+ return this
427
+ .make(args)
428
+ .map((impl) => new this(impl) as any as Service)
429
+ .toLayer(
430
+ this
431
+ )
381
432
  }
382
433
  static repo: any
383
434
  constructor(
@@ -72,12 +72,21 @@ export declare function makeRepo<PM extends {
72
72
  _etag: string | undefined;
73
73
  }, Evt = never>(): <ItemType extends string, T extends {
74
74
  id: string;
75
- }, ConstructorInput, Api, E extends {
76
- id: string;
77
- }>(name: ItemType, schema: Schema.Schema<unknown, T, ConstructorInput, E, Api>, mapFrom: (pm: Omit<PM, "_etag">) => E, mapTo: (e: E, etag: string | undefined) => PM) => {
78
- make: (publishEvents: (evt: readonly [Evt, ...Evt[]]) => Effect<never, never, void>, makeInitial?: Effect<never, never, readonly T[]>, config?: (Omit<StoreConfig<PM>, "partitionValue"> & {
79
- partitionValue?: ((a: PM) => string) | undefined;
80
- }) | undefined) => import("effect/Effect").Effect<StoreMaker | ContextMapContainer, never, Repository<T, PM, Evt, ItemType>>;
75
+ }, ConstructorInput, Api, Encoded extends {
76
+ id: string;
77
+ }>(name: ItemType, schema: Schema.Schema<unknown, T, ConstructorInput, Encoded, Api>, mapFrom: (pm: Omit<PM, "_etag">) => Encoded, mapTo: (e: Encoded, etag: string | undefined) => PM) => {
78
+ make: <R = never, E = never, R2 = never>(args: Evt extends {} ? {
79
+ publishEvents: (evt: readonly [Evt, ...Evt[]]) => Effect<R2, never, void>;
80
+ makeInitial?: import("effect/Effect").Effect<R, E, readonly T[]> | undefined;
81
+ config?: (Omit<StoreConfig<PM>, "partitionValue"> & {
82
+ partitionValue?: ((a: PM) => string) | undefined;
83
+ }) | undefined;
84
+ } : {
85
+ makeInitial?: import("effect/Effect").Effect<R, E, readonly T[]> | undefined;
86
+ config?: (Omit<StoreConfig<PM>, "partitionValue"> & {
87
+ partitionValue?: ((a: PM) => string) | undefined;
88
+ }) | undefined;
89
+ }) => import("effect/Effect").Effect<StoreMaker | ContextMapContainer | R | R2, E, Repository<T, PM, Evt, ItemType>>;
81
90
  where: (makeWhere: (f: {
82
91
  <TFieldName extends import("../filter/types/path/eager.js").Path<PM>, A extends import("../filter/types/path/eager.js").PathValue<PM, TFieldName>, Val>(path: TFieldName, value: (v: A) => Val): {
83
92
  key: string;
@@ -157,14 +166,23 @@ export declare function makeStore<PM extends {
157
166
  export declare const RepositoryBaseImpl: <Service>() => <PM extends {
158
167
  id: string;
159
168
  _etag: string | undefined;
160
- }, Evt = never>() => <ItemType extends string, T extends {
169
+ }, Evt = unknown>() => <ItemType extends string, T extends {
161
170
  id: string;
162
171
  }, ConstructorInput, Api, E extends {
163
172
  id: string;
164
173
  }>(itemType: ItemType, schema: Schema.Schema<unknown, T, ConstructorInput, E, Api>, mapFrom: (pm: Omit<PM, "_etag">) => E, mapTo: (e: E, etag: string | undefined) => PM) => (abstract new () => Repository<T, PM, Evt, ItemType>) & import("effect/Context").Tag<Service, Service> & {
165
- make<R = never, E_1 = never>(publishEvents: (evt: readonly [Evt, ...Evt[]]) => Effect<never, never, void>, makeInitial?: import("effect/Effect").Effect<R, E_1, readonly T[]> | undefined, config?: (Omit<StoreConfig<PM>, "partitionValue"> & {
166
- partitionValue?: ((a: PM) => string) | undefined;
167
- }) | undefined): import("effect/Effect").Effect<StoreMaker | ContextMapContainer | R, E_1, Repository<T, PM, Evt, ItemType>>;
174
+ make<R = never, E_1 = never, R2 = never>(args: Evt extends {} ? {
175
+ publishEvents: (evt: readonly [Evt, ...Evt[]]) => import("effect/Effect").Effect<R2, never, void>;
176
+ makeInitial?: import("effect/Effect").Effect<R, E_1, readonly T[]> | undefined;
177
+ config?: (Omit<StoreConfig<PM>, "partitionValue"> & {
178
+ partitionValue?: ((a: PM) => string) | undefined;
179
+ }) | undefined;
180
+ } : {
181
+ makeInitial?: import("effect/Effect").Effect<R, E_1, readonly T[]> | undefined;
182
+ config?: (Omit<StoreConfig<PM>, "partitionValue"> & {
183
+ partitionValue?: ((a: PM) => string) | undefined;
184
+ }) | undefined;
185
+ }): import("effect/Effect").Effect<StoreMaker | ContextMapContainer | R | R2, E_1, Repository<T, PM, Evt, ItemType>>;
168
186
  where: ReturnType<typeof makeWhere<PM>>;
169
187
  flatMap: <R1, E1, B>(f: (a: Service) => import("effect/Effect").Effect<R1, E1, B>) => import("effect/Effect").Effect<Service | R1, E1, B>;
170
188
  makeLayer: (svc: Service) => Layer<never, never, Service>;
@@ -179,16 +197,34 @@ export declare const RepositoryDefaultImpl: <Service>() => <PM extends {
179
197
  id: string;
180
198
  }>(itemType: ItemType, schema: Schema.Schema<unknown, T, ConstructorInput, E, Api>, mapFrom: (pm: Omit<PM, "_etag">) => E, mapTo: (e: E, etag: string | undefined) => PM) => import("effect/Context").Tag<Service, Service> & {
181
199
  new (impl: Repository<T, PM, Evt, ItemType>): Repository<T, PM, Evt, ItemType>;
182
- make<R = never, E_1 = never>(publishEvents: (evt: readonly [Evt, ...Evt[]]) => Effect<never, never, void>, makeInitial?: import("effect/Effect").Effect<R, E_1, readonly T[]> | undefined, config?: (Omit<StoreConfig<PM>, "partitionValue"> & {
183
- partitionValue?: ((a: PM) => string) | undefined;
184
- }) | undefined): import("effect/Effect").Effect<StoreMaker | R, E_1, Repository<T, PM, Evt, ItemType>>;
185
- toLayer<R_1 = never, E_2 = never>(publishEvents: (evt: readonly [Evt, ...Evt[]]) => Effect<never, never, void>, makeInitial?: import("effect/Effect").Effect<R_1, E_2, readonly T[]> | undefined, config?: (Omit<StoreConfig<PM>, "partitionValue"> & {
186
- partitionValue?: ((a: PM) => string) | undefined;
187
- }) | undefined): import("effect/Layer").Layer<StoreMaker | R_1, E_2, Service>;
188
200
  where: ReturnType<typeof makeWhere<PM>>;
189
201
  flatMap: <R1, E1, B>(f: (a: Service) => import("effect/Effect").Effect<R1, E1, B>) => import("effect/Effect").Effect<Service | R1, E1, B>;
190
202
  makeLayer: (svc: Service) => Layer<never, never, Service>;
191
203
  map: <B_1>(f: (a: Service) => B_1) => import("effect/Effect").Effect<Service, never, B_1>;
192
204
  repo: Repository<T, PM, Evt, ItemType>;
205
+ make<R = never, E_1 = never, R2 = never>(args: Evt extends {} ? {
206
+ publishEvents: (evt: readonly [Evt, ...Evt[]]) => import("effect/Effect").Effect<R2, never, void>;
207
+ makeInitial?: import("effect/Effect").Effect<R, E_1, readonly T[]> | undefined;
208
+ config?: (Omit<StoreConfig<PM>, "partitionValue"> & {
209
+ partitionValue?: ((a: PM) => string) | undefined;
210
+ }) | undefined;
211
+ } : {
212
+ makeInitial?: import("effect/Effect").Effect<R, E_1, readonly T[]> | undefined;
213
+ config?: (Omit<StoreConfig<PM>, "partitionValue"> & {
214
+ partitionValue?: ((a: PM) => string) | undefined;
215
+ }) | undefined;
216
+ }): import("effect/Effect").Effect<StoreMaker | R, E_1, Repository<T, PM, Evt, ItemType>>;
217
+ toLayer<R_1 = never, E_2 = never, R2_1 = never>(args: Evt extends {} ? {
218
+ publishEvents: (evt: readonly [Evt, ...Evt[]]) => import("effect/Effect").Effect<R2_1, never, void>;
219
+ makeInitial?: import("effect/Effect").Effect<R_1, E_2, readonly T[]> | undefined;
220
+ config?: (Omit<StoreConfig<PM>, "partitionValue"> & {
221
+ partitionValue?: ((a: PM) => string) | undefined;
222
+ }) | undefined;
223
+ } : {
224
+ makeInitial?: import("effect/Effect").Effect<R_1, E_2, readonly T[]> | undefined;
225
+ config?: (Omit<StoreConfig<PM>, "partitionValue"> & {
226
+ partitionValue?: ((a: PM) => string) | undefined;
227
+ }) | undefined;
228
+ }): import("effect/Layer").Layer<StoreMaker | R_1, E_2, Service>;
193
229
  };
194
230
  //# sourceMappingURL=RepositoryBase.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"RepositoryBase.d.ts","sourceRoot":"","sources":["../../_src/services/RepositoryBase.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RepositoryBase.d.ts","sourceRoot":"","sources":["../../_src/services/RepositoryBase.ts"],"names":[],"mappings":"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"}
@@ -10,8 +10,8 @@ import * as tsplus_module_9 from "@effect-app/core/Effect";
10
10
  import * as tsplus_module_10 from "effect/ReadonlyArray";
11
11
  import * as tsplus_module_11 from "effect/Option";
12
12
  import * as tsplus_module_12 from "@effect-app/core/_ext/Iterable";
13
- import * as tsplus_module_13 from "@effect-app/infra/services/Repository";
14
- import * as tsplus_module_14 from "@effect-app/core/Function";
13
+ import * as tsplus_module_13 from "@effect-app/core/Function";
14
+ import * as tsplus_module_14 from "@effect-app/infra/services/Repository";
15
15
  import { StoreMaker } from "./Store.js";
16
16
  import { makeCodec } from "@effect-app/infra/api/codec";
17
17
  import { makeFilters } from "@effect-app/infra/filter";
@@ -54,8 +54,9 @@ export function makeRepo() {
54
54
  return mapFrom(e);
55
55
  }
56
56
  const mkStore = makeStore()(name, schema, mapTo);
57
- function make(publishEvents, makeInitial, config) {
58
- return tsplus_module_1.flatMap(mkStore(makeInitial, config), store => tsplus_module_1.map(ContextMapContainer, cms => {
57
+ function make(args) {
58
+ return tsplus_module_1.flatMap(mkStore(args.makeInitial, args.config), store => tsplus_module_1.flatMap(ContextMapContainer, cms => tsplus_module_1.map(tsplus_module_1.context(), pubCfg => {
59
+ const pub = "publishEvents" in args ? tsplus_module_13.flow(args.publishEvents, (_) => tsplus_module_1.provide(_, pubCfg)) : () => tsplus_module_1.unit;
59
60
  const allE = tsplus_module_1.flatMap(store.all, (items) => tsplus_module_1.map(cms.get, ({ set }) => items.map((_) => mapReverse(_, set))));
60
61
  const parse = tsplus_module_5.condemnDie(EParserFor(schema));
61
62
  const all = tsplus_module_1.flatMap(allE, (_) => tsplus_module_12.ext_forEach(_, (_) => parse(_)));
@@ -76,7 +77,7 @@ export function makeRepo() {
76
77
  const saveAll = (a) => saveAllE(tsplus_module_8.map(tsplus_module_7.ext_itToChunk(a), encode));
77
78
  const saveAndPublish = (items, events = []) => tsplus_module_1.zipRight(tsplus_module_9.flatMapOption(tsplus_module_1.sync(() => tsplus_module_7.CollectionToNonEmptyReadonlyArray(events))
78
79
  // TODO: for full consistency the events should be stored within the same database transaction, and then picked up.
79
- , publishEvents))(saveAll(items));
80
+ , pub))(saveAll(items));
80
81
  function removeAndPublish(a, events = []) {
81
82
  return tsplus_module_1.gen(function* ($) {
82
83
  const { get, set } = yield* $(cms.get);
@@ -88,7 +89,7 @@ export function makeRepo() {
88
89
  }
89
90
  yield* $(tsplus_module_9.flatMapOption(tsplus_module_1.sync(() => tsplus_module_7.CollectionToNonEmptyReadonlyArray(events))
90
91
  // TODO: for full consistency the events should be stored within the same database transaction, and then picked up.
91
- , publishEvents));
92
+ , pub));
92
93
  });
93
94
  }
94
95
  const r = {
@@ -109,7 +110,7 @@ export function makeRepo() {
109
110
  removeAndPublish
110
111
  };
111
112
  return r;
112
- }));
113
+ })));
113
114
  }
114
115
  return {
115
116
  make,
@@ -122,7 +123,7 @@ export function makeRepo() {
122
123
  * @tsplus fluent Repository removeById
123
124
  */
124
125
  export function removeById(self, id) {
125
- return tsplus_module_1.flatMap(tsplus_module_13.get(self, id), (_) => self.removeAndPublish([_]));
126
+ return tsplus_module_1.flatMap(tsplus_module_14.get(self, id), (_) => self.removeAndPublish([_]));
126
127
  }
127
128
  export function makeWhere() {
128
129
  const f_ = makeFilters();
@@ -150,7 +151,7 @@ export function makeStore() {
150
151
  const [_dec, encode] = makeCodec(schema);
151
152
  function encodeToPM() {
152
153
  const getEtag = () => undefined;
153
- return tsplus_module_14.flow(encode, (v) => mapToPersistenceModel(v, getEtag));
154
+ return tsplus_module_13.flow(encode, (v) => mapToPersistenceModel(v, getEtag));
154
155
  }
155
156
  function mapToPersistenceModel(e, getEtag) {
156
157
  return mapTo(e, getEtag(e.id));
@@ -179,8 +180,9 @@ export const RepositoryBaseImpl = () => {
179
180
  export const RepositoryDefaultImpl = () => {
180
181
  return () => (itemType, schema, mapFrom, mapTo) => {
181
182
  return class extends RepositoryBaseImpl()()(itemType, schema, mapFrom, mapTo) {
182
- static toLayer(publishEvents, makeInitial, config) {
183
- return tsplus_module_2.effect(this)(tsplus_module_1.map(this.make(publishEvents, makeInitial, config), (impl) => new this(impl)));
183
+ static toLayer(args) {
184
+ return tsplus_module_2.effect(this)(tsplus_module_1.map(this
185
+ .make(args), (impl) => new this(impl)));
184
186
  }
185
187
  constructor(impl) {
186
188
  super();
@@ -189,4 +191,4 @@ export const RepositoryDefaultImpl = () => {
189
191
  }; // TODO: seems to be a compiler bug, it somehow says its missing toLayer and repo...
190
192
  };
191
193
  };
192
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVwb3NpdG9yeUJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9fc3JjL3NlcnZpY2VzL1JlcG9zaXRvcnlCYXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7O0FBRUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFlBQVksQ0FBQTtBQUt2QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sNkJBQTZCLENBQUE7QUFDdkQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDBCQUEwQixDQUFBO0FBRXRELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQTtBQUV2RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQTtBQUVwRTs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRyxHQUFZLEVBQUU7SUFDMUMsT0FBTyxDQUNMLFFBQWtCLEVBQ2xCLEVBQUU7UUFDRixNQUFlLGVBQWU7WUFBOUI7Z0JBQ0UsYUFBUSxHQUFhLFFBQVEsQ0FBQTtZQThCL0IsQ0FBQztZQVRDLE1BQU0sQ0FBQyxPQUFPLENBQVksQ0FBb0M7Z0JBQzVELE9BQU8sd0JBQWUsSUFBd0MsRUFBRSxDQUFDLENBQUMsQ0FBQTtZQUNwRSxDQUFDO1lBQ0QsTUFBTSxDQUFDLEdBQUcsQ0FBSSxDQUFvQjtnQkFDaEMsT0FBTyxvQkFBVyxJQUF3QyxFQUFFLENBQUMsQ0FBQyxDQUFBO1lBQ2hFLENBQUM7WUFDRCxNQUFNLENBQUMsU0FBUyxDQUFDLEdBQVk7Z0JBQzNCLE9BQU8sd0JBQWMsSUFBd0MsRUFBRSxHQUFHLENBQUMsQ0FBQTtZQUNyRSxDQUFDOztRQVRNLHFCQUFLLEdBQUcsU0FBUyxFQUFNLEFBQWxCLENBQWtCO1FBV2hDLE9BQU8sZ0JBQUEsU0FBUyxFQUFXLENBQUMsZUFBZSxDQUFDLENBQUE7SUFDOUMsQ0FBQyxDQUFBO0FBQ0gsQ0FBQyxDQUFBO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLFVB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
194
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVwb3NpdG9yeUJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9fc3JjL3NlcnZpY2VzL1JlcG9zaXRvcnlCYXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7O0FBR0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFlBQVksQ0FBQTtBQUt2QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sNkJBQTZCLENBQUE7QUFDdkQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDBCQUEwQixDQUFBO0FBRXRELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQTtBQUV2RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQTtBQUVwRTs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRyxHQUFZLEVBQUU7SUFDMUMsT0FBTyxDQUNMLFFBQWtCLEVBQ2xCLEVBQUU7UUFDRixNQUFlLGVBQWU7WUFBOUI7Z0JBQ0UsYUFBUSxHQUFhLFFBQVEsQ0FBQTtZQThCL0IsQ0FBQztZQVRDLE1BQU0sQ0FBQyxPQUFPLENBQVksQ0FBb0M7Z0JBQzVELE9BQU8sd0JBQWUsSUFBd0MsRUFBRSxDQUFDLENBQUMsQ0FBQTtZQUNwRSxDQUFDO1lBQ0QsTUFBTSxDQUFDLEdBQUcsQ0FBSSxDQUFvQjtnQkFDaEMsT0FBTyxvQkFBVyxJQUF3QyxFQUFFLENBQUMsQ0FBQyxDQUFBO1lBQ2hFLENBQUM7WUFDRCxNQUFNLENBQUMsU0FBUyxDQUFDLEdBQVk7Z0JBQzNCLE9BQU8sd0JBQWMsSUFBd0MsRUFBRSxHQUFHLENBQUMsQ0FBQTtZQUNyRSxDQUFDOztRQVRNLHFCQUFLLEdBQUcsU0FBUyxFQUFNLEFBQWxCLENBQWtCO1FBV2hDLE9BQU8sZ0JBQUEsU0FBUyxFQUFXLENBQUMsZUFBZSxDQUFDLENBQUE7SUFDOUMsQ0FBQyxDQUFBO0FBQ0gsQ0FBQyxDQUFBO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLFVB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
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@effect-app/infra",
3
- "version": "0.86.2",
3
+ "version": "0.87.1",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "dependencies": {
@@ -18,8 +18,8 @@
18
18
  "proper-lockfile": "^4.1.2",
19
19
  "pure-rand": "6.0.4",
20
20
  "redlock": "^4.2.0",
21
- "@effect-app/core": "0.68.0",
22
21
  "@effect-app/infra-adapters": "0.59.0",
22
+ "@effect-app/core": "0.68.0",
23
23
  "@effect-app/prelude": "0.70.0",
24
24
  "@effect-app/schema": "0.62.0"
25
25
  },