effect-app 1.10.2 → 1.11.2

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,28 @@
1
1
  # @effect-app/prelude
2
2
 
3
+ ## 1.11.2
4
+
5
+ ### Patch Changes
6
+
7
+ - 65135b2: fix issue
8
+
9
+ ## 1.11.1
10
+
11
+ ### Patch Changes
12
+
13
+ - c229a73: add tagMap to TaggedUnion
14
+
15
+ ## 1.11.0
16
+
17
+ ### Minor Changes
18
+
19
+ - 24f0c0f: feat: allow custom errors per endpoint.
20
+
21
+ ### Patch Changes
22
+
23
+ - Updated dependencies [24f0c0f]
24
+ - @effect-app/schema@1.8.0
25
+
3
26
  ## 1.10.2
4
27
 
5
28
  ### Patch Changes
@@ -21,7 +21,7 @@ class Failure extends S.ExtendedTaggedClass()("Failure", {
21
21
  message: S.NullOr(S.NonEmptyString2k).withDefault
22
22
  }) {}
23
23
  exports.Failure = Failure;
24
- const OperationResult = exports.OperationResult = S.ExtendTaggedUnion(S.Union(Success, Failure));
24
+ const OperationResult = exports.OperationResult = S.TaggedUnion(Success, Failure);
25
25
  class Operation extends S.ExtendedClass()({
26
26
  id: OperationId,
27
27
  title: S.NonEmptyString2k,
@@ -1 +1 @@
1
- {"version":3,"file":"Operations.cjs","names":["S","_interopRequireWildcard","require","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","OperationId","exports","StringId","OperationProgress","ExtendedClass","completed","NonNegativeInt","total","Success","ExtendedTaggedClass","message","NullOr","NonEmptyString2k","withDefault","Failure","OperationResult","ExtendTaggedUnion","Union","Operation","id","title","progress","optional","result","createdAt","Date","updatedAt"],"sources":["../src/Operations.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Operations.cjs","names":["S","_interopRequireWildcard","require","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","OperationId","exports","StringId","OperationProgress","ExtendedClass","completed","NonNegativeInt","total","Success","ExtendedTaggedClass","message","NullOr","NonEmptyString2k","withDefault","Failure","OperationResult","TaggedUnion","Operation","id","title","progress","optional","result","createdAt","Date","updatedAt"],"sources":["../src/Operations.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -81,14 +81,14 @@ function clientFor_(models) {
81
81
  .flatMap(x => x.ast.propertySignatures);
82
82
  // @ts-expect-error doc
83
83
  prev[cur] = Request.method === "GET" ? fields.length === 0 ? {
84
- handler: (0, _fetch.fetchApi)(Request.method, Request.path).pipe(_core.Effect.flatMap(parse), _core.Effect.withSpan("client.request " + requestName, {
84
+ handler: (0, _fetch.fetchApi)(Request.method, Request.path, undefined, Request.errors).pipe(_core.Effect.flatMap(parse), _core.Effect.withSpan("client.request " + requestName, {
85
85
  attributes: {
86
86
  "request.name": requestName
87
87
  }
88
88
  })),
89
89
  ...meta
90
90
  } : {
91
- handler: req => (0, _fetch.fetchApi)(Request.method, (0, _fetch.makePathWithQuery)(path, _lib.S.encodeSync(Request)(req))).pipe(_core.Effect.flatMap(parse), _core.Effect.withSpan("client.request " + requestName, {
91
+ handler: req => (0, _fetch.fetchApi)(Request.method, (0, _fetch.makePathWithQuery)(path, _lib.S.encodeSync(Request)(req)), undefined, Request.errors).pipe(_core.Effect.flatMap(parse), _core.Effect.withSpan("client.request " + requestName, {
92
92
  attributes: {
93
93
  "request.name": requestName
94
94
  }
@@ -1 +1 @@
1
- {"version":3,"file":"clientFor.cjs","names":["_core","require","_schema","_pathParser","_lib","_utils","_fetch","_config","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","cache","Map","clientFor","models","found","m","clientFor_","set","typedKeysOf","filter","x","reduce","prev","cur","h","Request_","REST","extractRequest","Response","extractResponse","meta","Error","requestName","moduleName","replaceAll","Request","path","method","determineMethod","assign","Auto","b","mapPath","name","res","parseResponse","flow","S","decodeUnknown","_","Effect","mapError","err","ResError","parseResponseE","encodedSchema","Path","parse","mapResponseM","parseE","fields","Body","Query","flatMap","ast","propertySignatures","length","handler","fetchApi","pipe","withSpan","attributes","req","makePathWithQuery","encodeSync","fetchApi3S","makePathWithBody","fetchApi3SE"],"sources":["../../src/client/clientFor.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"clientFor.cjs","names":["_core","require","_schema","_pathParser","_lib","_utils","_fetch","_config","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","cache","Map","clientFor","models","found","m","clientFor_","set","typedKeysOf","filter","x","reduce","prev","cur","h","Request_","REST","extractRequest","Response","extractResponse","meta","Error","requestName","moduleName","replaceAll","Request","path","method","determineMethod","assign","Auto","b","mapPath","name","res","parseResponse","flow","S","decodeUnknown","_","Effect","mapError","err","ResError","parseResponseE","encodedSchema","Path","parse","mapResponseM","parseE","fields","Body","Query","flatMap","ast","propertySignatures","length","handler","fetchApi","undefined","errors","pipe","withSpan","attributes","req","makePathWithQuery","encodeSync","fetchApi3S","makePathWithBody","fetchApi3SE"],"sources":["../../src/client/clientFor.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -21,10 +21,10 @@ var _effect = require("effect");
21
21
  var _schema = require("effect-app/schema");
22
22
  var _pathParser = require("path-parser");
23
23
  var _queryString = _interopRequireDefault(require("query-string"));
24
- var _config = require("./config.cjs");
25
- var _errors = require("./errors.cjs");
26
24
  var _http = require("../http.cjs");
27
25
  var _lib = require("../lib.cjs");
26
+ var _config = require("./config.cjs");
27
+ var _errors = require("./errors.cjs");
28
28
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
29
29
  /* eslint-disable @typescript-eslint/no-explicit-any */
30
30
 
@@ -54,51 +54,52 @@ const getClient = _core.Effect.flatMap(_http.HttpClient.HttpClient, defaultClien
54
54
  status: _.status,
55
55
  body,
56
56
  headers: _.headers
57
- }))).pipe(_core.Effect.withSpan("client.response"))), _http.HttpClient.catchTag("ResponseError", err => {
58
- const toError = s => _core.Effect.flatMap(err.response.json, _ => _lib.S.decodeUnknown(s)(_).pipe(_core.Effect.catchAll(() => _core.Effect.fail(err)))).pipe(_core.Effect.flatMap(_core.Effect.fail));
59
- // opposite of api's `defaultErrorHandler`
60
- if (err.response.status === 404) {
61
- return toError(_errors.NotFoundError);
62
- }
63
- if (err.response.status === 400) {
64
- return toError(_errors.ValidationError);
65
- }
66
- if (err.response.status === 401) {
67
- return toError(_errors.NotLoggedInError);
68
- }
69
- if (err.response.status === 422) {
70
- return toError(_errors.InvalidStateError);
71
- }
72
- if (err.response.status === 503) {
73
- return toError(_errors.ServiceUnavailableError);
74
- }
75
- if (err.response.status === 403) {
76
- return toError(_errors.UnauthorizedError);
77
- }
78
- if (err.response.status === 412) {
79
- return toError(_errors.OptimisticConcurrencyException);
80
- }
81
- return _core.Effect.fail(err);
82
- }), _http.HttpClient.catchTags({
83
- "ResponseError": err => _core.Effect.orDie(err.response.text
84
- // TODO
85
- ).pipe(_core.Effect.flatMap(_ => _core.Effect.fail({
86
- _tag: "HttpErrorResponse",
87
- response: {
88
- body: _core.Option.fromNullable(_),
89
- status: err.response.status,
90
- headers: err.response.headers
57
+ }))).pipe(_core.Effect.withSpan("client.response"))))));
58
+ function fetchApi(method, path, body, responseError) {
59
+ return _core.Effect.flatMap(getClient, client => (method === "GET" ? client(_http.HttpClientRequest.make(method)(path)) : body === undefined ? client(_http.HttpClientRequest.make(method)(path)) : _http.HttpClientRequest.make(method)(path).pipe(_http.HttpClientRequest.jsonBody(body), _core.Effect.flatMap(client))).pipe(_core.Effect.catchTag("ResponseError", err => {
60
+ const toError = s => _core.Effect.flatMap(err.response.json, _ => _lib.S.decodeUnknown(s)(_).pipe(_core.Effect.catchAll(() => _core.Effect.fail(err)))).pipe(_core.Effect.flatMap(_core.Effect.fail));
61
+ // opposite of api's `defaultErrorHandler`
62
+ if (err.response.status === 404) {
63
+ return toError(_errors.NotFoundError);
64
+ }
65
+ if (err.response.status === 400) {
66
+ return toError(_errors.ValidationError);
67
+ }
68
+ if (err.response.status === 401) {
69
+ return toError(_errors.NotLoggedInError);
70
+ }
71
+ // TODO: DomainError
72
+ if (err.response.status === 422) {
73
+ return responseError ? toError(_lib.S.Union(responseError, _errors.InvalidStateError)) : toError(_errors.InvalidStateError);
74
+ }
75
+ if (err.response.status === 503) {
76
+ return toError(_errors.ServiceUnavailableError);
77
+ }
78
+ if (err.response.status === 403) {
79
+ return toError(_errors.UnauthorizedError);
80
+ }
81
+ if (err.response.status === 412) {
82
+ return toError(_errors.OptimisticConcurrencyException);
91
83
  }
92
- }))),
93
- "RequestError": err => _core.Effect.fail({
94
- _tag: "HttpErrorRequest",
95
- error: err.cause
96
- })
97
- }))));
98
- function fetchApi(method, path, body) {
99
- return _core.Effect.flatMap(getClient, client => (method === "GET" ? client(_http.HttpClientRequest.make(method)(path)) : body === undefined ? client(_http.HttpClientRequest.make(method)(path)) : _http.HttpClientRequest.make(method)(path).pipe(_http.HttpClientRequest.jsonBody(body), _core.Effect.flatMap(client))).pipe(_core.Effect.scoped));
84
+ return _core.Effect.fail(err);
85
+ }), _core.Effect.catchTags({
86
+ "ResponseError": err => _core.Effect.orDie(err.response.text
87
+ // TODO
88
+ ).pipe(_core.Effect.flatMap(_ => _core.Effect.fail({
89
+ _tag: "HttpErrorResponse",
90
+ response: {
91
+ body: _core.Option.fromNullable(_),
92
+ status: err.response.status,
93
+ headers: err.response.headers
94
+ }
95
+ }))),
96
+ "RequestError": err => _core.Effect.fail({
97
+ _tag: "HttpErrorRequest",
98
+ error: err.cause
99
+ })
100
+ }), _core.Effect.scoped));
100
101
  }
101
- function fetchApi2S(request, response) {
102
+ function fetchApi2S(request, response, responseError) {
102
103
  const encodeRequest = _lib.S.encode(request);
103
104
  const decRes = _lib.S.decodeUnknown(response);
104
105
  const decodeRes = u => _core.Effect.mapError(decRes(u), err => new ResError(err));
@@ -106,14 +107,14 @@ function fetchApi2S(request, response) {
106
107
  return (method, path) => req => {
107
108
  return _core.Effect.andThen(encodeRequest(req), encoded => fetchApi(method, method === "DELETE"
108
109
  // eslint-disable-next-line @typescript-eslint/no-unsafe-argument
109
- ? makePathWithQuery(path, encoded) : makePathWithBody(path, encoded), encoded).pipe(_core.Effect.flatMap(parse)));
110
+ ? makePathWithQuery(path, encoded) : makePathWithBody(path, encoded), encoded, responseError).pipe(_core.Effect.flatMap(parse)));
110
111
  };
111
112
  }
112
113
  function fetchApi3S({
113
114
  Request,
114
115
  Response
115
116
  }) {
116
- return fetchApi2S(Request, Response)(Request.method, new _pathParser.Path(Request.path));
117
+ return fetchApi2S(Request, Response, Request.errors)(Request.method, new _pathParser.Path(Request.path));
117
118
  }
118
119
  function fetchApi3SE({
119
120
  Request,
@@ -1 +1 @@
1
- {"version":3,"file":"fetch.cjs","names":["_core","require","_Function","_effect","_schema","_pathParser","_queryString","_interopRequireDefault","_config","_errors","_http","_lib","e","__esModule","default","ResError","error","_tag","constructor","exports","getClient","Effect","flatMap","HttpClient","defaultClient","map","ApiConfig","Tag","apiUrl","headers","pipe","filterStatusOk","mapRequest","_","HttpClientRequest","acceptJson","prependUrl","setHeaders","Option","getOrUndefined","HashMap","get","StringId","make","Object","fromEntries","tapRequest","r","logDebug","method","annotateLogs","url","body","TextDecoder","decode","mapEffect","status","sync","json","withSpan","catchTag","err","toError","s","response","S","decodeUnknown","catchAll","fail","NotFoundError","ValidationError","NotLoggedInError","InvalidStateError","ServiceUnavailableError","UnauthorizedError","OptimisticConcurrencyException","catchTags","orDie","text","fromNullable","cause","fetchApi","path","client","undefined","jsonBody","scoped","fetchApi2S","request","encodeRequest","encode","decRes","decodeRes","u","mapError","parse","mapResponseM","req","andThen","encoded","makePathWithQuery","makePathWithBody","fetchApi3S","Request","Response","Path","fetchApi3SE","a","pars","forQs","Record","filter","k","params","includes","q","build","ignoreSearch","ignoreConstraints","keys","length","qs","stringify","mapResponse","all","EmptyResponse","freeze","EmptyResponseM","EmptyResponseMThunk_","constant","EmptyResponseMThunk","getBody","eff","die"],"sources":["../../src/client/fetch.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"fetch.cjs","names":["_core","require","_Function","_effect","_schema","_pathParser","_queryString","_interopRequireDefault","_http","_lib","_config","_errors","e","__esModule","default","ResError","error","_tag","constructor","exports","getClient","Effect","flatMap","HttpClient","defaultClient","map","ApiConfig","Tag","apiUrl","headers","pipe","filterStatusOk","mapRequest","_","HttpClientRequest","acceptJson","prependUrl","setHeaders","Option","getOrUndefined","HashMap","get","StringId","make","Object","fromEntries","tapRequest","r","logDebug","method","annotateLogs","url","body","TextDecoder","decode","mapEffect","status","sync","json","withSpan","fetchApi","path","responseError","client","undefined","jsonBody","catchTag","err","toError","s","response","S","decodeUnknown","catchAll","fail","NotFoundError","ValidationError","NotLoggedInError","Union","InvalidStateError","ServiceUnavailableError","UnauthorizedError","OptimisticConcurrencyException","catchTags","orDie","text","fromNullable","cause","scoped","fetchApi2S","request","encodeRequest","encode","decRes","decodeRes","u","mapError","parse","mapResponseM","req","andThen","encoded","makePathWithQuery","makePathWithBody","fetchApi3S","Request","Response","errors","Path","fetchApi3SE","a","pars","forQs","Record","filter","k","params","includes","q","build","ignoreSearch","ignoreConstraints","keys","length","qs","stringify","mapResponse","all","EmptyResponse","freeze","EmptyResponseM","EmptyResponseMThunk_","constant","EmptyResponseMThunk","getBody","eff","die"],"sources":["../../src/client/fetch.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
package/_cjs/schema.cjs CHANGED
@@ -8,10 +8,11 @@ var _exportNames = {
8
8
  PhoneNumber: true,
9
9
  makeIs: true,
10
10
  makeIsAnyOf: true,
11
+ taggedUnionMap: true,
11
12
  ExtendTaggedUnion: true,
12
13
  TaggedUnion: true
13
14
  };
14
- exports.makeIsAnyOf = exports.makeIs = exports.TaggedUnion = exports.PhoneNumber = exports.ExtendTaggedUnion = exports.Email = void 0;
15
+ exports.taggedUnionMap = exports.makeIsAnyOf = exports.makeIs = exports.TaggedUnion = exports.PhoneNumber = exports.ExtendTaggedUnion = exports.Email = void 0;
15
16
  var _core = require("@effect-app/core");
16
17
  var S = _interopRequireWildcard(require("@effect-app/schema"));
17
18
  Object.keys(S).forEach(function (key) {
@@ -75,14 +76,24 @@ const makeIsAnyOf = schema => {
75
76
  throw new Error("Unsupported");
76
77
  };
77
78
  exports.makeIsAnyOf = makeIsAnyOf;
79
+ const taggedUnionMap = self => self.reduce((acc, key) => {
80
+ // TODO: check upstream what's going on with literals of _tag
81
+ const tg = key.fields._tag;
82
+ const tag = "ast" in tg && tg.ast._tag === "PropertySignatureDeclaration" ? tg.ast.type.literal : tg.literals[0] // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-explicit-any, @typescript-eslint/no-unsafe-member-access
83
+ ;
84
+ acc[tag] = key;
85
+ return acc;
86
+ }, {});
87
+ exports.taggedUnionMap = taggedUnionMap;
78
88
  const ExtendTaggedUnion = schema => (0, _utils.extendM)(schema, _ => ({
79
89
  is: makeIs(_),
80
- isAnyOf: makeIsAnyOf(_)
90
+ isAnyOf: makeIsAnyOf(_) /*, map: taggedUnionMap(a) */
81
91
  }));
82
92
  exports.ExtendTaggedUnion = ExtendTaggedUnion;
83
93
  const TaggedUnion = (...a) => (0, _core.pipe)(S.Union(...a), _ => (0, _utils.extendM)(_, _ => ({
84
94
  is: makeIs(_),
85
- isAnyOf: makeIsAnyOf(_)
95
+ isAnyOf: makeIsAnyOf(_),
96
+ tagMap: taggedUnionMap(a)
86
97
  })));
87
98
  exports.TaggedUnion = TaggedUnion;
88
99
  //# sourceMappingURL=schema.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema.cjs","names":["_core","require","S","_interopRequireWildcard","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_faker","_utils","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","n","__proto__","a","getOwnPropertyDescriptor","u","i","set","Email","pipe","annotations","arbitrary","fc","fakerArb","faker","internet","exampleEmail","map","withDefaultMake","PhoneNumber","phone","number","makeIs","schema","AST","isUnion","ast","types","reduce","acc","isTransformation","isDeclaration","to","from","isTypeLiteral","tag","Array","findFirst","propertySignatures","_","name","isLiteral","type","Option","some","none","getOrUndefined","String","literal","x","_tag","Error","makeIsAnyOf","includes","ExtendTaggedUnion","extendM","is","isAnyOf","TaggedUnion","Union"],"sources":["../src/schema.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"schema.cjs","names":["_core","require","S","_interopRequireWildcard","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_faker","_utils","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","n","__proto__","a","getOwnPropertyDescriptor","u","i","set","Email","pipe","annotations","arbitrary","fc","fakerArb","faker","internet","exampleEmail","map","withDefaultMake","PhoneNumber","phone","number","makeIs","schema","AST","isUnion","ast","types","reduce","acc","isTransformation","isDeclaration","to","from","isTypeLiteral","tag","Array","findFirst","propertySignatures","_","name","isLiteral","type","Option","some","none","getOrUndefined","String","literal","x","_tag","Error","makeIsAnyOf","includes","taggedUnionMap","self","tg","fields","literals","ExtendTaggedUnion","extendM","is","isAnyOf","TaggedUnion","Union","tagMap"],"sources":["../src/schema.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -41,6 +41,10 @@ export declare class Failure extends Failure_base {
41
41
  export declare const OperationResult: S.Schema<Success | Failure, Success.From | Failure.From, never> & {
42
42
  is: S.Is<Success | Failure>;
43
43
  isAnyOf: S.IsAny<Success | Failure>;
44
+ tagMap: {
45
+ Success: typeof Success;
46
+ Failure: typeof Failure;
47
+ };
44
48
  };
45
49
  export type OperationResult = S.Schema.Type<typeof OperationResult>;
46
50
  declare const Operation_base: S.EnhancedClass<Operation, {
@@ -56,6 +60,10 @@ declare const Operation_base: S.EnhancedClass<Operation, {
56
60
  result: S.optional<S.Schema<Success | Failure, Success.From | Failure.From, never> & {
57
61
  is: S.Is<Success | Failure>;
58
62
  isAnyOf: S.IsAny<Success | Failure>;
63
+ tagMap: {
64
+ Success: typeof Success;
65
+ Failure: typeof Failure;
66
+ };
59
67
  }>;
60
68
  createdAt: S.PropertySignature<":", Date, never, ":", string, true, never>;
61
69
  updatedAt: S.PropertySignature<":", Date | null, never, ":", string | null, true, never>;
@@ -1 +1 @@
1
- {"version":3,"file":"Operations.d.ts","sourceRoot":"","sources":["../src/Operations.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,aAAa,CAAA;AAEhC,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,QAAQ,CAAA;AACpC,eAAO,MAAM,WAAW;;;;;;CAAa,CAAA;;;;;;;;;;;;AAErC,qBAAa,iBAAkB,SAAQ,sBAMrC;CAAG;;;;;;;;AAEL,qBAAa,OAAQ,SAAQ,YAE3B;CAAG;;;;;;;;AAEL,qBAAa,OAAQ,SAAQ,YAE3B;CAAG;AAEL,eAAO,MAAM,eAAe;;;CAAiD,CAAA;AAC7E,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,eAAe,CAAC,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;AAEnE,qBAAa,SAAU,SAAQ,cAO7B;CAAG;AAKL,yBAAiB,iBAAiB,CAAC;IACjC,UAAiB,IAAK,SAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,iBAAiB,CAAC,QAAQ,CAAC,CAAC;KAAG;CACtF;AACD,yBAAiB,OAAO,CAAC;IACvB,UAAiB,IAAK,SAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,OAAO,CAAC,QAAQ,CAAC,CAAC;KAAG;CAC5E;AACD,yBAAiB,OAAO,CAAC;IACvB,UAAiB,IAAK,SAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,OAAO,CAAC,QAAQ,CAAC,CAAC;KAAG;CAC5E;AACD,yBAAiB,SAAS,CAAC;IACzB,UAAiB,IAAK,SAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,SAAS,CAAC,QAAQ,CAAC,CAAC;KAAG;CAC9E"}
1
+ {"version":3,"file":"Operations.d.ts","sourceRoot":"","sources":["../src/Operations.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,aAAa,CAAA;AAEhC,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,QAAQ,CAAA;AACpC,eAAO,MAAM,WAAW;;;;;;CAAa,CAAA;;;;;;;;;;;;AAErC,qBAAa,iBAAkB,SAAQ,sBAMrC;CAAG;;;;;;;;AAEL,qBAAa,OAAQ,SAAQ,YAE3B;CAAG;;;;;;;;AAEL,qBAAa,OAAQ,SAAQ,YAE3B;CAAG;AAEL,eAAO,MAAM,eAAe;;;;;;;CAAkC,CAAA;AAC9D,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,eAAe,CAAC,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEnE,qBAAa,SAAU,SAAQ,cAO7B;CAAG;AAKL,yBAAiB,iBAAiB,CAAC;IACjC,UAAiB,IAAK,SAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,iBAAiB,CAAC,QAAQ,CAAC,CAAC;KAAG;CACtF;AACD,yBAAiB,OAAO,CAAC;IACvB,UAAiB,IAAK,SAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,OAAO,CAAC,QAAQ,CAAC,CAAC;KAAG;CAC5E;AACD,yBAAiB,OAAO,CAAC;IACvB,UAAiB,IAAK,SAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,OAAO,CAAC,QAAQ,CAAC,CAAC;KAAG;CAC5E;AACD,yBAAiB,SAAS,CAAC;IACzB,UAAiB,IAAK,SAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,SAAS,CAAC,QAAQ,CAAC,CAAC;KAAG;CAC9E"}
@@ -13,7 +13,7 @@ export class Failure extends S.ExtendedTaggedClass()("Failure", {
13
13
  message: S.NullOr(S.NonEmptyString2k).withDefault
14
14
  }) {
15
15
  }
16
- export const OperationResult = S.ExtendTaggedUnion(S.Union(Success, Failure));
16
+ export const OperationResult = S.TaggedUnion(Success, Failure);
17
17
  export class Operation extends S.ExtendedClass()({
18
18
  id: OperationId,
19
19
  title: S.NonEmptyString2k,
@@ -26,4 +26,4 @@ export class Operation extends S.ExtendedClass()({
26
26
  /* eslint-enable */
27
27
  //
28
28
  // codegen:end
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiT3BlcmF0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9PcGVyYXRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxDQUFDLE1BQU0sYUFBYSxDQUFBO0FBR2hDLE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRyxDQUFDLENBQUMsUUFBUSxDQUFBO0FBRXJDLE1BQU0sT0FBTyxpQkFBa0IsU0FBUSxDQUFDLENBQUMsYUFBYSxFQUduRCxDQUFDO0lBQ0YsU0FBUyxFQUFFLENBQUMsQ0FBQyxjQUFjO0lBQzNCLEtBQUssRUFBRSxDQUFDLENBQUMsY0FBYztDQUN4QixDQUFDO0NBQUc7QUFFTCxNQUFNLE9BQU8sT0FBUSxTQUFRLENBQUMsQ0FBQyxtQkFBbUIsRUFBeUIsQ0FBQyxTQUFTLEVBQUU7SUFDckYsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLGdCQUFnQixDQUFDLENBQUMsV0FBVztDQUNsRCxDQUFDO0NBQUc7QUFFTCxNQUFNLE9BQU8sT0FBUSxTQUFRLENBQUMsQ0FBQyxtQkFBbUIsRUFBeUIsQ0FBQyxTQUFTLEVBQUU7SUFDckYsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLGdCQUFnQixDQUFDLENBQUMsV0FBVztDQUNsRCxDQUFDO0NBQUc7QUFFTCxNQUFNLENBQUMsTUFBTSxlQUFlLEdBQUcsQ0FBQyxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUE7QUFHN0UsTUFBTSxPQUFPLFNBQVUsU0FBUSxDQUFDLENBQUMsYUFBYSxFQUE2QixDQUFDO0lBQzFFLEVBQUUsRUFBRSxXQUFXO0lBQ2YsS0FBSyxFQUFFLENBQUMsQ0FBQyxnQkFBZ0I7SUFDekIsUUFBUSxFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsaUJBQWlCLENBQUM7SUFDdkMsTUFBTSxFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDO0lBQ25DLFNBQVMsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVc7SUFDN0IsU0FBUyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLFdBQVc7Q0FDeEMsQ0FBQztDQUFHO0FBaUJMLG1CQUFtQjtBQUNuQixFQUFFO0FBQ0YsY0FBYyJ9
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiT3BlcmF0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9PcGVyYXRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxDQUFDLE1BQU0sYUFBYSxDQUFBO0FBR2hDLE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRyxDQUFDLENBQUMsUUFBUSxDQUFBO0FBRXJDLE1BQU0sT0FBTyxpQkFBa0IsU0FBUSxDQUFDLENBQUMsYUFBYSxFQUduRCxDQUFDO0lBQ0YsU0FBUyxFQUFFLENBQUMsQ0FBQyxjQUFjO0lBQzNCLEtBQUssRUFBRSxDQUFDLENBQUMsY0FBYztDQUN4QixDQUFDO0NBQUc7QUFFTCxNQUFNLE9BQU8sT0FBUSxTQUFRLENBQUMsQ0FBQyxtQkFBbUIsRUFBeUIsQ0FBQyxTQUFTLEVBQUU7SUFDckYsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLGdCQUFnQixDQUFDLENBQUMsV0FBVztDQUNsRCxDQUFDO0NBQUc7QUFFTCxNQUFNLE9BQU8sT0FBUSxTQUFRLENBQUMsQ0FBQyxtQkFBbUIsRUFBeUIsQ0FBQyxTQUFTLEVBQUU7SUFDckYsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLGdCQUFnQixDQUFDLENBQUMsV0FBVztDQUNsRCxDQUFDO0NBQUc7QUFFTCxNQUFNLENBQUMsTUFBTSxlQUFlLEdBQUcsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxPQUFPLEVBQUUsT0FBTyxDQUFDLENBQUE7QUFHOUQsTUFBTSxPQUFPLFNBQVUsU0FBUSxDQUFDLENBQUMsYUFBYSxFQUE2QixDQUFDO0lBQzFFLEVBQUUsRUFBRSxXQUFXO0lBQ2YsS0FBSyxFQUFFLENBQUMsQ0FBQyxnQkFBZ0I7SUFDekIsUUFBUSxFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsaUJBQWlCLENBQUM7SUFDdkMsTUFBTSxFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDO0lBQ25DLFNBQVMsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVc7SUFDN0IsU0FBUyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLFdBQVc7Q0FDeEMsQ0FBQztDQUFHO0FBaUJMLG1CQUFtQjtBQUNuQixFQUFFO0FBQ0YsY0FBYyJ9
@@ -65,7 +65,7 @@ function clientFor_(models) {
65
65
  prev[cur] = Request.method === "GET"
66
66
  ? fields.length === 0
67
67
  ? {
68
- handler: fetchApi(Request.method, Request.path)
68
+ handler: fetchApi(Request.method, Request.path, undefined, Request.errors)
69
69
  .pipe(Effect.flatMap(parse), Effect
70
70
  .withSpan("client.request " + requestName, {
71
71
  attributes: { "request.name": requestName }
@@ -73,7 +73,7 @@ function clientFor_(models) {
73
73
  ...meta
74
74
  }
75
75
  : {
76
- handler: (req) => fetchApi(Request.method, makePathWithQuery(path, S.encodeSync(Request)(req)))
76
+ handler: (req) => fetchApi(Request.method, makePathWithQuery(path, S.encodeSync(Request)(req)), undefined, Request.errors)
77
77
  .pipe(Effect.flatMap(parse), Effect
78
78
  .withSpan("client.request " + requestName, {
79
79
  attributes: { "request.name": requestName }
@@ -142,4 +142,4 @@ function clientFor_(models) {
142
142
  return prev;
143
143
  }, {}));
144
144
  }
145
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50Rm9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NsaWVudC9jbGllbnRGb3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsMERBQTBEO0FBQzFELHVEQUF1RDtBQUV2RCxPQUFPLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLGtCQUFrQixDQUFBO0FBRS9DLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQTtBQUN4QyxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sYUFBYSxDQUFBO0FBRWxDLE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxXQUFXLENBQUE7QUFDN0IsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUl6QyxPQUFPLEVBQ0wsUUFBUSxFQUNSLFVBQVUsRUFDVixXQUFXLEVBQ1gsZ0JBQWdCLEVBQ2hCLGlCQUFpQixFQUNqQixZQUFZLEVBQ1osUUFBUSxFQUNULE1BQU0sWUFBWSxDQUFBO0FBRW5CLGNBQWMsYUFBYSxDQUFBO0FBVTNCLE1BQU0sS0FBSyxHQUFHLElBQUksR0FBRyxFQUFvQixDQUFBO0FBY3pDLE1BQU0sVUFBVSxTQUFTLENBQ3ZCLE1BQVM7SUFFVCxNQUFNLEtBQUssR0FBRyxLQUFLLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFBO0lBQy9CLElBQUksS0FBSyxFQUFFLENBQUM7UUFDVixPQUFPLEtBQUssQ0FBQTtJQUNkLENBQUM7SUFDRCxNQUFNLENBQUMsR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUE7SUFDNUIsS0FBSyxDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUE7SUFDcEIsT0FBTyxDQUFDLENBQUE7QUFDVixDQUFDO0FBRUQsU0FBUyxVQUFVLENBQXFCLE1BQVM7SUFDL0MsT0FBTyxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUM7UUFDekIseURBQXlEO1NBQ3hELE1BQU0sQ0FBQyxDQUFDLENB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
145
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50Rm9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NsaWVudC9jbGllbnRGb3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsMERBQTBEO0FBQzFELHVEQUF1RDtBQUV2RCxPQUFPLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLGtCQUFrQixDQUFBO0FBRS9DLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQTtBQUN4QyxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sYUFBYSxDQUFBO0FBRWxDLE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxXQUFXLENBQUE7QUFDN0IsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUl6QyxPQUFPLEVBQ0wsUUFBUSxFQUNSLFVBQVUsRUFDVixXQUFXLEVBQ1gsZ0JBQWdCLEVBQ2hCLGlCQUFpQixFQUNqQixZQUFZLEVBQ1osUUFBUSxFQUNULE1BQU0sWUFBWSxDQUFBO0FBRW5CLGNBQWMsYUFBYSxDQUFBO0FBVTNCLE1BQU0sS0FBSyxHQUFHLElBQUksR0FBRyxFQUFvQixDQUFBO0FBY3pDLE1BQU0sVUFBVSxTQUFTLENBQ3ZCLE1BQVM7SUFFVCxNQUFNLEtBQUssR0FBRyxLQUFLLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFBO0lBQy9CLElBQUksS0FBSyxFQUFFLENBQUM7UUFDVixPQUFPLEtBQUssQ0FBQTtJQUNkLENBQUM7SUFDRCxNQUFNLENBQUMsR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUE7SUFDNUIsS0FBSyxDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUE7SUFDcEIsT0FBTyxDQUFDLENBQUE7QUFDVixDQUFDO0FBRUQsU0FBUyxVQUFVLENBQXFCLE1BQVM7SUFDL0MsT0FBTyxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUM7UUFDekIseURBQXlEO1NBQ3hELE1BQU0sQ0FBQyxDQUFDLENB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
@@ -2,30 +2,32 @@ import { Effect } from "@effect-app/core";
2
2
  import type { Headers, HttpError, HttpRequestError, HttpResponseError, Method } from "@effect-app/core/http/http-client";
3
3
  import type { REST, Schema } from "effect-app/schema";
4
4
  import { Path } from "path-parser";
5
- import { ApiConfig } from "./config.js";
6
- import { InvalidStateError, NotFoundError, NotLoggedInError, OptimisticConcurrencyException, ServiceUnavailableError, UnauthorizedError, ValidationError } from "./errors.js";
7
5
  import { HttpClient } from "../http.js";
8
6
  import { S } from "../lib.js";
7
+ import { ApiConfig } from "./config.js";
8
+ import { InvalidStateError, NotFoundError, NotLoggedInError, OptimisticConcurrencyException, ServiceUnavailableError, UnauthorizedError, ValidationError } from "./errors.js";
9
9
  export type FetchError = HttpError<string>;
10
10
  export declare class ResError {
11
11
  readonly error: unknown;
12
12
  readonly _tag = "ResponseError";
13
13
  constructor(error: unknown);
14
14
  }
15
- export declare function fetchApi(method: Method, path: string, body?: unknown): Effect.Effect<{
15
+ export declare function fetchApi(method: Method, path: string, body?: unknown, responseError?: S.Schema.AnyNoContext): Effect.Effect<{
16
16
  status: number;
17
17
  body: unknown;
18
18
  headers: import("@effect/platform/Headers").Headers;
19
- } | FetchResponse<unknown>, NotFoundError<ItemType> | InvalidStateError | ServiceUnavailableError | ValidationError | NotLoggedInError | import("./errors.js").LoginError | UnauthorizedError | OptimisticConcurrencyException | HttpRequestError | HttpResponseError<unknown> | import("@effect/platform/HttpBody").HttpBodyError, HttpClient.HttpClient.Default | ApiConfig>;
20
- export declare function fetchApi2S<RequestR, RequestFrom, RequestTo, ResponseR, ResponseFrom, ResponseTo>(request: Schema<RequestTo, RequestFrom, RequestR>, response: Schema<ResponseTo, ResponseFrom, ResponseR>): (method: Method, path: Path) => (req: RequestTo) => Effect.Effect<FetchResponse<ResponseTo>, S.ParseResult.ParseError | NotFoundError<ItemType> | InvalidStateError | ServiceUnavailableError | ValidationError | NotLoggedInError | import("./errors.js").LoginError | UnauthorizedError | OptimisticConcurrencyException | HttpRequestError | ResError | HttpResponseError<unknown> | import("@effect/platform/HttpBody").HttpBodyError, HttpClient.HttpClient.Default | ApiConfig | RequestR | ResponseR>;
19
+ } | FetchResponse<unknown>, NotFoundError<ItemType> | InvalidStateError | ServiceUnavailableError | ValidationError | NotLoggedInError | import("./errors.js").LoginError | UnauthorizedError | OptimisticConcurrencyException | HttpRequestError | import("@effect/platform/HttpBody").HttpBodyError | HttpResponseError<unknown>, HttpClient.HttpClient.Default | ApiConfig>;
20
+ export declare function fetchApi2S<RequestR, RequestFrom, RequestTo, ResponseR, ResponseFrom, ResponseTo, ResponseErrorFrom = never, ResponseErrorTo extends {
21
+ _tag: string;
22
+ } = never>(request: Schema<RequestTo, RequestFrom, RequestR>, response: Schema<ResponseTo, ResponseFrom, ResponseR>, responseError?: Schema<ResponseErrorTo, ResponseErrorFrom, never>): (method: Method, path: Path) => (req: RequestTo) => Effect.Effect<FetchResponse<ResponseTo>, S.ParseResult.ParseError | NotFoundError<ItemType> | InvalidStateError | ServiceUnavailableError | ValidationError | NotLoggedInError | import("./errors.js").LoginError | UnauthorizedError | OptimisticConcurrencyException | HttpRequestError | ResError | import("@effect/platform/HttpBody").HttpBodyError | HttpResponseError<unknown>, HttpClient.HttpClient.Default | ApiConfig | RequestR | ResponseR>;
21
23
  export declare function fetchApi3S<RequestA, RequestE, ResponseE = unknown, ResponseA = void>({ Request, Response }: {
22
24
  Request: REST.RequestSchemed<RequestA, RequestE>;
23
25
  Response: REST.ReqRes<ResponseA, ResponseE, any>;
24
- }): (req: RequestA) => Effect.Effect<FetchResponse<ResponseA>, S.ParseResult.ParseError | NotFoundError<ItemType> | InvalidStateError | ServiceUnavailableError | ValidationError | NotLoggedInError | import("./errors.js").LoginError | UnauthorizedError | OptimisticConcurrencyException | HttpRequestError | ResError | HttpResponseError<unknown> | import("@effect/platform/HttpBody").HttpBodyError, any>;
26
+ }): (req: RequestA) => Effect.Effect<FetchResponse<ResponseA>, S.ParseResult.ParseError | NotFoundError<ItemType> | InvalidStateError | ServiceUnavailableError | ValidationError | NotLoggedInError | import("./errors.js").LoginError | UnauthorizedError | OptimisticConcurrencyException | HttpRequestError | ResError | import("@effect/platform/HttpBody").HttpBodyError | HttpResponseError<unknown>, any>;
25
27
  export declare function fetchApi3SE<RequestA, RequestE, ResponseE = unknown, ResponseA = void>({ Request, Response }: {
26
28
  Request: REST.RequestSchemed<RequestA, RequestE>;
27
29
  Response: REST.ReqRes<ResponseA, ResponseE, any>;
28
- }): (req: RequestA) => Effect.Effect<FetchResponse<ResponseE>, S.ParseResult.ParseError | NotFoundError<ItemType> | InvalidStateError | ServiceUnavailableError | ValidationError | NotLoggedInError | import("./errors.js").LoginError | UnauthorizedError | OptimisticConcurrencyException | HttpRequestError | ResError | HttpResponseError<unknown> | import("@effect/platform/HttpBody").HttpBodyError, any>;
30
+ }): (req: RequestA) => Effect.Effect<FetchResponse<ResponseE>, S.ParseResult.ParseError | NotFoundError<ItemType> | InvalidStateError | ServiceUnavailableError | ValidationError | NotLoggedInError | import("./errors.js").LoginError | UnauthorizedError | OptimisticConcurrencyException | HttpRequestError | ResError | import("@effect/platform/HttpBody").HttpBodyError | HttpResponseError<unknown>, any>;
29
31
  export declare function makePathWithQuery(path: Path, pars: Record<string, string | number | boolean | readonly string[] | readonly number[] | readonly boolean[] | null>): string;
30
32
  export declare function makePathWithBody(path: Path, pars: Record<string, string | number | boolean | readonly string[] | readonly number[] | readonly boolean[] | null>): string;
31
33
  export declare function mapResponse<T, A>(map: (t: T) => A): (r: FetchResponse<T>) => FetchResponse<A>;
@@ -1 +1 @@
1
- {"version":3,"file":"fetch.d.ts","sourceRoot":"","sources":["../../src/client/fetch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fetch.d.ts","sourceRoot":"","sources":["../../src/client/fetch.ts"],"names":[],"mappings":"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"}
@@ -5,10 +5,10 @@ import { Record } from "effect";
5
5
  import { StringId } from "effect-app/schema";
6
6
  import { Path } from "path-parser";
7
7
  import qs from "query-string";
8
- import { ApiConfig } from "./config.js";
9
- import { InvalidStateError, NotFoundError, NotLoggedInError, OptimisticConcurrencyException, ServiceUnavailableError, UnauthorizedError, ValidationError } from "./errors.js";
10
8
  import { HttpClient, HttpClientRequest } from "../http.js";
11
9
  import { S } from "../lib.js";
10
+ import { ApiConfig } from "./config.js";
11
+ import { InvalidStateError, NotFoundError, NotLoggedInError, OptimisticConcurrencyException, ServiceUnavailableError, UnauthorizedError, ValidationError } from "./errors.js";
12
12
  export class ResError {
13
13
  error;
14
14
  _tag = "ResponseError";
@@ -36,55 +36,8 @@ const getClient = Effect.flatMap(HttpClient.HttpClient, (defaultClient) => Effec
36
36
  .mapEffect((_) => (_.status === 204
37
37
  ? Effect.sync(() => ({ status: _.status, body: void 0, headers: _.headers }))
38
38
  : Effect.map(_.json, (body) => ({ status: _.status, body, headers: _.headers })))
39
- .pipe(Effect.withSpan("client.response"))), HttpClient
40
- .catchTag("ResponseError", (err) => {
41
- const toError = (s) => Effect
42
- .flatMap(err
43
- .response
44
- .json, (_) => S.decodeUnknown(s)(_).pipe(Effect.catchAll(() => Effect.fail(err))))
45
- .pipe(Effect.flatMap(Effect.fail));
46
- // opposite of api's `defaultErrorHandler`
47
- if (err.response.status === 404) {
48
- return toError(NotFoundError);
49
- }
50
- if (err.response.status === 400) {
51
- return toError(ValidationError);
52
- }
53
- if (err.response.status === 401) {
54
- return toError(NotLoggedInError);
55
- }
56
- if (err.response.status === 422) {
57
- return toError(InvalidStateError);
58
- }
59
- if (err.response.status === 503) {
60
- return toError(ServiceUnavailableError);
61
- }
62
- if (err.response.status === 403) {
63
- return toError(UnauthorizedError);
64
- }
65
- if (err.response.status === 412) {
66
- return toError(OptimisticConcurrencyException);
67
- }
68
- return Effect.fail(err);
69
- }), HttpClient.catchTags({
70
- "ResponseError": (err) => Effect
71
- .orDie(err
72
- .response
73
- .text
74
- // TODO
75
- )
76
- .pipe(Effect
77
- .flatMap((_) => Effect.fail({
78
- _tag: "HttpErrorResponse",
79
- response: {
80
- body: Option.fromNullable(_),
81
- status: err.response.status,
82
- headers: err.response.headers
83
- }
84
- }))),
85
- "RequestError": (err) => Effect.fail({ _tag: "HttpErrorRequest", error: err.cause })
86
- }))));
87
- export function fetchApi(method, path, body) {
39
+ .pipe(Effect.withSpan("client.response"))))));
40
+ export function fetchApi(method, path, body, responseError) {
88
41
  return Effect.flatMap(getClient, (client) => (method === "GET"
89
42
  ? client(HttpClientRequest.make(method)(path))
90
43
  : body === undefined
@@ -92,9 +45,59 @@ export function fetchApi(method, path, body) {
92
45
  : HttpClientRequest
93
46
  .make(method)(path)
94
47
  .pipe(HttpClientRequest.jsonBody(body), Effect.flatMap(client)))
95
- .pipe(Effect.scoped));
48
+ .pipe(Effect
49
+ .catchTag("ResponseError", (err) => {
50
+ const toError = (s) => Effect
51
+ .flatMap(err
52
+ .response
53
+ .json, (_) => S.decodeUnknown(s)(_).pipe(Effect.catchAll(() => Effect.fail(err))))
54
+ .pipe(Effect.flatMap(Effect.fail));
55
+ // opposite of api's `defaultErrorHandler`
56
+ if (err.response.status === 404) {
57
+ return toError(NotFoundError);
58
+ }
59
+ if (err.response.status === 400) {
60
+ return toError(ValidationError);
61
+ }
62
+ if (err.response.status === 401) {
63
+ return toError(NotLoggedInError);
64
+ }
65
+ // TODO: DomainError
66
+ if (err.response.status === 422) {
67
+ return responseError
68
+ ? toError(S.Union(responseError, InvalidStateError))
69
+ : toError(InvalidStateError);
70
+ }
71
+ if (err.response.status === 503) {
72
+ return toError(ServiceUnavailableError);
73
+ }
74
+ if (err.response.status === 403) {
75
+ return toError(UnauthorizedError);
76
+ }
77
+ if (err.response.status === 412) {
78
+ return toError(OptimisticConcurrencyException);
79
+ }
80
+ return Effect.fail(err);
81
+ }), Effect.catchTags({
82
+ "ResponseError": (err) => Effect
83
+ .orDie(err
84
+ .response
85
+ .text
86
+ // TODO
87
+ )
88
+ .pipe(Effect
89
+ .flatMap((_) => Effect.fail({
90
+ _tag: "HttpErrorResponse",
91
+ response: {
92
+ body: Option.fromNullable(_),
93
+ status: err.response.status,
94
+ headers: err.response.headers
95
+ }
96
+ }))),
97
+ "RequestError": (err) => Effect.fail({ _tag: "HttpErrorRequest", error: err.cause })
98
+ }), Effect.scoped));
96
99
  }
97
- export function fetchApi2S(request, response) {
100
+ export function fetchApi2S(request, response, responseError) {
98
101
  const encodeRequest = S.encode(request);
99
102
  const decRes = S.decodeUnknown(response);
100
103
  const decodeRes = (u) => Effect.mapError(decRes(u), (err) => new ResError(err));
@@ -103,12 +106,12 @@ export function fetchApi2S(request, response) {
103
106
  return Effect.andThen(encodeRequest(req), (encoded) => fetchApi(method, method === "DELETE"
104
107
  // eslint-disable-next-line @typescript-eslint/no-unsafe-argument
105
108
  ? makePathWithQuery(path, encoded)
106
- : makePathWithBody(path, encoded), encoded)
109
+ : makePathWithBody(path, encoded), encoded, responseError)
107
110
  .pipe(Effect.flatMap(parse)));
108
111
  };
109
112
  }
110
113
  export function fetchApi3S({ Request, Response }) {
111
- return fetchApi2S(Request, Response)(Request.method, new Path(Request.path));
114
+ return fetchApi2S(Request, Response, Request.errors)(Request.method, new Path(Request.path));
112
115
  }
113
116
  export function fetchApi3SE({ Request, Response }) {
114
117
  const a = fetchApi2S(Request, Response)(Request.method, new Path(Request.path));
@@ -151,4 +154,4 @@ export function EmptyResponseMThunk() {
151
154
  export function getBody(eff) {
152
155
  return Effect.flatMap(eff, (r) => r.body === null ? Effect.die("Not found") : Effect.sync(() => r.body));
153
156
  }
154
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmV0Y2guanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY2xpZW50L2ZldGNoLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHVEQUF1RDtBQUN2RCxPQUFPLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQTtBQUMxRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sMkJBQTJCLENBQUE7QUFFcEQsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFFBQVEsQ0FBQTtBQUUvQixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sbUJBQW1CLENBQUE7QUFDNUMsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUNsQyxPQUFPLEVBQUUsTUFBTSxjQUFjLENBQUE7QUFDN0IsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUV2QyxPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLGFBQWEsRUFDYixnQkFBZ0IsRUFDaEIsOEJBQThCLEVBQzlCLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsZUFBZSxFQUNoQixNQUFNLGFBQWEsQ0FBQTtBQUdwQixPQUFPLEVBQUUsVUFBVSxFQUFFLGlCQUFpQixFQUFFLE1BQU0sWUFBWSxDQUFBO0FBQzFELE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxXQUFXLENBQUE7QUFJN0IsTUFBTSxPQUFPLFFBQVE7SUFFUztJQURaLElBQUksR0FBRyxlQUFlLENBQUE7SUFDdEMsWUFBNEIsS0FBYztRQUFkLFVBQUssR0FBTCxLQUFLLENBQVM7SUFBRyxDQUFDO0NBQy9DO0FBRUQsTUFBTSxTQUFTLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FDOUIsVUFBVSxDQUFDLFVBQVUsRUFDckIsQ0FBQyxhQUFhLEVBQUUsRUFBRSxDQUNoQixNQUFNLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVB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
157
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmV0Y2guanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY2xpZW50L2ZldGNoLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHVEQUF1RDtBQUN2RCxPQUFPLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQTtBQUMxRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sMkJBQTJCLENBQUE7QUFHcEQsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFFBQVEsQ0FBQTtBQUUvQixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sbUJBQW1CLENBQUE7QUFDNUMsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUNsQyxPQUFPLEVBQUUsTUFBTSxjQUFjLENBQUE7QUFDN0IsT0FBTyxFQUFFLFVBQVUsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLFlBQVksQ0FBQTtBQUMxRCxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sV0FBVyxDQUFBO0FBQzdCLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxhQUFhLENBQUE7QUFFdkMsT0FBTyxFQUNMLGlCQUFpQixFQUNqQixhQUFhLEVBQ2IsZ0JBQWdCLEVBQ2hCLDhCQUE4QixFQUM5Qix1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLGVBQWUsRUFDaEIsTUFBTSxhQUFhLENBQUE7QUFJcEIsTUFBTSxPQUFPLFFBQVE7SUFFUztJQURaLElBQUksR0FBRyxlQUFlLENBQUE7SUFDdEMsWUFBNEIsS0FBYztRQUFkLFVBQUssR0FBTCxLQUFLLENBQVM7SUFBRyxDQUFDO0NBQy9DO0FBRUQsTUFBTSxTQUFTLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FDOUIsVUFBVSxDQUFDLFVBQVUsRUFDckIsQ0FBQyxhQUFhLEVBQUUsRUFBRSxDQUNoQixNQUFNLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVB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
package/dist/schema.d.ts CHANGED
@@ -11,12 +11,6 @@ export declare const makeIs: <A extends {
11
11
  export declare const makeIsAnyOf: <A extends {
12
12
  _tag: string;
13
13
  }, I, R>(schema: S.Schema<A, I, R>) => IsAny<A>;
14
- export declare const ExtendTaggedUnion: <A extends {
15
- _tag: string;
16
- }, I, R>(schema: S.Schema<A, I, R>) => S.Schema<A, I, R> & {
17
- is: Is<A>;
18
- isAnyOf: IsAny<A>;
19
- };
20
14
  export type ExtractUnion<A extends {
21
15
  _tag: string;
22
16
  }, Tags extends A["_tag"]> = Extract<A, Record<"_tag", Tags>>;
@@ -31,11 +25,31 @@ export interface IsAny<A extends {
31
25
  }> {
32
26
  <Keys extends A["_tag"][]>(...keys: Keys): (a: A) => a is ExtractUnion<A, ElemType<Keys>>;
33
27
  }
34
- export declare const TaggedUnion: <Members extends readonly S.Schema<{
28
+ export declare const taggedUnionMap: <Members extends readonly (S.Schema<{
35
29
  _tag: string;
36
- }, any, any>[]>(...a: Members) => S.Schema<S.Schema.Type<[...Members][number]>, S.Schema.Encoded<[...Members][number]>, S.Schema.Context<[...Members][number]>> & {
30
+ }, any, any> & {
31
+ fields: {
32
+ _tag: {
33
+ literals: readonly [string];
34
+ };
35
+ };
36
+ })[]>(self: Members) => { [Key in Members[number] as Key["fields"]["_tag"]["literals"][0]]: Key; };
37
+ export declare const ExtendTaggedUnion: <A extends {
38
+ _tag: string;
39
+ }, I, R>(schema: S.Schema<A, I, R>) => S.Schema<A, I, R> & {
40
+ is: Is<A>;
41
+ isAnyOf: IsAny<A>;
42
+ };
43
+ export declare const TaggedUnion: <Members extends ReadonlyArray<S.Schema.Any & {
44
+ fields: {
45
+ _tag: {
46
+ literals: readonly [string];
47
+ };
48
+ };
49
+ }>>(...a: Members) => S.Schema<S.Schema.Type<[...Members][number]>, S.Schema.Encoded<[...Members][number]>, S.Schema.Context<[...Members][number]>> & {
37
50
  is: Is<S.Schema.Type<[...Members][number]>>;
38
51
  isAnyOf: IsAny<S.Schema.Type<[...Members][number]>>;
52
+ tagMap: { [Key in Members[number] as Key["fields"]["_tag"]["literals"][0]]: Key; };
39
53
  };
40
54
  export type PhoneNumber = PhoneNumberT;
41
55
  //# sourceMappingURL=schema.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAgB,MAAM,kBAAkB,CAAA;AACtD,OAAO,EAAU,KAAK,KAAK,IAAI,MAAM,EAAE,KAAK,WAAW,IAAI,YAAY,EAAE,MAAM,oBAAoB,CAAA;AACnG,OAAO,KAAK,CAAC,MAAM,oBAAoB,CAAA;AAIvC,cAAc,oBAAoB,CAAA;AAElC,eAAO,MAAM,KAAK,qJAQf,CAAA;AAEH,MAAM,MAAM,KAAK,GAAG,MAAM,CAAA;AAE1B,eAAO,MAAM,WAAW,iKASrB,CAAA;AAEH,eAAO,MAAM,MAAM,GAAI,CAAC,SAAS;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,EAAE,CAAC,EAAE,CAAC,UAC7C,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,UA6B1B,CAAA;AAED,eAAO,MAAM,WAAW,GAAI,CAAC,SAAS;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,EAAE,CAAC,EAAE,CAAC,UAClD,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KACxB,KAAK,CAAC,CAAC,CAMT,CAAA;AAED,eAAO,MAAM,iBAAiB,GAAI,CAAC,SAAS;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,EAAE,CAAC,EAAE,CAAC,UACxD,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;;;CAC8C,CAAA;AAEzE,MAAM,MAAM,YAAY,CAAC,CAAC,SAAS;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,EAAE,IAAI,SAAS,CAAC,CAAC,MAAM,CAAC,IAAI,OAAO,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAA;AAC/G,MAAM,MAAM,EAAE,CAAC,CAAC,SAAS;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,IAAI;KAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC;CAAE,CAAA;AACxF,MAAM,MAAM,QAAQ,CAAC,CAAC,IAAI,CAAC,SAAS,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;AAC9D,MAAM,WAAW,KAAK,CAAC,CAAC,SAAS;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE;IAC/C,CAAC,IAAI,SAAS,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,IAAI,EAAE,IAAI,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,YAAY,CAAC,CAAC,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAA;CAC1F;AAED,eAAO,MAAM,WAAW,GAAI,OAAO,SAAS,SAAS,CAAC,CAAC,MAAM,CAAC;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,QAAQ,OAAO;;;CACb,CAAA;AAE7F,MAAM,MAAM,WAAW,GAAG,YAAY,CAAA"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAgB,MAAM,kBAAkB,CAAA;AACtD,OAAO,EAAU,KAAK,KAAK,IAAI,MAAM,EAAE,KAAK,WAAW,IAAI,YAAY,EAAE,MAAM,oBAAoB,CAAA;AACnG,OAAO,KAAK,CAAC,MAAM,oBAAoB,CAAA;AAIvC,cAAc,oBAAoB,CAAA;AAElC,eAAO,MAAM,KAAK,qJAQf,CAAA;AAEH,MAAM,MAAM,KAAK,GAAG,MAAM,CAAA;AAE1B,eAAO,MAAM,WAAW,iKASrB,CAAA;AAEH,eAAO,MAAM,MAAM,GAAI,CAAC,SAAS;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,EAAE,CAAC,EAAE,CAAC,UAC7C,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,UA6B1B,CAAA;AAED,eAAO,MAAM,WAAW,GAAI,CAAC,SAAS;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,EAAE,CAAC,EAAE,CAAC,UAClD,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KACxB,KAAK,CAAC,CAAC,CAMT,CAAA;AAED,MAAM,MAAM,YAAY,CAAC,CAAC,SAAS;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,EAAE,IAAI,SAAS,CAAC,CAAC,MAAM,CAAC,IAAI,OAAO,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAA;AAC/G,MAAM,MAAM,EAAE,CAAC,CAAC,SAAS;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,IAAI;KAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC;CAAE,CAAA;AACxF,MAAM,MAAM,QAAQ,CAAC,CAAC,IAAI,CAAC,SAAS,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;AAC9D,MAAM,WAAW,KAAK,CAAC,CAAC,SAAS;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE;IAC/C,CAAC,IAAI,SAAS,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,IAAI,EAAE,IAAI,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,YAAY,CAAC,CAAC,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAA;CAC1F;AAED,eAAO,MAAM,cAAc,GACzB,OAAO,SACG,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG;IAAE,MAAM,EAAE;QAAE,IAAI,EAAE;YAAE,QAAQ,EAAE,SAAS,CAAC,MAAM,CAAC,CAAA;SAAE,CAAA;KAAE,CAAA;CAAE,CAAC,EAAE,QAE7G,OAAO,QASD,GAAG,oEAAoE,CAAA;AAErF,eAAO,MAAM,iBAAiB,GAAI,CAAC,SAAS;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,EAAE,CAAC,EAAE,CAAC,UACxD,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;;;CAC4E,CAAA;AAEvG,eAAO,MAAM,WAAW,GACtB,OAAO,SAAS,aAAa,CAC3B,CAAC,CAAC,MAAM,CAAC,GAAG,GAAG;IAAE,MAAM,EAAE;QAAE,IAAI,EAAE;YAAE,QAAQ,EAAE,SAAS,CAAC,MAAM,CAAC,CAAA;SAAE,CAAA;KAAE,CAAA;CAAE,CACrE,QACK,OAAO;;;eAVD,GAAG;CAWuG,CAAA;AAExH,MAAM,MAAM,WAAW,GAAG,YAAY,CAAA"}
package/dist/schema.js CHANGED
@@ -53,6 +53,15 @@ export const makeIsAnyOf = (schema) => {
53
53
  }
54
54
  throw new Error("Unsupported");
55
55
  };
56
- export const ExtendTaggedUnion = (schema) => extendM(schema, (_) => ({ is: makeIs(_), isAnyOf: makeIsAnyOf(_) }));
57
- export const TaggedUnion = (...a) => pipe(S.Union(...a), (_) => extendM(_, (_) => ({ is: makeIs(_), isAnyOf: makeIsAnyOf(_) })));
58
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NoZW1hLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3NjaGVtYS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQTtBQUV0RCxPQUFPLEtBQUssQ0FBQyxNQUFNLG9CQUFvQixDQUFBO0FBQ3ZDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFDckMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFlBQVksQ0FBQTtBQUVwQyxjQUFjLG9CQUFvQixDQUFBO0FBRWxDLE1BQU0sQ0FBQyxNQUFNLEtBQUssR0FBRyxDQUFDO0tBQ25CLEtBQUs7S0FDTCxJQUFJLENBQ0gsQ0FBQyxDQUFDLFdBQVcsQ0FBQztJQUNaLDZEQUE2RDtJQUM3RCxTQUFTLEVBQUUsR0FBMkIsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQztDQUNqSCxDQUFDLEVBQ0YsQ0FBQyxDQUFDLGVBQWUsQ0FDbEIsQ0FBQTtBQUlILE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRyxDQUFDO0tBQ3pCLFdBQVc7S0FDWCxJQUFJLENBQ0gsQ0FBQyxDQUFDLFdBQVcsQ0FBQztJQUNaLFNBQVMsRUFBRSxHQUFpQyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRTtJQUNwRCw2REFBNkQ7SUFDN0QsUUFBUSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUM7Q0FDL0QsQ0FBQyxFQUNGLENBQUMsQ0FBQyxlQUFlLENBQ2xCLENBQUE7QUFFSCxNQUFNLENBQUMsTUFBTSxNQUFNLEdBQUcsQ0FDcEIsTUFBeUIsRUFDekIsRUFBRTtJQUNGLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUM7UUFDOUIsT0FBTyxNQUFNLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLEVBQUU7WUFDeEMsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7Z0JBQzlCLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUM7b0JBQzlCLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFBO2dCQUNaLENBQUM7cUJBQU0sQ0FBQztvQkFDTixDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsQ0FBQTtnQkFDVixDQUFDO1lBQ0gsQ0FBQztZQUNELElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUM7Z0JBQUUsT0FBTyxHQUFHLENBQUE7WUFDdkMsTUFBTSxHQUFHLEdBQUcsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRTtnQkFDdEQsSUFBSSxDQUFDLENBQUMsSUFBSSxLQUFLLE1BQU0sSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztvQkFDakQsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQTtnQkFDNUIsQ0FBQztnQkFDRCxPQUFPLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQTtZQUN0QixDQUFDLENBQUMsQ0FBQTtZQUNGLE1BQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLENBQUE7WUFDdEMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDO2dCQUNULE9BQU8sR0FBRyxDQUFBO1lBQ1osQ0FBQztZQUNELE9BQU87Z0JBQ0wsR0FBRyxHQUFHO2dCQUNOLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBbUIsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxHQUFHLENBQUMsT0FBTzthQUN2RSxDQUFBO1FBQ0gsQ0FBQyxFQUFFLEVBQVcsQ0FBQyxDQUFBO0lBQ2pCLENBQUM7SUFDRCxNQUFNLElBQUksS0FBSyxDQUFDLGFBQWEsQ0FBQyxDQUFBO0FBQ2hDLENBQUMsQ0FBQTtBQUVELE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRyxDQUN6QixNQUF5QixFQUNmLEVBQUU7SUFDWixJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO1FBQzlCLE9BQU8sQ0FBMkIsR0FBRyxJQUFVLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBSSxFQUF3QyxFQUFFLENBQ2pHLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFBO0lBQ3pCLENBQUM7SUFDRCxNQUFNLElBQUksS0FBSyxDQUFDLGFBQWEsQ0FBQyxDQUFBO0FBQ2hDLENBQUMsQ0FBQTtBQUVELE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLENBQy9CLE1BQXlCLEVBQ3pCLEVBQUUsQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxPQUFPLEVBQUUsV0FBVyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFBO0FBU3pFLE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRyxDQUFrRSxHQUFHLENBQVUsRUFBRSxFQUFFLENBQzVHLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLE9BQU8sRUFBRSxXQUFXLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQSJ9
56
+ export const taggedUnionMap = (self) => self.reduce((acc, key) => {
57
+ // TODO: check upstream what's going on with literals of _tag
58
+ const tg = key.fields._tag;
59
+ const tag = ("ast" in tg && tg.ast._tag === "PropertySignatureDeclaration" ? tg.ast.type.literal : tg
60
+ .literals[0]) // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-explicit-any, @typescript-eslint/no-unsafe-member-access
61
+ ;
62
+ acc[tag] = key;
63
+ return acc;
64
+ }, {});
65
+ export const ExtendTaggedUnion = (schema) => extendM(schema, (_) => ({ is: makeIs(_), isAnyOf: makeIsAnyOf(_) /*, map: taggedUnionMap(a) */ }));
66
+ export const TaggedUnion = (...a) => pipe(S.Union(...a), (_) => extendM(_, (_) => ({ is: makeIs(_), isAnyOf: makeIsAnyOf(_), tagMap: taggedUnionMap(a) })));
67
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NoZW1hLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3NjaGVtYS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQTtBQUV0RCxPQUFPLEtBQUssQ0FBQyxNQUFNLG9CQUFvQixDQUFBO0FBQ3ZDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFDckMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFlBQVksQ0FBQTtBQUVwQyxjQUFjLG9CQUFvQixDQUFBO0FBRWxDLE1BQU0sQ0FBQyxNQUFNLEtBQUssR0FBRyxDQUFDO0tBQ25CLEtBQUs7S0FDTCxJQUFJLENBQ0gsQ0FBQyxDQUFDLFdBQVcsQ0FBQztJQUNaLDZEQUE2RDtJQUM3RCxTQUFTLEVBQUUsR0FBMkIsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQztDQUNqSCxDQUFDLEVBQ0YsQ0FBQyxDQUFDLGVBQWUsQ0FDbEIsQ0FBQTtBQUlILE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRyxDQUFDO0tBQ3pCLFdBQVc7S0FDWCxJQUFJLENBQ0gsQ0FBQyxDQUFDLFdBQVcsQ0FBQztJQUNaLFNBQVMsRUFBRSxHQUFpQyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRTtJQUNwRCw2REFBNkQ7SUFDN0QsUUFBUSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUM7Q0FDL0QsQ0FBQyxFQUNGLENBQUMsQ0FBQyxlQUFlLENBQ2xCLENB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
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "effect-app",
3
- "version": "1.10.2",
3
+ "version": "1.11.2",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "dependencies": {
@@ -12,8 +12,8 @@
12
12
  "ts-pattern": "^5.3.1",
13
13
  "uuid": "^10.0.0",
14
14
  "validator": "^13.12.0",
15
- "@effect-app/schema": "1.7.1",
16
- "@effect-app/core": "1.7.1"
15
+ "@effect-app/core": "1.7.1",
16
+ "@effect-app/schema": "1.8.0"
17
17
  },
18
18
  "devDependencies": {
19
19
  "@babel/cli": "^7.25.6",
package/src/Operations.ts CHANGED
@@ -19,7 +19,7 @@ export class Failure extends S.ExtendedTaggedClass<Failure, Failure.From>()("Fai
19
19
  message: S.NullOr(S.NonEmptyString2k).withDefault
20
20
  }) {}
21
21
 
22
- export const OperationResult = S.ExtendTaggedUnion(S.Union(Success, Failure))
22
+ export const OperationResult = S.TaggedUnion(Success, Failure)
23
23
  export type OperationResult = S.Schema.Type<typeof OperationResult>
24
24
 
25
25
  export class Operation extends S.ExtendedClass<Operation, Operation.From>()({
@@ -116,7 +116,7 @@ function clientFor_<M extends Requests>(models: M) {
116
116
  prev[cur] = Request.method === "GET"
117
117
  ? fields.length === 0
118
118
  ? {
119
- handler: fetchApi(Request.method, Request.path)
119
+ handler: fetchApi(Request.method, Request.path, undefined, Request.errors)
120
120
  .pipe(
121
121
  Effect.flatMap(parse),
122
122
  Effect
@@ -128,7 +128,7 @@ function clientFor_<M extends Requests>(models: M) {
128
128
  }
129
129
  : {
130
130
  handler: (req: any) =>
131
- fetchApi(Request.method, makePathWithQuery(path, S.encodeSync(Request)(req)))
131
+ fetchApi(Request.method, makePathWithQuery(path, S.encodeSync(Request)(req)), undefined, Request.errors)
132
132
  .pipe(
133
133
  Effect.flatMap(parse),
134
134
  Effect
@@ -2,11 +2,14 @@
2
2
  import { Effect, HashMap, Option } from "@effect-app/core"
3
3
  import { constant } from "@effect-app/core/Function"
4
4
  import type { Headers, HttpError, HttpRequestError, HttpResponseError, Method } from "@effect-app/core/http/http-client"
5
+ import type { ResponseError } from "@effect/platform/HttpClientError"
5
6
  import { Record } from "effect"
6
7
  import type { REST, Schema } from "effect-app/schema"
7
8
  import { StringId } from "effect-app/schema"
8
9
  import { Path } from "path-parser"
9
10
  import qs from "query-string"
11
+ import { HttpClient, HttpClientRequest } from "../http.js"
12
+ import { S } from "../lib.js"
10
13
  import { ApiConfig } from "./config.js"
11
14
  import type { SupportedErrors } from "./errors.js"
12
15
  import {
@@ -19,10 +22,6 @@ import {
19
22
  ValidationError
20
23
  } from "./errors.js"
21
24
 
22
- import type { ResponseError } from "@effect/platform/HttpClientError"
23
- import { HttpClient, HttpClientRequest } from "../http.js"
24
- import { S } from "../lib.js"
25
-
26
25
  export type FetchError = HttpError<string>
27
26
 
28
27
  export class ResError {
@@ -68,75 +67,15 @@ const getClient = Effect.flatMap(
68
67
  ? Effect.sync(() => ({ status: _.status, body: void 0, headers: _.headers }))
69
68
  : Effect.map(_.json, (body) => ({ status: _.status, body, headers: _.headers })))
70
69
  .pipe(Effect.withSpan("client.response"))
71
- ),
72
- HttpClient
73
- .catchTag(
74
- "ResponseError",
75
- (err): Effect<FetchResponse<unknown>, ResponseError | SupportedErrors> => {
76
- const toError = <R, From, To>(s: Schema<To, From, R>) =>
77
- Effect
78
- .flatMap(
79
- err
80
- .response
81
- .json,
82
- (_) => S.decodeUnknown(s)(_).pipe(Effect.catchAll(() => Effect.fail(err)))
83
- )
84
- .pipe(Effect.flatMap(Effect.fail))
85
-
86
- // opposite of api's `defaultErrorHandler`
87
- if (err.response.status === 404) {
88
- return toError(NotFoundError)
89
- }
90
- if (err.response.status === 400) {
91
- return toError(ValidationError)
92
- }
93
- if (err.response.status === 401) {
94
- return toError(NotLoggedInError)
95
- }
96
- if (err.response.status === 422) {
97
- return toError(InvalidStateError)
98
- }
99
- if (err.response.status === 503) {
100
- return toError(ServiceUnavailableError)
101
- }
102
- if (err.response.status === 403) {
103
- return toError(UnauthorizedError)
104
- }
105
- if (err.response.status === 412) {
106
- return toError(OptimisticConcurrencyException)
107
- }
108
- return Effect.fail(err)
109
- }
110
- ),
111
- HttpClient.catchTags({
112
- "ResponseError": (err) =>
113
- Effect
114
- .orDie(
115
- err
116
- .response
117
- .text
118
- // TODO
119
- )
120
- .pipe(Effect
121
- .flatMap((_) =>
122
- Effect.fail({
123
- _tag: "HttpErrorResponse" as const,
124
- response: {
125
- body: Option.fromNullable(_),
126
- status: err.response.status,
127
- headers: err.response.headers
128
- }
129
- } as HttpResponseError<unknown>)
130
- )),
131
- "RequestError": (err) => Effect.fail({ _tag: "HttpErrorRequest", error: err.cause } as HttpRequestError)
132
- })
70
+ )
133
71
  ))
134
72
  )
135
73
 
136
74
  export function fetchApi(
137
75
  method: Method,
138
76
  path: string,
139
- body?: unknown
77
+ body?: unknown,
78
+ responseError?: S.Schema.AnyNoContext
140
79
  ) {
141
80
  return Effect.flatMap(getClient, (client) =>
142
81
  (method === "GET"
@@ -146,12 +85,88 @@ export function fetchApi(
146
85
  : HttpClientRequest
147
86
  .make(method)(path)
148
87
  .pipe(HttpClientRequest.jsonBody(body), Effect.flatMap(client)))
149
- .pipe(Effect.scoped))
88
+ .pipe(
89
+ Effect
90
+ .catchTag(
91
+ "ResponseError",
92
+ (err): Effect<FetchResponse<unknown>, ResponseError | SupportedErrors> => {
93
+ const toError = <R, From, To>(s: Schema<To, From, R>) =>
94
+ Effect
95
+ .flatMap(
96
+ err
97
+ .response
98
+ .json,
99
+ (_) => S.decodeUnknown(s)(_).pipe(Effect.catchAll(() => Effect.fail(err)))
100
+ )
101
+ .pipe(Effect.flatMap(Effect.fail))
102
+
103
+ // opposite of api's `defaultErrorHandler`
104
+ if (err.response.status === 404) {
105
+ return toError(NotFoundError)
106
+ }
107
+ if (err.response.status === 400) {
108
+ return toError(ValidationError)
109
+ }
110
+ if (err.response.status === 401) {
111
+ return toError(NotLoggedInError)
112
+ }
113
+ // TODO: DomainError
114
+ if (err.response.status === 422) {
115
+ return responseError
116
+ ? toError(S.Union(responseError, InvalidStateError) as any)
117
+ : toError(InvalidStateError)
118
+ }
119
+ if (err.response.status === 503) {
120
+ return toError(ServiceUnavailableError)
121
+ }
122
+ if (err.response.status === 403) {
123
+ return toError(UnauthorizedError)
124
+ }
125
+ if (err.response.status === 412) {
126
+ return toError(OptimisticConcurrencyException)
127
+ }
128
+ return Effect.fail(err)
129
+ }
130
+ ),
131
+ Effect.catchTags({
132
+ "ResponseError": (err) =>
133
+ Effect
134
+ .orDie(
135
+ err
136
+ .response
137
+ .text
138
+ // TODO
139
+ )
140
+ .pipe(Effect
141
+ .flatMap((_) =>
142
+ Effect.fail({
143
+ _tag: "HttpErrorResponse" as const,
144
+ response: {
145
+ body: Option.fromNullable(_),
146
+ status: err.response.status,
147
+ headers: err.response.headers
148
+ }
149
+ } as HttpResponseError<unknown>)
150
+ )),
151
+ "RequestError": (err) => Effect.fail({ _tag: "HttpErrorRequest", error: err.cause } as HttpRequestError)
152
+ }),
153
+ Effect.scoped
154
+ ))
150
155
  }
151
156
 
152
- export function fetchApi2S<RequestR, RequestFrom, RequestTo, ResponseR, ResponseFrom, ResponseTo>(
157
+ export function fetchApi2S<
158
+ RequestR,
159
+ RequestFrom,
160
+ RequestTo,
161
+ ResponseR,
162
+ ResponseFrom,
163
+ ResponseTo,
164
+ ResponseErrorFrom = never,
165
+ ResponseErrorTo extends { _tag: string } = never
166
+ >(
153
167
  request: Schema<RequestTo, RequestFrom, RequestR>,
154
- response: Schema<ResponseTo, ResponseFrom, ResponseR>
168
+ response: Schema<ResponseTo, ResponseFrom, ResponseR>,
169
+ responseError?: Schema<ResponseErrorTo, ResponseErrorFrom, never>
155
170
  ) {
156
171
  const encodeRequest = S.encode(request)
157
172
  const decRes = S.decodeUnknown(response)
@@ -165,7 +180,8 @@ export function fetchApi2S<RequestR, RequestFrom, RequestTo, ResponseR, Response
165
180
  // eslint-disable-next-line @typescript-eslint/no-unsafe-argument
166
181
  ? makePathWithQuery(path, encoded as any)
167
182
  : makePathWithBody(path, encoded as any),
168
- encoded
183
+ encoded,
184
+ responseError
169
185
  )
170
186
  .pipe(Effect.flatMap(parse)))
171
187
  }
@@ -180,7 +196,7 @@ export function fetchApi3S<RequestA, RequestE, ResponseE = unknown, ResponseA =
180
196
  // eslint-disable-next-line @typescript-eslint/ban-types
181
197
  Response: REST.ReqRes<ResponseA, ResponseE, any>
182
198
  }) {
183
- return fetchApi2S(Request, Response)(
199
+ return fetchApi2S(Request, Response, Request.errors)(
184
200
  Request.method,
185
201
  new Path(Request.path)
186
202
  )
package/src/schema.ts CHANGED
@@ -71,10 +71,6 @@ export const makeIsAnyOf = <A extends { _tag: string }, I, R>(
71
71
  throw new Error("Unsupported")
72
72
  }
73
73
 
74
- export const ExtendTaggedUnion = <A extends { _tag: string }, I, R>(
75
- schema: S.Schema<A, I, R>
76
- ) => extendM(schema, (_) => ({ is: makeIs(_), isAnyOf: makeIsAnyOf(_) }))
77
-
78
74
  export type ExtractUnion<A extends { _tag: string }, Tags extends A["_tag"]> = Extract<A, Record<"_tag", Tags>>
79
75
  export type Is<A extends { _tag: string }> = { [K in A as K["_tag"]]: (a: A) => a is K }
80
76
  export type ElemType<A> = A extends Array<infer E> ? E : never
@@ -82,7 +78,30 @@ export interface IsAny<A extends { _tag: string }> {
82
78
  <Keys extends A["_tag"][]>(...keys: Keys): (a: A) => a is ExtractUnion<A, ElemType<Keys>>
83
79
  }
84
80
 
85
- export const TaggedUnion = <Members extends readonly S.Schema<{ _tag: string }, any, any>[]>(...a: Members) =>
86
- pipe(S.Union(...a), (_) => extendM(_, (_) => ({ is: makeIs(_), isAnyOf: makeIsAnyOf(_) })))
81
+ export const taggedUnionMap = <
82
+ Members
83
+ extends readonly (S.Schema<{ _tag: string }, any, any> & { fields: { _tag: { literals: readonly [string] } } })[]
84
+ >(
85
+ self: Members
86
+ ) =>
87
+ self.reduce((acc, key) => {
88
+ // TODO: check upstream what's going on with literals of _tag
89
+ const tg = key.fields._tag as any
90
+ const tag = ("ast" in tg && tg.ast._tag === "PropertySignatureDeclaration" ? tg.ast.type.literal : tg
91
+ .literals[0]) as string // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-explicit-any, @typescript-eslint/no-unsafe-member-access
92
+ ;(acc as any)[tag] = key as any
93
+ return acc
94
+ }, {} as { [Key in Members[number] as Key["fields"]["_tag"]["literals"][0]]: Key })
95
+
96
+ export const ExtendTaggedUnion = <A extends { _tag: string }, I, R>(
97
+ schema: S.Schema<A, I, R>
98
+ ) => extendM(schema, (_) => ({ is: makeIs(_), isAnyOf: makeIsAnyOf(_) /*, map: taggedUnionMap(a) */ }))
99
+
100
+ export const TaggedUnion = <
101
+ Members extends ReadonlyArray<
102
+ S.Schema.Any & { fields: { _tag: { literals: readonly [string] } } }
103
+ >
104
+ >(...a: Members) =>
105
+ pipe(S.Union(...a), (_) => extendM(_, (_) => ({ is: makeIs(_), isAnyOf: makeIsAnyOf(_), tagMap: taggedUnionMap(a) })))
87
106
 
88
107
  export type PhoneNumber = PhoneNumberT