@effect-app/infra 4.0.0-beta.2 → 4.0.0-beta.200

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 (308) hide show
  1. package/CHANGELOG.md +1514 -0
  2. package/_check.sh +1 -1
  3. package/dist/CUPS.d.ts +15 -7
  4. package/dist/CUPS.d.ts.map +1 -1
  5. package/dist/CUPS.js +10 -12
  6. package/dist/Emailer/Sendgrid.d.ts +14 -14
  7. package/dist/Emailer/Sendgrid.d.ts.map +1 -1
  8. package/dist/Emailer/Sendgrid.js +16 -15
  9. package/dist/Emailer/fake.d.ts +1 -1
  10. package/dist/Emailer/service.d.ts +11 -5
  11. package/dist/Emailer/service.d.ts.map +1 -1
  12. package/dist/Emailer/service.js +3 -3
  13. package/dist/Emailer.d.ts +1 -1
  14. package/dist/MainFiberSet.d.ts +9 -9
  15. package/dist/MainFiberSet.d.ts.map +1 -1
  16. package/dist/MainFiberSet.js +3 -3
  17. package/dist/Model/Repository/Registry.d.ts +20 -0
  18. package/dist/Model/Repository/Registry.d.ts.map +1 -0
  19. package/dist/Model/Repository/Registry.js +17 -0
  20. package/dist/Model/Repository/ext.d.ts +33 -15
  21. package/dist/Model/Repository/ext.d.ts.map +1 -1
  22. package/dist/Model/Repository/ext.js +54 -2
  23. package/dist/Model/Repository/internal/internal.d.ts +6 -6
  24. package/dist/Model/Repository/internal/internal.d.ts.map +1 -1
  25. package/dist/Model/Repository/internal/internal.js +43 -32
  26. package/dist/Model/Repository/legacy.d.ts +1 -1
  27. package/dist/Model/Repository/makeRepo.d.ts +7 -6
  28. package/dist/Model/Repository/makeRepo.d.ts.map +1 -1
  29. package/dist/Model/Repository/makeRepo.js +5 -1
  30. package/dist/Model/Repository/service.d.ts +28 -23
  31. package/dist/Model/Repository/service.d.ts.map +1 -1
  32. package/dist/Model/Repository/validation.d.ts +142 -17
  33. package/dist/Model/Repository/validation.d.ts.map +1 -1
  34. package/dist/Model/Repository/validation.js +5 -5
  35. package/dist/Model/Repository.d.ts +2 -1
  36. package/dist/Model/Repository.d.ts.map +1 -1
  37. package/dist/Model/Repository.js +2 -1
  38. package/dist/Model/dsl.d.ts +4 -4
  39. package/dist/Model/dsl.d.ts.map +1 -1
  40. package/dist/Model/filter/filterApi.d.ts +5 -5
  41. package/dist/Model/filter/filterApi.d.ts.map +1 -1
  42. package/dist/Model/filter/types/errors.d.ts +1 -1
  43. package/dist/Model/filter/types/fields.d.ts +1 -1
  44. package/dist/Model/filter/types/path/common.d.ts +1 -1
  45. package/dist/Model/filter/types/path/eager.d.ts +1 -1
  46. package/dist/Model/filter/types/path/eager.d.ts.map +1 -1
  47. package/dist/Model/filter/types/path/eager.js +1 -1
  48. package/dist/Model/filter/types/path/index.d.ts +1 -1
  49. package/dist/Model/filter/types/utils.d.ts +1 -1
  50. package/dist/Model/filter/types/validator.d.ts +1 -1
  51. package/dist/Model/filter/types.d.ts +1 -1
  52. package/dist/Model/query/dsl.d.ts +25 -25
  53. package/dist/Model/query/dsl.d.ts.map +1 -1
  54. package/dist/Model/query/new-kid-interpreter.d.ts +6 -6
  55. package/dist/Model/query/new-kid-interpreter.d.ts.map +1 -1
  56. package/dist/Model/query/new-kid-interpreter.js +3 -3
  57. package/dist/Model/query.d.ts +1 -1
  58. package/dist/Model.d.ts +2 -1
  59. package/dist/Model.d.ts.map +1 -1
  60. package/dist/Model.js +2 -1
  61. package/dist/QueueMaker/SQLQueue.d.ts +6 -8
  62. package/dist/QueueMaker/SQLQueue.d.ts.map +1 -1
  63. package/dist/QueueMaker/SQLQueue.js +106 -115
  64. package/dist/QueueMaker/errors.d.ts +2 -2
  65. package/dist/QueueMaker/errors.d.ts.map +1 -1
  66. package/dist/QueueMaker/memQueue.d.ts +7 -4
  67. package/dist/QueueMaker/memQueue.d.ts.map +1 -1
  68. package/dist/QueueMaker/memQueue.js +52 -62
  69. package/dist/QueueMaker/sbqueue.d.ts +6 -3
  70. package/dist/QueueMaker/sbqueue.d.ts.map +1 -1
  71. package/dist/QueueMaker/sbqueue.js +39 -53
  72. package/dist/QueueMaker/service.d.ts +1 -1
  73. package/dist/RequestContext.d.ts +117 -31
  74. package/dist/RequestContext.d.ts.map +1 -1
  75. package/dist/RequestContext.js +7 -8
  76. package/dist/RequestFiberSet.d.ts +7 -7
  77. package/dist/RequestFiberSet.d.ts.map +1 -1
  78. package/dist/RequestFiberSet.js +5 -5
  79. package/dist/Store/ContextMapContainer.d.ts +20 -4
  80. package/dist/Store/ContextMapContainer.d.ts.map +1 -1
  81. package/dist/Store/ContextMapContainer.js +13 -3
  82. package/dist/Store/Cosmos/query.d.ts +1 -1
  83. package/dist/Store/Cosmos/query.d.ts.map +1 -1
  84. package/dist/Store/Cosmos/query.js +10 -12
  85. package/dist/Store/Cosmos.d.ts +1 -1
  86. package/dist/Store/Cosmos.d.ts.map +1 -1
  87. package/dist/Store/Cosmos.js +318 -240
  88. package/dist/Store/Disk.d.ts +2 -2
  89. package/dist/Store/Disk.d.ts.map +1 -1
  90. package/dist/Store/Disk.js +25 -22
  91. package/dist/Store/Memory.d.ts +4 -4
  92. package/dist/Store/Memory.d.ts.map +1 -1
  93. package/dist/Store/Memory.js +27 -22
  94. package/dist/Store/SQL/Pg.d.ts +4 -0
  95. package/dist/Store/SQL/Pg.d.ts.map +1 -0
  96. package/dist/Store/SQL/Pg.js +189 -0
  97. package/dist/Store/SQL/query.d.ts +38 -0
  98. package/dist/Store/SQL/query.d.ts.map +1 -0
  99. package/dist/Store/SQL/query.js +367 -0
  100. package/dist/Store/SQL.d.ts +20 -0
  101. package/dist/Store/SQL.d.ts.map +1 -0
  102. package/dist/Store/SQL.js +381 -0
  103. package/dist/Store/codeFilter.d.ts +1 -1
  104. package/dist/Store/codeFilter.d.ts.map +1 -1
  105. package/dist/Store/codeFilter.js +2 -1
  106. package/dist/Store/index.d.ts +5 -2
  107. package/dist/Store/index.d.ts.map +1 -1
  108. package/dist/Store/index.js +15 -3
  109. package/dist/Store/service.d.ts +18 -7
  110. package/dist/Store/service.d.ts.map +1 -1
  111. package/dist/Store/service.js +24 -6
  112. package/dist/Store/utils.d.ts +1 -1
  113. package/dist/Store/utils.d.ts.map +1 -1
  114. package/dist/Store/utils.js +3 -4
  115. package/dist/Store.d.ts +1 -1
  116. package/dist/adapters/SQL/Model.d.ts +30 -47
  117. package/dist/adapters/SQL/Model.d.ts.map +1 -1
  118. package/dist/adapters/SQL/Model.js +22 -14
  119. package/dist/adapters/SQL.d.ts +1 -1
  120. package/dist/adapters/ServiceBus.d.ts +11 -11
  121. package/dist/adapters/ServiceBus.d.ts.map +1 -1
  122. package/dist/adapters/ServiceBus.js +15 -17
  123. package/dist/adapters/cosmos-client.d.ts +3 -3
  124. package/dist/adapters/cosmos-client.d.ts.map +1 -1
  125. package/dist/adapters/cosmos-client.js +3 -3
  126. package/dist/adapters/index.d.ts +8 -2
  127. package/dist/adapters/index.d.ts.map +1 -1
  128. package/dist/adapters/index.js +8 -2
  129. package/dist/adapters/logger.d.ts +2 -2
  130. package/dist/adapters/logger.d.ts.map +1 -1
  131. package/dist/adapters/memQueue.d.ts +3 -3
  132. package/dist/adapters/memQueue.d.ts.map +1 -1
  133. package/dist/adapters/memQueue.js +3 -3
  134. package/dist/adapters/mongo-client.d.ts +3 -3
  135. package/dist/adapters/mongo-client.d.ts.map +1 -1
  136. package/dist/adapters/mongo-client.js +3 -3
  137. package/dist/adapters/redis-client.d.ts +4 -4
  138. package/dist/adapters/redis-client.d.ts.map +1 -1
  139. package/dist/adapters/redis-client.js +3 -3
  140. package/dist/api/ContextProvider.d.ts +8 -8
  141. package/dist/api/ContextProvider.d.ts.map +1 -1
  142. package/dist/api/ContextProvider.js +6 -6
  143. package/dist/api/codec.d.ts +1 -1
  144. package/dist/api/internal/RequestContextMiddleware.d.ts +2 -2
  145. package/dist/api/internal/RequestContextMiddleware.d.ts.map +1 -1
  146. package/dist/api/internal/RequestContextMiddleware.js +2 -2
  147. package/dist/api/internal/auth.d.ts +45 -7
  148. package/dist/api/internal/auth.d.ts.map +1 -1
  149. package/dist/api/internal/auth.js +160 -29
  150. package/dist/api/internal/events.d.ts +3 -3
  151. package/dist/api/internal/events.d.ts.map +1 -1
  152. package/dist/api/internal/events.js +12 -8
  153. package/dist/api/internal/health.d.ts +1 -1
  154. package/dist/api/layerUtils.d.ts +6 -6
  155. package/dist/api/layerUtils.d.ts.map +1 -1
  156. package/dist/api/layerUtils.js +5 -5
  157. package/dist/api/middlewares.d.ts +1 -1
  158. package/dist/api/reportError.d.ts +1 -1
  159. package/dist/api/routing/middleware/RouterMiddleware.d.ts +4 -4
  160. package/dist/api/routing/middleware/RouterMiddleware.d.ts.map +1 -1
  161. package/dist/api/routing/middleware/middleware.d.ts +50 -4
  162. package/dist/api/routing/middleware/middleware.d.ts.map +1 -1
  163. package/dist/api/routing/middleware/middleware.js +79 -17
  164. package/dist/api/routing/middleware.d.ts +1 -2
  165. package/dist/api/routing/middleware.d.ts.map +1 -1
  166. package/dist/api/routing/middleware.js +1 -2
  167. package/dist/api/routing/schema/jwt.d.ts +2 -2
  168. package/dist/api/routing/schema/jwt.d.ts.map +1 -1
  169. package/dist/api/routing/schema/jwt.js +1 -1
  170. package/dist/api/routing/tsort.d.ts +1 -1
  171. package/dist/api/routing/tsort.d.ts.map +1 -1
  172. package/dist/api/routing/utils.d.ts +3 -3
  173. package/dist/api/routing/utils.d.ts.map +1 -1
  174. package/dist/api/routing.d.ts +32 -35
  175. package/dist/api/routing.d.ts.map +1 -1
  176. package/dist/api/routing.js +84 -36
  177. package/dist/api/setupRequest.d.ts +8 -5
  178. package/dist/api/setupRequest.d.ts.map +1 -1
  179. package/dist/api/setupRequest.js +14 -9
  180. package/dist/api/util.d.ts +1 -1
  181. package/dist/arbs.d.ts +1 -1
  182. package/dist/arbs.d.ts.map +1 -1
  183. package/dist/arbs.js +5 -3
  184. package/dist/errorReporter.d.ts +5 -5
  185. package/dist/errorReporter.d.ts.map +1 -1
  186. package/dist/errorReporter.js +20 -25
  187. package/dist/errors.d.ts +1 -1
  188. package/dist/fileUtil.d.ts +1 -1
  189. package/dist/fileUtil.d.ts.map +1 -1
  190. package/dist/fileUtil.js +3 -2
  191. package/dist/index.d.ts +1 -1
  192. package/dist/logger/jsonLogger.d.ts +1 -1
  193. package/dist/logger/logFmtLogger.d.ts +1 -1
  194. package/dist/logger/shared.d.ts +1 -1
  195. package/dist/logger/shared.js +2 -2
  196. package/dist/logger.d.ts +1 -1
  197. package/dist/logger.d.ts.map +1 -1
  198. package/dist/rateLimit.d.ts +9 -3
  199. package/dist/rateLimit.d.ts.map +1 -1
  200. package/dist/rateLimit.js +5 -11
  201. package/dist/test.d.ts +2 -2
  202. package/dist/test.d.ts.map +1 -1
  203. package/dist/test.js +1 -1
  204. package/dist/vitest.d.ts +1 -1
  205. package/examples/query.ts +39 -35
  206. package/package.json +41 -37
  207. package/src/CUPS.ts +9 -11
  208. package/src/Emailer/Sendgrid.ts +18 -15
  209. package/src/Emailer/service.ts +9 -3
  210. package/src/MainFiberSet.ts +5 -6
  211. package/src/Model/Repository/Registry.ts +33 -0
  212. package/src/Model/Repository/ext.ts +96 -10
  213. package/src/Model/Repository/internal/internal.ts +97 -88
  214. package/src/Model/Repository/makeRepo.ts +12 -10
  215. package/src/Model/Repository/service.ts +31 -22
  216. package/src/Model/Repository/validation.ts +4 -4
  217. package/src/Model/Repository.ts +1 -0
  218. package/src/Model/dsl.ts +3 -3
  219. package/src/Model/filter/types/path/eager.ts +1 -2
  220. package/src/Model/query/dsl.ts +18 -18
  221. package/src/Model/query/new-kid-interpreter.ts +2 -2
  222. package/src/Model.ts +1 -0
  223. package/src/QueueMaker/SQLQueue.ts +123 -154
  224. package/src/QueueMaker/memQueue.ts +85 -107
  225. package/src/QueueMaker/sbqueue.ts +54 -81
  226. package/src/RequestContext.ts +8 -10
  227. package/src/RequestFiberSet.ts +4 -4
  228. package/src/Store/ContextMapContainer.ts +41 -2
  229. package/src/Store/Cosmos/query.ts +16 -20
  230. package/src/Store/Cosmos.ts +452 -342
  231. package/src/Store/Disk.ts +52 -49
  232. package/src/Store/Memory.ts +55 -51
  233. package/src/Store/SQL/Pg.ts +318 -0
  234. package/src/Store/SQL/query.ts +409 -0
  235. package/src/Store/SQL.ts +668 -0
  236. package/src/Store/codeFilter.ts +1 -0
  237. package/src/Store/index.ts +17 -2
  238. package/src/Store/service.ts +32 -8
  239. package/src/Store/utils.ts +23 -22
  240. package/src/adapters/SQL/Model.ts +83 -72
  241. package/src/adapters/ServiceBus.ts +114 -118
  242. package/src/adapters/cosmos-client.ts +2 -2
  243. package/src/adapters/index.ts +7 -0
  244. package/src/adapters/memQueue.ts +2 -2
  245. package/src/adapters/mongo-client.ts +2 -2
  246. package/src/adapters/redis-client.ts +2 -2
  247. package/src/api/ContextProvider.ts +12 -13
  248. package/src/api/internal/RequestContextMiddleware.ts +1 -1
  249. package/src/api/internal/auth.ts +246 -44
  250. package/src/api/internal/events.ts +15 -10
  251. package/src/api/layerUtils.ts +8 -8
  252. package/src/api/routing/middleware/RouterMiddleware.ts +4 -4
  253. package/src/api/routing/middleware/middleware.ts +112 -15
  254. package/src/api/routing/middleware.ts +0 -2
  255. package/src/api/routing/schema/jwt.ts +2 -3
  256. package/src/api/routing.ts +153 -79
  257. package/src/api/setupRequest.ts +30 -10
  258. package/src/arbs.ts +4 -2
  259. package/src/errorReporter.ts +63 -75
  260. package/src/fileUtil.ts +2 -1
  261. package/src/logger/shared.ts +1 -1
  262. package/src/rateLimit.ts +30 -22
  263. package/src/test.ts +1 -1
  264. package/test/auth.test.ts +101 -0
  265. package/test/contextProvider.test.ts +11 -11
  266. package/test/controller.test.ts +27 -21
  267. package/test/dist/auth.test.d.ts.map +1 -0
  268. package/test/dist/contextProvider.test.d.ts.map +1 -1
  269. package/test/dist/controller.test.d.ts.map +1 -1
  270. package/test/dist/fixtures.d.ts +26 -12
  271. package/test/dist/fixtures.d.ts.map +1 -1
  272. package/test/dist/fixtures.js +12 -10
  273. package/test/dist/query.test.d.ts.map +1 -1
  274. package/test/dist/rawQuery.test.d.ts.map +1 -1
  275. package/test/dist/repository-ext.test.d.ts.map +1 -0
  276. package/test/dist/requires.test.d.ts.map +1 -1
  277. package/test/dist/router-generator.test.d.ts.map +1 -0
  278. package/test/dist/routing-interruptibility.test.d.ts.map +1 -0
  279. package/test/dist/rpc-e2e-invalidation.test.d.ts.map +1 -0
  280. package/test/dist/rpc-multi-middleware.test.d.ts.map +1 -1
  281. package/test/dist/rpc-stream-fullstack.test.d.ts.map +1 -0
  282. package/test/dist/sql-store.test.d.ts.map +1 -0
  283. package/test/fixtures.ts +11 -9
  284. package/test/query.test.ts +216 -36
  285. package/test/rawQuery.test.ts +23 -19
  286. package/test/repository-ext.test.ts +60 -0
  287. package/test/requires.test.ts +6 -6
  288. package/test/router-generator.test.ts +180 -0
  289. package/test/routing-interruptibility.test.ts +63 -0
  290. package/test/rpc-e2e-invalidation.test.ts +507 -0
  291. package/test/rpc-multi-middleware.test.ts +79 -10
  292. package/test/rpc-stream-fullstack.test.ts +325 -0
  293. package/test/sql-store.test.ts +1064 -0
  294. package/test/validateSample.test.ts +15 -12
  295. package/tsconfig.examples.json +1 -1
  296. package/tsconfig.json +0 -1
  297. package/tsconfig.json.bak +2 -2
  298. package/tsconfig.src.json +35 -35
  299. package/tsconfig.test.json +2 -2
  300. package/dist/Operations.d.ts +0 -55
  301. package/dist/Operations.d.ts.map +0 -1
  302. package/dist/Operations.js +0 -102
  303. package/dist/OperationsRepo.d.ts +0 -41
  304. package/dist/OperationsRepo.d.ts.map +0 -1
  305. package/dist/OperationsRepo.js +0 -14
  306. package/eslint.config.mjs +0 -24
  307. package/src/Operations.ts +0 -235
  308. package/src/OperationsRepo.ts +0 -16
@@ -1,16 +1,19 @@
1
- import { Effect, Layer, S, type Scope } from "effect-app";
1
+ import { Effect, Layer, S, type Scope, Stream } from "effect-app";
2
2
  import { type HttpHeaders } from "effect-app/http";
3
3
  import { type GetEffectContext, type RpcContextMap } from "effect-app/rpc/RpcContextMap";
4
4
  import { type TypeTestId } from "effect-app/TypeTest";
5
5
  import { type Yieldable } from "effect/Effect";
6
- import { type RpcSerialization } from "effect/unstable/rpc";
6
+ import { Rpc, type RpcSerialization } from "effect/unstable/rpc";
7
7
  import { type RouterMiddleware } from "./routing/middleware.js";
8
8
  export * from "./routing/middleware.js";
9
- export type AnyRequestModule = S.Any & {
9
+ export declare const applyRequestTypeInterruptibility: <A, E, R>(requestType: "command" | "query", effect: Effect.Effect<A, E, R>) => Effect.Effect<A, E, R> | Rpc.Wrapper<Effect.Effect<A, E, R>>;
10
+ export type AnyRequestModule = S.Top & {
10
11
  _tag: string;
12
+ type: "command" | "query";
13
+ stream: boolean;
11
14
  config: any;
12
- success: S.Any;
13
- error: S.Any;
15
+ success: S.Top;
16
+ error: S.Top;
14
17
  };
15
18
  export interface AddAction<Actions extends AnyRequestModule, Accum extends Record<string, any> = {}> {
16
19
  accum: Accum;
@@ -28,15 +31,15 @@ declare namespace RequestTypes {
28
31
  const RAW: "raw";
29
32
  type RAW = typeof RAW;
30
33
  }
31
- type RequestType = typeof RequestTypes[keyof typeof RequestTypes];
34
+ type RequestType = (typeof RequestTypes)[keyof typeof RequestTypes];
32
35
  type GetSuccess<T> = T extends {
33
- success: S.Any;
36
+ success: S.Top;
34
37
  } ? T["success"] : typeof S.Void;
35
38
  type GetFailure<T extends {
36
- error?: S.Any;
39
+ error?: S.Top;
37
40
  }> = T["error"] extends never ? typeof S.Never : T["error"];
38
41
  type GetSuccessShape<Action extends {
39
- success?: S.Any;
42
+ success?: S.Top;
40
43
  }, RT extends RequestType> = {
41
44
  d: S.Schema.Type<GetSuccess<Action>>;
42
45
  raw: S.Codec.Encoded<GetSuccess<Action>>;
@@ -45,7 +48,7 @@ interface HandlerBase<Action extends AnyRequestModule, RT extends RequestType, A
45
48
  new (): {};
46
49
  _tag: RT;
47
50
  stack: string;
48
- handler: (req: S.Schema.Type<Action>, headers: HttpHeaders.Headers) => Effect.Effect<A, E, R>;
51
+ handler: (req: S.Schema.Type<Action>, headers: HttpHeaders.Headers) => Effect.Effect<A, E, R> | Stream.Stream<A, E, R>;
49
52
  }
50
53
  export interface Handler<Action extends AnyRequestModule, RT extends RequestType, R> extends HandlerBase<Action, RT, GetSuccessShape<Action, RT>, S.Schema.Type<GetFailure<Action>> | S.SchemaError, R> {
51
54
  }
@@ -54,14 +57,14 @@ type FilterRequestModules<T> = {
54
57
  [K in keyof T as T[K] extends AnyRequestModule ? K : never]: T[K];
55
58
  };
56
59
  type Match<Resource extends Record<string, any>, RequestContextMap extends Record<string, any>, RT extends RequestType, Key extends keyof Resource> = {
57
- <A extends GetSuccessShape<Resource[Key], RT>, R2 = never, E = never>(f: Effect.Effect<A, E, R2>): Handler<Resource[Key], RT, Exclude<Exclude<R2, GetEffectContext<RequestContextMap, Resource[Key]["config"]>>, Scope.Scope>>;
58
60
  <A extends GetSuccessShape<Resource[Key], RT>, R2 = never, E = never>(f: (req: S.Schema.Type<Resource[Key]>) => Effect.Effect<A, E, R2>): Handler<Resource[Key], RT, Exclude<Exclude<R2, GetEffectContext<RequestContextMap, Resource[Key]["config"]>>, Scope.Scope>>;
61
+ <A extends GetSuccessShape<Resource[Key], RT>, R2 = never, E = never>(f: (req: S.Schema.Type<Resource[Key]>) => Stream.Stream<A, E, R2>): Handler<Resource[Key], RT, Exclude<Exclude<R2, GetEffectContext<RequestContextMap, Resource[Key]["config"]>>, Scope.Scope>>;
59
62
  };
60
63
  export type RouteMatcher<RequestContextMap extends Record<string, any>, Resource extends Record<string, any>> = {
61
64
  [Key in keyof FilterRequestModules<Resource>]: Match<Resource, RequestContextMap, RequestTypes.DECODED, Key> & {
62
65
  success: Resource[Key]["success"];
63
66
  successRaw: S.Codec<S.Codec.Encoded<Resource[Key]["success"]>>;
64
- error: Resource[Key]["failure"];
67
+ error: Resource[Key]["error"];
65
68
  /**
66
69
  * Requires the Encoded shape (e.g directly undecoded from DB, so that we don't do multiple Decode/Encode)
67
70
  */
@@ -73,26 +76,22 @@ export declare const makeRouter: <Self, RequestContextMap extends Record<string,
73
76
  matchAll: <T extends {
74
77
  [key: string]: Layer.Layer<never, any, any>;
75
78
  }>(handlers: T) => Layer.Layer<never, Layer.Error<(typeof handlers)[keyof typeof handlers]>, Layer.Services<(typeof handlers)[keyof typeof handlers]>>;
76
- Router: <const ModuleName extends string, const Resource extends Record<string, any>>(rsc: Resource & {
77
- meta: {
78
- moduleName: ModuleName;
79
- };
80
- }, options?: {
79
+ Router: <const Resource extends Record<string, any>>(rsc: Resource, options?: {
81
80
  check?: Effect.Effect<boolean>;
82
81
  }) => {
83
82
  <const Make extends {
84
83
  dependencies?: ReadonlyArray<Layer.Any>;
85
- effect: (match: <const Impl extends { [K in keyof FilterRequestModules<Resource>]: ({
86
- raw: (req: S.Schema.Type<Resource[K]>) => Generator<Effect.Effect<any, S.SchemaError | S.Schema.Type<GetFailure<Resource[K]>>, ContextProviderA | GetEffectContext<RequestContextMap, Resource[K]["config"]>>, S.Codec.Encoded<GetSuccess<Resource[K]>>, never>;
84
+ effect: (match: <const Impl extends { [K in keyof FilterRequestModules<Resource>]: (((req: S.Schema.Type<Resource[K]>) => Effect.Effect<S.Schema.Type<GetSuccess<Resource[K]>>, S.SchemaError | S.Schema.Type<GetFailure<Resource[K]>>, ContextProviderA | GetEffectContext<RequestContextMap, Resource[K]["config"]>>) | ((req: S.Schema.Type<Resource[K]>) => Generator<Yieldable<any, any, S.SchemaError | S.Schema.Type<GetFailure<Resource[K]>>, ContextProviderA | GetEffectContext<RequestContextMap, Resource[K]["config"]>>, S.Schema.Type<GetSuccess<Resource[K]>>, never>) | ((req: S.Schema.Type<Resource[K]>) => Stream.Stream<S.Schema.Type<GetSuccess<Resource[K]>>, S.SchemaError | S.Schema.Type<GetFailure<Resource[K]>>, ContextProviderA | GetEffectContext<RequestContextMap, Resource[K]["config"]>>)) | ({
85
+ raw: (req: S.Schema.Type<Resource[K]>) => Generator<Yieldable<any, any, S.SchemaError | S.Schema.Type<GetFailure<Resource[K]>>, ContextProviderA | GetEffectContext<RequestContextMap, Resource[K]["config"]>>, S.Codec.Encoded<GetSuccess<Resource[K]>>, never>;
87
86
  } | {
88
87
  raw: (req: S.Schema.Type<Resource[K]>) => Effect.Effect<S.Codec.Encoded<GetSuccess<Resource[K]>>, S.SchemaError | S.Schema.Type<GetFailure<Resource[K]>>, ContextProviderA | GetEffectContext<RequestContextMap, Resource[K]["config"]>>;
89
88
  } | {
90
- raw: Effect.Effect<S.Codec.Encoded<GetSuccess<Resource[K]>>, S.SchemaError | S.Schema.Type<GetFailure<Resource[K]>>, ContextProviderA | GetEffectContext<RequestContextMap, Resource[K]["config"]>>;
91
- }) | (((req: S.Schema.Type<Resource[K]>) => Generator<Effect.Effect<any, S.SchemaError | S.Schema.Type<GetFailure<Resource[K]>>, ContextProviderA | GetEffectContext<RequestContextMap, Resource[K]["config"]>>, S.Schema.Type<GetSuccess<Resource[K]>>, never>) | ((req: S.Schema.Type<Resource[K]>) => Effect.Effect<S.Schema.Type<GetSuccess<Resource[K]>>, S.SchemaError | S.Schema.Type<GetFailure<Resource[K]>>, ContextProviderA | GetEffectContext<RequestContextMap, Resource[K]["config"]>>) | Effect.Effect<S.Schema.Type<GetSuccess<Resource[K]>>, S.SchemaError | S.Schema.Type<GetFailure<Resource[K]>>, ContextProviderA | GetEffectContext<RequestContextMap, Resource[K]["config"]>>); }>(impl: Impl) => { [K in keyof Impl & keyof FilterRequestModules<Resource>]: Handler<FilterRequestModules<Resource>[K], Impl[K] extends {
89
+ raw: (req: S.Schema.Type<Resource[K]>) => Stream.Stream<S.Codec.Encoded<GetSuccess<Resource[K]>>, S.SchemaError | S.Schema.Type<GetFailure<Resource[K]>>, ContextProviderA | GetEffectContext<RequestContextMap, Resource[K]["config"]>>;
90
+ }); }>(impl: Impl) => { [K in keyof Impl & keyof FilterRequestModules<Resource>]: Handler<FilterRequestModules<Resource>[K], Impl[K] extends {
92
91
  raw: any;
93
92
  } ? RequestTypes.RAW : RequestTypes.DECODED, Exclude<Exclude<Impl[K] extends {
94
93
  raw: any;
95
- } ? Impl[K]["raw"] extends (...args: any[]) => Effect.Effect<any, any, infer R> ? R : Impl[K]["raw"] extends Effect.Effect<any, any, infer R> ? R : Impl[K]["raw"] extends (...args: any[]) => Generator<Effect.Effect<any, any, infer R>, any, any> ? R : never : Impl[K] extends (...args: any[]) => Effect.Effect<any, any, infer R> ? R : Impl[K] extends Effect.Effect<any, any, infer R> ? R : Impl[K] extends (...args: any[]) => Generator<Effect.Effect<any, any, infer R>, any, any> ? R : never, GetEffectContext<RequestContextMap, Resource[K]["config"]> | ContextProviderA>, Scope.Scope>>; }) => Generator<Yieldable<any, any, any, any>, { [K in keyof FilterRequestModules<Resource>]: AnyHandler<Resource[K]>; }, any>;
94
+ } ? Impl[K]["raw"] extends (...args: any[]) => Effect.Effect<any, any, infer R> ? R : Impl[K]["raw"] extends (...args: any[]) => Stream.Stream<any, any, infer R> ? R : Impl[K]["raw"] extends (...args: any[]) => Generator<Yieldable<any, any, any, infer R>> ? R : never : Impl[K] extends (...args: any[]) => Effect.Effect<any, any, infer R> ? R : Impl[K] extends (...args: any[]) => Stream.Stream<any, any, infer R> ? R : Impl[K] extends (...args: any[]) => Generator<Yieldable<any, any, any, infer R>> ? R : never, GetEffectContext<RequestContextMap, Resource[K]["config"]> | ContextProviderA>, Scope.Scope>>; }) => Generator<Yieldable<any, any, any, any>, { [K in keyof FilterRequestModules<Resource>]: AnyHandler<Resource[K]>; }>;
96
95
  /** @deprecated */
97
96
  readonly ಠ_ಠ: never;
98
97
  }>(make: Make): Layer.Layer<never, MakeErrors<Make> | MakeDepsE<Make> | Layer.Error<typeof middleware.Default>, MakeDepsIn<Make> | Layer.Services<typeof middleware.Default> | Exclude<MakeContext<Make>, MakeDepsOut<Make>> | RpcSerialization.RpcSerialization> & {
@@ -100,19 +99,17 @@ export declare const makeRouter: <Self, RequestContextMap extends Record<string,
100
99
  };
101
100
  <const Make extends {
102
101
  dependencies?: ReadonlyArray<Layer.Any>;
103
- effect: (match: <const Impl extends { [K in keyof FilterRequestModules<Resource>]: ({
104
- raw: (req: S.Schema.Type<Resource[K]>) => Generator<Effect.Effect<any, S.SchemaError | S.Schema.Type<GetFailure<Resource[K]>>, ContextProviderA | GetEffectContext<RequestContextMap, Resource[K]["config"]>>, S.Codec.Encoded<GetSuccess<Resource[K]>>, never>;
102
+ effect: (match: <const Impl extends { [K in keyof FilterRequestModules<Resource>]: (((req: S.Schema.Type<Resource[K]>) => Effect.Effect<S.Schema.Type<GetSuccess<Resource[K]>>, S.SchemaError | S.Schema.Type<GetFailure<Resource[K]>>, ContextProviderA | GetEffectContext<RequestContextMap, Resource[K]["config"]>>) | ((req: S.Schema.Type<Resource[K]>) => Generator<Yieldable<any, any, S.SchemaError | S.Schema.Type<GetFailure<Resource[K]>>, ContextProviderA | GetEffectContext<RequestContextMap, Resource[K]["config"]>>, S.Schema.Type<GetSuccess<Resource[K]>>, never>) | ((req: S.Schema.Type<Resource[K]>) => Stream.Stream<S.Schema.Type<GetSuccess<Resource[K]>>, S.SchemaError | S.Schema.Type<GetFailure<Resource[K]>>, ContextProviderA | GetEffectContext<RequestContextMap, Resource[K]["config"]>>)) | ({
103
+ raw: (req: S.Schema.Type<Resource[K]>) => Generator<Yieldable<any, any, S.SchemaError | S.Schema.Type<GetFailure<Resource[K]>>, ContextProviderA | GetEffectContext<RequestContextMap, Resource[K]["config"]>>, S.Codec.Encoded<GetSuccess<Resource[K]>>, never>;
105
104
  } | {
106
105
  raw: (req: S.Schema.Type<Resource[K]>) => Effect.Effect<S.Codec.Encoded<GetSuccess<Resource[K]>>, S.SchemaError | S.Schema.Type<GetFailure<Resource[K]>>, ContextProviderA | GetEffectContext<RequestContextMap, Resource[K]["config"]>>;
107
106
  } | {
108
- raw: Effect.Effect<S.Codec.Encoded<GetSuccess<Resource[K]>>, S.SchemaError | S.Schema.Type<GetFailure<Resource[K]>>, ContextProviderA | GetEffectContext<RequestContextMap, Resource[K]["config"]>>;
109
- }) | (((req: S.Schema.Type<Resource[K]>) => Generator<Effect.Effect<any, S.SchemaError | S.Schema.Type<GetFailure<Resource[K]>>, ContextProviderA | GetEffectContext<RequestContextMap, Resource[K]["config"]>>, S.Schema.Type<GetSuccess<Resource[K]>>, never>) | ((req: S.Schema.Type<Resource[K]>) => Effect.Effect<S.Schema.Type<GetSuccess<Resource[K]>>, S.SchemaError | S.Schema.Type<GetFailure<Resource[K]>>, ContextProviderA | GetEffectContext<RequestContextMap, Resource[K]["config"]>>) | Effect.Effect<S.Schema.Type<GetSuccess<Resource[K]>>, S.SchemaError | S.Schema.Type<GetFailure<Resource[K]>>, ContextProviderA | GetEffectContext<RequestContextMap, Resource[K]["config"]>>); }>(impl: Impl) => { [K in keyof Impl & keyof FilterRequestModules<Resource>]: Handler<FilterRequestModules<Resource>[K], Impl[K] extends {
107
+ raw: (req: S.Schema.Type<Resource[K]>) => Stream.Stream<S.Codec.Encoded<GetSuccess<Resource[K]>>, S.SchemaError | S.Schema.Type<GetFailure<Resource[K]>>, ContextProviderA | GetEffectContext<RequestContextMap, Resource[K]["config"]>>;
108
+ }); }>(impl: Impl) => { [K in keyof Impl & keyof FilterRequestModules<Resource>]: Handler<FilterRequestModules<Resource>[K], Impl[K] extends {
110
109
  raw: any;
111
110
  } ? RequestTypes.RAW : RequestTypes.DECODED, Exclude<Exclude<Impl[K] extends {
112
111
  raw: any;
113
- } ? Impl[K]["raw"] extends (...args: any[]) => Effect.Effect<any, any, infer R> ? R : Impl[K]["raw"] extends Effect.Effect<any, any, infer R> ? R : Impl[K]["raw"] extends (...args: any[]) => Generator<Effect.Effect<any, any, infer R>, any, any> ? R : never : Impl[K] extends (...args: any[]) => Effect.Effect<any, any, infer R> ? R : Impl[K] extends Effect.Effect<any, any, infer R> ? R : Impl[K] extends (...args: any[]) => Generator<Effect.Effect<any, any, infer R>, any, any> ? R : never, GetEffectContext<RequestContextMap, Resource[K]["config"]> | ContextProviderA>, Scope.Scope>>; }) => Generator<{
114
- asEffect(): Effect.Effect<any, any, any>;
115
- }, { [K in keyof FilterRequestModules<Resource>]: AnyHandler<Resource[K]>; }, any>;
112
+ } ? Impl[K]["raw"] extends (...args: any[]) => Effect.Effect<any, any, infer R> ? R : Impl[K]["raw"] extends (...args: any[]) => Stream.Stream<any, any, infer R> ? R : Impl[K]["raw"] extends (...args: any[]) => Generator<Yieldable<any, any, any, infer R>> ? R : never : Impl[K] extends (...args: any[]) => Effect.Effect<any, any, infer R> ? R : Impl[K] extends (...args: any[]) => Stream.Stream<any, any, infer R> ? R : Impl[K] extends (...args: any[]) => Generator<Yieldable<any, any, any, infer R>> ? R : never, GetEffectContext<RequestContextMap, Resource[K]["config"]> | ContextProviderA>, Scope.Scope>>; }) => Generator<Yieldable<any, any, any, any>, { [K in keyof FilterRequestModules<Resource>]: AnyHandler<Resource[K]>; }>;
116
113
  }>(make: Make): Layer.Layer<never, MakeErrors<Make> | MakeDepsE<Make> | Layer.Error<typeof middleware.Default>, MakeDepsIn<Make> | Layer.Services<typeof middleware.Default> | Exclude<MakeContext<Make>, MakeDepsOut<Make>> | RpcSerialization.RpcSerialization> & {
117
114
  readonly [TypeTestId]: Make;
118
115
  };
@@ -122,19 +119,19 @@ export type MakeDeps<Make> = Make extends {
122
119
  readonly dependencies: ReadonlyArray<Layer.Any>;
123
120
  } ? Make["dependencies"][number] : never;
124
121
  export type MakeErrors<Make> = Make extends {
125
- readonly effect: (_: any) => Generator<Yieldable<any, any, never, any>, any, any>;
122
+ readonly effect: (_: any) => Generator<Yieldable<any, any, never, any>>;
126
123
  } ? never : Make extends {
127
- readonly effect: (_: any) => Generator<Yieldable<any, any, infer E, any>, any, any>;
124
+ readonly effect: (_: any) => Generator<Yieldable<any, any, infer E, any>>;
128
125
  } ? E : never;
129
126
  export type MakeContext<Make> = Make extends {
130
- readonly effect: (_: any) => Generator<Yieldable<any, any, any, never>, any, any>;
127
+ readonly effect: (_: any) => Generator<Yieldable<any, any, any>>;
131
128
  } ? never : Make extends {
132
- readonly effect: (_: any) => Generator<Yieldable<any, any, any, infer R>, any, any>;
129
+ readonly effect: (_: any) => Generator<Yieldable<any, any, any, infer R>>;
133
130
  } ? R : never;
134
131
  export type MakeHandlers<Make, _Handlers extends Record<string, any>> = Make extends {
135
- readonly effect: (_: any) => Generator<any, infer S, any>;
132
+ readonly effect: (_: any) => Generator<any, infer S>;
136
133
  } ? S : never;
137
134
  export type MakeDepsE<Make> = Layer.Error<MakeDeps<Make>>;
138
135
  export type MakeDepsIn<Make> = Layer.Services<MakeDeps<Make>>;
139
136
  export type MakeDepsOut<Make> = Layer.Success<MakeDeps<Make>>;
140
- //# sourceMappingURL=routing.d.ts.map
137
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGluZy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FwaS9yb3V0aW5nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUlBLE9BQU8sRUFBVSxNQUFNLEVBQUUsS0FBSyxFQUE4QyxDQUFDLEVBQUUsS0FBSyxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sWUFBWSxDQUFBO0FBRXJILE9BQU8sRUFBRSxLQUFLLFdBQVcsRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBRWxELE9BQU8sRUFBRSxLQUFLLGdCQUFnQixFQUF1QixLQUFLLGFBQWEsRUFBRSxNQUFNLDhCQUE4QixDQUFBO0FBQzdHLE9BQU8sRUFBRSxLQUFLLFVBQVUsRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBRXJELE9BQU8sRUFBRSxLQUFLLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUM5QyxPQUFPLEVBQUUsR0FBRyxFQUFZLEtBQUssZ0JBQWdCLEVBQWEsTUFBTSxxQkFBcUIsQ0FBQTtBQUVyRixPQUFPLEVBQXdDLEtBQUssZ0JBQWdCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQTtBQUVyRyxjQUFjLHlCQUF5QixDQUFBO0FBRXZDLGVBQU8sTUFBTSxnQ0FBZ0MsR0FBSSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsZUFDekMsU0FBUyxHQUFHLE9BQU8sVUFDeEIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxpRUFDcUMsQ0FBQTtBQUlyRSxNQUFNLE1BQU0sZ0JBQWdCLEdBQUcsQ0FBQyxDQUFDLEdBQUcsR0FBRztJQUNyQyxJQUFJLEVBQUUsTUFBTSxDQUFBO0lBQ1osSUFBSSxFQUFFLFNBQVMsR0FBRyxPQUFPLENBQUE7SUFDekIsTUFBTSxFQUFFLE9BQU8sQ0FBQTtJQUNmLE1BQU0sRUFBRSxHQUFHLENBQUE7SUFDWCxPQUFPLEVBQUUsQ0FBQyxDQUFDLEdBQUcsQ0FBQTtJQUNkLEtBQUssRUFBRSxDQUFDLENB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RUFBRSxDQUFDLENBQUMsRUFBRSxHQUFHLEtBQUssU0FBUyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUE7Q0FBRSxHQUFHLENBQUMsR0FDOUYsS0FBSyxDQUFBO0FBRVgsTUFBTSxNQUFNLFlBQVksQ0FBQyxJQUFJLEVBQUUsU0FBUyxTQUFTLE1BQU0sQ0FBQyxNQUFNLEVBQUUsR0FBRyxDQUFDLElBSWxFLElBQUksU0FBUztJQUFFLFFBQVEsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLEVBQUUsR0FBRyxLQUFLLFNBQVMsQ0FBQyxHQUFHLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQTtDQUFFLEdBQUcsQ0FBQyxHQUNyRSxLQUFLLENBQUE7QUFFWCxNQUFNLE1BQU0sU0FBUyxDQUFDLElBQUksSUFBSSxLQUFLLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFBO0FBRXpELE1BQU0sTUFBTSxVQUFVLENBQUMsSUFBSSxJQUFJLEtBQUssQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUE7QUFFN0QsTUFBTSxNQUFNLFdBQVcsQ0FBQyxJQUFJLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQSJ9
@@ -1 +1 @@
1
- {"version":3,"file":"routing.d.ts","sourceRoot":"","sources":["../../src/api/routing.ts"],"names":[],"mappings":"AAIA,OAAO,EAAU,MAAM,EAAE,KAAK,EAAyC,CAAC,EAAE,KAAK,KAAK,EAAE,MAAM,YAAY,CAAA;AACxG,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAClD,OAAO,EAAE,KAAK,gBAAgB,EAAuB,KAAK,aAAa,EAAE,MAAM,8BAA8B,CAAA;AAC7G,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAErD,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAiB,KAAK,gBAAgB,EAAa,MAAM,qBAAqB,CAAA;AAErF,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,yBAAyB,CAAA;AAE/D,cAAc,yBAAyB,CAAA;AAIvC,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,GAAG,GAAG;IACrC,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,GAAG,CAAA;IACX,OAAO,EAAE,CAAC,CAAC,GAAG,CAAA;IACd,KAAK,EAAE,CAAC,CAAC,GAAG,CAAA;CACb,CAAA;AAGD,MAAM,WAAW,SAAS,CAAC,OAAO,SAAS,gBAAgB,EAAE,KAAK,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,EAAE;IACjG,KAAK,EAAE,KAAK,CAAA;IACZ,GAAG,CAAC,CAAC,SAAS,OAAO,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,CAAC,EACtC,CAAC,EAAE,CAAC,GACH,CAAC,SAAS,OAAO,CAAC,MAAM,CAAC,SAAS,gBAAgB,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,SAAS,KAAK,GAC5F,KAAK,GACL;SAAG,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;KAAE,GAEzB,SAAS,CACT,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,EACjB,KAAK,GACL;SAAG,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;KAAE,CAC1B,GACC,KAAK,GACL;SAAG,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;KAAE,GACzB,KAAK,CAAA;CACV;AAKD,kBAAU,YAAY,CAAC;IACd,MAAM,OAAO,EAAG,GAAY,CAAA;IACnC,KAAY,OAAO,GAAG,OAAO,OAAO,CAAA;IAC7B,MAAM,GAAG,EAAG,KAAc,CAAA;IACjC,KAAY,GAAG,GAAG,OAAO,GAAG,CAAA;CAC7B;AACD,KAAK,WAAW,GAAG,OAAO,YAAY,CAAC,MAAM,OAAO,YAAY,CAAC,CAAA;AAEjE,KAAK,UAAU,CAAC,CAAC,IAAI,CAAC,SAAS;IAAE,OAAO,EAAE,CAAC,CAAC,GAAG,CAAA;CAAE,GAAG,CAAC,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,CAAC,IAAI,CAAA;AAChF,KAAK,UAAU,CAAC,CAAC,SAAS;IAAE,KAAK,CAAC,EAAE,CAAC,CAAC,GAAG,CAAA;CAAE,IAAI,CAAC,CAAC,OAAO,CAAC,SAAS,KAAK,GAAG,OAAO,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,OAAO,CAAC,CAAA;AAErG,KAAK,eAAe,CAAC,MAAM,SAAS;IAAE,OAAO,CAAC,EAAE,CAAC,CAAC,GAAG,CAAA;CAAE,EAAE,EAAE,SAAS,WAAW,IAAI;IACjF,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAA;IACpC,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAA;CACzC,CAAC,EAAE,CAAC,CAAA;AAEL,UAAU,WAAW,CAAC,MAAM,SAAS,gBAAgB,EAAE,EAAE,SAAS,WAAW,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;IACpF,QAAO,EAAE,CAAA;IACT,IAAI,EAAE,EAAE,CAAA;IACR,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,WAAW,CAAC,OAAO,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;CAC9F;AAED,MAAM,WAAW,OAAO,CAAC,MAAM,SAAS,gBAAgB,EAAE,EAAE,SAAS,WAAW,EAAE,CAAC,CAAE,SACnF,WAAW,CACT,MAAM,EACN,EAAE,EACF,eAAe,CAAC,MAAM,EAAE,EAAE,CAAC,EAC3B,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,WAAW,EACjD,CAAC,CACF;CACD;AAEF,KAAK,UAAU,CAAC,MAAM,SAAS,gBAAgB,IAAI,OAAO,CACxD,MAAM,EACN,WAAW,EACX,GAAG,CACJ,CAAA;AAID,KAAK,oBAAoB,CAAC,CAAC,IAAI;KAC5B,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,gBAAgB,GAAG,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC;CAClE,CAAA;AAUD,KAAK,KAAK,CACR,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACpC,iBAAiB,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC7C,EAAE,SAAS,WAAW,EACtB,GAAG,SAAS,MAAM,QAAQ,IACxB;IAEF,CAAC,CAAC,SAAS,eAAe,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,GAAG,KAAK,EAAE,CAAC,GAAG,KAAK,EAClE,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,GACzB,OAAO,CACR,QAAQ,CAAC,GAAG,CAAC,EACb,EAAE,EACF,OAAO,CACL,OAAO,CAAC,EAAE,EAAE,gBAAgB,CAAC,iBAAiB,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EACzE,KAAK,CAAC,KAAK,CACZ,CACF,CAAA;IAED,CAAC,CAAC,SAAS,eAAe,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,GAAG,KAAK,EAAE,CAAC,GAAG,KAAK,EAClE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,GAChE,OAAO,CACR,QAAQ,CAAC,GAAG,CAAC,EACb,EAAE,EACF,OAAO,CACL,OAAO,CAAC,EAAE,EAAE,gBAAgB,CAAC,iBAAiB,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EACzE,KAAK,CAAC,KAAK,CACZ,CACF,CAAA;CACF,CAAA;AAED,MAAM,MAAM,YAAY,CACtB,iBAAiB,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC7C,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,IAClC;KAKD,GAAG,IAAI,MAAM,oBAAoB,CAAC,QAAQ,CAAC,GACxC,KAAK,CAAC,QAAQ,EAAE,iBAAiB,EAAE,YAAY,CAAC,OAAO,EAAE,GAAG,CAAC,GAC7D;QACA,OAAO,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,CAAA;QACjC,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;QAC9D,KAAK,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,CAAA;QAC/B;;WAEG;QACH,GAAG,EAAE,KAAK,CAAC,QAAQ,EAAE,iBAAiB,EAAE,YAAY,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;KAC/D;CACJ,CAAA;AAED,eAAO,MAAM,UAAU,sCAKF,CAAA;AAErB,eAAO,MAAM,UAAU,GACrB,IAAI,EACJ,iBAAiB,SAAS,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,GAAG,CAAC,EAC3D,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAEhB,YAAY,gBAAgB,CAC1B,IAAI,EACJ,iBAAiB,EACjB,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,CACjB;eAqXC,CAAC,SAAS;QACR,CAAC,GAAG,EAAE,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,CAAC,CAAA;KAC5C,YAES,CAAC,KAI8C,KAAK,CAAC,KAAK,CAClE,KAAK,EACL,KAAK,CAAC,KAAK,CAAC,CAAA,OAAO,QAAQ,EAAC,MAAM,OAAO,QAAQ,CAAC,CAAC,EACnD,KAAK,CAAC,QAAQ,CAAC,CAAA,OAAO,QAAQ,EAAC,MAAM,OAAO,QAAQ,CAAC,CAAC,CACvD;mBA1XK,UAAU,SAAS,MAAM,QACzB,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,OAErC,QAAQ,GAAG;QAAE,IAAI,EAAE;YAAE,UAAU,EAAE,UAAU,CAAA;SAAE,CAAA;KAAE,YAC1C;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;KAAE;eA2RlC,IAAI,SAAS;YACjB,YAAY,CAAC,EAAE,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;YACvC,MAAM,EAAE,CAAC,KAAK,SAxKZ,IAAI,SAAS,GAChB,CAAC,IAAI,MAAM,oBAAoB,CAAC,QAAQ,CAAC;;;;;;qrBAC3C,QAEK,IAAI,KACP,GACF,CAAC,IAAI,MAAM,IAAI,GAAG,MAAM,oBAAoB,CAAC,QAAQ,CAAC,GAAG,OAAO,CAC/D,oBAAoB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EACjC,IAAI,CAAC,CAAC,CAAC,SAAS;gBAAE,GAAG,EAAE,GAAG,CAAA;aAAE,GAAG,YAAY,CAAC,GAAG,GAAG,YAAY,CAAC,OAAO,EACtE,OAAO,CACL,OAAO,CAEL,IAAI,CAAC,CAAC,CAAC,SAAS;gBAAE,GAAG,EAAE,GAAG,CAAA;aAAE,GACxB,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,GAC/E,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,GAC3D,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,SAAS,CACpD,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC,EAChC,GAAG,EACH,GAAG,CACJ,GAAG,CAAC,GACH,KAAK,GACL,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,GACxE,IAAI,CAAC,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,GACpD,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,SAAS,CAC7C,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC,EAChC,GAAG,EACH,GAAG,CACJ,GAAG,CAAC,GACH,KAAK,EACP,gBAAgB,CAAC,iBAAiB,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,GAC1D,gBAAgB,CACnB,EACD,KAAK,CAAC,KAAK,CACZ,CACF,GAsIiC,KAAK,SAAS,CAC1C,SAAS,CACP,GAAG,EACH,GAAG,EACH,GAAG,EACH,GAAG,CACJ,EACD,GAAG,CAAC,IAAI,MAAM,oBAAoB,CAAC,QAAQ,CAAC,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAE,EACxE,GAAG,CACJ,CAAA;YACD,kBAAkB;YAClB,QAAQ,CAAC,GAAG,EAAE,KAAK,CAAA;SACpB,QAEK,IAAI,GAER,KAAK,CAAC,KAAK,CACX,KAAK,EACH,UAAU,CAAC,IAAI,CAAC,GAChB,SAAS,CAAC,IAAI,CAAC,GACf,KAAK,CAAC,KAAK,CAAC,OAAO,UAAU,CAAC,OAAO,CAAC,EACtC,UAAU,CAAC,IAAI,CAAC,GAChB,KAAK,CAAC,QAAQ,CAAC,OAAO,UAAU,CAAC,OAAO,CAAC,GACzC,OAAO,CACP,WAAW,CAAC,IAAI,CAAC,EACjB,WAAW,CAAC,IAAI,CAAC,CAClB,GACC,gBAAgB,CAAC,gBAAgB,CACpC,GACC;YAEA,CAAC,UAAU,CAAC,EAAE,IAAI,CAAA;SACnB;eAEK,IAAI,SAAS;YACjB,YAAY,CAAC,EAAE,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;YAEvC,MAAM,EAAE,CAAC,KAAK,SA7MZ,IAAI,SAAS,GAChB,CAAC,IAAI,MAAM,oBAAoB,CAAC,QAAQ,CAAC;;;;;;qrBAC3C,QAEK,IAAI,KACP,GACF,CAAC,IAAI,MAAM,IAAI,GAAG,MAAM,oBAAoB,CAAC,QAAQ,CAAC,GAAG,OAAO,CAC/D,oBAAoB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EACjC,IAAI,CAAC,CAAC,CAAC,SAAS;gBAAE,GAAG,EAAE,GAAG,CAAA;aAAE,GAAG,YAAY,CAAC,GAAG,GAAG,YAAY,CAAC,OAAO,EACtE,OAAO,CACL,OAAO,CAEL,IAAI,CAAC,CAAC,CAAC,SAAS;gBAAE,GAAG,EAAE,GAAG,CAAA;aAAE,GACxB,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,GAC/E,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,GAC3D,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,SAAS,CACpD,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC,EAChC,GAAG,EACH,GAAG,CACJ,GAAG,CAAC,GACH,KAAK,GACL,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,GACxE,IAAI,CAAC,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,GACpD,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,SAAS,CAC7C,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC,EAChC,GAAG,EACH,GAAG,CACJ,GAAG,CAAC,GACH,KAAK,EACP,gBAAgB,CAAC,iBAAiB,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,GAC1D,gBAAgB,CACnB,EACD,KAAK,CAAC,KAAK,CACZ,CACF,GA2KiC,KAAK,SAAS,CAC1C;gBACE,QAAQ,IAAI,MAAM,CAAC,MAAM,CACvB,GAAG,EACH,GAAG,EACH,GAAG,CACJ,CAAA;aACF,EACD,GAAG,CAAC,IAAI,MAAM,oBAAoB,CAAC,QAAQ,CAAC,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAE,EACxE,GAAG,CACJ,CAAA;SACF,QAEK,IAAI,GAER,KAAK,CAAC,KAAK,CACX,KAAK,EACH,UAAU,CAAC,IAAI,CAAC,GAChB,SAAS,CAAC,IAAI,CAAC,GACf,KAAK,CAAC,KAAK,CAAC,OAAO,UAAU,CAAC,OAAO,CAAC,EACtC,UAAU,CAAC,IAAI,CAAC,GAChB,KAAK,CAAC,QAAQ,CAAC,OAAO,UAAU,CAAC,OAAO,CAAC,GACzC,OAAO,CACP,WAAW,CAAC,IAAI,CAAC,EACjB,WAAW,CAAC,IAAI,CAAC,CAClB,GACC,gBAAgB,CAAC,gBAAgB,CACpC,GACC;YAEA,QAAQ,CAAC,CAAC,UAAU,CAAC,EAAE,IAAI,CAAA;SAC5B;;CA4BR,CAAA;AAED,MAAM,MAAM,QAAQ,CAAC,IAAI,IAAI,IAAI,SAAS;IAAE,QAAQ,CAAC,YAAY,EAAE,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;CAAE,GACzF,IAAI,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC,GAC5B,KAAK,CAAA;AAET,MAAM,MAAM,UAAU,CAAC,IAAI,IAIzB,IAAI,SAAS;IAAE,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,SAAS,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAA;CAAE,GAAG,KAAK,GACtG,IAAI,SAAS;IAAE,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,SAAS,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,GAAG,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAA;CAAE,GAAG,CAAC,GACxG,KAAK,CAAA;AAEX,MAAM,MAAM,WAAW,CAAC,IAAI,IAI1B,IAAI,SAAS;IAAE,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,SAAS,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAA;CAAE,GAAG,KAAK,GACtG,IAAI,SAAS;IAAE,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,SAAS,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAA;CAAE,GAAG,CAAC,GACxG,KAAK,CAAA;AAEX,MAAM,MAAM,YAAY,CAAC,IAAI,EAAE,SAAS,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,IAIlE,IAAI,SAAS;IAAE,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,GAAG,CAAC,CAAA;CAAE,GAAG,CAAC,GAC1E,KAAK,CAAA;AAEX,MAAM,MAAM,SAAS,CAAC,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAA;AAEzD,MAAM,MAAM,UAAU,CAAC,IAAI,IAAI,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAA;AAE7D,MAAM,MAAM,WAAW,CAAC,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"routing.d.ts","sourceRoot":"","sources":["../../src/api/routing.ts"],"names":[],"mappings":"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"}
@@ -2,10 +2,14 @@
2
2
  /* eslint-disable @typescript-eslint/no-unsafe-argument */
3
3
  /* eslint-disable @typescript-eslint/no-empty-object-type */
4
4
  /* eslint-disable @typescript-eslint/no-explicit-any */
5
- import { Config, Effect, Layer, Predicate, S } from "effect-app";
5
+ import { Config, Effect, Layer, Predicate, Ref, S, Stream } from "effect-app";
6
+ import { getMeta } from "effect-app/client";
7
+ import { Invalidation } from "effect-app/rpc";
6
8
  import { typedKeysOf, typedValuesOf } from "effect-app/utils";
7
9
  import { Rpc, RpcGroup, RpcServer } from "effect/unstable/rpc";
10
+ import { RequestType as RequestTypeAnnotation } from "./routing/middleware.js";
8
11
  export * from "./routing/middleware.js";
12
+ export const applyRequestTypeInterruptibility = (requestType, effect) => requestType === "command" ? Rpc.uninterruptible(effect) : effect;
9
13
  // note:
10
14
  // "d" stands for decoded i.e. the Type
11
15
  // "raw" stands for encoded i.e. the Encoded
@@ -26,9 +30,9 @@ export const makeRouter = (middleware) => {
26
30
  * if `check` is provided, the router will only be created if the effect succeeds with true
27
31
  */
28
32
  function matchFor(rsc, options) {
29
- const { meta } = rsc;
33
+ const meta = getMeta(rsc);
30
34
  const requestModules = typedKeysOf(rsc).reduce((acc, cur) => {
31
- if (Predicate.isObject(rsc[cur]) && rsc[cur]["success"]) {
35
+ if (Predicate.isObjectKeyword(rsc[cur]) && rsc[cur]["success"]) {
32
36
  acc[cur] = rsc[cur];
33
37
  }
34
38
  return acc;
@@ -40,19 +44,13 @@ export const makeRouter = (middleware) => {
40
44
  if (handlerImpl[Symbol.toStringTag] === "GeneratorFunction")
41
45
  handlerImpl = Effect.fnUntraced(handlerImpl);
42
46
  const stack = new Error().stack?.split("\n").slice(2).join("\n");
43
- return Effect.isEffect(handlerImpl)
44
- ? class {
45
- static request = rsc[cur];
46
- static stack = stack;
47
- static _tag = RequestTypes.DECODED;
48
- static handler = () => handlerImpl;
49
- }
50
- : class {
51
- static request = rsc[cur];
52
- static stack = stack;
53
- static _tag = RequestTypes.DECODED;
54
- static handler = handlerImpl;
55
- };
47
+ // oxlint-disable-next-line typescript/no-extraneous-class
48
+ return class {
49
+ static request = rsc[cur];
50
+ static stack = stack;
51
+ static _tag = RequestTypes.DECODED;
52
+ static handler = handlerImpl;
53
+ };
56
54
  }, {
57
55
  success: rsc[cur].success,
58
56
  successRaw: S.toEncoded(rsc[cur].success),
@@ -64,19 +62,13 @@ export const makeRouter = (middleware) => {
64
62
  if (handlerImpl[Symbol.toStringTag] === "GeneratorFunction")
65
63
  handlerImpl = Effect.fnUntraced(handlerImpl);
66
64
  const stack = new Error().stack?.split("\n").slice(2).join("\n");
67
- return Effect.isEffect(handlerImpl)
68
- ? class {
69
- static request = rsc[cur];
70
- static stack = stack;
71
- static _tag = RequestTypes.RAW;
72
- static handler = () => handlerImpl;
73
- }
74
- : class {
75
- static request = rsc[cur];
76
- static stack = stack;
77
- static _tag = RequestTypes.RAW;
78
- static handler = handlerImpl;
79
- };
65
+ // oxlint-disable-next-line typescript/no-extraneous-class
66
+ return class {
67
+ static request = rsc[cur];
68
+ static stack = stack;
69
+ static _tag = RequestTypes.RAW;
70
+ static handler = handlerImpl;
71
+ };
80
72
  }
81
73
  });
82
74
  return prev;
@@ -103,17 +95,73 @@ export const makeRouter = (middleware) => {
103
95
  static success = S.toEncoded(resource.success);
104
96
  }
105
97
  : resource,
106
- (payload, headers) => handler.handler(payload, headers).pipe(Effect.withSpan(`Request.${meta.moduleName}.${resource._tag}`, {}, {
107
- captureStackTrace: () => handler.stack // capturing the handler stack is the main reason why we are doing the span here
108
- }))
98
+ (payload, headers) => {
99
+ let result = handler.handler(payload, headers);
100
+ // Stream resources accept handlers returning either Stream or Effect.
101
+ // Lift Effect to Stream so `Effect.fail(...)` and `Effect<Stream>` (e.g.
102
+ // from generator handlers) work the same as a returned Stream.
103
+ if (resource.stream && Effect.isEffect(result)) {
104
+ result = Stream.unwrap(result.pipe(Effect.map((v) => Stream.isStream(v) ? v : Stream.succeed(v))));
105
+ }
106
+ if (Stream.isStream(result)) {
107
+ // Wrap stream items as { _tag: "value", value } and append a final
108
+ // { _tag: "done", metadata } chunk carrying accumulated invalidation keys.
109
+ // V2: on failure, convert to { _tag: "error", error, metadata } chunk so
110
+ // clients can invalidate queries even when the stream fails.
111
+ const keysRef = Ref.makeUnsafe([]);
112
+ const invalidationSet = Invalidation.makeInvalidationSet(keysRef);
113
+ return Stream.concat(result.pipe(Stream.map((item) => ({ _tag: "value", value: item })), Stream.provideService(Invalidation.InvalidationSet, invalidationSet),
114
+ // V3: after each value chunk, drain accumulated keys and emit a "metadata"
115
+ // chunk if any keys were collected since the last drain. This lets clients
116
+ // invalidate queries mid-stream without waiting for the "done" chunk.
117
+ Stream.flatMap((valueChunk) => Stream
118
+ .fromEffect(Ref.getAndSet(keysRef, []).pipe(Effect.map((keys) => keys.length > 0
119
+ ? [
120
+ valueChunk,
121
+ { _tag: "metadata", metadata: { invalidateQueries: keys } }
122
+ ]
123
+ : [valueChunk])))
124
+ .pipe(Stream.flatMap(Stream.fromIterable))),
125
+ // V2: catch stream failures and embed them in the stream as an error chunk
126
+ Stream.catch((err) => Stream.fromEffect(Ref.get(keysRef).pipe(Effect.flatMap((keys) => Effect.fail({
127
+ _tag: "error",
128
+ error: err,
129
+ metadata: { invalidateQueries: keys }
130
+ })))))), Stream.fromEffect(Ref.get(keysRef).pipe(Effect.map((keys) => ({ _tag: "done", metadata: { invalidateQueries: keys } })))));
131
+ }
132
+ const effect = result.pipe(Effect.withSpan(`Request.${meta.moduleName}.${resource._tag}`, {}, {
133
+ captureStackTrace: () => handler.stack // capturing the handler stack is the main reason why we are doing the span here
134
+ }));
135
+ return applyRequestTypeInterruptibility(resource.type, effect);
136
+ }
109
137
  ];
110
138
  return acc;
111
139
  }, {});
112
140
  const rpcs = RpcGroup
113
141
  .make(...typedValuesOf(mapped).map(([resource]) => {
114
- return Rpc
115
- .make(resource._tag, { payload: resource, success: resource.success, error: resource.failure })
116
- .annotate(middleware.requestContext, resource.config ?? {});
142
+ const isStream = resource.stream;
143
+ const isCommand = resource.type === "command";
144
+ return (isCommand
145
+ ? isStream
146
+ ? Invalidation.makeStreamRpc(resource._tag, {
147
+ payload: resource,
148
+ success: resource.success,
149
+ error: resource.error,
150
+ stream: true
151
+ })
152
+ : Invalidation.makeCommandRpc(resource._tag, {
153
+ payload: resource,
154
+ success: resource.success,
155
+ error: resource.error
156
+ })
157
+ : Rpc.make(resource._tag, {
158
+ payload: resource,
159
+ success: resource.success,
160
+ error: resource.error,
161
+ stream: isStream
162
+ }))
163
+ .annotate(middleware.requestContext, resource.config ?? {})
164
+ .annotate(RequestTypeAnnotation, resource.type);
117
165
  }))
118
166
  .prefix(`${meta.moduleName}.`)
119
167
  .middleware(middleware);
@@ -163,4 +211,4 @@ export const makeRouter = (middleware) => {
163
211
  Router: matchFor
164
212
  };
165
213
  };
166
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGluZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hcGkvcm91dGluZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSw0REFBNEQ7QUFDNUQsMERBQTBEO0FBQzFELDREQUE0RDtBQUM1RCx1REFBdUQ7QUFDdkQsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUE4QixTQUFTLEVBQUUsQ0FBQyxFQUFjLE1BQU0sWUFBWSxDQUFBO0FBSXhHLE9BQU8sRUFBRSxXQUFXLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0JBQWtCLENBQUE7QUFFN0QsT0FBTyxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQXlCLFNBQVMsRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBSXJGLGNBQWMseUJBQXlCLENBQUE7QUE4QnZDLFFBQVE7QUFDUix1Q0FBdUM7QUFDdkMsNENBQTRDO0FBQzVDLElBQVUsWUFBWSxDQUtyQjtBQUxELFdBQVUsWUFBWTtJQUNQLG9CQUFPLEdBQUcsR0FBWSxDQUFBO0lBRXRCLGdCQUFHLEdBQUcsS0FBYyxDQUFBO0FBRW5DLENBQUMsRUFMUyxZQUFZLEtBQVosWUFBWSxRQUtyQjtBQW1HRCxNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUcsTUFBTTtLQUM3QixHQUFHLENBQUMsUUFBUSxDQUFDO0lBQ1osTUFBTSxHQUFHLEdBQUcsS0FBSyxDQUFDLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQTtJQUN2QyxPQUFPLEdBQUcsS0FBSyxNQUFNLENBQUE7QUFDdkIsQ0FBQyxDQUFDO0tBQ0QsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQTtBQUVyQixNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUcsQ0FVeEIsVUFTQyxFQUNELEVBQUU7SUFDRjs7O09BR0c7SUFDSCxTQUFTLFFBQVEsQ0FJZixHQUFvRCxFQUNwRCxPQUE0QztRQXlENUMsTUFBTSxFQUFFLElBQUksRUFBRSxHQUFH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
214
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGluZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hcGkvcm91dGluZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSw0REFBNEQ7QUFDNUQsMERBQTBEO0FBQzFELDREQUE0RDtBQUM1RCx1REFBdUQ7QUFDdkQsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUE4QixTQUFTLEVBQUUsR0FBRyxFQUFFLENBQUMsRUFBYyxNQUFNLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFDckgsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBRTNDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUc3QyxPQUFPLEVBQUUsV0FBVyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtCQUFrQixDQUFBO0FBRTdELE9BQU8sRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUF5QixTQUFTLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTtBQUVyRixPQUFPLEVBQUUsV0FBVyxJQUFJLHFCQUFxQixFQUF5QixNQUFNLHlCQUF5QixDQUFBO0FBRXJHLGNBQWMseUJBQXlCLENBQUE7QUFFdkMsTUFBTSxDQUFDLE1BQU0sZ0NBQWdDLEdBQUcsQ0FDOUMsV0FBZ0MsRUFDaEMsTUFBOEIsRUFDOUIsRUFBRSxDQUFDLFdBQVcsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQTtBQWdDckUsUUFBUTtBQUNSLHVDQUF1QztBQUN2Qyw0Q0FBNEM7QUFDNUMsSUFBVSxZQUFZLENBS3JCO0FBTEQsV0FBVSxZQUFZO0lBQ1Asb0JBQU8sR0FBRyxHQUFZLENBQUE7SUFFdEIsZ0JBQUcsR0FBRyxLQUFjLENBQUE7QUFFbkMsQ0FBQyxFQUxTLFlBQVksS0FBWixZQUFZLFFBS3JCO0FBc0dELE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRyxNQUFNO0tBQzdCLEdBQUcsQ0FBQyxRQUFRLENBQUM7SUFDWixNQUFNLEdBQUcsR0FBRyxLQUFLLENBQUMsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFBO0lBQ3ZDLE9BQU8sR0FBRyxLQUFLLE1BQU0sQ0FBQTtBQUN2QixDQUFDLENBQUM7S0FDRCxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFBO0FBRXJCLE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRyxDQVV4QixVQVNDLEVBQ0QsRUFBRTtJQUNGOzs7T0FHRztJQUNILFNBQVMsUUFBUSxDQUdmLEdBQWEsRUFDYixPQUE0QztRQTBENUMsTUFBTSxJQUFJLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFBO1FBR3pCLE1BQU0sY0FBYyxHQUFHLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLEVBQUU7WUFDMUQsSUFBSSxTQUFTLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDO2dCQUMvRCxHQUFHLENBQUMsR0FBMkIsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQTtZQUM3QyxDQUFDO1lBQ0QsT0FBTyxHQUFHLENBQUE7UUFDWixDQUFDLEVBQUUsRUFBb0IsQ0FBQyxDQUFBO1FBRXhCLE1BQU0sWUFBWSxHQUFHLFdBQVcsQ0FBQyxjQUFjLENBQUMsQ0FBQyxNQUFNLENBQ3JELENBQUMsSUFBSSxFQUFFLEdBQUcsRUFBRSxFQUFFO1lBQ1osQ0FBQztZQUFDLElBQVksQ0FBQyxHQUFHLENBQUMsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsV0FBZ0IsRUFBRSxFQUFFO2dCQUN2RCxtREFBbUQ7Z0JBQ25ELElBQUksV0FBVyxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsS0FBSyxtQkFBbUI7b0JBQUUsV0FBVyxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsV0FBVyxDQUFDLENBQUE7Z0JBQ3pHLE1BQU0sS0FBSyxHQUFHLElBQUksS0FBSyxFQUFFLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFBO2dCQUNoRSwwREFBMEQ7Z0JBQzFELE9BQU87b0JBQ0wsTUFBTSxDQUFDLE9BQU8sR0FBRyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUE7b0JBQ3pCLE1BQU0sQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFBO29CQUNwQixNQUFNLENBQUMsSUFBSSxHQUFHLFlBQVksQ0FBQyxPQUFPLENBQUE7b0JBQ2xDLE1BQU0sQ0FBQyxPQUFPLEdBQUcsV0FBVyxDQUFBO2lCQUM3QixDQUFBO1lBQ0gsQ0FBQyxFQUFFO2dCQUNELE9BQU8sRUFBRSxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsT0FBTztnQkFDekIsVUFBVSxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLE9BQU8sQ0FBQztnQkFDekMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLO2dCQUNyQixHQUFHLEVBQUUsaUdBQWlHO2dCQUNwRyxvQ0FBb0M7Z0JBQ3BDLHNIQUFzSDtnQkFDdEgsQ0FBQyxXQUFnQixFQUFFLEVBQUU7b0JBQ25CLElBQUksV0FBVyxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsS0FBSyxtQkFBbUI7d0JBQUUsV0FBVyxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsV0FBVyxDQUFDLENBQUE7b0JBQ3pHLE1BQU0sS0FBSyxHQUFHLElBQUksS0FBSyxFQUFFLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFBO29CQUNoRSwwREFBMEQ7b0JBQzFELE9BQU87d0JBQ0wsTUFBTSxDQUFDLE9BQU8sR0FBRyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUE7d0JBQ3pCLE1BQU0sQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFBO3dCQUNwQixNQUFNLENBQUMsSUFBSSxHQUFHLFlBQVksQ0FBQyxHQUFHLENBQUE7d0JBQzlCLE1BQU0sQ0FBQyxPQUFPLEdBQUcsV0FBVyxDQUFBO3FCQUM3QixDQUFBO2dCQUNILENBQUM7YUFDSixDQUFDLENBQUE7WUFDRixPQUFPLElBQUksQ0FBQTtRQUNiLENBQUMsRUFDRCxFQUErQyxDQUNoRCxDQUFBO1FBRUQsTUFBTSxPQUFPLEdBZ0NULENBQUMsSUFBdUMsRUFBRSxFQUFFLENBQzlDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLEVBQUU7WUFDcEMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEtBQUssSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUE7WUFDbkcsT0FBTyxHQUFHLENBQUE7UUFDWixDQUFDLEVBQUUsRUFBUyxDQUFDLENBQUE7UUFFZixNQUFNLFVBQVUsR0FBRyxDQVNqQixZQUE4QixFQUM5QixJQUkyRCxFQUMzRCxFQUFFO1lBQ0YsTUFBTSxhQUFhLEdBQUcsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsR0FBRyxZQUFtQixDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBSXpGLENBQUE7WUFFRCxNQUFNLEtBQUssR0FBRyxNQUFNO2lCQUNqQixHQUFHLENBQUMsUUFBUSxDQUFDO2dCQUNaLE1BQU0sU0FBUyxHQUFHLENBQUUsSUFBWSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsS0FBSyxtQkFBbUI7b0JBQzFFLENBQUMsQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLElBQVcsQ0FBQyxDQUFDLE9BQU8sQ0FBUTtvQkFDaEQsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQVEsQ0FBMkMsQ0FBQTtnQkFFbkUsTUFBTSxXQUFXLEdBQUcsS0FBSyxDQUFDLENBQUMsU0FBUyxDQUFBO2dCQUVwQyxvRUFBb0U7Z0JBQ3BFLE1BQU0sTUFBTSxHQUFHLFdBQVcsQ0FBQyxjQUFjLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLEVBQUU7b0JBQzdELE1BQU0sT0FBTyxHQUFHLFdBQVcsQ0FBQyxHQUErQixDQUFDLENBQUE7b0JBQzVELE1BQU0sUUFBUSxHQUFHLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQTtvQkFFekIsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHO3dCQUNULE9BQU8sQ0FBQyxJQUFJLEtBQUssWUFBWSxDQUFDLEdBQUc7NEJBQy9CLENBQUMsQ0FBQyxLQUFNLFNBQVMsUUFBZ0I7Z0NBQy9CLE1BQU0sQ0FBQyxPQUFPLEdBQUcsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUE7NkJBQ3hDOzRCQUNSLENBQUMsQ0FBQyxRQUFRO3dCQUNaLENBQUMsT0FBWSxFQUFFLE9BQVksRUFBRSxFQUFFOzRCQUM3QixJQUFJLE1BQU0sR0FBUSxPQUFPLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQTs0QkFDbkQsc0VBQXNFOzRCQUN0RSx5RUFBeUU7NEJBQ3pFLCtEQUErRDs0QkFDL0QsSUFBSSxRQUFRLENBQUMsTUFBTSxJQUFJLE1BQU0sQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztnQ0FDL0MsTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQ25CLE1BQW1ELENBQUMsSUFBSSxDQUN2RCxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FDOUQsQ0FDRixDQUFBOzRCQUNILENBQUM7NEJBQ0QsSUFBSSxNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7Z0NBQzVCLG1FQUFtRTtnQ0FDbkUsMkVBQTJFO2dDQUMzRSx5RUFBeUU7Z0NBQ3pFLDZEQUE2RDtnQ0FDN0QsTUFBTSxPQUFPLEdBQUcsR0FBRyxDQUFDLFVBQVUsQ0FBOEMsRUFBRSxDQUFDLENBQUE7Z0NBQy9FLE1BQU0sZUFBZSxHQUFHLFlBQVksQ0FBQyxtQkFBbUIsQ0FBQyxPQUFPLENBQUMsQ0FBQTtnQ0FDakUsT0FBTyxNQUFNLENBQUMsTUFBTSxDQUNqQixNQUF1QyxDQUFDLElBQUksQ0FDM0MsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQVMsRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxPQUFnQixFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLEVBQ3BFLE1BQU0sQ0FBQyxjQUFjLENBQUMsWUFBWSxDQUFDLGVBQWUsRUFBRSxlQUFlLENBQUM7Z0NBQ3BFLDJFQUEyRTtnQ0FDM0UsMkVBQTJFO2dDQUMzRSxzRUFBc0U7Z0NBQ3RFLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxVQUFlLEVBQUUsRUFBRSxDQUNqQyxNQUFNO3FDQUNILFVBQVUsQ0FDVCxHQUFHLENBQUMsU0FBUyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQzdCLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUNsQixJQUFJLENBQUMsTUFBTSxHQUFHLENBQUM7b0NBQ2IsQ0FBQyxDQUFDO3dDQUNBLFVBQVU7d0NBQ1YsRUFBRSxJQUFJLEVBQUUsVUFBbUIsRUFBRSxRQUFRLEVBQUUsRUFBRSxpQkFBaUIsRUFBRSxJQUFJLEVBQUUsRUFBRTtxQ0FDckU7b0NBQ0QsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQ2pCLENBQ0YsQ0FDRjtxQ0FDQSxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FDN0M7Z0NBQ0QsMkVBQTJFO2dDQUMzRSxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBUSxFQUFFLEVBQUUsQ0FDeEIsTUFBTSxDQUFDLFVBQVUsQ0FDZixHQUFHLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FDbkIsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQ3RCLE1BQU0sQ0FBQyxJQUFJLENBQUM7b0NBQ1YsSUFBSSxFQUFFLE9BQWdCO29DQUN0QixLQUFLLEVBQUUsR0FBRztvQ0FDVixRQUFRLEVBQUUsRUFBRSxpQkFBaUIsRUFBRSxJQUFJLEVBQUU7aUNBQ3RDLENBQUMsQ0FDSCxDQUNGLENBQ0YsQ0FDRixDQUNGLEVBQ0QsTUFBTSxDQUFDLFVBQVUsQ0FDZixHQUFHLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FDbkIsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxNQUFlLEVBQUUsUUFBUSxFQUFFLEVBQUUsaUJBQWlCLEVBQUUsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQ3pGLENBQ0YsQ0FDRixDQUFBOzRCQUNILENBQUM7NEJBQ0QsTUFBTSxNQUFNLEdBQUksTUFBbUQsQ0FBQyxJQUFJLENBQ3RFLE1BQU0sQ0FBQyxRQUFRLENBQUMsV0FBVyxJQUFJLENBQUMsVUFBVSxJQUFJLFFBQVEsQ0FBQyxJQUFJLEVBQUUsRUFBRSxFQUFFLEVBQUU7Z0NBQ2pFLGlCQUFpQixFQUFFLEdBQUcsRUFBRSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsZ0ZBQWdGOzZCQUN4SCxDQUFDLENBQ0gsQ0FBQTs0QkFFRCxPQUFPLGdDQUFnQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUE7d0JBQ2hFLENBQUM7cUJBQ08sQ0FBQTtvQkFDVixPQUFPLEdBQUcsQ0FBQTtnQkFDWixDQUFDLEVBQUUsRUFBUyxDQWdCWCxDQUFBO2dCQUVELE1BQU0sSUFBSSxHQUFHLFFBQVE7cUJBQ2xCLElBQUksQ0FDSCxHQUFHLGFBQWEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxFQUFFLEVBQUU7b0JBQzFDLE1BQU0sUUFBUSxHQUFHLFFBQVEsQ0FBQyxNQUFNLENBQUE7b0JBQ2hDLE1BQU0sU0FBUyxHQUFHLFFBQVEsQ0FBQyxJQUFJLEtBQUssU0FBUyxDQUFBO29CQUM3QyxPQUFPLENBQUMsU0FBUzt3QkFDZixDQUFDLENBQUMsUUFBUTs0QkFDUixDQUFDLENBQUMsWUFBWSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFO2dDQUMxQyxPQUFPLEVBQUUsUUFBUTtnQ0FDakIsT0FBTyxFQUFFLFFBQVEsQ0FBQyxPQUFPO2dDQUN6QixLQUFLLEVBQUUsUUFBUSxDQUFDLEtBQUs7Z0NBQ3JCLE1BQU0sRUFBRSxJQUFhOzZCQUN0QixDQUFDOzRCQUNGLENBQUMsQ0FBQyxZQUFZLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUU7Z0NBQzNDLE9BQU8sRUFBRSxRQUFRO2dDQUNqQixPQUFPLEVBQUUsUUFBUSxDQUFDLE9BQU87Z0NBQ3pCLEtBQUssRUFBRSxRQUFRLENBQUMsS0FBSzs2QkFDdEIsQ0FBQzt3QkFDSixDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFOzRCQUN4QixPQUFPLEVBQUUsUUFBUTs0QkFDakIsT0FBTyxFQUFFLFFBQVEsQ0FBQyxPQUFPOzRCQUN6QixLQUFLLEVBQUUsUUFBUSxDQUFDLEtBQUs7NEJBQ3JCLE1BQU0sRUFBRSxRQUFRO3lCQUNqQixDQUFDLENBQUM7eUJBQ0YsUUFBUSxDQUFDLFVBQVUsQ0FBQyxjQUFjLEVBQUUsUUFBUSxDQUFDLE1BQU0sSUFBSSxFQUFFLENBQUM7eUJBQzFELFFBQVEsQ0FBQyxxQkFBcUIsRUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUE7Z0JBQ25ELENBQUMsQ0FBQyxDQUNIO3FCQUNBLE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxVQUFVLEdBQUcsQ0FBQztxQkFDN0IsVUFBVSxDQUFDLFVBQWlCLENBQUMsQ0FBQTtnQkFFaEMsTUFBTSxHQUFHLEdBQUcsSUFBSTtxQkFDYixPQUFPLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUM7b0JBQzNCLE9BQU8sYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDLFFBQVEsRUFBRSxPQUFPLENBQUMsRUFBRSxFQUFFO3dCQUMvRCxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsVUFBVSxJQUFJLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxHQUFHLE9BQU8sQ0FBQTt3QkFDcEQsT0FBTyxHQUFHLENBQUE7b0JBQ1osQ0FBQyxFQUFFLEVBQXlCLENBQVEsQ0FBQSxDQUFDLE9BQU87Z0JBQzlDLENBQUMsQ0FBQyxDQUlELENBQUE7Z0JBRUgsT0FBTyxTQUFTO3FCQUNiLFNBQVMsQ0FBQztvQkFDVCxVQUFVLEVBQUUsWUFBWSxHQUFHLElBQUksQ0FBQyxVQUFVO29CQUMxQyxLQUFLLEVBQUUsSUFBSTtvQkFDWCxJQUFJLEVBQUUsQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBaUM7b0JBQ2pFLFFBQVEsRUFBRSxNQUFNO2lCQUNqQixDQUFDO3FCQUNELElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUE7WUFDN0IsQ0FBQyxDQUFDO2lCQUNELElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUE7WUFFckIsTUFBTSxNQUFNLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FDdkIsS0FBSyxDQUFDLE9BQU8sQ0FBQztnQkFDWixhQUFhO2dCQUNiLFVBQVUsQ0FBQyxPQUFPO2FBQ25CLENBQUMsQ0FDSCxDQUFBO1lBRUQsTUFBTSxLQUFLLEdBQUcsT0FBTyxFQUFFLEtBQUssQ0FBQTtZQUM1QixPQUFPLEtBQUs7Z0JBQ1YsQ0FBQyxDQUFDLE1BQU07cUJBQ0wsR0FBRyxDQUFDLFFBQVEsQ0FBQztvQkFDWixJQUFJLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO3dCQUNwQixLQUFLLENBQUMsQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLDhCQUE4QixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQTt3QkFDekUsT0FBTyxLQUFLLENBQUMsS0FBSyxDQUFBO29CQUNwQixDQUFDO29CQUNELE9BQU8sTUFBTSxDQUFBO2dCQUNmLENBQUMsQ0FBQztxQkFDRCxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQztnQkFDckIsQ0FBQyxDQUFDLE1BQU0sQ0FBQTtRQUNaLENBQUMsQ0FBQTtRQUVELE1BQU0sTUFBTSxHQW1FVixDQUFDLENBQUMsSUFBd0MsRUFBRSxFQUFFLENBQzVDLE1BQU0sQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBUSxDQUFBO1FBRS9FLE9BQU8sTUFBTSxDQUFBO0lBQ2YsQ0FBQztJQUVELFNBQVMsUUFBUSxDQUtmLFFBQVc7UUFFWCxNQUFNLE9BQU8sR0FBRyxhQUFhLENBQUMsUUFBUSxDQUFDLENBQUE7UUFFdkMsT0FBTyxLQUFLLENBQUMsUUFBUSxDQUFDLEdBQUcsT0FBZ0IsQ0FJeEMsQ0FBQTtJQUNILENBQUM7SUFFRCxPQUFPO1FBQ0wsUUFBUTtRQUNSLE1BQU0sRUFBRSxRQUFRO0tBQ2pCLENBQUE7QUFDSCxDQUFDLENBQUEifQ==
@@ -3,10 +3,13 @@ import { NonEmptyString255 } from "effect-app/Schema";
3
3
  import { RequestContext } from "../RequestContext.js";
4
4
  export declare const getRequestContext: Effect.Effect<RequestContext, never, never>;
5
5
  export declare const getRC: Effect.Effect<{
6
- locale: "en" | "de";
6
+ locale: "de" | "en";
7
7
  namespace: NonEmptyString255;
8
8
  }, never, never>;
9
- export declare const setupRequestContextFromCurrent: (name?: string, options?: Tracer.SpanOptions) => <R, E, A>(self: Effect.Effect<A, E, R>) => Effect.Effect<A, E, Exclude<Exclude<R, Tracer.ParentSpan>, never>>;
10
- export declare function setupRequestContext<R, E, A>(self: Effect.Effect<A, E, R>, requestContext: RequestContext): Effect.Effect<A, E, Exclude<Exclude<R, Tracer.ParentSpan>, never>>;
11
- export declare function setupRequestContextWithCustomSpan<R, E, A>(self: Effect.Effect<A, E, R>, requestContext: RequestContext, name: string, options?: Tracer.SpanOptions): Effect.Effect<A, E, Exclude<Exclude<R, Tracer.ParentSpan>, never>>;
12
- //# sourceMappingURL=setupRequest.d.ts.map
9
+ export interface SetupRequestOptions {
10
+ readonly withTransaction?: boolean;
11
+ }
12
+ export declare const setupRequestContextFromCurrent: (name?: string, options?: Tracer.SpanOptions & SetupRequestOptions) => <R, E, A>(self: Effect.Effect<A, E, R>) => Effect.Effect<A, E, Exclude<Exclude<R, Tracer.ParentSpan>, never>>;
13
+ export declare function setupRequestContext<R, E, A>(self: Effect.Effect<A, E, R>, requestContext: RequestContext, options?: SetupRequestOptions): Effect.Effect<A, E, Exclude<Exclude<R, Tracer.ParentSpan>, never>>;
14
+ export declare function setupRequestContextWithCustomSpan<R, E, A>(self: Effect.Effect<A, E, R>, requestContext: RequestContext, name: string, options?: Tracer.SpanOptions & SetupRequestOptions): Effect.Effect<A, E, Exclude<Exclude<R, Tracer.ParentSpan>, never>>;
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dXBSZXF1ZXN0LmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYXBpL3NldHVwUmVxdWVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFpQixNQUFNLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFDMUQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sbUJBQW1CLENBQUE7QUFFckQsT0FBTyxFQUFhLGNBQWMsRUFBa0IsTUFBTSxzQkFBc0IsQ0FBQTtBQVloRixlQUFPLE1BQU0saUJBQWlCLDZDQWUzQixDQUFBO0FBRUgsZUFBTyxNQUFNLEtBQUs7OztnQkFHaEIsQ0FBQTtBQW1CRixNQUFNLFdBQVcsbUJBQW1CO0lBQ2xDLFFBQVEsQ0FBQyxlQUFlLENBQUMsRUFBRSxPQUFPLENBQUE7Q0FDbkM7QUFFRCxlQUFPLE1BQU0sOEJBQThCLDRCQUNaLE1BQU0sQ0FBQyxXQUFXLEdBQUcsbUJBQW1CLE1BQU0sQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLFFBQVEsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyx1RUFNM0csQ0FBQTtBQUdQLHdCQUFnQixtQkFBbUIsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFDekMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsRUFDNUIsY0FBYyxFQUFFLGNBQWMsRUFDOUIsT0FBTyxDQUFDLEVBQUUsbUJBQW1CLHNFQWE5QjtBQUVELHdCQUFnQixpQ0FBaUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFDdkQsSUFBSSxFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsRUFDNUIsY0FBYyxFQUFFLGNBQWMsRUFDOUIsSUFBSSxFQUFFLE1BQU0sRUFDWixPQUFPLENBQUMsRUFBRSxNQUFNLENBQUMsV0FBVyxHQUFHLG1CQUFtQixzRUFhbkQifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"setupRequest.d.ts","sourceRoot":"","sources":["../../src/api/setupRequest.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAS,MAAM,EAAE,MAAM,YAAY,CAAA;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AACrD,OAAO,EAAa,cAAc,EAAkB,MAAM,sBAAsB,CAAA;AAIhF,eAAO,MAAM,iBAAiB,6CAe3B,CAAA;AAEH,eAAO,MAAM,KAAK;;;gBAGhB,CAAA;AAmBF,eAAO,MAAM,8BAA8B,GACxC,aAAgB,EAAE,UAAU,MAAM,CAAC,WAAW,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,uEAKrF,CAAA;AAGP,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,cAAc,EAAE,cAAc,sEAWxG;AAED,wBAAgB,iCAAiC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EACvD,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAC5B,cAAc,EAAE,cAAc,EAC9B,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,MAAM,CAAC,WAAW,sEAY7B"}
1
+ {"version":3,"file":"setupRequest.d.ts","sourceRoot":"","sources":["../../src/api/setupRequest.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAiB,MAAM,EAAE,MAAM,YAAY,CAAA;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAErD,OAAO,EAAa,cAAc,EAAkB,MAAM,sBAAsB,CAAA;AAYhF,eAAO,MAAM,iBAAiB,6CAe3B,CAAA;AAEH,eAAO,MAAM,KAAK;;;gBAGhB,CAAA;AAmBF,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,CAAA;CACnC;AAED,eAAO,MAAM,8BAA8B,4BACZ,MAAM,CAAC,WAAW,GAAG,mBAAmB,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,QAAQ,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,uEAM3G,CAAA;AAGP,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EACzC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAC5B,cAAc,EAAE,cAAc,EAC9B,OAAO,CAAC,EAAE,mBAAmB,sEAa9B;AAED,wBAAgB,iCAAiC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EACvD,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAC5B,cAAc,EAAE,cAAc,EAC9B,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,MAAM,CAAC,WAAW,GAAG,mBAAmB,sEAanD"}
@@ -1,15 +1,20 @@
1
- import { Effect, Layer, Tracer } from "effect-app";
1
+ import { Effect, Layer, Option, Tracer } from "effect-app";
2
2
  import { NonEmptyString255 } from "effect-app/Schema";
3
+ import { SqlClient } from "effect/unstable/sql";
3
4
  import { LocaleRef, RequestContext, spanAttributes } from "../RequestContext.js";
4
5
  import { ContextMapContainer } from "../Store/ContextMapContainer.js";
5
6
  import { storeId } from "../Store/Memory.js";
7
+ const withSqlTransaction = (self) => Effect.serviceOption(SqlClient.SqlClient).pipe(Effect.flatMap(Option.match({
8
+ onNone: () => self,
9
+ onSome: (sql) => sql.withTransaction(self).pipe(Effect.orDie)
10
+ })));
6
11
  export const getRequestContext = Effect
7
12
  .all({
8
13
  span: Effect.currentSpan.pipe(Effect.orDie),
9
14
  locale: LocaleRef.asEffect(),
10
15
  namespace: storeId.asEffect()
11
16
  })
12
- .pipe(Effect.map(({ locale, namespace, span }) => new RequestContext({
17
+ .pipe(Effect.map(({ locale, namespace, span }) => RequestContext.make({
13
18
  span: Tracer.externalSpan(span),
14
19
  locale,
15
20
  namespace,
@@ -29,16 +34,16 @@ const withRequestSpan = (name = "request", options) => (f) => Effect.andThen(get
29
34
  // request context info is picked up directly in the logger for annotations.
30
35
  Effect.withLogSpan(name)));
31
36
  export const setupRequestContextFromCurrent = (name = "request", options) => (self) => self
32
- .pipe(withRequestSpan(name, options), Effect.provide(ContextMapContainer.layer));
37
+ .pipe(options?.withTransaction === true ? withSqlTransaction : (_) => _, withRequestSpan(name, options), Effect.provide(ContextMapContainer.layer, { local: true }));
33
38
  // TODO: consider integrating Effect.withParentSpan
34
- export function setupRequestContext(self, requestContext) {
35
- const layer = Layer.mergeAll(ContextMapContainer.layer, Layer.succeed(LocaleRef, requestContext.locale), Layer.succeed(storeId, NonEmptyString255(requestContext.namespace)));
39
+ export function setupRequestContext(self, requestContext, options) {
40
+ const layer = Layer.mergeAll(ContextMapContainer.layer, Layer.succeed(LocaleRef, requestContext.locale), Layer.succeed(storeId, requestContext.namespace));
36
41
  return self
37
- .pipe(withRequestSpan(requestContext.name), Effect.provide(layer));
42
+ .pipe(options?.withTransaction === true ? withSqlTransaction : (_) => _, withRequestSpan(requestContext.name), Effect.provide(layer, { local: true }));
38
43
  }
39
44
  export function setupRequestContextWithCustomSpan(self, requestContext, name, options) {
40
- const layer = Layer.mergeAll(ContextMapContainer.layer, Layer.succeed(LocaleRef, requestContext.locale), Layer.succeed(storeId, NonEmptyString255(requestContext.namespace)));
45
+ const layer = Layer.mergeAll(ContextMapContainer.layer, Layer.succeed(LocaleRef, requestContext.locale), Layer.succeed(storeId, requestContext.namespace));
41
46
  return self
42
- .pipe(withRequestSpan(name, options), Effect.provide(layer));
47
+ .pipe(options?.withTransaction === true ? withSqlTransaction : (_) => _, withRequestSpan(name, options), Effect.provide(layer, { local: true }));
43
48
  }
44
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dXBSZXF1ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FwaS9zZXR1cFJlcXVlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sWUFBWSxDQUFBO0FBQ2xELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBQ3JELE9BQU8sRUFBRSxTQUFTLEVBQUUsY0FBYyxFQUFFLGNBQWMsRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBQ2hGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFBO0FBQ3JFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQTtBQUU1QyxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxNQUFNO0tBQ3BDLEdBQUcsQ0FBQztJQUNILElBQUksRUFBRSxNQUFNLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDO0lBQzNDLE1BQU0sRUFBRSxTQUFTLENBQUMsUUFBUSxFQUFFO0lBQzVCLFNBQVMsRUFBRSxPQUFPLENBQUMsUUFBUSxFQUFFO0NBQzlCLENBQUM7S0FDRCxJQUFJLENBQ0gsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLENBQ3pDLElBQUksY0FBYyxDQUFDO0lBQ2pCLElBQUksRUFBRSxNQUFNLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQztJQUMvQixNQUFNO0lBQ04sU0FBUztJQUNULElBQUksRUFBRSxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO0NBQ25DLENBQUMsQ0FDSCxDQUNGLENBQUE7QUFFSCxNQUFNLENBQUMsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQztJQUM5QixNQUFNLEVBQUUsU0FBUyxDQUFD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
49
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dXBSZXF1ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FwaS9zZXR1cFJlcXVlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLFlBQVksQ0FBQTtBQUMxRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQTtBQUNyRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0scUJBQXFCLENBQUE7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxjQUFjLEVBQUUsY0FBYyxFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFDaEYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0saUNBQWlDLENBQUE7QUFDckUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLG9CQUFvQixDQUFBO0FBRTVDLE1BQU0sa0JBQWtCLEdBQUcsQ0FBVSxJQUE0QixFQUEwQixFQUFFLENBQzNGLE1BQU0sQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxDQUFDLElBQUksQ0FDNUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDO0lBQzFCLE1BQU0sRUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFJO0lBQ2xCLE1BQU0sRUFBRSxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQztDQUM5RCxDQUFDLENBQUMsQ0FDSixDQUFBO0FBRUgsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsTUFBTTtLQUNwQyxHQUFHLENBQUM7SUFDSCxJQUFJLEVBQUUsTUFBTSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQztJQUMzQyxNQUFNLEVBQUUsU0FBUyxDQUFDLFFBQVEsRUFBRTtJ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
@@ -1,3 +1,3 @@
1
1
  export declare function snipValue(value: string | readonly string[] | undefined): string | readonly string[] | undefined;
2
2
  export declare function snipString(value: string): string;
3
- //# sourceMappingURL=util.d.ts.map
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbC5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FwaS91dGlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHdCQUFnQixTQUFTLENBQUMsS0FBSyxFQUFFLE1BQU0sR0FBRyxTQUFTLE1BQU0sRUFBRSxHQUFHLFNBQVMsMENBU3RFO0FBRUQsd0JBQWdCLFVBQVUsQ0FBQyxLQUFLLEVBQUUsTUFBTSxVQUV2QyJ9
package/dist/arbs.d.ts CHANGED
@@ -2,4 +2,4 @@ import { type S } from "effect-app";
2
2
  import * as FastCheck from "effect/testing/FastCheck";
3
3
  export declare function generate<T>(arb: FastCheck.Arbitrary<T>): FastCheck.Value<T>;
4
4
  export declare function generateFromArbitrary<T>(arb: S.LazyArbitrary<T>): FastCheck.Value<T>;
5
- //# sourceMappingURL=arbs.d.ts.map
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJicy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2FyYnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsT0FBTyxFQUFFLEtBQUssQ0FBQyxFQUFFLE1BQU0sWUFBWSxDQUFBO0FBRW5DLE9BQU8sS0FBSyxTQUFTLE1BQU0sMEJBQTBCLENBQUE7QUFVckQsd0JBQWdCLFFBQVEsQ0FBQyxDQUFDLEVBQUUsR0FBRyxFQUFFLFNBQVMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLHNCQUV0RDtBQUVELHdCQUFnQixxQkFBcUIsQ0FBQyxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLHNCQUUvRCJ9
@@ -1 +1 @@
1
- {"version":3,"file":"arbs.d.ts","sourceRoot":"","sources":["../src/arbs.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,CAAC,EAAE,MAAM,YAAY,CAAA;AAEnC,OAAO,KAAK,SAAS,MAAM,0BAA0B,CAAA;AAQrD,wBAAgB,QAAQ,CAAC,CAAC,EAAE,GAAG,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,sBAEtD;AAED,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,sBAE/D"}
1
+ {"version":3,"file":"arbs.d.ts","sourceRoot":"","sources":["../src/arbs.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,CAAC,EAAE,MAAM,YAAY,CAAA;AAEnC,OAAO,KAAK,SAAS,MAAM,0BAA0B,CAAA;AAUrD,wBAAgB,QAAQ,CAAC,CAAC,EAAE,GAAG,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,sBAEtD;AAED,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,sBAE/D"}
package/dist/arbs.js CHANGED
@@ -3,8 +3,10 @@ import { faker } from "@faker-js/faker";
3
3
  import { setFaker } from "effect-app/faker";
4
4
  import * as FastCheck from "effect/testing/FastCheck";
5
5
  import { Random } from "fast-check";
6
- import * as rand from "pure-rand";
7
- const rnd = new Random(rand.congruential32(5));
6
+ import { congruential32 } from "pure-rand/generator/congruential32";
7
+ const seed = 5;
8
+ const rng = congruential32(seed);
9
+ const rnd = new Random(rng);
8
10
  setFaker(faker);
9
11
  export function generate(arb) {
10
12
  return arb.generate(rnd, undefined);
@@ -12,4 +14,4 @@ export function generate(arb) {
12
14
  export function generateFromArbitrary(arb) {
13
15
  return generate(arb(FastCheck));
14
16
  }
15
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJicy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9hcmJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLDRCQUE0QjtBQUU1QixPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFFdkMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGtCQUFrQixDQUFBO0FBQzNDLE9BQU8sS0FBSyxTQUFTLE1BQU0sMEJBQTBCLENBQUE7QUFDckQsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFlBQVksQ0FBQTtBQUNuQyxPQUFPLEtBQUssSUFBSSxNQUFNLFdBQVcsQ0FBQTtBQUVqQyxNQUFNLEdBQUcsR0FBRyxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUE7QUFFOUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFBO0FBRWYsTUFBTSxVQUFVLFFBQVEsQ0FBSSxHQUEyQjtJQUNyRCxPQUFPLEdBQUcsQ0FBQyxRQUFRLENBQUMsR0FBRyxFQUFFLFNBQVMsQ0FBQyxDQUFBO0FBQ3JDLENBQUM7QUFFRCxNQUFNLFVBQVUscUJBQXFCLENBQUksR0FBdUI7SUFDOUQsT0FBTyxRQUFRLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUE7QUFDakMsQ0FBQyJ9
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJicy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9hcmJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLDRCQUE0QjtBQUU1QixPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFFdkMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGtCQUFrQixDQUFBO0FBQzNDLE9BQU8sS0FBSyxTQUFTLE1BQU0sMEJBQTBCLENBQUE7QUFDckQsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFlBQVksQ0FBQTtBQUNuQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0NBQW9DLENBQUE7QUFFbkUsTUFBTSxJQUFJLEdBQUcsQ0FBQyxDQUFBO0FBQ2QsTUFBTSxHQUFHLEdBQUcsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFBO0FBQ2hDLE1BQU0sR0FBRyxHQUFHLElBQUksTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFBO0FBRTNCLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQTtBQUVmLE1BQU0sVUFBVSxRQUFRLENBQUksR0FBMkI7SUFDckQsT0FBTyxHQUFHLENBQUMsUUFBUSxDQUFDLEdBQUcsRUFBRSxTQUFTLENBQUMsQ0FBQTtBQUNyQyxDQUFDO0FBRUQsTUFBTSxVQUFVLHFCQUFxQixDQUFJLEdBQXVCO0lBQzlELE9BQU8sUUFBUSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFBO0FBQ2pDLENBQUMifQ==