@effect-app/infra 1.38.0 → 1.39.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,12 @@
1
1
  # @effect-app/infra
2
2
 
3
+ ## 1.39.0
4
+
5
+ ### Minor Changes
6
+
7
+ - 3d37a85: improve: moduleName as const
8
+ - 2629d43: add routing2's effectful route construction
9
+
3
10
  ## 1.38.0
4
11
 
5
12
  ### Minor Changes
@@ -57,7 +57,6 @@ const makeRouter = (middleware, devMode) => {
57
57
  const rpc = (0, _DynamicMiddleware.makeRpc)(middleware);
58
58
  function matchFor(rsc) {
59
59
  const meta = rsc.meta;
60
- if (!meta) throw new Error("Resource has no meta specified"); // TODO: do something with moduleName+cur etc.
61
60
  const filtered = (0, _utils.typedKeysOf)(rsc).reduce((acc, cur) => {
62
61
  if (_effectApp.Predicate.isObject(rsc[cur]) && rsc[cur]["success"]) {
63
62
  acc[cur] = rsc[cur];
@@ -1 +1 @@
1
- {"version":3,"file":"routing.cjs","names":["_Effect","require","_utils","_rpc","_schema","_effectApp","_http","_errorReporter","_logger","_DynamicMiddleware","logRequestError","logError","reportRequestError","reportError","toHttpApp","self","options","handler","RpcRouter","toHandler","Effect","withFiberRuntime","fiber","context","getFiberRef","FiberRef","currentContext","request","Context","unsafeGet","HttpServerRequest","flatMap","json","_","pipe","Stream","provideContext","runCollect","map","Chunk","toReadonlyArray","andThen","status","r","flat","results","Array","isArray","some","_tag","cause","HttpServerResponse","orDie","tapDefect","exports","makeRouter","middleware","devMode","rpc","makeRpc","matchFor","rsc","meta","Error","filtered","typedKeysOf","reduce","acc","cur","Predicate","isObject","matchWithServices","action","services","f","req","all","svc","allLower","ctx","makeContext","Response","success","controllers","mapped","effect","S","encodedSchema","Serializable","symbol","constructor","symbolResult","failure","annotateCurrentSpan","Object","entries","prev","key","value","length","substring","undefined","keys","zipRight","tapErrorCause","Cause","isFailure","void","moduleName","Rpc","currentHeaders","headers","InfraLogger","annotateLogs","pretty","catchAllDefect","die","withSpan","captureStackTrace","stack","router","make","values","HttpRouter","empty","spanPrefix","uninterruptible","svcOrFnOrEffect","fnOrNone","split","slice","join","isEffect","matchAll","handlers","concat"],"sources":["../../src/api/routing.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"routing.cjs","names":["_Effect","require","_utils","_rpc","_schema","_effectApp","_http","_errorReporter","_logger","_DynamicMiddleware","logRequestError","logError","reportRequestError","reportError","toHttpApp","self","options","handler","RpcRouter","toHandler","Effect","withFiberRuntime","fiber","context","getFiberRef","FiberRef","currentContext","request","Context","unsafeGet","HttpServerRequest","flatMap","json","_","pipe","Stream","provideContext","runCollect","map","Chunk","toReadonlyArray","andThen","status","r","flat","results","Array","isArray","some","_tag","cause","HttpServerResponse","orDie","tapDefect","exports","makeRouter","middleware","devMode","rpc","makeRpc","matchFor","rsc","meta","filtered","typedKeysOf","reduce","acc","cur","Predicate","isObject","matchWithServices","action","services","f","req","all","svc","allLower","ctx","makeContext","Response","success","controllers","mapped","effect","S","encodedSchema","Serializable","symbol","constructor","symbolResult","failure","annotateCurrentSpan","Object","entries","prev","key","value","length","substring","undefined","keys","zipRight","tapErrorCause","Cause","isFailure","void","moduleName","Rpc","currentHeaders","headers","InfraLogger","annotateLogs","pretty","catchAllDefect","die","withSpan","captureStackTrace","stack","router","make","values","HttpRouter","empty","spanPrefix","uninterruptible","svcOrFnOrEffect","fnOrNone","Error","split","slice","join","isEffect","matchAll","handlers","concat"],"sources":["../../src/api/routing.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -58,7 +58,6 @@ const makeRouter = (middleware, devMode) => {
58
58
  const rpc = (0, _DynamicMiddleware.makeRpc)(middleware);
59
59
  function matchFor(rsc) {
60
60
  const meta = rsc.meta;
61
- if (!meta) throw new Error("Resource has no meta specified"); // TODO: do something with moduleName+cur etc.
62
61
  const filtered = (0, _utils.typedKeysOf)(rsc).reduce((acc, cur) => {
63
62
  if (_effectApp.Predicate.isObject(rsc[cur]) && rsc[cur]["success"]) {
64
63
  acc[cur] = rsc[cur];
@@ -120,7 +119,7 @@ const makeRouter = (middleware, devMode) => {
120
119
  return acc;
121
120
  }, {});
122
121
  const rpcRouter = _rpc.RpcRouter.make(...Object.values(mapped));
123
- const r = class Router extends _http.HttpRouter.Tag(meta.moduleName + "Router")() {};
122
+ const r = class Router extends _http.HttpRouter.Tag(`${meta.moduleName}Router`)() {};
124
123
  const layer = r.use(router => _effectApp.Effect.gen(function* () {
125
124
  const httpApp = toHttpApp(rpcRouter, {
126
125
  spanPrefix: rsc.meta.moduleName + "."
@@ -140,7 +139,73 @@ const makeRouter = (middleware, devMode) => {
140
139
  routes
141
140
  };
142
141
  };
142
+ const effect = (layers, make) => {
143
+ const r = class Router extends _http.HttpRouter.Tag(`${meta.moduleName}Router`)() {};
144
+ const layer = r.use(router => _effectApp.Effect.gen(function* () {
145
+ const controllers = yield* make;
146
+ // return make.pipe(Effect.map((c) => controllers(c, layers)))
147
+ const mapped = (0, _utils.typedKeysOf)(filtered).reduce((acc, cur) => {
148
+ const handler = controllers[cur];
149
+ const req = rsc[cur];
150
+ acc[cur] = rpc.effect(handler._tag === "raw" ? class extends req {
151
+ static success = _effectApp.S.encodedSchema(req.success);
152
+ get [_schema.Serializable.symbol]() {
153
+ return this.constructor;
154
+ }
155
+ get [_schema.Serializable.symbolResult]() {
156
+ return {
157
+ failure: req.failure,
158
+ success: _effectApp.S.encodedSchema(req.success)
159
+ };
160
+ }
161
+ } : req, req => _effectApp.Effect.annotateCurrentSpan("requestInput", Object.entries(req).reduce((prev, [key, value]) => {
162
+ prev[key] = key === "password" ? "<redacted>" : typeof value === "string" || typeof value === "number" || typeof value === "boolean" ? typeof value === "string" && value.length > 256 ? value.substring(0, 253) + "..." : value : Array.isArray(value) ? `Array[${value.length}]` : value === null || value === undefined ? `${value}` : typeof value === "object" && value ? `Object[${Object.keys(value).length}]` : typeof value;
163
+ return prev;
164
+ }, {})).pipe(
165
+ // can't use andThen due to some being a function and effect
166
+ _effectApp.Effect.zipRight(handler.handler(req)), _effectApp.Effect.tapErrorCause(cause => _effectApp.Cause.isFailure(cause) ? logRequestError(cause) : _effectApp.Effect.void), _effectApp.Effect.tapDefect(cause => _effectApp.Effect.all([reportRequestError(cause, {
167
+ action: `${meta.moduleName}.${req._tag}`
168
+ }), _rpc.Rpc.currentHeaders.pipe(_effectApp.Effect.andThen(headers => {
169
+ return _logger.InfraLogger.logError("Finished request", cause).pipe(_effectApp.Effect.annotateLogs({
170
+ action: `${meta.moduleName}.${req._tag}`,
171
+ req: (0, _utils.pretty)(req),
172
+ headers: (0, _utils.pretty)(headers)
173
+ // resHeaders: pretty(
174
+ // Object
175
+ // .entries(headers)
176
+ // .reduce((prev, [key, value]) => {
177
+ // prev[key] = value && typeof value === "string" ? snipString(value) : value
178
+ // return prev
179
+ // }, {} as Record<string, any>)
180
+ // )
181
+ }));
182
+ }))])), devMode ? _ => _ : _effectApp.Effect.catchAllDefect(() => _effectApp.Effect.die("Internal Server Error")), _effectApp.Effect.withSpan("Request." + meta.moduleName + "." + req._tag, {
183
+ captureStackTrace: () => handler.stack
184
+ })), meta.moduleName); // TODO
185
+ return acc;
186
+ }, {});
187
+ const rpcRouter = _rpc.RpcRouter.make(...Object.values(mapped));
188
+ const httpApp = toHttpApp(rpcRouter, {
189
+ spanPrefix: rsc.meta.moduleName + "."
190
+ });
191
+ const services = (yield* _effectApp.Effect.context()).pipe(_effectApp.Context.omit(_effectApp.Scope.Scope), _effectApp.Context.omit(_effectApp.Tracer.ParentSpan));
192
+ yield* router.all("/", httpApp.pipe(_http.HttpMiddleware.make(_effectApp.Effect.provide(services))),
193
+ // TODO: not queries.
194
+ {
195
+ uninterruptible: true
196
+ });
197
+ }));
198
+ // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion
199
+ const routes = layer.pipe(_effectApp.Layer.provideMerge(r.Live), layers ? _effectApp.Layer.provide(layers) : _ => _);
200
+ // Effect.Effect<HttpRouter.HttpRouter<unknown, HttpRouter.HttpRouter.DefaultServices>, never, UserRouter>
201
+ return {
202
+ moduleName: meta.moduleName,
203
+ Router: r,
204
+ routes
205
+ };
206
+ };
143
207
  const r = {
208
+ effect,
144
209
  controllers,
145
210
  ...(0, _utils.typedKeysOf)(filtered).reduce((prev, cur) => {
146
211
  ;
@@ -1 +1 @@
1
- {"version":3,"file":"routing2.cjs","names":["_Effect","require","_utils","_rpc","_schema","_effectApp","_http","_errorReporter","_logger","_DynamicMiddleware","logRequestError","logError","reportRequestError","reportError","toHttpApp","self","options","handler","RpcRouter","toHandler","Effect","withFiberRuntime","fiber","context","getFiberRef","FiberRef","currentContext","request","Context","unsafeGet","HttpServerRequest","flatMap","json","_","pipe","Stream","provideContext","runCollect","map","Chunk","toReadonlyArray","andThen","status","r","flat","results","Array","isArray","some","_tag","cause","HttpServerResponse","orDie","tapDefect","exports","RouterSymbol","Symbol","makeRouter","middleware","devMode","rpc","makeRpc","matchFor","rsc","meta","Error","filtered","typedKeysOf","reduce","acc","cur","Predicate","isObject","matchWithServices","action","services","f","req","all","svc","allLower","ctx","makeContext","Response","success","controllers","layers","mapped","effect","S","encodedSchema","Serializable","symbol","constructor","symbolResult","failure","annotateCurrentSpan","Object","entries","prev","key","value","length","substring","undefined","keys","zipRight","tapErrorCause","Cause","isFailure","void","moduleName","Rpc","currentHeaders","headers","InfraLogger","annotateLogs","pretty","catchAllDefect","die","withSpan","captureStackTrace","stack","rpcRouter","make","values","Router","HttpRouter","Tag","layer","use","router","gen","httpApp","spanPrefix","omit","Scope","Tracer","ParentSpan","HttpMiddleware","provide","uninterruptible","routes","Layer","provideMerge","Live","svcOrFnOrEffect","fnOrNone","split","slice","join","isEffect","matchAll","handlers","requestLayer","routers","typedValuesOf","rootRouter","route","mount","flow"],"sources":["../../src/api/routing2.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"routing2.cjs","names":["_Effect","require","_utils","_rpc","_schema","_effectApp","_http","_errorReporter","_logger","_DynamicMiddleware","logRequestError","logError","reportRequestError","reportError","toHttpApp","self","options","handler","RpcRouter","toHandler","Effect","withFiberRuntime","fiber","context","getFiberRef","FiberRef","currentContext","request","Context","unsafeGet","HttpServerRequest","flatMap","json","_","pipe","Stream","provideContext","runCollect","map","Chunk","toReadonlyArray","andThen","status","r","flat","results","Array","isArray","some","_tag","cause","HttpServerResponse","orDie","tapDefect","exports","RouterSymbol","Symbol","makeRouter","middleware","devMode","rpc","makeRpc","matchFor","rsc","meta","filtered","typedKeysOf","reduce","acc","cur","Predicate","isObject","matchWithServices","action","services","f","req","all","svc","allLower","ctx","makeContext","Response","success","controllers","layers","mapped","effect","S","encodedSchema","Serializable","symbol","constructor","symbolResult","failure","annotateCurrentSpan","Object","entries","prev","key","value","length","substring","undefined","keys","zipRight","tapErrorCause","Cause","isFailure","void","moduleName","Rpc","currentHeaders","headers","InfraLogger","annotateLogs","pretty","catchAllDefect","die","withSpan","captureStackTrace","stack","rpcRouter","make","values","Router","HttpRouter","Tag","layer","use","router","gen","httpApp","spanPrefix","omit","Scope","Tracer","ParentSpan","HttpMiddleware","provide","uninterruptible","routes","Layer","provideMerge","Live","svcOrFnOrEffect","fnOrNone","Error","split","slice","join","isEffect","matchAll","handlers","requestLayer","routers","typedValuesOf","rootRouter","route","mount","flow"],"sources":["../../src/api/routing2.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -59,11 +59,11 @@ export declare const makeRouter: <Context, CTXMap extends Record<string, RPCCont
59
59
  matchAll: <T extends {
60
60
  [key: string]: HttpRouter.HttpRouter<any, any>;
61
61
  }>(handlers: T) => HttpRouter.HttpRouter<[T[keyof T]] extends [HttpRouter.HttpRouter<infer E, any>] ? E : never, [T[keyof T]] extends [HttpRouter.HttpRouter<any, infer R>] ? R : never>;
62
- matchFor: <Rsc extends Record<string, any> & {
62
+ matchFor: <const ModuleName extends string, const Rsc extends Record<string, any>>(rsc: Rsc & {
63
63
  meta: {
64
- moduleName: string;
64
+ moduleName: ModuleName;
65
65
  };
66
- }>(rsc: Rsc) => {
66
+ }) => {
67
67
  controllers: <THandlers extends { [K in keyof Filter<Rsc>]: AHandler<Rsc[K]>; }>(controllers: THandlers) => HttpRouter.HttpRouter<HttpServerError.RequestError, Exclude<[(keyof Filter<Rsc> extends infer T extends keyof Filter<Rsc> ? { [K in T]: Rpc.Rpc<Rsc[K], _R<ReturnType<THandlers[K]["handler"]>>>; } : never)[keyof Filter<Rsc>]] extends [Rpc.Rpc<any, infer R>] ? R : never, HttpRouter.HttpRouter.Provided> | Exclude<Serializable.SerializableWithResult.Context<[(keyof Filter<Rsc> extends infer T extends keyof Filter<Rsc> ? { [K in T]: Rpc.Rpc<Rsc[K], _R<ReturnType<THandlers[K]["handler"]>>>; } : never)[keyof Filter<Rsc>]] extends [Rpc.Rpc<infer Req extends S.TaggedRequest.All, any>] ? Req : never>, HttpRouter.HttpRouter.Provided>>;
68
68
  } & { [Key in keyof Filter<Rsc>]: {
69
69
  <R2, E, A>(f: Effect<A, E, R2>): HandleVoid<S.Schema.Type<GetSuccess<Rsc[Key]>>, A, Handler<Rsc[Key], "d", A, E, Exclude<R2, GetEffectContext<CTXMap, Rsc[Key]["config"]>>>>;
@@ -1 +1 @@
1
- {"version":3,"file":"routing.d.ts","sourceRoot":"","sources":["../../src/api/routing.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"routing.d.ts","sourceRoot":"","sources":["../../src/api/routing.ts"],"names":[],"mappings":"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"}
@@ -48,8 +48,6 @@ export const makeRouter = (middleware, devMode) => {
48
48
  const rpc = makeRpc(middleware);
49
49
  function matchFor(rsc) {
50
50
  const meta = rsc.meta;
51
- if (!meta)
52
- throw new Error("Resource has no meta specified"); // TODO: do something with moduleName+cur etc.
53
51
  const filtered = typedKeysOf(rsc).reduce((acc, cur) => {
54
52
  if (Predicate.isObject(rsc[cur]) && rsc[cur]["success"]) {
55
53
  acc[cur] = rsc[cur];
@@ -185,4 +183,4 @@ export const makeRouter = (middleware, devMode) => {
185
183
  }
186
184
  return { matchAll, matchFor };
187
185
  };
188
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGluZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hcGkvcm91dGluZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwwREFBMEQ7QUFDMUQsNERBQTREO0FBQzVELHVEQUF1RDtBQUN2RDs7O0VBR0U7QUFDRixPQUFPLEVBQUUsUUFBUSxFQUE0QyxNQUFNLHlCQUF5QixDQUFBO0FBQzVGLE9BQU8sRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFLE1BQU0sd0JBQXdCLENBQUE7QUFHNUQsT0FBTyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsTUFBTSxhQUFhLENBQUE7QUFDNUMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBQzdDLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxDQUFDLEVBQUUsTUFBTSxFQUFFLE1BQU0sWUFBWSxDQUFBO0FBRzFGLE9BQU8sRUFBRSxVQUFVLEVBQUUsaUJBQWlCLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUNuRixPQUFPLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBQzNELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxjQUFjLENBQUE7QUFFMUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGdDQUFnQyxDQUFBO0FBRXhELE1BQU0sZUFBZSxHQUFHLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FBQTtBQUMzQyxNQUFNLGtCQUFrQixHQUFHLFdBQVcsQ0FBQyxTQUFTLENBQUMsQ0FBQTtBQWVqRDs7O0dBR0c7QUFDSCxNQUFNLENBQUMsTUFBTSxTQUFTLEdBQUcsQ0FBMEMsSUFBTyxFQUFFLE9BRTNFLEVBR0MsRUFBRTtJQUNGLE1BQU0sT0FBTyxHQUFHLFNBQVMsQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFB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
186
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGluZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hcGkvcm91dGluZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwwREFBMEQ7QUFDMUQsNERBQTREO0FBQzVELHVEQUF1RDtBQUN2RDs7O0VBR0U7QUFDRixPQUFPLEVBQUUsUUFBUSxFQUE0QyxNQUFNLHlCQUF5QixDQUFBO0FBQzVGLE9BQU8sRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFLE1BQU0sd0JBQXdCLENBQUE7QUFHNUQsT0FBTyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsTUFBTSxhQUFhLENBQUE7QUFDNUMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBQzdDLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxDQUFDLEVBQUUsTUFBTSxFQUFFLE1BQU0sWUFBWSxDQUFBO0FBRzFGLE9BQU8sRUFBRSxVQUFVLEVBQUUsaUJBQWlCLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUNuRixPQUFPLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBQzNELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxjQUFjLENBQUE7QUFFMUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGdDQUFnQyxDQUFBO0FBRXhELE1BQU0sZUFBZSxHQUFHLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FBQTtBQUMzQyxNQUFNLGtCQUFrQixHQUFHLFdBQVcsQ0FBQyxTQUFTLENBQUMsQ0FBQTtBQWVqRDs7O0dBR0c7QUFDSCxNQUFNLENBQUMsTUFBTSxTQUFTLEdBQUcsQ0FBMEMsSUFBTyxFQUFFLE9BRTNFLEVBR0MsRUFBRTtJQUNGLE1BQU0sT0FBTyxHQUFHLFNBQVMsQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFB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
@@ -56,9 +56,12 @@ export interface ExtendedMiddleware<Context, CTXMap extends Record<string, RPCCo
56
56
  }, never, never>;
57
57
  }
58
58
  export declare const RouterSymbol: unique symbol;
59
- export interface RouterS<Rsc> {
59
+ export interface RouterShape<Rsc> {
60
60
  [RouterSymbol]: Rsc;
61
61
  }
62
+ type RPCRouteR<T extends Rpc.Rpc<any, any>> = [T] extends [
63
+ Rpc.Rpc<any, infer R>
64
+ ] ? R : never;
62
65
  export declare const makeRouter: <Context, CTXMap extends Record<string, RPCContextMap.Any>>(middleware: ExtendedMiddleware<Context, CTXMap>, devMode: boolean) => {
63
66
  matchAll: <T extends {
64
67
  [key: string]: {
@@ -72,15 +75,20 @@ export declare const makeRouter: <Context, CTXMap extends Record<string, RPCCont
72
75
  layer: Layer.Layer<never, Layer.Layer.Error<(typeof handlers)[keyof typeof handlers]["routes"]>, Layer.Layer.Context<(typeof handlers)[keyof typeof handlers]["routes"]>>;
73
76
  Router: HttpRouter.HttpRouter.TagClass<"RootRouter", "RootRouter", Effect.Effect.Success<T[keyof T]["Router"]["router"]> extends infer T_1 ? T_1 extends Effect.Effect.Success<T[keyof T]["Router"]["router"]> ? T_1 extends HttpRouter.HttpRouter<infer E_1, any> ? E_1 : never : never : never, R | Exclude<Effect.Effect.Success<T[keyof T]["Router"]["router"]> extends infer T_2 ? T_2 extends Effect.Effect.Success<T[keyof T]["Router"]["router"]> ? T_2 extends HttpRouter.HttpRouter<any, infer R_1> ? R_1 : never : never : never, A>>;
74
77
  };
75
- matchFor: <Rsc extends Record<string, any> & {
78
+ matchFor: <const ModuleName extends string, const Rsc extends Record<string, any>>(rsc: Rsc & {
76
79
  meta: {
77
- moduleName: string;
80
+ moduleName: ModuleName;
78
81
  };
79
- }>(rsc: Rsc) => {
80
- controllers: <THandlers extends { [K in keyof Filter<Rsc>]: AHandler<Rsc[K]>; }, TLayers extends NonEmptyArray<Layer.Layer.Any>>(controllers: THandlers, layers?: TLayers) => {
81
- moduleName: string;
82
- Router: HttpRouter.HttpRouter.TagClass<RouterS<Rsc>, string, never, Exclude<[{ [K in keyof Filter<Rsc>]: Rpc.Rpc<Rsc[K], _R<ReturnType<THandlers[K]["handler"]>>>; }[keyof Filter<Rsc>]] extends [Rpc.Rpc<any, infer R_1>] ? R_1 : never, { [k in keyof TLayers]: Layer.Layer.Success<TLayers[k]>; }[number]>>;
83
- routes: Layer.Layer<RouterS<Rsc>, { [k_1 in keyof TLayers]: Layer.Layer.Error<TLayers[k_1]>; }[number], { [k_2 in keyof TLayers]: Layer.Layer.Context<TLayers[k_2]>; }[number]>;
82
+ }) => {
83
+ effect: <E_1, R_1, THandlers extends { [K in keyof Filter<Rsc>]: AHandler<Rsc[K]>; }, TLayers extends NonEmptyArray<Layer.Layer.Any>>(layers: TLayers, make: Effect<THandlers, E_1, R_1>) => {
84
+ moduleName: ModuleName;
85
+ Router: HttpRouter.HttpRouter.TagClass<RouterShape<Rsc>, `${ModuleName}Router`, never, Exclude<RPCRouteR<{ [K in keyof Filter<Rsc>]: Rpc.Rpc<Rsc[K], _R<ReturnType<THandlers[K]["handler"]>>>; }[keyof Filter<Rsc>]>, { [k in keyof TLayers]: Layer.Layer.Success<TLayers[k]>; }[number]>>;
86
+ routes: Layer.Layer<RouterShape<Rsc>, E_1 | { [k_1 in keyof TLayers]: Layer.Layer.Error<TLayers[k_1]>; }[number], { [k_2 in keyof TLayers]: Layer.Layer.Context<TLayers[k_2]>; }[number] | Exclude<R_1, { [k_3 in keyof TLayers]: Layer.Layer.Success<TLayers[k_3]>; }[number]>>;
87
+ };
88
+ controllers: <THandlers_1 extends { [K in keyof Filter<Rsc>]: AHandler<Rsc[K]>; }, TLayers_1 extends NonEmptyArray<Layer.Layer.Any>>(controllers: THandlers_1, layers?: TLayers_1) => {
89
+ moduleName: ModuleName;
90
+ Router: HttpRouter.HttpRouter.TagClass<RouterShape<Rsc>, `${ModuleName}Router`, never, Exclude<RPCRouteR<{ [K in keyof Filter<Rsc>]: Rpc.Rpc<Rsc[K], _R<ReturnType<THandlers_1[K]["handler"]>>>; }[keyof Filter<Rsc>]>, { [k in keyof TLayers_1]: Layer.Layer.Success<TLayers_1[k]>; }[number]>>;
91
+ routes: Layer.Layer<RouterShape<Rsc>, { [k_1 in keyof TLayers_1]: Layer.Layer.Error<TLayers_1[k_1]>; }[number], { [k_2 in keyof TLayers_1]: Layer.Layer.Context<TLayers_1[k_2]>; }[number]>;
84
92
  };
85
93
  } & { [Key in keyof Filter<Rsc>]: {
86
94
  <R2, E_1, A_1>(f: Effect<A_1, E_1, R2>): HandleVoid<S.Schema.Type<GetSuccess<Rsc[Key]>>, A_1, Handler<Rsc[Key], "d", A_1, E_1, Exclude<R2, GetEffectContext<CTXMap, Rsc[Key]["config"]>>>>;
@@ -1 +1 @@
1
- {"version":3,"file":"routing2.d.ts","sourceRoot":"","sources":["../../src/api/routing2.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"routing2.d.ts","sourceRoot":"","sources":["../../src/api/routing2.ts"],"names":[],"mappings":"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"}
@@ -49,8 +49,6 @@ export const makeRouter = (middleware, devMode) => {
49
49
  const rpc = makeRpc(middleware);
50
50
  function matchFor(rsc) {
51
51
  const meta = rsc.meta;
52
- if (!meta)
53
- throw new Error("Resource has no meta specified"); // TODO: do something with moduleName+cur etc.
54
52
  const filtered = typedKeysOf(rsc).reduce((acc, cur) => {
55
53
  if (Predicate.isObject(rsc[cur]) && rsc[cur]["success"]) {
56
54
  acc[cur] = rsc[cur];
@@ -124,7 +122,7 @@ export const makeRouter = (middleware, devMode) => {
124
122
  return acc;
125
123
  }, {});
126
124
  const rpcRouter = RpcRouter.make(...Object.values(mapped));
127
- const r = (class Router extends HttpRouter.Tag(meta.moduleName + "Router")() {
125
+ const r = (class Router extends HttpRouter.Tag(`${meta.moduleName}Router`)() {
128
126
  });
129
127
  const layer = r.use((router) => Effect.gen(function* () {
130
128
  const httpApp = toHttpApp(rpcRouter, {
@@ -147,7 +145,98 @@ export const makeRouter = (middleware, devMode) => {
147
145
  routes
148
146
  };
149
147
  };
148
+ const effect = (layers, make) => {
149
+ const r = (class Router extends HttpRouter.Tag(`${meta.moduleName}Router`)() {
150
+ });
151
+ const layer = r.use((router) => Effect.gen(function* () {
152
+ const controllers = yield* make;
153
+ // return make.pipe(Effect.map((c) => controllers(c, layers)))
154
+ const mapped = typedKeysOf(filtered).reduce((acc, cur) => {
155
+ const handler = controllers[cur];
156
+ const req = rsc[cur];
157
+ acc[cur] = rpc.effect(handler._tag === "raw"
158
+ ? class extends req {
159
+ static success = S.encodedSchema(req.success);
160
+ get [Serializable.symbol]() {
161
+ return this.constructor;
162
+ }
163
+ get [Serializable.symbolResult]() {
164
+ return {
165
+ failure: req.failure,
166
+ success: S.encodedSchema(req.success)
167
+ };
168
+ }
169
+ }
170
+ : req, (req) => Effect
171
+ .annotateCurrentSpan("requestInput", Object.entries(req).reduce((prev, [key, value]) => {
172
+ prev[key] = key === "password"
173
+ ? "<redacted>"
174
+ : typeof value === "string" || typeof value === "number" || typeof value === "boolean"
175
+ ? typeof value === "string" && value.length > 256
176
+ ? (value.substring(0, 253) + "...")
177
+ : value
178
+ : Array.isArray(value)
179
+ ? `Array[${value.length}]`
180
+ : value === null || value === undefined
181
+ ? `${value}`
182
+ : typeof value === "object" && value
183
+ ? `Object[${Object.keys(value).length}]`
184
+ : typeof value;
185
+ return prev;
186
+ }, {}))
187
+ .pipe(
188
+ // can't use andThen due to some being a function and effect
189
+ Effect.zipRight(handler.handler(req)), Effect.tapErrorCause((cause) => Cause.isFailure(cause) ? logRequestError(cause) : Effect.void), Effect.tapDefect((cause) => Effect
190
+ .all([
191
+ reportRequestError(cause, {
192
+ action: `${meta.moduleName}.${req._tag}`
193
+ }),
194
+ Rpc.currentHeaders.pipe(Effect.andThen((headers) => {
195
+ return InfraLogger
196
+ .logError("Finished request", cause)
197
+ .pipe(Effect.annotateLogs({
198
+ action: `${meta.moduleName}.${req._tag}`,
199
+ req: pretty(req),
200
+ headers: pretty(headers)
201
+ // resHeaders: pretty(
202
+ // Object
203
+ // .entries(headers)
204
+ // .reduce((prev, [key, value]) => {
205
+ // prev[key] = value && typeof value === "string" ? snipString(value) : value
206
+ // return prev
207
+ // }, {} as Record<string, any>)
208
+ // )
209
+ }));
210
+ }))
211
+ ])), devMode ? (_) => _ : Effect.catchAllDefect(() => Effect.die("Internal Server Error")), Effect.withSpan("Request." + meta.moduleName + "." + req._tag, {
212
+ captureStackTrace: () => handler.stack
213
+ })), meta.moduleName); // TODO
214
+ return acc;
215
+ }, {});
216
+ const rpcRouter = RpcRouter.make(...Object.values(mapped));
217
+ const httpApp = toHttpApp(rpcRouter, {
218
+ spanPrefix: rsc
219
+ .meta
220
+ .moduleName + "."
221
+ });
222
+ const services = (yield* Effect.context()).pipe(Context.omit(Scope.Scope), Context.omit(Tracer.ParentSpan));
223
+ yield* router
224
+ .all("/", (httpApp
225
+ .pipe(HttpMiddleware.make(Effect.provide(services)))),
226
+ // TODO: not queries.
227
+ { uninterruptible: true });
228
+ }));
229
+ // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion
230
+ const routes = layer.pipe(Layer.provideMerge(r.Live), layers ? Layer.provide(layers) : (_) => _);
231
+ // Effect.Effect<HttpRouter.HttpRouter<unknown, HttpRouter.HttpRouter.DefaultServices>, never, UserRouter>
232
+ return {
233
+ moduleName: meta.moduleName,
234
+ Router: r,
235
+ routes
236
+ };
237
+ };
150
238
  const r = {
239
+ effect,
151
240
  controllers,
152
241
  ...typedKeysOf(filtered).reduce((prev, cur) => {
153
242
  ;
@@ -218,4 +307,4 @@ export const makeRouter = (middleware, devMode) => {
218
307
  }
219
308
  return { matchAll, matchFor };
220
309
  };
221
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGluZzIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYXBpL3JvdXRpbmcyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLDBEQUEwRDtBQUMxRCw0REFBNEQ7QUFDNUQsdURBQXVEO0FBQ3ZEOzs7RUFHRTtBQUNGLE9BQU8sRUFBRSxRQUFRLEVBQTRDLE1BQU0seUJBQXlCLENBQUE7QUFDNUYsT0FBTyxFQUFFLE1BQU0sRUFBRSxXQUFXLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUE7QUFHM0UsT0FBTyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsTUFBTSxhQUFhLENBQUE7QUFDNUMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBRTdDLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLENBQUMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLFlBQVksQ0FBQTtBQUd0SCxPQUFPLEVBQUUsY0FBYyxFQUFFLFVBQVUsRUFBRSxpQkFBaUIsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBQ25HLE9BQU8sRUFBRSxRQUFRLEVBQUUsV0FBVyxFQUFFLE1BQU0scUJBQXFCLENBQUE7QUFDM0QsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGNBQWMsQ0FBQTtBQUUxQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sZ0NBQWdDLENBQUE7QUFFeEQsTUFBTSxlQUFlLEdBQUcsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFBO0FBQzNDLE1BQU0sa0JBQWtCLEdBQUcsV0FBVyxDQUFDLFNBQVMsQ0FBQyxDQUFBO0FBZWpEOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRyxDQUEwQyxJQUFPLEVBQUUsT0FFM0UsRUFHQyxFQUFFO0lB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
310
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGluZzIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYXBpL3JvdXRpbmcyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLDBEQUEwRDtBQUMxRCw0REFBNEQ7QUFDNUQsdURBQXVEO0FBQ3ZEOzs7RUFHRTtBQUNGLE9BQU8sRUFBRSxRQUFRLEVBQTRDLE1BQU0seUJBQXlCLENBQUE7QUFDNUYsT0FBTyxFQUFFLE1BQU0sRUFBRSxXQUFXLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUE7QUFHM0UsT0FBTyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsTUFBTSxhQUFhLENBQUE7QUFDNUMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBRTdDLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLENBQUMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLFlBQVksQ0FBQTtBQUd0SCxPQUFPLEVBQUUsY0FBYyxFQUFFLFVBQVUsRUFBRSxpQkFBaUIsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBQ25HLE9BQU8sRUFBRSxRQUFRLEVBQUUsV0FBVyxFQUFFLE1BQU0scUJBQXFCLENBQUE7QUFDM0QsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGNBQWMsQ0FBQTtBQUUxQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sZ0NBQWdDLENBQUE7QUFFeEQsTUFBTSxlQUFlLEdBQUcsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFBO0FBQzNDLE1BQU0sa0JBQWtCLEdBQUcsV0FBVyxDQUFDLFNBQVMsQ0FBQyxDQUFBO0FBZWpEOzs7R0FHRztBQUNILE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRyxDQUEwQyxJQUFPLEVBQUUsT0FFM0UsRUFHQyxFQUFFO0lB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
@@ -26,7 +26,7 @@ export declare function byIdAndSaveWithPure<T extends {
26
26
  id: unknown;
27
27
  }, Encoded extends {
28
28
  id: string;
29
- }, Evt, ItemType extends string>(self: RepositoryBaseC<T, Encoded, Evt, ItemType>, id: T["id"]): <R, A, E, S2 extends T>(pure: Effect<A, E, FixEnv<R, Evt, T, S2>>) => Effect.Effect<A, E | import("effect-app/client/errors").InvalidStateError | import("effect-app/client/errors").OptimisticConcurrencyException | NotFoundError<ItemType>, Exclude<R, {
29
+ }, Evt, ItemType extends string>(self: RepositoryBaseC<T, Encoded, Evt, ItemType>, id: T["id"]): <R, A, E, S2 extends T>(pure: Effect<A, E, FixEnv<R, Evt, T, S2>>) => Effect.Effect<A, import("effect-app/client/errors").OptimisticConcurrencyException | E | import("effect-app/client/errors").InvalidStateError | NotFoundError<ItemType>, Exclude<R, {
30
30
  env: import("effect-app/Pure").PureEnv<Evt, T, S2>;
31
31
  }>>;
32
32
  /**
@@ -39,7 +39,7 @@ export declare function handleByIdAndSaveWithPure<T extends {
39
39
  id: string;
40
40
  }, Evt, ItemType extends string>(self: RepositoryBaseC<T, Encoded, Evt, ItemType>): <Req extends {
41
41
  id: T["id"];
42
- }, Context, R, A, E, S2 extends T>(pure: (req: Req, ctx: Context) => Effect<A, E, FixEnv<R, Evt, T, S2>>) => (req: Req, ctx: Context) => Effect.Effect<A, E | import("effect-app/client/errors").InvalidStateError | import("effect-app/client/errors").OptimisticConcurrencyException | NotFoundError<ItemType>, Exclude<R, {
42
+ }, Context, R, A, E, S2 extends T>(pure: (req: Req, ctx: Context) => Effect<A, E, FixEnv<R, Evt, T, S2>>) => (req: Req, ctx: Context) => Effect.Effect<A, import("effect-app/client/errors").OptimisticConcurrencyException | E | import("effect-app/client/errors").InvalidStateError | NotFoundError<ItemType>, Exclude<R, {
43
43
  env: import("effect-app/Pure").PureEnv<Evt, T, S2>;
44
44
  }>>;
45
45
  /**
@@ -49,7 +49,7 @@ export declare function saveManyWithPure_<R, T extends {
49
49
  id: unknown;
50
50
  }, Encoded extends {
51
51
  id: string;
52
- }, A, E, Evt, S1 extends T, S2 extends T, ItemType extends string>(self: RepositoryBaseC<T, Encoded, Evt, ItemType>, items: Iterable<S1>, pure: Effect<A, E, FixEnv<R, Evt, readonly S1[], readonly S2[]>>): Effect.Effect<A, E | import("effect-app/client/errors").InvalidStateError | import("effect-app/client/errors").OptimisticConcurrencyException, Exclude<R, {
52
+ }, A, E, Evt, S1 extends T, S2 extends T, ItemType extends string>(self: RepositoryBaseC<T, Encoded, Evt, ItemType>, items: Iterable<S1>, pure: Effect<A, E, FixEnv<R, Evt, readonly S1[], readonly S2[]>>): Effect.Effect<A, import("effect-app/client/errors").OptimisticConcurrencyException | E | import("effect-app/client/errors").InvalidStateError, Exclude<R, {
53
53
  env: import("effect-app/Pure").PureEnv<Evt, readonly S1[], readonly S2[]>;
54
54
  }>>;
55
55
  /**
@@ -59,14 +59,14 @@ export declare function saveWithPure_<R, T extends {
59
59
  id: unknown;
60
60
  }, Encoded extends {
61
61
  id: string;
62
- }, A, E, Evt, S1 extends T, S2 extends T, ItemType extends string>(self: RepositoryBaseC<T, Encoded, Evt, ItemType>, item: S1, pure: Effect<A, E, FixEnv<R, Evt, S1, S2>>): Effect.Effect<A, import("effect-app/client/errors").InvalidStateError | import("effect-app/client/errors").OptimisticConcurrencyException | E, Exclude<R, {
62
+ }, A, E, Evt, S1 extends T, S2 extends T, ItemType extends string>(self: RepositoryBaseC<T, Encoded, Evt, ItemType>, item: S1, pure: Effect<A, E, FixEnv<R, Evt, S1, S2>>): Effect.Effect<A, import("effect-app/client/errors").OptimisticConcurrencyException | import("effect-app/client/errors").InvalidStateError | E, Exclude<R, {
63
63
  env: import("effect-app/Pure").PureEnv<Evt, S1, S2>;
64
64
  }>>;
65
65
  export declare function saveAllWithEffectInt<T extends {
66
66
  id: unknown;
67
67
  }, Encoded extends {
68
68
  id: string;
69
- }, P extends T, Evt, ItemType extends string, R, E, A>(self: RepositoryBaseC<T, Encoded, Evt, ItemType>, gen: Effect<readonly [Iterable<P>, Iterable<Evt>, A], E, R>): Effect.Effect<A, E | import("effect-app/client/errors").InvalidStateError | import("effect-app/client/errors").OptimisticConcurrencyException, R>;
69
+ }, P extends T, Evt, ItemType extends string, R, E, A>(self: RepositoryBaseC<T, Encoded, Evt, ItemType>, gen: Effect<readonly [Iterable<P>, Iterable<Evt>, A], E, R>): Effect.Effect<A, import("effect-app/client/errors").OptimisticConcurrencyException | E | import("effect-app/client/errors").InvalidStateError, R>;
70
70
  /**
71
71
  * @tsplus fluent Repository saveManyWithPureBatched
72
72
  */
@@ -74,7 +74,7 @@ export declare function saveManyWithPureBatched<T extends {
74
74
  id: unknown;
75
75
  }, Encoded extends {
76
76
  id: string;
77
- }, Evt, ItemType extends string>(self: RepositoryBaseC<T, Encoded, Evt, ItemType>, batchSize?: number): <R, A, E, S1 extends T, S2 extends T>(pure: Effect<A, E, FixEnv<R, Evt, readonly S1[], readonly S2[]>>) => (items: Iterable<S1>) => Effect.Effect<A[], import("effect-app/client/errors").InvalidStateError | import("effect-app/client/errors").OptimisticConcurrencyException | E, Exclude<R, {
77
+ }, Evt, ItemType extends string>(self: RepositoryBaseC<T, Encoded, Evt, ItemType>, batchSize?: number): <R, A, E, S1 extends T, S2 extends T>(pure: Effect<A, E, FixEnv<R, Evt, readonly S1[], readonly S2[]>>) => (items: Iterable<S1>) => Effect.Effect<A[], import("effect-app/client/errors").OptimisticConcurrencyException | import("effect-app/client/errors").InvalidStateError | E, Exclude<R, {
78
78
  env: import("effect-app/Pure").PureEnv<Evt, readonly S1[], readonly S2[]>;
79
79
  }>>;
80
80
  /**
@@ -84,7 +84,7 @@ export declare function saveManyWithPureBatched_<R, T extends {
84
84
  id: unknown;
85
85
  }, Encoded extends {
86
86
  id: string;
87
- }, A, E, Evt, S1 extends T, S2 extends T, ItemType extends string>(self: RepositoryBaseC<T, Encoded, Evt, ItemType>, items: Iterable<S1>, pure: Effect<A, E, FixEnv<R, Evt, readonly S1[], readonly S2[]>>, batchSize?: number): Effect.Effect<A[], import("effect-app/client/errors").InvalidStateError | import("effect-app/client/errors").OptimisticConcurrencyException | E, Exclude<R, {
87
+ }, A, E, Evt, S1 extends T, S2 extends T, ItemType extends string>(self: RepositoryBaseC<T, Encoded, Evt, ItemType>, items: Iterable<S1>, pure: Effect<A, E, FixEnv<R, Evt, readonly S1[], readonly S2[]>>, batchSize?: number): Effect.Effect<A[], import("effect-app/client/errors").OptimisticConcurrencyException | import("effect-app/client/errors").InvalidStateError | E, Exclude<R, {
88
88
  env: import("effect-app/Pure").PureEnv<Evt, readonly S1[], readonly S2[]>;
89
89
  }>>;
90
90
  /**
@@ -94,7 +94,7 @@ export declare function save<T extends {
94
94
  id: unknown;
95
95
  }, Encoded extends {
96
96
  id: string;
97
- }, Evt, ItemType extends string>(self: RepositoryBaseC<T, Encoded, Evt, ItemType>): (items_0: T, ...items: T[]) => Effect<void, import("effect-app/client/errors").InvalidStateError | import("effect-app/client/errors").OptimisticConcurrencyException>;
97
+ }, Evt, ItemType extends string>(self: RepositoryBaseC<T, Encoded, Evt, ItemType>): (items_0: T, ...items: T[]) => Effect<void, import("effect-app/client/errors").OptimisticConcurrencyException | import("effect-app/client/errors").InvalidStateError>;
98
98
  /**
99
99
  * @tsplus getter Repository saveWithEvents
100
100
  */
@@ -102,7 +102,7 @@ export declare function saveWithEvents<T extends {
102
102
  id: unknown;
103
103
  }, Encoded extends {
104
104
  id: string;
105
- }, Evt, ItemType extends string>(self: RepositoryBaseC<T, Encoded, Evt, ItemType>): (events: Iterable<Evt>) => (items_0: T, ...items: T[]) => Effect<void, import("effect-app/client/errors").InvalidStateError | import("effect-app/client/errors").OptimisticConcurrencyException>;
105
+ }, Evt, ItemType extends string>(self: RepositoryBaseC<T, Encoded, Evt, ItemType>): (events: Iterable<Evt>) => (items_0: T, ...items: T[]) => Effect<void, import("effect-app/client/errors").OptimisticConcurrencyException | import("effect-app/client/errors").InvalidStateError>;
106
106
  /**
107
107
  * @tsplus fluent Repository updateWithEffect
108
108
  */
@@ -110,7 +110,7 @@ export declare function itemUpdateWithEffect<R, E, T extends {
110
110
  id: string;
111
111
  }, Encoded extends {
112
112
  id: string;
113
- }, Evt, ItemType extends string>(repo: RepositoryBaseC<T, Encoded, Evt, ItemType>, id: T["id"], mod: (item: T) => Effect<T, E, R>): Effect.Effect<void, import("effect-app/client/errors").InvalidStateError | import("effect-app/client/errors").OptimisticConcurrencyException | E | NotFoundError<ItemType>, R>;
113
+ }, Evt, ItemType extends string>(repo: RepositoryBaseC<T, Encoded, Evt, ItemType>, id: T["id"], mod: (item: T) => Effect<T, E, R>): Effect.Effect<void, import("effect-app/client/errors").OptimisticConcurrencyException | import("effect-app/client/errors").InvalidStateError | E | NotFoundError<ItemType>, R>;
114
114
  /**
115
115
  * @tsplus fluent Repository update
116
116
  */
@@ -118,7 +118,7 @@ export declare function itemUpdate<T extends {
118
118
  id: string;
119
119
  }, Encoded extends {
120
120
  id: string;
121
- }, Evt, ItemType extends string>(repo: RepositoryBaseC<T, Encoded, Evt, ItemType>, id: T["id"], mod: (item: T) => T): Effect.Effect<void, import("effect-app/client/errors").InvalidStateError | import("effect-app/client/errors").OptimisticConcurrencyException | NotFoundError<ItemType>, never>;
121
+ }, Evt, ItemType extends string>(repo: RepositoryBaseC<T, Encoded, Evt, ItemType>, id: T["id"], mod: (item: T) => T): Effect.Effect<void, import("effect-app/client/errors").OptimisticConcurrencyException | import("effect-app/client/errors").InvalidStateError | NotFoundError<ItemType>, never>;
122
122
  /**
123
123
  * only use this as a shortcut if you don't have the item already
124
124
  * @tsplus fluent Repository removeById
@@ -88,8 +88,8 @@ export declare class RepositoryBaseC3<T extends {
88
88
  get(id: T["id"]): Effect.Effect<T, NotFoundError<ItemType>, never>;
89
89
  readonly log: (evt: Evt) => import("effect-app/Pure").PureLogT<any>;
90
90
  removeById(id: T["id"]): Effect.Effect<void, NotFoundError<ItemType>, never>;
91
- readonly save: (items_0: T, ...items: T[]) => Effect<void, InvalidStateError | OptimisticConcurrencyException>;
92
- readonly saveWithEvents: (events: Iterable<Evt>) => (items_0: T, ...items: T[]) => Effect<void, InvalidStateError | OptimisticConcurrencyException>;
91
+ readonly save: (items_0: T, ...items: T[]) => Effect<void, OptimisticConcurrencyException | InvalidStateError>;
92
+ readonly saveWithEvents: (events: Iterable<Evt>) => (items_0: T, ...items: T[]) => Effect<void, OptimisticConcurrencyException | InvalidStateError>;
93
93
  readonly queryAndSavePure: {
94
94
  <A, E2, R2, T2 extends T>(q: (q: Query<Encoded>) => QueryEnd<Encoded, "one">, pure: Effect<A, E2, FixEnv<R2, Evt, T, T2>>): Effect.Effect<A, InvalidStateError | OptimisticConcurrencyException | NotFoundError<ItemType> | E2, Exclude<R2, {
95
95
  env: PureEnv<Evt, T, T2>;
@@ -106,7 +106,7 @@ export declare class RepositoryBaseC3<T extends {
106
106
  */
107
107
  readonly handleByIdAndSaveWithPure: <Req extends {
108
108
  id: T["id"];
109
- }, Context, R, A, E, S2 extends T>(pure: (req: Req, ctx: Context) => Effect<A, E, FixEnv<R, Evt, T, S2>>) => (req: Req, ctx: Context) => Effect.Effect<A, InvalidStateError | OptimisticConcurrencyException | NotFoundError<ItemType> | E, Exclude<R, {
109
+ }, Context, R, A, E, S2 extends T>(pure: (req: Req, ctx: Context) => Effect<A, E, FixEnv<R, Evt, T, S2>>) => (req: Req, ctx: Context) => Effect.Effect<A, OptimisticConcurrencyException | InvalidStateError | NotFoundError<ItemType> | E, Exclude<R, {
110
110
  env: PureEnv<Evt, T, S2>;
111
111
  }>>;
112
112
  saveManyWithPure: {
@@ -122,7 +122,7 @@ export declare class RepositoryBaseC3<T extends {
122
122
  env: PureEnv<Evt, T, S2>;
123
123
  }>>;
124
124
  };
125
- saveWithPure<R, A, E, S1 extends T, S2 extends T>(item: S1, pure: Effect<A, E, FixEnv<R, Evt, S1, S2>>): Effect.Effect<A, InvalidStateError | OptimisticConcurrencyException | E, Exclude<R, {
125
+ saveWithPure<R, A, E, S1 extends T, S2 extends T>(item: S1, pure: Effect<A, E, FixEnv<R, Evt, S1, S2>>): Effect.Effect<A, OptimisticConcurrencyException | InvalidStateError | E, Exclude<R, {
126
126
  env: PureEnv<Evt, S1, S2>;
127
127
  }>>;
128
128
  }
@@ -145,7 +145,7 @@ export declare function makeRepo<Evt = never>(): <ItemType extends string, R, En
145
145
  config?: Omit<StoreConfig<Encoded>, "partitionValue"> & {
146
146
  partitionValue?: (a: Encoded) => string;
147
147
  };
148
- }) => Effect.Effect<Repository<T, Encoded, Evt, ItemType>, E, R | StoreMaker | ContextMapContainer | RInitial | R2>;
148
+ }) => Effect.Effect<Repository<T, Encoded, Evt, ItemType>, E, StoreMaker | ContextMapContainer | R | RInitial | R2>;
149
149
  Q: Query<Encoded>;
150
150
  };
151
151
  export declare function makeStore<Encoded extends {
@@ -156,7 +156,7 @@ export declare function makeStore<Encoded extends {
156
156
  id: unknown;
157
157
  }>(name: ItemType, schema: S.Schema<T, E, R>, mapTo: (e: E, etag: string | undefined) => Encoded) => <RInitial = never, EInitial = never>(makeInitial?: Effect<readonly T[], EInitial, RInitial>, config?: Omit<StoreConfig<Encoded>, "partitionValue"> & {
158
158
  partitionValue?: (a: Encoded) => string;
159
- }) => Effect.Effect<import("./Store.js").Store<Encoded, string, PersistenceModelType<Encoded>>, EInitial, R | StoreMaker | RInitial>;
159
+ }) => Effect.Effect<import("./Store.js").Store<Encoded, string, PersistenceModelType<Encoded>>, EInitial, StoreMaker | R | RInitial>;
160
160
  export interface Repos<T extends {
161
161
  id: unknown;
162
162
  }, Encoded extends {
@@ -14,7 +14,7 @@ export declare const toFilter: <TFieldValues extends FieldValues, A, R>(q: QAll<
14
14
  key: import("../../filter/types/path/eager.js").Path<TFieldValues>;
15
15
  direction: "ASC" | "DESC";
16
16
  }[]];
17
- ttype: "one" | "count" | "many";
17
+ ttype: "many" | "count" | "one";
18
18
  mode: "project" | "collect" | "transform";
19
19
  filter: FilterResult[];
20
20
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@effect-app/infra",
3
- "version": "1.38.0",
3
+ "version": "1.39.0",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "dependencies": {
@@ -180,11 +180,13 @@ export const makeRouter = <Context, CTXMap extends Record<string, RPCContextMap.
180
180
  devMode: boolean
181
181
  ) => {
182
182
  const rpc = makeRpc(middleware)
183
- function matchFor<Rsc extends Record<string, any> & { meta: { moduleName: string } }>(
184
- rsc: Rsc
183
+ function matchFor<
184
+ const ModuleName extends string,
185
+ const Rsc extends Record<string, any>
186
+ >(
187
+ rsc: Rsc & { meta: { moduleName: ModuleName } }
185
188
  ) {
186
- const meta = (rsc as any).meta as { moduleName: string }
187
- if (!meta) throw new Error("Resource has no meta specified") // TODO: do something with moduleName+cur etc.
189
+ const meta = rsc.meta
188
190
 
189
191
  type Filtered = Filter<Rsc>
190
192
  const filtered = typedKeysOf(rsc).reduce((acc, cur) => {
@@ -177,21 +177,32 @@ export interface ExtendedMiddleware<Context, CTXMap extends Record<string, RPCCo
177
177
  }
178
178
 
179
179
  export const RouterSymbol = Symbol()
180
- export interface RouterS<Rsc> {
180
+ export interface RouterShape<Rsc> {
181
181
  [RouterSymbol]: Rsc
182
182
  }
183
183
 
184
+ type RPCRouteR<T extends Rpc.Rpc<any, any>> = [T] extends [
185
+ Rpc.Rpc<any, infer R>
186
+ ] ? R
187
+ : never
188
+
189
+ type RPCRouteReq<T extends Rpc.Rpc<any, any>> = [T] extends [
190
+ Rpc.Rpc<infer Req, any>
191
+ ] ? Req
192
+ : never
193
+
184
194
  export const makeRouter = <Context, CTXMap extends Record<string, RPCContextMap.Any>>(
185
195
  middleware: ExtendedMiddleware<Context, CTXMap>,
186
196
  devMode: boolean
187
197
  ) => {
188
198
  const rpc = makeRpc(middleware)
189
- function matchFor<Rsc extends Record<string, any> & { meta: { moduleName: string } }>(
190
- rsc: Rsc
199
+ function matchFor<
200
+ const ModuleName extends string,
201
+ const Rsc extends Record<string, any>
202
+ >(
203
+ rsc: Rsc & { meta: { moduleName: ModuleName } }
191
204
  ) {
192
- const meta = (rsc as any).meta as { moduleName: string }
193
- if (!meta) throw new Error("Resource has no meta specified") // TODO: do something with moduleName+cur etc.
194
-
205
+ const meta = rsc.meta
195
206
  type Filtered = Filter<Rsc>
196
207
  const filtered = typedKeysOf(rsc).reduce((acc, cur) => {
197
208
  if (Predicate.isObject(rsc[cur]) && rsc[cur]["success"]) {
@@ -388,25 +399,15 @@ export const makeRouter = <Context, CTXMap extends Record<string, RPCContextMap.
388
399
  >
389
400
  }
390
401
 
391
- type RPCRouteR<T extends Rpc.Rpc<any, any>> = [T] extends [
392
- Rpc.Rpc<any, infer R>
393
- ] ? R
394
- : never
395
-
396
- type RPCRouteReq<T extends Rpc.Rpc<any, any>> = [T] extends [
397
- Rpc.Rpc<infer Req, any>
398
- ] ? Req
399
- : never
400
-
401
402
  const rpcRouter = RpcRouter.make(...Object.values(mapped) as any) as RpcRouter.RpcRouter<
402
403
  RPCRouteReq<typeof mapped[keyof typeof mapped]>,
403
404
  RPCRouteR<typeof mapped[keyof typeof mapped]>
404
405
  >
405
406
 
406
- type Router = RouterS<Rsc>
407
+ type Router = RouterShape<Rsc>
407
408
  const r: HttpRouter.HttpRouter.TagClass<
408
409
  Router,
409
- string,
410
+ `${typeof meta.moduleName}Router`,
410
411
  never,
411
412
  Exclude<
412
413
  RPCRouteR<
@@ -414,7 +415,7 @@ export const makeRouter = <Context, CTXMap extends Record<string, RPCContextMap.
414
415
  >,
415
416
  { [k in keyof TLayers]: Layer.Layer.Success<TLayers[k]> }[number]
416
417
  >
417
- > = (class Router extends HttpRouter.Tag(meta.moduleName + "Router")<Router>() {}) as any
418
+ > = (class Router extends HttpRouter.Tag(`${meta.moduleName}Router`)<Router>() {}) as any
418
419
 
419
420
  const layer = r.use((router) =>
420
421
  Effect.gen(function*() {
@@ -456,7 +457,165 @@ export const makeRouter = <Context, CTXMap extends Record<string, RPCContextMap.
456
457
  }
457
458
  }
458
459
 
460
+ const effect = <
461
+ E,
462
+ R,
463
+ THandlers extends {
464
+ // import to keep them separate via | for type checking!!
465
+ [K in Keys]: AHandler<Rsc[K]>
466
+ },
467
+ TLayers extends NonEmptyArray<Layer.Layer.Any>
468
+ >(
469
+ layers: TLayers,
470
+ make: Effect<THandlers, E, R>
471
+ ) => {
472
+ type Router = RouterShape<Rsc>
473
+ const r: HttpRouter.HttpRouter.TagClass<
474
+ Router,
475
+ `${typeof meta.moduleName}Router`,
476
+ never,
477
+ Exclude<
478
+ RPCRouteR<
479
+ { [K in keyof Filter<Rsc>]: Rpc.Rpc<Rsc[K], _R<ReturnType<THandlers[K]["handler"]>>> }[keyof Filter<Rsc>]
480
+ >,
481
+ { [k in keyof TLayers]: Layer.Layer.Success<TLayers[k]> }[number]
482
+ >
483
+ > = (class Router extends HttpRouter.Tag(`${meta.moduleName}Router`)<Router>() {}) as any
484
+
485
+ const layer = r.use((router) =>
486
+ Effect.gen(function*() {
487
+ const controllers = yield* make
488
+ // return make.pipe(Effect.map((c) => controllers(c, layers)))
489
+ const mapped = typedKeysOf(filtered).reduce((acc, cur) => {
490
+ const handler = controllers[cur as keyof typeof controllers]
491
+ const req = rsc[cur]
492
+
493
+ acc[cur] = rpc.effect(
494
+ handler._tag === "raw"
495
+ ? class extends (req as any) {
496
+ static success = S.encodedSchema(req.success)
497
+ get [Serializable.symbol]() {
498
+ return this.constructor
499
+ }
500
+ get [Serializable.symbolResult]() {
501
+ return {
502
+ failure: req.failure,
503
+ success: S.encodedSchema(req.success)
504
+ }
505
+ }
506
+ } as any
507
+ : req,
508
+ (req) =>
509
+ Effect
510
+ .annotateCurrentSpan(
511
+ "requestInput",
512
+ Object.entries(req).reduce((prev, [key, value]: [string, unknown]) => {
513
+ prev[key] = key === "password"
514
+ ? "<redacted>"
515
+ : typeof value === "string" || typeof value === "number" || typeof value === "boolean"
516
+ ? typeof value === "string" && value.length > 256
517
+ ? (value.substring(0, 253) + "...")
518
+ : value
519
+ : Array.isArray(value)
520
+ ? `Array[${value.length}]`
521
+ : value === null || value === undefined
522
+ ? `${value}`
523
+ : typeof value === "object" && value
524
+ ? `Object[${Object.keys(value).length}]`
525
+ : typeof value
526
+ return prev
527
+ }, {} as Record<string, string | number | boolean>)
528
+ )
529
+ .pipe(
530
+ // can't use andThen due to some being a function and effect
531
+ Effect.zipRight(handler.handler(req as any) as any),
532
+ Effect.tapErrorCause((cause) => Cause.isFailure(cause) ? logRequestError(cause) : Effect.void),
533
+ Effect.tapDefect((cause) =>
534
+ Effect
535
+ .all([
536
+ reportRequestError(cause, {
537
+ action: `${meta.moduleName}.${req._tag}`
538
+ }),
539
+ Rpc.currentHeaders.pipe(Effect.andThen((headers) => {
540
+ return InfraLogger
541
+ .logError("Finished request", cause)
542
+ .pipe(Effect.annotateLogs({
543
+ action: `${meta.moduleName}.${req._tag}`,
544
+ req: pretty(req),
545
+ headers: pretty(headers)
546
+ // resHeaders: pretty(
547
+ // Object
548
+ // .entries(headers)
549
+ // .reduce((prev, [key, value]) => {
550
+ // prev[key] = value && typeof value === "string" ? snipString(value) : value
551
+ // return prev
552
+ // }, {} as Record<string, any>)
553
+ // )
554
+ }))
555
+ }))
556
+ ])
557
+ ),
558
+ devMode ? (_) => _ : Effect.catchAllDefect(() => Effect.die("Internal Server Error")),
559
+ Effect.withSpan("Request." + meta.moduleName + "." + req._tag, {
560
+ captureStackTrace: () => handler.stack
561
+ })
562
+ ),
563
+ meta.moduleName
564
+ ) // TODO
565
+ return acc
566
+ }, {} as any) as {
567
+ [K in Keys]: Rpc.Rpc<
568
+ Rsc[K],
569
+ _R<ReturnType<THandlers[K]["handler"]>>
570
+ >
571
+ }
572
+
573
+ const rpcRouter = RpcRouter.make(...Object.values(mapped) as any) as RpcRouter.RpcRouter<
574
+ RPCRouteReq<typeof mapped[keyof typeof mapped]>,
575
+ RPCRouteR<typeof mapped[keyof typeof mapped]>
576
+ >
577
+ const httpApp = toHttpApp(rpcRouter, {
578
+ spanPrefix: rsc
579
+ .meta
580
+ .moduleName + "."
581
+ })
582
+ const services = (yield* Effect.context<never>()).pipe(
583
+ Context.omit(Scope.Scope as never),
584
+ Context.omit(Tracer.ParentSpan as never)
585
+ )
586
+ yield* router
587
+ .all(
588
+ "/",
589
+ (httpApp
590
+ .pipe(HttpMiddleware.make(Effect.provide(services)))) as any,
591
+ // TODO: not queries.
592
+ { uninterruptible: true }
593
+ )
594
+ })
595
+ )
596
+
597
+ // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion
598
+ const routes = layer.pipe(
599
+ Layer.provideMerge(r.Live),
600
+ layers ? Layer.provide(layers) as any : (_) => _
601
+ ) as Layer.Layer<
602
+ Router,
603
+ { [k in keyof TLayers]: Layer.Layer.Error<TLayers[k]> }[number] | E,
604
+ | { [k in keyof TLayers]: Layer.Layer.Context<TLayers[k]> }[number]
605
+ | Exclude<R, { [k in keyof TLayers]: Layer.Layer.Success<TLayers[k]> }[number]>
606
+ >
607
+
608
+ // Effect.Effect<HttpRouter.HttpRouter<unknown, HttpRouter.HttpRouter.DefaultServices>, never, UserRouter>
609
+
610
+ return {
611
+ moduleName: meta.moduleName,
612
+ Router: r,
613
+ routes
614
+ }
615
+ }
616
+
459
617
  const r = {
618
+ effect,
460
619
  controllers,
461
620
  ...typedKeysOf(filtered).reduce(
462
621
  (prev, cur) => {