@effect-app/infra 2.3.5 → 2.4.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 (44) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/_cjs/services/OperationsRepo.cjs +10 -1
  3. package/_cjs/services/OperationsRepo.cjs.map +1 -1
  4. package/_cjs/services/Repository/dsl.cjs.map +1 -1
  5. package/_cjs/services/Repository/ext.cjs +58 -104
  6. package/_cjs/services/Repository/ext.cjs.map +1 -1
  7. package/_cjs/services/Repository/legacy.cjs +109 -0
  8. package/_cjs/services/Repository/legacy.cjs.map +1 -0
  9. package/_cjs/services/Repository.cjs +11 -0
  10. package/_cjs/services/Repository.cjs.map +1 -1
  11. package/_cjs/services/RepositoryBase.cjs +4 -222
  12. package/_cjs/services/RepositoryBase.cjs.map +1 -1
  13. package/dist/services/OperationsRepo.d.ts +4 -1
  14. package/dist/services/OperationsRepo.d.ts.map +1 -1
  15. package/dist/services/OperationsRepo.js +12 -3
  16. package/dist/services/QueueMaker/errors.d.ts +1 -1
  17. package/dist/services/QueueMaker/errors.d.ts.map +1 -1
  18. package/dist/services/Repository/dsl.d.ts.map +1 -1
  19. package/dist/services/Repository/dsl.js +1 -1
  20. package/dist/services/Repository/ext.d.ts +43 -104
  21. package/dist/services/Repository/ext.d.ts.map +1 -1
  22. package/dist/services/Repository/ext.js +59 -93
  23. package/dist/services/Repository/legacy.d.ts +139 -0
  24. package/dist/services/Repository/legacy.d.ts.map +1 -0
  25. package/dist/services/Repository/legacy.js +100 -0
  26. package/dist/services/Repository/service.d.ts +21 -2
  27. package/dist/services/Repository/service.d.ts.map +1 -1
  28. package/dist/services/Repository.d.ts +1 -0
  29. package/dist/services/Repository.d.ts.map +1 -1
  30. package/dist/services/Repository.js +2 -1
  31. package/dist/services/RepositoryBase.d.ts +7 -237
  32. package/dist/services/RepositoryBase.d.ts.map +1 -1
  33. package/dist/services/RepositoryBase.js +5 -200
  34. package/dist/services/query/new-kid-interpreter.d.ts +1 -1
  35. package/examples/query.ts +3 -2
  36. package/package.json +11 -1
  37. package/src/services/OperationsRepo.ts +13 -4
  38. package/src/services/Repository/dsl.ts +1 -0
  39. package/src/services/Repository/ext.ts +269 -250
  40. package/src/services/Repository/legacy.ts +351 -0
  41. package/src/services/Repository/service.ts +44 -2
  42. package/src/services/Repository.ts +1 -0
  43. package/src/services/RepositoryBase.ts +12 -931
  44. package/test/query.test.ts +10 -8
@@ -2,7 +2,7 @@ import { Context, Effect, flow, Layer, Option, pipe, S, Struct } from "effect-ap
2
2
  import { inspect } from "util"
3
3
  import { expect, it } from "vitest"
4
4
  import { and, make, one, or, order, page, project, toFilter, where } from "../src/services/query.js"
5
- import { RepositoryDefaultImpl2 } from "../src/services/RepositoryBase.js"
5
+ import { RepositoryDefaultImpl2 } from "../src/services/Repository/legacy.js"
6
6
  import { memFilter, MemoryStoreLive } from "../src/services/Store/Memory.js"
7
7
 
8
8
  const str = S.Struct({ _tag: S.Literal("string"), value: S.String })
@@ -89,7 +89,7 @@ class SomethingRepo extends RepositoryDefaultImpl2<SomethingRepo>()(
89
89
  Something,
90
90
  { idKey: "id" }
91
91
  ) {
92
- static readonly Test = Layer.effect(SomethingRepo, SomethingRepo.makeWith({}, (_) => new SomethingRepo(_))).pipe(
92
+ static readonly Test = SomethingRepo.DefaultWithoutDependencies.pipe(
93
93
  Layer.provide(MemoryStoreLive)
94
94
  )
95
95
  }
@@ -97,11 +97,12 @@ class SomethingRepo extends RepositoryDefaultImpl2<SomethingRepo>()(
97
97
  it("works with repo", () =>
98
98
  Effect
99
99
  .gen(function*() {
100
- yield* SomethingRepo.saveAndPublish(items)
100
+ const somethingRepo = yield* SomethingRepo
101
+ yield* somethingRepo.saveAndPublish(items)
101
102
 
102
- const q1 = yield* SomethingRepo.query(() => q)
103
+ const q1 = yield* somethingRepo.query(() => q)
103
104
  // same as above, but with the `flow` helper
104
- const q2 = yield* SomethingRepo
105
+ const q2 = yield* somethingRepo
105
106
  .query(flow(
106
107
  where("displayName", "Verona"),
107
108
  or(
@@ -127,10 +128,11 @@ it("works with repo", () =>
127
128
  it("collect", () =>
128
129
  Effect
129
130
  .gen(function*() {
130
- yield* SomethingRepo.saveAndPublish(items)
131
+ const somethingRepo = yield* SomethingRepo
132
+ yield* somethingRepo.saveAndPublish(items)
131
133
 
132
134
  expect(
133
- yield* SomethingRepo
135
+ yield* somethingRepo
134
136
  .query(flow(
135
137
  where("displayName", "Riley"), // TODO: work with To type translation, so Date?
136
138
  // one,
@@ -151,7 +153,7 @@ it("collect", () =>
151
153
  .toEqual(["Riley-2020-01-01T00:00:00.000Z"])
152
154
 
153
155
  expect(
154
- yield* SomethingRepo
156
+ yield* somethingRepo
155
157
  .query(flow(
156
158
  where("union._tag", "string"),
157
159
  one,