@effect-app/infra 4.0.0-beta.12 → 4.0.0-beta.120

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 (172) hide show
  1. package/CHANGELOG.md +794 -0
  2. package/dist/CUPS.d.ts +3 -3
  3. package/dist/CUPS.d.ts.map +1 -1
  4. package/dist/CUPS.js +3 -3
  5. package/dist/Emailer/service.d.ts +3 -3
  6. package/dist/Emailer/service.d.ts.map +1 -1
  7. package/dist/Emailer/service.js +3 -3
  8. package/dist/MainFiberSet.d.ts +2 -2
  9. package/dist/MainFiberSet.d.ts.map +1 -1
  10. package/dist/MainFiberSet.js +3 -3
  11. package/dist/Model/Repository/Registry.d.ts +20 -0
  12. package/dist/Model/Repository/Registry.d.ts.map +1 -0
  13. package/dist/Model/Repository/Registry.js +17 -0
  14. package/dist/Model/Repository/internal/internal.d.ts +3 -3
  15. package/dist/Model/Repository/internal/internal.d.ts.map +1 -1
  16. package/dist/Model/Repository/internal/internal.js +22 -16
  17. package/dist/Model/Repository/makeRepo.d.ts +5 -4
  18. package/dist/Model/Repository/makeRepo.d.ts.map +1 -1
  19. package/dist/Model/Repository/makeRepo.js +4 -1
  20. package/dist/Model/Repository/service.d.ts +5 -0
  21. package/dist/Model/Repository/service.d.ts.map +1 -1
  22. package/dist/Model/Repository/validation.d.ts +7 -6
  23. package/dist/Model/Repository/validation.d.ts.map +1 -1
  24. package/dist/Model/Repository.d.ts +1 -0
  25. package/dist/Model/Repository.d.ts.map +1 -1
  26. package/dist/Model/Repository.js +2 -1
  27. package/dist/Model/query/dsl.d.ts +9 -9
  28. package/dist/Model.d.ts +1 -0
  29. package/dist/Model.d.ts.map +1 -1
  30. package/dist/Model.js +2 -1
  31. package/dist/Operations.d.ts +2 -2
  32. package/dist/Operations.d.ts.map +1 -1
  33. package/dist/Operations.js +3 -3
  34. package/dist/OperationsRepo.d.ts +3 -3
  35. package/dist/OperationsRepo.d.ts.map +1 -1
  36. package/dist/OperationsRepo.js +3 -3
  37. package/dist/QueueMaker/SQLQueue.d.ts +2 -4
  38. package/dist/QueueMaker/SQLQueue.d.ts.map +1 -1
  39. package/dist/QueueMaker/SQLQueue.js +8 -6
  40. package/dist/QueueMaker/errors.d.ts +1 -1
  41. package/dist/QueueMaker/errors.d.ts.map +1 -1
  42. package/dist/QueueMaker/memQueue.js +3 -3
  43. package/dist/QueueMaker/sbqueue.js +3 -3
  44. package/dist/RequestContext.d.ts +22 -17
  45. package/dist/RequestContext.d.ts.map +1 -1
  46. package/dist/RequestContext.js +5 -5
  47. package/dist/RequestFiberSet.d.ts +2 -2
  48. package/dist/RequestFiberSet.d.ts.map +1 -1
  49. package/dist/RequestFiberSet.js +5 -5
  50. package/dist/Store/ContextMapContainer.d.ts +19 -3
  51. package/dist/Store/ContextMapContainer.d.ts.map +1 -1
  52. package/dist/Store/ContextMapContainer.js +13 -3
  53. package/dist/Store/Cosmos.d.ts.map +1 -1
  54. package/dist/Store/Cosmos.js +136 -68
  55. package/dist/Store/Disk.d.ts.map +1 -1
  56. package/dist/Store/Disk.js +24 -21
  57. package/dist/Store/Memory.d.ts +2 -2
  58. package/dist/Store/Memory.d.ts.map +1 -1
  59. package/dist/Store/Memory.js +26 -21
  60. package/dist/Store/SQL/Pg.d.ts +4 -0
  61. package/dist/Store/SQL/Pg.d.ts.map +1 -0
  62. package/dist/Store/SQL/Pg.js +191 -0
  63. package/dist/Store/SQL/query.d.ts +38 -0
  64. package/dist/Store/SQL/query.d.ts.map +1 -0
  65. package/dist/Store/SQL/query.js +367 -0
  66. package/dist/Store/SQL.d.ts +20 -0
  67. package/dist/Store/SQL.d.ts.map +1 -0
  68. package/dist/Store/SQL.js +381 -0
  69. package/dist/Store/index.d.ts +4 -1
  70. package/dist/Store/index.d.ts.map +1 -1
  71. package/dist/Store/index.js +15 -3
  72. package/dist/Store/service.d.ts +16 -5
  73. package/dist/Store/service.d.ts.map +1 -1
  74. package/dist/Store/service.js +24 -6
  75. package/dist/adapters/ServiceBus.d.ts +6 -6
  76. package/dist/adapters/ServiceBus.d.ts.map +1 -1
  77. package/dist/adapters/ServiceBus.js +9 -9
  78. package/dist/adapters/cosmos-client.d.ts +2 -2
  79. package/dist/adapters/cosmos-client.d.ts.map +1 -1
  80. package/dist/adapters/cosmos-client.js +3 -3
  81. package/dist/adapters/logger.d.ts.map +1 -1
  82. package/dist/adapters/memQueue.d.ts +2 -2
  83. package/dist/adapters/memQueue.d.ts.map +1 -1
  84. package/dist/adapters/memQueue.js +3 -3
  85. package/dist/adapters/mongo-client.d.ts +2 -2
  86. package/dist/adapters/mongo-client.d.ts.map +1 -1
  87. package/dist/adapters/mongo-client.js +3 -3
  88. package/dist/adapters/redis-client.d.ts +3 -3
  89. package/dist/adapters/redis-client.d.ts.map +1 -1
  90. package/dist/adapters/redis-client.js +3 -3
  91. package/dist/api/ContextProvider.d.ts +6 -6
  92. package/dist/api/ContextProvider.d.ts.map +1 -1
  93. package/dist/api/ContextProvider.js +6 -6
  94. package/dist/api/internal/auth.d.ts +1 -1
  95. package/dist/api/internal/events.d.ts +2 -2
  96. package/dist/api/internal/events.d.ts.map +1 -1
  97. package/dist/api/internal/events.js +11 -7
  98. package/dist/api/layerUtils.d.ts +5 -5
  99. package/dist/api/layerUtils.d.ts.map +1 -1
  100. package/dist/api/layerUtils.js +5 -5
  101. package/dist/api/routing/middleware/RouterMiddleware.d.ts +3 -3
  102. package/dist/api/routing/middleware/RouterMiddleware.d.ts.map +1 -1
  103. package/dist/api/routing/middleware/middleware.d.ts +35 -1
  104. package/dist/api/routing/middleware/middleware.d.ts.map +1 -1
  105. package/dist/api/routing/middleware/middleware.js +39 -1
  106. package/dist/api/routing.d.ts +1 -5
  107. package/dist/api/routing.d.ts.map +1 -1
  108. package/dist/api/routing.js +3 -2
  109. package/dist/api/setupRequest.d.ts +6 -3
  110. package/dist/api/setupRequest.d.ts.map +1 -1
  111. package/dist/api/setupRequest.js +11 -6
  112. package/dist/logger.d.ts.map +1 -1
  113. package/examples/query.ts +30 -26
  114. package/package.json +36 -18
  115. package/src/CUPS.ts +2 -2
  116. package/src/Emailer/service.ts +2 -2
  117. package/src/MainFiberSet.ts +2 -2
  118. package/src/Model/Repository/Registry.ts +33 -0
  119. package/src/Model/Repository/internal/internal.ts +76 -59
  120. package/src/Model/Repository/makeRepo.ts +7 -4
  121. package/src/Model/Repository/service.ts +6 -0
  122. package/src/Model/Repository.ts +1 -0
  123. package/src/Model.ts +1 -0
  124. package/src/Operations.ts +2 -2
  125. package/src/OperationsRepo.ts +2 -2
  126. package/src/QueueMaker/SQLQueue.ts +8 -7
  127. package/src/QueueMaker/memQueue.ts +2 -2
  128. package/src/QueueMaker/sbqueue.ts +2 -2
  129. package/src/RequestContext.ts +4 -4
  130. package/src/RequestFiberSet.ts +4 -4
  131. package/src/Store/ContextMapContainer.ts +41 -2
  132. package/src/Store/Cosmos.ts +350 -255
  133. package/src/Store/Disk.ts +37 -33
  134. package/src/Store/Memory.ts +29 -22
  135. package/src/Store/SQL/Pg.ts +321 -0
  136. package/src/Store/SQL/query.ts +409 -0
  137. package/src/Store/SQL.ts +674 -0
  138. package/src/Store/index.ts +17 -2
  139. package/src/Store/service.ts +31 -7
  140. package/src/adapters/ServiceBus.ts +8 -8
  141. package/src/adapters/cosmos-client.ts +2 -2
  142. package/src/adapters/memQueue.ts +2 -2
  143. package/src/adapters/mongo-client.ts +2 -2
  144. package/src/adapters/redis-client.ts +2 -2
  145. package/src/api/ContextProvider.ts +11 -11
  146. package/src/api/internal/events.ts +14 -9
  147. package/src/api/layerUtils.ts +8 -8
  148. package/src/api/routing/middleware/RouterMiddleware.ts +4 -4
  149. package/src/api/routing/middleware/middleware.ts +43 -0
  150. package/src/api/routing.ts +3 -3
  151. package/src/api/setupRequest.ts +27 -7
  152. package/test/contextProvider.test.ts +11 -11
  153. package/test/controller.test.ts +12 -9
  154. package/test/dist/contextProvider.test.d.ts.map +1 -1
  155. package/test/dist/controller.test.d.ts.map +1 -1
  156. package/test/dist/date-query.test.d.ts.map +1 -0
  157. package/test/dist/fixtures.d.ts +19 -9
  158. package/test/dist/fixtures.d.ts.map +1 -1
  159. package/test/dist/fixtures.js +11 -9
  160. package/test/dist/query.test.d.ts.map +1 -1
  161. package/test/dist/rawQuery.test.d.ts.map +1 -1
  162. package/test/dist/requires.test.d.ts.map +1 -1
  163. package/test/dist/rpc-multi-middleware.test.d.ts.map +1 -1
  164. package/test/dist/sql-store.test.d.ts.map +1 -0
  165. package/test/fixtures.ts +10 -8
  166. package/test/query.test.ts +182 -33
  167. package/test/rawQuery.test.ts +22 -18
  168. package/test/requires.test.ts +6 -5
  169. package/test/rpc-multi-middleware.test.ts +72 -3
  170. package/test/sql-store.test.ts +1064 -0
  171. package/test/validateSample.test.ts +12 -9
  172. package/tsconfig.json +0 -1
@@ -1,9 +1,12 @@
1
- import { Effect, S } from "effect-app"
1
+ import { Effect, Layer, S } from "effect-app"
2
2
  import { describe, expect, it } from "vitest"
3
3
  import { setupRequestContextFromCurrent } from "../src/api/setupRequest.js"
4
4
  import { makeRepo, ValidationError, ValidationResult } from "../src/Model/Repository.js"
5
+ import { RepositoryRegistryLive } from "../src/Model/Repository/Registry.js"
5
6
  import { MemoryStoreLive } from "../src/Store/Memory.js"
6
7
 
8
+ const TestStoreLive = Layer.merge(MemoryStoreLive, RepositoryRegistryLive)
9
+
7
10
  // simple schema for valid items
8
11
  class SimpleItem extends S.Class<SimpleItem>("SimpleItem")({
9
12
  id: S.String,
@@ -32,7 +35,7 @@ describe("validateSample", () => {
32
35
  expect(result.errors).toHaveLength(0)
33
36
  })
34
37
  .pipe(
35
- Effect.provide(MemoryStoreLive),
38
+ Effect.provide(TestStoreLive),
36
39
  setupRequestContextFromCurrent(),
37
40
  Effect.runPromise
38
41
  ))
@@ -80,7 +83,7 @@ describe("validateSample", () => {
80
83
  expect(failingIds).toContain("3")
81
84
  })
82
85
  .pipe(
83
- Effect.provide(MemoryStoreLive),
86
+ Effect.provide(TestStoreLive),
84
87
  setupRequestContextFromCurrent(),
85
88
  Effect.runPromise
86
89
  ))
@@ -98,7 +101,7 @@ describe("validateSample", () => {
98
101
  expect(result.errors).toHaveLength(0)
99
102
  })
100
103
  .pipe(
101
- Effect.provide(MemoryStoreLive),
104
+ Effect.provide(TestStoreLive),
102
105
  setupRequestContextFromCurrent(),
103
106
  Effect.runPromise
104
107
  ))
@@ -127,7 +130,7 @@ describe("validateSample", () => {
127
130
  expect(result.errors).toHaveLength(0)
128
131
  })
129
132
  .pipe(
130
- Effect.provide(MemoryStoreLive),
133
+ Effect.provide(TestStoreLive),
131
134
  setupRequestContextFromCurrent(),
132
135
  Effect.runPromise
133
136
  ))
@@ -138,7 +141,7 @@ describe("validateSample", () => {
138
141
  // schema that expects a 'status' field
139
142
  class ItemWithStatus extends S.Class<ItemWithStatus>("ItemWithStatus")({
140
143
  id: S.String,
141
- status: S.Literal("active", "inactive")
144
+ status: S.Literals(["active", "inactive"])
142
145
  }) {}
143
146
 
144
147
  // jitM that adds default status for items
@@ -161,7 +164,7 @@ describe("validateSample", () => {
161
164
  expect(result.errors).toHaveLength(0)
162
165
  })
163
166
  .pipe(
164
- Effect.provide(MemoryStoreLive),
167
+ Effect.provide(TestStoreLive),
165
168
  setupRequestContextFromCurrent(),
166
169
  Effect.runPromise
167
170
  ))
@@ -208,7 +211,7 @@ describe("validateSample", () => {
208
211
  expect((error.error as any)._tag).toBe("SchemaError")
209
212
  })
210
213
  .pipe(
211
- Effect.provide(MemoryStoreLive),
214
+ Effect.provide(TestStoreLive),
212
215
  setupRequestContextFromCurrent(),
213
216
  Effect.runPromise
214
217
  ))
@@ -230,7 +233,7 @@ describe("validateSample", () => {
230
233
  expect(result.errors).toHaveLength(0)
231
234
  })
232
235
  .pipe(
233
- Effect.provide(MemoryStoreLive),
236
+ Effect.provide(TestStoreLive),
234
237
  setupRequestContextFromCurrent(),
235
238
  Effect.runPromise
236
239
  ))
package/tsconfig.json CHANGED
@@ -32,7 +32,6 @@
32
32
  "outDir": "build/dist",
33
33
  "resolveJsonModule": true,
34
34
  "moduleResolution": "Node16",
35
- "downlevelIteration": true,
36
35
  "noErrorTruncation": true,
37
36
  "forceConsistentCasingInFileNames": true,
38
37
  "types": [