effect-app 4.0.0-beta.30 → 4.0.0-beta.301

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 (365) hide show
  1. package/CHANGELOG.md +1435 -0
  2. package/dist/Array.d.ts +2 -1
  3. package/dist/Array.d.ts.map +1 -1
  4. package/dist/Array.js +4 -4
  5. package/dist/Chunk.d.ts.map +1 -1
  6. package/dist/Config/SecretURL.d.ts +3 -1
  7. package/dist/Config/SecretURL.d.ts.map +1 -1
  8. package/dist/Config/SecretURL.js +3 -6
  9. package/dist/Config/internal/configSecretURL.d.ts.map +1 -1
  10. package/dist/Config/internal/configSecretURL.js +2 -2
  11. package/dist/Config.d.ts +2 -0
  12. package/dist/Config.d.ts.map +1 -0
  13. package/dist/Config.js +8 -0
  14. package/dist/ConfigProvider.d.ts +2 -0
  15. package/dist/ConfigProvider.d.ts.map +1 -0
  16. package/dist/ConfigProvider.js +6 -0
  17. package/dist/{ServiceMap.d.ts → Context.d.ts} +18 -20
  18. package/dist/Context.d.ts.map +1 -0
  19. package/dist/Context.js +67 -0
  20. package/dist/DataDependencies.d.ts +388 -0
  21. package/dist/DataDependencies.d.ts.map +1 -0
  22. package/dist/DataDependencies.js +64 -0
  23. package/dist/Effect.d.ts +10 -9
  24. package/dist/Effect.d.ts.map +1 -1
  25. package/dist/Effect.js +5 -8
  26. package/dist/Emailer.d.ts +51 -0
  27. package/dist/Emailer.d.ts.map +1 -0
  28. package/dist/Emailer.js +7 -0
  29. package/dist/Function.d.ts.map +1 -1
  30. package/dist/Layer.d.ts +10 -6
  31. package/dist/Layer.d.ts.map +1 -1
  32. package/dist/Layer.js +3 -2
  33. package/dist/Model/Repository/Registry.d.ts +22 -0
  34. package/dist/Model/Repository/Registry.d.ts.map +1 -0
  35. package/dist/Model/Repository/Registry.js +18 -0
  36. package/dist/Model/Repository/ext.d.ts +60 -0
  37. package/dist/Model/Repository/ext.d.ts.map +1 -0
  38. package/dist/Model/Repository/ext.js +122 -0
  39. package/dist/Model/Repository/internal/internal.d.ts +63 -0
  40. package/dist/Model/Repository/internal/internal.d.ts.map +1 -0
  41. package/dist/Model/Repository/internal/internal.js +438 -0
  42. package/dist/Model/Repository/legacy.d.ts +21 -0
  43. package/dist/Model/Repository/legacy.d.ts.map +1 -0
  44. package/dist/Model/Repository/legacy.js +2 -0
  45. package/dist/Model/Repository/makeRepo.d.ts +54 -0
  46. package/dist/Model/Repository/makeRepo.d.ts.map +1 -0
  47. package/dist/Model/Repository/makeRepo.js +27 -0
  48. package/dist/Model/Repository/service.d.ts +121 -0
  49. package/dist/Model/Repository/service.d.ts.map +1 -0
  50. package/dist/Model/Repository/service.js +2 -0
  51. package/dist/Model/Repository/validation.d.ts +58 -0
  52. package/dist/Model/Repository/validation.d.ts.map +1 -0
  53. package/dist/Model/Repository/validation.js +32 -0
  54. package/dist/Model/Repository.d.ts +7 -0
  55. package/dist/Model/Repository.d.ts.map +1 -0
  56. package/dist/Model/Repository.js +7 -0
  57. package/dist/Model/dsl.d.ts +33 -0
  58. package/dist/Model/dsl.d.ts.map +1 -0
  59. package/dist/Model/dsl.js +43 -0
  60. package/dist/Model/filter/filterApi.d.ts +30 -0
  61. package/dist/Model/filter/filterApi.d.ts.map +1 -0
  62. package/dist/Model/filter/filterApi.js +2 -0
  63. package/dist/Model/filter/types/errors.d.ts +29 -0
  64. package/dist/Model/filter/types/errors.d.ts.map +1 -0
  65. package/dist/Model/filter/types/errors.js +2 -0
  66. package/dist/Model/filter/types/fields.d.ts +15 -0
  67. package/dist/Model/filter/types/fields.d.ts.map +1 -0
  68. package/dist/Model/filter/types/fields.js +2 -0
  69. package/dist/Model/filter/types/path/common.d.ts +316 -0
  70. package/dist/Model/filter/types/path/common.d.ts.map +1 -0
  71. package/dist/Model/filter/types/path/common.js +2 -0
  72. package/dist/Model/filter/types/path/eager.d.ts +94 -0
  73. package/dist/Model/filter/types/path/eager.d.ts.map +1 -0
  74. package/dist/Model/filter/types/path/eager.js +36 -0
  75. package/dist/Model/filter/types/path/index.d.ts +4 -0
  76. package/dist/Model/filter/types/path/index.d.ts.map +1 -0
  77. package/dist/Model/filter/types/path/index.js +3 -0
  78. package/dist/Model/filter/types/utils.d.ts +79 -0
  79. package/dist/Model/filter/types/utils.d.ts.map +1 -0
  80. package/dist/Model/filter/types/utils.js +2 -0
  81. package/dist/Model/filter/types/validator.d.ts +30 -0
  82. package/dist/Model/filter/types/validator.d.ts.map +1 -0
  83. package/dist/Model/filter/types/validator.js +2 -0
  84. package/dist/Model/filter/types.d.ts +5 -0
  85. package/dist/Model/filter/types.d.ts.map +1 -0
  86. package/dist/Model/filter/types.js +7 -0
  87. package/dist/Model/query/dsl.d.ts +514 -0
  88. package/dist/Model/query/dsl.d.ts.map +1 -0
  89. package/dist/Model/query/dsl.js +376 -0
  90. package/dist/Model/query/new-kid-interpreter.d.ts +132 -0
  91. package/dist/Model/query/new-kid-interpreter.d.ts.map +1 -0
  92. package/dist/Model/query/new-kid-interpreter.js +361 -0
  93. package/dist/Model/query.d.ts +15 -0
  94. package/dist/Model/query.d.ts.map +1 -0
  95. package/dist/Model/query.js +3 -0
  96. package/dist/Model.d.ts +5 -0
  97. package/dist/Model.d.ts.map +1 -0
  98. package/dist/Model.js +5 -0
  99. package/dist/NonEmptySet.d.ts +3 -1
  100. package/dist/NonEmptySet.d.ts.map +1 -1
  101. package/dist/NonEmptySet.js +2 -2
  102. package/dist/Option.d.ts +1 -0
  103. package/dist/Option.d.ts.map +1 -1
  104. package/dist/Option.js +3 -1
  105. package/dist/Pure.d.ts +7 -5
  106. package/dist/Pure.d.ts.map +1 -1
  107. package/dist/Pure.js +7 -4
  108. package/dist/QueueMaker.d.ts +11 -0
  109. package/dist/QueueMaker.d.ts.map +1 -0
  110. package/dist/QueueMaker.js +11 -0
  111. package/dist/RequestContext.d.ts +87 -0
  112. package/dist/RequestContext.d.ts.map +1 -0
  113. package/dist/RequestContext.js +45 -0
  114. package/dist/RequestScopedDependencies.d.ts +21 -0
  115. package/dist/RequestScopedDependencies.d.ts.map +1 -0
  116. package/dist/RequestScopedDependencies.js +16 -0
  117. package/dist/Schema/Class.d.ts +188 -19
  118. package/dist/Schema/Class.d.ts.map +1 -1
  119. package/dist/Schema/Class.js +260 -17
  120. package/dist/Schema/FastCheck.d.ts.map +1 -1
  121. package/dist/Schema/SchemaParser.d.ts +5 -0
  122. package/dist/Schema/SchemaParser.d.ts.map +1 -0
  123. package/dist/Schema/SchemaParser.js +6 -0
  124. package/dist/Schema/SpecialJsonSchema.d.ts +34 -0
  125. package/dist/Schema/SpecialJsonSchema.d.ts.map +1 -0
  126. package/dist/Schema/SpecialJsonSchema.js +118 -0
  127. package/dist/Schema/SpecialOpenApi.d.ts +32 -0
  128. package/dist/Schema/SpecialOpenApi.d.ts.map +1 -0
  129. package/dist/Schema/SpecialOpenApi.js +123 -0
  130. package/dist/Schema/brand.d.ts +4 -2
  131. package/dist/Schema/brand.d.ts.map +1 -1
  132. package/dist/Schema/brand.js +3 -1
  133. package/dist/Schema/email.d.ts.map +1 -1
  134. package/dist/Schema/email.js +7 -4
  135. package/dist/Schema/ext.d.ts +338 -55
  136. package/dist/Schema/ext.d.ts.map +1 -1
  137. package/dist/Schema/ext.js +358 -53
  138. package/dist/Schema/moreStrings.d.ts +82 -36
  139. package/dist/Schema/moreStrings.d.ts.map +1 -1
  140. package/dist/Schema/moreStrings.js +49 -42
  141. package/dist/Schema/numbers.d.ts +34 -21
  142. package/dist/Schema/numbers.d.ts.map +1 -1
  143. package/dist/Schema/numbers.js +55 -12
  144. package/dist/Schema/phoneNumber.d.ts.map +1 -1
  145. package/dist/Schema/phoneNumber.js +6 -3
  146. package/dist/Schema/schema.d.ts +1 -1
  147. package/dist/Schema/schema.d.ts.map +1 -1
  148. package/dist/Schema/schema.js +2 -2
  149. package/dist/Schema/strings.d.ts +18 -4
  150. package/dist/Schema/strings.d.ts.map +1 -1
  151. package/dist/Schema/strings.js +1 -5
  152. package/dist/Schema.d.ts +222 -8
  153. package/dist/Schema.d.ts.map +1 -1
  154. package/dist/Schema.js +191 -12
  155. package/dist/SchemaAST.d.ts +2 -0
  156. package/dist/SchemaAST.d.ts.map +1 -0
  157. package/dist/SchemaAST.js +2 -0
  158. package/dist/Set.d.ts +4 -1
  159. package/dist/Set.d.ts.map +1 -1
  160. package/dist/Set.js +3 -2
  161. package/dist/Store.d.ts +163 -0
  162. package/dist/Store.d.ts.map +1 -0
  163. package/dist/Store.js +113 -0
  164. package/dist/_ext/Array.d.ts +1 -1
  165. package/dist/_ext/Array.d.ts.map +1 -1
  166. package/dist/_ext/Array.js +4 -2
  167. package/dist/_ext/misc.d.ts +4 -1
  168. package/dist/_ext/misc.d.ts.map +1 -1
  169. package/dist/_ext/misc.js +4 -2
  170. package/dist/_ext/ord.ext.d.ts +2 -1
  171. package/dist/_ext/ord.ext.d.ts.map +1 -1
  172. package/dist/_ext/ord.ext.js +2 -2
  173. package/dist/builtin.d.ts +2 -14
  174. package/dist/builtin.d.ts.map +1 -1
  175. package/dist/builtin.js +1 -1
  176. package/dist/client/InvalidationKeys.d.ts +30 -0
  177. package/dist/client/InvalidationKeys.d.ts.map +1 -0
  178. package/dist/client/InvalidationKeys.js +37 -0
  179. package/dist/client/apiClientFactory.d.ts +19 -31
  180. package/dist/client/apiClientFactory.d.ts.map +1 -1
  181. package/dist/client/apiClientFactory.js +155 -35
  182. package/dist/client/clientFor.d.ts +54 -18
  183. package/dist/client/clientFor.d.ts.map +1 -1
  184. package/dist/client/clientFor.js +9 -1
  185. package/dist/client/errors.d.ts +82 -27
  186. package/dist/client/errors.d.ts.map +1 -1
  187. package/dist/client/errors.js +75 -19
  188. package/dist/client/makeClient.d.ts +490 -34
  189. package/dist/client/makeClient.d.ts.map +1 -1
  190. package/dist/client/makeClient.js +62 -28
  191. package/dist/client.d.ts +2 -0
  192. package/dist/client.d.ts.map +1 -1
  193. package/dist/client.js +3 -1
  194. package/dist/faker.d.ts.map +1 -1
  195. package/dist/http/Request.d.ts +1 -1
  196. package/dist/http/Request.d.ts.map +1 -1
  197. package/dist/http/Request.js +2 -2
  198. package/dist/ids.d.ts +42 -14
  199. package/dist/ids.d.ts.map +1 -1
  200. package/dist/ids.js +30 -5
  201. package/dist/index.d.ts +6 -7
  202. package/dist/index.d.ts.map +1 -1
  203. package/dist/index.js +8 -8
  204. package/dist/middleware.d.ts +13 -7
  205. package/dist/middleware.d.ts.map +1 -1
  206. package/dist/middleware.js +14 -8
  207. package/dist/rpc/Invalidation.d.ts +3140 -0
  208. package/dist/rpc/Invalidation.d.ts.map +1 -0
  209. package/dist/rpc/Invalidation.js +178 -0
  210. package/dist/rpc/MiddlewareMaker.d.ts +11 -7
  211. package/dist/rpc/MiddlewareMaker.d.ts.map +1 -1
  212. package/dist/rpc/MiddlewareMaker.js +59 -38
  213. package/dist/rpc/RpcContextMap.d.ts +3 -3
  214. package/dist/rpc/RpcContextMap.d.ts.map +1 -1
  215. package/dist/rpc/RpcContextMap.js +4 -4
  216. package/dist/rpc/RpcMiddleware.d.ts +14 -10
  217. package/dist/rpc/RpcMiddleware.d.ts.map +1 -1
  218. package/dist/rpc/RpcMiddleware.js +1 -1
  219. package/dist/rpc.d.ts +1 -1
  220. package/dist/rpc.d.ts.map +1 -1
  221. package/dist/rpc.js +2 -2
  222. package/dist/runtime.d.ts +19 -0
  223. package/dist/runtime.d.ts.map +1 -0
  224. package/dist/runtime.js +40 -0
  225. package/dist/setupRequest.d.ts +20 -0
  226. package/dist/setupRequest.d.ts.map +1 -0
  227. package/dist/setupRequest.js +72 -0
  228. package/dist/toast.d.ts +51 -0
  229. package/dist/toast.d.ts.map +1 -0
  230. package/dist/toast.js +34 -0
  231. package/dist/transform.d.ts +1 -1
  232. package/dist/transform.d.ts.map +1 -1
  233. package/dist/transform.js +4 -5
  234. package/dist/utils/effectify.d.ts +1 -1
  235. package/dist/utils/effectify.d.ts.map +1 -1
  236. package/dist/utils/effectify.js +2 -2
  237. package/dist/utils/extend.d.ts.map +1 -1
  238. package/dist/utils/gen.d.ts +4 -4
  239. package/dist/utils/gen.d.ts.map +1 -1
  240. package/dist/utils/logLevel.d.ts +2 -2
  241. package/dist/utils/logLevel.d.ts.map +1 -1
  242. package/dist/utils/logger.d.ts +4 -3
  243. package/dist/utils/logger.d.ts.map +1 -1
  244. package/dist/utils/logger.js +4 -4
  245. package/dist/utils.d.ts +34 -39
  246. package/dist/utils.d.ts.map +1 -1
  247. package/dist/utils.js +33 -37
  248. package/dist/validation/validators.d.ts.map +1 -1
  249. package/dist/validation.d.ts.map +1 -1
  250. package/dist/withToast.d.ts +30 -0
  251. package/dist/withToast.d.ts.map +1 -0
  252. package/dist/withToast.js +64 -0
  253. package/package.json +27 -251
  254. package/src/Array.ts +5 -5
  255. package/src/Chunk.ts +3 -3
  256. package/src/Config/SecretURL.ts +6 -3
  257. package/src/Config/internal/configSecretURL.ts +2 -2
  258. package/src/Config.ts +7 -0
  259. package/src/ConfigProvider.ts +5 -0
  260. package/src/{ServiceMap.ts → Context.ts} +56 -63
  261. package/src/DataDependencies.ts +114 -0
  262. package/src/Effect.ts +14 -16
  263. package/src/Emailer.ts +51 -0
  264. package/src/Inputify.type.ts +1 -1
  265. package/src/Layer.ts +11 -7
  266. package/src/Model/Repository/Registry.ts +35 -0
  267. package/src/Model/Repository/ext.ts +375 -0
  268. package/src/Model/Repository/internal/internal.ts +755 -0
  269. package/src/Model/Repository/legacy.ts +29 -0
  270. package/src/Model/Repository/makeRepo.ts +145 -0
  271. package/src/Model/Repository/service.ts +676 -0
  272. package/src/Model/Repository/validation.ts +31 -0
  273. package/src/Model/Repository.ts +6 -0
  274. package/src/Model/dsl.ts +129 -0
  275. package/src/Model/filter/filterApi.ts +60 -0
  276. package/src/Model/filter/types/errors.ts +47 -0
  277. package/src/Model/filter/types/fields.ts +50 -0
  278. package/src/Model/filter/types/path/common.ts +404 -0
  279. package/src/Model/filter/types/path/eager.ts +329 -0
  280. package/src/Model/filter/types/path/index.ts +4 -0
  281. package/src/Model/filter/types/utils.ts +128 -0
  282. package/src/Model/filter/types/validator.ts +46 -0
  283. package/src/Model/filter/types.ts +6 -0
  284. package/src/Model/query/dsl.ts +2770 -0
  285. package/src/Model/query/new-kid-interpreter.ts +526 -0
  286. package/src/Model/query.ts +13 -0
  287. package/src/Model.ts +4 -0
  288. package/src/NonEmptySet.ts +6 -4
  289. package/src/Option.ts +2 -0
  290. package/src/Pure.ts +10 -7
  291. package/src/QueueMaker.ts +11 -0
  292. package/src/RequestContext.ts +48 -0
  293. package/src/RequestScopedDependencies.ts +45 -0
  294. package/src/Schema/Class.ts +633 -59
  295. package/src/Schema/SchemaParser.ts +12 -0
  296. package/src/Schema/SpecialJsonSchema.ts +139 -0
  297. package/src/Schema/SpecialOpenApi.ts +130 -0
  298. package/src/Schema/brand.ts +22 -2
  299. package/src/Schema/email.ts +9 -4
  300. package/src/Schema/ext.ts +446 -91
  301. package/src/Schema/moreStrings.ts +147 -68
  302. package/src/Schema/numbers.ts +97 -28
  303. package/src/Schema/phoneNumber.ts +9 -5
  304. package/src/Schema/schema.ts +1 -1
  305. package/src/Schema/strings.ts +23 -14
  306. package/src/Schema.ts +397 -26
  307. package/src/SchemaAST.ts +1 -0
  308. package/src/Set.ts +6 -2
  309. package/src/Store.ts +273 -0
  310. package/src/_ext/Array.ts +4 -2
  311. package/src/_ext/misc.ts +4 -1
  312. package/src/_ext/ord.ext.ts +2 -1
  313. package/src/builtin-json.d.ts +24 -0
  314. package/src/builtin.ts +16 -21
  315. package/src/client/InvalidationKeys.ts +55 -0
  316. package/src/client/apiClientFactory.ts +299 -134
  317. package/src/client/clientFor.ts +107 -34
  318. package/src/client/errors.ts +100 -29
  319. package/src/client/makeClient.ts +594 -78
  320. package/src/client.ts +6 -4
  321. package/src/http/Request.ts +3 -3
  322. package/src/http.ts +1 -1
  323. package/src/ids.ts +33 -6
  324. package/src/index.ts +20 -23
  325. package/src/middleware.ts +13 -9
  326. package/src/rpc/Invalidation.ts +278 -0
  327. package/src/rpc/MiddlewareMaker.ts +88 -80
  328. package/src/rpc/README.md +2 -2
  329. package/src/rpc/RpcContextMap.ts +7 -6
  330. package/src/rpc/RpcMiddleware.ts +19 -13
  331. package/src/rpc.ts +4 -4
  332. package/src/runtime.ts +56 -0
  333. package/src/setupRequest.ts +138 -0
  334. package/src/toast.ts +54 -0
  335. package/src/transform.ts +4 -4
  336. package/src/utils/effectify.ts +1 -1
  337. package/src/utils/gen.ts +8 -8
  338. package/src/utils/logLevel.ts +1 -1
  339. package/src/utils/logger.ts +4 -3
  340. package/src/utils.ts +85 -158
  341. package/src/validation.ts +2 -2
  342. package/src/withToast.ts +133 -0
  343. package/test/dist/rpc.test.d.ts.map +1 -1
  344. package/test/dist/rpcMiddlewareContext.test.d.ts.map +1 -0
  345. package/test/dist/secretURL.test.d.ts.map +1 -0
  346. package/test/dist/special.test.d.ts.map +1 -0
  347. package/test/moreStrings.test.ts +1 -1
  348. package/test/rpc.test.ts +42 -13
  349. package/test/rpcMiddlewareContext.test.ts +63 -0
  350. package/test/schema.test.ts +459 -30
  351. package/test/secretURL.test.ts +160 -0
  352. package/test/special.test.ts +1258 -0
  353. package/test/utils.test.ts +7 -7
  354. package/tsconfig.base.json +6 -5
  355. package/tsconfig.json +3 -1
  356. package/tsconfig.src.json +29 -29
  357. package/tsconfig.test.json +2 -2
  358. package/dist/Operations.d.ts +0 -123
  359. package/dist/Operations.d.ts.map +0 -1
  360. package/dist/Operations.js +0 -29
  361. package/dist/ServiceMap.d.ts.map +0 -1
  362. package/dist/ServiceMap.js +0 -91
  363. package/eslint.config.mjs +0 -26
  364. package/src/Operations.ts +0 -55
  365. package/tsconfig.json.bak +0 -12
@@ -1,36 +1,70 @@
1
- import { SchemaTransformation } from "effect";
2
1
  import * as S from "../Schema.js";
3
2
  import { AST } from "../Schema.js";
4
3
  const merge = (a, b) => a !== undefined && b.length ? S.Union([a, ...b]) : a !== undefined ? a : b.length ? S.Union(b) : S.Never;
5
- /**
6
- * Whatever the input, we will only decode or encode to void
7
- */
8
- export const ForceVoid = S.Any.pipe(S.decodeTo(S.Any, SchemaTransformation.transform({ decode: () => void 0, encode: () => void 0 })));
9
- export const makeRpcClient = (rcs, generalErrors) => {
10
- function TaggedRequest() {
11
- // TODO: filter errors based on config + take care of inversion
12
- const errorSchemas = Object.values(rcs.config).map((_) => _.error);
13
- return ((tag, fields, config) => {
14
- // TODO: S.TaggedRequest removed in v4 — needs rework to use Rpc.make or Request.TaggedClass
15
- // For now, creating a simple tagged struct class with success/failure properties
16
- const failureSchema = merge(config?.error ? S.isSchema(config.error) ? config.error : S.Struct(config.error) : undefined, [...errorSchemas, generalErrors].filter(Boolean));
17
- const successSchema = config?.success
18
- ? S.isSchema(config.success)
19
- ? AST.isVoid(config.success.ast) ? ForceVoid : config.success
20
- : S.Struct(config.success)
21
- : ForceVoid;
22
- const RequestClass = S.TaggedClass()(tag, fields);
23
- Object.assign(RequestClass, {
24
- _tag: tag,
25
- success: successSchema,
26
- error: failureSchema,
27
- config
28
- });
29
- return RequestClass;
4
+ export const configureInvalidation = () => (invalidatesQueries) => ({ invalidatesQueries });
5
+ export const configureInvalidationCallback = () => (invalidatesQueries) => invalidatesQueries;
6
+ export const configureInvalidationResources = () => ({});
7
+ export const makeRpcClient = (middleware, generalErrors) => {
8
+ function makeRequestClass(tag, fields, config) {
9
+ const failureSchema = merge(config?.error ? S.isSchema(config.error) ? config.error : S.Struct(config.error) : undefined, [generalErrors].filter(Boolean));
10
+ const successSchema = config?.success
11
+ ? S.isSchema(config.success)
12
+ ? AST.isVoid(config.success.ast) ? S.Void : config.success
13
+ : S.Struct(config.success)
14
+ : S.Void;
15
+ const finalConfig = config?.final;
16
+ const finalSchema = finalConfig && S.isSchema(finalConfig) ? finalConfig : undefined;
17
+ // Strip stream from the stored config — it's request metadata, not handler config
18
+ const { stream: _stream, ...restConfig } = config ?? {};
19
+ const RequestClass = S.Opaque()(S.TaggedStruct(tag, fields));
20
+ Object.assign(RequestClass, {
21
+ _tag: tag,
22
+ success: successSchema,
23
+ error: failureSchema,
24
+ ...(finalSchema !== undefined ? { final: finalSchema } : {}),
25
+ config: restConfig
30
26
  });
27
+ return RequestClass;
28
+ }
29
+ function makeTaggedRequestWithMeta(moduleName, type) {
30
+ function TaggedRequestWithMeta() {
31
+ return ((tag, fields, config, invalidatesQueries) => {
32
+ const isStream = config?.stream === true;
33
+ const requestConfig = invalidatesQueries === undefined ? config : { ...config, invalidatesQueries };
34
+ const cls = makeRequestClass(tag, fields, requestConfig);
35
+ Object.assign(cls, {
36
+ id: `${moduleName}.${tag}`,
37
+ moduleName,
38
+ type,
39
+ stream: isStream,
40
+ middleware
41
+ });
42
+ return cls;
43
+ });
44
+ }
45
+ return Object.assign(TaggedRequestWithMeta, { moduleName, type });
46
+ }
47
+ function TaggedRequestFor(moduleName) {
48
+ const Query = makeTaggedRequestWithMeta(moduleName, "query");
49
+ const Command = makeTaggedRequestWithMeta(moduleName, "command");
50
+ return {
51
+ moduleName,
52
+ /**
53
+ * Create query request classes for this module.
54
+ * Queries read state and should not mutate server state.
55
+ * Pass `stream: true` in the config to produce a Stream of `success` values (QueryStream behaviour).
56
+ */
57
+ Query,
58
+ /**
59
+ * Create command request classes for this module.
60
+ * Commands mutate state and should avoid returning complex read models.
61
+ * Pass `stream: true` in the config to produce a Stream of `success` values (CommandStream behaviour).
62
+ */
63
+ Command
64
+ };
31
65
  }
32
66
  return {
33
- TaggedRequest
67
+ TaggedRequestFor
34
68
  };
35
69
  };
36
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFrZUNsaWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jbGllbnQvbWFrZUNsaWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxRQUFRLENBQUE7QUFFN0MsT0FBTyxLQUFLLENBQUMsTUFBTSxjQUFjLENBQUE7QUFDakMsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGNBQWMsQ0FBQTtBQUVsQyxNQUFNLEtBQUssR0FBRyxDQUFDLENBQU0sRUFBRSxDQUFhLEVBQUUsRUFBRSxDQUN0QyxDQUFDLEtBQUssU0FBUyxJQUFJLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUE7QUFFMUc7O0dBRUc7QUFDSCxNQUFNLENBQUMsTUFBTSxTQUFTLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQ2pDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxvQkFBb0IsQ0FBQyxTQUFTLENBQUMsRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLENBQUMsS0FBSyxDQUFTLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUMxRyxDQUFBO0FBc0JELE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRyxDQUczQixHQUFzQixFQUFFLGFBQTZCLEVBQUUsRUFBRTtJQWN6RCxTQUFTLGFBQWE7UUEwQnBCLCtEQUErRDtRQUMvRCxNQUFNLFlBQVksR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQTtRQUNsRSxPQUFPLENBQUMsQ0FDTixHQUFRLEVBQ1IsTUFBYyxFQUNkLE1BQVUsRUFDVixFQUFFO1lBQ0YsNEZBQTRGO1lBQzVGLGlGQUFpRjtZQUNqRixNQUFNLGFBQWEsR0FBRyxLQUFLLENBQ3pCLE1BQU0sRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxFQUM1RixDQUFDLEdBQUcsWUFBWSxFQUFFLGFBQWEsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FDakQsQ0FBQTtZQUNELE1BQU0sYUFBYSxHQUFHLE1BQU0sRUFBRSxPQUFPO2dCQUNuQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDO29CQUMxQixDQUFDLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPO29CQUM3RCxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDO2dCQUM1QixDQUFDLENBQUMsU0FBUyxDQUFBO1lBRWIsTUFBTSxZQUFZLEdBQUcsQ0FBQyxDQUFDLFdBQVcsRUFBTyxDQUFDLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQTtZQUN0RCxNQUFNLENBQUMsTUFBTSxDQUFDLFlBQVksRUFBRTtnQkFDMUIsSUFBSSxFQUFFLEdBQUc7Z0JBQ1QsT0FBTyxFQUFFLGFBQWE7Z0JBQ3RCLEtBQUssRUFBRSxhQUFhO2dCQUNwQixNQUFNO2FBQ1AsQ0FBQyxDQUFBO1lBRUYsT0FBTyxZQUFZLENBQUE7UUFDckIsQ0FBQyxDQUFRLENBQUE7SUFDWCxDQUFDO0lBRUQsT0FBTztRQUNMLGFBQWE7S0FDZCxDQUFBO0FBQ0gsQ0FBQyxDQUFBIn0=
70
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFrZUNsaWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jbGllbnQvbWFrZUNsaWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEtBQUssQ0FBQyxNQUFNLGNBQWMsQ0FBQTtBQUNqQyxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sY0FBYyxDQUFBO0FBZWxDLE1BQU0sS0FBSyxHQUFHLENBQUMsQ0FBTSxFQUFFLENBQWEsRUFBRSxFQUFFLENBQ3RDLENBQUMsS0FBSyxTQUFTLElBQUksQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQTtBQXVFMUcsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBQUcsR0FBYyxFQUFFLENBQ3JELENBQ0Usa0JBQXVHLEVBQy9DLEVBQUUsQ0FBQyxDQUFDLEVBQUUsa0JBQWtCLEVBQUUsQ0FBQyxDQUFBO0FBRXJGLE1BQU0sQ0FBQyxNQUFNLDZCQUE2QixHQUFHLEdBQWMsRUFBRSxDQUM3RCxDQUNFLGtCQUF1RyxFQUM3QyxFQUFFLENBQUMsa0JBQWtCLENBQUE7QUFFakYsTUFBTSxDQUFDLE1BQU0sOEJBQThCLEdBQUcsR0FBYyxFQUFFLENBQzVELENBQUMsRUFBRSxDQUFpRSxDQUFBO0FBZ0N0RSxNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUcsQ0FHM0IsVUFBc0IsRUFBRSxhQUE2QixFQUFFLEVBQUU7SUFzQnpELFNBQVMsZ0JBQWdCLENBQ3ZCLEdBQVEsRUFDUixNQUFjLEVBQ2QsTUFB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
package/dist/client.d.ts CHANGED
@@ -1,5 +1,7 @@
1
1
  export * from "./client/apiClientFactory.js";
2
2
  export * from "./client/clientFor.js";
3
3
  export * from "./client/errors.js";
4
+ export * from "./client/InvalidationKeys.js";
4
5
  export * from "./client/makeClient.js";
6
+ export * as DataDependencies from "./DataDependencies.js";
5
7
  //# sourceMappingURL=client.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AACA,cAAc,8BAA8B,CAAA;AAC5C,cAAc,uBAAuB,CAAA;AACrC,cAAc,oBAAoB,CAAA;AAClC,cAAc,wBAAwB,CAAA"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AACA,cAAc,8BAA8B,CAAA;AAC5C,cAAc,uBAAuB,CAAA;AACrC,cAAc,oBAAoB,CAAA;AAClC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,wBAAwB,CAAA;AAEtC,OAAO,KAAK,gBAAgB,MAAM,uBAAuB,CAAA"}
package/dist/client.js CHANGED
@@ -2,6 +2,8 @@
2
2
  export * from "./client/apiClientFactory.js";
3
3
  export * from "./client/clientFor.js";
4
4
  export * from "./client/errors.js";
5
+ export * from "./client/InvalidationKeys.js";
5
6
  export * from "./client/makeClient.js";
6
7
  // codegen:end
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2NsaWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSx5REFBeUQ7QUFDekQsY0FBYyw4QkFBOEIsQ0FBQTtBQUM1QyxjQUFjLHVCQUF1QixDQUFBO0FBQ3JDLGNBQWMsb0JBQW9CLENBQUE7QUFDbEMsY0FBYyx3QkFBd0IsQ0FBQTtBQUN0QyxjQUFjIn0=
8
+ export * as DataDependencies from "./DataDependencies.js";
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2NsaWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSx5REFBeUQ7QUFDekQsY0FBYyw4QkFBOEIsQ0FBQTtBQUM1QyxjQUFjLHVCQUF1QixDQUFBO0FBQ3JDLGNBQWMsb0JBQW9CLENBQUE7QUFDbEMsY0FBYyw4QkFBOEIsQ0FBQTtBQUM1QyxjQUFjLHdCQUF3QixDQUFBO0FBQ3RDLGNBQWM7QUFDZCxPQUFPLEtBQUssZ0JBQWdCLE1BQU0sdUJBQXVCLENBQUEifQ==
@@ -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>;
8
+ export declare const demandJson: (client: HttpClient.HttpClient) => HttpClient.HttpClient.With<HttpClientError.DecodeError | HttpClientError.HttpClientError, never>;
9
9
  //# sourceMappingURL=Request.d.ts.map
@@ -1 +1 @@
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,GAC/B,UAAU,kBAAkB,qFAOzB,CAAA;AAEL,eAAO,MAAM,UAAU,GAAI,QAAQ,UAAU,CAAC,UAAU,qGAmBlD,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,4 +1,4 @@
1
- import { Option } from "effect";
1
+ import * as Option from "effect/Option";
2
2
  import * as Effect from "../Effect.js";
3
3
  import { HttpClient, HttpClientError, HttpClientRequest, HttpHeaders } from "./internal/lib.js";
4
4
  // TODO: consider rebuilding the text/json helpers to use a cached effect
@@ -20,4 +20,4 @@ export const demandJson = (client) => HttpClient
20
20
  description: "not json response: "
21
21
  + Option.getOrElse(HttpHeaders.get(response.headers, "Content-Type"), () => "<missing>")
22
22
  })))));
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVxdWVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9odHRwL1JlcXVlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFFBQVEsQ0FBQTtBQUUvQixPQUFPLEtBQUssTUFBTSxNQUFNLGNBQWMsQ0FBQTtBQUN0QyxPQUFPLEVBQUUsVUFBVSxFQUFFLGVBQWUsRUFBRSxpQkFBaUIsRUFBRSxXQUFXLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQTtBQU0vRix5RUFBeUU7QUFDekUsMEZBQTBGO0FBRTFGLE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUFHLENBQ2xDLFFBQTRCLEVBQzVCLEVBQUUsQ0FDRixNQUFNLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxJQUFJLEVBQTZCLEVBQUUsQ0FBQyxDQUFDO0lBQzlELElBQUk7SUFDSixPQUFPLEVBQUUsUUFBUSxDQUFDLE9BQU87SUFDekIsTUFBTSxFQUFFLFFBQVEsQ0FBQyxNQUFNO0lBQ3ZCLGFBQWEsRUFBRSxRQUFRLENBQUMsYUFBYTtDQUN0QyxDQUFDLENBQUMsQ0FBQTtBQUVMLE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRyxDQUFDLE1BQTZCLEVBQUUsRUFBRSxDQUMxRCxVQUFVO0tBQ1AsVUFBVSxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsaUJBQWlCLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDO0tBQzFELElBQUksQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLE9BQU8sRUFBRSxFQUFFLENBQ3hDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FDekIsTUFBTTtLQUNELE1BQU0sQ0FDTCxXQUFXLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsY0FBYyxDQUFDLEVBQ2pELENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLGtCQUFrQixDQUFDLENBQ3hDO0lBQ0gsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJO0lBQ2IsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQ1gsSUFBSSxlQUFlLENBQUMsV0FBVyxDQUFDO1FBQzlCLE9BQU87UUFDUCxRQUFRO1FBQ1IsV0FBVyxFQUFFLHFCQUFxQjtjQUM5QixNQUFNLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxjQUFjLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxXQUFXLENBQUM7S0FDM0YsQ0FBQyxDQUNILENBQUMsQ0FDUCxDQUFDLENBQUEifQ==
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVxdWVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9odHRwL1JlcXVlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLE1BQU0sTUFBTSxlQUFlLENBQUE7QUFFdkMsT0FBTyxLQUFLLE1BQU0sTUFBTSxjQUFjLENBQUE7QUFDdEMsT0FBTyxFQUFFLFVBQVUsRUFBRSxlQUFlLEVBQUUsaUJBQWlCLEVBQUUsV0FBVyxFQUFFLE1BQU0sbUJBQW1CLENBQUE7QUFNL0YseUVBQXlFO0FBQ3pFLDBGQUEwRjtBQUUxRixNQUFNLENBQUMsTUFBTSxvQkFBb0IsR0FBRyxDQUNsQyxRQUE0QixFQUM1QixFQUFFLENBQ0YsTUFBTSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUMsSUFBSSxFQUE2QixFQUFFLENBQUMsQ0FBQztJQUM5RCxJQUFJO0lBQ0osT0FBTyxFQUFFLFFBQVEsQ0FBQyxPQUFPO0lBQ3pCLE1BQU0sRUFBRSxRQUFRLENBQUMsTUFBTTtJQUN2QixhQUFhLEVBQUUsUUFBUSxDQUFDLGFBQWE7Q0FDdEMsQ0FBQyxDQUFDLENBQUE7QUFFTCxNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUcsQ0FBQyxNQUE2QixFQUFFLEVBQUUsQ0FDMUQsVUFBVTtLQUNQLFVBQVUsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLGlCQUFpQixDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQztLQUMxRCxJQUFJLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxPQUFPLEVBQUUsRUFBRSxDQUN4QyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQ3pCLE1BQU07S0FDRCxNQUFNLENBQ0wsV0FBVyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsT0FBTyxFQUFFLGNBQWMsQ0FBQyxFQUNqRCxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxrQkFBa0IsQ0FBQyxDQUN4QztJQUNILENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSTtJQUNiLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUNYLElBQUksZUFBZSxDQUFDLFdBQVcsQ0FBQztRQUM5QixPQUFPO1FBQ1AsUUFBUTtRQUNSLFdBQVcsRUFBRSxxQkFBcUI7Y0FDOUIsTUFBTSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsY0FBYyxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUMsV0FBVyxDQUFDO0tBQzNGLENBQUMsQ0FDSCxDQUFDLENBQ1AsQ0FBQyxDQUFBIn0=
package/dist/ids.d.ts CHANGED
@@ -1,26 +1,54 @@
1
- import { type Codec, NonEmptyString255, StringId, type StringIdBrand } from "effect-app/Schema";
1
+ import { type Codec, NonEmptyString255, type StringIdBrand } from "effect-app/Schema";
2
2
  import type { B } from "effect-app/Schema/schema";
3
3
  import type { Simplify } from "effect/Types";
4
- import { S } from "./index.js";
4
+ import * as S from "./Schema.js";
5
5
  export interface RequestIdBrand extends StringIdBrand {
6
6
  readonly RequestId: unique symbol;
7
7
  }
8
8
  export type RequestId = NonEmptyString255;
9
+ /**
10
+ * Schema for a request id.
11
+ *
12
+ * A request id may be made from a span id, which does not comply with the
13
+ * `StringId` schema (hence the looser `NonEmptyString255` base).
14
+ *
15
+ * `.withConstructorDefault` => fresh `StringId` (construction-only; not
16
+ * applied during decode — cannot be used to JIT-migrate database fields).
17
+ * See `./Schema/ext.ts` for the full policy note.
18
+ */
9
19
  export declare const RequestId: S.WithDefaults<Codec<NonEmptyString255, string, never, never> & {
10
- make: () => NonEmptyString255;
11
- withDefault: S.withConstructorDefault<Codec<NonEmptyString255, string, never, never> & S.WithoutConstructorDefault>;
20
+ make: {
21
+ (): NonEmptyString255;
22
+ (input: string, options?: S.MakeOptions): NonEmptyString255;
23
+ };
24
+ /**
25
+ * Construction-only default: fresh `StringId`. Applied only when the
26
+ * field is omitted from `.make(...)` input. NOT applied during decode —
27
+ * cannot be used to JIT-migrate database fields. See `./Schema/ext.ts`
28
+ * file-level note.
29
+ */
30
+ withConstructorDefault: S.withConstructorDefault<S.Constraint & S.WithoutConstructorDefault>;
12
31
  }> & Codec<NonEmptyString255, string, never, never> & {
13
- make: () => NonEmptyString255;
14
- withDefault: S.withConstructorDefault<Codec<NonEmptyString255, string, never, never> & S.WithoutConstructorDefault>;
32
+ make: {
33
+ (): NonEmptyString255;
34
+ (input: string, options?: S.MakeOptions): NonEmptyString255;
35
+ };
36
+ /**
37
+ * Construction-only default: fresh `StringId`. Applied only when the
38
+ * field is omitted from `.make(...)` input. NOT applied during decode —
39
+ * cannot be used to JIT-migrate database fields. See `./Schema/ext.ts`
40
+ * file-level note.
41
+ */
42
+ withConstructorDefault: S.withConstructorDefault<S.Constraint & S.WithoutConstructorDefault>;
15
43
  };
16
44
  export interface UserProfileIdBrand extends Simplify<B.Brand<"UserProfileId"> & StringIdBrand> {
17
45
  }
18
- export type UserProfileId = StringId & UserProfileIdBrand;
19
- export declare const UserProfileId: S.WithDefaults<Codec<string & StringIdBrand & UserProfileIdBrand, string, never, never> & {
20
- make: () => string & StringIdBrand & UserProfileIdBrand;
21
- withDefault: S.withConstructorDefault<Codec<string & StringIdBrand & UserProfileIdBrand, string, never, never> & S.WithoutConstructorDefault>;
22
- } & S.WithDefaults<Codec<string & StringIdBrand & UserProfileIdBrand, string, never, never>>> & Codec<string & StringIdBrand & UserProfileIdBrand, string, never, never> & {
23
- make: () => string & StringIdBrand & UserProfileIdBrand;
24
- withDefault: S.withConstructorDefault<Codec<string & StringIdBrand & UserProfileIdBrand, string, never, never> & S.WithoutConstructorDefault>;
25
- } & S.WithDefaults<Codec<string & StringIdBrand & UserProfileIdBrand, string, never, never>>;
46
+ export type UserProfileId = string & UserProfileIdBrand;
47
+ /**
48
+ * Branded `StringId` for user profiles.
49
+ *
50
+ * Exposes `.withConstructorDefault` (fresh id) construction-only; not
51
+ * applied during decode. See `./Schema/ext.ts` for the full policy note.
52
+ */
53
+ export declare const UserProfileId: S.BrandedStringIdSchema<UserProfileId>;
26
54
  //# sourceMappingURL=ids.d.ts.map
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":"AAAA,OAAO,EAAmB,KAAK,KAAK,EAAE,iBAAiB,EAAY,KAAK,aAAa,EAAmB,MAAM,mBAAmB,CAAA;AACjI,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,0BAA0B,CAAA;AAEjD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AAC5C,OAAO,KAAK,CAAC,MAAM,aAAa,CAAA;AAGhC,MAAM,WAAW,cAAe,SAAQ,aAAa;IACnD,QAAQ,CAAC,SAAS,EAAE,OAAO,MAAM,CAAA;CAClC;AAED,MAAM,MAAM,SAAS,GAAG,iBAAiB,CAAA;AACzC;;;;;;;;;GASG;AACH,eAAO,MAAM,SAAS;;YAID,iBAAiB;gBACb,MAAM,YAAY,CAAC,CAAC,WAAW,GAAG,iBAAiB;;IAOtE;;;;;OAKG;;;;;;;IALH;;;;;OAKG;;CAKe,CAAA;AAExB,MAAM,WAAW,kBAAmB,SAAQ,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,eAAe,CAAC,GAAG,aAAa,CAAC;CAAG;AACjG,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,kBAAkB,CAAA;AACvD;;;;;GAKG;AACH,eAAO,MAAM,aAAa,wCAAmC,CAAA"}
package/dist/ids.js CHANGED
@@ -1,15 +1,40 @@
1
1
  import { brandedStringId, NonEmptyString255, StringId, withDefaultMake } from "effect-app/Schema";
2
- import { S } from "./index.js";
2
+ import * as Effect from "effect/Effect";
3
+ import * as S from "./Schema.js";
3
4
  import { extendM } from "./utils.js";
4
- // a request id may be made from a span id, which does not comply with StringId schema.
5
+ /**
6
+ * Schema for a request id.
7
+ *
8
+ * A request id may be made from a span id, which does not comply with the
9
+ * `StringId` schema (hence the looser `NonEmptyString255` base).
10
+ *
11
+ * `.withConstructorDefault` => fresh `StringId` (construction-only; not
12
+ * applied during decode — cannot be used to JIT-migrate database fields).
13
+ * See `./Schema/ext.ts` for the full policy note.
14
+ */
5
15
  export const RequestId = extendM(Object
6
16
  .assign(Object.create(NonEmptyString255), NonEmptyString255), (s) => {
7
- const make = StringId.make;
17
+ function make(input, options) {
18
+ const id = input === undefined ? StringId.make() : StringId.make(input, options);
19
+ return id;
20
+ }
8
21
  return ({
9
22
  make,
10
- withDefault: s.pipe(S.withDefaultConstructor(make))
23
+ /**
24
+ * Construction-only default: fresh `StringId`. Applied only when the
25
+ * field is omitted from `.make(...)` input. NOT applied during decode —
26
+ * cannot be used to JIT-migrate database fields. See `./Schema/ext.ts`
27
+ * file-level note.
28
+ */
29
+ withConstructorDefault: S.withConstructorDefault(Effect.sync(make))(s)
11
30
  });
12
31
  })
13
32
  .pipe(withDefaultMake);
33
+ /**
34
+ * Branded `StringId` for user profiles.
35
+ *
36
+ * Exposes `.withConstructorDefault` (fresh id) — construction-only; not
37
+ * applied during decode. See `./Schema/ext.ts` for the full policy note.
38
+ */
14
39
  export const UserProfileId = brandedStringId();
15
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2lkcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFjLGlCQUFpQixFQUFFLFFBQVEsRUFBc0IsZUFBZSxFQUFFLE1BQU0sbUJBQW1CLENBQUE7QUFHakksT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLFlBQVksQ0FBQTtBQUM5QixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sWUFBWSxDQUFBO0FBT3BDLHVGQUF1RjtBQUN2RixNQUFNLENBQUMsTUFBTSxTQUFTLEdBQUcsT0FBTyxDQUM5QixNQUFNO0tBQ0gsTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsaUJBQWlCLENBQU8sRUFBRSxpQkFBZ0UsQ0FBQyxFQUNuSCxDQUFDLENBQUMsRUFBRSxFQUFFO0lBQ0osTUFBTSxJQUFJLEdBQUcsUUFBUSxDQUFDLElBQStCLENBQUE7SUFDckQsT0FBTyxDQUFDO1FBQ04sSUFBSTtRQUNKLFdBQVcsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztLQUNwRCxDQUFDLENBQUE7QUFDSixDQUFDLENBQ0Y7S0FDRSxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUE7QUFJeEIsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUFHLGVBQWUsRUFBaUIsQ0FBQSJ9
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2lkcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFjLGlCQUFpQixFQUFFLFFBQVEsRUFBc0IsZUFBZSxFQUFFLE1BQU0sbUJBQW1CLENBQUE7QUFFakksT0FBTyxLQUFLLE1BQU0sTUFBTSxlQUFlLENBQUE7QUFFdkMsT0FBTyxLQUFLLENBQUMsTUFBTSxhQUFhLENBQUE7QUFDaEMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFlBQVksQ0FBQTtBQU9wQzs7Ozs7Ozs7O0dBU0c7QUFDSCxNQUFNLENBQUMsTUFBTSxTQUFTLEdBQUcsT0FBTyxDQUM5QixNQUFNO0tBQ0gsTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsaUJBQWlCLENBQU8sRUFBRSxpQkFBZ0UsQ0FBQyxFQUNuSCxDQUFDLENBQUMsRUFBRSxFQUFFO0lBR0osU0FBUyxJQUFJLENBQUMsS0FBYyxFQUFFLE9BQXVCO1FBQ25ELE1BQU0sRUFBRSxHQUFHLEtBQUssS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUE7UUFDaEYsT0FBTyxFQUF1QixDQUFBO0lBQ2hDLENBQUM7SUFDRCxPQUFPLENBQUM7UUFDTixJQUFJO1FBQ0o7Ozs7O1dBS0c7UUFDSCxzQkFBc0IsRUFBRSxDQUFDLENBQUMsc0JBQXNCLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQTJDLENBQUM7S0FDakgsQ0FBQyxDQUFBO0FBQ0osQ0FBQyxDQUNGO0tBQ0UsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFBO0FBSXhCOzs7OztHQUtHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUFHLGVBQWUsRUFBaUIsQ0FBQSJ9
package/dist/index.d.ts CHANGED
@@ -1,22 +1,21 @@
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";
10
+ export * as Model from "./Model.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 };
13
+ export * as Store from "./Store.js";
16
14
  export { type NonEmptyArray, type NonEmptyReadonlyArray } from "./Array.js";
17
15
  export * from "effect";
18
16
  export type * as Types from "./Types.js";
19
17
  export * as SecretURL from "./Config/SecretURL.js";
18
+ export * as RpcX from "./rpc.js";
20
19
  export * as S from "./Schema.js";
21
20
  export { copy } from "./utils.js";
22
21
  //# sourceMappingURL=index.d.ts.map
@@ -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,KAAK,MAAM,YAAY,CAAA;AACnC,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAA;AAC/C,OAAO,KAAK,GAAG,MAAM,UAAU,CAAA;AAC/B,OAAO,KAAK,KAAK,MAAM,YAAY,CAAA;AAEnC,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,20 @@
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";
11
+ export * as Model from "./Model.js";
8
12
  export * as NonEmptySet from "./NonEmptySet.js";
9
- export * as ServiceMap from "./ServiceMap.js";
10
13
  export * as Set from "./Set.js";
11
- export {
12
- /**
13
- * @deprecated use ServiceMap directly instead
14
- */
15
- ServiceMap as Context };
14
+ export * as Store from "./Store.js";
16
15
  export * from "effect";
17
16
  export * as SecretURL from "./Config/SecretURL.js";
17
+ export * as RpcX from "./rpc.js";
18
18
  export * as S from "./Schema.js";
19
19
  export { copy } from "./utils.js";
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxjQUFjLENBQUE7QUFFckIsT0FBTyxLQUFLLFVBQVUsTUFBTSxpQkFBaUIsQ0FBQTtBQUU3QyxPQUFPLEtBQUssR0FBRyxNQUFNLGVBQWUsQ0FBQTtBQUNwQyxPQUFPLEtBQUssS0FBSyxNQUFNLFlBQVksQ0FBQTtBQUVuQyxPQUFPLEtBQUssS0FBSyxNQUFNLFlBQVksQ0FBQTtBQUNuQyxPQUFPLEtBQUssTUFBTSxNQUFNLGFBQWEsQ0FBQTtBQUNyQyxPQUFPLEtBQUssS0FBSyxNQUFNLFlBQVksQ0FBQTtBQUNuQyxPQUFPLEtBQUssV0FBVyxNQUFNLGtCQUFrQixDQUFBO0FBQy9DLE9BQU8sS0FBSyxVQUFVLE1BQU0saUJBQWlCLENBQUE7QUFDN0MsT0FBTyxLQUFLLEdBQUcsTUFBTSxVQUFVLENBQUE7QUFFL0IsT0FBTztBQUNMOztHQUVHO0FBQ0gsVUFBVSxJQUFJLE9BQU8sRUFDdEIsQ0FBQTtBQUlELGNBQWMsUUFBUSxDQUFBO0FBSXRCLE9BQU8sS0FBSyxTQUFTLE1BQU0sdUJBQXVCLENBQUE7QUFDbEQsT0FBTyxLQUFLLENBQUMsTUFBTSxhQUFhLENBQUE7QUFDaEMsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLFlBQVksQ0FBQSJ9
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsdURBQXVEO0FBQ3ZELE9BQU8sY0FBYyxDQUFBO0FBRXJCLE9BQU8sS0FBSyxHQUFHLE1BQU0sZUFBZSxDQUFBO0FBQ3BDLE9BQU8sS0FBSyxLQUFLLE1BQU0sWUFBWSxDQUFBO0FBRW5DLE9BQU8sS0FBSyxLQUFLLE1BQU0sWUFBWSxDQUFBO0FBQ25DLE9BQU8sS0FBSyxNQUFNLE1BQU0sYUFBYSxDQUFBO0FBQ3JDLE9BQU8sS0FBSyxjQUFjLE1BQU0scUJBQXFCLENBQUE7QUFDckQsT0FBTyxLQUFLLE9BQU8sTUFBTSxjQUFjLENBQUE7QUFDdkMsT0FBTyxLQUFLLE1BQU0sTUFBTSxhQUFhLENBQUE7QUFDckMsT0FBTyxLQUFLLEtBQUssTUFBTSxZQUFZLENBQUE7QUFDbkMsT0FBTyxLQUFLLEtBQUssTUFBTSxZQUFZLENBQUE7QUFDbkMsT0FBTyxLQUFLLFdBQVcsTUFBTSxrQkFBa0IsQ0FBQTtBQUMvQyxPQUFPLEtBQUssR0FBRyxNQUFNLFVBQVUsQ0FBQTtBQUMvQixPQUFPLEtBQUssS0FBSyxNQUFNLFlBQVksQ0FBQTtBQUluQyxjQUFjLFFBQVEsQ0FBQTtBQUl0QixPQUFPLEtBQUssU0FBUyxNQUFNLHVCQUF1QixDQUFBO0FBQ2xELE9BQU8sS0FBSyxJQUFJLE1BQU0sVUFBVSxDQUFBO0FBQ2hDLE9BQU8sS0FBSyxDQUFDLE1BQU0sYUFBYSxDQUFBO0FBQ2hDLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxZQUFZLENBQUEifQ==
@@ -1,32 +1,38 @@
1
- import { ServiceMap } from "effect-app";
2
- import { RpcX } from "./rpc.js";
3
- declare const DevMode_base: ServiceMap.Reference<boolean>;
1
+ import * as Context from "effect-app/Context";
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
  }>;
28
28
  export declare class DevModeMiddleware extends DevModeMiddleware_base {
29
29
  }
30
+ /**
31
+ * Generic middlewares attached by `makeRouter` to every request.
32
+ *
33
+ * Invalidation key wrap/unwrap is handled by the routing layer (server) and the
34
+ * api client factory (client) directly — there is no middleware tag for it.
35
+ */
30
36
  export declare const DefaultGenericMiddlewares: readonly [typeof RequestCacheMiddleware, typeof ConfigureInterruptibilityMiddleware, typeof LoggerMiddleware, typeof DevModeMiddleware];
31
37
  export {};
32
38
  //# sourceMappingURL=middleware.d.ts.map
@@ -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,KAAK,OAAO,MAAM,oBAAoB,CAAA;AAC7C,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;;;;;GAKG;AACH,eAAO,MAAM,yBAAyB,yIAK5B,CAAA"}
@@ -1,20 +1,26 @@
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 * as Context from "effect-app/Context";
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
+ /**
15
+ * Generic middlewares attached by `makeRouter` to every request.
16
+ *
17
+ * Invalidation key wrap/unwrap is handled by the routing layer (server) and the
18
+ * api client factory (client) directly — there is no middleware tag for it.
19
+ */
14
20
  export const DefaultGenericMiddlewares = [
15
21
  RequestCacheMiddleware,
16
22
  ConfigureInterruptibilityMiddleware,
17
23
  LoggerMiddleware,
18
24
  DevModeMiddleware
19
25
  ];
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlkZGxld2FyZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9taWRkbGV3YXJlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHVEQUF1RDtBQUN2RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sWUFBWSxDQUFBO0FBQ3ZDLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxVQUFVLENBQUE7QUFFL0IsTUFBTSxPQUFPLE9BQVEsU0FBUSxVQUFVLENBQUMsU0FBUyxDQUFDLFNBQVMsRUFBRSxFQUFFLFlBQVksRUFBRSxHQUFHLEVBQUUsQ0FBQyxLQUFLLEVBQUUsQ0FBQztDQUFHO0FBRTlGLE1BQU0sT0FBTyxzQkFDWCxTQUFRLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxFQUEwQixDQUFDLHdCQUF3QixDQUFDO0NBQ2xGO0FBRUYsTUFBTSxPQUFPLG1DQUNYLFNBQVEsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLEVBQXVDLENBQUMscUNBQXFDLENBQUM7Q0FDNUc7QUFFRixNQUFNLE9BQU8sZ0JBQWlCLFNBQVEsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLEVBQW9CLENBQUMsa0JBQWtCLENBQUM7Q0FBRztBQUV2RyxNQUFNLE9BQU8saUJBQWtCLFNBQVEsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLEVBQXFCLENBQUMsbUJBQW1CLENBQUM7Q0FBRztBQUUxRyxNQUFNLENBQUMsTUFBTSx5QkFBeUIsR0FBRztJQUN2QyxzQkFBc0I7SUFDdEIsbUNBQW1DO0lBQ25DLGdCQUFnQjtJQUNoQixpQkFBaUI7Q0FDVCxDQUFBIn0=
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlkZGxld2FyZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9taWRkbGV3YXJlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHVEQUF1RDtBQUN2RCxPQUFPLEtBQUssT0FBTyxNQUFNLG9CQUFvQixDQUFBO0FBQzdDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxVQUFVLENBQUE7QUFFeEMsTUFBTSxPQUFPLE9BQVEsU0FBUSxPQUFPLENBQUMsU0FBUyxDQUFDLFNBQVMsRUFBRSxFQUFFLFlBQVksRUFBRSxHQUFHLEVBQUUsQ0FBQyxLQUFLLEVBQUUsQ0FBQztDQUFHO0FBRTNGLE1BQU0sT0FBTyxzQkFBdUIsU0FBUSxhQUFhLENBQUMsR0FBRyxFQUEwQixDQUFDLHdCQUF3QixDQUFDO0NBQUc7QUFFcEgsTUFBTSxPQUFPLG1DQUNYLFNBQVEsYUFBYSxDQUFDLEdBQUcsRUFBdUMsQ0FBQyxxQ0FBcUMsQ0FBQztDQUN2RztBQUVGLE1BQU0sT0FBTyxnQkFBaUIsU0FBUSxhQUFhLENBQUMsR0FBRyxFQUFvQixDQUFDLGtCQUFrQixDQUFDO0NBQUc7QUFFbEcsTUFBTSxPQUFPLGlCQUFrQixTQUFRLGFBQWEsQ0FBQyxHQUFHLEVBQXFCLENBQUMsbUJBQW1CLENBQUM7Q0FBRztBQUVyRzs7Ozs7R0FLRztBQUNILE1BQU0sQ0FBQyxNQUFNLHlCQUF5QixHQUFHO0lBQ3ZDLHNCQUFzQjtJQUN0QixtQ0FBbUM7SUFDbkMsZ0JBQWdCO0lBQ2hCLGlCQUFpQjtDQUNULENBQUEifQ==