effect-app 1.20.0 → 1.21.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/_cjs/client/clientFor.cjs +147 -96
  3. package/_cjs/client/clientFor.cjs.map +1 -1
  4. package/_cjs/client.cjs +0 -11
  5. package/_cjs/client.cjs.map +1 -1
  6. package/dist/client/clientFor.d.ts +38 -28
  7. package/dist/client/clientFor.d.ts.map +1 -1
  8. package/dist/client/clientFor.js +115 -97
  9. package/dist/client.d.ts +0 -1
  10. package/dist/client.d.ts.map +1 -1
  11. package/dist/client.js +1 -2
  12. package/package.json +2 -32
  13. package/src/client/clientFor.ts +241 -158
  14. package/src/client.ts +0 -1
  15. package/vitest.config.ts.timestamp-1670862388823.mjs +23 -0
  16. package/_cjs/client/clientFor2.cjs +0 -197
  17. package/_cjs/client/clientFor2.cjs.map +0 -1
  18. package/_cjs/client/fetch.cjs +0 -176
  19. package/_cjs/client/fetch.cjs.map +0 -1
  20. package/_cjs/client/router.cjs +0 -31
  21. package/_cjs/client/router.cjs.map +0 -1
  22. package/dist/client/clientFor2.d.ts +0 -49
  23. package/dist/client/clientFor2.d.ts.map +0 -1
  24. package/dist/client/clientFor2.js +0 -165
  25. package/dist/client/fetch.d.ts +0 -56
  26. package/dist/client/fetch.d.ts.map +0 -1
  27. package/dist/client/fetch.js +0 -158
  28. package/dist/client/router.d.ts +0 -32
  29. package/dist/client/router.d.ts.map +0 -1
  30. package/dist/client/router.js +0 -17
  31. package/src/client/clientFor2.ts +0 -339
  32. package/src/client/fetch.ts +0 -299
  33. package/src/client/router.ts +0 -87
  34. package/vitest.config.ts.timestamp-1709838418683-4e8d39caec6be.mjs +0 -33
  35. package/vitest.config.ts.timestamp-1711656440837-b61cd88636759.mjs +0 -37
  36. package/vitest.config.ts.timestamp-1711724061890-f88ec51585e5c.mjs +0 -37
  37. package/vitest.config.ts.timestamp-1711743471020-0a3f182bca84f.mjs +0 -0
  38. package/vitest.config.ts.timestamp-1711743489536-f03d3db08b368.mjs +0 -37
  39. package/vitest.config.ts.timestamp-1711743593445-f537ce2bb2c6a.mjs +0 -0
@@ -1,160 +1,178 @@
1
1
  /* eslint-disable @typescript-eslint/no-unsafe-argument */
2
2
  /* eslint-disable @typescript-eslint/no-explicit-any */
3
- import { Effect, flow, Predicate } from "@effect-app/core";
4
- import { REST } from "effect-app/schema";
3
+ import { Effect, flow, HashMap, Layer, Option, Predicate, Struct } from "@effect-app/core";
4
+ import { RpcResolver } from "@effect/rpc";
5
+ import { HttpRpcResolver } from "@effect/rpc-http";
6
+ import { Record } from "effect";
7
+ import { S } from "effect-app";
8
+ import { ApiConfig } from "effect-app/client";
9
+ import { HttpClient, HttpClientRequest } from "effect-app/http";
10
+ import { typedKeysOf } from "effect-app/utils";
5
11
  import { Path } from "path-parser";
6
- import { S } from "../lib.js";
7
- import { typedKeysOf } from "../utils.js";
8
- import { fetchApi, fetchApi3S, fetchApi3SE, makePathWithBody, makePathWithQuery, mapResponseM, ResError } from "./fetch.js";
9
- export * from "./config.js";
10
- const cache = new Map();
11
- export function clientFor(models) {
12
- const found = cache.get(models);
13
- if (found) {
14
- return found;
15
- }
16
- const m = clientFor_(models);
17
- cache.set(models, m);
18
- return m;
12
+ import qs from "query-string";
13
+ export function makePathWithQuery(path, pars) {
14
+ const forQs = Record.filter(pars, (_, k) => !path.params.includes(k));
15
+ const q = forQs; // { ...forQs, _: JSON.stringify(forQs) } // TODO: drop completely individual keys from query?, sticking to json only
16
+ return (path.build(pars, { ignoreSearch: true, ignoreConstraints: true })
17
+ + (Object.keys(q).length
18
+ ? "?" + qs.stringify(q)
19
+ : ""));
19
20
  }
20
- function clientFor_(models) {
21
+ export function makePathWithBody(path, pars) {
22
+ return path.build(pars, { ignoreSearch: true, ignoreConstraints: true });
23
+ }
24
+ const apiClient = Effect.gen(function* () {
25
+ const client = yield* HttpClient.HttpClient;
26
+ const config = yield* ApiConfig.Tag;
27
+ return client.pipe(HttpClient.mapRequest(HttpClientRequest.prependUrl(config.apiUrl + "/rpc")), HttpClient.mapRequest(HttpClientRequest.setHeaders(config.headers.pipe(Option.getOrElse(() => HashMap.empty())))));
28
+ });
29
+ export function makeClientFor(layers) {
30
+ const cache = new Map();
31
+ return (models) => {
32
+ const found = cache.get(models);
33
+ if (found) {
34
+ return found;
35
+ }
36
+ const m = clientFor_(models, layers);
37
+ cache.set(models, m);
38
+ return m;
39
+ };
40
+ }
41
+ function clientFor_(models, layers = Layer.empty) {
21
42
  const filtered = typedKeysOf(models).reduce((acc, cur) => {
22
43
  if (Predicate.isObject(models[cur])
23
- && (models[cur].Request || Object.keys(models[cur]).some((_) => _.endsWith("Request")) /* bwc */)) {
44
+ && (models[cur].success)) {
24
45
  acc[cur] = models[cur];
25
46
  }
26
47
  return acc;
27
48
  }, {});
49
+ const meta = models.meta;
50
+ if (!meta)
51
+ throw new Error("No meta defined in Resource!");
52
+ const resolver = flow((HttpRpcResolver.make), (_) => RpcResolver.toClient(_));
53
+ const baseClient = apiClient.pipe(Effect.andThen(HttpClient.mapRequest(HttpClientRequest.appendUrl("/" + meta.moduleName))));
28
54
  return (typedKeysOf(filtered)
29
- // ignore module interop with automatic default exports..
30
- .filter((x) => x !== "default" && x !== "meta")
31
55
  .reduce((prev, cur) => {
32
56
  const h = filtered[cur];
33
- const Request_ = REST.extractRequest(h);
34
- const Response = REST.extractResponse(h);
35
- const m = models.meta;
36
- if (!m)
37
- throw new Error("No meta defined in Resource!");
38
- const requestName = `${m.moduleName}.${cur}`
57
+ const Request = h;
58
+ const Response = h.success;
59
+ const encodeRequest = S.encodeSync(Request);
60
+ const requestName = `${meta.moduleName}.${cur}`
39
61
  .replaceAll(".js", "");
40
- const Request = class extends Request_ {
41
- static path = "/" + requestName + (Request_.path === "/" ? "" : Request_.path);
42
- static method = Request_.method === "AUTO"
43
- ? REST.determineMethod(cur, Request_)
44
- : Request_.method;
45
- };
46
- if (Request_.method === "AUTO") {
47
- Object.assign(Request, {
48
- [Request.method === "GET" || Request.method === "DELETE" ? "Query" : "Body"]: Request_.Auto
49
- });
50
- }
51
- const b = Object.assign({}, h, { Request, Response });
52
- const meta = {
62
+ const requestMeta = {
63
+ method: "POST", // TODO
53
64
  Request,
54
65
  Response,
55
- mapPath: Request.path,
66
+ mapPath: requestName,
56
67
  name: requestName
57
68
  };
58
- const res = Response;
59
- const parseResponse = flow(S.decodeUnknown(res), (_) => Effect.mapError(_, (err) => new ResError(err)));
60
- const parseResponseE = flow(S.decodeUnknown(S.encodedSchema(res)), (_) => Effect.mapError(_, (err) => new ResError(err)));
61
- const path = new Path(Request.path);
62
- const parse = mapResponseM(parseResponse);
63
- const parseE = mapResponseM(parseResponseE);
64
- // TODO: look into ast, look for propertySignatures, etc.
65
- // TODO: and fix type wise
66
- // if we don't need fields, then also dont require an argument.
67
- const fields = [Request.Body, Request.Query, Request.Path]
68
- .filter((x) => x)
69
- // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
70
- .flatMap((x) => x.ast.propertySignatures);
69
+ const client = baseClient.pipe(Effect.andThen(HttpClient.mapRequest(HttpClientRequest.appendUrlParam("action", cur))), Effect.andThen(resolver));
70
+ const fields = Struct.omit(Request.fields, "_tag");
71
+ const p = requestName;
72
+ const path = new Path(p); // TODO
71
73
  // @ts-expect-error doc
72
- prev[cur] = Request.method === "GET"
73
- ? fields.length === 0
74
+ prev[cur] = requestMeta.method === "GET"
75
+ ? Object.keys(fields).length === 0
74
76
  ? {
75
- handler: fetchApi(Request.method, Request.path, undefined, Request.errors)
76
- .pipe(Effect.flatMap(parse), Effect
77
+ handler: client
78
+ .pipe(Effect.andThen((cl) => cl(new Request())), Effect.map((_) => ({ body: _, status: 200, headers: {} })), // TODO
79
+ Effect
77
80
  .withSpan("client.request " + requestName, {
78
81
  captureStackTrace: false,
79
82
  attributes: { "request.name": requestName }
80
- })),
81
- ...meta
83
+ }), Effect.provide(layers)),
84
+ ...requestMeta
82
85
  }
83
86
  : {
84
- handler: (req) => fetchApi(Request.method, makePathWithQuery(path, S.encodeSync(Request)(req)), undefined, Request.errors)
85
- .pipe(Effect.flatMap(parse), Effect
87
+ handler: (req) => client
88
+ .pipe(Effect.andThen((cl) => cl(new Request(req))), Effect.map((_) => ({ body: _, status: 200, headers: {} })), // TODO
89
+ Effect
86
90
  .withSpan("client.request " + requestName, {
87
91
  captureStackTrace: false,
88
92
  attributes: { "request.name": requestName }
89
- })),
90
- ...meta,
91
- mapPath: (req) => req ? makePathWithQuery(path, S.encodeSync(Request)(req)) : Request.path
93
+ }), Effect.provide(layers)),
94
+ ...requestMeta,
95
+ mapPath: (req) => req ? makePathWithQuery(path, encodeRequest(req)) : p
92
96
  }
93
- : fields.length === 0
97
+ : Object.keys(fields).length === 0
94
98
  ? {
95
- handler: fetchApi3S(b)({}).pipe(Effect.withSpan("client.request " + requestName, {
99
+ handler: client
100
+ .pipe(Effect.andThen((cl) => cl(new Request())), Effect.map((_) => ({ body: _, status: 200, headers: {} })), // TODO
101
+ Effect.withSpan("client.request " + requestName, {
96
102
  captureStackTrace: false,
97
103
  attributes: { "request.name": requestName }
98
- })),
99
- ...meta
104
+ }), Effect.provide(layers)),
105
+ ...requestMeta
100
106
  }
101
107
  : {
102
- handler: (req) => fetchApi3S(b)(req).pipe(Effect.withSpan("client.request " + requestName, {
108
+ handler: (req) => client
109
+ .pipe(Effect.andThen((cl) => cl(new Request(req))), Effect.map((_) => ({ body: _, status: 200, headers: {} })), // TODO
110
+ Effect.withSpan("client.request " + requestName, {
103
111
  captureStackTrace: false,
104
112
  attributes: { "request.name": requestName }
105
- })),
106
- ...meta,
113
+ }), Effect.provide(layers)),
114
+ ...requestMeta,
107
115
  mapPath: (req) => req
108
- ? Request.method === "DELETE"
109
- ? makePathWithQuery(path, S.encodeSync(Request)(req))
110
- : makePathWithBody(path, S.encodeSync(Request)(req))
111
- : Request.path
116
+ ? requestMeta.method === "DELETE"
117
+ ? makePathWithQuery(path, encodeRequest(req))
118
+ : makePathWithBody(path, encodeRequest(req))
119
+ : p
112
120
  };
113
121
  // generate handler
114
122
  // @ts-expect-error doc
115
- prev[`${cur}E`] = Request.method === "GET"
116
- ? fields.length === 0
123
+ prev[`${cur}E`] = requestMeta.method === "GET"
124
+ ? Object.keys(fields).length === 0
117
125
  ? {
118
- handler: fetchApi(Request.method, Request.path)
119
- .pipe(Effect.flatMap(parseE), Effect
126
+ handler: client
127
+ .pipe(Effect.andThen((cl) => cl(new Request())), Effect.flatMap((res) => S.encode(Response)(res)), // TODO
128
+ Effect.map((_) => ({ body: _, status: 200, headers: {} })), // TODO,
129
+ Effect
120
130
  .withSpan("client.request " + requestName, {
121
131
  captureStackTrace: false,
122
132
  attributes: { "request.name": requestName }
123
- })),
124
- ...meta
133
+ }), Effect.provide(layers)),
134
+ ...requestMeta
125
135
  }
126
136
  : {
127
- handler: (req) => fetchApi(Request.method, makePathWithQuery(path, S.encodeSync(Request)(req)))
128
- .pipe(Effect.flatMap(parseE), Effect
137
+ handler: (req) => client
138
+ .pipe(Effect.andThen((cl) => cl(new Request(req))), Effect.flatMap((res) => S.encode(Response)(res)), // TODO
139
+ Effect.map((_) => ({ body: _, status: 200, headers: {} })), // TODO,
140
+ Effect
129
141
  .withSpan("client.request " + requestName, {
130
142
  captureStackTrace: false,
131
143
  attributes: { "request.name": requestName }
132
- })),
133
- ...meta,
134
- mapPath: (req) => req ? makePathWithQuery(path, S.encodeSync(Request)(req)) : Request.path
144
+ }), Effect.provide(layers)),
145
+ ...requestMeta,
146
+ mapPath: (req) => req ? makePathWithQuery(path, encodeRequest(req)) : p
135
147
  }
136
- : fields.length === 0
148
+ : Object.keys(fields).length === 0
137
149
  ? {
138
- handler: fetchApi3SE(b)({}).pipe(Effect.withSpan("client.request " + requestName, {
150
+ handler: client
151
+ .pipe(Effect.andThen((cl) => cl(new Request())), Effect.flatMap((res) => S.encode(Response)(res)), // TODO
152
+ Effect.map((_) => ({ body: _, status: 200, headers: {} })), // TODO,
153
+ Effect.withSpan("client.request " + requestName, {
139
154
  captureStackTrace: false,
140
155
  attributes: { "request.name": requestName }
141
- })),
142
- ...meta
156
+ }), Effect.provide(layers)),
157
+ ...requestMeta
143
158
  }
144
159
  : {
145
- handler: (req) => fetchApi3SE(b)(req).pipe(Effect.withSpan("client.request " + requestName, {
160
+ handler: (req) => client
161
+ .pipe(Effect.andThen((cl) => cl(new Request(req))), Effect.flatMap((res) => S.encode(Response)(res)), // TODO
162
+ Effect.map((_) => ({ body: _, status: 200, headers: {} })), // TODO,
163
+ Effect.withSpan("client.request " + requestName, {
146
164
  captureStackTrace: false,
147
165
  attributes: { "request.name": requestName }
148
- })),
149
- ...meta,
166
+ }), Effect.provide(layers)),
167
+ ...requestMeta,
150
168
  mapPath: (req) => req
151
- ? Request.method === "DELETE"
152
- ? makePathWithQuery(path, S.encodeSync(Request)(req))
153
- : makePathWithBody(path, S.encodeSync(Request)(req))
154
- : Request.path
169
+ ? requestMeta.method === "DELETE"
170
+ ? makePathWithQuery(path, encodeRequest(req))
171
+ : makePathWithBody(path, encodeRequest(req))
172
+ : p
155
173
  };
156
174
  // generate handler
157
175
  return prev;
158
176
  }, {}));
159
177
  }
160
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50Rm9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NsaWVudC9jbGllbnRGb3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsMERBQTBEO0FBQzFELHVEQUF1RDtBQUV2RCxPQUFPLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQTtBQUUxRCxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sbUJBQW1CLENBQUE7QUFDeEMsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUVsQyxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sV0FBVyxDQUFBO0FBQzdCLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxhQUFhLENBQUE7QUFJekMsT0FBTyxFQUNMLFFBQVEsRUFDUixVQUFVLEVBQ1YsV0FBVyxFQUNYLGdCQUFnQixFQUNoQixpQkFBaUIsRUFDakIsWUFBWSxFQUNaLFFBQVEsRUFDVCxNQUFNLFlBQVksQ0FBQTtBQUVuQixjQUFjLGFBQWEsQ0FBQTtBQVUzQixNQUFNLEtBQUssR0FBRyxJQUFJLEdBQUcsRUFBb0IsQ0FBQTtBQWN6QyxNQUFNLFVBQVUsU0FBUyxDQUN2QixNQUFTO0lBRVQsTUFBTSxLQUFLLEdBQUcsS0FBSyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQTtJQUMvQixJQUFJLEtBQUssRUFBRSxDQUFDO1FBQ1YsT0FBTyxLQUFLLENBQUE7SUFDZCxDQUFDO0lBQ0QsTUFBTSxDQUFDLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFBO0lBQzVCLEtBQUssQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFBO0lBQ3BCLE9BQU8sQ0FBQyxDQUFBO0FBQ1YsQ0FBQztBQUVELFNBQVMsVUFBVSxDQUFxQixNQUFTO0lBTS9DLE1BQU0sUUFBUSxHQUFHLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxH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
178
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50Rm9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NsaWVudC9jbGllbnRGb3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsMERBQTBEO0FBQzFELHVEQUF1RDtBQUV2RCxPQUFPLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sa0JBQWtCLENBQUE7QUFDMUYsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUN6QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0JBQWtCLENBQUE7QUFHbEQsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFFBQVEsQ0FBQTtBQUMvQixPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sWUFBWSxDQUFBO0FBQzlCLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQTtBQUM3QyxPQUFPLEVBQUUsVUFBVSxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFFL0QsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGtCQUFrQixDQUFBO0FBRTlDLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxhQUFhLENBQUE7QUFDbEMsT0FBTyxFQUFFLE1BQU0sY0FBYyxDQUFBO0FBRTdCLE1BQU0sVUFBVSxpQkFBaUIsQ0FDL0IsSUFBVSxFQUNWLElBU0M7SUFFRCxNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQTtJQUNyRSxNQUFNLENBQUMsR0FBRyxLQUFLLENBQUEsQ0FBQyxxSEFBcUg7SUFDckksT0FBTyxDQUNMLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLEVB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
package/dist/client.d.ts CHANGED
@@ -1,5 +1,4 @@
1
1
  export * from "./client/clientFor.js";
2
2
  export * from "./client/config.js";
3
3
  export * from "./client/errors.js";
4
- export * from "./client/fetch.js";
5
4
  //# sourceMappingURL=client.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AACA,cAAc,uBAAuB,CAAA;AACrC,cAAc,oBAAoB,CAAA;AAClC,cAAc,oBAAoB,CAAA;AAClC,cAAc,mBAAmB,CAAA"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AACA,cAAc,uBAAuB,CAAA;AACrC,cAAc,oBAAoB,CAAA;AAClC,cAAc,oBAAoB,CAAA"}
package/dist/client.js CHANGED
@@ -2,6 +2,5 @@
2
2
  export * from "./client/clientFor.js";
3
3
  export * from "./client/config.js";
4
4
  export * from "./client/errors.js";
5
- export * from "./client/fetch.js";
6
5
  // codegen:end
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2NsaWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSx5REFBeUQ7QUFDekQsY0FBYyx1QkFBdUIsQ0FBQTtBQUNyQyxjQUFjLG9CQUFvQixDQUFBO0FBQ2xDLGNBQWMsb0JBQW9CLENBQUE7QUFDbEMsY0FBYyxtQkFBbUIsQ0FBQTtBQUNqQyxjQUFjIn0=
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2NsaWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSx5REFBeUQ7QUFDekQsY0FBYyx1QkFBdUIsQ0FBQTtBQUNyQyxjQUFjLG9CQUFvQixDQUFBO0FBQ2xDLGNBQWMsb0JBQW9CLENBQUE7QUFDbEMsY0FBYyJ9
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "effect-app",
3
- "version": "1.20.0",
3
+ "version": "1.21.1",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "dependencies": {
@@ -15,7 +15,7 @@
15
15
  "uuid": "^10.0.0",
16
16
  "validator": "^13.12.0",
17
17
  "@effect-app/core": "1.12.0",
18
- "@effect-app/schema": "1.14.0"
18
+ "@effect-app/schema": "1.15.0"
19
19
  },
20
20
  "devDependencies": {
21
21
  "@babel/cli": "^7.25.7",
@@ -151,16 +151,6 @@
151
151
  "default": "./_cjs/client/clientFor.cjs"
152
152
  }
153
153
  },
154
- "./client/clientFor2": {
155
- "import": {
156
- "types": "./dist/client/clientFor2.d.ts",
157
- "default": "./dist/client/clientFor2.js"
158
- },
159
- "require": {
160
- "types": "./dist/client/clientFor2.d.ts",
161
- "default": "./_cjs/client/clientFor2.cjs"
162
- }
163
- },
164
154
  "./client/config": {
165
155
  "import": {
166
156
  "types": "./dist/client/config.d.ts",
@@ -181,26 +171,6 @@
181
171
  "default": "./_cjs/client/errors.cjs"
182
172
  }
183
173
  },
184
- "./client/fetch": {
185
- "import": {
186
- "types": "./dist/client/fetch.d.ts",
187
- "default": "./dist/client/fetch.js"
188
- },
189
- "require": {
190
- "types": "./dist/client/fetch.d.ts",
191
- "default": "./_cjs/client/fetch.cjs"
192
- }
193
- },
194
- "./client/router": {
195
- "import": {
196
- "types": "./dist/client/router.d.ts",
197
- "default": "./dist/client/router.js"
198
- },
199
- "require": {
200
- "types": "./dist/client/router.d.ts",
201
- "default": "./_cjs/client/router.cjs"
202
- }
203
- },
204
174
  "./faker": {
205
175
  "import": {
206
176
  "types": "./dist/faker.d.ts",