effect 4.0.0-beta.99 → 4.0.0-rc.108

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 (1835) hide show
  1. package/AGENTS.md +381 -0
  2. package/CLAUDE.md +381 -0
  3. package/README.md +14 -19
  4. package/ai-docs/README.md +44 -0
  5. package/ai-docs/package.json +36 -0
  6. package/ai-docs/src/01_effect/01_basics/01_effect-gen.ts +30 -0
  7. package/ai-docs/src/01_effect/01_basics/02_effect-fn.ts +39 -0
  8. package/ai-docs/src/01_effect/01_basics/10_creating-effects.ts +74 -0
  9. package/ai-docs/src/01_effect/01_basics/index.md +5 -0
  10. package/ai-docs/src/01_effect/02_schema/10_schema-basics.ts +43 -0
  11. package/ai-docs/src/01_effect/02_schema/index.md +7 -0
  12. package/ai-docs/src/01_effect/03_services/01_service.ts +45 -0
  13. package/ai-docs/src/01_effect/03_services/10_reference.ts +10 -0
  14. package/ai-docs/src/01_effect/03_services/20_layer-composition.ts +70 -0
  15. package/ai-docs/src/01_effect/03_services/20_layer-unwrap.ts +66 -0
  16. package/ai-docs/src/01_effect/03_services/index.md +5 -0
  17. package/ai-docs/src/01_effect/04_errors/01_error-handling.ts +30 -0
  18. package/ai-docs/src/01_effect/04_errors/10_catch-tags.ts +24 -0
  19. package/ai-docs/src/01_effect/04_errors/20_reason-errors.ts +64 -0
  20. package/ai-docs/src/01_effect/04_errors/index.md +1 -0
  21. package/ai-docs/src/01_effect/05_resources/10_acquire-release.ts +105 -0
  22. package/ai-docs/src/01_effect/05_resources/20_layer-side-effects.ts +31 -0
  23. package/ai-docs/src/01_effect/05_resources/30_layer-map.ts +86 -0
  24. package/ai-docs/src/01_effect/05_resources/index.md +3 -0
  25. package/ai-docs/src/01_effect/06_running/10_run-main.ts +30 -0
  26. package/ai-docs/src/01_effect/06_running/20_layer-launch.ts +27 -0
  27. package/ai-docs/src/01_effect/06_running/index.md +1 -0
  28. package/ai-docs/src/01_effect/07_pubsub/10_pubsub.ts +56 -0
  29. package/ai-docs/src/01_effect/07_pubsub/index.md +3 -0
  30. package/ai-docs/src/03_stream/10_creating-streams.ts +103 -0
  31. package/ai-docs/src/03_stream/20_consuming-streams.ts +137 -0
  32. package/ai-docs/src/03_stream/30_encoding.ts +165 -0
  33. package/ai-docs/src/03_stream/index.md +4 -0
  34. package/ai-docs/src/04_integration/10_managed-runtime.ts +129 -0
  35. package/ai-docs/src/04_integration/index.md +5 -0
  36. package/ai-docs/src/05_batching/10_request-resolver.ts +89 -0
  37. package/ai-docs/src/05_batching/index.md +3 -0
  38. package/ai-docs/src/06_schedule/10_schedules.ts +110 -0
  39. package/ai-docs/src/06_schedule/index.md +3 -0
  40. package/ai-docs/src/07_datetime/10_creating-and-formatting.ts +30 -0
  41. package/ai-docs/src/07_datetime/20_time-zones.ts +44 -0
  42. package/ai-docs/src/07_datetime/index.md +5 -0
  43. package/ai-docs/src/08_observability/10_logging.ts +66 -0
  44. package/ai-docs/src/08_observability/20_otlp-tracing.ts +95 -0
  45. package/ai-docs/src/08_observability/index.md +7 -0
  46. package/ai-docs/src/09_testing/10_effect-tests.ts +55 -0
  47. package/ai-docs/src/09_testing/20_layer-tests.ts +138 -0
  48. package/ai-docs/src/09_testing/index.md +1 -0
  49. package/ai-docs/src/10_predicate/01_basics.ts +14 -0
  50. package/ai-docs/src/10_predicate/index.md +9 -0
  51. package/ai-docs/src/50_http-client/10_basics.ts +102 -0
  52. package/ai-docs/src/50_http-client/index.md +3 -0
  53. package/ai-docs/src/51_http-server/10_basics.ts +116 -0
  54. package/ai-docs/src/51_http-server/fixtures/api/Api.ts +14 -0
  55. package/ai-docs/src/51_http-server/fixtures/api/Authorization.ts +36 -0
  56. package/ai-docs/src/51_http-server/fixtures/api/System.ts +10 -0
  57. package/ai-docs/src/51_http-server/fixtures/api/Users.ts +91 -0
  58. package/ai-docs/src/51_http-server/fixtures/domain/User.ts +12 -0
  59. package/ai-docs/src/51_http-server/fixtures/domain/UserErrors.ts +22 -0
  60. package/ai-docs/src/51_http-server/fixtures/server/Authorization.ts +36 -0
  61. package/ai-docs/src/51_http-server/fixtures/server/Users/http.ts +71 -0
  62. package/ai-docs/src/51_http-server/fixtures/server/Users.ts +62 -0
  63. package/ai-docs/src/51_http-server/index.md +3 -0
  64. package/ai-docs/src/60_child-process/10_working-with-child-processes.ts +117 -0
  65. package/ai-docs/src/60_child-process/index.md +3 -0
  66. package/ai-docs/src/70_cli/10_basics.ts +136 -0
  67. package/ai-docs/src/70_cli/index.md +5 -0
  68. package/ai-docs/src/71_ai/10_language-model.ts +156 -0
  69. package/ai-docs/src/71_ai/20_tools.ts +226 -0
  70. package/ai-docs/src/71_ai/30_chat.ts +158 -0
  71. package/ai-docs/src/71_ai/fixtures/domain/LaunchPlan.ts +9 -0
  72. package/ai-docs/src/71_ai/index.md +5 -0
  73. package/ai-docs/src/80_cluster/10_entities.ts +97 -0
  74. package/ai-docs/src/80_cluster/index.md +4 -0
  75. package/ai-docs/src/index.md +10 -0
  76. package/ai-docs/tsconfig.json +24 -0
  77. package/dist/Array.d.ts +971 -1037
  78. package/dist/Array.d.ts.map +1 -1
  79. package/dist/Array.js +462 -412
  80. package/dist/Array.js.map +1 -1
  81. package/dist/BigDecimal.d.ts +433 -756
  82. package/dist/BigDecimal.d.ts.map +1 -1
  83. package/dist/BigDecimal.js +200 -325
  84. package/dist/BigDecimal.js.map +1 -1
  85. package/dist/BigInt.d.ts +207 -267
  86. package/dist/BigInt.d.ts.map +1 -1
  87. package/dist/BigInt.js +107 -135
  88. package/dist/BigInt.js.map +1 -1
  89. package/dist/Boolean.d.ts +146 -188
  90. package/dist/Boolean.d.ts.map +1 -1
  91. package/dist/Boolean.js +64 -84
  92. package/dist/Boolean.js.map +1 -1
  93. package/dist/Brand.d.ts +3 -3
  94. package/dist/Brand.d.ts.map +1 -1
  95. package/dist/Brand.js +4 -3
  96. package/dist/Brand.js.map +1 -1
  97. package/dist/Cache.d.ts +409 -256
  98. package/dist/Cache.d.ts.map +1 -1
  99. package/dist/Cache.js +213 -134
  100. package/dist/Cache.js.map +1 -1
  101. package/dist/Cause.d.ts +167 -277
  102. package/dist/Cause.d.ts.map +1 -1
  103. package/dist/Cause.js +122 -176
  104. package/dist/Cause.js.map +1 -1
  105. package/dist/Channel.d.ts +756 -769
  106. package/dist/Channel.d.ts.map +1 -1
  107. package/dist/Channel.js +588 -449
  108. package/dist/Channel.js.map +1 -1
  109. package/dist/ChannelSchema.d.ts +1 -1
  110. package/dist/ChannelSchema.d.ts.map +1 -1
  111. package/dist/ChannelSchema.js.map +1 -1
  112. package/dist/Chunk.d.ts +834 -1173
  113. package/dist/Chunk.d.ts.map +1 -1
  114. package/dist/Chunk.js +326 -439
  115. package/dist/Chunk.js.map +1 -1
  116. package/dist/Clock.d.ts +180 -49
  117. package/dist/Clock.d.ts.map +1 -1
  118. package/dist/Clock.js +96 -31
  119. package/dist/Clock.js.map +1 -1
  120. package/dist/Combiner.d.ts +20 -33
  121. package/dist/Combiner.d.ts.map +1 -1
  122. package/dist/Combiner.js +18 -30
  123. package/dist/Combiner.js.map +1 -1
  124. package/dist/Config.d.ts +226 -174
  125. package/dist/Config.d.ts.map +1 -1
  126. package/dist/Config.js +361 -267
  127. package/dist/Config.js.map +1 -1
  128. package/dist/ConfigProvider.d.ts +229 -71
  129. package/dist/ConfigProvider.d.ts.map +1 -1
  130. package/dist/ConfigProvider.js +164 -95
  131. package/dist/ConfigProvider.js.map +1 -1
  132. package/dist/Console.d.ts +233 -33
  133. package/dist/Console.d.ts.map +1 -1
  134. package/dist/Console.js +232 -32
  135. package/dist/Console.js.map +1 -1
  136. package/dist/Context.d.ts +153 -277
  137. package/dist/Context.d.ts.map +1 -1
  138. package/dist/Context.js +172 -236
  139. package/dist/Context.js.map +1 -1
  140. package/dist/Cron.d.ts +144 -176
  141. package/dist/Cron.d.ts.map +1 -1
  142. package/dist/Cron.js +227 -162
  143. package/dist/Cron.js.map +1 -1
  144. package/dist/Crypto.d.ts +13 -15
  145. package/dist/Crypto.d.ts.map +1 -1
  146. package/dist/Crypto.js +22 -15
  147. package/dist/Crypto.js.map +1 -1
  148. package/dist/Data.d.ts +60 -80
  149. package/dist/Data.d.ts.map +1 -1
  150. package/dist/Data.js +18 -24
  151. package/dist/Data.js.map +1 -1
  152. package/dist/DateTime.d.ts +562 -660
  153. package/dist/DateTime.d.ts.map +1 -1
  154. package/dist/DateTime.js +307 -362
  155. package/dist/DateTime.js.map +1 -1
  156. package/dist/Deferred.d.ts +253 -256
  157. package/dist/Deferred.d.ts.map +1 -1
  158. package/dist/Deferred.js +110 -98
  159. package/dist/Deferred.js.map +1 -1
  160. package/dist/Duration.d.ts +216 -308
  161. package/dist/Duration.d.ts.map +1 -1
  162. package/dist/Duration.js +157 -188
  163. package/dist/Duration.js.map +1 -1
  164. package/dist/Effect.d.ts +3142 -3345
  165. package/dist/Effect.d.ts.map +1 -1
  166. package/dist/Effect.js +1452 -1570
  167. package/dist/Effect.js.map +1 -1
  168. package/dist/Effectable.js.map +1 -1
  169. package/dist/Encoding.d.ts +22 -40
  170. package/dist/Encoding.d.ts.map +1 -1
  171. package/dist/Encoding.js +22 -40
  172. package/dist/Encoding.js.map +1 -1
  173. package/dist/Equal.d.ts +33 -37
  174. package/dist/Equal.d.ts.map +1 -1
  175. package/dist/Equal.js +39 -23
  176. package/dist/Equal.js.map +1 -1
  177. package/dist/Equivalence.d.ts +103 -105
  178. package/dist/Equivalence.d.ts.map +1 -1
  179. package/dist/Equivalence.js +77 -79
  180. package/dist/Equivalence.js.map +1 -1
  181. package/dist/ErrorReporter.d.ts +51 -27
  182. package/dist/ErrorReporter.d.ts.map +1 -1
  183. package/dist/ErrorReporter.js +50 -26
  184. package/dist/ErrorReporter.js.map +1 -1
  185. package/dist/ExecutionPlan.d.ts +86 -55
  186. package/dist/ExecutionPlan.d.ts.map +1 -1
  187. package/dist/ExecutionPlan.js +8 -29
  188. package/dist/ExecutionPlan.js.map +1 -1
  189. package/dist/Exit.d.ts +116 -192
  190. package/dist/Exit.d.ts.map +1 -1
  191. package/dist/Exit.js +82 -130
  192. package/dist/Exit.js.map +1 -1
  193. package/dist/Fiber.d.ts +83 -147
  194. package/dist/Fiber.d.ts.map +1 -1
  195. package/dist/Fiber.js +48 -87
  196. package/dist/Fiber.js.map +1 -1
  197. package/dist/FiberHandle.d.ts +152 -105
  198. package/dist/FiberHandle.d.ts.map +1 -1
  199. package/dist/FiberHandle.js +109 -75
  200. package/dist/FiberHandle.js.map +1 -1
  201. package/dist/FiberMap.d.ts +213 -168
  202. package/dist/FiberMap.d.ts.map +1 -1
  203. package/dist/FiberMap.js +114 -89
  204. package/dist/FiberMap.js.map +1 -1
  205. package/dist/FiberSet.d.ts +123 -81
  206. package/dist/FiberSet.d.ts.map +1 -1
  207. package/dist/FiberSet.js +86 -60
  208. package/dist/FiberSet.js.map +1 -1
  209. package/dist/FileSystem.d.ts +154 -265
  210. package/dist/FileSystem.d.ts.map +1 -1
  211. package/dist/FileSystem.js +42 -147
  212. package/dist/FileSystem.js.map +1 -1
  213. package/dist/Filter.d.ts +61 -33
  214. package/dist/Filter.d.ts.map +1 -1
  215. package/dist/Filter.js +26 -15
  216. package/dist/Filter.js.map +1 -1
  217. package/dist/Formatter.d.ts +24 -32
  218. package/dist/Formatter.d.ts.map +1 -1
  219. package/dist/Formatter.js +55 -60
  220. package/dist/Formatter.js.map +1 -1
  221. package/dist/Function.d.ts +106 -148
  222. package/dist/Function.d.ts.map +1 -1
  223. package/dist/Function.js +81 -62
  224. package/dist/Function.js.map +1 -1
  225. package/dist/Graph.d.ts +360 -714
  226. package/dist/Graph.d.ts.map +1 -1
  227. package/dist/Graph.js +168 -297
  228. package/dist/Graph.js.map +1 -1
  229. package/dist/HKT.d.ts +12 -6
  230. package/dist/HKT.d.ts.map +1 -1
  231. package/dist/Hash.d.ts +47 -83
  232. package/dist/Hash.d.ts.map +1 -1
  233. package/dist/Hash.js +46 -68
  234. package/dist/Hash.js.map +1 -1
  235. package/dist/HashMap.d.ts +319 -411
  236. package/dist/HashMap.d.ts.map +1 -1
  237. package/dist/HashMap.js +122 -166
  238. package/dist/HashMap.js.map +1 -1
  239. package/dist/HashRing.d.ts.map +1 -1
  240. package/dist/HashRing.js +1 -0
  241. package/dist/HashRing.js.map +1 -1
  242. package/dist/HashSet.d.ts +177 -284
  243. package/dist/HashSet.d.ts.map +1 -1
  244. package/dist/HashSet.js +68 -109
  245. package/dist/HashSet.js.map +1 -1
  246. package/dist/Inspectable.d.ts +19 -18
  247. package/dist/Inspectable.d.ts.map +1 -1
  248. package/dist/Inspectable.js +20 -16
  249. package/dist/Inspectable.js.map +1 -1
  250. package/dist/Iterable.d.ts +620 -786
  251. package/dist/Iterable.d.ts.map +1 -1
  252. package/dist/Iterable.js +241 -317
  253. package/dist/Iterable.js.map +1 -1
  254. package/dist/JsonPatch.d.ts +11 -13
  255. package/dist/JsonPatch.d.ts.map +1 -1
  256. package/dist/JsonPatch.js +46 -103
  257. package/dist/JsonPatch.js.map +1 -1
  258. package/dist/JsonPointer.d.ts +8 -8
  259. package/dist/JsonPointer.js +8 -8
  260. package/dist/JsonPointer.js.map +1 -1
  261. package/dist/JsonSchema.d.ts +98 -44
  262. package/dist/JsonSchema.d.ts.map +1 -1
  263. package/dist/JsonSchema.js +319 -241
  264. package/dist/JsonSchema.js.map +1 -1
  265. package/dist/Latch.d.ts +23 -35
  266. package/dist/Latch.d.ts.map +1 -1
  267. package/dist/Latch.js +16 -28
  268. package/dist/Latch.js.map +1 -1
  269. package/dist/Layer.d.ts +359 -260
  270. package/dist/Layer.d.ts.map +1 -1
  271. package/dist/Layer.js +202 -180
  272. package/dist/Layer.js.map +1 -1
  273. package/dist/LayerMap.d.ts +42 -29
  274. package/dist/LayerMap.d.ts.map +1 -1
  275. package/dist/LayerMap.js +31 -21
  276. package/dist/LayerMap.js.map +1 -1
  277. package/dist/LayerRef.d.ts +6 -2
  278. package/dist/LayerRef.d.ts.map +1 -1
  279. package/dist/LayerRef.js +6 -2
  280. package/dist/LayerRef.js.map +1 -1
  281. package/dist/LogLevel.d.ts +114 -214
  282. package/dist/LogLevel.d.ts.map +1 -1
  283. package/dist/LogLevel.js +41 -76
  284. package/dist/LogLevel.js.map +1 -1
  285. package/dist/Logger.d.ts +218 -467
  286. package/dist/Logger.d.ts.map +1 -1
  287. package/dist/Logger.js +208 -453
  288. package/dist/Logger.js.map +1 -1
  289. package/dist/ManagedRuntime.d.ts +16 -5
  290. package/dist/ManagedRuntime.d.ts.map +1 -1
  291. package/dist/ManagedRuntime.js +10 -5
  292. package/dist/ManagedRuntime.js.map +1 -1
  293. package/dist/Match.d.ts +217 -252
  294. package/dist/Match.d.ts.map +1 -1
  295. package/dist/Match.js +150 -183
  296. package/dist/Match.js.map +1 -1
  297. package/dist/Metric.d.ts +442 -993
  298. package/dist/Metric.d.ts.map +1 -1
  299. package/dist/Metric.js +202 -645
  300. package/dist/Metric.js.map +1 -1
  301. package/dist/MutableHashMap.d.ts +144 -173
  302. package/dist/MutableHashMap.d.ts.map +1 -1
  303. package/dist/MutableHashMap.js +68 -79
  304. package/dist/MutableHashMap.js.map +1 -1
  305. package/dist/MutableHashSet.d.ts +84 -89
  306. package/dist/MutableHashSet.d.ts.map +1 -1
  307. package/dist/MutableHashSet.js +44 -47
  308. package/dist/MutableHashSet.js.map +1 -1
  309. package/dist/MutableList.d.ts +71 -370
  310. package/dist/MutableList.d.ts.map +1 -1
  311. package/dist/MutableList.js +63 -284
  312. package/dist/MutableList.js.map +1 -1
  313. package/dist/MutableRef.d.ts +420 -243
  314. package/dist/MutableRef.d.ts.map +1 -1
  315. package/dist/MutableRef.js +209 -120
  316. package/dist/MutableRef.js.map +1 -1
  317. package/dist/Newtype.d.ts +21 -14
  318. package/dist/Newtype.d.ts.map +1 -1
  319. package/dist/Newtype.js +15 -13
  320. package/dist/Newtype.js.map +1 -1
  321. package/dist/NonEmptyIterable.d.ts +7 -137
  322. package/dist/NonEmptyIterable.d.ts.map +1 -1
  323. package/dist/NonEmptyIterable.js +5 -93
  324. package/dist/NonEmptyIterable.js.map +1 -1
  325. package/dist/Number.d.ts +196 -233
  326. package/dist/Number.d.ts.map +1 -1
  327. package/dist/Number.js +90 -109
  328. package/dist/Number.js.map +1 -1
  329. package/dist/Optic.d.ts +132 -210
  330. package/dist/Optic.d.ts.map +1 -1
  331. package/dist/Optic.js +221 -324
  332. package/dist/Optic.js.map +1 -1
  333. package/dist/Option.d.ts +447 -812
  334. package/dist/Option.d.ts.map +1 -1
  335. package/dist/Option.js +213 -393
  336. package/dist/Option.js.map +1 -1
  337. package/dist/Order.d.ts +109 -109
  338. package/dist/Order.js +91 -91
  339. package/dist/Order.js.map +1 -1
  340. package/dist/Ordering.d.ts +20 -23
  341. package/dist/Ordering.d.ts.map +1 -1
  342. package/dist/Ordering.js +8 -9
  343. package/dist/Ordering.js.map +1 -1
  344. package/dist/PartitionedSemaphore.d.ts.map +1 -1
  345. package/dist/PartitionedSemaphore.js +1 -4
  346. package/dist/PartitionedSemaphore.js.map +1 -1
  347. package/dist/Path.d.ts +38 -41
  348. package/dist/Path.d.ts.map +1 -1
  349. package/dist/Path.js +3 -4
  350. package/dist/Path.js.map +1 -1
  351. package/dist/Pipeable.d.ts +6 -5
  352. package/dist/Pipeable.d.ts.map +1 -1
  353. package/dist/Pipeable.js +2 -2
  354. package/dist/Pipeable.js.map +1 -1
  355. package/dist/PlatformError.d.ts +4 -4
  356. package/dist/PlatformError.js +3 -3
  357. package/dist/PlatformError.js.map +1 -1
  358. package/dist/Pool.d.ts +4 -2
  359. package/dist/Pool.d.ts.map +1 -1
  360. package/dist/Pool.js +4 -2
  361. package/dist/Pool.js.map +1 -1
  362. package/dist/Predicate.d.ts +200 -181
  363. package/dist/Predicate.d.ts.map +1 -1
  364. package/dist/Predicate.js +100 -108
  365. package/dist/Predicate.js.map +1 -1
  366. package/dist/PrimaryKey.d.ts +7 -7
  367. package/dist/PrimaryKey.js +5 -5
  368. package/dist/PrimaryKey.js.map +1 -1
  369. package/dist/PubSub.d.ts +425 -494
  370. package/dist/PubSub.d.ts.map +1 -1
  371. package/dist/PubSub.js +373 -362
  372. package/dist/PubSub.js.map +1 -1
  373. package/dist/Pull.d.ts +24 -18
  374. package/dist/Pull.d.ts.map +1 -1
  375. package/dist/Pull.js +11 -9
  376. package/dist/Pull.js.map +1 -1
  377. package/dist/Queue.d.ts +200 -159
  378. package/dist/Queue.d.ts.map +1 -1
  379. package/dist/Queue.js +166 -138
  380. package/dist/Queue.js.map +1 -1
  381. package/dist/Random.d.ts +49 -74
  382. package/dist/Random.d.ts.map +1 -1
  383. package/dist/Random.js +35 -54
  384. package/dist/Random.js.map +1 -1
  385. package/dist/RcMap.d.ts +121 -63
  386. package/dist/RcMap.d.ts.map +1 -1
  387. package/dist/RcMap.js +42 -21
  388. package/dist/RcMap.js.map +1 -1
  389. package/dist/RcRef.d.ts +24 -13
  390. package/dist/RcRef.d.ts.map +1 -1
  391. package/dist/RcRef.js +15 -9
  392. package/dist/RcRef.js.map +1 -1
  393. package/dist/Record.d.ts +361 -466
  394. package/dist/Record.d.ts.map +1 -1
  395. package/dist/Record.js +163 -216
  396. package/dist/Record.js.map +1 -1
  397. package/dist/Redactable.d.ts +6 -2
  398. package/dist/Redactable.d.ts.map +1 -1
  399. package/dist/Redactable.js +7 -2
  400. package/dist/Redactable.js.map +1 -1
  401. package/dist/Redacted.d.ts +25 -25
  402. package/dist/Redacted.d.ts.map +1 -1
  403. package/dist/Redacted.js +19 -20
  404. package/dist/Redacted.js.map +1 -1
  405. package/dist/Reducer.d.ts +8 -15
  406. package/dist/Reducer.d.ts.map +1 -1
  407. package/dist/Reducer.js +6 -12
  408. package/dist/Reducer.js.map +1 -1
  409. package/dist/Ref.d.ts +95 -165
  410. package/dist/Ref.d.ts.map +1 -1
  411. package/dist/Ref.js +75 -122
  412. package/dist/Ref.js.map +1 -1
  413. package/dist/References.d.ts +102 -213
  414. package/dist/References.d.ts.map +1 -1
  415. package/dist/References.js +102 -213
  416. package/dist/References.js.map +1 -1
  417. package/dist/RegExp.d.ts +10 -14
  418. package/dist/RegExp.d.ts.map +1 -1
  419. package/dist/RegExp.js +10 -14
  420. package/dist/RegExp.js.map +1 -1
  421. package/dist/Request.d.ts +31 -21
  422. package/dist/Request.d.ts.map +1 -1
  423. package/dist/Request.js +25 -19
  424. package/dist/Request.js.map +1 -1
  425. package/dist/RequestResolver.d.ts +201 -90
  426. package/dist/RequestResolver.d.ts.map +1 -1
  427. package/dist/RequestResolver.js +87 -41
  428. package/dist/RequestResolver.js.map +1 -1
  429. package/dist/Resource.js.map +1 -1
  430. package/dist/Result.d.ts +302 -470
  431. package/dist/Result.d.ts.map +1 -1
  432. package/dist/Result.js +135 -218
  433. package/dist/Result.js.map +1 -1
  434. package/dist/Runtime.d.ts +50 -75
  435. package/dist/Runtime.d.ts.map +1 -1
  436. package/dist/Runtime.js +39 -60
  437. package/dist/Runtime.js.map +1 -1
  438. package/dist/Schedule.d.ts +292 -1638
  439. package/dist/Schedule.d.ts.map +1 -1
  440. package/dist/Schedule.js +164 -805
  441. package/dist/Schedule.js.map +1 -1
  442. package/dist/Scheduler.d.ts +5 -5
  443. package/dist/Scheduler.d.ts.map +1 -1
  444. package/dist/Scheduler.js +18 -6
  445. package/dist/Scheduler.js.map +1 -1
  446. package/dist/Schema.d.ts +2056 -1269
  447. package/dist/Schema.d.ts.map +1 -1
  448. package/dist/Schema.js +2868 -1135
  449. package/dist/Schema.js.map +1 -1
  450. package/dist/SchemaAST.d.ts +64 -72
  451. package/dist/SchemaAST.d.ts.map +1 -1
  452. package/dist/SchemaAST.js +698 -468
  453. package/dist/SchemaAST.js.map +1 -1
  454. package/dist/SchemaGetter.d.ts +236 -188
  455. package/dist/SchemaGetter.d.ts.map +1 -1
  456. package/dist/SchemaGetter.js +281 -234
  457. package/dist/SchemaGetter.js.map +1 -1
  458. package/dist/SchemaIssue.d.ts +219 -190
  459. package/dist/SchemaIssue.d.ts.map +1 -1
  460. package/dist/SchemaIssue.js +303 -309
  461. package/dist/SchemaIssue.js.map +1 -1
  462. package/dist/SchemaParser.d.ts +32 -2
  463. package/dist/SchemaParser.d.ts.map +1 -1
  464. package/dist/SchemaParser.js +170 -118
  465. package/dist/SchemaParser.js.map +1 -1
  466. package/dist/SchemaRepresentation.d.ts +433 -1511
  467. package/dist/SchemaRepresentation.d.ts.map +1 -1
  468. package/dist/SchemaRepresentation.js +301 -2854
  469. package/dist/SchemaRepresentation.js.map +1 -1
  470. package/dist/SchemaTransformation.d.ts +117 -77
  471. package/dist/SchemaTransformation.d.ts.map +1 -1
  472. package/dist/SchemaTransformation.js +139 -104
  473. package/dist/SchemaTransformation.js.map +1 -1
  474. package/dist/Scope.d.ts +123 -151
  475. package/dist/Scope.d.ts.map +1 -1
  476. package/dist/Scope.js +72 -92
  477. package/dist/Scope.js.map +1 -1
  478. package/dist/ScopedCache.js +1 -1
  479. package/dist/ScopedCache.js.map +1 -1
  480. package/dist/ScopedRef.d.ts +3 -3
  481. package/dist/ScopedRef.d.ts.map +1 -1
  482. package/dist/ScopedRef.js +2 -2
  483. package/dist/ScopedRef.js.map +1 -1
  484. package/dist/Semaphore.d.ts +101 -13
  485. package/dist/Semaphore.d.ts.map +1 -1
  486. package/dist/Semaphore.js +78 -39
  487. package/dist/Semaphore.js.map +1 -1
  488. package/dist/Sink.d.ts +118 -108
  489. package/dist/Sink.d.ts.map +1 -1
  490. package/dist/Sink.js +107 -100
  491. package/dist/Sink.js.map +1 -1
  492. package/dist/Stdio.d.ts +18 -5
  493. package/dist/Stdio.d.ts.map +1 -1
  494. package/dist/Stdio.js +6 -3
  495. package/dist/Stdio.js.map +1 -1
  496. package/dist/Stream.d.ts +2467 -2962
  497. package/dist/Stream.d.ts.map +1 -1
  498. package/dist/Stream.js +1154 -1413
  499. package/dist/Stream.js.map +1 -1
  500. package/dist/String.d.ts +262 -308
  501. package/dist/String.d.ts.map +1 -1
  502. package/dist/String.js +184 -215
  503. package/dist/String.js.map +1 -1
  504. package/dist/Struct.d.ts +109 -114
  505. package/dist/Struct.d.ts.map +1 -1
  506. package/dist/Struct.js +46 -54
  507. package/dist/Struct.js.map +1 -1
  508. package/dist/SubscriptionRef.d.ts +282 -250
  509. package/dist/SubscriptionRef.d.ts.map +1 -1
  510. package/dist/SubscriptionRef.js +104 -92
  511. package/dist/SubscriptionRef.js.map +1 -1
  512. package/dist/Symbol.d.ts +3 -3
  513. package/dist/Symbol.js +3 -3
  514. package/dist/Symbol.js.map +1 -1
  515. package/dist/SynchronizedRef.js +1 -1
  516. package/dist/SynchronizedRef.js.map +1 -1
  517. package/dist/Take.js.map +1 -1
  518. package/dist/Terminal.d.ts +2 -2
  519. package/dist/Terminal.js +2 -2
  520. package/dist/Terminal.js.map +1 -1
  521. package/dist/Tracer.d.ts +100 -54
  522. package/dist/Tracer.d.ts.map +1 -1
  523. package/dist/Tracer.js +41 -24
  524. package/dist/Tracer.js.map +1 -1
  525. package/dist/Trie.d.ts +287 -679
  526. package/dist/Trie.d.ts.map +1 -1
  527. package/dist/Trie.js +109 -251
  528. package/dist/Trie.js.map +1 -1
  529. package/dist/Tuple.d.ts +98 -131
  530. package/dist/Tuple.d.ts.map +1 -1
  531. package/dist/Tuple.js +42 -57
  532. package/dist/Tuple.js.map +1 -1
  533. package/dist/TxChunk.d.ts +201 -121
  534. package/dist/TxChunk.d.ts.map +1 -1
  535. package/dist/TxChunk.js +85 -56
  536. package/dist/TxChunk.js.map +1 -1
  537. package/dist/TxDeferred.d.ts +62 -46
  538. package/dist/TxDeferred.d.ts.map +1 -1
  539. package/dist/TxDeferred.js +30 -22
  540. package/dist/TxDeferred.js.map +1 -1
  541. package/dist/TxHashMap.d.ts +631 -779
  542. package/dist/TxHashMap.d.ts.map +1 -1
  543. package/dist/TxHashMap.js +268 -330
  544. package/dist/TxHashMap.js.map +1 -1
  545. package/dist/TxHashSet.d.ts +297 -236
  546. package/dist/TxHashSet.d.ts.map +1 -1
  547. package/dist/TxHashSet.js +130 -100
  548. package/dist/TxHashSet.js.map +1 -1
  549. package/dist/TxPriorityQueue.d.ts +126 -95
  550. package/dist/TxPriorityQueue.d.ts.map +1 -1
  551. package/dist/TxPriorityQueue.js +74 -56
  552. package/dist/TxPriorityQueue.js.map +1 -1
  553. package/dist/TxPubSub.d.ts +101 -88
  554. package/dist/TxPubSub.d.ts.map +1 -1
  555. package/dist/TxPubSub.js +87 -66
  556. package/dist/TxPubSub.js.map +1 -1
  557. package/dist/TxQueue.d.ts +200 -180
  558. package/dist/TxQueue.d.ts.map +1 -1
  559. package/dist/TxQueue.js +161 -137
  560. package/dist/TxQueue.js.map +1 -1
  561. package/dist/TxReentrantLock.d.ts +89 -114
  562. package/dist/TxReentrantLock.d.ts.map +1 -1
  563. package/dist/TxReentrantLock.js +75 -53
  564. package/dist/TxReentrantLock.js.map +1 -1
  565. package/dist/TxRef.d.ts +51 -32
  566. package/dist/TxRef.d.ts.map +1 -1
  567. package/dist/TxRef.js +23 -15
  568. package/dist/TxRef.js.map +1 -1
  569. package/dist/TxSemaphore.d.ts +129 -95
  570. package/dist/TxSemaphore.d.ts.map +1 -1
  571. package/dist/TxSemaphore.js +85 -70
  572. package/dist/TxSemaphore.js.map +1 -1
  573. package/dist/TxSubscriptionRef.d.ts +97 -70
  574. package/dist/TxSubscriptionRef.d.ts.map +1 -1
  575. package/dist/TxSubscriptionRef.js +44 -34
  576. package/dist/TxSubscriptionRef.js.map +1 -1
  577. package/dist/Types.d.ts +127 -70
  578. package/dist/Types.d.ts.map +1 -1
  579. package/dist/UndefinedOr.js.map +1 -1
  580. package/dist/Unify.d.ts +45 -65
  581. package/dist/Unify.d.ts.map +1 -1
  582. package/dist/Unify.js +6 -9
  583. package/dist/Unify.js.map +1 -1
  584. package/dist/Utils.d.ts +23 -16
  585. package/dist/Utils.d.ts.map +1 -1
  586. package/dist/Utils.js +3 -7
  587. package/dist/Utils.js.map +1 -1
  588. package/dist/index.d.ts +0 -8
  589. package/dist/index.d.ts.map +1 -1
  590. package/dist/index.js +0 -8
  591. package/dist/index.js.map +1 -1
  592. package/dist/internal/array.js.map +1 -1
  593. package/dist/internal/core.js +4 -3
  594. package/dist/internal/core.js.map +1 -1
  595. package/dist/internal/dateTime.js +5 -1
  596. package/dist/internal/dateTime.js.map +1 -1
  597. package/dist/internal/doNotation.js.map +1 -1
  598. package/dist/internal/effect.js +252 -108
  599. package/dist/internal/effect.js.map +1 -1
  600. package/dist/internal/equal.js.map +1 -1
  601. package/dist/internal/errors.js.map +1 -1
  602. package/dist/internal/executionPlan.js +52 -3
  603. package/dist/internal/executionPlan.js.map +1 -1
  604. package/dist/internal/hashMap.js +12 -8
  605. package/dist/internal/hashMap.js.map +1 -1
  606. package/dist/internal/hashSet.js.map +1 -1
  607. package/dist/internal/layer.js.map +1 -1
  608. package/dist/internal/matcher.js +2 -2
  609. package/dist/internal/matcher.js.map +1 -1
  610. package/dist/internal/metric.js.map +1 -1
  611. package/dist/internal/option.js.map +1 -1
  612. package/dist/internal/persistence.d.ts +2 -0
  613. package/dist/internal/persistence.d.ts.map +1 -0
  614. package/dist/internal/persistence.js +3 -0
  615. package/dist/internal/persistence.js.map +1 -0
  616. package/dist/internal/random.js.map +1 -1
  617. package/dist/internal/rcRef.js +18 -13
  618. package/dist/internal/rcRef.js.map +1 -1
  619. package/dist/internal/record.d.ts +0 -3
  620. package/dist/internal/record.d.ts.map +1 -1
  621. package/dist/internal/record.js +10 -5
  622. package/dist/internal/record.js.map +1 -1
  623. package/dist/internal/redacted.js.map +1 -1
  624. package/dist/internal/references.js +3 -4
  625. package/dist/internal/references.js.map +1 -1
  626. package/dist/internal/request.js.map +1 -1
  627. package/dist/internal/result.js.map +1 -1
  628. package/dist/internal/schedule.js.map +1 -1
  629. package/dist/internal/schema/annotations.js +15 -1
  630. package/dist/internal/schema/annotations.js.map +1 -1
  631. package/dist/internal/schema/cause.js.map +1 -1
  632. package/dist/internal/schema/fromJsonSchemaDocument.d.ts +2 -0
  633. package/dist/internal/schema/fromJsonSchemaDocument.d.ts.map +1 -0
  634. package/dist/internal/schema/fromJsonSchemaDocument.js +761 -0
  635. package/dist/internal/schema/fromJsonSchemaDocument.js.map +1 -0
  636. package/dist/internal/schema/fromRepresentation.d.ts +2 -0
  637. package/dist/internal/schema/fromRepresentation.d.ts.map +1 -0
  638. package/dist/internal/schema/fromRepresentation.js +245 -0
  639. package/dist/internal/schema/fromRepresentation.js.map +1 -0
  640. package/dist/internal/schema/parser.d.ts +14 -0
  641. package/dist/internal/schema/parser.d.ts.map +1 -0
  642. package/dist/internal/schema/parser.js +13 -0
  643. package/dist/internal/schema/parser.js.map +1 -0
  644. package/dist/internal/schema/schema.js +29 -49
  645. package/dist/internal/schema/schema.js.map +1 -1
  646. package/dist/internal/schema/toArbitrary.d.ts +2 -0
  647. package/dist/internal/schema/toArbitrary.d.ts.map +1 -0
  648. package/dist/internal/schema/{arbitrary.js → toArbitrary.js} +8 -83
  649. package/dist/internal/schema/toArbitrary.js.map +1 -0
  650. package/dist/internal/schema/toCodeDocument.d.ts +2 -0
  651. package/dist/internal/schema/toCodeDocument.d.ts.map +1 -0
  652. package/dist/internal/schema/toCodeDocument.js +438 -0
  653. package/dist/internal/schema/toCodeDocument.js.map +1 -0
  654. package/dist/internal/schema/toEquivalence.d.ts +2 -0
  655. package/dist/internal/schema/toEquivalence.d.ts.map +1 -0
  656. package/dist/internal/schema/{equivalence.js → toEquivalence.js} +15 -13
  657. package/dist/internal/schema/toEquivalence.js.map +1 -0
  658. package/dist/internal/schema/toJsonSchemaDocument.d.ts +2 -0
  659. package/dist/internal/schema/toJsonSchemaDocument.d.ts.map +1 -0
  660. package/dist/internal/schema/toJsonSchemaDocument.js +522 -0
  661. package/dist/internal/schema/toJsonSchemaDocument.js.map +1 -0
  662. package/dist/internal/schema/toRepresentation.d.ts +2 -0
  663. package/dist/internal/schema/toRepresentation.d.ts.map +1 -0
  664. package/dist/internal/schema/toRepresentation.js +351 -0
  665. package/dist/internal/schema/toRepresentation.js.map +1 -0
  666. package/dist/internal/stackTraceLimit.js +3 -6
  667. package/dist/internal/stackTraceLimit.js.map +1 -1
  668. package/dist/internal/stream.js.map +1 -1
  669. package/dist/internal/tracer.js.map +1 -1
  670. package/dist/internal/trie.js +24 -10
  671. package/dist/internal/trie.js.map +1 -1
  672. package/dist/testing/FastCheck.d.ts +8 -7
  673. package/dist/testing/FastCheck.d.ts.map +1 -1
  674. package/dist/testing/FastCheck.js +8 -7
  675. package/dist/testing/FastCheck.js.map +1 -1
  676. package/dist/testing/TestClock.d.ts +57 -28
  677. package/dist/testing/TestClock.d.ts.map +1 -1
  678. package/dist/testing/TestClock.js +65 -20
  679. package/dist/testing/TestClock.js.map +1 -1
  680. package/dist/testing/TestConsole.d.ts +32 -31
  681. package/dist/testing/TestConsole.d.ts.map +1 -1
  682. package/dist/testing/TestConsole.js +24 -22
  683. package/dist/testing/TestConsole.js.map +1 -1
  684. package/dist/testing/TestSchema.d.ts +31 -31
  685. package/dist/testing/TestSchema.d.ts.map +1 -1
  686. package/dist/testing/TestSchema.js +35 -34
  687. package/dist/testing/TestSchema.js.map +1 -1
  688. package/dist/testing/index.js.map +1 -1
  689. package/dist/unstable/ai/AiError.d.ts +121 -144
  690. package/dist/unstable/ai/AiError.d.ts.map +1 -1
  691. package/dist/unstable/ai/AiError.js +118 -140
  692. package/dist/unstable/ai/AiError.js.map +1 -1
  693. package/dist/unstable/ai/AnthropicStructuredOutput.d.ts +22 -7
  694. package/dist/unstable/ai/AnthropicStructuredOutput.d.ts.map +1 -1
  695. package/dist/unstable/ai/AnthropicStructuredOutput.js +87 -317
  696. package/dist/unstable/ai/AnthropicStructuredOutput.js.map +1 -1
  697. package/dist/unstable/ai/Chat.d.ts +132 -97
  698. package/dist/unstable/ai/Chat.d.ts.map +1 -1
  699. package/dist/unstable/ai/Chat.js +56 -52
  700. package/dist/unstable/ai/Chat.js.map +1 -1
  701. package/dist/unstable/ai/EmbeddingModel.d.ts +1 -1
  702. package/dist/unstable/ai/EmbeddingModel.js +1 -1
  703. package/dist/unstable/ai/EmbeddingModel.js.map +1 -1
  704. package/dist/unstable/ai/IdGenerator.d.ts +32 -28
  705. package/dist/unstable/ai/IdGenerator.d.ts.map +1 -1
  706. package/dist/unstable/ai/IdGenerator.js +26 -21
  707. package/dist/unstable/ai/IdGenerator.js.map +1 -1
  708. package/dist/unstable/ai/LanguageModel.d.ts +111 -68
  709. package/dist/unstable/ai/LanguageModel.d.ts.map +1 -1
  710. package/dist/unstable/ai/LanguageModel.js +127 -83
  711. package/dist/unstable/ai/LanguageModel.js.map +1 -1
  712. package/dist/unstable/ai/McpProtocol.d.ts +30 -0
  713. package/dist/unstable/ai/McpProtocol.d.ts.map +1 -0
  714. package/dist/unstable/ai/McpProtocol.js +20 -0
  715. package/dist/unstable/ai/McpProtocol.js.map +1 -0
  716. package/dist/unstable/ai/McpSchema.d.ts +320 -254
  717. package/dist/unstable/ai/McpSchema.d.ts.map +1 -1
  718. package/dist/unstable/ai/McpSchema.js +79 -71
  719. package/dist/unstable/ai/McpSchema.js.map +1 -1
  720. package/dist/unstable/ai/McpServer.d.ts +71 -62
  721. package/dist/unstable/ai/McpServer.d.ts.map +1 -1
  722. package/dist/unstable/ai/McpServer.js +777 -245
  723. package/dist/unstable/ai/McpServer.js.map +1 -1
  724. package/dist/unstable/ai/Model.d.ts +8 -19
  725. package/dist/unstable/ai/Model.d.ts.map +1 -1
  726. package/dist/unstable/ai/Model.js +9 -20
  727. package/dist/unstable/ai/Model.js.map +1 -1
  728. package/dist/unstable/ai/OpenAiStructuredOutput.d.ts +33 -11
  729. package/dist/unstable/ai/OpenAiStructuredOutput.d.ts.map +1 -1
  730. package/dist/unstable/ai/OpenAiStructuredOutput.js +194 -378
  731. package/dist/unstable/ai/OpenAiStructuredOutput.js.map +1 -1
  732. package/dist/unstable/ai/Prompt.d.ts +131 -44
  733. package/dist/unstable/ai/Prompt.d.ts.map +1 -1
  734. package/dist/unstable/ai/Prompt.js +100 -36
  735. package/dist/unstable/ai/Prompt.js.map +1 -1
  736. package/dist/unstable/ai/Response.d.ts +47 -33
  737. package/dist/unstable/ai/Response.d.ts.map +1 -1
  738. package/dist/unstable/ai/Response.js +23 -18
  739. package/dist/unstable/ai/Response.js.map +1 -1
  740. package/dist/unstable/ai/ResponseIdTracker.js.map +1 -1
  741. package/dist/unstable/ai/Telemetry.d.ts +46 -13
  742. package/dist/unstable/ai/Telemetry.d.ts.map +1 -1
  743. package/dist/unstable/ai/Telemetry.js +18 -7
  744. package/dist/unstable/ai/Telemetry.js.map +1 -1
  745. package/dist/unstable/ai/Tokenizer.d.ts +14 -3
  746. package/dist/unstable/ai/Tokenizer.d.ts.map +1 -1
  747. package/dist/unstable/ai/Tokenizer.js +10 -2
  748. package/dist/unstable/ai/Tokenizer.js.map +1 -1
  749. package/dist/unstable/ai/Tool.d.ts +63 -44
  750. package/dist/unstable/ai/Tool.d.ts.map +1 -1
  751. package/dist/unstable/ai/Tool.js +59 -42
  752. package/dist/unstable/ai/Tool.js.map +1 -1
  753. package/dist/unstable/ai/Toolkit.d.ts +35 -9
  754. package/dist/unstable/ai/Toolkit.d.ts.map +1 -1
  755. package/dist/unstable/ai/Toolkit.js +32 -14
  756. package/dist/unstable/ai/Toolkit.js.map +1 -1
  757. package/dist/unstable/ai/index.d.ts +4 -0
  758. package/dist/unstable/ai/index.d.ts.map +1 -1
  759. package/dist/unstable/ai/index.js +4 -0
  760. package/dist/unstable/ai/index.js.map +1 -1
  761. package/dist/unstable/ai/internal/codec-transformer.js +15 -12
  762. package/dist/unstable/ai/internal/codec-transformer.js.map +1 -1
  763. package/dist/unstable/ai/internal/mcpProtocol.d.ts +21 -0
  764. package/dist/unstable/ai/internal/mcpProtocol.d.ts.map +1 -0
  765. package/dist/unstable/ai/internal/mcpProtocol.js +22 -0
  766. package/dist/unstable/ai/internal/mcpProtocol.js.map +1 -0
  767. package/dist/unstable/ai/internal/mcpProtocolRegistry.d.ts +2 -0
  768. package/dist/unstable/ai/internal/mcpProtocolRegistry.d.ts.map +1 -0
  769. package/dist/unstable/ai/internal/mcpProtocolRegistry.js +32 -0
  770. package/dist/unstable/ai/internal/mcpProtocolRegistry.js.map +1 -0
  771. package/dist/unstable/ai/internal/structured-output.d.ts +2 -0
  772. package/dist/unstable/ai/internal/structured-output.d.ts.map +1 -0
  773. package/dist/unstable/ai/internal/structured-output.js +315 -0
  774. package/dist/unstable/ai/internal/structured-output.js.map +1 -0
  775. package/dist/unstable/cli/Argument.d.ts +279 -72
  776. package/dist/unstable/cli/Argument.d.ts.map +1 -1
  777. package/dist/unstable/cli/Argument.js +113 -34
  778. package/dist/unstable/cli/Argument.js.map +1 -1
  779. package/dist/unstable/cli/CliConfig.js.map +1 -1
  780. package/dist/unstable/cli/CliError.d.ts +126 -76
  781. package/dist/unstable/cli/CliError.d.ts.map +1 -1
  782. package/dist/unstable/cli/CliError.js +136 -76
  783. package/dist/unstable/cli/CliError.js.map +1 -1
  784. package/dist/unstable/cli/CliOutput.d.ts +35 -54
  785. package/dist/unstable/cli/CliOutput.d.ts.map +1 -1
  786. package/dist/unstable/cli/CliOutput.js +26 -42
  787. package/dist/unstable/cli/CliOutput.js.map +1 -1
  788. package/dist/unstable/cli/Command.d.ts +736 -115
  789. package/dist/unstable/cli/Command.d.ts.map +1 -1
  790. package/dist/unstable/cli/Command.js +282 -56
  791. package/dist/unstable/cli/Command.js.map +1 -1
  792. package/dist/unstable/cli/Completions.js.map +1 -1
  793. package/dist/unstable/cli/Flag.d.ts +418 -138
  794. package/dist/unstable/cli/Flag.d.ts.map +1 -1
  795. package/dist/unstable/cli/Flag.js +197 -71
  796. package/dist/unstable/cli/Flag.js.map +1 -1
  797. package/dist/unstable/cli/GlobalFlag.d.ts +1 -1
  798. package/dist/unstable/cli/GlobalFlag.js.map +1 -1
  799. package/dist/unstable/cli/HelpDoc.d.ts +12 -4
  800. package/dist/unstable/cli/HelpDoc.d.ts.map +1 -1
  801. package/dist/unstable/cli/Param.d.ts +299 -83
  802. package/dist/unstable/cli/Param.d.ts.map +1 -1
  803. package/dist/unstable/cli/Param.js +146 -60
  804. package/dist/unstable/cli/Param.js.map +1 -1
  805. package/dist/unstable/cli/Primitive.d.ts +370 -149
  806. package/dist/unstable/cli/Primitive.d.ts.map +1 -1
  807. package/dist/unstable/cli/Primitive.js +377 -162
  808. package/dist/unstable/cli/Primitive.js.map +1 -1
  809. package/dist/unstable/cli/Prompt.d.ts +23 -14
  810. package/dist/unstable/cli/Prompt.d.ts.map +1 -1
  811. package/dist/unstable/cli/Prompt.js +54 -31
  812. package/dist/unstable/cli/Prompt.js.map +1 -1
  813. package/dist/unstable/cli/index.js.map +1 -1
  814. package/dist/unstable/cli/internal/ansi.js +2 -2
  815. package/dist/unstable/cli/internal/ansi.js.map +1 -1
  816. package/dist/unstable/cli/internal/auto-suggest.js.map +1 -1
  817. package/dist/unstable/cli/internal/command.d.ts +5 -3
  818. package/dist/unstable/cli/internal/command.d.ts.map +1 -1
  819. package/dist/unstable/cli/internal/command.js +21 -13
  820. package/dist/unstable/cli/internal/command.js.map +1 -1
  821. package/dist/unstable/cli/internal/completions/bash.js +69 -9
  822. package/dist/unstable/cli/internal/completions/bash.js.map +1 -1
  823. package/dist/unstable/cli/internal/completions/descriptor.js +24 -18
  824. package/dist/unstable/cli/internal/completions/descriptor.js.map +1 -1
  825. package/dist/unstable/cli/internal/completions/fish.js +5 -5
  826. package/dist/unstable/cli/internal/completions/fish.js.map +1 -1
  827. package/dist/unstable/cli/internal/completions/zsh.js.map +1 -1
  828. package/dist/unstable/cli/internal/config.d.ts +0 -48
  829. package/dist/unstable/cli/internal/config.d.ts.map +1 -1
  830. package/dist/unstable/cli/internal/config.js +8 -10
  831. package/dist/unstable/cli/internal/config.js.map +1 -1
  832. package/dist/unstable/cli/internal/help.d.ts.map +1 -1
  833. package/dist/unstable/cli/internal/help.js +4 -2
  834. package/dist/unstable/cli/internal/help.js.map +1 -1
  835. package/dist/unstable/cli/internal/lexer.js +17 -7
  836. package/dist/unstable/cli/internal/lexer.js.map +1 -1
  837. package/dist/unstable/cli/internal/parser.js +5 -5
  838. package/dist/unstable/cli/internal/parser.js.map +1 -1
  839. package/dist/unstable/cli/internal/wizard.js +2 -2
  840. package/dist/unstable/cli/internal/wizard.js.map +1 -1
  841. package/dist/unstable/cluster/ClusterCron.js.map +1 -1
  842. package/dist/unstable/cluster/ClusterError.js +7 -7
  843. package/dist/unstable/cluster/ClusterError.js.map +1 -1
  844. package/dist/unstable/cluster/ClusterMetrics.js.map +1 -1
  845. package/dist/unstable/cluster/ClusterSchema.d.ts +8 -8
  846. package/dist/unstable/cluster/ClusterSchema.js +8 -8
  847. package/dist/unstable/cluster/ClusterSchema.js.map +1 -1
  848. package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
  849. package/dist/unstable/cluster/ClusterWorkflowEngine.js +32 -16
  850. package/dist/unstable/cluster/ClusterWorkflowEngine.js.map +1 -1
  851. package/dist/unstable/cluster/DeliverAt.js.map +1 -1
  852. package/dist/unstable/cluster/Entity.d.ts +12 -12
  853. package/dist/unstable/cluster/Entity.d.ts.map +1 -1
  854. package/dist/unstable/cluster/Entity.js +9 -9
  855. package/dist/unstable/cluster/Entity.js.map +1 -1
  856. package/dist/unstable/cluster/EntityAddress.js.map +1 -1
  857. package/dist/unstable/cluster/EntityId.js.map +1 -1
  858. package/dist/unstable/cluster/EntityProxy.d.ts +7 -5
  859. package/dist/unstable/cluster/EntityProxy.d.ts.map +1 -1
  860. package/dist/unstable/cluster/EntityProxy.js +8 -5
  861. package/dist/unstable/cluster/EntityProxy.js.map +1 -1
  862. package/dist/unstable/cluster/EntityProxyServer.js.map +1 -1
  863. package/dist/unstable/cluster/EntityResource.d.ts +2 -2
  864. package/dist/unstable/cluster/EntityResource.js +2 -2
  865. package/dist/unstable/cluster/EntityResource.js.map +1 -1
  866. package/dist/unstable/cluster/EntityType.js.map +1 -1
  867. package/dist/unstable/cluster/Envelope.d.ts +3 -3
  868. package/dist/unstable/cluster/Envelope.d.ts.map +1 -1
  869. package/dist/unstable/cluster/Envelope.js +5 -4
  870. package/dist/unstable/cluster/Envelope.js.map +1 -1
  871. package/dist/unstable/cluster/HttpRunner.d.ts +2 -2
  872. package/dist/unstable/cluster/HttpRunner.d.ts.map +1 -1
  873. package/dist/unstable/cluster/HttpRunner.js +6 -4
  874. package/dist/unstable/cluster/HttpRunner.js.map +1 -1
  875. package/dist/unstable/cluster/K8sHttpClient.js.map +1 -1
  876. package/dist/unstable/cluster/MachineId.js.map +1 -1
  877. package/dist/unstable/cluster/Message.d.ts +9 -9
  878. package/dist/unstable/cluster/Message.js +6 -6
  879. package/dist/unstable/cluster/Message.js.map +1 -1
  880. package/dist/unstable/cluster/MessageStorage.d.ts +15 -15
  881. package/dist/unstable/cluster/MessageStorage.d.ts.map +1 -1
  882. package/dist/unstable/cluster/MessageStorage.js +13 -6
  883. package/dist/unstable/cluster/MessageStorage.js.map +1 -1
  884. package/dist/unstable/cluster/Reply.d.ts +8 -0
  885. package/dist/unstable/cluster/Reply.d.ts.map +1 -1
  886. package/dist/unstable/cluster/Reply.js +17 -5
  887. package/dist/unstable/cluster/Reply.js.map +1 -1
  888. package/dist/unstable/cluster/Runner.d.ts +1 -1
  889. package/dist/unstable/cluster/Runner.js +1 -1
  890. package/dist/unstable/cluster/Runner.js.map +1 -1
  891. package/dist/unstable/cluster/RunnerAddress.d.ts +1 -1
  892. package/dist/unstable/cluster/RunnerAddress.js +1 -1
  893. package/dist/unstable/cluster/RunnerAddress.js.map +1 -1
  894. package/dist/unstable/cluster/RunnerHealth.d.ts +1 -1
  895. package/dist/unstable/cluster/RunnerHealth.js +1 -1
  896. package/dist/unstable/cluster/RunnerHealth.js.map +1 -1
  897. package/dist/unstable/cluster/RunnerServer.d.ts +2 -1
  898. package/dist/unstable/cluster/RunnerServer.d.ts.map +1 -1
  899. package/dist/unstable/cluster/RunnerServer.js +29 -23
  900. package/dist/unstable/cluster/RunnerServer.js.map +1 -1
  901. package/dist/unstable/cluster/RunnerStorage.d.ts +3 -4
  902. package/dist/unstable/cluster/RunnerStorage.d.ts.map +1 -1
  903. package/dist/unstable/cluster/RunnerStorage.js +8 -7
  904. package/dist/unstable/cluster/RunnerStorage.js.map +1 -1
  905. package/dist/unstable/cluster/Runners.d.ts +11 -15
  906. package/dist/unstable/cluster/Runners.d.ts.map +1 -1
  907. package/dist/unstable/cluster/Runners.js +32 -22
  908. package/dist/unstable/cluster/Runners.js.map +1 -1
  909. package/dist/unstable/cluster/ShardId.js +1 -1
  910. package/dist/unstable/cluster/ShardId.js.map +1 -1
  911. package/dist/unstable/cluster/Sharding.d.ts +2 -2
  912. package/dist/unstable/cluster/Sharding.d.ts.map +1 -1
  913. package/dist/unstable/cluster/Sharding.js +164 -31
  914. package/dist/unstable/cluster/Sharding.js.map +1 -1
  915. package/dist/unstable/cluster/ShardingConfig.d.ts +13 -5
  916. package/dist/unstable/cluster/ShardingConfig.d.ts.map +1 -1
  917. package/dist/unstable/cluster/ShardingConfig.js +3 -3
  918. package/dist/unstable/cluster/ShardingConfig.js.map +1 -1
  919. package/dist/unstable/cluster/ShardingRegistrationEvent.js.map +1 -1
  920. package/dist/unstable/cluster/SingleRunner.d.ts +4 -2
  921. package/dist/unstable/cluster/SingleRunner.d.ts.map +1 -1
  922. package/dist/unstable/cluster/SingleRunner.js +2 -1
  923. package/dist/unstable/cluster/SingleRunner.js.map +1 -1
  924. package/dist/unstable/cluster/Singleton.js.map +1 -1
  925. package/dist/unstable/cluster/SingletonAddress.d.ts +1 -1
  926. package/dist/unstable/cluster/SingletonAddress.js +1 -1
  927. package/dist/unstable/cluster/SingletonAddress.js.map +1 -1
  928. package/dist/unstable/cluster/Snowflake.d.ts +8 -8
  929. package/dist/unstable/cluster/Snowflake.js +8 -8
  930. package/dist/unstable/cluster/Snowflake.js.map +1 -1
  931. package/dist/unstable/cluster/SocketRunner.js.map +1 -1
  932. package/dist/unstable/cluster/SqlMessageStorage.d.ts +7 -4
  933. package/dist/unstable/cluster/SqlMessageStorage.d.ts.map +1 -1
  934. package/dist/unstable/cluster/SqlMessageStorage.js +56 -25
  935. package/dist/unstable/cluster/SqlMessageStorage.js.map +1 -1
  936. package/dist/unstable/cluster/SqlRunnerStorage.d.ts.map +1 -1
  937. package/dist/unstable/cluster/SqlRunnerStorage.js +141 -79
  938. package/dist/unstable/cluster/SqlRunnerStorage.js.map +1 -1
  939. package/dist/unstable/cluster/TestRunner.js.map +1 -1
  940. package/dist/unstable/cluster/index.js.map +1 -1
  941. package/dist/unstable/cluster/internal/entityManager.js +25 -13
  942. package/dist/unstable/cluster/internal/entityManager.js.map +1 -1
  943. package/dist/unstable/cluster/internal/entityReaper.js.map +1 -1
  944. package/dist/unstable/cluster/internal/hash.js.map +1 -1
  945. package/dist/unstable/cluster/internal/interruptors.js.map +1 -1
  946. package/dist/unstable/cluster/internal/resourceMap.js +2 -2
  947. package/dist/unstable/cluster/internal/resourceMap.js.map +1 -1
  948. package/dist/unstable/cluster/internal/resourceRef.js +17 -0
  949. package/dist/unstable/cluster/internal/resourceRef.js.map +1 -1
  950. package/dist/unstable/cluster/internal/shardLock.d.ts +2 -0
  951. package/dist/unstable/cluster/internal/shardLock.d.ts.map +1 -0
  952. package/dist/unstable/cluster/internal/shardLock.js +4 -0
  953. package/dist/unstable/cluster/internal/shardLock.js.map +1 -0
  954. package/dist/unstable/devtools/DevTools.js.map +1 -1
  955. package/dist/unstable/devtools/DevToolsClient.d.ts.map +1 -1
  956. package/dist/unstable/devtools/DevToolsClient.js +7 -2
  957. package/dist/unstable/devtools/DevToolsClient.js.map +1 -1
  958. package/dist/unstable/devtools/DevToolsSchema.d.ts +20 -20
  959. package/dist/unstable/devtools/DevToolsSchema.d.ts.map +1 -1
  960. package/dist/unstable/devtools/DevToolsSchema.js +8 -5
  961. package/dist/unstable/devtools/DevToolsSchema.js.map +1 -1
  962. package/dist/unstable/devtools/DevToolsServer.js.map +1 -1
  963. package/dist/unstable/devtools/index.js.map +1 -1
  964. package/dist/unstable/encoding/Ini.d.ts +20 -0
  965. package/dist/unstable/encoding/Ini.d.ts.map +1 -0
  966. package/dist/unstable/encoding/Ini.js +153 -0
  967. package/dist/unstable/encoding/Ini.js.map +1 -0
  968. package/dist/unstable/encoding/Msgpack.d.ts +2 -1
  969. package/dist/unstable/encoding/Msgpack.d.ts.map +1 -1
  970. package/dist/unstable/encoding/Msgpack.js +31 -19
  971. package/dist/unstable/encoding/Msgpack.js.map +1 -1
  972. package/dist/unstable/encoding/Ndjson.d.ts.map +1 -1
  973. package/dist/unstable/encoding/Ndjson.js +7 -1
  974. package/dist/unstable/encoding/Ndjson.js.map +1 -1
  975. package/dist/unstable/encoding/Sse.d.ts +72 -8
  976. package/dist/unstable/encoding/Sse.d.ts.map +1 -1
  977. package/dist/unstable/encoding/Sse.js +72 -31
  978. package/dist/unstable/encoding/Sse.js.map +1 -1
  979. package/dist/unstable/encoding/Toml.d.ts +19 -0
  980. package/dist/unstable/encoding/Toml.d.ts.map +1 -0
  981. package/dist/unstable/encoding/Toml.js +434 -0
  982. package/dist/unstable/encoding/Toml.js.map +1 -0
  983. package/dist/unstable/encoding/Yaml.d.ts +19 -0
  984. package/dist/unstable/encoding/Yaml.d.ts.map +1 -0
  985. package/dist/unstable/encoding/Yaml.js +461 -0
  986. package/dist/unstable/encoding/Yaml.js.map +1 -0
  987. package/dist/unstable/encoding/index.d.ts +12 -0
  988. package/dist/unstable/encoding/index.d.ts.map +1 -1
  989. package/dist/unstable/encoding/index.js +12 -0
  990. package/dist/unstable/encoding/index.js.map +1 -1
  991. package/dist/unstable/eventlog/Event.d.ts +20 -20
  992. package/dist/unstable/eventlog/Event.js.map +1 -1
  993. package/dist/unstable/eventlog/EventGroup.d.ts +4 -4
  994. package/dist/unstable/eventlog/EventGroup.js.map +1 -1
  995. package/dist/unstable/eventlog/EventJournal.d.ts +17 -17
  996. package/dist/unstable/eventlog/EventJournal.d.ts.map +1 -1
  997. package/dist/unstable/eventlog/EventJournal.js +27 -19
  998. package/dist/unstable/eventlog/EventJournal.js.map +1 -1
  999. package/dist/unstable/eventlog/EventLog.d.ts +3 -3
  1000. package/dist/unstable/eventlog/EventLog.d.ts.map +1 -1
  1001. package/dist/unstable/eventlog/EventLog.js +18 -14
  1002. package/dist/unstable/eventlog/EventLog.js.map +1 -1
  1003. package/dist/unstable/eventlog/EventLogEncryption.d.ts +8 -7
  1004. package/dist/unstable/eventlog/EventLogEncryption.d.ts.map +1 -1
  1005. package/dist/unstable/eventlog/EventLogEncryption.js +16 -14
  1006. package/dist/unstable/eventlog/EventLogEncryption.js.map +1 -1
  1007. package/dist/unstable/eventlog/EventLogMessage.d.ts +31 -31
  1008. package/dist/unstable/eventlog/EventLogMessage.d.ts.map +1 -1
  1009. package/dist/unstable/eventlog/EventLogMessage.js +12 -8
  1010. package/dist/unstable/eventlog/EventLogMessage.js.map +1 -1
  1011. package/dist/unstable/eventlog/EventLogRemote.d.ts +15 -15
  1012. package/dist/unstable/eventlog/EventLogRemote.js +5 -5
  1013. package/dist/unstable/eventlog/EventLogRemote.js.map +1 -1
  1014. package/dist/unstable/eventlog/EventLogServer.d.ts +11 -2
  1015. package/dist/unstable/eventlog/EventLogServer.d.ts.map +1 -1
  1016. package/dist/unstable/eventlog/EventLogServer.js +45 -21
  1017. package/dist/unstable/eventlog/EventLogServer.js.map +1 -1
  1018. package/dist/unstable/eventlog/EventLogServerEncrypted.d.ts +4 -4
  1019. package/dist/unstable/eventlog/EventLogServerEncrypted.d.ts.map +1 -1
  1020. package/dist/unstable/eventlog/EventLogServerEncrypted.js +16 -7
  1021. package/dist/unstable/eventlog/EventLogServerEncrypted.js.map +1 -1
  1022. package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts +5 -5
  1023. package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts.map +1 -1
  1024. package/dist/unstable/eventlog/EventLogServerUnencrypted.js +15 -7
  1025. package/dist/unstable/eventlog/EventLogServerUnencrypted.js.map +1 -1
  1026. package/dist/unstable/eventlog/EventLogSessionAuth.d.ts +1 -1
  1027. package/dist/unstable/eventlog/EventLogSessionAuth.js +1 -1
  1028. package/dist/unstable/eventlog/EventLogSessionAuth.js.map +1 -1
  1029. package/dist/unstable/eventlog/SqlEventJournal.d.ts.map +1 -1
  1030. package/dist/unstable/eventlog/SqlEventJournal.js +3 -6
  1031. package/dist/unstable/eventlog/SqlEventJournal.js.map +1 -1
  1032. package/dist/unstable/eventlog/SqlEventLogServerEncrypted.js +1 -1
  1033. package/dist/unstable/eventlog/SqlEventLogServerEncrypted.js.map +1 -1
  1034. package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.js +3 -3
  1035. package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.js.map +1 -1
  1036. package/dist/unstable/eventlog/index.js.map +1 -1
  1037. package/dist/unstable/eventlog/internal/identityRootSecretDerivation.js.map +1 -1
  1038. package/dist/unstable/http/Cookies.d.ts +2 -2
  1039. package/dist/unstable/http/Cookies.d.ts.map +1 -1
  1040. package/dist/unstable/http/Cookies.js +54 -40
  1041. package/dist/unstable/http/Cookies.js.map +1 -1
  1042. package/dist/unstable/http/Etag.d.ts +1 -1
  1043. package/dist/unstable/http/Etag.js +1 -1
  1044. package/dist/unstable/http/Etag.js.map +1 -1
  1045. package/dist/unstable/http/FetchHttpClient.d.ts.map +1 -1
  1046. package/dist/unstable/http/FetchHttpClient.js.map +1 -1
  1047. package/dist/unstable/http/FindMyWay/internal/queryString.d.ts +11 -0
  1048. package/dist/unstable/http/FindMyWay/internal/queryString.d.ts.map +1 -0
  1049. package/dist/unstable/http/FindMyWay/internal/queryString.js +259 -0
  1050. package/dist/unstable/http/FindMyWay/internal/queryString.js.map +1 -0
  1051. package/dist/unstable/http/FindMyWay/internal/router.d.ts +2 -0
  1052. package/dist/unstable/http/FindMyWay/internal/router.d.ts.map +1 -0
  1053. package/dist/unstable/http/FindMyWay/internal/router.js +665 -0
  1054. package/dist/unstable/http/FindMyWay/internal/router.js.map +1 -0
  1055. package/dist/unstable/http/FindMyWay.d.ts +33 -8
  1056. package/dist/unstable/http/FindMyWay.d.ts.map +1 -1
  1057. package/dist/unstable/http/FindMyWay.js +4 -7
  1058. package/dist/unstable/http/FindMyWay.js.map +1 -1
  1059. package/dist/unstable/http/Headers.d.ts +2 -2
  1060. package/dist/unstable/http/Headers.js +10 -10
  1061. package/dist/unstable/http/Headers.js.map +1 -1
  1062. package/dist/unstable/http/HttpBody.d.ts +5 -3
  1063. package/dist/unstable/http/HttpBody.d.ts.map +1 -1
  1064. package/dist/unstable/http/HttpBody.js +11 -5
  1065. package/dist/unstable/http/HttpBody.js.map +1 -1
  1066. package/dist/unstable/http/HttpClient.d.ts +110 -47
  1067. package/dist/unstable/http/HttpClient.d.ts.map +1 -1
  1068. package/dist/unstable/http/HttpClient.js +79 -36
  1069. package/dist/unstable/http/HttpClient.js.map +1 -1
  1070. package/dist/unstable/http/HttpClientError.js +1 -1
  1071. package/dist/unstable/http/HttpClientError.js.map +1 -1
  1072. package/dist/unstable/http/HttpClientRequest.d.ts +44 -0
  1073. package/dist/unstable/http/HttpClientRequest.d.ts.map +1 -1
  1074. package/dist/unstable/http/HttpClientRequest.js +16 -12
  1075. package/dist/unstable/http/HttpClientRequest.js.map +1 -1
  1076. package/dist/unstable/http/HttpClientResponse.d.ts +4 -4
  1077. package/dist/unstable/http/HttpClientResponse.js +3 -18
  1078. package/dist/unstable/http/HttpClientResponse.js.map +1 -1
  1079. package/dist/unstable/http/HttpEffect.d.ts +7 -9
  1080. package/dist/unstable/http/HttpEffect.d.ts.map +1 -1
  1081. package/dist/unstable/http/HttpEffect.js +7 -8
  1082. package/dist/unstable/http/HttpEffect.js.map +1 -1
  1083. package/dist/unstable/http/HttpIncomingMessage.js.map +1 -1
  1084. package/dist/unstable/http/HttpMethod.d.ts +6 -9
  1085. package/dist/unstable/http/HttpMethod.d.ts.map +1 -1
  1086. package/dist/unstable/http/HttpMethod.js +6 -9
  1087. package/dist/unstable/http/HttpMethod.js.map +1 -1
  1088. package/dist/unstable/http/HttpMiddleware.d.ts +75 -9
  1089. package/dist/unstable/http/HttpMiddleware.d.ts.map +1 -1
  1090. package/dist/unstable/http/HttpMiddleware.js +164 -39
  1091. package/dist/unstable/http/HttpMiddleware.js.map +1 -1
  1092. package/dist/unstable/http/HttpPlatform.d.ts +76 -0
  1093. package/dist/unstable/http/HttpPlatform.d.ts.map +1 -1
  1094. package/dist/unstable/http/HttpPlatform.js +53 -3
  1095. package/dist/unstable/http/HttpPlatform.js.map +1 -1
  1096. package/dist/unstable/http/HttpRouter.d.ts +91 -92
  1097. package/dist/unstable/http/HttpRouter.d.ts.map +1 -1
  1098. package/dist/unstable/http/HttpRouter.js +78 -79
  1099. package/dist/unstable/http/HttpRouter.js.map +1 -1
  1100. package/dist/unstable/http/HttpServer.d.ts +13 -13
  1101. package/dist/unstable/http/HttpServer.js +6 -6
  1102. package/dist/unstable/http/HttpServer.js.map +1 -1
  1103. package/dist/unstable/http/HttpServerError.d.ts +2 -2
  1104. package/dist/unstable/http/HttpServerError.js +2 -2
  1105. package/dist/unstable/http/HttpServerError.js.map +1 -1
  1106. package/dist/unstable/http/HttpServerRequest.d.ts +4 -4
  1107. package/dist/unstable/http/HttpServerRequest.d.ts.map +1 -1
  1108. package/dist/unstable/http/HttpServerRequest.js +23 -15
  1109. package/dist/unstable/http/HttpServerRequest.js.map +1 -1
  1110. package/dist/unstable/http/HttpServerRespondable.js.map +1 -1
  1111. package/dist/unstable/http/HttpServerResponse.d.ts +22 -0
  1112. package/dist/unstable/http/HttpServerResponse.d.ts.map +1 -1
  1113. package/dist/unstable/http/HttpServerResponse.js +17 -5
  1114. package/dist/unstable/http/HttpServerResponse.js.map +1 -1
  1115. package/dist/unstable/http/HttpStaticServer.d.ts +35 -7
  1116. package/dist/unstable/http/HttpStaticServer.d.ts.map +1 -1
  1117. package/dist/unstable/http/HttpStaticServer.js +35 -7
  1118. package/dist/unstable/http/HttpStaticServer.js.map +1 -1
  1119. package/dist/unstable/http/HttpTraceContext.js.map +1 -1
  1120. package/dist/unstable/http/Multipart.d.ts +28 -9
  1121. package/dist/unstable/http/Multipart.d.ts.map +1 -1
  1122. package/dist/unstable/http/Multipart.js +65 -35
  1123. package/dist/unstable/http/Multipart.js.map +1 -1
  1124. package/dist/unstable/http/MultipartParser/HeadersParser.d.ts +53 -0
  1125. package/dist/unstable/http/MultipartParser/HeadersParser.d.ts.map +1 -0
  1126. package/dist/unstable/http/MultipartParser/HeadersParser.js +14 -0
  1127. package/dist/unstable/http/MultipartParser/HeadersParser.js.map +1 -0
  1128. package/dist/unstable/http/MultipartParser/Search.d.ts +11 -0
  1129. package/dist/unstable/http/MultipartParser/Search.d.ts.map +1 -0
  1130. package/dist/unstable/http/MultipartParser/Search.js +14 -0
  1131. package/dist/unstable/http/MultipartParser/Search.js.map +1 -0
  1132. package/dist/unstable/http/MultipartParser/internal/contentType.d.ts +5 -0
  1133. package/dist/unstable/http/MultipartParser/internal/contentType.d.ts.map +1 -0
  1134. package/dist/unstable/http/MultipartParser/internal/contentType.js +82 -0
  1135. package/dist/unstable/http/MultipartParser/internal/contentType.js.map +1 -0
  1136. package/dist/unstable/http/MultipartParser/internal/headers.d.ts +3 -0
  1137. package/dist/unstable/http/MultipartParser/internal/headers.d.ts.map +1 -0
  1138. package/dist/unstable/http/MultipartParser/internal/headers.js +208 -0
  1139. package/dist/unstable/http/MultipartParser/internal/headers.js.map +1 -0
  1140. package/dist/unstable/http/MultipartParser/internal/multipart.d.ts +8 -0
  1141. package/dist/unstable/http/MultipartParser/internal/multipart.d.ts.map +1 -0
  1142. package/dist/unstable/http/MultipartParser/internal/multipart.js +241 -0
  1143. package/dist/unstable/http/MultipartParser/internal/multipart.js.map +1 -0
  1144. package/dist/unstable/http/MultipartParser/internal/search.d.ts +5 -0
  1145. package/dist/unstable/http/MultipartParser/internal/search.d.ts.map +1 -0
  1146. package/dist/unstable/http/MultipartParser/internal/search.js +120 -0
  1147. package/dist/unstable/http/MultipartParser/internal/search.js.map +1 -0
  1148. package/dist/unstable/http/MultipartParser.d.ts +98 -0
  1149. package/dist/unstable/http/MultipartParser.d.ts.map +1 -0
  1150. package/dist/unstable/http/MultipartParser.js +23 -0
  1151. package/dist/unstable/http/MultipartParser.js.map +1 -0
  1152. package/dist/unstable/http/Template.d.ts.map +1 -1
  1153. package/dist/unstable/http/Template.js +3 -3
  1154. package/dist/unstable/http/Template.js.map +1 -1
  1155. package/dist/unstable/http/Url.d.ts +33 -63
  1156. package/dist/unstable/http/Url.d.ts.map +1 -1
  1157. package/dist/unstable/http/Url.js +14 -28
  1158. package/dist/unstable/http/Url.js.map +1 -1
  1159. package/dist/unstable/http/UrlParams.d.ts +10 -18
  1160. package/dist/unstable/http/UrlParams.d.ts.map +1 -1
  1161. package/dist/unstable/http/UrlParams.js +26 -31
  1162. package/dist/unstable/http/UrlParams.js.map +1 -1
  1163. package/dist/unstable/http/index.d.ts +1 -1
  1164. package/dist/unstable/http/index.d.ts.map +1 -1
  1165. package/dist/unstable/http/index.js +1 -1
  1166. package/dist/unstable/http/index.js.map +1 -1
  1167. package/dist/unstable/http/internal/compression.d.ts +2 -0
  1168. package/dist/unstable/http/internal/compression.d.ts.map +1 -0
  1169. package/dist/unstable/http/internal/compression.js +155 -0
  1170. package/dist/unstable/http/internal/compression.js.map +1 -0
  1171. package/dist/unstable/http/internal/httpBody.d.ts +2 -0
  1172. package/dist/unstable/http/internal/httpBody.d.ts.map +1 -0
  1173. package/dist/unstable/http/internal/httpBody.js +10 -0
  1174. package/dist/unstable/http/internal/httpBody.js.map +1 -0
  1175. package/dist/unstable/http/internal/preResponseHandler.js.map +1 -1
  1176. package/dist/unstable/httpapi/HttpApi.d.ts.map +1 -1
  1177. package/dist/unstable/httpapi/HttpApi.js +9 -9
  1178. package/dist/unstable/httpapi/HttpApi.js.map +1 -1
  1179. package/dist/unstable/httpapi/HttpApiBuilder.d.ts +1 -1
  1180. package/dist/unstable/httpapi/HttpApiBuilder.d.ts.map +1 -1
  1181. package/dist/unstable/httpapi/HttpApiBuilder.js +82 -30
  1182. package/dist/unstable/httpapi/HttpApiBuilder.js.map +1 -1
  1183. package/dist/unstable/httpapi/HttpApiClient.d.ts +4 -5
  1184. package/dist/unstable/httpapi/HttpApiClient.d.ts.map +1 -1
  1185. package/dist/unstable/httpapi/HttpApiClient.js +89 -51
  1186. package/dist/unstable/httpapi/HttpApiClient.js.map +1 -1
  1187. package/dist/unstable/httpapi/HttpApiEndpoint.d.ts +48 -46
  1188. package/dist/unstable/httpapi/HttpApiEndpoint.d.ts.map +1 -1
  1189. package/dist/unstable/httpapi/HttpApiEndpoint.js +73 -16
  1190. package/dist/unstable/httpapi/HttpApiEndpoint.js.map +1 -1
  1191. package/dist/unstable/httpapi/HttpApiError.d.ts +18 -18
  1192. package/dist/unstable/httpapi/HttpApiError.d.ts.map +1 -1
  1193. package/dist/unstable/httpapi/HttpApiError.js +30 -30
  1194. package/dist/unstable/httpapi/HttpApiError.js.map +1 -1
  1195. package/dist/unstable/httpapi/HttpApiGroup.d.ts +15 -15
  1196. package/dist/unstable/httpapi/HttpApiGroup.js +2 -2
  1197. package/dist/unstable/httpapi/HttpApiGroup.js.map +1 -1
  1198. package/dist/unstable/httpapi/HttpApiMiddleware.d.ts +71 -24
  1199. package/dist/unstable/httpapi/HttpApiMiddleware.d.ts.map +1 -1
  1200. package/dist/unstable/httpapi/HttpApiMiddleware.js +57 -10
  1201. package/dist/unstable/httpapi/HttpApiMiddleware.js.map +1 -1
  1202. package/dist/unstable/httpapi/HttpApiScalar.d.ts +0 -12
  1203. package/dist/unstable/httpapi/HttpApiScalar.d.ts.map +1 -1
  1204. package/dist/unstable/httpapi/HttpApiScalar.js.map +1 -1
  1205. package/dist/unstable/httpapi/HttpApiSchema.d.ts +225 -6
  1206. package/dist/unstable/httpapi/HttpApiSchema.d.ts.map +1 -1
  1207. package/dist/unstable/httpapi/HttpApiSchema.js +174 -4
  1208. package/dist/unstable/httpapi/HttpApiSchema.js.map +1 -1
  1209. package/dist/unstable/httpapi/HttpApiSecurity.js.map +1 -1
  1210. package/dist/unstable/httpapi/HttpApiSwagger.js.map +1 -1
  1211. package/dist/unstable/httpapi/HttpApiTest.js.map +1 -1
  1212. package/dist/unstable/httpapi/OpenApi.d.ts +21 -13
  1213. package/dist/unstable/httpapi/OpenApi.d.ts.map +1 -1
  1214. package/dist/unstable/httpapi/OpenApi.js +110 -57
  1215. package/dist/unstable/httpapi/OpenApi.js.map +1 -1
  1216. package/dist/unstable/httpapi/index.js.map +1 -1
  1217. package/dist/unstable/httpapi/internal/html.js.map +1 -1
  1218. package/dist/unstable/httpapi/internal/httpApiScalar.js.map +1 -1
  1219. package/dist/unstable/httpapi/internal/httpApiSwagger.js.map +1 -1
  1220. package/dist/unstable/httpapi/internal/mediaType.js.map +1 -1
  1221. package/dist/unstable/observability/Otlp.js.map +1 -1
  1222. package/dist/unstable/observability/OtlpExporter.d.ts +71 -2
  1223. package/dist/unstable/observability/OtlpExporter.d.ts.map +1 -1
  1224. package/dist/unstable/observability/OtlpExporter.js +86 -7
  1225. package/dist/unstable/observability/OtlpExporter.js.map +1 -1
  1226. package/dist/unstable/observability/OtlpLogger.d.ts +4 -3
  1227. package/dist/unstable/observability/OtlpLogger.d.ts.map +1 -1
  1228. package/dist/unstable/observability/OtlpLogger.js +4 -4
  1229. package/dist/unstable/observability/OtlpLogger.js.map +1 -1
  1230. package/dist/unstable/observability/OtlpMetrics.d.ts +11 -4
  1231. package/dist/unstable/observability/OtlpMetrics.d.ts.map +1 -1
  1232. package/dist/unstable/observability/OtlpMetrics.js +31 -15
  1233. package/dist/unstable/observability/OtlpMetrics.js.map +1 -1
  1234. package/dist/unstable/observability/OtlpResource.d.ts +16 -7
  1235. package/dist/unstable/observability/OtlpResource.d.ts.map +1 -1
  1236. package/dist/unstable/observability/OtlpResource.js +21 -12
  1237. package/dist/unstable/observability/OtlpResource.js.map +1 -1
  1238. package/dist/unstable/observability/OtlpSerialization.js.map +1 -1
  1239. package/dist/unstable/observability/OtlpTracer.d.ts +4 -3
  1240. package/dist/unstable/observability/OtlpTracer.d.ts.map +1 -1
  1241. package/dist/unstable/observability/OtlpTracer.js +3 -3
  1242. package/dist/unstable/observability/OtlpTracer.js.map +1 -1
  1243. package/dist/unstable/observability/PrometheusMetrics.d.ts +13 -4
  1244. package/dist/unstable/observability/PrometheusMetrics.d.ts.map +1 -1
  1245. package/dist/unstable/observability/PrometheusMetrics.js +10 -3
  1246. package/dist/unstable/observability/PrometheusMetrics.js.map +1 -1
  1247. package/dist/unstable/observability/index.js.map +1 -1
  1248. package/dist/unstable/observability/internal/otlpEnv.js +1 -1
  1249. package/dist/unstable/observability/internal/otlpEnv.js.map +1 -1
  1250. package/dist/unstable/observability/internal/otlpProtobuf.js.map +1 -1
  1251. package/dist/unstable/observability/internal/protobuf.js +3 -0
  1252. package/dist/unstable/observability/internal/protobuf.js.map +1 -1
  1253. package/dist/unstable/persistence/KeyValueStore.d.ts +8 -3
  1254. package/dist/unstable/persistence/KeyValueStore.d.ts.map +1 -1
  1255. package/dist/unstable/persistence/KeyValueStore.js +22 -13
  1256. package/dist/unstable/persistence/KeyValueStore.js.map +1 -1
  1257. package/dist/unstable/persistence/Persistable.d.ts +8 -8
  1258. package/dist/unstable/persistence/Persistable.d.ts.map +1 -1
  1259. package/dist/unstable/persistence/Persistable.js +2 -1
  1260. package/dist/unstable/persistence/Persistable.js.map +1 -1
  1261. package/dist/unstable/persistence/PersistedCache.js.map +1 -1
  1262. package/dist/unstable/persistence/PersistedQueue.d.ts +6 -6
  1263. package/dist/unstable/persistence/PersistedQueue.d.ts.map +1 -1
  1264. package/dist/unstable/persistence/PersistedQueue.js +15 -15
  1265. package/dist/unstable/persistence/PersistedQueue.js.map +1 -1
  1266. package/dist/unstable/persistence/Persistence.d.ts +3 -3
  1267. package/dist/unstable/persistence/Persistence.d.ts.map +1 -1
  1268. package/dist/unstable/persistence/Persistence.js +108 -22
  1269. package/dist/unstable/persistence/Persistence.js.map +1 -1
  1270. package/dist/unstable/persistence/RateLimiter.d.ts +47 -26
  1271. package/dist/unstable/persistence/RateLimiter.d.ts.map +1 -1
  1272. package/dist/unstable/persistence/RateLimiter.js +31 -47
  1273. package/dist/unstable/persistence/RateLimiter.js.map +1 -1
  1274. package/dist/unstable/persistence/Redis.d.ts +2 -2
  1275. package/dist/unstable/persistence/Redis.d.ts.map +1 -1
  1276. package/dist/unstable/persistence/Redis.js +4 -4
  1277. package/dist/unstable/persistence/Redis.js.map +1 -1
  1278. package/dist/unstable/persistence/index.js.map +1 -1
  1279. package/dist/unstable/process/ChildProcess.d.ts +72 -21
  1280. package/dist/unstable/process/ChildProcess.d.ts.map +1 -1
  1281. package/dist/unstable/process/ChildProcess.js +14 -5
  1282. package/dist/unstable/process/ChildProcess.js.map +1 -1
  1283. package/dist/unstable/process/ChildProcessSpawner.d.ts +21 -10
  1284. package/dist/unstable/process/ChildProcessSpawner.d.ts.map +1 -1
  1285. package/dist/unstable/process/ChildProcessSpawner.js +4 -2
  1286. package/dist/unstable/process/ChildProcessSpawner.js.map +1 -1
  1287. package/dist/unstable/process/index.js.map +1 -1
  1288. package/dist/unstable/reactivity/AsyncResult.d.ts +8 -8
  1289. package/dist/unstable/reactivity/AsyncResult.d.ts.map +1 -1
  1290. package/dist/unstable/reactivity/AsyncResult.js +14 -13
  1291. package/dist/unstable/reactivity/AsyncResult.js.map +1 -1
  1292. package/dist/unstable/reactivity/Atom.d.ts +131 -30
  1293. package/dist/unstable/reactivity/Atom.d.ts.map +1 -1
  1294. package/dist/unstable/reactivity/Atom.js +53 -34
  1295. package/dist/unstable/reactivity/Atom.js.map +1 -1
  1296. package/dist/unstable/reactivity/AtomHttpApi.d.ts +1 -1
  1297. package/dist/unstable/reactivity/AtomHttpApi.d.ts.map +1 -1
  1298. package/dist/unstable/reactivity/AtomHttpApi.js +4 -1
  1299. package/dist/unstable/reactivity/AtomHttpApi.js.map +1 -1
  1300. package/dist/unstable/reactivity/AtomRef.js.map +1 -1
  1301. package/dist/unstable/reactivity/AtomRegistry.js +25 -4
  1302. package/dist/unstable/reactivity/AtomRegistry.js.map +1 -1
  1303. package/dist/unstable/reactivity/AtomRpc.d.ts +1 -1
  1304. package/dist/unstable/reactivity/AtomRpc.d.ts.map +1 -1
  1305. package/dist/unstable/reactivity/AtomRpc.js +4 -1
  1306. package/dist/unstable/reactivity/AtomRpc.js.map +1 -1
  1307. package/dist/unstable/reactivity/Hydration.d.ts +1 -1
  1308. package/dist/unstable/reactivity/Hydration.js +1 -1
  1309. package/dist/unstable/reactivity/Hydration.js.map +1 -1
  1310. package/dist/unstable/reactivity/Reactivity.js.map +1 -1
  1311. package/dist/unstable/reactivity/index.js.map +1 -1
  1312. package/dist/unstable/rpc/Rpc.d.ts +35 -33
  1313. package/dist/unstable/rpc/Rpc.d.ts.map +1 -1
  1314. package/dist/unstable/rpc/Rpc.js +4 -2
  1315. package/dist/unstable/rpc/Rpc.js.map +1 -1
  1316. package/dist/unstable/rpc/RpcClient.d.ts +26 -12
  1317. package/dist/unstable/rpc/RpcClient.d.ts.map +1 -1
  1318. package/dist/unstable/rpc/RpcClient.js +40 -22
  1319. package/dist/unstable/rpc/RpcClient.js.map +1 -1
  1320. package/dist/unstable/rpc/RpcClientError.js +2 -2
  1321. package/dist/unstable/rpc/RpcClientError.js.map +1 -1
  1322. package/dist/unstable/rpc/RpcGroup.d.ts +8 -8
  1323. package/dist/unstable/rpc/RpcGroup.js +1 -1
  1324. package/dist/unstable/rpc/RpcGroup.js.map +1 -1
  1325. package/dist/unstable/rpc/RpcMessage.d.ts +31 -30
  1326. package/dist/unstable/rpc/RpcMessage.d.ts.map +1 -1
  1327. package/dist/unstable/rpc/RpcMessage.js +6 -6
  1328. package/dist/unstable/rpc/RpcMessage.js.map +1 -1
  1329. package/dist/unstable/rpc/RpcMiddleware.d.ts +10 -10
  1330. package/dist/unstable/rpc/RpcMiddleware.js +1 -1
  1331. package/dist/unstable/rpc/RpcMiddleware.js.map +1 -1
  1332. package/dist/unstable/rpc/RpcSchema.d.ts +4 -4
  1333. package/dist/unstable/rpc/RpcSchema.js +3 -3
  1334. package/dist/unstable/rpc/RpcSchema.js.map +1 -1
  1335. package/dist/unstable/rpc/RpcSerialization.d.ts +58 -7
  1336. package/dist/unstable/rpc/RpcSerialization.d.ts.map +1 -1
  1337. package/dist/unstable/rpc/RpcSerialization.js +177 -96
  1338. package/dist/unstable/rpc/RpcSerialization.js.map +1 -1
  1339. package/dist/unstable/rpc/RpcServer.d.ts +13 -13
  1340. package/dist/unstable/rpc/RpcServer.d.ts.map +1 -1
  1341. package/dist/unstable/rpc/RpcServer.js +20 -15
  1342. package/dist/unstable/rpc/RpcServer.js.map +1 -1
  1343. package/dist/unstable/rpc/RpcTest.js.map +1 -1
  1344. package/dist/unstable/rpc/RpcWorker.d.ts +5 -5
  1345. package/dist/unstable/rpc/RpcWorker.js +4 -4
  1346. package/dist/unstable/rpc/RpcWorker.js.map +1 -1
  1347. package/dist/unstable/rpc/Utils.js.map +1 -1
  1348. package/dist/unstable/rpc/index.js.map +1 -1
  1349. package/dist/unstable/schema/Model.d.ts +53 -51
  1350. package/dist/unstable/schema/Model.d.ts.map +1 -1
  1351. package/dist/unstable/schema/Model.js +35 -33
  1352. package/dist/unstable/schema/Model.js.map +1 -1
  1353. package/dist/unstable/schema/VariantSchema.d.ts +11 -12
  1354. package/dist/unstable/schema/VariantSchema.d.ts.map +1 -1
  1355. package/dist/unstable/schema/VariantSchema.js +28 -17
  1356. package/dist/unstable/schema/VariantSchema.js.map +1 -1
  1357. package/dist/unstable/schema/index.js.map +1 -1
  1358. package/dist/unstable/socket/Socket.d.ts +12 -4
  1359. package/dist/unstable/socket/Socket.d.ts.map +1 -1
  1360. package/dist/unstable/socket/Socket.js +38 -17
  1361. package/dist/unstable/socket/Socket.js.map +1 -1
  1362. package/dist/unstable/socket/SocketServer.js.map +1 -1
  1363. package/dist/unstable/socket/index.js.map +1 -1
  1364. package/dist/unstable/sql/Migrator.d.ts +9 -1
  1365. package/dist/unstable/sql/Migrator.d.ts.map +1 -1
  1366. package/dist/unstable/sql/Migrator.js +15 -2
  1367. package/dist/unstable/sql/Migrator.js.map +1 -1
  1368. package/dist/unstable/sql/SqlClient.d.ts +1 -1
  1369. package/dist/unstable/sql/SqlClient.d.ts.map +1 -1
  1370. package/dist/unstable/sql/SqlClient.js +8 -4
  1371. package/dist/unstable/sql/SqlClient.js.map +1 -1
  1372. package/dist/unstable/sql/SqlConnection.js.map +1 -1
  1373. package/dist/unstable/sql/SqlError.d.ts +2 -2
  1374. package/dist/unstable/sql/SqlError.js +15 -15
  1375. package/dist/unstable/sql/SqlError.js.map +1 -1
  1376. package/dist/unstable/sql/SqlModel.d.ts +2 -2
  1377. package/dist/unstable/sql/SqlModel.js +2 -2
  1378. package/dist/unstable/sql/SqlModel.js.map +1 -1
  1379. package/dist/unstable/sql/SqlResolver.d.ts +5 -5
  1380. package/dist/unstable/sql/SqlResolver.d.ts.map +1 -1
  1381. package/dist/unstable/sql/SqlResolver.js +30 -24
  1382. package/dist/unstable/sql/SqlResolver.js.map +1 -1
  1383. package/dist/unstable/sql/SqlSchema.js.map +1 -1
  1384. package/dist/unstable/sql/SqlStream.js.map +1 -1
  1385. package/dist/unstable/sql/Statement.d.ts +6 -6
  1386. package/dist/unstable/sql/Statement.d.ts.map +1 -1
  1387. package/dist/unstable/sql/Statement.js +30 -27
  1388. package/dist/unstable/sql/Statement.js.map +1 -1
  1389. package/dist/unstable/sql/index.js.map +1 -1
  1390. package/dist/unstable/workers/Transferable.d.ts +1 -1
  1391. package/dist/unstable/workers/Transferable.js +1 -1
  1392. package/dist/unstable/workers/Transferable.js.map +1 -1
  1393. package/dist/unstable/workers/Worker.d.ts +2 -2
  1394. package/dist/unstable/workers/Worker.d.ts.map +1 -1
  1395. package/dist/unstable/workers/Worker.js +13 -14
  1396. package/dist/unstable/workers/Worker.js.map +1 -1
  1397. package/dist/unstable/workers/WorkerError.d.ts +7 -7
  1398. package/dist/unstable/workers/WorkerError.js +11 -11
  1399. package/dist/unstable/workers/WorkerError.js.map +1 -1
  1400. package/dist/unstable/workers/WorkerRunner.d.ts +1 -1
  1401. package/dist/unstable/workers/WorkerRunner.js +1 -1
  1402. package/dist/unstable/workers/WorkerRunner.js.map +1 -1
  1403. package/dist/unstable/workers/index.js.map +1 -1
  1404. package/dist/unstable/workflow/Activity.d.ts +2 -2
  1405. package/dist/unstable/workflow/Activity.js +2 -2
  1406. package/dist/unstable/workflow/Activity.js.map +1 -1
  1407. package/dist/unstable/workflow/DurableClock.d.ts +1 -1
  1408. package/dist/unstable/workflow/DurableClock.js +1 -1
  1409. package/dist/unstable/workflow/DurableClock.js.map +1 -1
  1410. package/dist/unstable/workflow/DurableDeferred.d.ts +10 -10
  1411. package/dist/unstable/workflow/DurableDeferred.d.ts.map +1 -1
  1412. package/dist/unstable/workflow/DurableDeferred.js +13 -8
  1413. package/dist/unstable/workflow/DurableDeferred.js.map +1 -1
  1414. package/dist/unstable/workflow/DurableQueue.d.ts +22 -20
  1415. package/dist/unstable/workflow/DurableQueue.d.ts.map +1 -1
  1416. package/dist/unstable/workflow/DurableQueue.js +22 -20
  1417. package/dist/unstable/workflow/DurableQueue.js.map +1 -1
  1418. package/dist/unstable/workflow/Workflow.d.ts +21 -21
  1419. package/dist/unstable/workflow/Workflow.d.ts.map +1 -1
  1420. package/dist/unstable/workflow/Workflow.js +13 -14
  1421. package/dist/unstable/workflow/Workflow.js.map +1 -1
  1422. package/dist/unstable/workflow/WorkflowEngine.d.ts +26 -3
  1423. package/dist/unstable/workflow/WorkflowEngine.d.ts.map +1 -1
  1424. package/dist/unstable/workflow/WorkflowEngine.js +72 -6
  1425. package/dist/unstable/workflow/WorkflowEngine.js.map +1 -1
  1426. package/dist/unstable/workflow/WorkflowProxy.d.ts +4 -2
  1427. package/dist/unstable/workflow/WorkflowProxy.d.ts.map +1 -1
  1428. package/dist/unstable/workflow/WorkflowProxy.js +4 -2
  1429. package/dist/unstable/workflow/WorkflowProxy.js.map +1 -1
  1430. package/dist/unstable/workflow/WorkflowProxyServer.js.map +1 -1
  1431. package/dist/unstable/workflow/index.js.map +1 -1
  1432. package/dist/unstable/workflow/internal/crypto.js.map +1 -1
  1433. package/package.json +10 -14
  1434. package/src/Array.ts +1068 -1070
  1435. package/src/BigDecimal.ts +433 -756
  1436. package/src/BigInt.ts +213 -269
  1437. package/src/Boolean.ts +146 -188
  1438. package/src/Brand.ts +4 -4
  1439. package/src/Cache.ts +469 -851
  1440. package/src/Cause.ts +167 -277
  1441. package/src/Channel.ts +982 -831
  1442. package/src/ChannelSchema.ts +1 -1
  1443. package/src/Chunk.ts +841 -1181
  1444. package/src/Clock.ts +181 -49
  1445. package/src/Combiner.ts +20 -33
  1446. package/src/Config.ts +642 -335
  1447. package/src/ConfigProvider.ts +267 -135
  1448. package/src/Console.ts +289 -39
  1449. package/src/Context.ts +323 -404
  1450. package/src/Cron.ts +271 -219
  1451. package/src/Crypto.ts +30 -23
  1452. package/src/Data.ts +63 -82
  1453. package/src/DateTime.ts +564 -660
  1454. package/src/Deferred.ts +259 -258
  1455. package/src/Duration.ts +244 -311
  1456. package/src/Effect.ts +3215 -3394
  1457. package/src/Encoding.ts +22 -40
  1458. package/src/Equal.ts +59 -41
  1459. package/src/Equivalence.ts +103 -105
  1460. package/src/ErrorReporter.ts +51 -27
  1461. package/src/ExecutionPlan.ts +91 -56
  1462. package/src/Exit.ts +116 -192
  1463. package/src/Fiber.ts +82 -149
  1464. package/src/FiberHandle.ts +155 -107
  1465. package/src/FiberMap.ts +225 -174
  1466. package/src/FiberSet.ts +125 -83
  1467. package/src/FileSystem.ts +156 -264
  1468. package/src/Filter.ts +61 -33
  1469. package/src/Formatter.ts +69 -76
  1470. package/src/Function.ts +119 -151
  1471. package/src/Graph.ts +416 -770
  1472. package/src/HKT.ts +12 -6
  1473. package/src/Hash.ts +52 -83
  1474. package/src/HashMap.ts +319 -411
  1475. package/src/HashRing.ts +1 -0
  1476. package/src/HashSet.ts +177 -284
  1477. package/src/Inspectable.ts +22 -20
  1478. package/src/Iterable.ts +633 -797
  1479. package/src/JsonPatch.ts +60 -113
  1480. package/src/JsonPointer.ts +8 -8
  1481. package/src/JsonSchema.ts +408 -251
  1482. package/src/Latch.ts +23 -35
  1483. package/src/Layer.ts +366 -265
  1484. package/src/LayerMap.ts +49 -29
  1485. package/src/LayerRef.ts +6 -2
  1486. package/src/LogLevel.ts +114 -214
  1487. package/src/Logger.ts +348 -700
  1488. package/src/ManagedRuntime.ts +20 -5
  1489. package/src/Match.ts +217 -252
  1490. package/src/Metric.ts +520 -1092
  1491. package/src/MutableHashMap.ts +218 -255
  1492. package/src/MutableHashSet.ts +84 -89
  1493. package/src/MutableList.ts +77 -370
  1494. package/src/MutableRef.ts +420 -243
  1495. package/src/Newtype.ts +21 -14
  1496. package/src/NonEmptyIterable.ts +7 -137
  1497. package/src/Number.ts +196 -233
  1498. package/src/Optic.ts +303 -441
  1499. package/src/Option.ts +449 -813
  1500. package/src/Order.ts +109 -109
  1501. package/src/Ordering.ts +20 -23
  1502. package/src/PartitionedSemaphore.ts +1 -4
  1503. package/src/Path.ts +38 -41
  1504. package/src/Pipeable.ts +6 -5
  1505. package/src/PlatformError.ts +4 -4
  1506. package/src/Pool.ts +4 -2
  1507. package/src/Predicate.ts +200 -181
  1508. package/src/PrimaryKey.ts +7 -7
  1509. package/src/PubSub.ts +526 -552
  1510. package/src/Pull.ts +24 -18
  1511. package/src/Queue.ts +204 -165
  1512. package/src/Random.ts +49 -74
  1513. package/src/RcMap.ts +121 -63
  1514. package/src/RcRef.ts +24 -13
  1515. package/src/Record.ts +387 -487
  1516. package/src/Redactable.ts +10 -3
  1517. package/src/Redacted.ts +25 -25
  1518. package/src/Reducer.ts +8 -15
  1519. package/src/Ref.ts +221 -361
  1520. package/src/References.ts +102 -214
  1521. package/src/RegExp.ts +10 -14
  1522. package/src/Request.ts +36 -28
  1523. package/src/RequestResolver.ts +202 -91
  1524. package/src/Result.ts +314 -485
  1525. package/src/Runtime.ts +50 -75
  1526. package/src/Schedule.ts +311 -1737
  1527. package/src/Scheduler.ts +20 -7
  1528. package/src/Schema.ts +3475 -1913
  1529. package/src/SchemaAST.ts +902 -573
  1530. package/src/SchemaGetter.ts +351 -233
  1531. package/src/SchemaIssue.ts +367 -334
  1532. package/src/SchemaParser.ts +254 -148
  1533. package/src/SchemaRepresentation.ts +732 -3414
  1534. package/src/SchemaTransformation.ts +186 -97
  1535. package/src/Scope.ts +123 -151
  1536. package/src/ScopedCache.ts +1 -1
  1537. package/src/ScopedRef.ts +6 -4
  1538. package/src/Semaphore.ts +157 -54
  1539. package/src/Sink.ts +129 -114
  1540. package/src/Stdio.ts +24 -5
  1541. package/src/Stream.ts +2745 -3173
  1542. package/src/String.ts +275 -312
  1543. package/src/Struct.ts +114 -118
  1544. package/src/SubscriptionRef.ts +284 -252
  1545. package/src/Symbol.ts +3 -3
  1546. package/src/SynchronizedRef.ts +1 -1
  1547. package/src/Terminal.ts +3 -3
  1548. package/src/Tracer.ts +102 -55
  1549. package/src/Trie.ts +287 -679
  1550. package/src/Tuple.ts +99 -131
  1551. package/src/TxChunk.ts +201 -121
  1552. package/src/TxDeferred.ts +62 -46
  1553. package/src/TxHashMap.ts +645 -799
  1554. package/src/TxHashSet.ts +443 -356
  1555. package/src/TxPriorityQueue.ts +130 -98
  1556. package/src/TxPubSub.ts +107 -80
  1557. package/src/TxQueue.ts +215 -184
  1558. package/src/TxReentrantLock.ts +136 -101
  1559. package/src/TxRef.ts +51 -32
  1560. package/src/TxSemaphore.ts +129 -95
  1561. package/src/TxSubscriptionRef.ts +97 -70
  1562. package/src/Types.ts +127 -70
  1563. package/src/Unify.ts +45 -65
  1564. package/src/Utils.ts +23 -16
  1565. package/src/index.ts +0 -10
  1566. package/src/internal/core.ts +6 -5
  1567. package/src/internal/dateTime.ts +7 -1
  1568. package/src/internal/effect.ts +304 -134
  1569. package/src/internal/executionPlan.ts +106 -10
  1570. package/src/internal/hashMap.ts +20 -14
  1571. package/src/internal/matcher.ts +3 -3
  1572. package/src/internal/persistence.ts +2 -0
  1573. package/src/internal/rcRef.ts +24 -16
  1574. package/src/internal/record.ts +11 -7
  1575. package/src/internal/references.ts +3 -7
  1576. package/src/internal/schedule.ts +4 -4
  1577. package/src/internal/schema/annotations.ts +48 -1
  1578. package/src/internal/schema/fromJsonSchemaDocument.ts +977 -0
  1579. package/src/internal/schema/fromRepresentation.ts +339 -0
  1580. package/src/internal/schema/parser.ts +22 -0
  1581. package/src/internal/schema/schema.ts +46 -63
  1582. package/src/internal/schema/{arbitrary.ts → toArbitrary.ts} +9 -81
  1583. package/src/internal/schema/toCodeDocument.ts +572 -0
  1584. package/src/internal/schema/{equivalence.ts → toEquivalence.ts} +12 -7
  1585. package/src/internal/schema/toJsonSchemaDocument.ts +549 -0
  1586. package/src/internal/schema/toRepresentation.ts +404 -0
  1587. package/src/internal/stackTraceLimit.ts +3 -7
  1588. package/src/internal/trie.ts +21 -12
  1589. package/src/testing/FastCheck.ts +8 -7
  1590. package/src/testing/TestClock.ts +86 -32
  1591. package/src/testing/TestConsole.ts +32 -31
  1592. package/src/testing/TestSchema.ts +40 -40
  1593. package/src/unstable/ai/AiError.ts +119 -141
  1594. package/src/unstable/ai/AnthropicStructuredOutput.ts +103 -334
  1595. package/src/unstable/ai/Chat.ts +133 -98
  1596. package/src/unstable/ai/EmbeddingModel.ts +1 -1
  1597. package/src/unstable/ai/IdGenerator.ts +32 -28
  1598. package/src/unstable/ai/LanguageModel.ts +141 -97
  1599. package/src/unstable/ai/McpProtocol.ts +48 -0
  1600. package/src/unstable/ai/McpSchema.ts +92 -81
  1601. package/src/unstable/ai/McpServer.ts +1057 -303
  1602. package/src/unstable/ai/Model.ts +9 -20
  1603. package/src/unstable/ai/OpenAiStructuredOutput.ts +231 -396
  1604. package/src/unstable/ai/Prompt.ts +212 -63
  1605. package/src/unstable/ai/Response.ts +52 -38
  1606. package/src/unstable/ai/Telemetry.ts +46 -13
  1607. package/src/unstable/ai/Tokenizer.ts +14 -3
  1608. package/src/unstable/ai/Tool.ts +81 -48
  1609. package/src/unstable/ai/Toolkit.ts +45 -15
  1610. package/src/unstable/ai/index.ts +5 -0
  1611. package/src/unstable/ai/internal/codec-transformer.ts +13 -7
  1612. package/src/unstable/ai/internal/mcpProtocol.ts +85 -0
  1613. package/src/unstable/ai/internal/mcpProtocolRegistry.ts +70 -0
  1614. package/src/unstable/ai/internal/structured-output.ts +453 -0
  1615. package/src/unstable/cli/Argument.ts +279 -72
  1616. package/src/unstable/cli/CliError.ts +159 -91
  1617. package/src/unstable/cli/CliOutput.ts +44 -58
  1618. package/src/unstable/cli/Command.ts +764 -124
  1619. package/src/unstable/cli/Flag.ts +418 -138
  1620. package/src/unstable/cli/GlobalFlag.ts +1 -1
  1621. package/src/unstable/cli/HelpDoc.ts +12 -4
  1622. package/src/unstable/cli/Param.ts +336 -100
  1623. package/src/unstable/cli/Primitive.ts +383 -156
  1624. package/src/unstable/cli/Prompt.ts +64 -34
  1625. package/src/unstable/cli/internal/ansi.ts +2 -2
  1626. package/src/unstable/cli/internal/command.ts +28 -15
  1627. package/src/unstable/cli/internal/completions/bash.ts +59 -9
  1628. package/src/unstable/cli/internal/completions/descriptor.ts +14 -20
  1629. package/src/unstable/cli/internal/completions/fish.ts +5 -7
  1630. package/src/unstable/cli/internal/config.ts +8 -10
  1631. package/src/unstable/cli/internal/help.ts +4 -2
  1632. package/src/unstable/cli/internal/lexer.ts +8 -2
  1633. package/src/unstable/cli/internal/parser.ts +5 -5
  1634. package/src/unstable/cli/internal/wizard.ts +2 -2
  1635. package/src/unstable/cluster/ClusterError.ts +7 -7
  1636. package/src/unstable/cluster/ClusterSchema.ts +8 -8
  1637. package/src/unstable/cluster/ClusterWorkflowEngine.ts +36 -20
  1638. package/src/unstable/cluster/Entity.ts +23 -19
  1639. package/src/unstable/cluster/EntityProxy.ts +16 -7
  1640. package/src/unstable/cluster/EntityResource.ts +2 -2
  1641. package/src/unstable/cluster/Envelope.ts +5 -4
  1642. package/src/unstable/cluster/HttpRunner.ts +6 -4
  1643. package/src/unstable/cluster/Message.ts +9 -9
  1644. package/src/unstable/cluster/MessageStorage.ts +24 -20
  1645. package/src/unstable/cluster/Reply.ts +26 -7
  1646. package/src/unstable/cluster/Runner.ts +1 -1
  1647. package/src/unstable/cluster/RunnerAddress.ts +1 -1
  1648. package/src/unstable/cluster/RunnerHealth.ts +1 -1
  1649. package/src/unstable/cluster/RunnerServer.ts +45 -18
  1650. package/src/unstable/cluster/RunnerStorage.ts +11 -9
  1651. package/src/unstable/cluster/Runners.ts +48 -26
  1652. package/src/unstable/cluster/ShardId.ts +1 -1
  1653. package/src/unstable/cluster/Sharding.ts +223 -55
  1654. package/src/unstable/cluster/ShardingConfig.ts +8 -4
  1655. package/src/unstable/cluster/SingleRunner.ts +4 -2
  1656. package/src/unstable/cluster/SingletonAddress.ts +1 -1
  1657. package/src/unstable/cluster/Snowflake.ts +8 -8
  1658. package/src/unstable/cluster/SqlMessageStorage.ts +84 -36
  1659. package/src/unstable/cluster/SqlRunnerStorage.ts +223 -133
  1660. package/src/unstable/cluster/internal/entityManager.ts +43 -26
  1661. package/src/unstable/cluster/internal/resourceMap.ts +5 -2
  1662. package/src/unstable/cluster/internal/resourceRef.ts +27 -5
  1663. package/src/unstable/cluster/internal/shardLock.ts +9 -0
  1664. package/src/unstable/devtools/DevToolsClient.ts +3 -2
  1665. package/src/unstable/devtools/DevToolsSchema.ts +10 -5
  1666. package/src/unstable/encoding/Ini.ts +174 -0
  1667. package/src/unstable/encoding/Msgpack.ts +61 -40
  1668. package/src/unstable/encoding/Ndjson.ts +9 -1
  1669. package/src/unstable/encoding/Sse.ts +109 -37
  1670. package/src/unstable/encoding/Toml.ts +504 -0
  1671. package/src/unstable/encoding/Yaml.ts +541 -0
  1672. package/src/unstable/encoding/index.ts +15 -0
  1673. package/src/unstable/eventlog/Event.ts +20 -20
  1674. package/src/unstable/eventlog/EventGroup.ts +4 -4
  1675. package/src/unstable/eventlog/EventJournal.ts +30 -22
  1676. package/src/unstable/eventlog/EventLog.ts +24 -14
  1677. package/src/unstable/eventlog/EventLogEncryption.ts +17 -18
  1678. package/src/unstable/eventlog/EventLogMessage.ts +15 -9
  1679. package/src/unstable/eventlog/EventLogRemote.ts +5 -5
  1680. package/src/unstable/eventlog/EventLogServer.ts +41 -7
  1681. package/src/unstable/eventlog/EventLogServerEncrypted.ts +15 -7
  1682. package/src/unstable/eventlog/EventLogServerUnencrypted.ts +15 -7
  1683. package/src/unstable/eventlog/EventLogSessionAuth.ts +1 -1
  1684. package/src/unstable/eventlog/SqlEventJournal.ts +8 -6
  1685. package/src/unstable/eventlog/SqlEventLogServerEncrypted.ts +1 -1
  1686. package/src/unstable/eventlog/SqlEventLogServerUnencrypted.ts +6 -3
  1687. package/src/unstable/http/Cookies.ts +64 -45
  1688. package/src/unstable/http/Etag.ts +1 -1
  1689. package/src/unstable/http/FetchHttpClient.ts +3 -1
  1690. package/src/unstable/http/FindMyWay/internal/queryString.ts +420 -0
  1691. package/src/unstable/http/FindMyWay/internal/router.ts +950 -0
  1692. package/src/unstable/http/FindMyWay.ts +65 -6
  1693. package/src/unstable/http/Headers.ts +10 -10
  1694. package/src/unstable/http/HttpBody.ts +20 -5
  1695. package/src/unstable/http/HttpClient.ts +215 -78
  1696. package/src/unstable/http/HttpClientError.ts +1 -1
  1697. package/src/unstable/http/HttpClientRequest.ts +59 -12
  1698. package/src/unstable/http/HttpClientResponse.ts +5 -21
  1699. package/src/unstable/http/HttpEffect.ts +20 -19
  1700. package/src/unstable/http/HttpMethod.ts +6 -9
  1701. package/src/unstable/http/HttpMiddleware.ts +202 -39
  1702. package/src/unstable/http/HttpPlatform.ts +129 -6
  1703. package/src/unstable/http/HttpRouter.ts +109 -101
  1704. package/src/unstable/http/HttpServer.ts +13 -13
  1705. package/src/unstable/http/HttpServerError.ts +2 -2
  1706. package/src/unstable/http/HttpServerRequest.ts +31 -17
  1707. package/src/unstable/http/HttpServerResponse.ts +38 -6
  1708. package/src/unstable/http/HttpStaticServer.ts +35 -7
  1709. package/src/unstable/http/Multipart.ts +67 -36
  1710. package/src/unstable/http/MultipartParser/HeadersParser.ts +68 -0
  1711. package/src/unstable/http/MultipartParser/Search.ts +17 -0
  1712. package/src/unstable/http/MultipartParser/internal/contentType.ts +103 -0
  1713. package/src/unstable/http/MultipartParser/internal/headers.ts +244 -0
  1714. package/src/unstable/http/MultipartParser/internal/multipart.ts +279 -0
  1715. package/src/unstable/http/MultipartParser/internal/search.ts +167 -0
  1716. package/src/unstable/http/MultipartParser.ts +115 -0
  1717. package/src/unstable/http/Template.ts +7 -6
  1718. package/src/unstable/http/Url.ts +33 -63
  1719. package/src/unstable/http/UrlParams.ts +27 -32
  1720. package/src/unstable/http/index.ts +1 -1
  1721. package/src/unstable/http/internal/compression.ts +196 -0
  1722. package/src/unstable/http/internal/httpBody.ts +15 -0
  1723. package/src/unstable/httpapi/HttpApi.ts +10 -11
  1724. package/src/unstable/httpapi/HttpApiBuilder.ts +154 -33
  1725. package/src/unstable/httpapi/HttpApiClient.ts +142 -61
  1726. package/src/unstable/httpapi/HttpApiEndpoint.ts +159 -71
  1727. package/src/unstable/httpapi/HttpApiError.ts +46 -52
  1728. package/src/unstable/httpapi/HttpApiGroup.ts +17 -17
  1729. package/src/unstable/httpapi/HttpApiMiddleware.ts +71 -24
  1730. package/src/unstable/httpapi/HttpApiScalar.ts +0 -12
  1731. package/src/unstable/httpapi/HttpApiSchema.ts +359 -6
  1732. package/src/unstable/httpapi/OpenApi.ts +153 -62
  1733. package/src/unstable/observability/OtlpExporter.ts +130 -12
  1734. package/src/unstable/observability/OtlpLogger.ts +8 -6
  1735. package/src/unstable/observability/OtlpMetrics.ts +42 -21
  1736. package/src/unstable/observability/OtlpResource.ts +26 -17
  1737. package/src/unstable/observability/OtlpTracer.ts +9 -5
  1738. package/src/unstable/observability/PrometheusMetrics.ts +13 -4
  1739. package/src/unstable/observability/internal/otlpEnv.ts +1 -1
  1740. package/src/unstable/observability/internal/protobuf.ts +3 -0
  1741. package/src/unstable/persistence/KeyValueStore.ts +72 -49
  1742. package/src/unstable/persistence/Persistable.ts +11 -10
  1743. package/src/unstable/persistence/PersistedQueue.ts +18 -15
  1744. package/src/unstable/persistence/Persistence.ts +153 -26
  1745. package/src/unstable/persistence/RateLimiter.ts +79 -45
  1746. package/src/unstable/persistence/Redis.ts +5 -5
  1747. package/src/unstable/process/ChildProcess.ts +72 -21
  1748. package/src/unstable/process/ChildProcessSpawner.ts +22 -11
  1749. package/src/unstable/reactivity/AsyncResult.ts +23 -18
  1750. package/src/unstable/reactivity/Atom.ts +161 -47
  1751. package/src/unstable/reactivity/AtomHttpApi.ts +5 -4
  1752. package/src/unstable/reactivity/AtomRegistry.ts +25 -4
  1753. package/src/unstable/reactivity/AtomRpc.ts +5 -4
  1754. package/src/unstable/reactivity/Hydration.ts +1 -1
  1755. package/src/unstable/rpc/Rpc.ts +35 -33
  1756. package/src/unstable/rpc/RpcClient.ts +65 -29
  1757. package/src/unstable/rpc/RpcClientError.ts +2 -2
  1758. package/src/unstable/rpc/RpcGroup.ts +8 -8
  1759. package/src/unstable/rpc/RpcMessage.ts +31 -30
  1760. package/src/unstable/rpc/RpcMiddleware.ts +10 -10
  1761. package/src/unstable/rpc/RpcSchema.ts +4 -4
  1762. package/src/unstable/rpc/RpcSerialization.ts +167 -68
  1763. package/src/unstable/rpc/RpcServer.ts +22 -17
  1764. package/src/unstable/rpc/RpcWorker.ts +5 -5
  1765. package/src/unstable/schema/Model.ts +52 -50
  1766. package/src/unstable/schema/VariantSchema.ts +51 -43
  1767. package/src/unstable/socket/Socket.ts +42 -19
  1768. package/src/unstable/sql/Migrator.ts +22 -9
  1769. package/src/unstable/sql/SqlClient.ts +64 -56
  1770. package/src/unstable/sql/SqlError.ts +15 -15
  1771. package/src/unstable/sql/SqlModel.ts +2 -2
  1772. package/src/unstable/sql/SqlResolver.ts +41 -31
  1773. package/src/unstable/sql/Statement.ts +44 -37
  1774. package/src/unstable/workers/Transferable.ts +1 -1
  1775. package/src/unstable/workers/Worker.ts +15 -16
  1776. package/src/unstable/workers/WorkerError.ts +12 -12
  1777. package/src/unstable/workers/WorkerRunner.ts +1 -1
  1778. package/src/unstable/workflow/Activity.ts +2 -2
  1779. package/src/unstable/workflow/DurableClock.ts +1 -1
  1780. package/src/unstable/workflow/DurableDeferred.ts +18 -13
  1781. package/src/unstable/workflow/DurableQueue.ts +22 -20
  1782. package/src/unstable/workflow/Workflow.ts +23 -26
  1783. package/src/unstable/workflow/WorkflowEngine.ts +111 -8
  1784. package/src/unstable/workflow/WorkflowProxy.ts +4 -2
  1785. package/dist/SchemaError.d.ts +0 -53
  1786. package/dist/SchemaError.d.ts.map +0 -1
  1787. package/dist/SchemaError.js +0 -61
  1788. package/dist/SchemaError.js.map +0 -1
  1789. package/dist/SchemaUtils.d.ts +0 -28
  1790. package/dist/SchemaUtils.d.ts.map +0 -1
  1791. package/dist/SchemaUtils.js +0 -45
  1792. package/dist/SchemaUtils.js.map +0 -1
  1793. package/dist/internal/schema/arbitrary.d.ts +0 -5
  1794. package/dist/internal/schema/arbitrary.d.ts.map +0 -1
  1795. package/dist/internal/schema/arbitrary.js.map +0 -1
  1796. package/dist/internal/schema/equivalence.d.ts +0 -2
  1797. package/dist/internal/schema/equivalence.d.ts.map +0 -1
  1798. package/dist/internal/schema/equivalence.js.map +0 -1
  1799. package/dist/internal/schema/representation.d.ts +0 -2
  1800. package/dist/internal/schema/representation.d.ts.map +0 -1
  1801. package/dist/internal/schema/representation.js +0 -865
  1802. package/dist/internal/schema/representation.js.map +0 -1
  1803. package/dist/internal/version.d.ts +0 -3
  1804. package/dist/internal/version.d.ts.map +0 -1
  1805. package/dist/internal/version.js +0 -2
  1806. package/dist/internal/version.js.map +0 -1
  1807. package/dist/unstable/http/Multipasta/HeadersParser.d.ts +0 -14
  1808. package/dist/unstable/http/Multipasta/HeadersParser.d.ts.map +0 -1
  1809. package/dist/unstable/http/Multipasta/HeadersParser.js +0 -14
  1810. package/dist/unstable/http/Multipasta/HeadersParser.js.map +0 -1
  1811. package/dist/unstable/http/Multipasta/Node.d.ts +0 -14
  1812. package/dist/unstable/http/Multipasta/Node.d.ts.map +0 -1
  1813. package/dist/unstable/http/Multipasta/Node.js +0 -14
  1814. package/dist/unstable/http/Multipasta/Node.js.map +0 -1
  1815. package/dist/unstable/http/Multipasta/Search.d.ts +0 -14
  1816. package/dist/unstable/http/Multipasta/Search.d.ts.map +0 -1
  1817. package/dist/unstable/http/Multipasta/Search.js +0 -14
  1818. package/dist/unstable/http/Multipasta/Search.js.map +0 -1
  1819. package/dist/unstable/http/Multipasta/Web.d.ts +0 -14
  1820. package/dist/unstable/http/Multipasta/Web.d.ts.map +0 -1
  1821. package/dist/unstable/http/Multipasta/Web.js +0 -14
  1822. package/dist/unstable/http/Multipasta/Web.js.map +0 -1
  1823. package/dist/unstable/http/Multipasta.d.ts +0 -15
  1824. package/dist/unstable/http/Multipasta.d.ts.map +0 -1
  1825. package/dist/unstable/http/Multipasta.js +0 -15
  1826. package/dist/unstable/http/Multipasta.js.map +0 -1
  1827. package/src/SchemaError.ts +0 -64
  1828. package/src/SchemaUtils.ts +0 -51
  1829. package/src/internal/schema/representation.ts +0 -795
  1830. package/src/internal/version.ts +0 -2
  1831. package/src/unstable/http/Multipasta/HeadersParser.ts +0 -14
  1832. package/src/unstable/http/Multipasta/Node.ts +0 -14
  1833. package/src/unstable/http/Multipasta/Search.ts +0 -14
  1834. package/src/unstable/http/Multipasta/Web.ts +0 -14
  1835. package/src/unstable/http/Multipasta.ts +0 -15
package/src/Optic.ts CHANGED
@@ -12,14 +12,14 @@
12
12
  * @since 4.0.0
13
13
  */
14
14
 
15
- import { format } from "./Formatter.ts"
16
- import { identity, memoize } from "./Function.ts"
15
+ import { identity } from "./Function.ts"
16
+ import * as InternalRecord from "./internal/record.ts"
17
17
  import * as Option from "./Option.ts"
18
18
  import * as Predicate from "./Predicate.ts"
19
19
  import * as Result from "./Result.ts"
20
20
  import type * as Schema from "./Schema.ts"
21
21
  import * as SchemaAST from "./SchemaAST.ts"
22
- import type * as SchemaIssue from "./SchemaIssue.ts"
22
+ import * as SchemaIssue from "./SchemaIssue.ts"
23
23
  import * as Struct from "./Struct.ts"
24
24
  import type { IsUnion } from "./Types.ts"
25
25
 
@@ -41,7 +41,7 @@ import type { IsUnion } from "./Types.ts"
41
41
  *
42
42
  * **Example** (Converting between Celsius and Fahrenheit)
43
43
  *
44
- * ```ts
44
+ * ```ts import.meta.vitest
45
45
  * import { Optic } from "effect"
46
46
  *
47
47
  * const fahrenheit = Optic.makeIso<number, number>(
@@ -49,18 +49,16 @@ import type { IsUnion } from "./Types.ts"
49
49
  * (f) => (f - 32) * 5 / 9
50
50
  * )
51
51
  *
52
- * console.log(fahrenheit.get(100))
53
- * // Output: 212
52
+ * fahrenheit.get(100) // => 212
54
53
  *
55
- * console.log(fahrenheit.set(32))
56
- * // Output: 0
54
+ * fahrenheit.set(32) // => 0
57
55
  * ```
58
56
  *
59
57
  * @see {@link makeIso} — constructor
60
58
  * @see {@link Lens} — when you only need a one-directional focus into a whole
61
59
  * @see {@link Prism} — when the focus may not be present
62
60
  *
63
- * @category Iso
61
+ * @category models
64
62
  * @since 4.0.0
65
63
  */
66
64
  export interface Iso<in out S, in out A> extends Lens<S, A>, Prism<S, A> {}
@@ -79,7 +77,7 @@ export interface Iso<in out S, in out A> extends Lens<S, A>, Prism<S, A> {}
79
77
  *
80
78
  * **Example** (Wrapping and unwrapping a branded type)
81
79
  *
82
- * ```ts
80
+ * ```ts import.meta.vitest
83
81
  * import { Optic } from "effect"
84
82
  *
85
83
  * type Meters = { readonly value: number }
@@ -88,11 +86,9 @@ export interface Iso<in out S, in out A> extends Lens<S, A>, Prism<S, A> {}
88
86
  * (n) => ({ value: n })
89
87
  * )
90
88
  *
91
- * console.log(meters.get({ value: 100 }))
92
- * // Output: 100
89
+ * meters.get({ value: 100 }) // => 100
93
90
  *
94
- * console.log(meters.set(42))
95
- * // Output: { value: 42 }
91
+ * meters.set(42) // => { value: 42 }
96
92
  * ```
97
93
  *
98
94
  * @see {@link Iso} — the type this function returns
@@ -102,7 +98,7 @@ export interface Iso<in out S, in out A> extends Lens<S, A>, Prism<S, A> {}
102
98
  * @since 4.0.0
103
99
  */
104
100
  export function makeIso<S, A>(get: (s: S) => A, set: (a: A) => S): Iso<S, A> {
105
- return make(new IsoNode(get, set))
101
+ return make(primitiveNode("Iso", get, set))
106
102
  }
107
103
 
108
104
  /**
@@ -123,22 +119,21 @@ export function makeIso<S, A>(get: (s: S) => A, set: (a: A) => S): Iso<S, A> {
123
119
  *
124
120
  * **Example** (Focusing on a struct field)
125
121
  *
126
- * ```ts
122
+ * ```ts import.meta.vitest
127
123
  * import { Optic } from "effect"
128
124
  *
129
125
  * type Person = { readonly name: string; readonly age: number }
130
126
  *
131
127
  * const _name = Optic.id<Person>().key("name")
132
128
  *
133
- * console.log(_name.get({ name: "Alice", age: 30 }))
134
- * // Output: "Alice"
129
+ * _name.get({ name: "Alice", age: 30 }) // => "Alice"
135
130
  * ```
136
131
  *
137
132
  * @see {@link makeLens} — constructor
138
133
  * @see {@link Iso} — when conversion is lossless in both directions
139
134
  * @see {@link Optional} — when reading can also fail
140
135
  *
141
- * @category Lens
136
+ * @category models
142
137
  * @since 4.0.0
143
138
  */
144
139
  export interface Lens<in out S, in out A> extends Optional<S, A> {
@@ -160,7 +155,7 @@ export interface Lens<in out S, in out A> extends Optional<S, A> {
160
155
  *
161
156
  * **Example** (Focusing on the first element of a pair)
162
157
  *
163
- * ```ts
158
+ * ```ts import.meta.vitest
164
159
  * import { Optic } from "effect"
165
160
  *
166
161
  * const _first = Optic.makeLens<readonly [string, number], string>(
@@ -168,11 +163,9 @@ export interface Lens<in out S, in out A> extends Optional<S, A> {
168
163
  * (s, pair) => [s, pair[1]]
169
164
  * )
170
165
  *
171
- * console.log(_first.get(["hello", 42]))
172
- * // Output: "hello"
166
+ * _first.get(["hello", 42]) // => "hello"
173
167
  *
174
- * console.log(_first.replace("world", ["hello", 42]))
175
- * // Output: ["world", 42]
168
+ * _first.replace("world", ["hello", 42]) // => ["world", 42]
176
169
  * ```
177
170
  *
178
171
  * @see {@link Lens} — the type this function returns
@@ -182,7 +175,7 @@ export interface Lens<in out S, in out A> extends Optional<S, A> {
182
175
  * @since 4.0.0
183
176
  */
184
177
  export function makeLens<S, A>(get: (s: S) => A, replace: (a: A, s: S) => S): Lens<S, A> {
185
- return make(new LensNode(get, replace))
178
+ return make(primitiveNode("Lens", get, replace))
186
179
  }
187
180
 
188
181
  /**
@@ -198,7 +191,7 @@ export function makeLens<S, A>(get: (s: S) => A, replace: (a: A, s: S) => S): Le
198
191
  * **Details**
199
192
  *
200
193
  * - `getResult(s)` returns `Result.Success<A>` when the focus matches, or
201
- * `Result.Failure<string>` with an error message.
194
+ * `Result.Failure<SchemaIssue.Issue>` with a structured issue.
202
195
  * - `set(a)` always succeeds and returns a new `S`.
203
196
  * - Extends {@link Optional}.
204
197
  * - Composing two Prisms produces a Prism; composing a Prism with a
@@ -206,7 +199,7 @@ export function makeLens<S, A>(get: (s: S) => A, replace: (a: A, s: S) => S): Le
206
199
  *
207
200
  * **Example** (Narrowing a tagged union)
208
201
  *
209
- * ```ts
202
+ * ```ts import.meta.vitest
210
203
  * import { Optic, Result } from "effect"
211
204
  *
212
205
  * type Shape =
@@ -215,18 +208,16 @@ export function makeLens<S, A>(get: (s: S) => A, replace: (a: A, s: S) => S): Le
215
208
  *
216
209
  * const _circle = Optic.id<Shape>().tag("Circle")
217
210
  *
218
- * console.log(Result.isSuccess(_circle.getResult({ _tag: "Circle", radius: 5 })))
219
- * // Output: true
211
+ * _circle.getResult({ _tag: "Circle", radius: 5 }) // => Result.succeed({ _tag: "Circle", radius: 5 })
220
212
  *
221
- * console.log(Result.isFailure(_circle.getResult({ _tag: "Rect", width: 10 })))
222
- * // Output: true
213
+ * Result.isFailure(_circle.getResult({ _tag: "Rect", width: 10 })) // => true
223
214
  * ```
224
215
  *
225
216
  * @see {@link makePrism} — constructor
226
217
  * @see {@link fromChecks} — build a Prism from schema checks
227
218
  * @see {@link Lens} — when reading always succeeds
228
219
  *
229
- * @category Prism
220
+ * @category models
230
221
  * @since 4.0.0
231
222
  */
232
223
  export interface Prism<in out S, in out A> extends Optional<S, A> {
@@ -243,26 +234,27 @@ export interface Prism<in out S, in out A> extends Optional<S, A> {
243
234
  *
244
235
  * **Details**
245
236
  *
246
- * - `getResult` should return `Result.fail(message)` on mismatch.
237
+ * - `getResult` should return `Result.fail(issue)` on mismatch.
238
+ * - Issues are not formatted automatically; callers choose how to render them.
247
239
  *
248
240
  * **Example** (Parsing a string to a number)
249
241
  *
250
- * ```ts
251
- * import { Optic, Result } from "effect"
242
+ * ```ts import.meta.vitest
243
+ * import { Optic, Result, SchemaIssue } from "effect"
252
244
  *
253
245
  * const numeric = Optic.makePrism<string, number>(
254
246
  * (s) => {
255
247
  * const n = Number(s)
256
- * return Number.isNaN(n) ? Result.fail("not a number") : Result.succeed(n)
248
+ * return Number.isNaN(n)
249
+ * ? Result.fail(new SchemaIssue.InvalidValue({ message: "not a number" }))
250
+ * : Result.succeed(n)
257
251
  * },
258
252
  * String
259
253
  * )
260
254
  *
261
- * console.log(Result.isSuccess(numeric.getResult("42")))
262
- * // Output: true
255
+ * numeric.getResult("42") // => Result.succeed(42)
263
256
  *
264
- * console.log(numeric.set(42))
265
- * // Output: "42"
257
+ * numeric.set(42) // => "42"
266
258
  * ```
267
259
  *
268
260
  * @see {@link Prism} — the type this function returns
@@ -271,8 +263,11 @@ export interface Prism<in out S, in out A> extends Optional<S, A> {
271
263
  * @category constructors
272
264
  * @since 4.0.0
273
265
  */
274
- export function makePrism<S, A>(getResult: (s: S) => Result.Result<A, string>, set: (a: A) => S): Prism<S, A> {
275
- return make(new PrismNode(getResult, set))
266
+ export function makePrism<S, A>(
267
+ getResult: (s: S) => Result.Result<A, SchemaIssue.Issue>,
268
+ set: (a: A) => S
269
+ ): Prism<S, A> {
270
+ return make(primitiveNode("Prism", getResult, set))
276
271
  }
277
272
 
278
273
  /**
@@ -286,13 +281,13 @@ export function makePrism<S, A>(getResult: (s: S) => Result.Result<A, string>, s
286
281
  *
287
282
  * **Details**
288
283
  *
289
- * - `getResult` runs all checks; fails with a combined error message when
284
+ * - `getResult` runs all checks and preserves their structured issues when
290
285
  * any check fails.
291
286
  * - `set` is identity — the value passes through unchanged.
292
287
  *
293
288
  * **Example** (Creating a positive integer prism)
294
289
  *
295
- * ```ts
290
+ * ```ts import.meta.vitest
296
291
  * import { Optic, Result, Schema } from "effect"
297
292
  *
298
293
  * const posInt = Optic.fromChecks<number>(
@@ -300,11 +295,9 @@ export function makePrism<S, A>(getResult: (s: S) => Result.Result<A, string>, s
300
295
  * Schema.isInt()
301
296
  * )
302
297
  *
303
- * console.log(Result.isSuccess(posInt.getResult(3)))
304
- * // Output: true
298
+ * posInt.getResult(3) // => Result.succeed(3)
305
299
  *
306
- * console.log(Result.isFailure(posInt.getResult(-1)))
307
- * // Output: true
300
+ * Result.isFailure(posInt.getResult(-1)) // => true
308
301
  * ```
309
302
  *
310
303
  * @see {@link makePrism} — constructor with custom getter/setter
@@ -314,142 +307,95 @@ export function makePrism<S, A>(getResult: (s: S) => Result.Result<A, string>, s
314
307
  * @since 4.0.0
315
308
  */
316
309
  export function fromChecks<T>(...checks: readonly [SchemaAST.Check<T>, ...Array<SchemaAST.Check<T>>]): Prism<T, T> {
317
- return make(new CheckNode(checks))
310
+ return make([new CheckNode(checks)])
318
311
  }
319
312
 
320
- type Node =
321
- | IdentityNode
322
- | IsoNode<any, any>
323
- | LensNode<any, any>
324
- | PrismNode<any, any>
325
- | OptionalNode<any, any>
326
- | PathNode
327
- | CheckNode<any>
328
- | CompositionNode
329
-
330
- class IdentityNode {
331
- readonly _tag = "IdentityNode"
332
- }
333
-
334
- const identityNode = new IdentityNode()
335
-
336
- class CompositionNode {
337
- readonly _tag = "CompositionNode"
338
- readonly nodes: readonly [Node, ...Array<Node>]
313
+ type Kind = "Iso" | "Lens" | "Prism" | "Optional"
339
314
 
340
- constructor(nodes: readonly [Node, ...Array<Node>]) {
341
- this.nodes = nodes
342
- }
315
+ type Operation = {
316
+ readonly kind: Kind
317
+ readonly get: (s: any) => any
318
+ readonly set: (a: any, s?: any) => any
343
319
  }
344
320
 
345
- class IsoNode<S, A> {
346
- readonly _tag = "IsoNode"
347
- readonly get: (s: S) => A
348
- readonly set: (a: A) => S
349
-
350
- constructor(get: (s: S) => A, set: (a: A) => S) {
351
- this.get = get
352
- this.set = set
353
- }
321
+ type PrimitiveStep = Operation & {
322
+ readonly _tag: "PrimitiveNode"
354
323
  }
355
324
 
356
- class LensNode<S, A> {
357
- readonly _tag = "LensNode"
358
- readonly get: (s: S) => A
359
- readonly set: (a: A, s: S) => S
360
-
361
- constructor(get: (s: S) => A, set: (a: A, s: S) => S) {
362
- this.get = get
363
- this.set = set
364
- }
365
- }
325
+ type Step = PrimitiveStep | PathNode | CheckNode<any>
366
326
 
367
- class PrismNode<S, A> {
368
- readonly _tag = "PrismNode"
369
- readonly get: (s: S) => Result.Result<A, string>
370
- readonly set: (a: A) => S
327
+ type Node = ReadonlyArray<Step>
371
328
 
372
- constructor(get: (s: S) => Result.Result<A, string>, set: (a: A) => S) {
373
- this.get = get
374
- this.set = set
375
- }
329
+ function primitiveNode(kind: Kind, get: (s: any) => any, set: (a: any, s?: any) => any): Node {
330
+ return [{ _tag: "PrimitiveNode", kind, get, set }]
376
331
  }
377
332
 
378
- class OptionalNode<S, A> {
379
- readonly _tag = "OptionalNode"
380
- readonly get: (s: S) => Result.Result<A, string>
381
- readonly set: (a: A, s: S) => Result.Result<S, string>
382
-
383
- constructor(get: (s: S) => Result.Result<A, string>, set: (a: A, s: S) => Result.Result<S, string>) {
384
- this.get = get
385
- this.set = set
386
- }
333
+ const identityOperation: Operation = {
334
+ kind: "Iso",
335
+ get: identity,
336
+ set: identity
387
337
  }
388
338
 
389
339
  class PathNode {
390
340
  readonly _tag = "PathNode"
341
+ readonly kind = "Lens"
391
342
  readonly path: ReadonlyArray<PropertyKey>
343
+ readonly get: (s: any) => any
344
+ readonly set: (a: any, s?: any) => any
392
345
 
393
346
  constructor(path: ReadonlyArray<PropertyKey>) {
394
347
  this.path = path
348
+ this.get = (s) => {
349
+ let out = s
350
+ for (let i = 0; i < path.length; i++) {
351
+ out = out[path[i]]
352
+ }
353
+ return out
354
+ }
355
+ this.set = (a, s) => {
356
+ const out = cloneShallow(s)
357
+ let current = out
358
+ let i = 0
359
+ for (; i < path.length - 1; i++) {
360
+ const key = path[i]
361
+ InternalRecord.assignProperty(current, key, cloneShallow(current[key]))
362
+ current = current[key]
363
+ }
364
+ InternalRecord.assignProperty(current, path[i], a)
365
+ return out
366
+ }
395
367
  }
396
368
  }
397
369
 
398
370
  class CheckNode<T> {
399
371
  readonly _tag = "CheckNode"
372
+ readonly kind = "Prism"
400
373
  readonly checks: readonly [SchemaAST.Check<T>, ...Array<SchemaAST.Check<T>>]
374
+ readonly get: (s: T) => Result.Result<T, SchemaIssue.Issue>
375
+ readonly set = identity
401
376
 
402
377
  constructor(checks: readonly [SchemaAST.Check<T>, ...Array<SchemaAST.Check<T>>]) {
403
378
  this.checks = checks
379
+ this.get = (s) => SchemaAST.runChecks(checks, s)
404
380
  }
405
381
  }
406
382
 
407
- // Nodes that can appear in a normalized chain (no Identity/Composition)
408
- type NormalizedNode = Exclude<Node, IdentityNode | CompositionNode>
409
-
410
- // Fuse with tail when possible, else push.
411
- function pushNormalized(acc: Array<NormalizedNode>, node: NormalizedNode): void {
412
- const last = acc[acc.length - 1]
413
- if (last) {
383
+ function compose(a: Node, b: Node): Node {
384
+ if (a.length === 0) return b
385
+ if (b.length === 0) return a
386
+ const nodes = a.slice()
387
+ for (let i = 0; i < b.length; i++) {
388
+ const node = b[i]
389
+ const last = nodes[nodes.length - 1]
414
390
  if (last._tag === "PathNode" && node._tag === "PathNode") {
415
- // fuse Path
416
- acc[acc.length - 1] = new PathNode([...last.path, ...node.path])
417
- return
418
- }
419
- if (last._tag === "CheckNode" && node._tag === "CheckNode") {
420
- // fuse Checks
421
- acc[acc.length - 1] = new CheckNode<any>([...last.checks, ...node.checks])
422
- return
391
+ nodes[nodes.length - 1] = new PathNode([...last.path, ...node.path])
392
+ } else if (last._tag === "CheckNode" && node._tag === "CheckNode") {
393
+ nodes[nodes.length - 1] = new CheckNode<any>([...last.checks, ...node.checks])
394
+ } else {
395
+ nodes.push(node)
423
396
  }
424
397
  }
425
- acc.push(node)
426
- }
427
-
428
- // Collect nodes from a node into `acc`, flattening & normalizing on the fly.
429
- function collect(node: Node, acc: Array<NormalizedNode>): void {
430
- if (node._tag === "IdentityNode") return
431
- if (node._tag === "CompositionNode") {
432
- // flatten without extra arrays
433
- for (let i = 0; i < node.nodes.length; i++) collect(node.nodes[i], acc)
434
- return
435
- }
436
- // primitive node
437
- pushNormalized(acc, node)
438
- }
439
-
440
- function compose(a: Node, b: Node): Node {
441
- const nodes: Array<NormalizedNode> = []
442
- collect(a, nodes)
443
- collect(b, nodes)
444
-
445
- switch (nodes.length) {
446
- case 0:
447
- return identityNode
448
- case 1:
449
- return nodes[0]
450
- default:
451
- return new CompositionNode(nodes as [Node, ...Array<Node>])
452
- }
398
+ return nodes
453
399
  }
454
400
 
455
401
  type ForbidUnion<A, Message extends string> = IsUnion<A> extends true ? [Message] : []
@@ -466,47 +412,43 @@ type ForbidUnion<A, Message extends string> = IsUnion<A> extends true ? [Message
466
412
  *
467
413
  * **Details**
468
414
  *
469
- * - `getResult(s)` returns `Result.Success<A>` or `Result.Failure<string>`.
415
+ * - `getResult(s)` returns `Result.Success<A>` or `Result.Failure<SchemaIssue.Issue>`.
470
416
  * - `replaceResult(a, s)` returns `Result.Success<S>` or
471
- * `Result.Failure<string>`.
417
+ * `Result.Failure<SchemaIssue.Issue>`.
472
418
  * - `replace(a, s)` returns the original `s` on failure (never throws).
473
419
  * - `modify(f)` returns the original `s` on failure (never throws).
474
420
  * - All operations are pure; inputs are never mutated.
475
421
  *
476
422
  * **Example** (Focusing on an optional record key)
477
423
  *
478
- * ```ts
424
+ * ```ts import.meta.vitest
479
425
  * import { Optic, Result } from "effect"
480
426
  *
481
427
  * type Env = { [key: string]: string }
482
428
  * const _home = Optic.id<Env>().at("HOME")
483
429
  *
484
- * console.log(Result.isSuccess(_home.getResult({ HOME: "/root" })))
485
- * // Output: true
430
+ * _home.getResult({ HOME: "/root" }) // => Result.succeed("/root")
486
431
  *
487
- * console.log(Result.isFailure(_home.getResult({ PATH: "/bin" })))
488
- * // Output: true
432
+ * Result.isFailure(_home.getResult({ PATH: "/bin" })) // => true
489
433
  *
490
434
  * // replace returns original on failure
491
- * console.log(_home.replace("/new", { PATH: "/bin" }))
492
- * // Output: { PATH: "/bin" }
435
+ * _home.replace("/new", { PATH: "/bin" }) // => { PATH: "/bin" }
493
436
  * ```
494
437
  *
495
438
  * @see {@link makeOptional} — constructor
496
439
  * @see {@link Lens} — when reading always succeeds
497
440
  * @see {@link Prism} — when writing always succeeds
498
441
  *
499
- * @category Optional
442
+ * @category models
500
443
  * @since 4.0.0
501
444
  */
502
445
  export interface Optional<in out S, in out A> {
503
- readonly node: Node
504
446
  /**
505
447
  * Attempts to read the focus `A` from the whole `S`. Returns
506
448
  * `Result.Success<A>` when the focus exists, or
507
- * `Result.Failure<string>` with a descriptive error otherwise.
449
+ * `Result.Failure<SchemaIssue.Issue>` with a structured issue otherwise.
508
450
  */
509
- readonly getResult: (s: S) => Result.Result<A, string>
451
+ readonly getResult: (s: S) => Result.Result<A, SchemaIssue.Issue>
510
452
  /**
511
453
  * Replaces the focus in `S` with a new `A`. Returns the original `s`
512
454
  * unchanged when the optic cannot focus (never throws).
@@ -516,20 +458,21 @@ export interface Optional<in out S, in out A> {
516
458
  * Like {@link replace}, but returns an explicit `Result` so callers can
517
459
  * detect and handle failure.
518
460
  */
519
- readonly replaceResult: (a: A, s: S) => Result.Result<S, string>
461
+ readonly replaceResult: (a: A, s: S) => Result.Result<S, SchemaIssue.Issue>
520
462
  /**
521
463
  * Composes this optic with another. The result type is the weakest of
522
464
  * the two: Iso + Iso = Iso, Lens + Prism = Optional, etc.
523
465
  *
524
466
  * **Example** (Composing a lens with a prism)
525
467
  *
526
- * ```ts
527
- * import { Optic, Option } from "effect"
468
+ * ```ts import.meta.vitest
469
+ * import { Optic, Option, Result } from "effect"
528
470
  *
529
471
  * type State = { value: Option.Option<number> }
530
472
  *
531
473
  * const _inner = Optic.id<State>().key("value").compose(Optic.some())
532
474
  * // _inner is Optional<State, number>
475
+ * _inner.getResult({ value: Option.some(1) }) // => Result.succeed(1)
533
476
  * ```
534
477
  *
535
478
  * @see {@link id} — start a composition chain
@@ -545,15 +488,14 @@ export interface Optional<in out S, in out A> {
545
488
  *
546
489
  * **Example** (Incrementing a nested field)
547
490
  *
548
- * ```ts
491
+ * ```ts import.meta.vitest
549
492
  * import { Optic } from "effect"
550
493
  *
551
494
  * type S = { readonly a: { readonly b: number } }
552
495
  * const _b = Optic.id<S>().key("a").key("b")
553
496
  *
554
497
  * const inc = _b.modify((n) => n + 1)
555
- * console.log(inc({ a: { b: 1 } }))
556
- * // Output: { a: { b: 2 } }
498
+ * inc({ a: { b: 1 } }) // => { a: { b: 2 } }
557
499
  * ```
558
500
  */
559
501
  modify(f: (a: A) => A): (s: S) => S
@@ -569,14 +511,13 @@ export interface Optional<in out S, in out A> {
569
511
  *
570
512
  * **Example** (Drilling into nested structs)
571
513
  *
572
- * ```ts
514
+ * ```ts import.meta.vitest
573
515
  * import { Optic } from "effect"
574
516
  *
575
517
  * type S = { readonly a: { readonly b: number } }
576
518
  * const _b = Optic.id<S>().key("a").key("b")
577
519
  *
578
- * console.log(_b.get({ a: { b: 42 } }))
579
- * // Output: 42
520
+ * _b.get({ a: { b: 42 } }) // => 42
580
521
  * ```
581
522
  */
582
523
  key<S, A extends object, Key extends keyof A>(
@@ -601,17 +542,15 @@ export interface Optional<in out S, in out A> {
601
542
  *
602
543
  * **Example** (Deleting an optional key)
603
544
  *
604
- * ```ts
545
+ * ```ts import.meta.vitest
605
546
  * import { Optic } from "effect"
606
547
  *
607
548
  * type S = { readonly a?: number }
608
549
  * const _a = Optic.id<S>().optionalKey("a")
609
550
  *
610
- * console.log(_a.replace(undefined, { a: 1 }))
611
- * // Output: {}
551
+ * _a.replace(undefined, { a: 1 }) // => {}
612
552
  *
613
- * console.log(_a.replace(2, {}))
614
- * // Output: { a: 2 }
553
+ * _a.replace(2, {}) // => { a: 2 }
615
554
  * ```
616
555
  */
617
556
  optionalKey<S, A extends object, Key extends keyof A>(
@@ -636,16 +575,14 @@ export interface Optional<in out S, in out A> {
636
575
  *
637
576
  * **Example** (Focusing only on positive numbers)
638
577
  *
639
- * ```ts
578
+ * ```ts import.meta.vitest
640
579
  * import { Optic, Result, Schema } from "effect"
641
580
  *
642
581
  * const _pos = Optic.id<number>().check(Schema.isGreaterThan(0))
643
582
  *
644
- * console.log(Result.isSuccess(_pos.getResult(5)))
645
- * // Output: true
583
+ * _pos.getResult(5) // => Result.succeed(5)
646
584
  *
647
- * console.log(Result.isFailure(_pos.getResult(-1)))
648
- * // Output: true
585
+ * Result.isFailure(_pos.getResult(-1)) // => true
649
586
  * ```
650
587
  *
651
588
  * @see {@link fromChecks} — standalone prism from checks
@@ -667,7 +604,7 @@ export interface Optional<in out S, in out A> {
667
604
  *
668
605
  * **Example** (Narrowing a union)
669
606
  *
670
- * ```ts
607
+ * ```ts import.meta.vitest
671
608
  * import { Optic, Result } from "effect"
672
609
  *
673
610
  * type B = { readonly _tag: "b"; readonly b: number }
@@ -678,8 +615,7 @@ export interface Optional<in out S, in out A> {
678
615
  * { expected: `"b" tag` }
679
616
  * )
680
617
  *
681
- * console.log(Result.isSuccess(_b.getResult({ _tag: "b", b: 1 })))
682
- * // Output: true
618
+ * _b.getResult({ _tag: "b", b: 1 }) // => Result.succeed({ _tag: "b", b: 1 })
683
619
  * ```
684
620
  *
685
621
  * @see `.tag()` — shorthand for narrowing by `_tag`
@@ -704,10 +640,12 @@ export interface Optional<in out S, in out A> {
704
640
  * - On a {@link Prism}, returns a Prism.
705
641
  * - On an {@link Optional}, returns an Optional.
706
642
  * - Shorthand for `.refine(s => s._tag === tag)`.
643
+ * - A non-matching value fails with {@link SchemaIssue.InvalidValue} whose
644
+ * `expected` annotation is `"<tag> tag"`.
707
645
  *
708
646
  * **Example** (Focusing a tagged variant)
709
647
  *
710
- * ```ts
648
+ * ```ts import.meta.vitest
711
649
  * import { Optic, Result } from "effect"
712
650
  *
713
651
  * type Shape =
@@ -716,11 +654,9 @@ export interface Optional<in out S, in out A> {
716
654
  *
717
655
  * const _radius = Optic.id<Shape>().tag("Circle").key("radius")
718
656
  *
719
- * console.log(Result.isSuccess(_radius.getResult({ _tag: "Circle", radius: 5 })))
720
- * // Output: true
657
+ * _radius.getResult({ _tag: "Circle", radius: 5 }) // => Result.succeed(5)
721
658
  *
722
- * console.log(Result.isFailure(_radius.getResult({ _tag: "Rect", width: 10 })))
723
- * // Output: true
659
+ * Result.isFailure(_radius.getResult({ _tag: "Rect", width: 10 })) // => true
724
660
  * ```
725
661
  *
726
662
  * @see `.refine()` — for arbitrary type guards
@@ -745,20 +681,21 @@ export interface Optional<in out S, in out A> {
745
681
  *
746
682
  * - Always returns an {@link Optional}.
747
683
  * - Does **not** work on union types (compile error).
684
+ * - A missing key fails with a {@link SchemaIssue.Pointer} at that key whose
685
+ * inner issue is {@link SchemaIssue.MissingKey}, for both `getResult` and
686
+ * `replaceResult`.
748
687
  *
749
688
  * **Example** (Accessing records safely)
750
689
  *
751
- * ```ts
690
+ * ```ts import.meta.vitest
752
691
  * import { Optic, Result } from "effect"
753
692
  *
754
693
  * type Env = { [key: string]: number }
755
694
  * const _x = Optic.id<Env>().at("x")
756
695
  *
757
- * console.log(Result.isSuccess(_x.getResult({ x: 1 })))
758
- * // Output: true
696
+ * _x.getResult({ x: 1 }) // => Result.succeed(1)
759
697
  *
760
- * console.log(Result.isFailure(_x.getResult({ y: 2 })))
761
- * // Output: true
698
+ * Result.isFailure(_x.getResult({ y: 2 })) // => true
762
699
  * ```
763
700
  *
764
701
  * @see `.key()` — when the key is always present
@@ -780,15 +717,14 @@ export interface Optional<in out S, in out A> {
780
717
  *
781
718
  * **Example** (Picking keys)
782
719
  *
783
- * ```ts
720
+ * ```ts import.meta.vitest
784
721
  * import { Optic } from "effect"
785
722
  *
786
723
  * type S = { readonly a: string; readonly b: number; readonly c: boolean }
787
724
  *
788
725
  * const _ac = Optic.id<S>().pick(["a", "c"])
789
726
  *
790
- * console.log(_ac.get({ a: "hi", b: 1, c: true }))
791
- * // Output: { a: "hi", c: true }
727
+ * _ac.get({ a: "hi", b: 1, c: true }) // => { a: "hi", c: true }
792
728
  * ```
793
729
  *
794
730
  * @see `.omit()` — the inverse operation
@@ -815,15 +751,14 @@ export interface Optional<in out S, in out A> {
815
751
  *
816
752
  * **Example** (Omitting keys)
817
753
  *
818
- * ```ts
754
+ * ```ts import.meta.vitest
819
755
  * import { Optic } from "effect"
820
756
  *
821
757
  * type S = { readonly a: string; readonly b: number; readonly c: boolean }
822
758
  *
823
759
  * const _ac = Optic.id<S>().omit(["b"])
824
760
  *
825
- * console.log(_ac.get({ a: "hi", b: 1, c: true }))
826
- * // Output: { a: "hi", c: true }
761
+ * _ac.get({ a: "hi", b: 1, c: true }) // => { a: "hi", c: true }
827
762
  * ```
828
763
  *
829
764
  * @see `.pick()` — the inverse operation
@@ -847,22 +782,20 @@ export interface Optional<in out S, in out A> {
847
782
  *
848
783
  * **Example** (Filtering undefined values)
849
784
  *
850
- * ```ts
785
+ * ```ts import.meta.vitest
851
786
  * import { Optic, Result } from "effect"
852
787
  *
853
788
  * const _defined = Optic.id<number | undefined>().notUndefined()
854
789
  *
855
- * console.log(Result.isSuccess(_defined.getResult(42)))
856
- * // Output: true
790
+ * _defined.getResult(42) // => Result.succeed(42)
857
791
  *
858
- * console.log(Result.isFailure(_defined.getResult(undefined)))
859
- * // Output: true
792
+ * Result.isFailure(_defined.getResult(undefined)) // => true
860
793
  * ```
861
794
  *
862
795
  * @since 4.0.0
863
796
  */
864
- notUndefined(): Prism<S, Exclude<A, undefined>>
865
- notUndefined(): Optional<S, Exclude<A, undefined>>
797
+ notUndefined<S, A>(this: Prism<S, A>): Prism<S, Exclude<A, undefined>>
798
+ notUndefined<S, A>(this: Optional<S, A>): Optional<S, Exclude<A, undefined>>
866
799
 
867
800
  /**
868
801
  * Focuses **all elements** of an array-like focus and optionally narrows
@@ -877,11 +810,13 @@ export interface Optional<in out S, in out A> {
877
810
  * element. Non-focusable elements are skipped.
878
811
  * - **replaceResult** expects exactly as many values as were collected by
879
812
  * `getResult` and writes them back in order. Fails with a
880
- * length-mismatch error if counts differ.
813
+ * {@link SchemaIssue.InvalidValue} if counts differ. If an inner replacement
814
+ * fails, its issue is wrapped in a {@link SchemaIssue.Pointer} at the element
815
+ * index.
881
816
  *
882
817
  * **Example** (Incrementing liked posts)
883
818
  *
884
- * ```ts
819
+ * ```ts import.meta.vitest
885
820
  * import { Optic, Schema } from "effect"
886
821
  *
887
822
  * type Post = { title: string; likes: number }
@@ -894,12 +829,10 @@ export interface Optional<in out S, in out A> {
894
829
  *
895
830
  * const addLike = _likes.modifyAll((n) => n + 1)
896
831
  *
897
- * console.log(
898
- * addLike({
899
- * user: { posts: [{ title: "a", likes: 0 }, { title: "b", likes: 1 }] }
900
- * })
901
- * )
902
- * // Output: { user: { posts: [{ title: "a", likes: 0 }, { title: "b", likes: 2 }] } }
832
+ * const result = addLike({
833
+ * user: { posts: [{ title: "a", likes: 0 }, { title: "b", likes: 1 }] }
834
+ * })
835
+ * result.user.posts // => [{ title: "a", likes: 0 }, { title: "b", likes: 2 }]
903
836
  * ```
904
837
  *
905
838
  * @see {@link getAll} — extract all focused elements as an array
@@ -920,7 +853,7 @@ export interface Optional<in out S, in out A> {
920
853
  *
921
854
  * **Example** (Doubling all focused values)
922
855
  *
923
- * ```ts
856
+ * ```ts import.meta.vitest
924
857
  * import { Optic, Schema } from "effect"
925
858
  *
926
859
  * type S = { readonly items: ReadonlyArray<number> }
@@ -931,8 +864,7 @@ export interface Optional<in out S, in out A> {
931
864
  *
932
865
  * const doubled = _positive.modifyAll((n) => n * 2)
933
866
  *
934
- * console.log(doubled({ items: [1, -2, 3] }))
935
- * // Output: { items: [2, -2, 6] }
867
+ * doubled({ items: [1, -2, 3] }) // => { items: [2, -2, 6] }
936
868
  * ```
937
869
  *
938
870
  * @see `.forEach()` — create a sub-traversal
@@ -951,29 +883,31 @@ export interface Optional<in out S, in out A> {
951
883
  *
952
884
  * **Details**
953
885
  *
954
- * - `getResult` should return `Result.fail(message)` on mismatch.
955
- * - `set` should return `Result.fail(message)` when the update cannot be
886
+ * - `getResult` should return `Result.fail(issue)` on mismatch.
887
+ * - `set` should return `Result.fail(issue)` when the update cannot be
956
888
  * applied.
889
+ * - Issues are not formatted automatically; callers choose how to render them.
957
890
  *
958
891
  * **Example** (Accessing record keys safely)
959
892
  *
960
- * ```ts
961
- * import { Optic, Result } from "effect"
893
+ * ```ts import.meta.vitest
894
+ * import { Optic, Result, SchemaIssue } from "effect"
962
895
  *
963
- * const atKey = (key: string) =>
964
- * Optic.makeOptional<Record<string, number>, number>(
896
+ * const atKey = (key: string) => {
897
+ * const issue = new SchemaIssue.Pointer([key], new SchemaIssue.MissingKey(undefined))
898
+ * return Optic.makeOptional<Record<string, number>, number>(
965
899
  * (s) =>
966
900
  * Object.hasOwn(s, key)
967
901
  * ? Result.succeed(s[key])
968
- * : Result.fail(`Key "${key}" not found`),
902
+ * : Result.fail(issue),
969
903
  * (a, s) =>
970
904
  * Object.hasOwn(s, key)
971
905
  * ? Result.succeed({ ...s, [key]: a })
972
- * : Result.fail(`Key "${key}" not found`)
906
+ * : Result.fail(issue)
973
907
  * )
908
+ * }
974
909
  *
975
- * console.log(Result.isSuccess(atKey("x").getResult({ x: 1 })))
976
- * // Output: true
910
+ * atKey("x").getResult({ x: 1 }) // => Result.succeed(1)
977
911
  * ```
978
912
  *
979
913
  * @see {@link Optional} — the type this function returns
@@ -984,10 +918,10 @@ export interface Optional<in out S, in out A> {
984
918
  * @since 4.0.0
985
919
  */
986
920
  export function makeOptional<S, A>(
987
- getResult: (s: S) => Result.Result<A, string>,
988
- set: (a: A, s: S) => Result.Result<S, string>
921
+ getResult: (s: S) => Result.Result<A, SchemaIssue.Issue>,
922
+ set: (a: A, s: S) => Result.Result<S, SchemaIssue.Issue>
989
923
  ): Optional<S, A> {
990
- return make(new OptionalNode(getResult, set))
924
+ return make(primitiveNode("Optional", getResult, set))
991
925
  }
992
926
 
993
927
  /**
@@ -1009,7 +943,7 @@ export function makeOptional<S, A>(
1009
943
  *
1010
944
  * **Example** (Traversing array elements with a filter)
1011
945
  *
1012
- * ```ts
946
+ * ```ts import.meta.vitest
1013
947
  * import { Optic, Schema } from "effect"
1014
948
  *
1015
949
  * type S = { readonly items: ReadonlyArray<number> }
@@ -1020,26 +954,26 @@ export function makeOptional<S, A>(
1020
954
  *
1021
955
  * const getPositive = Optic.getAll(_positive)
1022
956
  *
1023
- * console.log(getPositive({ items: [1, -2, 3] }))
1024
- * // Output: [1, 3]
957
+ * getPositive({ items: [1, -2, 3] }) // => [1, 3]
1025
958
  * ```
1026
959
  *
1027
960
  * @see {@link getAll} — extract focused elements
1028
961
  * @see {@link Optional} — the base type
1029
962
  *
1030
- * @category Traversal
963
+ * @category models
1031
964
  * @since 4.0.0
1032
965
  */
1033
966
  export interface Traversal<in out S, in out A> extends Optional<S, ReadonlyArray<A>> {}
1034
967
 
1035
968
  class OptionalImpl<S, A> implements Optional<S, A> {
969
+ /** @internal */
1036
970
  readonly node: Node
1037
- readonly getResult: (s: S) => Result.Result<A, string>
1038
- readonly replaceResult: (a: A, s: S) => Result.Result<S, string>
971
+ readonly getResult: (s: S) => Result.Result<A, SchemaIssue.Issue>
972
+ readonly replaceResult: (a: A, s: S) => Result.Result<S, SchemaIssue.Issue>
1039
973
  constructor(
1040
974
  node: Node,
1041
- getResult: (s: S) => Result.Result<A, string>,
1042
- replaceResult: (a: A, s: S) => Result.Result<S, string>
975
+ getResult: (s: S) => Result.Result<A, SchemaIssue.Issue>,
976
+ replaceResult: (a: A, s: S) => Result.Result<S, SchemaIssue.Issue>
1043
977
  ) {
1044
978
  this.node = node
1045
979
  this.getResult = getResult
@@ -1055,13 +989,14 @@ class OptionalImpl<S, A> implements Optional<S, A> {
1055
989
  return make(compose(this.node, that.node))
1056
990
  }
1057
991
  key(key: PropertyKey): any {
1058
- return make(compose(this.node, new PathNode([key])))
992
+ return make(compose(this.node, [new PathNode([key])]))
1059
993
  }
1060
994
  optionalKey(key: PropertyKey): any {
1061
995
  return make(
1062
996
  compose(
1063
997
  this.node,
1064
- new LensNode(
998
+ primitiveNode(
999
+ "Lens",
1065
1000
  (s) => s[key],
1066
1001
  (a, s) => {
1067
1002
  const copy = cloneShallow(s)
@@ -1072,7 +1007,7 @@ class OptionalImpl<S, A> implements Optional<S, A> {
1072
1007
  delete copy[key]
1073
1008
  }
1074
1009
  } else {
1075
- copy[key] = a
1010
+ InternalRecord.assignProperty(copy, key, a)
1076
1011
  }
1077
1012
  return copy
1078
1013
  }
@@ -1081,36 +1016,38 @@ class OptionalImpl<S, A> implements Optional<S, A> {
1081
1016
  )
1082
1017
  }
1083
1018
  check(...checks: readonly [SchemaAST.Check<any>, ...Array<SchemaAST.Check<any>>]): any {
1084
- return make(compose(this.node, new CheckNode(checks)))
1019
+ return make(compose(this.node, [new CheckNode(checks)]))
1085
1020
  }
1086
1021
  refine<B extends A>(refinement: (a: A) => a is B, annotations?: Schema.Annotations.Filter): any {
1087
- return make(compose(this.node, new CheckNode([SchemaAST.makeFilterByGuard(refinement, annotations)])))
1022
+ return make(compose(this.node, [new CheckNode([SchemaAST.makeFilterByGuard(refinement, annotations)])]))
1088
1023
  }
1089
1024
  tag(tag: string): any {
1025
+ const err = Result.fail(new SchemaIssue.InvalidValue({ expected: `${JSON.stringify(tag)} tag` }))
1090
1026
  return make(
1091
1027
  compose(
1092
1028
  this.node,
1093
- new PrismNode(
1094
- (s) =>
1095
- s._tag === tag
1096
- ? Result.succeed(s)
1097
- : Result.fail(`Expected ${format(tag)} tag, got ${format(s._tag)}`),
1029
+ primitiveNode(
1030
+ "Prism",
1031
+ (s) => s._tag === tag ? Result.succeed(s) : err,
1098
1032
  identity
1099
1033
  )
1100
1034
  )
1101
1035
  )
1102
1036
  }
1103
1037
  at(key: PropertyKey, ..._rest: Array<any>): any {
1104
- const err = Result.fail(`Key ${format(key)} not found`)
1038
+ const err = Result.fail(
1039
+ new SchemaIssue.Pointer([key], new SchemaIssue.MissingKey(undefined))
1040
+ )
1105
1041
  return make(
1106
1042
  compose(
1107
1043
  this.node,
1108
- new OptionalNode(
1044
+ primitiveNode(
1045
+ "Optional",
1109
1046
  (s) => Object.hasOwn(s, key) ? Result.succeed(s[key]) : err,
1110
1047
  (a, s) => {
1111
1048
  if (Object.hasOwn(s, key)) {
1112
1049
  const copy = cloneShallow(s)
1113
- copy[key] = a
1050
+ InternalRecord.assignProperty(copy, key, a)
1114
1051
  return Result.succeed(copy)
1115
1052
  } else {
1116
1053
  return err
@@ -1126,7 +1063,7 @@ class OptionalImpl<S, A> implements Optional<S, A> {
1126
1063
  omit(keys: any) {
1127
1064
  return this.compose(makeLens(Struct.omit(keys), (o, a) => ({ ...a, ...o })))
1128
1065
  }
1129
- notUndefined(): Prism<S, Exclude<A, undefined>> {
1066
+ notUndefined(): any {
1130
1067
  return this.refine(Predicate.isNotUndefined, { expected: "a value other than `undefined`" })
1131
1068
  }
1132
1069
  forEach<S, A, B>(this: Traversal<S, A>, f: (iso: Iso<A, A>) => Optional<A, B>): Traversal<S, B> {
@@ -1154,7 +1091,9 @@ class OptionalImpl<S, A> implements Optional<S, A> {
1154
1091
  // 2) arity check
1155
1092
  if (bs.length !== idxs.length) {
1156
1093
  return Result.fail(
1157
- `each: replacement length mismatch: ${bs.length} !== ${idxs.length}`
1094
+ new SchemaIssue.InvalidValue({
1095
+ message: `each: replacement length mismatch: ${bs.length} !== ${idxs.length}`
1096
+ })
1158
1097
  )
1159
1098
  }
1160
1099
 
@@ -1164,7 +1103,7 @@ class OptionalImpl<S, A> implements Optional<S, A> {
1164
1103
  const i = idxs[k]
1165
1104
  const r = inner.replaceResult(bs[k], as[i])
1166
1105
  if (Result.isFailure(r)) {
1167
- return Result.fail(`each: could not set element ${i}`)
1106
+ return Result.fail(new SchemaIssue.Pointer([i], r.failure))
1168
1107
  }
1169
1108
  out[i] = r.success
1170
1109
  }
@@ -1211,7 +1150,7 @@ class LensImpl<S, A> extends OptionalImpl<S, A> implements Lens<S, A> {
1211
1150
 
1212
1151
  class PrismImpl<S, A> extends OptionalImpl<S, A> implements Prism<S, A> {
1213
1152
  readonly set: (a: A) => S
1214
- constructor(node: Node, getResult: (s: S) => Result.Result<A, string>, set: (a: A) => S) {
1153
+ constructor(node: Node, getResult: (s: S) => Result.Result<A, SchemaIssue.Issue>, set: (a: A) => S) {
1215
1154
  super(node, getResult, (a, _) => Result.succeed(set(a)))
1216
1155
  this.set = set
1217
1156
  }
@@ -1224,15 +1163,23 @@ class PrismImpl<S, A> extends OptionalImpl<S, A> implements Prism<S, A> {
1224
1163
  }
1225
1164
 
1226
1165
  function make(node: Node): any {
1227
- const op = recur(node)
1228
- switch (op._tag) {
1229
- case "IsoNode":
1166
+ let op: Operation = node[0] ?? identityOperation
1167
+ if (node.length > 1) {
1168
+ const kind = node.reduce<Kind>((kind, step) => composeKind(kind, step.kind), "Iso")
1169
+ op = {
1170
+ kind,
1171
+ get: compileGet(node, kind),
1172
+ set: compileSet(node, kind)
1173
+ }
1174
+ }
1175
+ switch (op.kind) {
1176
+ case "Iso":
1230
1177
  return new IsoImpl(node, op.get, op.set)
1231
- case "LensNode":
1178
+ case "Lens":
1232
1179
  return new LensImpl(node, op.get, op.set)
1233
- case "PrismNode":
1180
+ case "Prism":
1234
1181
  return new PrismImpl(node, op.get, op.set)
1235
- case "OptionalNode":
1182
+ case "Optional":
1236
1183
  return new OptionalImpl(node, op.get, op.set)
1237
1184
  }
1238
1185
  }
@@ -1249,135 +1196,79 @@ function cloneShallow<T>(pojo: T): T {
1249
1196
  return pojo
1250
1197
  }
1251
1198
 
1252
- type Op = {
1253
- readonly _tag: "IsoNode" | "LensNode" | "PrismNode" | "OptionalNode"
1254
- readonly get: (s: unknown) => any
1255
- readonly set: (a: unknown, s?: unknown) => any
1199
+ function compileGet(nodes: Node, kind: Kind): (s: any) => any {
1200
+ return (s) => {
1201
+ for (let i = 0; i < nodes.length; i++) {
1202
+ const op = nodes[i]
1203
+ const result = op.get(s)
1204
+ if (hasFailingGet(op.kind)) {
1205
+ if (Result.isFailure(result)) {
1206
+ return result
1207
+ }
1208
+ s = result.success
1209
+ } else {
1210
+ s = result
1211
+ }
1212
+ }
1213
+ return hasFailingGet(kind) ? Result.succeed(s) : s
1214
+ }
1256
1215
  }
1257
1216
 
1258
- const recur = memoize((node: Node): Op => {
1259
- switch (node._tag) {
1260
- case "IdentityNode":
1261
- return { _tag: "IsoNode", get: identity, set: identity }
1262
- case "IsoNode":
1263
- case "LensNode":
1264
- case "PrismNode":
1265
- case "OptionalNode":
1266
- return { _tag: node._tag, get: node.get, set: node.set }
1267
- case "PathNode": {
1268
- return {
1269
- _tag: "LensNode",
1270
- get: (s: any) => {
1271
- const path = node.path
1272
- let out: any = s
1273
- for (let i = 0, n = path.length; i < n; i++) {
1274
- out = out[path[i]]
1275
- }
1276
- return out
1277
- },
1278
- set: (a: any, s: any) => {
1279
- const path = node.path
1280
- const out = cloneShallow(s)
1281
-
1282
- let current = out
1283
- let i = 0
1284
- for (; i < path.length - 1; i++) {
1285
- const key = path[i]
1286
- current[key] = cloneShallow(current[key])
1287
- current = current[key]
1288
- }
1289
-
1290
- const finalKey = path[i]
1291
- current[finalKey] = a
1292
-
1293
- return out
1294
- }
1217
+ function compileSet(nodes: Node, kind: Kind): (a: any, s: any) => any {
1218
+ if (hasSourceFreeSet(kind)) {
1219
+ return (a) => {
1220
+ for (let i = nodes.length - 1; i >= 0; i--) {
1221
+ a = nodes[i].set(a)
1295
1222
  }
1223
+ return a
1296
1224
  }
1297
- case "CheckNode":
1298
- return {
1299
- _tag: "PrismNode",
1300
- get: (s: any) => Result.mapError(SchemaAST.runChecks(node.checks, s), String),
1301
- set: identity
1225
+ }
1226
+ return (a, s) => {
1227
+ const len = nodes.length
1228
+ const sources = new Array(len)
1229
+ for (let i = 0; i < len; i++) {
1230
+ sources[i] = s
1231
+ const op = nodes[i]
1232
+ if (hasFailingGet(op.kind)) {
1233
+ const result = op.get(s)
1234
+ if (Result.isFailure(result)) {
1235
+ return result
1236
+ }
1237
+ s = result.success
1238
+ } else {
1239
+ s = op.get(s)
1302
1240
  }
1303
- case "CompositionNode": {
1304
- const ops = node.nodes.map(recur)
1305
- const _tag = ops.reduce<Op["_tag"]>((tag, op) => getCompositionTag(tag, op._tag), "IsoNode")
1306
- return {
1307
- _tag,
1308
- get: (s: any) => {
1309
- for (let i = 0; i < ops.length; i++) {
1310
- const op = ops[i]
1311
- const result = op.get(s)
1312
- if (hasFailingGet(op._tag)) {
1313
- if (Result.isFailure(result)) {
1314
- return result
1315
- }
1316
- s = result.success
1317
- } else {
1318
- s = result
1319
- }
1320
- }
1321
- return hasFailingGet(_tag) ? Result.succeed(s) : s
1322
- },
1323
- set: (a: any, s: any) => {
1324
- const source = s
1325
- const len = ops.length
1326
- const ss = new Array(len + 1)
1327
- ss[0] = s
1328
- for (let i = 0; i < len; i++) {
1329
- const op = ops[i]
1330
- if (hasFailingGet(op._tag)) {
1331
- const result = op.get(s)
1332
- if (Result.isFailure(result)) {
1333
- return _tag === "OptionalNode" ? result : source
1334
- }
1335
- s = result.success
1336
- } else {
1337
- s = op.get(s)
1338
- }
1339
- ss[i + 1] = s
1340
- }
1341
- for (let i = len - 1; i >= 0; i--) {
1342
- const op = ops[i]
1343
- if (hasSet(op._tag)) {
1344
- a = op.set(a)
1345
- } else if (op._tag === "LensNode") {
1346
- a = op.set(a, ss[i])
1347
- } else {
1348
- const result = op.set(a, ss[i])
1349
- if (Result.isFailure(result)) {
1350
- return result
1351
- }
1352
- a = result.success
1353
- }
1354
- }
1355
- return _tag === "OptionalNode" ? Result.succeed(a) : a
1241
+ }
1242
+ for (let i = len - 1; i >= 0; i--) {
1243
+ const op = nodes[i]
1244
+ if (hasSourceFreeSet(op.kind)) {
1245
+ a = op.set(a)
1246
+ } else if (op.kind === "Lens") {
1247
+ a = op.set(a, sources[i])
1248
+ } else {
1249
+ const result = op.set(a, sources[i])
1250
+ if (Result.isFailure(result)) {
1251
+ return result
1356
1252
  }
1253
+ a = result.success
1357
1254
  }
1358
1255
  }
1256
+ return kind === "Optional" ? Result.succeed(a) : a
1359
1257
  }
1360
- })
1258
+ }
1361
1259
 
1362
- function hasFailingGet(tag: Op["_tag"]): boolean {
1363
- return tag === "PrismNode" || tag === "OptionalNode"
1260
+ function hasFailingGet(kind: Kind): boolean {
1261
+ return kind === "Prism" || kind === "Optional"
1364
1262
  }
1365
1263
 
1366
- function hasSet(tag: Op["_tag"]): boolean {
1367
- return tag === "IsoNode" || tag === "PrismNode"
1264
+ function hasSourceFreeSet(kind: Kind): boolean {
1265
+ return kind === "Iso" || kind === "Prism"
1368
1266
  }
1369
1267
 
1370
- function getCompositionTag(a: Op["_tag"], b: Op["_tag"]): Op["_tag"] {
1371
- switch (a) {
1372
- case "IsoNode":
1373
- return b
1374
- case "LensNode":
1375
- return hasFailingGet(b) ? "OptionalNode" : "LensNode"
1376
- case "PrismNode":
1377
- return hasSet(b) ? "PrismNode" : "OptionalNode"
1378
- case "OptionalNode":
1379
- return "OptionalNode"
1380
- }
1268
+ function composeKind(a: Kind, b: Kind): Kind {
1269
+ if (a === "Iso") return b
1270
+ if (b === "Iso" || a === b) return a
1271
+ return "Optional"
1381
1272
  }
1382
1273
  // ---------------------------------------------
1383
1274
  // Derived APIs
@@ -1399,7 +1290,7 @@ function getCompositionTag(a: Op["_tag"], b: Op["_tag"]): Op["_tag"] {
1399
1290
  *
1400
1291
  * **Example** (Collecting positive numbers)
1401
1292
  *
1402
- * ```ts
1293
+ * ```ts import.meta.vitest
1403
1294
  * import { Optic, Schema } from "effect"
1404
1295
  *
1405
1296
  * type S = { readonly values: ReadonlyArray<number> }
@@ -1410,16 +1301,14 @@ function getCompositionTag(a: Op["_tag"], b: Op["_tag"]): Op["_tag"] {
1410
1301
  *
1411
1302
  * const getPositive = Optic.getAll(_pos)
1412
1303
  *
1413
- * console.log(getPositive({ values: [3, -1, 5] }))
1414
- * // Output: [3, 5]
1304
+ * getPositive({ values: [3, -1, 5] }) // => [3, 5]
1415
1305
  *
1416
- * console.log(getPositive({ values: [-1, -2] }))
1417
- * // Output: []
1306
+ * getPositive({ values: [-1, -2] }) // => []
1418
1307
  * ```
1419
1308
  *
1420
1309
  * @see {@link Traversal} — the optic type this operates on
1421
1310
  *
1422
- * @category Traversal
1311
+ * @category getters
1423
1312
  * @since 4.0.0
1424
1313
  */
1425
1314
  export function getAll<S, A>(traversal: Traversal<S, A>): (s: S) => Array<A> {
@@ -1434,7 +1323,7 @@ export function getAll<S, A>(traversal: Traversal<S, A>): (s: S) => Array<A> {
1434
1323
  // Built-in Optics
1435
1324
  // ---------------------------------------------
1436
1325
 
1437
- const identityIso = make(identityNode)
1326
+ const identityIso = make([])
1438
1327
 
1439
1328
  /**
1440
1329
  * Iso that focuses on the whole value unchanged.
@@ -1451,20 +1340,19 @@ const identityIso = make(identityNode)
1451
1340
  *
1452
1341
  * **Example** (Starting an optic chain)
1453
1342
  *
1454
- * ```ts
1343
+ * ```ts import.meta.vitest
1455
1344
  * import { Optic } from "effect"
1456
1345
  *
1457
1346
  * type S = { readonly x: number }
1458
1347
  *
1459
1348
  * const _x = Optic.id<S>().key("x")
1460
1349
  *
1461
- * console.log(_x.get({ x: 42 }))
1462
- * // Output: 42
1350
+ * _x.get({ x: 42 }) // => 42
1463
1351
  * ```
1464
1352
  *
1465
1353
  * @see {@link Iso} — the type this function returns
1466
1354
  *
1467
- * @category Iso
1355
+ * @category constructors
1468
1356
  * @since 4.0.0
1469
1357
  */
1470
1358
  export function id<S>(): Iso<S, S> {
@@ -1488,7 +1376,7 @@ export function id<S>(): Iso<S, S> {
1488
1376
  *
1489
1377
  * **Example** (Traversing record values)
1490
1378
  *
1491
- * ```ts
1379
+ * ```ts import.meta.vitest
1492
1380
  * import { Optic, Schema } from "effect"
1493
1381
  *
1494
1382
  * const _positiveValues = Optic.entries<number>()
@@ -1496,18 +1384,17 @@ export function id<S>(): Iso<S, S> {
1496
1384
  *
1497
1385
  * const inc = _positiveValues.modifyAll((n) => n + 1)
1498
1386
  *
1499
- * console.log(inc({ a: 0, b: 3, c: -1 }))
1500
- * // Output: { a: 0, b: 4, c: -1 }
1387
+ * inc({ a: 0, b: 3, c: -1 }) // => { a: 0, b: 4, c: -1 }
1501
1388
  * ```
1502
1389
  *
1503
1390
  * @see {@link Iso} — the type this function returns
1504
1391
  * @see {@link id} — identity iso
1505
1392
  *
1506
- * @category Iso
1393
+ * @category constructors
1507
1394
  * @since 4.0.0
1508
1395
  */
1509
1396
  export function entries<A>(): Iso<Record<string, A>, ReadonlyArray<readonly [string, A]>> {
1510
- return make(new IsoNode(Object.entries, Object.fromEntries))
1397
+ return make(primitiveNode("Iso", Object.entries, Object.fromEntries))
1511
1398
  }
1512
1399
 
1513
1400
  /**
@@ -1520,40 +1407,33 @@ export function entries<A>(): Iso<Record<string, A>, ReadonlyArray<readonly [str
1520
1407
  *
1521
1408
  * **Details**
1522
1409
  *
1523
- * - `getResult` fails with an error message when the option is `None`.
1410
+ * - `getResult` fails with a structured issue when the option is `None`.
1524
1411
  * - `set(a)` wraps `a` in `Option.some(a)`.
1525
1412
  *
1526
1413
  * **Example** (Accessing Some value)
1527
1414
  *
1528
- * ```ts
1415
+ * ```ts import.meta.vitest
1529
1416
  * import { Optic, Option, Result } from "effect"
1530
1417
  *
1531
1418
  * const _some = Optic.id<Option.Option<number>>().compose(Optic.some())
1532
1419
  *
1533
- * console.log(Result.isSuccess(_some.getResult(Option.some(42))))
1534
- * // Output: true
1420
+ * _some.getResult(Option.some(42)) // => Result.succeed(42)
1535
1421
  *
1536
- * console.log(Result.isFailure(_some.getResult(Option.none())))
1537
- * // Output: true
1422
+ * Result.isFailure(_some.getResult(Option.none())) // => true
1538
1423
  *
1539
- * console.log(_some.set(10))
1540
- * // Output: { _tag: "Some", value: 10 }
1424
+ * _some.set(10) // => Option.some(10)
1541
1425
  * ```
1542
1426
  *
1543
1427
  * @see {@link none} — focuses on `None` instead
1544
1428
  * @see {@link Prism} — the type this function returns
1545
1429
  *
1546
- * @category Prism
1430
+ * @category constructors
1547
1431
  * @since 4.0.0
1548
1432
  */
1549
1433
  export function some<A>(): Prism<Option.Option<A>, A> {
1550
1434
  const run = runRefinement(Option.isSome, { expected: "a Some value" })
1551
1435
  return makePrism(
1552
- (s) =>
1553
- Result.mapBoth(run(s), {
1554
- onFailure: String,
1555
- onSuccess: (s) => s.value
1556
- }),
1436
+ (s) => Result.map(run(s), (s) => s.value),
1557
1437
  Option.some
1558
1438
  )
1559
1439
  }
@@ -1573,32 +1453,26 @@ export function some<A>(): Prism<Option.Option<A>, A> {
1573
1453
  *
1574
1454
  * **Example** (Matching None)
1575
1455
  *
1576
- * ```ts
1456
+ * ```ts import.meta.vitest
1577
1457
  * import { Optic, Option, Result } from "effect"
1578
1458
  *
1579
1459
  * const _none = Optic.id<Option.Option<number>>().compose(Optic.none())
1580
1460
  *
1581
- * console.log(Result.isSuccess(_none.getResult(Option.none())))
1582
- * // Output: true
1461
+ * _none.getResult(Option.none()) // => Result.succeed(undefined)
1583
1462
  *
1584
- * console.log(Result.isFailure(_none.getResult(Option.some(1))))
1585
- * // Output: true
1463
+ * Result.isFailure(_none.getResult(Option.some(1))) // => true
1586
1464
  * ```
1587
1465
  *
1588
1466
  * @see {@link some} — focuses on `Some` instead
1589
1467
  * @see {@link Prism} — the type this function returns
1590
1468
  *
1591
- * @category Prism
1469
+ * @category constructors
1592
1470
  * @since 4.0.0
1593
1471
  */
1594
1472
  export function none<A>(): Prism<Option.Option<A>, undefined> {
1595
1473
  const run = runRefinement(Option.isNone, { expected: "a None value" })
1596
1474
  return makePrism(
1597
- (s) =>
1598
- Result.mapBoth(run(s), {
1599
- onFailure: String,
1600
- onSuccess: () => undefined
1601
- }),
1475
+ (s) => Result.map(run(s), () => undefined),
1602
1476
  () => Option.none()
1603
1477
  )
1604
1478
  }
@@ -1618,32 +1492,26 @@ export function none<A>(): Prism<Option.Option<A>, undefined> {
1618
1492
  *
1619
1493
  * **Example** (Accessing success)
1620
1494
  *
1621
- * ```ts
1495
+ * ```ts import.meta.vitest
1622
1496
  * import { Optic, Result } from "effect"
1623
1497
  *
1624
1498
  * const _ok = Optic.id<Result.Result<number, string>>().compose(Optic.success())
1625
1499
  *
1626
- * console.log(Result.isSuccess(_ok.getResult(Result.succeed(42))))
1627
- * // Output: true
1500
+ * _ok.getResult(Result.succeed(42)) // => Result.succeed(42)
1628
1501
  *
1629
- * console.log(Result.isFailure(_ok.getResult(Result.fail("err"))))
1630
- * // Output: true
1502
+ * Result.isFailure(_ok.getResult(Result.fail("err"))) // => true
1631
1503
  * ```
1632
1504
  *
1633
1505
  * @see {@link failure} — focuses on the failure side
1634
1506
  * @see {@link Prism} — the type this function returns
1635
1507
  *
1636
- * @category Prism
1508
+ * @category constructors
1637
1509
  * @since 4.0.0
1638
1510
  */
1639
1511
  export function success<A, E>(): Prism<Result.Result<A, E>, A> {
1640
1512
  const run = runRefinement(Result.isSuccess, { expected: "a Result.Success value" })
1641
1513
  return makePrism(
1642
- (s) =>
1643
- Result.mapBoth(run(s), {
1644
- onFailure: String,
1645
- onSuccess: (s) => s.success
1646
- }),
1514
+ (s) => Result.map(run(s), (s) => s.success),
1647
1515
  Result.succeed
1648
1516
  )
1649
1517
  }
@@ -1663,32 +1531,26 @@ export function success<A, E>(): Prism<Result.Result<A, E>, A> {
1663
1531
  *
1664
1532
  * **Example** (Accessing failure)
1665
1533
  *
1666
- * ```ts
1534
+ * ```ts import.meta.vitest
1667
1535
  * import { Optic, Result } from "effect"
1668
1536
  *
1669
1537
  * const _err = Optic.id<Result.Result<number, string>>().compose(Optic.failure())
1670
1538
  *
1671
- * console.log(Result.isSuccess(_err.getResult(Result.fail("oops"))))
1672
- * // Output: true
1539
+ * _err.getResult(Result.fail("oops")) // => Result.succeed("oops")
1673
1540
  *
1674
- * console.log(Result.isFailure(_err.getResult(Result.succeed(42))))
1675
- * // Output: true
1541
+ * Result.isFailure(_err.getResult(Result.succeed(42))) // => true
1676
1542
  * ```
1677
1543
  *
1678
1544
  * @see {@link success} — focuses on the success side
1679
1545
  * @see {@link Prism} — the type this function returns
1680
1546
  *
1681
- * @category Prism
1547
+ * @category constructors
1682
1548
  * @since 4.0.0
1683
1549
  */
1684
1550
  export function failure<A, E>(): Prism<Result.Result<A, E>, E> {
1685
1551
  const run = runRefinement(Result.isFailure, { expected: "a Result.Failure value" })
1686
1552
  return makePrism(
1687
- (s) =>
1688
- Result.mapBoth(run(s), {
1689
- onFailure: String,
1690
- onSuccess: (s) => s.failure
1691
- }),
1553
+ (s) => Result.map(run(s), (s) => s.failure),
1692
1554
  Result.fail
1693
1555
  )
1694
1556
  }