effect-app 4.0.0-beta.14 → 4.0.0-beta.140

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (198) hide show
  1. package/CHANGELOG.md +534 -0
  2. package/dist/Array.d.ts +1 -1
  3. package/dist/Chunk.d.ts +1 -1
  4. package/dist/Chunk.d.ts.map +1 -1
  5. package/dist/Config/SecretURL.d.ts +1 -1
  6. package/dist/Config/SecretURL.d.ts.map +1 -1
  7. package/dist/Config/SecretURL.js +2 -2
  8. package/dist/Config/internal/configSecretURL.d.ts +1 -1
  9. package/dist/Config/internal/configSecretURL.d.ts.map +1 -1
  10. package/dist/Config.d.ts +7 -0
  11. package/dist/Config.d.ts.map +1 -0
  12. package/dist/Config.js +6 -0
  13. package/dist/ConfigProvider.d.ts +39 -0
  14. package/dist/ConfigProvider.d.ts.map +1 -0
  15. package/dist/ConfigProvider.js +42 -0
  16. package/dist/Context.d.ts +40 -0
  17. package/dist/Context.d.ts.map +1 -0
  18. package/dist/Context.js +67 -0
  19. package/dist/Effect.d.ts +9 -10
  20. package/dist/Effect.d.ts.map +1 -1
  21. package/dist/Effect.js +3 -6
  22. package/dist/Function.d.ts +1 -1
  23. package/dist/Function.d.ts.map +1 -1
  24. package/dist/Inputify.type.d.ts +1 -1
  25. package/dist/Layer.d.ts +6 -5
  26. package/dist/Layer.d.ts.map +1 -1
  27. package/dist/Layer.js +1 -1
  28. package/dist/NonEmptySet.d.ts +1 -1
  29. package/dist/NonEmptySet.d.ts.map +1 -1
  30. package/dist/Operations.d.ts +191 -38
  31. package/dist/Operations.d.ts.map +1 -1
  32. package/dist/Option.d.ts +1 -1
  33. package/dist/Option.d.ts.map +1 -1
  34. package/dist/Pure.d.ts +5 -5
  35. package/dist/Pure.d.ts.map +1 -1
  36. package/dist/Pure.js +13 -13
  37. package/dist/Schema/Class.d.ts +55 -14
  38. package/dist/Schema/Class.d.ts.map +1 -1
  39. package/dist/Schema/Class.js +130 -20
  40. package/dist/Schema/FastCheck.d.ts +1 -1
  41. package/dist/Schema/FastCheck.d.ts.map +1 -1
  42. package/dist/Schema/Methods.d.ts +1 -1
  43. package/dist/Schema/SpecialJsonSchema.d.ts +33 -0
  44. package/dist/Schema/SpecialJsonSchema.d.ts.map +1 -0
  45. package/dist/Schema/SpecialJsonSchema.js +122 -0
  46. package/dist/Schema/SpecialOpenApi.d.ts +32 -0
  47. package/dist/Schema/SpecialOpenApi.d.ts.map +1 -0
  48. package/dist/Schema/SpecialOpenApi.js +123 -0
  49. package/dist/Schema/brand.d.ts +11 -2
  50. package/dist/Schema/brand.d.ts.map +1 -1
  51. package/dist/Schema/brand.js +1 -1
  52. package/dist/Schema/email.d.ts +1 -1
  53. package/dist/Schema/email.d.ts.map +1 -1
  54. package/dist/Schema/email.js +9 -4
  55. package/dist/Schema/ext.d.ts +113 -48
  56. package/dist/Schema/ext.d.ts.map +1 -1
  57. package/dist/Schema/ext.js +115 -53
  58. package/dist/Schema/moreStrings.d.ts +111 -11
  59. package/dist/Schema/moreStrings.d.ts.map +1 -1
  60. package/dist/Schema/moreStrings.js +19 -10
  61. package/dist/Schema/numbers.d.ts +127 -15
  62. package/dist/Schema/numbers.d.ts.map +1 -1
  63. package/dist/Schema/numbers.js +10 -9
  64. package/dist/Schema/phoneNumber.d.ts +1 -1
  65. package/dist/Schema/phoneNumber.d.ts.map +1 -1
  66. package/dist/Schema/phoneNumber.js +8 -3
  67. package/dist/Schema/schema.d.ts +1 -1
  68. package/dist/Schema/strings.d.ts +37 -5
  69. package/dist/Schema/strings.d.ts.map +1 -1
  70. package/dist/Schema/strings.js +1 -1
  71. package/dist/Schema.d.ts +75 -56
  72. package/dist/Schema.d.ts.map +1 -1
  73. package/dist/Schema.js +85 -64
  74. package/dist/Set.d.ts +1 -1
  75. package/dist/Set.d.ts.map +1 -1
  76. package/dist/TypeTest.d.ts +1 -1
  77. package/dist/Types.d.ts +1 -1
  78. package/dist/Widen.type.d.ts +1 -1
  79. package/dist/_ext/Array.d.ts +1 -1
  80. package/dist/_ext/Array.d.ts.map +1 -1
  81. package/dist/_ext/date.d.ts +1 -1
  82. package/dist/_ext/misc.d.ts +1 -1
  83. package/dist/_ext/ord.ext.d.ts +1 -1
  84. package/dist/_ext/ord.ext.d.ts.map +1 -1
  85. package/dist/builtin.d.ts +1 -1
  86. package/dist/builtin.d.ts.map +1 -1
  87. package/dist/client/apiClientFactory.d.ts +13 -29
  88. package/dist/client/apiClientFactory.d.ts.map +1 -1
  89. package/dist/client/apiClientFactory.js +16 -17
  90. package/dist/client/clientFor.d.ts +7 -6
  91. package/dist/client/clientFor.d.ts.map +1 -1
  92. package/dist/client/errors.d.ts +19 -10
  93. package/dist/client/errors.d.ts.map +1 -1
  94. package/dist/client/errors.js +35 -10
  95. package/dist/client/makeClient.d.ts +74 -29
  96. package/dist/client/makeClient.d.ts.map +1 -1
  97. package/dist/client/makeClient.js +49 -23
  98. package/dist/client.d.ts +1 -1
  99. package/dist/faker.d.ts +1 -1
  100. package/dist/faker.d.ts.map +1 -1
  101. package/dist/http/Request.d.ts +2 -2
  102. package/dist/http/Request.d.ts.map +1 -1
  103. package/dist/http/Request.js +5 -5
  104. package/dist/http/internal/lib.d.ts +1 -1
  105. package/dist/http.d.ts +1 -1
  106. package/dist/ids.d.ts +3 -3
  107. package/dist/ids.d.ts.map +1 -1
  108. package/dist/ids.js +3 -2
  109. package/dist/index.d.ts +5 -8
  110. package/dist/index.d.ts.map +1 -1
  111. package/dist/index.js +6 -8
  112. package/dist/logger.d.ts +1 -1
  113. package/dist/middleware.d.ts +8 -8
  114. package/dist/middleware.d.ts.map +1 -1
  115. package/dist/middleware.js +8 -8
  116. package/dist/rpc/MiddlewareMaker.d.ts +5 -4
  117. package/dist/rpc/MiddlewareMaker.d.ts.map +1 -1
  118. package/dist/rpc/MiddlewareMaker.js +26 -27
  119. package/dist/rpc/RpcContextMap.d.ts +3 -3
  120. package/dist/rpc/RpcContextMap.d.ts.map +1 -1
  121. package/dist/rpc/RpcContextMap.js +4 -4
  122. package/dist/rpc/RpcMiddleware.d.ts +5 -4
  123. package/dist/rpc/RpcMiddleware.d.ts.map +1 -1
  124. package/dist/rpc/RpcMiddleware.js +1 -1
  125. package/dist/rpc.d.ts +1 -2
  126. package/dist/rpc.d.ts.map +1 -1
  127. package/dist/rpc.js +1 -2
  128. package/dist/transform.d.ts +1 -1
  129. package/dist/transform.d.ts.map +1 -1
  130. package/dist/transform.js +3 -3
  131. package/dist/utils/effectify.d.ts +1 -1
  132. package/dist/utils/extend.d.ts +1 -1
  133. package/dist/utils/extend.d.ts.map +1 -1
  134. package/dist/utils/gen.d.ts +2 -2
  135. package/dist/utils/gen.d.ts.map +1 -1
  136. package/dist/utils/logLevel.d.ts +2 -2
  137. package/dist/utils/logLevel.d.ts.map +1 -1
  138. package/dist/utils/logger.d.ts +3 -3
  139. package/dist/utils/logger.d.ts.map +1 -1
  140. package/dist/utils/logger.js +3 -3
  141. package/dist/utils.d.ts +13 -7
  142. package/dist/utils.d.ts.map +1 -1
  143. package/dist/utils.js +9 -3
  144. package/dist/validation/validators.d.ts +1 -1
  145. package/dist/validation/validators.d.ts.map +1 -1
  146. package/dist/validation.d.ts +1 -1
  147. package/dist/validation.d.ts.map +1 -1
  148. package/eslint.config.mjs +1 -1
  149. package/package.json +35 -19
  150. package/src/Config/SecretURL.ts +2 -1
  151. package/src/Config.ts +14 -0
  152. package/src/ConfigProvider.ts +48 -0
  153. package/src/{ServiceMap.ts → Context.ts} +52 -59
  154. package/src/Effect.ts +12 -14
  155. package/src/Layer.ts +5 -4
  156. package/src/Pure.ts +17 -18
  157. package/src/Schema/Class.ts +177 -36
  158. package/src/Schema/SpecialJsonSchema.ts +137 -0
  159. package/src/Schema/SpecialOpenApi.ts +130 -0
  160. package/src/Schema/brand.ts +18 -3
  161. package/src/Schema/email.ts +10 -2
  162. package/src/Schema/ext.ts +196 -87
  163. package/src/Schema/moreStrings.ts +31 -17
  164. package/src/Schema/numbers.ts +14 -13
  165. package/src/Schema/phoneNumber.ts +8 -1
  166. package/src/Schema/strings.ts +4 -4
  167. package/src/Schema.ts +195 -104
  168. package/src/client/apiClientFactory.ts +104 -112
  169. package/src/client/clientFor.ts +6 -1
  170. package/src/client/errors.ts +42 -17
  171. package/src/client/makeClient.ts +150 -61
  172. package/src/http/Request.ts +7 -4
  173. package/src/ids.ts +2 -1
  174. package/src/index.ts +5 -10
  175. package/src/middleware.ts +7 -9
  176. package/src/rpc/MiddlewareMaker.ts +36 -47
  177. package/src/rpc/RpcContextMap.ts +6 -5
  178. package/src/rpc/RpcMiddleware.ts +5 -4
  179. package/src/rpc.ts +0 -1
  180. package/src/transform.ts +2 -2
  181. package/src/utils/gen.ts +1 -1
  182. package/src/utils/logger.ts +2 -2
  183. package/src/utils.ts +10 -7
  184. package/test/dist/moreStrings.test.d.ts.map +1 -0
  185. package/test/dist/rpc.test.d.ts.map +1 -1
  186. package/test/dist/secretURL.test.d.ts.map +1 -0
  187. package/test/dist/special.test.d.ts.map +1 -0
  188. package/test/moreStrings.test.ts +17 -0
  189. package/test/rpc.test.ts +30 -6
  190. package/test/schema.test.ts +517 -4
  191. package/test/secretURL.test.ts +157 -0
  192. package/test/special.test.ts +909 -0
  193. package/test/utils.test.ts +6 -6
  194. package/tsconfig.base.json +0 -1
  195. package/tsconfig.json +0 -1
  196. package/dist/ServiceMap.d.ts +0 -44
  197. package/dist/ServiceMap.d.ts.map +0 -1
  198. package/dist/ServiceMap.js +0 -91
@@ -1,42 +1,87 @@
1
1
  import { type GetContextConfig, type GetEffectError, type RequestContextMapTagAny } from "../rpc/RpcContextMap.js";
2
2
  import * as S from "../Schema.js";
3
+ /**
4
+ * Whatever the input, we will only decode or encode to void
5
+ */
6
+ export declare const ForceVoid: S.decodeTo<S.Any, S.declare<unknown, unknown>, never, never>;
3
7
  type SchemaOrFields<T> = T extends S.Top ? T : T extends S.Struct.Fields ? S.Struct<T> : S.Void;
4
- type TaggedRequestResult<Tag extends string, Payload extends S.Struct.Fields, Success extends S.Top, Error extends S.Top, Config = Record<string, never>> = S.TaggedStruct<Tag, Payload> & {
5
- new (...args: any[]): any;
8
+ type TaggedRequestForResult<Self, Tag extends string, Payload extends S.Struct.Fields, Success extends S.Top, Error extends S.Top, Config, ModuleName extends string, Type extends "command" | "query"> = S.EnhancedClass<Self, S.TaggedStruct<Tag, Payload>, {}> & {
6
9
  readonly _tag: Tag;
7
- readonly fields: {
8
- readonly _tag: S.tag<Tag>;
9
- } & Payload;
10
10
  readonly success: Success;
11
11
  readonly error: Error;
12
12
  readonly config: Config;
13
13
  readonly "~decodingServices": S.Codec.DecodingServices<Success> | S.Codec.DecodingServices<Error>;
14
+ readonly "~encodingServices": S.Codec.EncodingServices<Success> | S.Codec.EncodingServices<Error>;
15
+ readonly id: `${ModuleName}.${Tag}`;
16
+ readonly moduleName: ModuleName;
17
+ readonly type: Type;
14
18
  };
15
19
  export declare const makeRpcClient: <RequestContextMap extends RequestContextMapTagAny, GeneralErrors extends S.Top = never>(rcs: RequestContextMap, generalErrors?: GeneralErrors) => {
16
- TaggedRequest: <_Self>() => {
17
- <Tag extends string, Payload extends S.Struct.Fields, C extends {
18
- success: S.Top | S.Struct.Fields;
19
- error: S.Top | S.Struct.Fields;
20
- }>(tag: Tag, fields: Payload, config: GetContextConfig<RequestContextMap["config"]> & C): TaggedRequestResult<Tag, Payload, SchemaOrFields<C["success"]>, C extends {
21
- error: infer E;
22
- } ? [GeneralErrors] extends [never] ? SchemaOrFields<E> : S.Union<[SchemaOrFields<E>, GeneralErrors]> : [GeneralErrors] extends [never] ? GetEffectError<RequestContextMap["config"], C> : [GeneralErrors] extends [never] ? SchemaOrFields<GetEffectError<RequestContextMap["config"], C>> : S.Union<[SchemaOrFields<GetEffectError<RequestContextMap["config"], C>>, GeneralErrors]>, Omit<C, "success" | "error">>;
23
- <Tag extends string, Payload_1 extends S.Struct.Fields, C_1 extends Pick<{
24
- success: S.Top | S.Struct.Fields;
25
- error: S.Top | S.Struct.Fields;
26
- }, "success">>(tag: Tag, fields: Payload_1, config: GetContextConfig<RequestContextMap["config"]> & C_1): TaggedRequestResult<Tag, Payload_1, SchemaOrFields<C_1["success"]>, C_1 extends {
27
- error: infer E;
28
- } ? [GeneralErrors] extends [never] ? SchemaOrFields<E> : S.Union<[SchemaOrFields<E>, GeneralErrors]> : [GeneralErrors] extends [never] ? GetEffectError<RequestContextMap["config"], C_1> : [GeneralErrors] extends [never] ? SchemaOrFields<GetEffectError<RequestContextMap["config"], C_1>> : S.Union<[SchemaOrFields<GetEffectError<RequestContextMap["config"], C_1>>, GeneralErrors]>, Omit<C_1, "success" | "error">>;
29
- <Tag extends string, Payload_2 extends S.Struct.Fields, C_2 extends Pick<{
30
- success: S.Top | S.Struct.Fields;
31
- error: S.Top | S.Struct.Fields;
32
- }, "error">>(tag: Tag, fields: Payload_2, config: GetContextConfig<RequestContextMap["config"]> & C_2): TaggedRequestResult<Tag, Payload_2, S.Codec<void>, C_2 extends {
33
- error: infer E;
34
- } ? [GeneralErrors] extends [never] ? SchemaOrFields<E> : S.Union<[SchemaOrFields<E>, GeneralErrors]> : [GeneralErrors] extends [never] ? GetEffectError<RequestContextMap["config"], C_2> : [GeneralErrors] extends [never] ? SchemaOrFields<GetEffectError<RequestContextMap["config"], C_2>> : S.Union<[SchemaOrFields<GetEffectError<RequestContextMap["config"], C_2>>, GeneralErrors]>, Omit<C_2, "success" | "error">>;
35
- <Tag extends string, Payload_3 extends S.Struct.Fields, C_3 extends Record<string, any>>(tag: Tag, fields: Payload_3, config: C_3 & GetContextConfig<RequestContextMap["config"]>): TaggedRequestResult<Tag, Payload_3, S.Codec<void>, C_3 extends {
36
- error: infer E;
37
- } ? [GeneralErrors] extends [never] ? SchemaOrFields<E> : S.Union<[SchemaOrFields<E>, GeneralErrors]> : [GeneralErrors] extends [never] ? GetEffectError<RequestContextMap["config"], C_3> : [GeneralErrors] extends [never] ? SchemaOrFields<GetEffectError<RequestContextMap["config"], C_3>> : S.Union<[SchemaOrFields<GetEffectError<RequestContextMap["config"], C_3>>, GeneralErrors]>, Omit<C_3, "success" | "error">>;
38
- <Tag extends string, Payload_4 extends S.Struct.Fields>(tag: Tag, fields: Payload_4): TaggedRequestResult<Tag, Payload_4, S.Codec<void>, never, Record<string, never>>;
20
+ TaggedRequestFor: <ModuleName extends string>(moduleName: ModuleName) => {
21
+ readonly moduleName: ModuleName;
22
+ /**
23
+ * Create query request classes for this module.
24
+ * Queries read state and should not mutate server state.
25
+ */
26
+ readonly Query: (<Self>() => {
27
+ <Tag extends string, Payload extends S.Struct.Fields, C extends {
28
+ success: S.Top | S.Struct.Fields;
29
+ error: S.Top | S.Struct.Fields;
30
+ }>(tag: Tag, fields: Payload, config: GetContextConfig<RequestContextMap["config"]> & C): TaggedRequestForResult<Self, Tag, Payload, SchemaOrFields<C["success"]>, C extends {
31
+ error: infer E;
32
+ } ? [GeneralErrors] extends [never] ? SchemaOrFields<E> : S.Union<[SchemaOrFields<E>, GeneralErrors]> : [GeneralErrors] extends [never] ? GetEffectError<RequestContextMap["config"], C> : [GeneralErrors] extends [never] ? SchemaOrFields<GetEffectError<RequestContextMap["config"], C>> : S.Union<[SchemaOrFields<GetEffectError<RequestContextMap["config"], C>>, GeneralErrors]>, Omit<C, "error" | "success">, ModuleName, "query">;
33
+ <Tag extends string, Payload extends S.Struct.Fields, C extends Pick<{
34
+ success: S.Top | S.Struct.Fields;
35
+ error: S.Top | S.Struct.Fields;
36
+ }, "success">>(tag: Tag, fields: Payload, config: GetContextConfig<RequestContextMap["config"]> & C): TaggedRequestForResult<Self, Tag, Payload, SchemaOrFields<C["success"]>, C extends {
37
+ error: infer E;
38
+ } ? [GeneralErrors] extends [never] ? SchemaOrFields<E> : S.Union<[SchemaOrFields<E>, GeneralErrors]> : [GeneralErrors] extends [never] ? GetEffectError<RequestContextMap["config"], C> : [GeneralErrors] extends [never] ? SchemaOrFields<GetEffectError<RequestContextMap["config"], C>> : S.Union<[SchemaOrFields<GetEffectError<RequestContextMap["config"], C>>, GeneralErrors]>, Omit<C, "error" | "success">, ModuleName, "query">;
39
+ <Tag extends string, Payload extends S.Struct.Fields, C extends Pick<{
40
+ success: S.Top | S.Struct.Fields;
41
+ error: S.Top | S.Struct.Fields;
42
+ }, "error">>(tag: Tag, fields: Payload, config: GetContextConfig<RequestContextMap["config"]> & C): TaggedRequestForResult<Self, Tag, Payload, S.decodeTo<S.Any, S.declare<unknown, unknown>, never, never>, C extends {
43
+ error: infer E;
44
+ } ? [GeneralErrors] extends [never] ? SchemaOrFields<E> : S.Union<[SchemaOrFields<E>, GeneralErrors]> : [GeneralErrors] extends [never] ? GetEffectError<RequestContextMap["config"], C> : [GeneralErrors] extends [never] ? SchemaOrFields<GetEffectError<RequestContextMap["config"], C>> : S.Union<[SchemaOrFields<GetEffectError<RequestContextMap["config"], C>>, GeneralErrors]>, Omit<C, "error" | "success">, ModuleName, "query">;
45
+ <Tag extends string, Payload extends S.Struct.Fields, C extends Record<string, any>>(tag: Tag, fields: Payload, config: C & GetContextConfig<RequestContextMap["config"]>): TaggedRequestForResult<Self, Tag, Payload, S.decodeTo<S.Any, S.declare<unknown, unknown>, never, never>, C extends {
46
+ error: infer E;
47
+ } ? [GeneralErrors] extends [never] ? SchemaOrFields<E> : S.Union<[SchemaOrFields<E>, GeneralErrors]> : [GeneralErrors] extends [never] ? GetEffectError<RequestContextMap["config"], C> : [GeneralErrors] extends [never] ? SchemaOrFields<GetEffectError<RequestContextMap["config"], C>> : S.Union<[SchemaOrFields<GetEffectError<RequestContextMap["config"], C>>, GeneralErrors]>, Omit<C, "error" | "success">, ModuleName, "query">;
48
+ <Tag extends string, Payload extends S.Struct.Fields>(tag: Tag, fields: Payload): TaggedRequestForResult<Self, Tag, Payload, S.decodeTo<S.Any, S.declare<unknown, unknown>, never, never>, [GeneralErrors] extends [never] ? GetEffectError<RequestContextMap["config"], {}> : [GeneralErrors] extends [never] ? SchemaOrFields<GetEffectError<RequestContextMap["config"], {}>> : S.Union<[SchemaOrFields<GetEffectError<RequestContextMap["config"], {}>>, GeneralErrors]>, Record<string, never>, ModuleName, "query">;
49
+ }) & {
50
+ readonly moduleName: ModuleName;
51
+ readonly type: "query";
52
+ };
53
+ /**
54
+ * Create command request classes for this module.
55
+ * Commands mutate state and should avoid returning complex read models.
56
+ */
57
+ readonly Command: (<Self>() => {
58
+ <Tag extends string, Payload extends S.Struct.Fields, C extends {
59
+ success: S.Top | S.Struct.Fields;
60
+ error: S.Top | S.Struct.Fields;
61
+ }>(tag: Tag, fields: Payload, config: GetContextConfig<RequestContextMap["config"]> & C): TaggedRequestForResult<Self, Tag, Payload, SchemaOrFields<C["success"]>, C extends {
62
+ error: infer E;
63
+ } ? [GeneralErrors] extends [never] ? SchemaOrFields<E> : S.Union<[SchemaOrFields<E>, GeneralErrors]> : [GeneralErrors] extends [never] ? GetEffectError<RequestContextMap["config"], C> : [GeneralErrors] extends [never] ? SchemaOrFields<GetEffectError<RequestContextMap["config"], C>> : S.Union<[SchemaOrFields<GetEffectError<RequestContextMap["config"], C>>, GeneralErrors]>, Omit<C, "error" | "success">, ModuleName, "command">;
64
+ <Tag extends string, Payload extends S.Struct.Fields, C extends Pick<{
65
+ success: S.Top | S.Struct.Fields;
66
+ error: S.Top | S.Struct.Fields;
67
+ }, "success">>(tag: Tag, fields: Payload, config: GetContextConfig<RequestContextMap["config"]> & C): TaggedRequestForResult<Self, Tag, Payload, SchemaOrFields<C["success"]>, C extends {
68
+ error: infer E;
69
+ } ? [GeneralErrors] extends [never] ? SchemaOrFields<E> : S.Union<[SchemaOrFields<E>, GeneralErrors]> : [GeneralErrors] extends [never] ? GetEffectError<RequestContextMap["config"], C> : [GeneralErrors] extends [never] ? SchemaOrFields<GetEffectError<RequestContextMap["config"], C>> : S.Union<[SchemaOrFields<GetEffectError<RequestContextMap["config"], C>>, GeneralErrors]>, Omit<C, "error" | "success">, ModuleName, "command">;
70
+ <Tag extends string, Payload extends S.Struct.Fields, C extends Pick<{
71
+ success: S.Top | S.Struct.Fields;
72
+ error: S.Top | S.Struct.Fields;
73
+ }, "error">>(tag: Tag, fields: Payload, config: GetContextConfig<RequestContextMap["config"]> & C): TaggedRequestForResult<Self, Tag, Payload, S.decodeTo<S.Any, S.declare<unknown, unknown>, never, never>, C extends {
74
+ error: infer E;
75
+ } ? [GeneralErrors] extends [never] ? SchemaOrFields<E> : S.Union<[SchemaOrFields<E>, GeneralErrors]> : [GeneralErrors] extends [never] ? GetEffectError<RequestContextMap["config"], C> : [GeneralErrors] extends [never] ? SchemaOrFields<GetEffectError<RequestContextMap["config"], C>> : S.Union<[SchemaOrFields<GetEffectError<RequestContextMap["config"], C>>, GeneralErrors]>, Omit<C, "error" | "success">, ModuleName, "command">;
76
+ <Tag extends string, Payload extends S.Struct.Fields, C extends Record<string, any>>(tag: Tag, fields: Payload, config: C & GetContextConfig<RequestContextMap["config"]>): TaggedRequestForResult<Self, Tag, Payload, S.decodeTo<S.Any, S.declare<unknown, unknown>, never, never>, C extends {
77
+ error: infer E;
78
+ } ? [GeneralErrors] extends [never] ? SchemaOrFields<E> : S.Union<[SchemaOrFields<E>, GeneralErrors]> : [GeneralErrors] extends [never] ? GetEffectError<RequestContextMap["config"], C> : [GeneralErrors] extends [never] ? SchemaOrFields<GetEffectError<RequestContextMap["config"], C>> : S.Union<[SchemaOrFields<GetEffectError<RequestContextMap["config"], C>>, GeneralErrors]>, Omit<C, "error" | "success">, ModuleName, "command">;
79
+ <Tag extends string, Payload extends S.Struct.Fields>(tag: Tag, fields: Payload): TaggedRequestForResult<Self, Tag, Payload, S.decodeTo<S.Any, S.declare<unknown, unknown>, never, never>, [GeneralErrors] extends [never] ? GetEffectError<RequestContextMap["config"], {}> : [GeneralErrors] extends [never] ? SchemaOrFields<GetEffectError<RequestContextMap["config"], {}>> : S.Union<[SchemaOrFields<GetEffectError<RequestContextMap["config"], {}>>, GeneralErrors]>, Record<string, never>, ModuleName, "command">;
80
+ }) & {
81
+ readonly moduleName: ModuleName;
82
+ readonly type: "command";
83
+ };
39
84
  };
40
85
  };
41
86
  export {};
42
- //# sourceMappingURL=makeClient.d.ts.map
87
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFrZUNsaWVudC5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NsaWVudC9tYWtlQ2xpZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxLQUFLLGdCQUFnQixFQUFFLEtBQUssY0FBYyxFQUFFLEtBQUssdUJBQXVCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQTtBQUNsSCxPQUFPLEtBQUssQ0FBQyxNQUFNLGNBQWMsQ0FBQTtBQU1qQzs7R0FFRztBQUNILGVBQU8sTUFBTSxTQUFTLDhEQUluQixDQUFBO0FBRUgsS0FBSyxjQUFjLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsR0FBRyxHQUFHLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFBO0FBRS9GLEtBQUssc0JBQXNCLENBQ3pCLElBQUksRUFDSixHQUFHLFNBQVMsTUFBTSxFQUNsQixPQUFPLFNBQVMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQy9CLE9BQU8sU0FBUyxDQUFDLENBQUMsR0FBRyxFQUNyQixLQUFLLFNBQVMsQ0FBQyxDQUFDLEdBQUcsRUFDbkIsTUFBTSxFQUNOLFVBQVUsU0FBUyxNQUFNLEVBQ3pCLElBQUksU0FBUyxTQUFTLEdBQUcsT0FBTyxJQUU5QixDQUFDLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsWUFBWSxDQUFDLEdBQUcsRUFBRSxPQUFPLENBQUMsRUFBRSxFQUFFLENBQUMsR0FDdkQ7SUFDQSxRQUFRLENBQUMsSUFBSSxFQUFFLEdBQUcsQ0FBQTtJQUNsQixRQUFRLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQTtJQUN6QixRQUFRLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQTtJQUNyQixRQUFRLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FB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
@@ -1 +1 @@
1
- {"version":3,"file":"makeClient.d.ts","sourceRoot":"","sources":["../../src/client/makeClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"makeClient.d.ts","sourceRoot":"","sources":["../../src/client/makeClient.ts"],"names":[],"mappings":"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"}
@@ -1,35 +1,61 @@
1
+ import { SchemaTransformation } from "effect";
1
2
  import * as S from "../Schema.js";
2
3
  import { AST } from "../Schema.js";
3
4
  const merge = (a, b) => a !== undefined && b.length ? S.Union([a, ...b]) : a !== undefined ? a : b.length ? S.Union(b) : S.Never;
4
5
  /**
5
6
  * Whatever the input, we will only decode or encode to void
6
7
  */
7
- const ForceVoid = S.Void;
8
+ export const ForceVoid = S
9
+ .declare((_) => true)
10
+ .pipe(S.decodeTo(S.Any, SchemaTransformation.transform({ decode: () => void 0, encode: () => void 0 })));
8
11
  export const makeRpcClient = (rcs, generalErrors) => {
9
- function TaggedRequest() {
10
- // TODO: filter errors based on config + take care of inversion
11
- const errorSchemas = Object.values(rcs.config).map((_) => _.error);
12
- return ((tag, fields, config) => {
13
- // TODO: S.TaggedRequest removed in v4 — needs rework to use Rpc.make or Request.TaggedClass
14
- // For now, creating a simple tagged struct class with success/failure properties
15
- const failureSchema = merge(config?.error ? S.isSchema(config.error) ? config.error : S.Struct(config.error) : undefined, [...errorSchemas, generalErrors].filter(Boolean));
16
- const successSchema = config?.success
17
- ? S.isSchema(config.success)
18
- ? AST.isVoid(config.success.ast) ? ForceVoid : config.success
19
- : S.Struct(config.success)
20
- : ForceVoid;
21
- const RequestClass = S.TaggedClass()(tag, fields);
22
- Object.assign(RequestClass, {
23
- _tag: tag,
24
- success: successSchema,
25
- error: failureSchema,
26
- config
27
- });
28
- return RequestClass;
12
+ // TODO: filter errors based on config + take care of inversion
13
+ const errorSchemas = Object.values(rcs.config).map((_) => _.error);
14
+ function makeRequestClass(tag, fields, config) {
15
+ const failureSchema = merge(config?.error ? S.isSchema(config.error) ? config.error : S.Struct(config.error) : undefined, [...errorSchemas, generalErrors].filter(Boolean));
16
+ const successSchema = config?.success
17
+ ? S.isSchema(config.success)
18
+ ? AST.isVoid(config.success.ast) ? ForceVoid : config.success
19
+ : S.Struct(config.success)
20
+ : ForceVoid;
21
+ const RequestClass = S.TaggedClass()(tag, fields);
22
+ Object.assign(RequestClass, {
23
+ _tag: tag,
24
+ success: successSchema,
25
+ error: failureSchema,
26
+ config
29
27
  });
28
+ return RequestClass;
29
+ }
30
+ function makeTaggedRequestWithMeta(moduleName, type) {
31
+ function TaggedRequestWithMeta() {
32
+ return ((tag, fields, config) => {
33
+ const cls = makeRequestClass(tag, fields, config);
34
+ Object.assign(cls, { id: `${moduleName}.${tag}`, moduleName, type });
35
+ return cls;
36
+ });
37
+ }
38
+ return Object.assign(TaggedRequestWithMeta, { moduleName, type });
39
+ }
40
+ function TaggedRequestFor(moduleName) {
41
+ const Query = makeTaggedRequestWithMeta(moduleName, "query");
42
+ const Command = makeTaggedRequestWithMeta(moduleName, "command");
43
+ return {
44
+ moduleName,
45
+ /**
46
+ * Create query request classes for this module.
47
+ * Queries read state and should not mutate server state.
48
+ */
49
+ Query,
50
+ /**
51
+ * Create command request classes for this module.
52
+ * Commands mutate state and should avoid returning complex read models.
53
+ */
54
+ Command
55
+ };
30
56
  }
31
57
  return {
32
- TaggedRequest
58
+ TaggedRequestFor
33
59
  };
34
60
  };
35
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFrZUNsaWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jbGllbnQvbWFrZUNsaWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEtBQUssQ0FBQyxNQUFNLGNBQWMsQ0FBQTtBQUNqQyxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sY0FBYyxDQUFBO0FBRWxDLE1BQU0sS0FBSyxHQUFHLENBQUMsQ0FBTSxFQUFFLENBQWEsRUFBRSxFQUFFLENBQ3RDLENBQUMsS0FBSyxTQUFTLElBQUksQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQTtBQUUxRzs7R0FFRztBQUNILE1BQU0sU0FBUyxHQUFrQixDQUFDLENBQUMsSUFBVyxDQUFBO0FBc0I5QyxNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUcsQ0FHM0IsR0FBc0IsRUFBRSxhQUE2QixFQUFFLEVBQUU7SUFjekQsU0FBUyxhQUFhO1FBMEJwQiwrREFBK0Q7UUFDL0QsTUFBTSxZQUFZLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUE7UUFDbEUsT0FBTyxDQUFDLENBQ04sR0FBUSxFQUNSLE1BQWMsRUFDZCxNQUFVLEVBQ1YsRUFBRTtZQUNGLDRGQUE0RjtZQUM1RixpRkFBaUY7WUFDakYsTUFBTSxhQUFhLEdBQUcsS0FBSyxDQUN6QixNQUFNLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsRUFDNUYsQ0FBQyxHQUFHLFlBQVksRUFBRSxhQUFhLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQ2pELENBQUE7WUFDRCxNQUFNLGFBQWEsR0FBRyxNQUFNLEVBQUUsT0FBTztnQkFDbkMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQztvQkFDMUIsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTztvQkFDN0QsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQztnQkFDNUIsQ0FBQyxDQUFDLFNBQVMsQ0FBQTtZQUViLE1BQU0sWUFBWSxHQUFHLENBQUMsQ0FBQyxXQUFXLEVBQU8sQ0FBQyxHQUFHLEVBQUUsTUFBTSxDQUFDLENBQUE7WUFDdEQsTUFBTSxDQUFDLE1BQU0sQ0FBQyxZQUFZLEVBQUU7Z0JBQzFCLElBQUksRUFBRSxHQUFHO2dCQUNULE9BQU8sRUFBRSxhQUFhO2dCQUN0QixLQUFLLEVBQUUsYUFBYTtnQkFDcEIsTUFBTTthQUNQLENBQUMsQ0FBQTtZQUVGLE9BQU8sWUFBWSxDQUFBO1FBQ3JCLENBQUMsQ0FBUSxDQUFBO0lBQ1gsQ0FBQztJQUVELE9BQU87UUFDTCxhQUFhO0tBQ2QsQ0FBQTtBQUNILENBQUMsQ0FBQSJ9
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFrZUNsaWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jbGllbnQvbWFrZUNsaWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxRQUFRLENBQUE7QUFFN0MsT0FBTyxLQUFLLENBQUMsTUFBTSxjQUFjLENBQUE7QUFDakMsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGNBQWMsQ0FBQTtBQUVsQyxNQUFNLEtBQUssR0FBRyxDQUFDLENBQU0sRUFBRSxDQUFhLEVBQUUsRUFBRSxDQUN0QyxDQUFDLEtBQUssU0FBUyxJQUFJLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUE7QUFFMUc7O0dBRUc7QUFDSCxNQUFNLENBQUMsTUFBTSxTQUFTLEdBQUcsQ0FBQztLQUN2QixPQUFPLENBQUMsQ0FBQyxDQUFVLEVBQWdCLEVBQUUsQ0FBQyxJQUFJLENBQUM7S0FDM0MsSUFBSSxDQUNILENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxvQkFBb0IsQ0FBQyxTQUFTLENBQW1CLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQyxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FDcEgsQ0FBQTtBQTJCSCxNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUcsQ0FHM0IsR0FBc0IsRUFBRSxhQUE2QixFQUFFLEVBQUU7SUFjekQsK0RBQStEO0lBQy9ELE1BQU0sWUFBWSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFBO0lBRWxFLFNBQVMsZ0JBQWdCLENBQ3ZCLEdBQVEsRUFDUixNQUFjLEVBQ2QsTUFBVTtRQUVWLE1BQU0sYUFBYSxHQUFHLEtBQUssQ0FDekIsTUFBTSxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLEVBQzVGLENBQUMsR0FBRyxZQUFZLEVBQUUsYUFBYSxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUNqRCxDQUFBO1FBQ0QsTUFBTSxhQUFhLEdBQUcsTUFBTSxFQUFFLE9BQU87WUFDbkMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQztnQkFDMUIsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTztnQkFDN0QsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQztZQUM1QixDQUFDLENBQUMsU0FBUyxDQUFBO1FBRWIsTUFBTSxZQUFZLEdBQUcsQ0FBQyxDQUFDLFdBQVcsRUFBTyxDQUFDLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQTtRQUN0RCxNQUFNLENBQUMsTUFBTSxDQUFDLFlBQVksRUFBRTtZQUMxQixJQUFJLEVBQUUsR0FBRztZQUNULE9BQU8sRUFBRSxhQUFhO1lBQ3RCLEtBQUssRUFBRSxhQUFhO1lBQ3BCLE1BQU07U0FDUCxDQUFDLENBQUE7UUFFRixPQUFPLFlBQVksQ0FBQTtJQUNyQixDQUFDO0lBRUQsU0FBUyx5QkFBeUIsQ0FDaEMsVUFBc0IsRUFDdEIsSUFBVTtRQUVWLFNBQVMscUJBQXFCO1lBdUU1QixPQUFPLENBQUMsQ0FDTixHQUFRLEVBQ1IsTUFBYyxFQUNkLE1BQVUsRUFDVixFQUFFO2dCQUNGLE1BQU0sR0FBRyxHQUFHLGdCQUFnQixDQUFDLEdBQUcsRUFBRSxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUE7Z0JBQ2pELE1BQU0sQ0FBQyxNQUFNLENBQUMsR0FBRyxFQUFFLEVBQUUsRUFBRSxFQUFFLEdBQUcsVUFBVSxJQUFJLEdBQUcsRUFBRSxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFBO2dCQUNwRSxPQUFPLEdBQUcsQ0FBQTtZQUNaLENBQUMsQ0FBUSxDQUFBO1FBQ1gsQ0FBQztRQUNELE9BQU8sTUFBTSxDQUFDLE1BQU0sQ0FBQyxxQkFBcUIsRUFBRSxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQVcsQ0FBQyxDQUFBO0lBQzVFLENBQUM7SUFFRCxTQUFTLGdCQUFnQixDQUE0QixVQUFzQjtRQUN6RSxNQUFNLEtBQUssR0FBRyx5QkFBeUIsQ0FBQyxVQUFVLEVBQUUsT0FBTyxDQUFDLENBQUE7UUFDNUQsTUFBTSxPQUFPLEdBQUcseUJBQXlCLENBQUMsVUFBVSxFQUFFLFNBQVMsQ0FBQyxDQUFBO1FBRWhFLE9BQU87WUFDTCxVQUFVO1lBQ1Y7OztlQUdHO1lBQ0gsS0FBSztZQUNMOzs7ZUFHRztZQUNILE9BQU87U0FDQyxDQUFBO0lBQ1osQ0FBQztJQUVELE9BQU87UUFDTCxnQkFBZ0I7S0FDakIsQ0FBQTtBQUNILENBQUMsQ0FBQSJ9
package/dist/client.d.ts CHANGED
@@ -2,4 +2,4 @@ export * from "./client/apiClientFactory.js";
2
2
  export * from "./client/clientFor.js";
3
3
  export * from "./client/errors.js";
4
4
  export * from "./client/makeClient.js";
5
- //# sourceMappingURL=client.d.ts.map
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50LmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvY2xpZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLGNBQWMsOEJBQThCLENBQUE7QUFDNUMsY0FBYyx1QkFBdUIsQ0FBQTtBQUNyQyxjQUFjLG9CQUFvQixDQUFBO0FBQ2xDLGNBQWMsd0JBQXdCLENBQUEifQ==
package/dist/faker.d.ts CHANGED
@@ -4,4 +4,4 @@ export declare function setFaker(f: Faker): void;
4
4
  export declare function getFaker(): Faker;
5
5
  export declare const fakerToArb: <T>(fakerGen: () => T) => (fc: typeof FC) => FC.Arbitrary<T>;
6
6
  export declare const fakerArb: <T>(gen: (fake: Faker) => () => T) => (a: any) => FC.Arbitrary<T>;
7
- //# sourceMappingURL=faker.d.ts.map
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFrZXIuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9mYWtlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEtBQUssRUFBRSxLQUFLLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUM1QyxPQUFPLEtBQUssRUFBRSxNQUFNLFlBQVksQ0FBQTtBQU9oQyx3QkFBZ0IsUUFBUSxDQUFDLENBQUMsRUFBRSxLQUFLLFFBRWhDO0FBRUQsd0JBQWdCLFFBQVEsVUFHdkI7QUFFRCxlQUFPLE1BQU0sVUFBVSxHQUFJLENBQUMsWUFBWSxNQUFNLENBQUMsVUFBVSxPQUFPLEVBQUUsb0JBU2pFLENBQUE7QUFFRCxlQUFPLE1BQU0sUUFBUSxHQUFJLENBQUMsT0FDbkIsQ0FBQyxJQUFJLEVBQUUsS0FBSyxLQUFLLE1BQU0sQ0FBQyxLQUM1QixDQUFDLENBQUMsRUFBRSxHQUFHLEtBQUssRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQXdDLENBQUEifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"faker.d.ts","sourceRoot":"","sources":["../src/faker.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AAC5C,OAAO,KAAK,EAAE,MAAM,YAAY,CAAA;AAOhC,wBAAgB,QAAQ,CAAC,CAAC,EAAE,KAAK,QAEhC;AAED,wBAAgB,QAAQ,UAGvB;AAED,eAAO,MAAM,UAAU,GAAI,CAAC,EAAE,UAAU,MAAM,CAAC,MAAM,IAAI,OAAO,EAAE,oBASjE,CAAA;AAED,eAAO,MAAM,QAAQ,GAAI,CAAC,EACxB,KAAK,CAAC,IAAI,EAAE,KAAK,KAAK,MAAM,CAAC,KAC5B,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,CAAC,SAAS,CAAC,CAAC,CAAwC,CAAA"}
1
+ {"version":3,"file":"faker.d.ts","sourceRoot":"","sources":["../src/faker.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AAC5C,OAAO,KAAK,EAAE,MAAM,YAAY,CAAA;AAOhC,wBAAgB,QAAQ,CAAC,CAAC,EAAE,KAAK,QAEhC;AAED,wBAAgB,QAAQ,UAGvB;AAED,eAAO,MAAM,UAAU,GAAI,CAAC,YAAY,MAAM,CAAC,UAAU,OAAO,EAAE,oBASjE,CAAA;AAED,eAAO,MAAM,QAAQ,GAAI,CAAC,OACnB,CAAC,IAAI,EAAE,KAAK,KAAK,MAAM,CAAC,KAC5B,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,CAAC,SAAS,CAAC,CAAC,CAAwC,CAAA"}
@@ -5,5 +5,5 @@ export interface ResponseWithBody<A> extends Pick<HttpClientResponse, "headers"
5
5
  readonly body: A;
6
6
  }
7
7
  export declare const responseWithJsonBody: (response: HttpClientResponse) => Effect.Effect<ResponseWithBody<unknown>, HttpClientError.HttpClientError, never>;
8
- export declare const demandJson: (client: HttpClient.HttpClient) => HttpClient.HttpClient.With<HttpClientError.HttpClientError | HttpClientError.DecodeError, never>;
9
- //# sourceMappingURL=Request.d.ts.map
8
+ export declare const demandJson: (client: HttpClient.HttpClient) => HttpClient.HttpClient.With<HttpClientError.DecodeError | HttpClientError.HttpClientError, never>;
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVxdWVzdC5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2h0dHAvUmVxdWVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEtBQUssRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHlDQUF5QyxDQUFBO0FBQ2pGLE9BQU8sS0FBSyxNQUFNLE1BQU0sY0FBYyxDQUFBO0FBQ3RDLE9BQU8sRUFBRSxVQUFVLEVBQUUsZUFBZSxFQUFrQyxNQUFNLG1CQUFtQixDQUFBO0FBRS9GLE1BQU0sV0FBVyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUUsU0FBUSxJQUFJLENBQUMsa0JBQWtCLEVBQUUsU0FBUyxHQUFHLFFBQVEsR0FBRyxlQUFlLENBQUM7SUFDM0csUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUE7Q0FDakI7QUFLRCxlQUFPLE1BQU0sb0JBQW9CLGFBQ3JCLGtCQUFrQixxRkFPekIsQ0FBQTtBQUVMLGVBQU8sTUFBTSxVQUFVLFdBQVksVUFBVSxDQUFDLFVBQVUscUdBbUJsRCxDQUFBIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"Request.d.ts","sourceRoot":"","sources":["../../src/http/Request.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAA;AACjF,OAAO,KAAK,MAAM,MAAM,cAAc,CAAA;AACtC,OAAO,EAAE,UAAU,EAAE,eAAe,EAAkC,MAAM,mBAAmB,CAAA;AAE/F,MAAM,WAAW,gBAAgB,CAAC,CAAC,CAAE,SAAQ,IAAI,CAAC,kBAAkB,EAAE,SAAS,GAAG,QAAQ,GAAG,eAAe,CAAC;IAC3G,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAA;CACjB;AAKD,eAAO,MAAM,oBAAoB,GAC/B,UAAU,kBAAkB,qFAOzB,CAAA;AAEL,eAAO,MAAM,UAAU,GAAI,QAAQ,UAAU,CAAC,UAAU,qGAiBlD,CAAA"}
1
+ {"version":3,"file":"Request.d.ts","sourceRoot":"","sources":["../../src/http/Request.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAA;AACjF,OAAO,KAAK,MAAM,MAAM,cAAc,CAAA;AACtC,OAAO,EAAE,UAAU,EAAE,eAAe,EAAkC,MAAM,mBAAmB,CAAA;AAE/F,MAAM,WAAW,gBAAgB,CAAC,CAAC,CAAE,SAAQ,IAAI,CAAC,kBAAkB,EAAE,SAAS,GAAG,QAAQ,GAAG,eAAe,CAAC;IAC3G,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAA;CACjB;AAKD,eAAO,MAAM,oBAAoB,aACrB,kBAAkB,qFAOzB,CAAA;AAEL,eAAO,MAAM,UAAU,WAAY,UAAU,CAAC,UAAU,qGAmBlD,CAAA"}
@@ -1,3 +1,4 @@
1
+ import { Option } from "effect";
1
2
  import * as Effect from "../Effect.js";
2
3
  import { HttpClient, HttpClientError, HttpClientRequest, HttpHeaders } from "./internal/lib.js";
3
4
  // TODO: consider rebuilding the text/json helpers to use a cached effect
@@ -10,14 +11,13 @@ export const responseWithJsonBody = (response) => Effect.map(response.json, (bod
10
11
  }));
11
12
  export const demandJson = (client) => HttpClient
12
13
  .mapRequest(client, (_) => HttpClientRequest.acceptJson(_))
13
- .pipe(HttpClient.transform((r, request) => Effect.tap(r, (response) => HttpHeaders
14
- .get(response.headers, "Content-Type")
15
- ?.startsWith("application/json")
14
+ .pipe(HttpClient.transform((r, request) => Effect.tap(r, (response) => Option
15
+ .exists(HttpHeaders.get(response.headers, "Content-Type"), (_) => _.startsWith("application/json"))
16
16
  ? Effect.void
17
17
  : Effect.fail(new HttpClientError.DecodeError({
18
18
  request,
19
19
  response,
20
20
  description: "not json response: "
21
- + HttpHeaders.get(response.headers, "Content-Type")
21
+ + Option.getOrElse(HttpHeaders.get(response.headers, "Content-Type"), () => "<missing>")
22
22
  })))));
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVxdWVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9odHRwL1JlcXVlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxLQUFLLE1BQU0sTUFBTSxjQUFjLENBQUE7QUFDdEMsT0FBTyxFQUFFLFVBQVUsRUFBRSxlQUFlLEVBQUUsaUJBQWlCLEVBQUUsV0FBVyxFQUFFLE1BQU0sbUJBQW1CLENBQUE7QUFNL0YseUVBQXlFO0FBQ3pFLDBGQUEwRjtBQUUxRixNQUFNLENBQUMsTUFBTSxvQkFBb0IsR0FBRyxDQUNsQyxRQUE0QixFQUM1QixFQUFFLENBQ0YsTUFBTSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUMsSUFBSSxFQUE2QixFQUFFLENBQUMsQ0FBQztJQUM5RCxJQUFJO0lBQ0osT0FBTyxFQUFFLFFBQVEsQ0FBQyxPQUFPO0lBQ3pCLE1BQU0sRUFBRSxRQUFRLENBQUMsTUFBTTtJQUN2QixhQUFhLEVBQUUsUUFBUSxDQUFDLGFBQWE7Q0FDdEMsQ0FBQyxDQUFDLENBQUE7QUFFTCxNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUcsQ0FBQyxNQUE2QixFQUFFLEVBQUUsQ0FDMUQsVUFBVTtLQUNQLFVBQVUsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLGlCQUFpQixDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQztLQUMxRCxJQUFJLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxPQUFPLEVBQUUsRUFBRSxDQUN4QyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQ3pCLFdBQVc7S0FDTixHQUFHLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxjQUFjLENBQUM7SUFDdEMsRUFBRSxVQUFVLENBQUMsa0JBQWtCLENBQUM7SUFDbEMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJO0lBQ2IsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQ1gsSUFBSSxlQUFlLENBQUMsV0FBVyxDQUFDO1FBQzlCLE9BQU87UUFDUCxRQUFRO1FBQ1IsV0FBVyxFQUFFLHFCQUFxQjtjQUM5QixXQUFXLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsY0FBYyxDQUFDO0tBQ3RELENBQUMsQ0FDSCxDQUFDLENBQ1AsQ0FBQyxDQUFBIn0=
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVxdWVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9odHRwL1JlcXVlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFFBQVEsQ0FBQTtBQUUvQixPQUFPLEtBQUssTUFBTSxNQUFNLGNBQWMsQ0FBQTtBQUN0QyxPQUFPLEVBQUUsVUFBVSxFQUFFLGVBQWUsRUFBRSxpQkFBaUIsRUFBRSxXQUFXLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQTtBQU0vRix5RUFBeUU7QUFDekUsMEZBQTBGO0FBRTFGLE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUFHLENBQ2xDLFFBQTRCLEVBQzVCLEVBQUUsQ0FDRixNQUFNLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxJQUFJLEVBQTZCLEVBQUUsQ0FBQyxDQUFDO0lBQzlELElBQUk7SUFDSixPQUFPLEVBQUUsUUFBUSxDQUFDLE9BQU87SUFDekIsTUFBTSxFQUFFLFFBQVEsQ0FBQyxNQUFNO0lBQ3ZCLGFBQWEsRUFBRSxRQUFRLENBQUMsYUFBYTtDQUN0QyxDQUFDLENBQUMsQ0FBQTtBQUVMLE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRyxDQUFDLE1BQTZCLEVBQUUsRUFBRSxDQUMxRCxVQUFVO0tBQ1AsVUFBVSxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsaUJBQWlCLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDO0tBQzFELElBQUksQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLE9BQU8sRUFBRSxFQUFFLENBQ3hDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FDekIsTUFBTTtLQUNELE1BQU0sQ0FDTCxXQUFXLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsY0FBYyxDQUFDLEVBQ2pELENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLGtCQUFrQixDQUFDLENBQ3hDO0lBQ0gsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJO0lBQ2IsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQ1gsSUFBSSxlQUFlLENBQUMsV0FBVyxDQUFDO1FBQzlCLE9BQU87UUFDUCxRQUFRO1FBQ1IsV0FBVyxFQUFFLHFCQUFxQjtjQUM5QixNQUFNLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxjQUFjLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxXQUFXLENBQUM7S0FDM0YsQ0FBQyxDQUNILENBQUMsQ0FDUCxDQUFDLENBQUEifQ==
@@ -10,4 +10,4 @@ export * as HttpServer from "effect/unstable/http/HttpServer";
10
10
  export * as HttpServerError from "effect/unstable/http/HttpServerError";
11
11
  export * as HttpServerRequest from "effect/unstable/http/HttpServerRequest";
12
12
  export * as HttpServerResponse from "effect/unstable/http/HttpServerResponse";
13
- //# sourceMappingURL=lib.d.ts.map
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGliLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvaHR0cC9pbnRlcm5hbC9saWIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLFdBQVcsTUFBTSw4QkFBOEIsQ0FBQTtBQUMzRCxPQUFPLEtBQUssUUFBUSxNQUFNLCtCQUErQixDQUFBO0FBQ3pELE9BQU8sS0FBSyxVQUFVLE1BQU0saUNBQWlDLENBQUE7QUFDN0QsT0FBTyxLQUFLLGVBQWUsTUFBTSxzQ0FBc0MsQ0FBQTtBQUN2RSxPQUFPLEtBQUssaUJBQWlCLE1BQU0sd0NBQXdDLENBQUE7QUFDM0UsT0FBTyxLQUFLLGtCQUFrQixNQUFNLHlDQUF5QyxDQUFBO0FBRTdFLE9BQU8sS0FBSyxjQUFjLE1BQU0scUNBQXFDLENBQUE7QUFDckUsT0FBTyxLQUFLLFVBQVUsTUFBTSxpQ0FBaUMsQ0FBQTtBQUM3RCxPQUFPLEtBQUssVUFBVSxNQUFNLGlDQUFpQyxDQUFBO0FBQzdELE9BQU8sS0FBSyxlQUFlLE1BQU0sc0NBQXNDLENBQUE7QUFDdkUsT0FBTyxLQUFLLGlCQUFpQixNQUFNLHdDQUF3QyxDQUFBO0FBQzNFLE9BQU8sS0FBSyxrQkFBa0IsTUFBTSx5Q0FBeUMsQ0FBQSJ9
package/dist/http.d.ts CHANGED
@@ -1,2 +1,2 @@
1
1
  export * from "./http/internal/lib.js";
2
- //# sourceMappingURL=http.d.ts.map
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2h0dHAudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx3QkFBd0IsQ0FBQSJ9
package/dist/ids.d.ts CHANGED
@@ -8,10 +8,10 @@ export interface RequestIdBrand extends StringIdBrand {
8
8
  export type RequestId = NonEmptyString255;
9
9
  export declare const RequestId: S.WithDefaults<Codec<NonEmptyString255, string, never, never> & {
10
10
  make: () => NonEmptyString255;
11
- withDefault: S.withConstructorDefault<Codec<NonEmptyString255, string, never, never> & S.WithoutConstructorDefault>;
11
+ withDefault: S.withConstructorDefault<S.Top & S.WithoutConstructorDefault>;
12
12
  }> & Codec<NonEmptyString255, string, never, never> & {
13
13
  make: () => NonEmptyString255;
14
- withDefault: S.withConstructorDefault<Codec<NonEmptyString255, string, never, never> & S.WithoutConstructorDefault>;
14
+ withDefault: S.withConstructorDefault<S.Top & S.WithoutConstructorDefault>;
15
15
  };
16
16
  export interface UserProfileIdBrand extends Simplify<B.Brand<"UserProfileId"> & StringIdBrand> {
17
17
  }
@@ -23,4 +23,4 @@ export declare const UserProfileId: S.WithDefaults<Codec<string & StringIdBrand
23
23
  make: () => string & StringIdBrand & UserProfileIdBrand;
24
24
  withDefault: S.withConstructorDefault<Codec<string & StringIdBrand & UserProfileIdBrand, string, never, never> & S.WithoutConstructorDefault>;
25
25
  } & S.WithDefaults<Codec<string & StringIdBrand & UserProfileIdBrand, string, never, never>>;
26
- //# sourceMappingURL=ids.d.ts.map
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWRzLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaWRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBbUIsS0FBSyxLQUFLLEVBQUUsaUJBQWlCLEVBQUUsUUFBUSxFQUFFLEtBQUssYUFBYSxFQUFtQixNQUFNLG1CQUFtQixDQUFBO0FBQ2pJLE9BQU8sS0FBSyxFQUFFLENBQUMsRUFBRSxNQUFNLDBCQUEwQixDQUFBO0FBQ2pELE9BQU8sS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLGNBQWMsQ0FBQTtBQUM1QyxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sWUFBWSxDQUFBO0FBRzlCLE1BQU0sV0FBVyxjQUFlLFNBQVEsYUFBYTtJQUNuRCxRQUFRLENBQUMsU0FBUyxFQUFFLE9BQU8sTUFBTSxDQUFBO0NBQ2xDO0FBRUQsTUFBTSxNQUFNLFNBQVMsR0FBRyxpQkFBaUIsQ0FBQTtBQUV6QyxlQUFPLE1BQU0sU0FBUztnQkFJa0IsaUJBQWlCOzs7OztDQU9qQyxDQUFBO0FBRXhCLE1BQU0sV0FBVyxrQkFBbUIsU0FBUSxRQUFRLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxlQUFlLENBQUMsR0FBRyxhQUFhLENBQUM7Q0FBRztBQUNqRyxNQUFNLE1BQU0sYUFBYSxHQUFHLFFBQVEsR0FBRyxrQkFBa0IsQ0FBQTtBQUN6RCxlQUFPLE1BQU0sYUFBYTs7Ozs7OzRGQUFtQyxDQUFBIn0=
package/dist/ids.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"ids.d.ts","sourceRoot":"","sources":["../src/ids.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,KAAK,KAAK,EAAE,iBAAiB,EAAE,QAAQ,EAAE,KAAK,aAAa,EAAmB,MAAM,mBAAmB,CAAA;AACjI,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,0BAA0B,CAAA;AACjD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AAC5C,OAAO,EAAE,CAAC,EAAE,MAAM,YAAY,CAAA;AAG9B,MAAM,WAAW,cAAe,SAAQ,aAAa;IACnD,QAAQ,CAAC,SAAS,EAAE,OAAO,MAAM,CAAA;CAClC;AAED,MAAM,MAAM,SAAS,GAAG,iBAAiB,CAAA;AAEzC,eAAO,MAAM,SAAS;gBAIkB,iBAAiB;;;gBAAjB,iBAAiB;;CAOjC,CAAA;AAExB,MAAM,WAAW,kBAAmB,SAAQ,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,eAAe,CAAC,GAAG,aAAa,CAAC;CAAG;AACjG,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,kBAAkB,CAAA;AACzD,eAAO,MAAM,aAAa;;;;;;4FAAmC,CAAA"}
1
+ {"version":3,"file":"ids.d.ts","sourceRoot":"","sources":["../src/ids.ts"],"names":[],"mappings":"AACA,OAAO,EAAmB,KAAK,KAAK,EAAE,iBAAiB,EAAE,QAAQ,EAAE,KAAK,aAAa,EAAmB,MAAM,mBAAmB,CAAA;AACjI,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,0BAA0B,CAAA;AACjD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AAC5C,OAAO,EAAE,CAAC,EAAE,MAAM,YAAY,CAAA;AAG9B,MAAM,WAAW,cAAe,SAAQ,aAAa;IACnD,QAAQ,CAAC,SAAS,EAAE,OAAO,MAAM,CAAA;CAClC;AAED,MAAM,MAAM,SAAS,GAAG,iBAAiB,CAAA;AAEzC,eAAO,MAAM,SAAS;gBAIkB,iBAAiB;;;;;CAOjC,CAAA;AAExB,MAAM,WAAW,kBAAmB,SAAQ,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,eAAe,CAAC,GAAG,aAAa,CAAC;CAAG;AACjG,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,kBAAkB,CAAA;AACzD,eAAO,MAAM,aAAa;;;;;;4FAAmC,CAAA"}
package/dist/ids.js CHANGED
@@ -1,3 +1,4 @@
1
+ import { Effect } from "effect";
1
2
  import { brandedStringId, NonEmptyString255, StringId, withDefaultMake } from "effect-app/Schema";
2
3
  import { S } from "./index.js";
3
4
  import { extendM } from "./utils.js";
@@ -7,9 +8,9 @@ export const RequestId = extendM(Object
7
8
  const make = StringId.make;
8
9
  return ({
9
10
  make,
10
- withDefault: s.pipe(S.withDefaultConstructor(make))
11
+ withDefault: S.withConstructorDefault(Effect.sync(make))(s)
11
12
  });
12
13
  })
13
14
  .pipe(withDefaultMake);
14
15
  export const UserProfileId = brandedStringId();
15
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2lkcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFjLGlCQUFpQixFQUFFLFFBQVEsRUFBc0IsZUFBZSxFQUFFLE1BQU0sbUJBQW1CLENBQUE7QUFHakksT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLFlBQVksQ0FBQTtBQUM5QixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sWUFBWSxDQUFBO0FBT3BDLHVGQUF1RjtBQUN2RixNQUFNLENBQUMsTUFBTSxTQUFTLEdBQUcsT0FBTyxDQUM5QixNQUFNO0tBQ0gsTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsaUJBQWlCLENBQU8sRUFBRSxpQkFBZ0UsQ0FBQyxFQUNuSCxDQUFDLENBQUMsRUFBRSxFQUFFO0lBQ0osTUFBTSxJQUFJLEdBQUcsUUFBUSxDQUFDLElBQStCLENBQUE7SUFDckQsT0FBTyxDQUFDO1FBQ04sSUFBSTtRQUNKLFdBQVcsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztLQUNwRCxDQUFDLENBQUE7QUFDSixDQUFDLENBQ0Y7S0FDRSxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUE7QUFJeEIsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUFHLGVBQWUsRUFBaUIsQ0FBQSJ9
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2lkcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sUUFBUSxDQUFBO0FBQy9CLE9BQU8sRUFBRSxlQUFlLEVBQWMsaUJBQWlCLEVBQUUsUUFBUSxFQUFzQixlQUFlLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQTtBQUdqSSxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sWUFBWSxDQUFBO0FBQzlCLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFPcEMsdUZBQXVGO0FBQ3ZGLE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRyxPQUFPLENBQzlCLE1BQU07S0FDSCxNQUFNLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBTyxFQUFFLGlCQUFnRSxDQUFDLEVBQ25ILENBQUMsQ0FBQyxFQUFFLEVBQUU7SUFDSixNQUFNLElBQUksR0FBRyxRQUFRLENBQUMsSUFBK0IsQ0FBQTtJQUNyRCxPQUFPLENBQUM7UUFDTixJQUFJO1FBQ0osV0FBVyxFQUFFLENBQUMsQ0FBQyxzQkFBc0IsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBMkMsQ0FBQztLQUN0RyxDQUFDLENBQUE7QUFDSixDQUFDLENBQ0Y7S0FDRSxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUE7QUFJeEIsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUFHLGVBQWUsRUFBaUIsQ0FBQSJ9
package/dist/index.d.ts CHANGED
@@ -1,22 +1,19 @@
1
1
  import "./builtin.js";
2
- import * as ServiceMap from "./ServiceMap.js";
3
2
  export * as Fnc from "./Function.js";
4
3
  export * as Utils from "./utils.js";
5
4
  export * as Array from "./Array.js";
5
+ export * as Config from "./Config.js";
6
+ export * as ConfigProvider from "./ConfigProvider.js";
7
+ export * as Context from "./Context.js";
6
8
  export * as Effect from "./Effect.js";
7
9
  export * as Layer from "./Layer.js";
8
10
  export * as NonEmptySet from "./NonEmptySet.js";
9
- export * as ServiceMap from "./ServiceMap.js";
10
11
  export * as Set from "./Set.js";
11
- export {
12
- /**
13
- * @deprecated use ServiceMap directly instead
14
- */
15
- ServiceMap as Context };
16
12
  export { type NonEmptyArray, type NonEmptyReadonlyArray } from "./Array.js";
17
13
  export * from "effect";
18
14
  export type * as Types from "./Types.js";
19
15
  export * as SecretURL from "./Config/SecretURL.js";
16
+ export * as RpcX from "./rpc.js";
20
17
  export * as S from "./Schema.js";
21
18
  export { copy } from "./utils.js";
22
- //# sourceMappingURL=index.d.ts.map
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLGNBQWMsQ0FBQTtBQUVyQixPQUFPLEtBQUssR0FBRyxNQUFNLGVBQWUsQ0FBQTtBQUNwQyxPQUFPLEtBQUssS0FBSyxNQUFNLFlBQVksQ0FBQTtBQUVuQyxPQUFPLEtBQUssS0FBSyxNQUFNLFlBQVksQ0FBQTtBQUNuQyxPQUFPLEtBQUssTUFBTSxNQUFNLGFBQWEsQ0FBQTtBQUNyQyxPQUFPLEtBQUssY0FBYyxNQUFNLHFCQUFxQixDQUFBO0FBQ3JELE9BQU8sS0FBSyxPQUFPLE1BQU0sY0FBYyxDQUFBO0FBQ3ZDLE9BQU8sS0FBSyxNQUFNLE1BQU0sYUFBYSxDQUFBO0FBQ3JDLE9BQU8sS0FBSyxLQUFLLE1BQU0sWUFBWSxDQUFBO0FBQ25DLE9BQU8sS0FBSyxXQUFXLE1BQU0sa0JBQWtCLENBQUE7QUFDL0MsT0FBTyxLQUFLLEdBQUcsTUFBTSxVQUFVLENBQUE7QUFFL0IsT0FBTyxFQUFFLEtBQUssYUFBYSxFQUFFLEtBQUsscUJBQXFCLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFFM0UsY0FBYyxRQUFRLENBQUE7QUFFdEIsWUFBWSxLQUFLLEtBQUssTUFBTSxZQUFZLENBQUE7QUFFeEMsT0FBTyxLQUFLLFNBQVMsTUFBTSx1QkFBdUIsQ0FBQTtBQUNsRCxPQUFPLEtBQUssSUFBSSxNQUFNLFVBQVUsQ0FBQTtBQUNoQyxPQUFPLEtBQUssQ0FBQyxNQUFNLGFBQWEsQ0FBQTtBQUNoQyxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sWUFBWSxDQUFBIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,cAAc,CAAA;AAErB,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAA;AAE7C,OAAO,KAAK,GAAG,MAAM,eAAe,CAAA;AACpC,OAAO,KAAK,KAAK,MAAM,YAAY,CAAA;AAEnC,OAAO,KAAK,KAAK,MAAM,YAAY,CAAA;AACnC,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AACrC,OAAO,KAAK,KAAK,MAAM,YAAY,CAAA;AACnC,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAA;AAC/C,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAA;AAC7C,OAAO,KAAK,GAAG,MAAM,UAAU,CAAA;AAE/B,OAAO;AACL;;GAEG;AACH,UAAU,IAAI,OAAO,EACtB,CAAA;AAED,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,qBAAqB,EAAE,MAAM,YAAY,CAAA;AAE3E,cAAc,QAAQ,CAAA;AAEtB,YAAY,KAAK,KAAK,MAAM,YAAY,CAAA;AAExC,OAAO,KAAK,SAAS,MAAM,uBAAuB,CAAA;AAClD,OAAO,KAAK,CAAC,MAAM,aAAa,CAAA;AAChC,OAAO,EAAE,IAAI,EAAE,MAAM,YAAY,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,cAAc,CAAA;AAErB,OAAO,KAAK,GAAG,MAAM,eAAe,CAAA;AACpC,OAAO,KAAK,KAAK,MAAM,YAAY,CAAA;AAEnC,OAAO,KAAK,KAAK,MAAM,YAAY,CAAA;AACnC,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AACrC,OAAO,KAAK,cAAc,MAAM,qBAAqB,CAAA;AACrD,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AACrC,OAAO,KAAK,KAAK,MAAM,YAAY,CAAA;AACnC,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAA;AAC/C,OAAO,KAAK,GAAG,MAAM,UAAU,CAAA;AAE/B,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,qBAAqB,EAAE,MAAM,YAAY,CAAA;AAE3E,cAAc,QAAQ,CAAA;AAEtB,YAAY,KAAK,KAAK,MAAM,YAAY,CAAA;AAExC,OAAO,KAAK,SAAS,MAAM,uBAAuB,CAAA;AAClD,OAAO,KAAK,IAAI,MAAM,UAAU,CAAA;AAChC,OAAO,KAAK,CAAC,MAAM,aAAa,CAAA;AAChC,OAAO,EAAE,IAAI,EAAE,MAAM,YAAY,CAAA"}
package/dist/index.js CHANGED
@@ -1,20 +1,18 @@
1
+ // eslint-disable-next-line import/no-unassigned-import
1
2
  import "./builtin.js";
2
- import * as ServiceMap from "./ServiceMap.js";
3
3
  export * as Fnc from "./Function.js";
4
4
  export * as Utils from "./utils.js";
5
5
  export * as Array from "./Array.js";
6
+ export * as Config from "./Config.js";
7
+ export * as ConfigProvider from "./ConfigProvider.js";
8
+ export * as Context from "./Context.js";
6
9
  export * as Effect from "./Effect.js";
7
10
  export * as Layer from "./Layer.js";
8
11
  export * as NonEmptySet from "./NonEmptySet.js";
9
- export * as ServiceMap from "./ServiceMap.js";
10
12
  export * as Set from "./Set.js";
11
- export {
12
- /**
13
- * @deprecated use ServiceMap directly instead
14
- */
15
- ServiceMap as Context };
16
13
  export * from "effect";
17
14
  export * as SecretURL from "./Config/SecretURL.js";
15
+ export * as RpcX from "./rpc.js";
18
16
  export * as S from "./Schema.js";
19
17
  export { copy } from "./utils.js";
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxjQUFjLENBQUE7QUFFckIsT0FBTyxLQUFLLFVBQVUsTUFBTSxpQkFBaUIsQ0FBQTtBQUU3QyxPQUFPLEtBQUssR0FBRyxNQUFNLGVBQWUsQ0FBQTtBQUNwQyxPQUFPLEtBQUssS0FBSyxNQUFNLFlBQVksQ0FBQTtBQUVuQyxPQUFPLEtBQUssS0FBSyxNQUFNLFlBQVksQ0FBQTtBQUNuQyxPQUFPLEtBQUssTUFBTSxNQUFNLGFBQWEsQ0FBQTtBQUNyQyxPQUFPLEtBQUssS0FBSyxNQUFNLFlBQVksQ0FBQTtBQUNuQyxPQUFPLEtBQUssV0FBVyxNQUFNLGtCQUFrQixDQUFBO0FBQy9DLE9BQU8sS0FBSyxVQUFVLE1BQU0saUJBQWlCLENBQUE7QUFDN0MsT0FBTyxLQUFLLEdBQUcsTUFBTSxVQUFVLENBQUE7QUFFL0IsT0FBTztBQUNMOztHQUVHO0FBQ0gsVUFBVSxJQUFJLE9BQU8sRUFDdEIsQ0FBQTtBQUlELGNBQWMsUUFBUSxDQUFBO0FBSXRCLE9BQU8sS0FBSyxTQUFTLE1BQU0sdUJBQXVCLENBQUE7QUFDbEQsT0FBTyxLQUFLLENBQUMsTUFBTSxhQUFhLENBQUE7QUFDaEMsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLFlBQVksQ0FBQSJ9
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsdURBQXVEO0FBQ3ZELE9BQU8sY0FBYyxDQUFBO0FBRXJCLE9BQU8sS0FBSyxHQUFHLE1BQU0sZUFBZSxDQUFBO0FBQ3BDLE9BQU8sS0FBSyxLQUFLLE1BQU0sWUFBWSxDQUFBO0FBRW5DLE9BQU8sS0FBSyxLQUFLLE1BQU0sWUFBWSxDQUFBO0FBQ25DLE9BQU8sS0FBSyxNQUFNLE1BQU0sYUFBYSxDQUFBO0FBQ3JDLE9BQU8sS0FBSyxjQUFjLE1BQU0scUJBQXFCLENBQUE7QUFDckQsT0FBTyxLQUFLLE9BQU8sTUFBTSxjQUFjLENBQUE7QUFDdkMsT0FBTyxLQUFLLE1BQU0sTUFBTSxhQUFhLENBQUE7QUFDckMsT0FBTyxLQUFLLEtBQUssTUFBTSxZQUFZLENBQUE7QUFDbkMsT0FBTyxLQUFLLFdBQVcsTUFBTSxrQkFBa0IsQ0FBQTtBQUMvQyxPQUFPLEtBQUssR0FBRyxNQUFNLFVBQVUsQ0FBQTtBQUkvQixjQUFjLFFBQVEsQ0FBQTtBQUl0QixPQUFPLEtBQUssU0FBUyxNQUFNLHVCQUF1QixDQUFBO0FBQ2xELE9BQU8sS0FBSyxJQUFJLE1BQU0sVUFBVSxDQUFBO0FBQ2hDLE9BQU8sS0FBSyxDQUFDLE1BQU0sYUFBYSxDQUFBO0FBQ2hDLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxZQUFZLENBQUEifQ==
package/dist/logger.d.ts CHANGED
@@ -6,4 +6,4 @@ export declare const PreludeLogger: {
6
6
  logDebug: (...message: ReadonlyArray<any>) => import("effect/Effect").Effect<void, never, never>;
7
7
  logWithLevel: (level: import("effect/LogLevel").Severity, ...message: ReadonlyArray<any>) => import("effect/Effect").Effect<void, never, never>;
8
8
  };
9
- //# sourceMappingURL=logger.d.ts.map
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nZ2VyLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvbG9nZ2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLGVBQU8sTUFBTSxhQUFhOzs7Ozs7O0NBQWdDLENBQUEifQ==
@@ -1,27 +1,27 @@
1
- import { ServiceMap } from "effect-app";
2
- import { RpcX } from "./rpc.js";
3
- declare const DevMode_base: ServiceMap.Reference<boolean>;
1
+ import { Context } from "effect-app";
2
+ import { RpcMiddleware } from "./rpc.js";
3
+ declare const DevMode_base: Context.Reference<boolean>;
4
4
  export declare class DevMode extends DevMode_base {
5
5
  }
6
- declare const RequestCacheMiddleware_base: RpcX.RpcMiddleware.TagClass<RequestCacheMiddleware, "RequestCacheMiddleware", {}, {
6
+ declare const RequestCacheMiddleware_base: RpcMiddleware.TagClass<RequestCacheMiddleware, "RequestCacheMiddleware", {}, {
7
7
  requires: never;
8
8
  provides: never;
9
9
  }>;
10
10
  export declare class RequestCacheMiddleware extends RequestCacheMiddleware_base {
11
11
  }
12
- declare const ConfigureInterruptibilityMiddleware_base: RpcX.RpcMiddleware.TagClass<ConfigureInterruptibilityMiddleware, "ConfigureInterruptibilityMiddleware", {}, {
12
+ declare const ConfigureInterruptibilityMiddleware_base: RpcMiddleware.TagClass<ConfigureInterruptibilityMiddleware, "ConfigureInterruptibilityMiddleware", {}, {
13
13
  requires: never;
14
14
  provides: never;
15
15
  }>;
16
16
  export declare class ConfigureInterruptibilityMiddleware extends ConfigureInterruptibilityMiddleware_base {
17
17
  }
18
- declare const LoggerMiddleware_base: RpcX.RpcMiddleware.TagClass<LoggerMiddleware, "LoggerMiddleware", {}, {
18
+ declare const LoggerMiddleware_base: RpcMiddleware.TagClass<LoggerMiddleware, "LoggerMiddleware", {}, {
19
19
  requires: never;
20
20
  provides: never;
21
21
  }>;
22
22
  export declare class LoggerMiddleware extends LoggerMiddleware_base {
23
23
  }
24
- declare const DevModeMiddleware_base: RpcX.RpcMiddleware.TagClass<DevModeMiddleware, "DevModeMiddleware", {}, {
24
+ declare const DevModeMiddleware_base: RpcMiddleware.TagClass<DevModeMiddleware, "DevModeMiddleware", {}, {
25
25
  requires: never;
26
26
  provides: never;
27
27
  }>;
@@ -29,4 +29,4 @@ export declare class DevModeMiddleware extends DevModeMiddleware_base {
29
29
  }
30
30
  export declare const DefaultGenericMiddlewares: readonly [typeof RequestCacheMiddleware, typeof ConfigureInterruptibilityMiddleware, typeof LoggerMiddleware, typeof DevModeMiddleware];
31
31
  export {};
32
- //# sourceMappingURL=middleware.d.ts.map
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlkZGxld2FyZS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL21pZGRsZXdhcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFlBQVksQ0FBQTtBQUNwQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sVUFBVSxDQUFBOztBQUV4QyxxQkFBYSxPQUFRLFNBQVEsWUFBMkQ7Q0FBRzs7Ozs7QUFFM0YscUJBQWEsc0JBQXVCLFNBQVEsMkJBQXFFO0NBQUc7Ozs7O0FBRXBILHFCQUFhLG1DQUNYLFNBQVEsd0NBQStGO0NBQ3ZHOzs7OztBQUVGLHFCQUFhLGdCQUFpQixTQUFRLHFCQUF5RDtDQUFHOzs7OztBQUVsRyxxQkFBYSxpQkFBa0IsU0FBUSxzQkFBMkQ7Q0FBRztBQUVyRyxlQUFPLE1BQU0seUJBQXlCLHlJQUs1QixDQUFBIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"middleware.d.ts","sourceRoot":"","sources":["../src/middleware.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAA;;AAE/B,qBAAa,OAAQ,SAAQ,YAA8D;CAAG;;;;;AAE9F,qBAAa,sBACX,SAAQ,2BAA0E;CAClF;;;;;AAEF,qBAAa,mCACX,SAAQ,wCAAoG;CAC5G;;;;;AAEF,qBAAa,gBAAiB,SAAQ,qBAA8D;CAAG;;;;;AAEvG,qBAAa,iBAAkB,SAAQ,sBAAgE;CAAG;AAE1G,eAAO,MAAM,yBAAyB,yIAK5B,CAAA"}
1
+ {"version":3,"file":"middleware.d.ts","sourceRoot":"","sources":["../src/middleware.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;;AAExC,qBAAa,OAAQ,SAAQ,YAA2D;CAAG;;;;;AAE3F,qBAAa,sBAAuB,SAAQ,2BAAqE;CAAG;;;;;AAEpH,qBAAa,mCACX,SAAQ,wCAA+F;CACvG;;;;;AAEF,qBAAa,gBAAiB,SAAQ,qBAAyD;CAAG;;;;;AAElG,qBAAa,iBAAkB,SAAQ,sBAA2D;CAAG;AAErG,eAAO,MAAM,yBAAyB,yIAK5B,CAAA"}
@@ -1,15 +1,15 @@
1
1
  /* eslint-disable @typescript-eslint/no-explicit-any */
2
- import { ServiceMap } from "effect-app";
3
- import { RpcX } from "./rpc.js";
4
- export class DevMode extends ServiceMap.Reference("DevMode", { defaultValue: () => false }) {
2
+ import { Context } from "effect-app";
3
+ import { RpcMiddleware } from "./rpc.js";
4
+ export class DevMode extends Context.Reference("DevMode", { defaultValue: () => false }) {
5
5
  }
6
- export class RequestCacheMiddleware extends RpcX.RpcMiddleware.Tag()("RequestCacheMiddleware") {
6
+ export class RequestCacheMiddleware extends RpcMiddleware.Tag()("RequestCacheMiddleware") {
7
7
  }
8
- export class ConfigureInterruptibilityMiddleware extends RpcX.RpcMiddleware.Tag()("ConfigureInterruptibilityMiddleware") {
8
+ export class ConfigureInterruptibilityMiddleware extends RpcMiddleware.Tag()("ConfigureInterruptibilityMiddleware") {
9
9
  }
10
- export class LoggerMiddleware extends RpcX.RpcMiddleware.Tag()("LoggerMiddleware") {
10
+ export class LoggerMiddleware extends RpcMiddleware.Tag()("LoggerMiddleware") {
11
11
  }
12
- export class DevModeMiddleware extends RpcX.RpcMiddleware.Tag()("DevModeMiddleware") {
12
+ export class DevModeMiddleware extends RpcMiddleware.Tag()("DevModeMiddleware") {
13
13
  }
14
14
  export const DefaultGenericMiddlewares = [
15
15
  RequestCacheMiddleware,
@@ -17,4 +17,4 @@ export const DefaultGenericMiddlewares = [
17
17
  LoggerMiddleware,
18
18
  DevModeMiddleware
19
19
  ];
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlkZGxld2FyZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9taWRkbGV3YXJlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHVEQUF1RDtBQUN2RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sWUFBWSxDQUFBO0FBQ3ZDLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxVQUFVLENBQUE7QUFFL0IsTUFBTSxPQUFPLE9BQVEsU0FBUSxVQUFVLENBQUMsU0FBUyxDQUFDLFNBQVMsRUFBRSxFQUFFLFlBQVksRUFBRSxHQUFHLEVBQUUsQ0FBQyxLQUFLLEVBQUUsQ0FBQztDQUFHO0FBRTlGLE1BQU0sT0FBTyxzQkFDWCxTQUFRLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxFQUEwQixDQUFDLHdCQUF3QixDQUFDO0NBQ2xGO0FBRUYsTUFBTSxPQUFPLG1DQUNYLFNBQVEsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLEVBQXVDLENBQUMscUNBQXFDLENBQUM7Q0FDNUc7QUFFRixNQUFNLE9BQU8sZ0JBQWlCLFNBQVEsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLEVBQW9CLENBQUMsa0JBQWtCLENBQUM7Q0FBRztBQUV2RyxNQUFNLE9BQU8saUJBQWtCLFNBQVEsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLEVBQXFCLENBQUMsbUJBQW1CLENBQUM7Q0FBRztBQUUxRyxNQUFNLENBQUMsTUFBTSx5QkFBeUIsR0FBRztJQUN2QyxzQkFBc0I7SUFDdEIsbUNBQW1DO0lBQ25DLGdCQUFnQjtJQUNoQixpQkFBaUI7Q0FDVCxDQUFBIn0=
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlkZGxld2FyZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9taWRkbGV3YXJlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHVEQUF1RDtBQUN2RCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sWUFBWSxDQUFBO0FBQ3BDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxVQUFVLENBQUE7QUFFeEMsTUFBTSxPQUFPLE9BQVEsU0FBUSxPQUFPLENBQUMsU0FBUyxDQUFDLFNBQVMsRUFBRSxFQUFFLFlBQVksRUFBRSxHQUFHLEVBQUUsQ0FBQyxLQUFLLEVBQUUsQ0FBQztDQUFHO0FBRTNGLE1BQU0sT0FBTyxzQkFBdUIsU0FBUSxhQUFhLENBQUMsR0FBRyxFQUEwQixDQUFDLHdCQUF3QixDQUFDO0NBQUc7QUFFcEgsTUFBTSxPQUFPLG1DQUNYLFNBQVEsYUFBYSxDQUFDLEdBQUcsRUFBdUMsQ0FBQyxxQ0FBcUMsQ0FBQztDQUN2RztBQUVGLE1BQU0sT0FBTyxnQkFBaUIsU0FBUSxhQUFhLENBQUMsR0FBRyxFQUFvQixDQUFDLGtCQUFrQixDQUFDO0NBQUc7QUFFbEcsTUFBTSxPQUFPLGlCQUFrQixTQUFRLGFBQWEsQ0FBQyxHQUFHLEVBQXFCLENBQUMsbUJBQW1CLENBQUM7Q0FBRztBQUVyRyxNQUFNLENBQUMsTUFBTSx5QkFBeUIsR0FBRztJQUN2QyxzQkFBc0I7SUFDdEIsbUNBQW1DO0lBQ25DLGdCQUFnQjtJQUNoQixpQkFBaUI7Q0FDVCxDQUFBIn0=