effect-app 4.0.0-beta.98 → 4.0.0

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 (371) hide show
  1. package/CHANGELOG.md +2030 -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 +2 -2
  6. package/dist/Chunk.d.ts.map +1 -1
  7. package/dist/Config/SecretURL.d.ts +3 -1
  8. package/dist/Config/SecretURL.d.ts.map +1 -1
  9. package/dist/Config/SecretURL.js +3 -6
  10. package/dist/Config/internal/configSecretURL.d.ts.map +1 -1
  11. package/dist/Config/internal/configSecretURL.js +2 -2
  12. package/dist/Config.d.ts +0 -5
  13. package/dist/Config.d.ts.map +1 -1
  14. package/dist/Config.js +7 -5
  15. package/dist/ConfigProvider.d.ts +0 -37
  16. package/dist/ConfigProvider.d.ts.map +1 -1
  17. package/dist/ConfigProvider.js +5 -41
  18. package/dist/Context.d.ts +6 -4
  19. package/dist/Context.d.ts.map +1 -1
  20. package/dist/Context.js +4 -3
  21. package/dist/DataDependencies.d.ts +136 -0
  22. package/dist/DataDependencies.d.ts.map +1 -0
  23. package/dist/DataDependencies.js +112 -0
  24. package/dist/Effect.d.ts +3 -3
  25. package/dist/Effect.d.ts.map +1 -1
  26. package/dist/Effect.js +6 -9
  27. package/dist/Emailer.d.ts +51 -0
  28. package/dist/Emailer.d.ts.map +1 -0
  29. package/dist/Emailer.js +7 -0
  30. package/dist/Function.d.ts.map +1 -1
  31. package/dist/Layer.d.ts +6 -3
  32. package/dist/Layer.d.ts.map +1 -1
  33. package/dist/Layer.js +3 -2
  34. package/dist/Model/Repository/Registry.d.ts +22 -0
  35. package/dist/Model/Repository/Registry.d.ts.map +1 -0
  36. package/dist/Model/Repository/Registry.js +18 -0
  37. package/dist/Model/Repository/dependency.d.ts +6 -0
  38. package/dist/Model/Repository/dependency.d.ts.map +1 -0
  39. package/dist/Model/Repository/dependency.js +29 -0
  40. package/dist/Model/Repository/ext.d.ts +60 -0
  41. package/dist/Model/Repository/ext.d.ts.map +1 -0
  42. package/dist/Model/Repository/ext.js +124 -0
  43. package/dist/Model/Repository/internal/internal.d.ts +68 -0
  44. package/dist/Model/Repository/internal/internal.d.ts.map +1 -0
  45. package/dist/Model/Repository/internal/internal.js +611 -0
  46. package/dist/Model/Repository/legacy.d.ts +21 -0
  47. package/dist/Model/Repository/legacy.d.ts.map +1 -0
  48. package/dist/Model/Repository/legacy.js +2 -0
  49. package/dist/Model/Repository/makeRepo.d.ts +71 -0
  50. package/dist/Model/Repository/makeRepo.d.ts.map +1 -0
  51. package/dist/Model/Repository/makeRepo.js +30 -0
  52. package/dist/Model/Repository/service.d.ts +121 -0
  53. package/dist/Model/Repository/service.d.ts.map +1 -0
  54. package/dist/Model/Repository/service.js +2 -0
  55. package/dist/Model/Repository/validation.d.ts +72 -0
  56. package/dist/Model/Repository/validation.d.ts.map +1 -0
  57. package/dist/Model/Repository/validation.js +39 -0
  58. package/dist/Model/Repository.d.ts +8 -0
  59. package/dist/Model/Repository.d.ts.map +1 -0
  60. package/dist/Model/Repository.js +8 -0
  61. package/dist/Model/dsl.d.ts +33 -0
  62. package/dist/Model/dsl.d.ts.map +1 -0
  63. package/dist/Model/dsl.js +43 -0
  64. package/dist/Model/filter/filterApi.d.ts +30 -0
  65. package/dist/Model/filter/filterApi.d.ts.map +1 -0
  66. package/dist/Model/filter/filterApi.js +2 -0
  67. package/dist/Model/filter/types/errors.d.ts +29 -0
  68. package/dist/Model/filter/types/errors.d.ts.map +1 -0
  69. package/dist/Model/filter/types/errors.js +2 -0
  70. package/dist/Model/filter/types/fields.d.ts +15 -0
  71. package/dist/Model/filter/types/fields.d.ts.map +1 -0
  72. package/dist/Model/filter/types/fields.js +2 -0
  73. package/dist/Model/filter/types/path/common.d.ts +316 -0
  74. package/dist/Model/filter/types/path/common.d.ts.map +1 -0
  75. package/dist/Model/filter/types/path/common.js +2 -0
  76. package/dist/Model/filter/types/path/eager.d.ts +94 -0
  77. package/dist/Model/filter/types/path/eager.d.ts.map +1 -0
  78. package/dist/Model/filter/types/path/eager.js +36 -0
  79. package/dist/Model/filter/types/path/index.d.ts +4 -0
  80. package/dist/Model/filter/types/path/index.d.ts.map +1 -0
  81. package/dist/Model/filter/types/path/index.js +3 -0
  82. package/dist/Model/filter/types/utils.d.ts +79 -0
  83. package/dist/Model/filter/types/utils.d.ts.map +1 -0
  84. package/dist/Model/filter/types/utils.js +2 -0
  85. package/dist/Model/filter/types/validator.d.ts +30 -0
  86. package/dist/Model/filter/types/validator.d.ts.map +1 -0
  87. package/dist/Model/filter/types/validator.js +2 -0
  88. package/dist/Model/filter/types.d.ts +5 -0
  89. package/dist/Model/filter/types.d.ts.map +1 -0
  90. package/dist/Model/filter/types.js +7 -0
  91. package/dist/Model/query/dsl.d.ts +630 -0
  92. package/dist/Model/query/dsl.d.ts.map +1 -0
  93. package/dist/Model/query/dsl.js +376 -0
  94. package/dist/Model/query/new-kid-interpreter.d.ts +132 -0
  95. package/dist/Model/query/new-kid-interpreter.d.ts.map +1 -0
  96. package/dist/Model/query/new-kid-interpreter.js +370 -0
  97. package/dist/Model/query.d.ts +15 -0
  98. package/dist/Model/query.d.ts.map +1 -0
  99. package/dist/Model/query.js +3 -0
  100. package/dist/Model.d.ts +6 -0
  101. package/dist/Model.d.ts.map +1 -0
  102. package/dist/Model.js +6 -0
  103. package/dist/NonEmptySet.d.ts +3 -1
  104. package/dist/NonEmptySet.d.ts.map +1 -1
  105. package/dist/NonEmptySet.js +2 -2
  106. package/dist/Option.d.ts +1 -0
  107. package/dist/Option.d.ts.map +1 -1
  108. package/dist/Option.js +3 -1
  109. package/dist/Pure.d.ts +5 -3
  110. package/dist/Pure.d.ts.map +1 -1
  111. package/dist/Pure.js +5 -2
  112. package/dist/QueueMaker.d.ts +11 -0
  113. package/dist/QueueMaker.d.ts.map +1 -0
  114. package/dist/QueueMaker.js +11 -0
  115. package/dist/RequestContext.d.ts +87 -0
  116. package/dist/RequestContext.d.ts.map +1 -0
  117. package/dist/RequestContext.js +45 -0
  118. package/dist/RequestScopedDependencies.d.ts +21 -0
  119. package/dist/RequestScopedDependencies.d.ts.map +1 -0
  120. package/dist/RequestScopedDependencies.js +16 -0
  121. package/dist/Schema/Class.d.ts +163 -16
  122. package/dist/Schema/Class.d.ts.map +1 -1
  123. package/dist/Schema/Class.js +193 -21
  124. package/dist/Schema/FastCheck.d.ts.map +1 -1
  125. package/dist/Schema/SchemaParser.d.ts +5 -0
  126. package/dist/Schema/SchemaParser.d.ts.map +1 -0
  127. package/dist/Schema/SchemaParser.js +6 -0
  128. package/dist/Schema/SpecialJsonSchema.d.ts +15 -2
  129. package/dist/Schema/SpecialJsonSchema.d.ts.map +1 -1
  130. package/dist/Schema/SpecialJsonSchema.js +70 -12
  131. package/dist/Schema/SpecialOpenApi.d.ts +1 -1
  132. package/dist/Schema/SpecialOpenApi.js +3 -3
  133. package/dist/Schema/brand.d.ts +5 -5
  134. package/dist/Schema/brand.d.ts.map +1 -1
  135. package/dist/Schema/brand.js +6 -4
  136. package/dist/Schema/email.d.ts.map +1 -1
  137. package/dist/Schema/email.js +8 -5
  138. package/dist/Schema/ext.d.ts +297 -72
  139. package/dist/Schema/ext.d.ts.map +1 -1
  140. package/dist/Schema/ext.js +331 -67
  141. package/dist/Schema/moreStrings.d.ts +82 -48
  142. package/dist/Schema/moreStrings.d.ts.map +1 -1
  143. package/dist/Schema/moreStrings.js +85 -51
  144. package/dist/Schema/numbers.d.ts +33 -21
  145. package/dist/Schema/numbers.d.ts.map +1 -1
  146. package/dist/Schema/numbers.js +64 -12
  147. package/dist/Schema/phoneNumber.d.ts.map +1 -1
  148. package/dist/Schema/phoneNumber.js +6 -6
  149. package/dist/Schema/schema.d.ts +1 -1
  150. package/dist/Schema/schema.d.ts.map +1 -1
  151. package/dist/Schema/schema.js +2 -2
  152. package/dist/Schema/strings.d.ts +18 -4
  153. package/dist/Schema/strings.d.ts.map +1 -1
  154. package/dist/Schema/strings.js +1 -5
  155. package/dist/Schema.d.ts +223 -6
  156. package/dist/Schema.d.ts.map +1 -1
  157. package/dist/Schema.js +189 -23
  158. package/dist/SchemaAST.d.ts +2 -0
  159. package/dist/SchemaAST.d.ts.map +1 -0
  160. package/dist/SchemaAST.js +2 -0
  161. package/dist/Set.d.ts +4 -1
  162. package/dist/Set.d.ts.map +1 -1
  163. package/dist/Set.js +3 -2
  164. package/dist/Store.d.ts +215 -0
  165. package/dist/Store.d.ts.map +1 -0
  166. package/dist/Store.js +113 -0
  167. package/dist/_ext/Array.d.ts +1 -1
  168. package/dist/_ext/Array.d.ts.map +1 -1
  169. package/dist/_ext/Array.js +4 -2
  170. package/dist/_ext/misc.d.ts +4 -1
  171. package/dist/_ext/misc.d.ts.map +1 -1
  172. package/dist/_ext/misc.js +4 -2
  173. package/dist/_ext/ord.ext.d.ts +2 -1
  174. package/dist/_ext/ord.ext.d.ts.map +1 -1
  175. package/dist/_ext/ord.ext.js +2 -2
  176. package/dist/builtin.d.ts +2 -14
  177. package/dist/builtin.d.ts.map +1 -1
  178. package/dist/builtin.js +1 -1
  179. package/dist/client/InvalidationKeys.d.ts +30 -0
  180. package/dist/client/InvalidationKeys.d.ts.map +1 -0
  181. package/dist/client/InvalidationKeys.js +37 -0
  182. package/dist/client/apiClientFactory.d.ts +13 -8
  183. package/dist/client/apiClientFactory.d.ts.map +1 -1
  184. package/dist/client/apiClientFactory.js +148 -29
  185. package/dist/client/clientFor.d.ts +48 -13
  186. package/dist/client/clientFor.d.ts.map +1 -1
  187. package/dist/client/clientFor.js +9 -1
  188. package/dist/client/errors.d.ts +74 -28
  189. package/dist/client/errors.d.ts.map +1 -1
  190. package/dist/client/errors.js +41 -10
  191. package/dist/client/makeClient.d.ts +487 -32
  192. package/dist/client/makeClient.d.ts.map +1 -1
  193. package/dist/client/makeClient.js +47 -21
  194. package/dist/client.d.ts +2 -0
  195. package/dist/client.d.ts.map +1 -1
  196. package/dist/client.js +3 -1
  197. package/dist/faker.d.ts.map +1 -1
  198. package/dist/http/Request.d.ts +2 -2
  199. package/dist/http/Request.d.ts.map +1 -1
  200. package/dist/http/Request.js +2 -2
  201. package/dist/http/internal/lib.d.ts +12 -12
  202. package/dist/http/internal/lib.d.ts.map +1 -1
  203. package/dist/http/internal/lib.js +13 -13
  204. package/dist/ids.d.ts +32 -14
  205. package/dist/ids.d.ts.map +1 -1
  206. package/dist/ids.js +38 -7
  207. package/dist/index.d.ts +3 -0
  208. package/dist/index.d.ts.map +1 -1
  209. package/dist/index.js +5 -1
  210. package/dist/middleware.d.ts +12 -6
  211. package/dist/middleware.d.ts.map +1 -1
  212. package/dist/middleware.js +13 -7
  213. package/dist/rpc/Invalidation.d.ts +1124 -0
  214. package/dist/rpc/Invalidation.d.ts.map +1 -0
  215. package/dist/rpc/Invalidation.js +178 -0
  216. package/dist/rpc/MiddlewareMaker.d.ts +10 -7
  217. package/dist/rpc/MiddlewareMaker.d.ts.map +1 -1
  218. package/dist/rpc/MiddlewareMaker.js +57 -37
  219. package/dist/rpc/RpcContextMap.d.ts +2 -2
  220. package/dist/rpc/RpcContextMap.d.ts.map +1 -1
  221. package/dist/rpc/RpcMiddleware.d.ts +13 -10
  222. package/dist/rpc/RpcMiddleware.d.ts.map +1 -1
  223. package/dist/rpc/RpcMiddleware.js +2 -2
  224. package/dist/rpc.d.ts +1 -1
  225. package/dist/rpc.d.ts.map +1 -1
  226. package/dist/rpc.js +2 -2
  227. package/dist/runtime.d.ts +19 -0
  228. package/dist/runtime.d.ts.map +1 -0
  229. package/dist/runtime.js +40 -0
  230. package/dist/setupRequest.d.ts +20 -0
  231. package/dist/setupRequest.d.ts.map +1 -0
  232. package/dist/setupRequest.js +72 -0
  233. package/dist/toast.d.ts +51 -0
  234. package/dist/toast.d.ts.map +1 -0
  235. package/dist/toast.js +34 -0
  236. package/dist/transform.d.ts +1 -1
  237. package/dist/transform.d.ts.map +1 -1
  238. package/dist/transform.js +4 -5
  239. package/dist/utils/effectify.d.ts +1 -1
  240. package/dist/utils/effectify.d.ts.map +1 -1
  241. package/dist/utils/effectify.js +2 -2
  242. package/dist/utils/extend.d.ts +6 -1
  243. package/dist/utils/extend.d.ts.map +1 -1
  244. package/dist/utils/extend.js +24 -6
  245. package/dist/utils/gen.d.ts +4 -4
  246. package/dist/utils/gen.d.ts.map +1 -1
  247. package/dist/utils/logLevel.d.ts +2 -2
  248. package/dist/utils/logLevel.d.ts.map +1 -1
  249. package/dist/utils/logger.d.ts +2 -1
  250. package/dist/utils/logger.d.ts.map +1 -1
  251. package/dist/utils/logger.js +2 -2
  252. package/dist/utils.d.ts +34 -39
  253. package/dist/utils.d.ts.map +1 -1
  254. package/dist/utils.js +33 -37
  255. package/dist/validation/validators.d.ts.map +1 -1
  256. package/dist/validation.d.ts.map +1 -1
  257. package/dist/withToast.d.ts +30 -0
  258. package/dist/withToast.d.ts.map +1 -0
  259. package/dist/withToast.js +64 -0
  260. package/package.json +26 -266
  261. package/src/Array.ts +5 -5
  262. package/src/Chunk.ts +3 -3
  263. package/src/Config/SecretURL.ts +6 -3
  264. package/src/Config/internal/configSecretURL.ts +2 -2
  265. package/src/Config.ts +6 -13
  266. package/src/ConfigProvider.ts +4 -47
  267. package/src/Context.ts +9 -8
  268. package/src/DataDependencies.ts +171 -0
  269. package/src/Effect.ts +9 -12
  270. package/src/Emailer.ts +51 -0
  271. package/src/Inputify.type.ts +1 -1
  272. package/src/Layer.ts +8 -5
  273. package/src/Model/Repository/Registry.ts +35 -0
  274. package/src/Model/Repository/dependency.ts +32 -0
  275. package/src/Model/Repository/ext.ts +374 -0
  276. package/src/Model/Repository/internal/internal.ts +988 -0
  277. package/src/Model/Repository/legacy.ts +29 -0
  278. package/src/Model/Repository/makeRepo.ts +168 -0
  279. package/src/Model/Repository/service.ts +676 -0
  280. package/src/Model/Repository/validation.ts +38 -0
  281. package/src/Model/Repository.ts +7 -0
  282. package/src/Model/dsl.ts +129 -0
  283. package/src/Model/filter/filterApi.ts +78 -0
  284. package/src/Model/filter/types/errors.ts +47 -0
  285. package/src/Model/filter/types/fields.ts +50 -0
  286. package/src/Model/filter/types/path/common.ts +404 -0
  287. package/src/Model/filter/types/path/eager.ts +329 -0
  288. package/src/Model/filter/types/path/index.ts +4 -0
  289. package/src/Model/filter/types/utils.ts +128 -0
  290. package/src/Model/filter/types/validator.ts +46 -0
  291. package/src/Model/filter/types.ts +6 -0
  292. package/src/Model/query/dsl.ts +3092 -0
  293. package/src/Model/query/new-kid-interpreter.ts +532 -0
  294. package/src/Model/query.ts +13 -0
  295. package/src/Model.ts +5 -0
  296. package/src/NonEmptySet.ts +6 -4
  297. package/src/Option.ts +2 -0
  298. package/src/Pure.ts +6 -3
  299. package/src/QueueMaker.ts +11 -0
  300. package/src/RequestContext.ts +48 -0
  301. package/src/RequestScopedDependencies.ts +45 -0
  302. package/src/Schema/Class.ts +550 -56
  303. package/src/Schema/SchemaParser.ts +12 -0
  304. package/src/Schema/SpecialJsonSchema.ts +75 -7
  305. package/src/Schema/SpecialOpenApi.ts +5 -5
  306. package/src/Schema/brand.ts +27 -12
  307. package/src/Schema/email.ts +9 -7
  308. package/src/Schema/ext.ts +408 -91
  309. package/src/Schema/moreStrings.ts +213 -88
  310. package/src/Schema/numbers.ts +107 -29
  311. package/src/Schema/phoneNumber.ts +8 -9
  312. package/src/Schema/schema.ts +1 -1
  313. package/src/Schema/strings.ts +23 -14
  314. package/src/Schema.ts +403 -46
  315. package/src/SchemaAST.ts +1 -0
  316. package/src/Set.ts +6 -2
  317. package/src/Store.ts +325 -0
  318. package/src/_ext/Array.ts +4 -2
  319. package/src/_ext/misc.ts +4 -1
  320. package/src/_ext/ord.ext.ts +2 -1
  321. package/src/builtin-json.d.ts +24 -0
  322. package/src/builtin.ts +16 -21
  323. package/src/client/InvalidationKeys.ts +55 -0
  324. package/src/client/apiClientFactory.ts +291 -126
  325. package/src/client/clientFor.ts +101 -33
  326. package/src/client/errors.ts +66 -20
  327. package/src/client/makeClient.ts +519 -60
  328. package/src/client.ts +6 -4
  329. package/src/http/Request.ts +4 -4
  330. package/src/http/internal/lib.ts +12 -12
  331. package/src/http.ts +1 -1
  332. package/src/ids.ts +45 -8
  333. package/src/index.ts +20 -16
  334. package/src/middleware.ts +12 -8
  335. package/src/rpc/Invalidation.ts +278 -0
  336. package/src/rpc/MiddlewareMaker.ts +86 -79
  337. package/src/rpc/README.md +2 -2
  338. package/src/rpc/RpcContextMap.ts +4 -4
  339. package/src/rpc/RpcMiddleware.ts +18 -13
  340. package/src/rpc.ts +4 -4
  341. package/src/runtime.ts +57 -0
  342. package/src/setupRequest.ts +138 -0
  343. package/src/toast.ts +54 -0
  344. package/src/transform.ts +4 -4
  345. package/src/utils/effectify.ts +1 -1
  346. package/src/utils/extend.ts +24 -5
  347. package/src/utils/gen.ts +7 -7
  348. package/src/utils/logLevel.ts +1 -1
  349. package/src/utils/logger.ts +3 -2
  350. package/src/utils.ts +85 -158
  351. package/src/validation.ts +2 -2
  352. package/src/withToast.ts +133 -0
  353. package/test/dist/rpc.test.d.ts.map +1 -1
  354. package/test/dist/rpcMiddlewareContext.test.d.ts.map +1 -0
  355. package/test/moreStrings.test.ts +55 -10
  356. package/test/rpc.test.ts +28 -11
  357. package/test/rpcMiddlewareContext.test.ts +63 -0
  358. package/test/schema.test.ts +318 -55
  359. package/test/secretURL.test.ts +4 -1
  360. package/test/special.test.ts +663 -131
  361. package/test/utils.test.ts +5 -5
  362. package/tsconfig.base.json +6 -4
  363. package/tsconfig.json +9 -1
  364. package/tsconfig.src.json +29 -29
  365. package/tsconfig.test.json +2 -2
  366. package/dist/Operations.d.ts +0 -124
  367. package/dist/Operations.d.ts.map +0 -1
  368. package/dist/Operations.js +0 -29
  369. package/eslint.config.mjs +0 -26
  370. package/src/Operations.ts +0 -55
  371. package/tsconfig.json.bak +0 -12
@@ -1,44 +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
9
- .declare((_) => true)
10
- .pipe(S.decodeTo(S.Any, SchemaTransformation.transform({ decode: () => void 0, encode: () => void 0 })));
11
- export const makeRpcClient = (rcs, generalErrors) => {
12
- // TODO: filter errors based on config + take care of inversion
13
- const errorSchemas = Object.values(rcs.config).map((_) => _.error);
4
+ export const configureInvalidation = () => (invalidatesQueries) => ({ invalidatesQueries });
5
+ export const configureInvalidationCallback = () => (invalidatesQueries) => invalidatesQueries;
6
+ export const configureInvalidationResources = () => ({});
7
+ export const makeRpcClient = (middleware, generalErrors) => {
14
8
  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));
9
+ const failureSchema = merge(config?.error ? S.isSchema(config.error) ? config.error : S.Struct(config.error) : undefined, [generalErrors].filter(Boolean));
16
10
  const successSchema = config?.success
17
11
  ? S.isSchema(config.success)
18
- ? AST.isVoid(config.success.ast) ? ForceVoid : config.success
12
+ ? AST.isVoid(config.success.ast) ? S.Void : config.success
19
13
  : S.Struct(config.success)
20
- : ForceVoid;
21
- const RequestClass = S.TaggedClass()(tag, fields);
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));
22
20
  Object.assign(RequestClass, {
23
21
  _tag: tag,
24
22
  success: successSchema,
25
23
  error: failureSchema,
26
- config
24
+ ...(finalSchema !== undefined ? { final: finalSchema } : {}),
25
+ config: restConfig
27
26
  });
28
27
  return RequestClass;
29
28
  }
30
- function TaggedRequestFor(moduleName) {
29
+ function makeTaggedRequestWithMeta(moduleName, type) {
31
30
  function TaggedRequestWithMeta() {
32
- return ((tag, fields, config) => {
33
- const cls = makeRequestClass(tag, fields, config);
34
- Object.assign(cls, { id: `${moduleName}.${tag}`, moduleName });
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
+ });
35
42
  return cls;
36
43
  });
37
44
  }
38
- return Object.assign(TaggedRequestWithMeta, { moduleName });
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
+ };
39
65
  }
40
66
  return {
41
67
  TaggedRequestFor
42
68
  };
43
69
  };
44
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFrZUNsaWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jbGllbnQvbWFrZUNsaWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxRQUFRLENBQUE7QUFFN0MsT0FBTyxLQUFLLENBQUMsTUFBTSxjQUFjLENBQUE7QUFDakMsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGNBQWMsQ0FBQTtBQUVsQyxNQUFNLEtBQUssR0FBRyxDQUFDLENBQU0sRUFBRSxDQUFhLEVBQUUsRUFBRSxDQUN0QyxDQUFDLEtBQUssU0FBUyxJQUFJLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUE7QUFFMUc7O0dBRUc7QUFDSCxNQUFNLENBQUMsTUFBTSxTQUFTLEdBQUcsQ0FBQztLQUN2QixPQUFPLENBQUMsQ0FBQyxDQUFVLEVBQWdCLEVBQUUsQ0FBQyxJQUFJLENBQUM7S0FDM0MsSUFBSSxDQUNILENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxvQkFBb0IsQ0FBQyxTQUFTLENBQW1CLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQyxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FDcEgsQ0FBQTtBQXlCSCxNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUcsQ0FHM0IsR0FBc0IsRUFBRSxhQUE2QixFQUFFLEVBQUU7SUFjekQsK0RBQStEO0lBQy9ELE1BQU0sWUFBWSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFBO0lBRWxFLFNBQVMsZ0JBQWdCLENBQ3ZCLEdBQVEsRUFDUixNQUFjLEVBQ2QsTUFBVTtRQUVWLE1BQU0sYUFBYSxHQUFHLEtBQUssQ0FDekIsTUFBTSxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLEVBQzVGLENBQUMsR0FBRyxZQUFZLEVBQUUsYUFBYSxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUNqRCxDQUFBO1FBQ0QsTUFBTSxhQUFhLEdBQUcsTUFBTSxFQUFFLE9BQU87WUFDbkMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQztnQkFDMUIsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTztnQkFDN0QsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQztZQUM1QixDQUFDLENBQUMsU0FBUyxDQUFBO1FBRWIsTUFBTSxZQUFZLEdBQUcsQ0FBQyxDQUFDLFdBQVcsRUFBTyxDQUFDLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQTtRQUN0RCxNQUFNLENBQUMsTUFBTSxDQUFDLFlBQVksRUFBRTtZQUMxQixJQUFJLEVBQUUsR0FBRztZQUNULE9BQU8sRUFBRSxhQUFhO1lBQ3RCLEtBQUssRUFBRSxhQUFhO1lBQ3BCLE1BQU07U0FDUCxDQUFDLENBQUE7UUFFRixPQUFPLFlBQVksQ0FBQTtJQUNyQixDQUFDO0lBRUQsU0FBUyxnQkFBZ0IsQ0FBNEIsVUFBc0I7UUFDekUsU0FBUyxxQkFBcUI7WUFrRTVCLE9BQU8sQ0FBQyxDQUNOLEdBQVEsRUFDUixNQUFjLEVBQ2QsTUFBVSxFQUNWLEVBQUU7Z0JBQ0YsTUFBTSxHQUFHLEdBQUcsZ0JBQWdCLENBQUMsR0FBRyxFQUFFLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQTtnQkFDakQsTUFBTSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsRUFBRSxFQUFFLEVBQUUsR0FBRyxVQUFVLElBQUksR0FBRyxFQUFFLEVBQUUsVUFBVSxFQUFFLENBQUMsQ0FBQTtnQkFDOUQsT0FBTyxHQUFHLENBQUE7WUFDWixDQUFDLENBQVEsQ0FBQTtRQUNYLENBQUM7UUFDRCxPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQUMscUJBQXFCLEVBQUUsRUFBRSxVQUFVLEVBQVcsQ0FBQyxDQUFBO0lBQ3RFLENBQUM7SUFFRCxPQUFPO1FBQ0wsZ0JBQWdCO0tBQ2pCLENBQUE7QUFDSCxDQUFDLENBQUEifQ==
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"}
@@ -1,9 +1,9 @@
1
- import type { HttpClientResponse } from "effect/unstable/http/HttpClientResponse";
1
+ import type { HttpClientResponse } from "effect/http/HttpClientResponse";
2
2
  import * as Effect from "../Effect.js";
3
3
  import { HttpClient, HttpClientError } from "./internal/lib.js";
4
4
  export interface ResponseWithBody<A> extends Pick<HttpClientResponse, "headers" | "status" | "remoteAddress"> {
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":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAA;AAExE,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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVxdWVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9odHRwL1JlcXVlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxLQUFLLE1BQU0sTUFBTSxlQUFlLENBQUE7QUFDdkMsT0FBTyxLQUFLLE1BQU0sTUFBTSxjQUFjLENBQUE7QUFDdEMsT0FBTyxFQUFFLFVBQVUsRUFBRSxlQUFlLEVBQUUsaUJBQWlCLEVBQUUsV0FBVyxFQUFFLE1BQU0sbUJBQW1CLENBQUE7QUFNL0YseUVBQXlFO0FBQ3pFLDBGQUEwRjtBQUUxRixNQUFNLENBQUMsTUFBTSxvQkFBb0IsR0FBRyxDQUNsQyxRQUE0QixFQUM1QixFQUFFLENBQ0YsTUFBTSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUMsSUFBSSxFQUE2QixFQUFFLENBQUMsQ0FBQztJQUM5RCxJQUFJO0lBQ0osT0FBTyxFQUFFLFFBQVEsQ0FBQyxPQUFPO0lBQ3pCLE1BQU0sRUFBRSxRQUFRLENBQUMsTUFBTTtJQUN2QixhQUFhLEVBQUUsUUFBUSxDQUFDLGFBQWE7Q0FDdEMsQ0FBQyxDQUFDLENBQUE7QUFFTCxNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUcsQ0FBQyxNQUE2QixFQUFFLEVBQUUsQ0FDMUQsVUFBVTtLQUNQLFVBQVUsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLGlCQUFpQixDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQztLQUMxRCxJQUFJLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxPQUFPLEVBQUUsRUFBRSxDQUN4QyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQ3pCLE1BQU07S0FDRCxNQUFNLENBQ0wsV0FBVyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsT0FBTyxFQUFFLGNBQWMsQ0FBQyxFQUNqRCxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxrQkFBa0IsQ0FBQyxDQUN4QztJQUNILENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSTtJQUNiLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUNYLElBQUksZUFBZSxDQUFDLFdBQVcsQ0FBQztRQUM5QixPQUFPO1FBQ1AsUUFBUTtRQUNSLFdBQVcsRUFBRSxxQkFBcUI7Y0FDOUIsTUFBTSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsY0FBYyxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUMsV0FBVyxDQUFDO0tBQzNGLENBQUMsQ0FDSCxDQUFDLENBQ1AsQ0FBQyxDQUFBIn0=
@@ -1,13 +1,13 @@
1
- export * as HttpHeaders from "effect/unstable/http/Headers";
2
- export * as HttpBody from "effect/unstable/http/HttpBody";
3
- export * as HttpClient from "effect/unstable/http/HttpClient";
4
- export * as HttpClientError from "effect/unstable/http/HttpClientError";
5
- export * as HttpClientRequest from "effect/unstable/http/HttpClientRequest";
6
- export * as HttpClientResponse from "effect/unstable/http/HttpClientResponse";
7
- export * as HttpMiddleware from "effect/unstable/http/HttpMiddleware";
8
- export * as HttpRouter from "effect/unstable/http/HttpRouter";
9
- export * as HttpServer from "effect/unstable/http/HttpServer";
10
- export * as HttpServerError from "effect/unstable/http/HttpServerError";
11
- export * as HttpServerRequest from "effect/unstable/http/HttpServerRequest";
12
- export * as HttpServerResponse from "effect/unstable/http/HttpServerResponse";
1
+ export * as HttpHeaders from "effect/http/Headers";
2
+ export * as HttpBody from "effect/http/HttpBody";
3
+ export * as HttpClient from "effect/http/HttpClient";
4
+ export * as HttpClientError from "effect/http/HttpClientError";
5
+ export * as HttpClientRequest from "effect/http/HttpClientRequest";
6
+ export * as HttpClientResponse from "effect/http/HttpClientResponse";
7
+ export * as HttpMiddleware from "effect/http/HttpMiddleware";
8
+ export * as HttpRouter from "effect/http/HttpRouter";
9
+ export * as HttpServer from "effect/http/HttpServer";
10
+ export * as HttpServerError from "effect/http/HttpServerError";
11
+ export * as HttpServerRequest from "effect/http/HttpServerRequest";
12
+ export * as HttpServerResponse from "effect/http/HttpServerResponse";
13
13
  //# sourceMappingURL=lib.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"lib.d.ts","sourceRoot":"","sources":["../../../src/http/internal/lib.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,WAAW,MAAM,8BAA8B,CAAA;AAC3D,OAAO,KAAK,QAAQ,MAAM,+BAA+B,CAAA;AACzD,OAAO,KAAK,UAAU,MAAM,iCAAiC,CAAA;AAC7D,OAAO,KAAK,eAAe,MAAM,sCAAsC,CAAA;AACvE,OAAO,KAAK,iBAAiB,MAAM,wCAAwC,CAAA;AAC3E,OAAO,KAAK,kBAAkB,MAAM,yCAAyC,CAAA;AAE7E,OAAO,KAAK,cAAc,MAAM,qCAAqC,CAAA;AACrE,OAAO,KAAK,UAAU,MAAM,iCAAiC,CAAA;AAC7D,OAAO,KAAK,UAAU,MAAM,iCAAiC,CAAA;AAC7D,OAAO,KAAK,eAAe,MAAM,sCAAsC,CAAA;AACvE,OAAO,KAAK,iBAAiB,MAAM,wCAAwC,CAAA;AAC3E,OAAO,KAAK,kBAAkB,MAAM,yCAAyC,CAAA"}
1
+ {"version":3,"file":"lib.d.ts","sourceRoot":"","sources":["../../../src/http/internal/lib.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,WAAW,MAAM,qBAAqB,CAAA;AAClD,OAAO,KAAK,QAAQ,MAAM,sBAAsB,CAAA;AAChD,OAAO,KAAK,UAAU,MAAM,wBAAwB,CAAA;AACpD,OAAO,KAAK,eAAe,MAAM,6BAA6B,CAAA;AAC9D,OAAO,KAAK,iBAAiB,MAAM,+BAA+B,CAAA;AAClE,OAAO,KAAK,kBAAkB,MAAM,gCAAgC,CAAA;AAEpE,OAAO,KAAK,cAAc,MAAM,4BAA4B,CAAA;AAC5D,OAAO,KAAK,UAAU,MAAM,wBAAwB,CAAA;AACpD,OAAO,KAAK,UAAU,MAAM,wBAAwB,CAAA;AACpD,OAAO,KAAK,eAAe,MAAM,6BAA6B,CAAA;AAC9D,OAAO,KAAK,iBAAiB,MAAM,+BAA+B,CAAA;AAClE,OAAO,KAAK,kBAAkB,MAAM,gCAAgC,CAAA"}
@@ -1,14 +1,14 @@
1
- export * as HttpHeaders from "effect/unstable/http/Headers";
2
- export * as HttpBody from "effect/unstable/http/HttpBody";
3
- export * as HttpClient from "effect/unstable/http/HttpClient";
4
- export * as HttpClientError from "effect/unstable/http/HttpClientError";
5
- export * as HttpClientRequest from "effect/unstable/http/HttpClientRequest";
6
- export * as HttpClientResponse from "effect/unstable/http/HttpClientResponse";
1
+ export * as HttpHeaders from "effect/http/Headers";
2
+ export * as HttpBody from "effect/http/HttpBody";
3
+ export * as HttpClient from "effect/http/HttpClient";
4
+ export * as HttpClientError from "effect/http/HttpClientError";
5
+ export * as HttpClientRequest from "effect/http/HttpClientRequest";
6
+ export * as HttpClientResponse from "effect/http/HttpClientResponse";
7
7
  // HttpLayerRouter removed in v4 — use HttpRouter instead
8
- export * as HttpMiddleware from "effect/unstable/http/HttpMiddleware";
9
- export * as HttpRouter from "effect/unstable/http/HttpRouter";
10
- export * as HttpServer from "effect/unstable/http/HttpServer";
11
- export * as HttpServerError from "effect/unstable/http/HttpServerError";
12
- export * as HttpServerRequest from "effect/unstable/http/HttpServerRequest";
13
- export * as HttpServerResponse from "effect/unstable/http/HttpServerResponse";
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGliLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2h0dHAvaW50ZXJuYWwvbGliLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxXQUFXLE1BQU0sOEJBQThCLENBQUE7QUFDM0QsT0FBTyxLQUFLLFFBQVEsTUFBTSwrQkFBK0IsQ0FBQTtBQUN6RCxPQUFPLEtBQUssVUFBVSxNQUFNLGlDQUFpQyxDQUFBO0FBQzdELE9BQU8sS0FBSyxlQUFlLE1BQU0sc0NBQXNDLENBQUE7QUFDdkUsT0FBTyxLQUFLLGlCQUFpQixNQUFNLHdDQUF3QyxDQUFBO0FBQzNFLE9BQU8sS0FBSyxrQkFBa0IsTUFBTSx5Q0FBeUMsQ0FBQTtBQUM3RSx5REFBeUQ7QUFDekQsT0FBTyxLQUFLLGNBQWMsTUFBTSxxQ0FBcUMsQ0FBQTtBQUNyRSxPQUFPLEtBQUssVUFBVSxNQUFNLGlDQUFpQyxDQUFBO0FBQzdELE9BQU8sS0FBSyxVQUFVLE1BQU0saUNBQWlDLENBQUE7QUFDN0QsT0FBTyxLQUFLLGVBQWUsTUFBTSxzQ0FBc0MsQ0FBQTtBQUN2RSxPQUFPLEtBQUssaUJBQWlCLE1BQU0sd0NBQXdDLENBQUE7QUFDM0UsT0FBTyxLQUFLLGtCQUFrQixNQUFNLHlDQUF5QyxDQUFBIn0=
8
+ export * as HttpMiddleware from "effect/http/HttpMiddleware";
9
+ export * as HttpRouter from "effect/http/HttpRouter";
10
+ export * as HttpServer from "effect/http/HttpServer";
11
+ export * as HttpServerError from "effect/http/HttpServerError";
12
+ export * as HttpServerRequest from "effect/http/HttpServerRequest";
13
+ export * as HttpServerResponse from "effect/http/HttpServerResponse";
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGliLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2h0dHAvaW50ZXJuYWwvbGliLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxXQUFXLE1BQU0scUJBQXFCLENBQUE7QUFDbEQsT0FBTyxLQUFLLFFBQVEsTUFBTSxzQkFBc0IsQ0FBQTtBQUNoRCxPQUFPLEtBQUssVUFBVSxNQUFNLHdCQUF3QixDQUFBO0FBQ3BELE9BQU8sS0FBSyxlQUFlLE1BQU0sNkJBQTZCLENBQUE7QUFDOUQsT0FBTyxLQUFLLGlCQUFpQixNQUFNLCtCQUErQixDQUFBO0FBQ2xFLE9BQU8sS0FBSyxrQkFBa0IsTUFBTSxnQ0FBZ0MsQ0FBQTtBQUNwRSx5REFBeUQ7QUFDekQsT0FBTyxLQUFLLGNBQWMsTUFBTSw0QkFBNEIsQ0FBQTtBQUM1RCxPQUFPLEtBQUssVUFBVSxNQUFNLHdCQUF3QixDQUFBO0FBQ3BELE9BQU8sS0FBSyxVQUFVLE1BQU0sd0JBQXdCLENBQUE7QUFDcEQsT0FBTyxLQUFLLGVBQWUsTUFBTSw2QkFBNkIsQ0FBQTtBQUM5RCxPQUFPLEtBQUssaUJBQWlCLE1BQU0sK0JBQStCLENBQUE7QUFDbEUsT0FBTyxLQUFLLGtCQUFrQixNQUFNLGdDQUFnQyxDQUFBIn0=
package/dist/ids.d.ts CHANGED
@@ -1,26 +1,44 @@
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
9
  export declare const RequestId: S.WithDefaults<Codec<NonEmptyString255, string, never, never> & {
10
- make: () => NonEmptyString255;
11
- withDefault: S.withConstructorDefault<S.Top & S.WithoutConstructorDefault>;
10
+ make: {
11
+ (): NonEmptyString255;
12
+ (input: string, options?: S.MakeOptions): NonEmptyString255;
13
+ };
14
+ /**
15
+ * Construction-only default: fresh `StringId`. Applied only when the
16
+ * field is omitted from `.make(...)` input. NOT applied during decode —
17
+ * cannot be used to JIT-migrate database fields. See `./Schema/ext.ts`
18
+ * file-level note.
19
+ */
20
+ withConstructorDefault: S.withConstructorDefault<S.Constraint & S.WithoutConstructorDefault>;
12
21
  }> & Codec<NonEmptyString255, string, never, never> & {
13
- make: () => NonEmptyString255;
14
- withDefault: S.withConstructorDefault<S.Top & S.WithoutConstructorDefault>;
22
+ make: {
23
+ (): NonEmptyString255;
24
+ (input: string, options?: S.MakeOptions): NonEmptyString255;
25
+ };
26
+ /**
27
+ * Construction-only default: fresh `StringId`. Applied only when the
28
+ * field is omitted from `.make(...)` input. NOT applied during decode —
29
+ * cannot be used to JIT-migrate database fields. See `./Schema/ext.ts`
30
+ * file-level note.
31
+ */
32
+ withConstructorDefault: S.withConstructorDefault<S.Constraint & S.WithoutConstructorDefault>;
15
33
  };
16
34
  export interface UserProfileIdBrand extends Simplify<B.Brand<"UserProfileId"> & StringIdBrand> {
17
35
  }
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>>;
36
+ export type UserProfileId = string & UserProfileIdBrand;
37
+ /**
38
+ * Branded `StringId` for user profiles.
39
+ *
40
+ * Exposes `.withConstructorDefault` (fresh id) — construction-only; not
41
+ * applied during decode. See `./Schema/ext.ts` for the full policy note.
42
+ */
43
+ export declare const UserProfileId: S.BrandedStringIdSchema<UserProfileId>;
26
44
  //# 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":"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;;;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;AAmBzC,eAAO,MAAM,SAAS;;YAOD,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,16 +1,47 @@
1
- import { Effect } from "effect";
2
1
  import { brandedStringId, NonEmptyString255, StringId, withDefaultMake } from "effect-app/Schema";
3
- import { S } from "./index.js";
2
+ import * as Effect from "effect/Effect";
3
+ import * as S from "./Schema.js";
4
4
  import { extendM } from "./utils.js";
5
- // 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
+ */
15
+ const requestIdSamples = S.makeFilter(() => undefined, {
16
+ arbitraryConstraint: {
17
+ minLength: 21,
18
+ maxLength: 21,
19
+ patterns: [{ source: "^[A-Za-z0-9_-]{21}$", flags: "" }]
20
+ }
21
+ });
6
22
  export const RequestId = extendM(Object
7
- .assign(Object.create(NonEmptyString255), NonEmptyString255), (s) => {
8
- const make = StringId.make;
23
+ .assign(Object.create(NonEmptyString255), NonEmptyString255.pipe(S.check(requestIdSamples))), (s) => {
24
+ function make(input, options) {
25
+ const id = input === undefined ? StringId.make() : StringId.make(input, options);
26
+ return id;
27
+ }
9
28
  return ({
10
29
  make,
11
- withDefault: S.withConstructorDefault(Effect.sync(make))(s)
30
+ /**
31
+ * Construction-only default: fresh `StringId`. Applied only when the
32
+ * field is omitted from `.make(...)` input. NOT applied during decode —
33
+ * cannot be used to JIT-migrate database fields. See `./Schema/ext.ts`
34
+ * file-level note.
35
+ */
36
+ withConstructorDefault: S.withConstructorDefault(Effect.sync(make))(s)
12
37
  });
13
38
  })
14
39
  .pipe(withDefaultMake);
40
+ /**
41
+ * Branded `StringId` for user profiles.
42
+ *
43
+ * Exposes `.withConstructorDefault` (fresh id) — construction-only; not
44
+ * applied during decode. See `./Schema/ext.ts` for the full policy note.
45
+ */
15
46
  export const UserProfileId = brandedStringId();
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2lkcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sUUFBUSxDQUFBO0FBQy9CLE9BQU8sRUFBRSxlQUFlLEVBQWMsaUJBQWlCLEVBQUUsUUFBUSxFQUFzQixlQUFlLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQTtBQUdqSSxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sWUFBWSxDQUFBO0FBQzlCLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFPcEMsdUZBQXVGO0FBQ3ZGLE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRyxPQUFPLENBQzlCLE1BQU07S0FDSCxNQUFNLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBTyxFQUFFLGlCQUFnRSxDQUFDLEVBQ25ILENBQUMsQ0FBQyxFQUFFLEVBQUU7SUFDSixNQUFNLElBQUksR0FBRyxRQUFRLENBQUMsSUFBK0IsQ0FBQTtJQUNyRCxPQUFPLENBQUM7UUFDTixJQUFJO1FBQ0osV0FBVyxFQUFFLENBQUMsQ0FBQyxzQkFBc0IsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBMkMsQ0FBQztLQUN0RyxDQUFDLENBQUE7QUFDSixDQUFDLENBQ0Y7S0FDRSxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUE7QUFJeEIsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUFHLGVBQWUsRUFBaUIsQ0FBQSJ9
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2lkcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFjLGlCQUFpQixFQUFFLFFBQVEsRUFBc0IsZUFBZSxFQUFFLE1BQU0sbUJBQW1CLENBQUE7QUFFakksT0FBTyxLQUFLLE1BQU0sTUFBTSxlQUFlLENBQUE7QUFFdkMsT0FBTyxLQUFLLENBQUMsTUFBTSxhQUFhLENBQUE7QUFDaEMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFlBQVksQ0FBQTtBQU9wQzs7Ozs7Ozs7O0dBU0c7QUFDSCxNQUFNLGdCQUFnQixHQUFHLENBQUMsQ0FBQyxVQUFVLENBQVMsR0FBRyxFQUFFLENBQUMsU0FBUyxFQUFFO0lBQzdELG1CQUFtQixFQUFFO1FBQ25CLFNBQVMsRUFBRSxFQUFFO1FBQ2IsU0FBUyxFQUFFLEVBQUU7UUFDYixRQUFRLEVBQUUsQ0FBQyxFQUFFLE1BQU0sRUFBRSxxQkFBcUIsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLENBQUM7S0FDekQ7Q0FDRixDQUFDLENBQUE7QUFFRixNQUFNLENBQUMsTUFBTSxTQUFTLEdBQUcsT0FBTyxDQUM5QixNQUFNO0tBQ0gsTUFBTSxDQUNMLE1BQU0sQ0FBQyxNQUFNLENBQUMsaUJBQWlCLENBQU8sRUFDdEMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLENBQUMsQ0FBZ0QsQ0FDakcsRUFDSCxDQUFDLENBQUMsRUFBRSxFQUFFO0lBR0osU0FBUyxJQUFJLENBQUMsS0FBYyxFQUFFLE9BQXVCO1FBQ25ELE1BQU0sRUFBRSxHQUFHLEtBQUssS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUE7UUFDaEYsT0FBTyxFQUFFLENBQUE7SUFDWCxDQUFDO0lBQ0QsT0FBTyxDQUFDO1FBQ04sSUFBSTtRQUNKOzs7OztXQUtHO1FBQ0gsc0JBQXNCLEVBQUUsQ0FBQyxDQUFDLHNCQUFzQixDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUEyQyxDQUFDO0tBQ2pILENBQUMsQ0FBQTtBQUNKLENBQUMsQ0FDRjtLQUNFLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQTtBQUl4Qjs7Ozs7R0FLRztBQUNILE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRyxlQUFlLEVBQWlCLENBQUEifQ==
package/dist/index.d.ts CHANGED
@@ -7,12 +7,15 @@ export * as ConfigProvider from "./ConfigProvider.js";
7
7
  export * as Context from "./Context.js";
8
8
  export * as Effect from "./Effect.js";
9
9
  export * as Layer from "./Layer.js";
10
+ export * as Model from "./Model.js";
10
11
  export * as NonEmptySet from "./NonEmptySet.js";
11
12
  export * as Set from "./Set.js";
13
+ export * as Store from "./Store.js";
12
14
  export { type NonEmptyArray, type NonEmptyReadonlyArray } from "./Array.js";
13
15
  export * from "effect";
14
16
  export type * as Types from "./Types.js";
15
17
  export * as SecretURL from "./Config/SecretURL.js";
18
+ export * as RpcX from "./rpc.js";
16
19
  export * as S from "./Schema.js";
17
20
  export { copy } from "./utils.js";
18
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,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,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,3 +1,4 @@
1
+ // eslint-disable-next-line import/no-unassigned-import
1
2
  import "./builtin.js";
2
3
  export * as Fnc from "./Function.js";
3
4
  export * as Utils from "./utils.js";
@@ -7,10 +8,13 @@ export * as ConfigProvider from "./ConfigProvider.js";
7
8
  export * as Context from "./Context.js";
8
9
  export * as Effect from "./Effect.js";
9
10
  export * as Layer from "./Layer.js";
11
+ export * as Model from "./Model.js";
10
12
  export * as NonEmptySet from "./NonEmptySet.js";
11
13
  export * as Set from "./Set.js";
14
+ export * as Store from "./Store.js";
12
15
  export * from "effect";
13
16
  export * as SecretURL from "./Config/SecretURL.js";
17
+ export * as RpcX from "./rpc.js";
14
18
  export * as S from "./Schema.js";
15
19
  export { copy } from "./utils.js";
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxjQUFjLENBQUE7QUFFckIsT0FBTyxLQUFLLEdBQUcsTUFBTSxlQUFlLENBQUE7QUFDcEMsT0FBTyxLQUFLLEtBQUssTUFBTSxZQUFZLENBQUE7QUFFbkMsT0FBTyxLQUFLLEtBQUssTUFBTSxZQUFZLENBQUE7QUFDbkMsT0FBTyxLQUFLLE1BQU0sTUFBTSxhQUFhLENBQUE7QUFDckMsT0FBTyxLQUFLLGNBQWMsTUFBTSxxQkFBcUIsQ0FBQTtBQUNyRCxPQUFPLEtBQUssT0FBTyxNQUFNLGNBQWMsQ0FBQTtBQUN2QyxPQUFPLEtBQUssTUFBTSxNQUFNLGFBQWEsQ0FBQTtBQUNyQyxPQUFPLEtBQUssS0FBSyxNQUFNLFlBQVksQ0FBQTtBQUNuQyxPQUFPLEtBQUssV0FBVyxNQUFNLGtCQUFrQixDQUFBO0FBQy9DLE9BQU8sS0FBSyxHQUFHLE1BQU0sVUFBVSxDQUFBO0FBSS9CLGNBQWMsUUFBUSxDQUFBO0FBSXRCLE9BQU8sS0FBSyxTQUFTLE1BQU0sdUJBQXVCLENBQUE7QUFDbEQsT0FBTyxLQUFLLENBQUMsTUFBTSxhQUFhLENBQUE7QUFDaEMsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLFlBQVksQ0FBQSJ9
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsdURBQXVEO0FBQ3ZELE9BQU8sY0FBYyxDQUFBO0FBRXJCLE9BQU8sS0FBSyxHQUFHLE1BQU0sZUFBZSxDQUFBO0FBQ3BDLE9BQU8sS0FBSyxLQUFLLE1BQU0sWUFBWSxDQUFBO0FBRW5DLE9BQU8sS0FBSyxLQUFLLE1BQU0sWUFBWSxDQUFBO0FBQ25DLE9BQU8sS0FBSyxNQUFNLE1BQU0sYUFBYSxDQUFBO0FBQ3JDLE9BQU8sS0FBSyxjQUFjLE1BQU0scUJBQXFCLENBQUE7QUFDckQsT0FBTyxLQUFLLE9BQU8sTUFBTSxjQUFjLENBQUE7QUFDdkMsT0FBTyxLQUFLLE1BQU0sTUFBTSxhQUFhLENBQUE7QUFDckMsT0FBTyxLQUFLLEtBQUssTUFBTSxZQUFZLENBQUE7QUFDbkMsT0FBTyxLQUFLLEtBQUssTUFBTSxZQUFZLENBQUE7QUFDbkMsT0FBTyxLQUFLLFdBQVcsTUFBTSxrQkFBa0IsQ0FBQTtBQUMvQyxPQUFPLEtBQUssR0FBRyxNQUFNLFVBQVUsQ0FBQTtBQUMvQixPQUFPLEtBQUssS0FBSyxNQUFNLFlBQVksQ0FBQTtBQUluQyxjQUFjLFFBQVEsQ0FBQTtBQUl0QixPQUFPLEtBQUssU0FBUyxNQUFNLHVCQUF1QixDQUFBO0FBQ2xELE9BQU8sS0FBSyxJQUFJLE1BQU0sVUFBVSxDQUFBO0FBQ2hDLE9BQU8sS0FBSyxDQUFDLE1BQU0sYUFBYSxDQUFBO0FBQ2hDLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxZQUFZLENBQUEifQ==
@@ -1,32 +1,38 @@
1
- import { Context } from "effect-app";
2
- import { RpcX } from "./rpc.js";
1
+ import * as Context from "effect-app/Context";
2
+ import { RpcMiddleware } from "./rpc.js";
3
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,OAAO,EAAE,MAAM,YAAY,CAAA;AACpC,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAA;;AAE/B,qBAAa,OAAQ,SAAQ,YAA2D;CAAG;;;;;AAE3F,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 { Context } from "effect-app";
3
- import { RpcX } from "./rpc.js";
2
+ import * as Context from "effect-app/Context";
3
+ import { RpcMiddleware } from "./rpc.js";
4
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlkZGxld2FyZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9taWRkbGV3YXJlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHVEQUF1RDtBQUN2RCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sWUFBWSxDQUFBO0FBQ3BDLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxVQUFVLENBQUE7QUFFL0IsTUFBTSxPQUFPLE9BQVEsU0FBUSxPQUFPLENBQUMsU0FBUyxDQUFDLFNBQVMsRUFBRSxFQUFFLFlBQVksRUFBRSxHQUFHLEVBQUUsQ0FBQyxLQUFLLEVBQUUsQ0FBQztDQUFHO0FBRTNGLE1BQU0sT0FBTyxzQkFDWCxTQUFRLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxFQUEwQixDQUFDLHdCQUF3QixDQUFDO0NBQ2xGO0FBRUYsTUFBTSxPQUFPLG1DQUNYLFNBQVEsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLEVBQXVDLENBQUMscUNBQXFDLENBQUM7Q0FDNUc7QUFFRixNQUFNLE9BQU8sZ0JBQWlCLFNBQVEsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLEVBQW9CLENBQUMsa0JBQWtCLENBQUM7Q0FBRztBQUV2RyxNQUFNLE9BQU8saUJBQWtCLFNBQVEsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLEVBQXFCLENBQUMsbUJBQW1CLENBQUM7Q0FBRztBQUUxRyxNQUFNLENBQUMsTUFBTSx5QkFBeUIsR0FBRztJQUN2QyxzQkFBc0I7SUFDdEIsbUNBQW1DO0lBQ25DLGdCQUFnQjtJQUNoQixpQkFBaUI7Q0FDVCxDQUFBIn0=
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlkZGxld2FyZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9taWRkbGV3YXJlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHVEQUF1RDtBQUN2RCxPQUFPLEtBQUssT0FBTyxNQUFNLG9CQUFvQixDQUFBO0FBQzdDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxVQUFVLENBQUE7QUFFeEMsTUFBTSxPQUFPLE9BQVEsU0FBUSxPQUFPLENBQUMsU0FBUyxDQUFDLFNBQVMsRUFBRSxFQUFFLFlBQVksRUFBRSxHQUFHLEVBQUUsQ0FBQyxLQUFLLEVBQUUsQ0FBQztDQUFHO0FBRTNGLE1BQU0sT0FBTyxzQkFBdUIsU0FBUSxhQUFhLENBQUMsR0FBRyxFQUEwQixDQUFDLHdCQUF3QixDQUFDO0NBQUc7QUFFcEgsTUFBTSxPQUFPLG1DQUNYLFNBQVEsYUFBYSxDQUFDLEdBQUcsRUFBdUMsQ0FBQyxxQ0FBcUMsQ0FBQztDQUN2RztBQUVGLE1BQU0sT0FBTyxnQkFBaUIsU0FBUSxhQUFhLENBQUMsR0FBRyxFQUFvQixDQUFDLGtCQUFrQixDQUFDO0NBQUc7QUFFbEcsTUFBTSxPQUFPLGlCQUFrQixTQUFRLGFBQWEsQ0FBQyxHQUFHLEVBQXFCLENBQUMsbUJBQW1CLENBQUM7Q0FBRztBQUVyRzs7Ozs7R0FLRztBQUNILE1BQU0sQ0FBQyxNQUFNLHlCQUF5QixHQUFHO0lBQ3ZDLHNCQUFzQjtJQUN0QixtQ0FBbUM7SUFDbkMsZ0JBQWdCO0lBQ2hCLGlCQUFpQjtDQUNULENBQUEifQ==