effect-app 2.30.0 → 2.31.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # @effect-app/prelude
2
2
 
3
+ ## 2.31.1
4
+
5
+ ### Patch Changes
6
+
7
+ - 24417c7: lol
8
+
9
+ ## 2.31.0
10
+
11
+ ### Minor Changes
12
+
13
+ - 9ebae95: improve: rpc error reporting
14
+
3
15
  ## 2.30.0
4
16
 
5
17
  ### Minor Changes
@@ -1 +1 @@
1
- {"version":3,"file":"apiClientFactory.d.ts","sourceRoot":"","sources":["../../src/client/apiClientFactory.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,aAAa,CAAA;AAEtC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,EAAY,UAAU,EAAyC,MAAM,YAAY,CAAA;AACxF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AACjE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAQ,OAAO,EAAE,KAAK,EAAE,MAAM,EAAwB,MAAM,oBAAoB,CAAA;AAEhH,OAAO,KAAK,EAAU,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAEtD,eAAO,MAAM,IAAI,GAAI,CAAC,SAAS,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC,UACxC,UAAU,CAAC,UAAU,KAC5B,eAAe,CAAC,eAAe,CAChC,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EACjC,MAAM,CAAC,sBAAsB,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAYrD,CAAA;AAER,MAAM,WAAW,SAAS;IACxB,GAAG,EAAE,MAAM,CAAA;IACX,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;CACzC;AAED,eAAO,MAAM,gBAAgB;;;EAQ3B,CAAA;kFA0HmD,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,MAGvE,CAAC,SAAS,QAAQ,UAChB,CAAC;;;;+CAJoC,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,MAGvE,CAAC,SAAS,QAAQ,UAChB,CAAC;;;;+EAJoC,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,MAGvE,CAAC,SAAS,QAAQ,UAChB,CAAC;;;;;;;;;4CAJoC,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,MAGvE,CAAC,SAAS,QAAQ,UAChB,CAAC;;;;;;AAejB;;GAEG;AACH,qBAAa,gBACX,SAAQ,qBAA8G;IAEtH,MAAM,CAAC,QAAQ,CAAC,KAAK,WAAY,SAAS,iEAA+C;IACzF,MAAM,CAAC,QAAQ,CAAC,eAAe,iGAAoE;IAEnG,MAAM,CAAC,QAAQ,CAAC,OAAO,uBACA,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,SAAS,QAAQ,YAAY,CAAC;;;;2CAGjD;CAC5C"}
1
+ {"version":3,"file":"apiClientFactory.d.ts","sourceRoot":"","sources":["../../src/client/apiClientFactory.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,aAAa,CAAA;AAEtC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AAEtD,OAAO,EAAY,UAAU,EAAyC,MAAM,YAAY,CAAA;AACxF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AACjE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAQ,OAAO,EAAE,KAAK,EAAE,MAAM,EAAwC,MAAM,oBAAoB,CAAA;AAEhI,OAAO,KAAK,EAAU,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAOtD,eAAO,MAAM,IAAI,GAAI,CAAC,SAAS,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC,UACxC,UAAU,CAAC,UAAU,KAC5B,eAAe,CAAC,eAAe,CAChC,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EACjC,MAAM,CAAC,sBAAsB,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CA6BrD,CAAA;AAER,MAAM,WAAW,SAAS;IACxB,GAAG,EAAE,MAAM,CAAA;IACX,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;CACzC;AAED,eAAO,MAAM,gBAAgB;;;EAQ3B,CAAA;kFA0HmD,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,MAGvE,CAAC,SAAS,QAAQ,UAChB,CAAC;;;;+CAJoC,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,MAGvE,CAAC,SAAS,QAAQ,UAChB,CAAC;;;;+EAJoC,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,MAGvE,CAAC,SAAS,QAAQ,UAChB,CAAC;;;;;;;;;4CAJoC,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,MAGvE,CAAC,SAAS,QAAQ,UAChB,CAAC;;;;;;AAejB;;GAEG;AACH,qBAAa,gBACX,SAAQ,qBAA8G;IAEtH,MAAM,CAAC,QAAQ,CAAC,KAAK,WAAY,SAAS,iEAA+C;IACzF,MAAM,CAAC,QAAQ,CAAC,eAAe,iGAAoE;IAEnG,MAAM,CAAC,QAAQ,CAAC,OAAO,uBACA,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,SAAS,QAAQ,YAAY,CAAC;;;;2CAGjD;CAC5C"}
@@ -1,12 +1,17 @@
1
1
  import { RpcResolver, RpcResolverNoStream } from "@effect/rpc";
2
+ import { redact } from "effect/Inspectable";
2
3
  import { HttpBody, HttpClient, HttpClientRequest, HttpClientResponse } from "../http.js";
3
- import { Config, Context, Effect, flow, HashMap, Layer, Option, Predicate, S, Struct } from "../internal/lib.js";
4
+ import { Config, Context, Effect, flow, HashMap, Layer, Option, pipe, Predicate, Redacted, S, Struct } from "../internal/lib.js";
4
5
  import { typedKeysOf } from "../utils.js";
6
+ const redactUnwrap = (x) => Object.entries(redact(x)).reduce((acc, [k, v]) => {
7
+ acc[k] = Redacted.isRedacted(v) ? "**redacted**" : v;
8
+ return acc;
9
+ }, {});
5
10
  export const make = (client) => RpcResolverNoStream.make((requests) => client
6
11
  .post("", {
7
12
  body: HttpBody.unsafeJson(requests)
8
13
  })
9
- .pipe(Effect.flatMap(HttpClientResponse.filterStatus((_) => _ === 200 || _ === 418 || _ === 422)), Effect.flatMap((_) => _.json), Effect.scoped))();
14
+ .pipe(Effect.flatMap((_) => pipe(_, HttpClientResponse.filterStatus((_) => _ === 200 || _ === 418 || _ === 422), Effect.tapErrorCause(() => _.text.pipe(Effect.orElseSucceed(() => undefined), Effect.flatMap((body) => Effect.annotateCurrentSpan({ "response.headers": redactUnwrap(_.headers), "response.body": body }).pipe(Effect.andThen(Effect.logError("RPC error", { responseHeaders: redactUnwrap(_.headers), responseBody: body })))))))), Effect.flatMap((_) => _.json), Effect.scoped))();
10
15
  export const DefaultApiConfig = Config.all({
11
16
  url: Config.string("apiUrl").pipe(Config.withDefault("/api")),
12
17
  headers: Config
@@ -103,4 +108,4 @@ export class ApiClientFactory extends Context.TagId("ApiClientFactory")() {
103
108
  .use((apiClientFactory) => apiClientFactory(requestLevelLayers))
104
109
  .pipe(Effect.map((f) => f(resource))); // don't rename f to clientFor or integration in vue project linked fucks up
105
110
  }
106
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpQ2xpZW50RmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jbGllbnQvYXBpQ2xpZW50RmFjdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sYUFBYSxDQUFBO0FBRTlELE9BQU8sRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFFLGlCQUFpQixFQUFFLGtCQUFrQixFQUFFLE1BQU0sWUFBWSxDQUFBO0FBRXhGLE9BQU8sRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLENBQUMsRUFBRSxNQUFNLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQTtBQUNoSCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sYUFBYSxDQUFBO0FBR3pDLE1BQU0sQ0FBQyxNQUFNLElBQUksR0FBRyxDQUNsQixNQUE2QixFQUk3QixFQUFFLENBQ0YsbUJBQW1CLENBQUMsSUFBSSxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FDcEMsTUFBTTtLQUNILElBQUksQ0FBQyxFQUFFLEVBQUU7SUFDUixJQUFJLEVBQUUsUUFBUSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUM7Q0FDcEMsQ0FBQztLQUNELElBQUksQ0FDSCxNQUFNLENBQUMsT0FBTyxDQUFDLGtCQUFrQixDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQyxFQUMzRixNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQzdCLE1BQU0sQ0FBQyxNQUFNLENBQ2QsQ0FDSixFQUFLLENBQUE7QUFPUixNQUFNLENBQUMs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
111
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpQ2xpZW50RmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jbGllbnQvYXBpQ2xpZW50RmFjdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sYUFBYSxDQUFBO0FBRTlELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQTtBQUMzQyxPQUFPLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxpQkFBaUIsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLFlBQVksQ0FBQTtBQUV4RixPQUFPLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLENBQUMsRUFBRSxNQUFNLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQTtBQUNoSSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sYUFBYSxDQUFBO0FBR3pDLE1BQU0sWUFBWSxHQUFHLENBQUMsQ0FBTSxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQVEsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFO0lBQ3ZGLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxRQUFRLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQTtJQUNwRCxPQUFPLEdBQUcsQ0FBQTtBQUNaLENBQUMsRUFBRSxFQUE2QixDQUFDLENBQUE7QUFFakMsTUFBTSxDQUFDLE1BQU0sSUFBSSxHQUFHLENBQ2xCLE1BQTZCLEVBSTdCLEVBQUUsQ0FDRixtQkFBbUIsQ0FBQyxJQUFJLENBQUMsQ0FBQyxRQUFR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
package/package.json CHANGED
@@ -1,11 +1,11 @@
1
1
  {
2
2
  "name": "effect-app",
3
- "version": "2.30.0",
3
+ "version": "2.31.1",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "dependencies": {
7
- "@effect/rpc": "^0.52.3",
8
- "@effect/rpc-http": "^0.50.3",
7
+ "@effect/rpc": "^0.52.4",
8
+ "@effect/rpc-http": "^0.50.4",
9
9
  "@tsconfig/strictest": "^2.0.5",
10
10
  "date-fns": "^4.1.0",
11
11
  "nanoid": "^5.1.2",
@@ -32,8 +32,8 @@
32
32
  "vitest": "^3.0.7"
33
33
  },
34
34
  "peerDependencies": {
35
- "@effect/platform": "^0.77.3",
36
- "effect": "^3.13.3"
35
+ "@effect/platform": "^0.77.4",
36
+ "effect": "^3.13.4"
37
37
  },
38
38
  "typesVersions": {
39
39
  "*": {
@@ -2,12 +2,18 @@
2
2
  import type { Rpc } from "@effect/rpc"
3
3
  import { RpcResolver, RpcResolverNoStream } from "@effect/rpc"
4
4
  import type { RpcRouter } from "@effect/rpc/RpcRouter"
5
+ import { redact } from "effect/Inspectable"
5
6
  import { HttpBody, HttpClient, HttpClientRequest, HttpClientResponse } from "../http.js"
6
7
  import type { RequestResolver, Schema } from "../internal/lib.js"
7
- import { Config, Context, Effect, flow, HashMap, Layer, Option, Predicate, S, Struct } from "../internal/lib.js"
8
+ import { Config, Context, Effect, flow, HashMap, Layer, Option, pipe, Predicate, Redacted, S, Struct } from "../internal/lib.js"
8
9
  import { typedKeysOf } from "../utils.js"
9
10
  import type { Client, Requests } from "./clientFor.js"
10
11
 
12
+ const redactUnwrap = (x: any) => Object.entries(redact(x) as any).reduce((acc, [k, v]) => {
13
+ acc[k] = Redacted.isRedacted(v) ? "**redacted**" : v
14
+ return acc
15
+ }, {} as Record<string, unknown>)
16
+
11
17
  export const make = <R extends RpcRouter<any, any>>(
12
18
  client: HttpClient.HttpClient
13
19
  ): RequestResolver.RequestResolver<
@@ -20,7 +26,24 @@ export const make = <R extends RpcRouter<any, any>>(
20
26
  body: HttpBody.unsafeJson(requests)
21
27
  })
22
28
  .pipe(
23
- Effect.flatMap(HttpClientResponse.filterStatus((_) => _ === 200 || _ === 418 || _ === 422)),
29
+ Effect.flatMap((_) =>
30
+ pipe(
31
+ _,
32
+ HttpClientResponse.filterStatus((_) => _ === 200 || _ === 418 || _ === 422),
33
+ Effect.tapErrorCause(() =>
34
+ _.text.pipe(
35
+ Effect.orElseSucceed(() => undefined),
36
+ Effect.flatMap((body) =>
37
+ Effect.annotateCurrentSpan({ "response.headers": redactUnwrap(_.headers), "response.body": body }).pipe(
38
+ Effect.andThen(
39
+ Effect.logError("RPC error", { responseHeaders: redactUnwrap(_.headers), responseBody: body })
40
+ )
41
+ )
42
+ )
43
+ )
44
+ )
45
+ )
46
+ ),
24
47
  Effect.flatMap((_) => _.json),
25
48
  Effect.scoped
26
49
  )