effect-app 1.11.0 → 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,17 @@
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
+
3
15
  ## 1.11.0
4
16
 
5
17
  ### Minor 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":[]}
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
@@ -16,18 +16,18 @@ export declare function fetchApi(method: Method, path: string, body?: unknown, r
16
16
  status: number;
17
17
  body: unknown;
18
18
  headers: import("@effect/platform/Headers").Headers;
19
- } | FetchResponse<unknown>, import("@effect/platform/HttpBody").HttpBodyError | InvalidStateError | OptimisticConcurrencyException | NotFoundError<ItemType> | NotLoggedInError | import("./errors.js").LoginError | UnauthorizedError | ValidationError | ServiceUnavailableError | HttpResponseError<unknown> | HttpRequestError, HttpClient.HttpClient.Default | ApiConfig>;
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
20
  export declare function fetchApi2S<RequestR, RequestFrom, RequestTo, ResponseR, ResponseFrom, ResponseTo, ResponseErrorFrom = never, ResponseErrorTo extends {
21
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>, ResError | import("@effect/platform/HttpBody").HttpBodyError | InvalidStateError | OptimisticConcurrencyException | NotFoundError<ItemType> | NotLoggedInError | import("./errors.js").LoginError | UnauthorizedError | ValidationError | ServiceUnavailableError | HttpResponseError<unknown> | HttpRequestError | S.ParseResult.ParseError, HttpClient.HttpClient.Default | ApiConfig | RequestR | ResponseR>;
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>;
23
23
  export declare function fetchApi3S<RequestA, RequestE, ResponseE = unknown, ResponseA = void>({ Request, Response }: {
24
24
  Request: REST.RequestSchemed<RequestA, RequestE>;
25
25
  Response: REST.ReqRes<ResponseA, ResponseE, any>;
26
- }): (req: RequestA) => Effect.Effect<FetchResponse<ResponseA>, ResError | import("@effect/platform/HttpBody").HttpBodyError | InvalidStateError | OptimisticConcurrencyException | NotFoundError<ItemType> | NotLoggedInError | import("./errors.js").LoginError | UnauthorizedError | ValidationError | ServiceUnavailableError | HttpResponseError<unknown> | HttpRequestError | S.ParseResult.ParseError, 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>;
27
27
  export declare function fetchApi3SE<RequestA, RequestE, ResponseE = unknown, ResponseA = void>({ Request, Response }: {
28
28
  Request: REST.RequestSchemed<RequestA, RequestE>;
29
29
  Response: REST.ReqRes<ResponseA, ResponseE, any>;
30
- }): (req: RequestA) => Effect.Effect<FetchResponse<ResponseE>, ResError | import("@effect/platform/HttpBody").HttpBodyError | InvalidStateError | OptimisticConcurrencyException | NotFoundError<ItemType> | NotLoggedInError | import("./errors.js").LoginError | UnauthorizedError | ValidationError | ServiceUnavailableError | HttpResponseError<unknown> | HttpRequestError | S.ParseResult.ParseError, 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>;
31
31
  export declare function makePathWithQuery(path: Path, pars: Record<string, string | number | boolean | readonly string[] | readonly number[] | readonly boolean[] | null>): string;
32
32
  export declare function makePathWithBody(path: Path, pars: Record<string, string | number | boolean | readonly string[] | readonly number[] | readonly boolean[] | null>): string;
33
33
  export declare function mapResponse<T, A>(map: (t: T) => A): (r: FetchResponse<T>) => FetchResponse<A>;
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.11.0",
3
+ "version": "1.11.2",
4
4
  "license": "MIT",
5
5
  "type": "module",
6
6
  "dependencies": {
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>()({
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