effect 4.0.0-beta.4 → 4.0.0-beta.40

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 (1222) hide show
  1. package/dist/Array.d.ts +213 -385
  2. package/dist/Array.d.ts.map +1 -1
  3. package/dist/Array.js +149 -102
  4. package/dist/Array.js.map +1 -1
  5. package/dist/BigDecimal.d.ts +46 -45
  6. package/dist/BigDecimal.d.ts.map +1 -1
  7. package/dist/BigDecimal.js +35 -38
  8. package/dist/BigDecimal.js.map +1 -1
  9. package/dist/BigInt.d.ts +39 -32
  10. package/dist/BigInt.d.ts.map +1 -1
  11. package/dist/BigInt.js +32 -29
  12. package/dist/BigInt.js.map +1 -1
  13. package/dist/Brand.d.ts +1 -1
  14. package/dist/Brand.d.ts.map +1 -1
  15. package/dist/Brand.js +1 -1
  16. package/dist/Brand.js.map +1 -1
  17. package/dist/Cache.d.ts +2 -2
  18. package/dist/Cache.d.ts.map +1 -1
  19. package/dist/Cache.js +6 -5
  20. package/dist/Cache.js.map +1 -1
  21. package/dist/Cause.d.ts +33 -2
  22. package/dist/Cause.d.ts.map +1 -1
  23. package/dist/Cause.js +19 -0
  24. package/dist/Cause.js.map +1 -1
  25. package/dist/Channel.d.ts +130 -35
  26. package/dist/Channel.d.ts.map +1 -1
  27. package/dist/Channel.js +96 -45
  28. package/dist/Channel.js.map +1 -1
  29. package/dist/Chunk.d.ts +112 -304
  30. package/dist/Chunk.d.ts.map +1 -1
  31. package/dist/Chunk.js +56 -88
  32. package/dist/Chunk.js.map +1 -1
  33. package/dist/Combiner.d.ts +280 -13
  34. package/dist/Combiner.d.ts.map +1 -1
  35. package/dist/Combiner.js +198 -7
  36. package/dist/Combiner.js.map +1 -1
  37. package/dist/Config.d.ts +169 -9
  38. package/dist/Config.d.ts.map +1 -1
  39. package/dist/Config.js +69 -11
  40. package/dist/Config.js.map +1 -1
  41. package/dist/ConfigProvider.d.ts +1 -1
  42. package/dist/Cron.d.ts +11 -7
  43. package/dist/Cron.d.ts.map +1 -1
  44. package/dist/Cron.js +120 -63
  45. package/dist/Cron.js.map +1 -1
  46. package/dist/Data.d.ts +535 -366
  47. package/dist/Data.d.ts.map +1 -1
  48. package/dist/Data.js +132 -79
  49. package/dist/Data.js.map +1 -1
  50. package/dist/DateTime.d.ts +72 -253
  51. package/dist/DateTime.d.ts.map +1 -1
  52. package/dist/DateTime.js +15 -60
  53. package/dist/DateTime.js.map +1 -1
  54. package/dist/Deferred.d.ts +7 -5
  55. package/dist/Deferred.d.ts.map +1 -1
  56. package/dist/Deferred.js +7 -5
  57. package/dist/Deferred.js.map +1 -1
  58. package/dist/Duration.d.ts +62 -32
  59. package/dist/Duration.d.ts.map +1 -1
  60. package/dist/Duration.js +108 -78
  61. package/dist/Duration.js.map +1 -1
  62. package/dist/Effect.d.ts +1224 -951
  63. package/dist/Effect.d.ts.map +1 -1
  64. package/dist/Effect.js +398 -338
  65. package/dist/Effect.js.map +1 -1
  66. package/dist/Encoding.d.ts +194 -0
  67. package/dist/Encoding.d.ts.map +1 -0
  68. package/dist/Encoding.js +352 -0
  69. package/dist/Encoding.js.map +1 -0
  70. package/dist/Equal.d.ts +276 -109
  71. package/dist/Equal.d.ts.map +1 -1
  72. package/dist/Equal.js +124 -48
  73. package/dist/Equal.js.map +1 -1
  74. package/dist/Equivalence.d.ts +60 -3
  75. package/dist/Equivalence.d.ts.map +1 -1
  76. package/dist/Equivalence.js +70 -13
  77. package/dist/Equivalence.js.map +1 -1
  78. package/dist/ErrorReporter.d.ts +374 -0
  79. package/dist/ErrorReporter.d.ts.map +1 -0
  80. package/dist/ErrorReporter.js +245 -0
  81. package/dist/ErrorReporter.js.map +1 -0
  82. package/dist/Exit.d.ts +24 -12
  83. package/dist/Exit.d.ts.map +1 -1
  84. package/dist/Exit.js +8 -4
  85. package/dist/Exit.js.map +1 -1
  86. package/dist/Fiber.d.ts +5 -3
  87. package/dist/Fiber.d.ts.map +1 -1
  88. package/dist/Fiber.js.map +1 -1
  89. package/dist/FiberHandle.d.ts +9 -8
  90. package/dist/FiberHandle.d.ts.map +1 -1
  91. package/dist/FiberHandle.js +8 -7
  92. package/dist/FiberHandle.js.map +1 -1
  93. package/dist/FiberMap.d.ts +20 -19
  94. package/dist/FiberMap.d.ts.map +1 -1
  95. package/dist/FiberMap.js +6 -6
  96. package/dist/FiberMap.js.map +1 -1
  97. package/dist/FileSystem.d.ts +18 -17
  98. package/dist/FileSystem.d.ts.map +1 -1
  99. package/dist/FileSystem.js +17 -13
  100. package/dist/FileSystem.js.map +1 -1
  101. package/dist/Filter.d.ts +34 -38
  102. package/dist/Filter.d.ts.map +1 -1
  103. package/dist/Filter.js +15 -13
  104. package/dist/Filter.js.map +1 -1
  105. package/dist/Formatter.d.ts +131 -47
  106. package/dist/Formatter.d.ts.map +1 -1
  107. package/dist/Formatter.js +229 -51
  108. package/dist/Formatter.js.map +1 -1
  109. package/dist/Function.d.ts +1 -9
  110. package/dist/Function.d.ts.map +1 -1
  111. package/dist/Function.js +2 -10
  112. package/dist/Function.js.map +1 -1
  113. package/dist/Graph.d.ts +65 -65
  114. package/dist/Graph.d.ts.map +1 -1
  115. package/dist/Graph.js +60 -62
  116. package/dist/Graph.js.map +1 -1
  117. package/dist/HashMap.d.ts +26 -19
  118. package/dist/HashMap.d.ts.map +1 -1
  119. package/dist/HashMap.js +7 -5
  120. package/dist/HashMap.js.map +1 -1
  121. package/dist/Iterable.d.ts +50 -50
  122. package/dist/Iterable.d.ts.map +1 -1
  123. package/dist/Iterable.js +106 -34
  124. package/dist/Iterable.js.map +1 -1
  125. package/dist/JsonSchema.d.ts +299 -10
  126. package/dist/JsonSchema.d.ts.map +1 -1
  127. package/dist/JsonSchema.js +323 -4
  128. package/dist/JsonSchema.js.map +1 -1
  129. package/dist/Latch.d.ts +175 -0
  130. package/dist/Latch.d.ts.map +1 -0
  131. package/dist/Latch.js +130 -0
  132. package/dist/Latch.js.map +1 -0
  133. package/dist/Layer.d.ts +306 -129
  134. package/dist/Layer.d.ts.map +1 -1
  135. package/dist/Layer.js +92 -47
  136. package/dist/Layer.js.map +1 -1
  137. package/dist/LayerMap.d.ts +9 -8
  138. package/dist/LayerMap.d.ts.map +1 -1
  139. package/dist/LayerMap.js +3 -3
  140. package/dist/LayerMap.js.map +1 -1
  141. package/dist/LogLevel.d.ts +32 -0
  142. package/dist/LogLevel.d.ts.map +1 -1
  143. package/dist/LogLevel.js +28 -100
  144. package/dist/LogLevel.js.map +1 -1
  145. package/dist/Logger.d.ts +29 -95
  146. package/dist/Logger.d.ts.map +1 -1
  147. package/dist/Logger.js +2 -3
  148. package/dist/Logger.js.map +1 -1
  149. package/dist/ManagedRuntime.d.ts +2 -2
  150. package/dist/ManagedRuntime.js +2 -2
  151. package/dist/Metric.d.ts +4 -6
  152. package/dist/Metric.d.ts.map +1 -1
  153. package/dist/Metric.js +3 -5
  154. package/dist/Metric.js.map +1 -1
  155. package/dist/MutableHashMap.d.ts +7 -0
  156. package/dist/MutableHashMap.d.ts.map +1 -1
  157. package/dist/MutableHashMap.js +8 -0
  158. package/dist/MutableHashMap.js.map +1 -1
  159. package/dist/MutableHashSet.d.ts +7 -0
  160. package/dist/MutableHashSet.d.ts.map +1 -1
  161. package/dist/MutableHashSet.js +8 -0
  162. package/dist/MutableHashSet.js.map +1 -1
  163. package/dist/Newtype.d.ts +291 -0
  164. package/dist/Newtype.d.ts.map +1 -0
  165. package/dist/Newtype.js +161 -0
  166. package/dist/Newtype.js.map +1 -0
  167. package/dist/Number.d.ts +74 -18
  168. package/dist/Number.d.ts.map +1 -1
  169. package/dist/Number.js +34 -15
  170. package/dist/Number.js.map +1 -1
  171. package/dist/Optic.d.ts +947 -18
  172. package/dist/Optic.d.ts.map +1 -1
  173. package/dist/Optic.js +454 -5
  174. package/dist/Optic.js.map +1 -1
  175. package/dist/Option.d.ts +25 -16
  176. package/dist/Option.d.ts.map +1 -1
  177. package/dist/Option.js +15 -9
  178. package/dist/Option.js.map +1 -1
  179. package/dist/Order.d.ts +6 -1
  180. package/dist/Order.d.ts.map +1 -1
  181. package/dist/Order.js +19 -14
  182. package/dist/Order.js.map +1 -1
  183. package/dist/PartitionedSemaphore.d.ts +146 -15
  184. package/dist/PartitionedSemaphore.d.ts.map +1 -1
  185. package/dist/PartitionedSemaphore.js +174 -61
  186. package/dist/PartitionedSemaphore.js.map +1 -1
  187. package/dist/Pipeable.d.ts +17 -0
  188. package/dist/Pipeable.d.ts.map +1 -1
  189. package/dist/Pipeable.js +19 -1
  190. package/dist/Pipeable.js.map +1 -1
  191. package/dist/PlatformError.d.ts +10 -9
  192. package/dist/PlatformError.d.ts.map +1 -1
  193. package/dist/PlatformError.js +2 -2
  194. package/dist/PlatformError.js.map +1 -1
  195. package/dist/Pool.d.ts +6 -4
  196. package/dist/Pool.d.ts.map +1 -1
  197. package/dist/Pool.js +7 -5
  198. package/dist/Pool.js.map +1 -1
  199. package/dist/PubSub.d.ts +8 -6
  200. package/dist/PubSub.d.ts.map +1 -1
  201. package/dist/PubSub.js +18 -10
  202. package/dist/PubSub.js.map +1 -1
  203. package/dist/Pull.d.ts.map +1 -1
  204. package/dist/Pull.js +1 -1
  205. package/dist/Pull.js.map +1 -1
  206. package/dist/Queue.d.ts +9 -6
  207. package/dist/Queue.d.ts.map +1 -1
  208. package/dist/Queue.js +7 -5
  209. package/dist/Queue.js.map +1 -1
  210. package/dist/Random.d.ts +35 -1
  211. package/dist/Random.d.ts.map +1 -1
  212. package/dist/Random.js +46 -12
  213. package/dist/Random.js.map +1 -1
  214. package/dist/RcMap.d.ts +2 -2
  215. package/dist/RcMap.d.ts.map +1 -1
  216. package/dist/RcMap.js +1 -1
  217. package/dist/RcMap.js.map +1 -1
  218. package/dist/RcRef.d.ts +1 -1
  219. package/dist/RcRef.d.ts.map +1 -1
  220. package/dist/Record.d.ts +63 -160
  221. package/dist/Record.d.ts.map +1 -1
  222. package/dist/Record.js +37 -56
  223. package/dist/Record.js.map +1 -1
  224. package/dist/Reducer.d.ts +166 -7
  225. package/dist/Reducer.d.ts.map +1 -1
  226. package/dist/Reducer.js +135 -1
  227. package/dist/Reducer.js.map +1 -1
  228. package/dist/References.d.ts +242 -226
  229. package/dist/References.d.ts.map +1 -1
  230. package/dist/References.js +240 -247
  231. package/dist/References.js.map +1 -1
  232. package/dist/Request.d.ts +1 -1
  233. package/dist/Request.d.ts.map +1 -1
  234. package/dist/Request.js +2 -1
  235. package/dist/Request.js.map +1 -1
  236. package/dist/RequestResolver.d.ts +25 -45
  237. package/dist/RequestResolver.d.ts.map +1 -1
  238. package/dist/RequestResolver.js +10 -30
  239. package/dist/RequestResolver.js.map +1 -1
  240. package/dist/Resource.d.ts.map +1 -1
  241. package/dist/Resource.js +2 -1
  242. package/dist/Resource.js.map +1 -1
  243. package/dist/Result.d.ts +1 -1
  244. package/dist/Result.d.ts.map +1 -1
  245. package/dist/Result.js +1 -2
  246. package/dist/Result.js.map +1 -1
  247. package/dist/Runtime.d.ts +66 -0
  248. package/dist/Runtime.d.ts.map +1 -1
  249. package/dist/Runtime.js +79 -6
  250. package/dist/Runtime.js.map +1 -1
  251. package/dist/Schedule.d.ts +174 -291
  252. package/dist/Schedule.d.ts.map +1 -1
  253. package/dist/Schedule.js +160 -134
  254. package/dist/Schedule.js.map +1 -1
  255. package/dist/Scheduler.d.ts +34 -123
  256. package/dist/Scheduler.d.ts.map +1 -1
  257. package/dist/Scheduler.js +31 -123
  258. package/dist/Scheduler.js.map +1 -1
  259. package/dist/Schema.d.ts +2722 -247
  260. package/dist/Schema.d.ts.map +1 -1
  261. package/dist/Schema.js +1947 -224
  262. package/dist/Schema.js.map +1 -1
  263. package/dist/SchemaAST.d.ts +7 -2
  264. package/dist/SchemaAST.d.ts.map +1 -1
  265. package/dist/SchemaAST.js +131 -25
  266. package/dist/SchemaAST.js.map +1 -1
  267. package/dist/SchemaGetter.d.ts +5 -5
  268. package/dist/SchemaGetter.d.ts.map +1 -1
  269. package/dist/SchemaGetter.js +18 -18
  270. package/dist/SchemaGetter.js.map +1 -1
  271. package/dist/SchemaParser.d.ts +44 -54
  272. package/dist/SchemaParser.d.ts.map +1 -1
  273. package/dist/SchemaParser.js +55 -2
  274. package/dist/SchemaParser.js.map +1 -1
  275. package/dist/SchemaRepresentation.d.ts +46 -45
  276. package/dist/SchemaRepresentation.d.ts.map +1 -1
  277. package/dist/SchemaRepresentation.js +49 -24
  278. package/dist/SchemaRepresentation.js.map +1 -1
  279. package/dist/SchemaTransformation.d.ts +107 -3
  280. package/dist/SchemaTransformation.d.ts.map +1 -1
  281. package/dist/SchemaTransformation.js +173 -13
  282. package/dist/SchemaTransformation.js.map +1 -1
  283. package/dist/ScopedCache.d.ts +2 -2
  284. package/dist/ScopedCache.d.ts.map +1 -1
  285. package/dist/ScopedCache.js +1 -1
  286. package/dist/ScopedCache.js.map +1 -1
  287. package/dist/Semaphore.d.ts +307 -0
  288. package/dist/Semaphore.d.ts.map +1 -0
  289. package/dist/Semaphore.js +222 -0
  290. package/dist/Semaphore.js.map +1 -0
  291. package/dist/ServiceMap.d.ts +67 -31
  292. package/dist/ServiceMap.d.ts.map +1 -1
  293. package/dist/ServiceMap.js +39 -24
  294. package/dist/ServiceMap.js.map +1 -1
  295. package/dist/Sink.d.ts +18 -15
  296. package/dist/Sink.d.ts.map +1 -1
  297. package/dist/Sink.js +53 -6
  298. package/dist/Sink.js.map +1 -1
  299. package/dist/Stdio.d.ts +16 -4
  300. package/dist/Stdio.d.ts.map +1 -1
  301. package/dist/Stdio.js +18 -0
  302. package/dist/Stdio.js.map +1 -1
  303. package/dist/Stream.d.ts +284 -431
  304. package/dist/Stream.d.ts.map +1 -1
  305. package/dist/Stream.js +189 -88
  306. package/dist/Stream.js.map +1 -1
  307. package/dist/String.d.ts +114 -47
  308. package/dist/String.d.ts.map +1 -1
  309. package/dist/String.js +29 -47
  310. package/dist/String.js.map +1 -1
  311. package/dist/Struct.d.ts +23 -7
  312. package/dist/Struct.d.ts.map +1 -1
  313. package/dist/Struct.js +22 -0
  314. package/dist/Struct.js.map +1 -1
  315. package/dist/SubscriptionRef.d.ts +3 -3
  316. package/dist/SubscriptionRef.d.ts.map +1 -1
  317. package/dist/SubscriptionRef.js +85 -117
  318. package/dist/SubscriptionRef.js.map +1 -1
  319. package/dist/SynchronizedRef.d.ts +2 -1
  320. package/dist/SynchronizedRef.d.ts.map +1 -1
  321. package/dist/SynchronizedRef.js +2 -1
  322. package/dist/SynchronizedRef.js.map +1 -1
  323. package/dist/Terminal.d.ts +2 -1
  324. package/dist/Terminal.d.ts.map +1 -1
  325. package/dist/Terminal.js.map +1 -1
  326. package/dist/Tracer.d.ts +5 -4
  327. package/dist/Tracer.d.ts.map +1 -1
  328. package/dist/Tracer.js +2 -1
  329. package/dist/Tracer.js.map +1 -1
  330. package/dist/Trie.d.ts +44 -31
  331. package/dist/Trie.d.ts.map +1 -1
  332. package/dist/Trie.js +13 -9
  333. package/dist/Trie.js.map +1 -1
  334. package/dist/TxChunk.d.ts +37 -37
  335. package/dist/TxChunk.d.ts.map +1 -1
  336. package/dist/TxChunk.js +3 -3
  337. package/dist/TxChunk.js.map +1 -1
  338. package/dist/TxDeferred.d.ts +328 -0
  339. package/dist/TxDeferred.d.ts.map +1 -0
  340. package/dist/TxDeferred.js +197 -0
  341. package/dist/TxDeferred.js.map +1 -0
  342. package/dist/TxHashMap.d.ts +159 -140
  343. package/dist/TxHashMap.d.ts.map +1 -1
  344. package/dist/TxHashMap.js +51 -44
  345. package/dist/TxHashMap.js.map +1 -1
  346. package/dist/TxHashSet.d.ts +36 -36
  347. package/dist/TxHashSet.d.ts.map +1 -1
  348. package/dist/TxHashSet.js +16 -15
  349. package/dist/TxHashSet.js.map +1 -1
  350. package/dist/TxPriorityQueue.d.ts +609 -0
  351. package/dist/TxPriorityQueue.d.ts.map +1 -0
  352. package/dist/TxPriorityQueue.js +416 -0
  353. package/dist/TxPriorityQueue.js.map +1 -0
  354. package/dist/TxPubSub.d.ts +585 -0
  355. package/dist/TxPubSub.d.ts.map +1 -0
  356. package/dist/TxPubSub.js +521 -0
  357. package/dist/TxPubSub.js.map +1 -0
  358. package/dist/TxQueue.d.ts +32 -32
  359. package/dist/TxQueue.d.ts.map +1 -1
  360. package/dist/TxQueue.js +26 -26
  361. package/dist/TxQueue.js.map +1 -1
  362. package/dist/TxReentrantLock.d.ts +523 -0
  363. package/dist/TxReentrantLock.d.ts.map +1 -0
  364. package/dist/TxReentrantLock.js +504 -0
  365. package/dist/TxReentrantLock.js.map +1 -0
  366. package/dist/TxRef.d.ts +34 -34
  367. package/dist/TxRef.d.ts.map +1 -1
  368. package/dist/TxRef.js +21 -14
  369. package/dist/TxRef.js.map +1 -1
  370. package/dist/TxSemaphore.d.ts +170 -10
  371. package/dist/TxSemaphore.d.ts.map +1 -1
  372. package/dist/TxSemaphore.js +23 -8
  373. package/dist/TxSemaphore.js.map +1 -1
  374. package/dist/TxSubscriptionRef.d.ts +508 -0
  375. package/dist/TxSubscriptionRef.d.ts.map +1 -0
  376. package/dist/TxSubscriptionRef.js +293 -0
  377. package/dist/TxSubscriptionRef.js.map +1 -0
  378. package/dist/Types.d.ts +80 -23
  379. package/dist/Types.d.ts.map +1 -1
  380. package/dist/Utils.d.ts +137 -65
  381. package/dist/Utils.d.ts.map +1 -1
  382. package/dist/Utils.js +38 -66
  383. package/dist/Utils.js.map +1 -1
  384. package/dist/index.d.ts +804 -53
  385. package/dist/index.d.ts.map +1 -1
  386. package/dist/index.js +804 -53
  387. package/dist/index.js.map +1 -1
  388. package/dist/internal/core.js +11 -3
  389. package/dist/internal/core.js.map +1 -1
  390. package/dist/internal/dateTime.js +77 -71
  391. package/dist/internal/dateTime.js.map +1 -1
  392. package/dist/internal/effect.js +281 -201
  393. package/dist/internal/effect.js.map +1 -1
  394. package/dist/internal/hashMap.js +7 -5
  395. package/dist/internal/hashMap.js.map +1 -1
  396. package/dist/internal/option.js +6 -0
  397. package/dist/internal/option.js.map +1 -1
  398. package/dist/internal/random.d.ts +2 -0
  399. package/dist/internal/random.d.ts.map +1 -0
  400. package/dist/internal/random.js +13 -0
  401. package/dist/internal/random.js.map +1 -0
  402. package/dist/internal/rcRef.js +3 -2
  403. package/dist/internal/rcRef.js.map +1 -1
  404. package/dist/internal/references.d.ts +2 -0
  405. package/dist/internal/references.d.ts.map +1 -0
  406. package/dist/internal/references.js +51 -0
  407. package/dist/internal/references.js.map +1 -0
  408. package/dist/internal/request.js +2 -2
  409. package/dist/internal/request.js.map +1 -1
  410. package/dist/internal/schema/annotations.js +2 -0
  411. package/dist/internal/schema/annotations.js.map +1 -1
  412. package/dist/internal/schema/representation.js +47 -106
  413. package/dist/internal/schema/representation.js.map +1 -1
  414. package/dist/internal/schema/schema.js +1 -0
  415. package/dist/internal/schema/schema.js.map +1 -1
  416. package/dist/internal/schema/to-codec.js +7 -10
  417. package/dist/internal/schema/to-codec.js.map +1 -1
  418. package/dist/internal/trie.js +8 -7
  419. package/dist/internal/trie.js.map +1 -1
  420. package/dist/testing/TestClock.d.ts +8 -7
  421. package/dist/testing/TestClock.d.ts.map +1 -1
  422. package/dist/testing/TestClock.js +6 -4
  423. package/dist/testing/TestClock.js.map +1 -1
  424. package/dist/testing/TestSchema.d.ts +266 -32
  425. package/dist/testing/TestSchema.d.ts.map +1 -1
  426. package/dist/testing/TestSchema.js +296 -23
  427. package/dist/testing/TestSchema.js.map +1 -1
  428. package/dist/testing/index.d.ts +64 -1
  429. package/dist/testing/index.d.ts.map +1 -1
  430. package/dist/testing/index.js +64 -1
  431. package/dist/testing/index.js.map +1 -1
  432. package/dist/unstable/ai/AiError.d.ts +136 -54
  433. package/dist/unstable/ai/AiError.d.ts.map +1 -1
  434. package/dist/unstable/ai/AiError.js +28 -23
  435. package/dist/unstable/ai/AiError.js.map +1 -1
  436. package/dist/unstable/ai/AnthropicStructuredOutput.d.ts.map +1 -1
  437. package/dist/unstable/ai/AnthropicStructuredOutput.js +4 -0
  438. package/dist/unstable/ai/AnthropicStructuredOutput.js.map +1 -1
  439. package/dist/unstable/ai/Chat.d.ts +7 -8
  440. package/dist/unstable/ai/Chat.d.ts.map +1 -1
  441. package/dist/unstable/ai/Chat.js +38 -44
  442. package/dist/unstable/ai/Chat.js.map +1 -1
  443. package/dist/unstable/ai/EmbeddingModel.d.ts +130 -0
  444. package/dist/unstable/ai/EmbeddingModel.d.ts.map +1 -0
  445. package/dist/unstable/ai/EmbeddingModel.js +127 -0
  446. package/dist/unstable/ai/EmbeddingModel.js.map +1 -0
  447. package/dist/unstable/ai/LanguageModel.d.ts +53 -45
  448. package/dist/unstable/ai/LanguageModel.d.ts.map +1 -1
  449. package/dist/unstable/ai/LanguageModel.js +265 -143
  450. package/dist/unstable/ai/LanguageModel.js.map +1 -1
  451. package/dist/unstable/ai/McpSchema.d.ts +183 -88
  452. package/dist/unstable/ai/McpSchema.d.ts.map +1 -1
  453. package/dist/unstable/ai/McpSchema.js +57 -12
  454. package/dist/unstable/ai/McpSchema.js.map +1 -1
  455. package/dist/unstable/ai/McpServer.d.ts +66 -13
  456. package/dist/unstable/ai/McpServer.d.ts.map +1 -1
  457. package/dist/unstable/ai/McpServer.js +193 -51
  458. package/dist/unstable/ai/McpServer.js.map +1 -1
  459. package/dist/unstable/ai/Model.d.ts +25 -7
  460. package/dist/unstable/ai/Model.d.ts.map +1 -1
  461. package/dist/unstable/ai/Model.js +22 -6
  462. package/dist/unstable/ai/Model.js.map +1 -1
  463. package/dist/unstable/ai/OpenAiStructuredOutput.d.ts.map +1 -1
  464. package/dist/unstable/ai/OpenAiStructuredOutput.js +4 -0
  465. package/dist/unstable/ai/OpenAiStructuredOutput.js.map +1 -1
  466. package/dist/unstable/ai/Prompt.d.ts +20 -20
  467. package/dist/unstable/ai/Prompt.d.ts.map +1 -1
  468. package/dist/unstable/ai/Response.d.ts +26 -26
  469. package/dist/unstable/ai/Response.d.ts.map +1 -1
  470. package/dist/unstable/ai/Response.js +1 -1
  471. package/dist/unstable/ai/Response.js.map +1 -1
  472. package/dist/unstable/ai/ResponseIdTracker.d.ts +38 -0
  473. package/dist/unstable/ai/ResponseIdTracker.d.ts.map +1 -0
  474. package/dist/unstable/ai/ResponseIdTracker.js +68 -0
  475. package/dist/unstable/ai/ResponseIdTracker.js.map +1 -0
  476. package/dist/unstable/ai/Tool.d.ts +34 -4
  477. package/dist/unstable/ai/Tool.d.ts.map +1 -1
  478. package/dist/unstable/ai/Tool.js +28 -10
  479. package/dist/unstable/ai/Tool.js.map +1 -1
  480. package/dist/unstable/ai/Toolkit.d.ts +1 -1
  481. package/dist/unstable/ai/Toolkit.d.ts.map +1 -1
  482. package/dist/unstable/ai/Toolkit.js +4 -11
  483. package/dist/unstable/ai/Toolkit.js.map +1 -1
  484. package/dist/unstable/ai/index.d.ts +22 -1
  485. package/dist/unstable/ai/index.d.ts.map +1 -1
  486. package/dist/unstable/ai/index.js +22 -1
  487. package/dist/unstable/ai/index.js.map +1 -1
  488. package/dist/unstable/ai/internal/codec-transformer.js +0 -5
  489. package/dist/unstable/ai/internal/codec-transformer.js.map +1 -1
  490. package/dist/unstable/cli/Argument.d.ts +2 -4
  491. package/dist/unstable/cli/Argument.d.ts.map +1 -1
  492. package/dist/unstable/cli/Argument.js +1 -3
  493. package/dist/unstable/cli/Argument.js.map +1 -1
  494. package/dist/unstable/cli/CliError.d.ts +27 -60
  495. package/dist/unstable/cli/CliError.d.ts.map +1 -1
  496. package/dist/unstable/cli/CliError.js +25 -57
  497. package/dist/unstable/cli/CliError.js.map +1 -1
  498. package/dist/unstable/cli/CliOutput.d.ts +3 -2
  499. package/dist/unstable/cli/CliOutput.d.ts.map +1 -1
  500. package/dist/unstable/cli/CliOutput.js +65 -10
  501. package/dist/unstable/cli/CliOutput.js.map +1 -1
  502. package/dist/unstable/cli/Command.d.ts +371 -58
  503. package/dist/unstable/cli/Command.d.ts.map +1 -1
  504. package/dist/unstable/cli/Command.js +328 -67
  505. package/dist/unstable/cli/Command.js.map +1 -1
  506. package/dist/unstable/cli/Completions.d.ts +16 -0
  507. package/dist/unstable/cli/Completions.d.ts.map +1 -0
  508. package/dist/unstable/cli/Completions.js +23 -0
  509. package/dist/unstable/cli/Completions.js.map +1 -0
  510. package/dist/unstable/cli/Flag.d.ts +2 -2
  511. package/dist/unstable/cli/Flag.d.ts.map +1 -1
  512. package/dist/unstable/cli/Flag.js +1 -1
  513. package/dist/unstable/cli/Flag.js.map +1 -1
  514. package/dist/unstable/cli/GlobalFlag.d.ts +125 -0
  515. package/dist/unstable/cli/GlobalFlag.d.ts.map +1 -0
  516. package/dist/unstable/cli/GlobalFlag.js +118 -0
  517. package/dist/unstable/cli/GlobalFlag.js.map +1 -0
  518. package/dist/unstable/cli/HelpDoc.d.ts +81 -11
  519. package/dist/unstable/cli/HelpDoc.d.ts.map +1 -1
  520. package/dist/unstable/cli/Param.d.ts +4 -4
  521. package/dist/unstable/cli/Param.d.ts.map +1 -1
  522. package/dist/unstable/cli/Param.js +7 -7
  523. package/dist/unstable/cli/Param.js.map +1 -1
  524. package/dist/unstable/cli/Primitive.d.ts +2 -2
  525. package/dist/unstable/cli/Primitive.d.ts.map +1 -1
  526. package/dist/unstable/cli/Primitive.js +1 -1
  527. package/dist/unstable/cli/Primitive.js.map +1 -1
  528. package/dist/unstable/cli/Prompt.js +258 -84
  529. package/dist/unstable/cli/Prompt.js.map +1 -1
  530. package/dist/unstable/cli/index.d.ts +8 -0
  531. package/dist/unstable/cli/index.d.ts.map +1 -1
  532. package/dist/unstable/cli/index.js +8 -0
  533. package/dist/unstable/cli/index.js.map +1 -1
  534. package/dist/unstable/cli/internal/command.d.ts +40 -14
  535. package/dist/unstable/cli/internal/command.d.ts.map +1 -1
  536. package/dist/unstable/cli/internal/command.js +72 -46
  537. package/dist/unstable/cli/internal/command.js.map +1 -1
  538. package/dist/unstable/cli/internal/completions/CommandDescriptor.js +16 -4
  539. package/dist/unstable/cli/internal/completions/CommandDescriptor.js.map +1 -1
  540. package/dist/unstable/cli/internal/config.js +42 -0
  541. package/dist/unstable/cli/internal/config.js.map +1 -1
  542. package/dist/unstable/cli/internal/help.d.ts +33 -0
  543. package/dist/unstable/cli/internal/help.d.ts.map +1 -0
  544. package/dist/unstable/cli/internal/help.js +125 -0
  545. package/dist/unstable/cli/internal/help.js.map +1 -0
  546. package/dist/unstable/cli/internal/parser.js +61 -43
  547. package/dist/unstable/cli/internal/parser.js.map +1 -1
  548. package/dist/unstable/cluster/ClusterCron.d.ts +1 -1
  549. package/dist/unstable/cluster/ClusterCron.d.ts.map +1 -1
  550. package/dist/unstable/cluster/ClusterCron.js +1 -1
  551. package/dist/unstable/cluster/ClusterCron.js.map +1 -1
  552. package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts +3 -2
  553. package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
  554. package/dist/unstable/cluster/ClusterWorkflowEngine.js +29 -26
  555. package/dist/unstable/cluster/ClusterWorkflowEngine.js.map +1 -1
  556. package/dist/unstable/cluster/DeliverAt.js +1 -1
  557. package/dist/unstable/cluster/DeliverAt.js.map +1 -1
  558. package/dist/unstable/cluster/Entity.d.ts +10 -8
  559. package/dist/unstable/cluster/Entity.d.ts.map +1 -1
  560. package/dist/unstable/cluster/Entity.js +7 -7
  561. package/dist/unstable/cluster/Entity.js.map +1 -1
  562. package/dist/unstable/cluster/EntityAddress.d.ts.map +1 -1
  563. package/dist/unstable/cluster/EntityAddress.js +1 -1
  564. package/dist/unstable/cluster/EntityAddress.js.map +1 -1
  565. package/dist/unstable/cluster/EntityResource.d.ts +2 -2
  566. package/dist/unstable/cluster/EntityResource.d.ts.map +1 -1
  567. package/dist/unstable/cluster/Envelope.d.ts +1 -1
  568. package/dist/unstable/cluster/K8sHttpClient.d.ts +1 -1
  569. package/dist/unstable/cluster/K8sHttpClient.js +4 -4
  570. package/dist/unstable/cluster/K8sHttpClient.js.map +1 -1
  571. package/dist/unstable/cluster/Message.d.ts +14 -13
  572. package/dist/unstable/cluster/Message.d.ts.map +1 -1
  573. package/dist/unstable/cluster/Message.js +3 -2
  574. package/dist/unstable/cluster/Message.js.map +1 -1
  575. package/dist/unstable/cluster/MessageStorage.d.ts +10 -10
  576. package/dist/unstable/cluster/MessageStorage.d.ts.map +1 -1
  577. package/dist/unstable/cluster/MessageStorage.js +14 -13
  578. package/dist/unstable/cluster/MessageStorage.js.map +1 -1
  579. package/dist/unstable/cluster/Reply.d.ts +8 -7
  580. package/dist/unstable/cluster/Reply.d.ts.map +1 -1
  581. package/dist/unstable/cluster/Reply.js +4 -3
  582. package/dist/unstable/cluster/Reply.js.map +1 -1
  583. package/dist/unstable/cluster/Runner.d.ts +1 -1
  584. package/dist/unstable/cluster/Runner.d.ts.map +1 -1
  585. package/dist/unstable/cluster/Runner.js +1 -1
  586. package/dist/unstable/cluster/Runner.js.map +1 -1
  587. package/dist/unstable/cluster/RunnerAddress.d.ts.map +1 -1
  588. package/dist/unstable/cluster/RunnerAddress.js +1 -1
  589. package/dist/unstable/cluster/RunnerAddress.js.map +1 -1
  590. package/dist/unstable/cluster/RunnerServer.d.ts.map +1 -1
  591. package/dist/unstable/cluster/RunnerServer.js +9 -8
  592. package/dist/unstable/cluster/RunnerServer.js.map +1 -1
  593. package/dist/unstable/cluster/Runners.d.ts +2 -1
  594. package/dist/unstable/cluster/Runners.d.ts.map +1 -1
  595. package/dist/unstable/cluster/Runners.js +11 -9
  596. package/dist/unstable/cluster/Runners.js.map +1 -1
  597. package/dist/unstable/cluster/ShardId.js +3 -3
  598. package/dist/unstable/cluster/ShardId.js.map +1 -1
  599. package/dist/unstable/cluster/Sharding.d.ts +2 -2
  600. package/dist/unstable/cluster/Sharding.d.ts.map +1 -1
  601. package/dist/unstable/cluster/Sharding.js +28 -20
  602. package/dist/unstable/cluster/Sharding.js.map +1 -1
  603. package/dist/unstable/cluster/ShardingConfig.d.ts +26 -25
  604. package/dist/unstable/cluster/ShardingConfig.d.ts.map +1 -1
  605. package/dist/unstable/cluster/ShardingConfig.js +24 -24
  606. package/dist/unstable/cluster/ShardingConfig.js.map +1 -1
  607. package/dist/unstable/cluster/SqlMessageStorage.d.ts.map +1 -1
  608. package/dist/unstable/cluster/SqlMessageStorage.js +19 -18
  609. package/dist/unstable/cluster/SqlMessageStorage.js.map +1 -1
  610. package/dist/unstable/cluster/SqlRunnerStorage.js +1 -1
  611. package/dist/unstable/cluster/SqlRunnerStorage.js.map +1 -1
  612. package/dist/unstable/cluster/internal/entityManager.js +14 -14
  613. package/dist/unstable/cluster/internal/entityManager.js.map +1 -1
  614. package/dist/unstable/cluster/internal/entityReaper.js +2 -1
  615. package/dist/unstable/cluster/internal/entityReaper.js.map +1 -1
  616. package/dist/unstable/cluster/internal/resourceRef.js +2 -1
  617. package/dist/unstable/cluster/internal/resourceRef.js.map +1 -1
  618. package/dist/unstable/devtools/DevToolsClient.d.ts.map +1 -1
  619. package/dist/unstable/devtools/DevToolsClient.js +4 -3
  620. package/dist/unstable/devtools/DevToolsClient.js.map +1 -1
  621. package/dist/unstable/devtools/DevToolsSchema.d.ts +40 -40
  622. package/dist/unstable/devtools/DevToolsSchema.d.ts.map +1 -1
  623. package/dist/unstable/devtools/DevToolsSchema.js +9 -2
  624. package/dist/unstable/devtools/DevToolsSchema.js.map +1 -1
  625. package/dist/unstable/encoding/Msgpack.d.ts +1 -1
  626. package/dist/unstable/encoding/Ndjson.d.ts +9 -9
  627. package/dist/unstable/encoding/Ndjson.d.ts.map +1 -1
  628. package/dist/unstable/encoding/Ndjson.js.map +1 -1
  629. package/dist/unstable/encoding/Sse.d.ts +4 -4
  630. package/dist/unstable/encoding/Sse.d.ts.map +1 -1
  631. package/dist/unstable/encoding/Sse.js +1 -1
  632. package/dist/unstable/encoding/Sse.js.map +1 -1
  633. package/dist/unstable/eventlog/EventJournal.d.ts +2 -2
  634. package/dist/unstable/eventlog/EventJournal.js +2 -2
  635. package/dist/unstable/eventlog/EventJournal.js.map +1 -1
  636. package/dist/unstable/eventlog/EventLog.d.ts.map +1 -1
  637. package/dist/unstable/eventlog/EventLog.js +3 -2
  638. package/dist/unstable/eventlog/EventLog.js.map +1 -1
  639. package/dist/unstable/eventlog/EventLogRemote.d.ts +6 -6
  640. package/dist/unstable/eventlog/SqlEventLogJournal.js +2 -2
  641. package/dist/unstable/eventlog/SqlEventLogJournal.js.map +1 -1
  642. package/dist/unstable/http/Cookies.d.ts +52 -7
  643. package/dist/unstable/http/Cookies.d.ts.map +1 -1
  644. package/dist/unstable/http/Cookies.js +27 -6
  645. package/dist/unstable/http/Cookies.js.map +1 -1
  646. package/dist/unstable/http/Etag.d.ts.map +1 -1
  647. package/dist/unstable/http/Etag.js +5 -1
  648. package/dist/unstable/http/Etag.js.map +1 -1
  649. package/dist/unstable/http/Headers.d.ts +19 -2
  650. package/dist/unstable/http/Headers.d.ts.map +1 -1
  651. package/dist/unstable/http/Headers.js +40 -11
  652. package/dist/unstable/http/Headers.js.map +1 -1
  653. package/dist/unstable/http/HttpBody.d.ts +1 -1
  654. package/dist/unstable/http/HttpClient.d.ts +117 -15
  655. package/dist/unstable/http/HttpClient.d.ts.map +1 -1
  656. package/dist/unstable/http/HttpClient.js +191 -13
  657. package/dist/unstable/http/HttpClient.js.map +1 -1
  658. package/dist/unstable/http/HttpClientError.d.ts +7 -7
  659. package/dist/unstable/http/HttpClientRequest.d.ts +43 -15
  660. package/dist/unstable/http/HttpClientRequest.d.ts.map +1 -1
  661. package/dist/unstable/http/HttpClientRequest.js +131 -21
  662. package/dist/unstable/http/HttpClientRequest.js.map +1 -1
  663. package/dist/unstable/http/HttpClientResponse.d.ts +2 -1
  664. package/dist/unstable/http/HttpClientResponse.d.ts.map +1 -1
  665. package/dist/unstable/http/HttpClientResponse.js +6 -1
  666. package/dist/unstable/http/HttpClientResponse.js.map +1 -1
  667. package/dist/unstable/http/HttpEffect.d.ts +7 -5
  668. package/dist/unstable/http/HttpEffect.d.ts.map +1 -1
  669. package/dist/unstable/http/HttpEffect.js +46 -54
  670. package/dist/unstable/http/HttpEffect.js.map +1 -1
  671. package/dist/unstable/http/HttpIncomingMessage.d.ts +3 -2
  672. package/dist/unstable/http/HttpIncomingMessage.d.ts.map +1 -1
  673. package/dist/unstable/http/HttpIncomingMessage.js.map +1 -1
  674. package/dist/unstable/http/HttpMethod.d.ts +4 -4
  675. package/dist/unstable/http/HttpMethod.d.ts.map +1 -1
  676. package/dist/unstable/http/HttpMethod.js +3 -3
  677. package/dist/unstable/http/HttpMethod.js.map +1 -1
  678. package/dist/unstable/http/HttpMiddleware.d.ts +1 -6
  679. package/dist/unstable/http/HttpMiddleware.d.ts.map +1 -1
  680. package/dist/unstable/http/HttpMiddleware.js +24 -32
  681. package/dist/unstable/http/HttpMiddleware.js.map +1 -1
  682. package/dist/unstable/http/HttpPlatform.d.ts.map +1 -1
  683. package/dist/unstable/http/HttpPlatform.js +3 -2
  684. package/dist/unstable/http/HttpPlatform.js.map +1 -1
  685. package/dist/unstable/http/HttpRouter.d.ts +2 -1
  686. package/dist/unstable/http/HttpRouter.d.ts.map +1 -1
  687. package/dist/unstable/http/HttpRouter.js +7 -7
  688. package/dist/unstable/http/HttpRouter.js.map +1 -1
  689. package/dist/unstable/http/HttpServer.d.ts.map +1 -1
  690. package/dist/unstable/http/HttpServer.js +2 -2
  691. package/dist/unstable/http/HttpServer.js.map +1 -1
  692. package/dist/unstable/http/HttpServerError.d.ts +22 -34
  693. package/dist/unstable/http/HttpServerError.d.ts.map +1 -1
  694. package/dist/unstable/http/HttpServerError.js +39 -45
  695. package/dist/unstable/http/HttpServerError.js.map +1 -1
  696. package/dist/unstable/http/HttpServerRequest.d.ts +15 -3
  697. package/dist/unstable/http/HttpServerRequest.d.ts.map +1 -1
  698. package/dist/unstable/http/HttpServerRequest.js +301 -7
  699. package/dist/unstable/http/HttpServerRequest.js.map +1 -1
  700. package/dist/unstable/http/HttpServerRespondable.d.ts +2 -2
  701. package/dist/unstable/http/HttpServerRespondable.d.ts.map +1 -1
  702. package/dist/unstable/http/HttpServerRespondable.js +5 -5
  703. package/dist/unstable/http/HttpServerRespondable.js.map +1 -1
  704. package/dist/unstable/http/HttpServerResponse.d.ts +50 -3
  705. package/dist/unstable/http/HttpServerResponse.d.ts.map +1 -1
  706. package/dist/unstable/http/HttpServerResponse.js +236 -1
  707. package/dist/unstable/http/HttpServerResponse.js.map +1 -1
  708. package/dist/unstable/http/HttpStaticServer.d.ts +69 -0
  709. package/dist/unstable/http/HttpStaticServer.d.ts.map +1 -0
  710. package/dist/unstable/http/HttpStaticServer.js +353 -0
  711. package/dist/unstable/http/HttpStaticServer.js.map +1 -0
  712. package/dist/unstable/http/HttpTraceContext.d.ts +3 -2
  713. package/dist/unstable/http/HttpTraceContext.d.ts.map +1 -1
  714. package/dist/unstable/http/HttpTraceContext.js +27 -15
  715. package/dist/unstable/http/HttpTraceContext.js.map +1 -1
  716. package/dist/unstable/http/Multipart.d.ts +3 -3
  717. package/dist/unstable/http/Url.d.ts +604 -0
  718. package/dist/unstable/http/Url.d.ts.map +1 -0
  719. package/dist/unstable/http/Url.js +256 -0
  720. package/dist/unstable/http/Url.js.map +1 -0
  721. package/dist/unstable/http/UrlParams.d.ts +19 -10
  722. package/dist/unstable/http/UrlParams.d.ts.map +1 -1
  723. package/dist/unstable/http/UrlParams.js +6 -7
  724. package/dist/unstable/http/UrlParams.js.map +1 -1
  725. package/dist/unstable/http/index.d.ts +8 -0
  726. package/dist/unstable/http/index.d.ts.map +1 -1
  727. package/dist/unstable/http/index.js +8 -0
  728. package/dist/unstable/http/index.js.map +1 -1
  729. package/dist/unstable/http/internal/preResponseHandler.d.ts +2 -0
  730. package/dist/unstable/http/internal/preResponseHandler.d.ts.map +1 -0
  731. package/dist/unstable/http/internal/preResponseHandler.js +10 -0
  732. package/dist/unstable/http/internal/preResponseHandler.js.map +1 -0
  733. package/dist/unstable/httpapi/HttpApi.d.ts +4 -4
  734. package/dist/unstable/httpapi/HttpApi.d.ts.map +1 -1
  735. package/dist/unstable/httpapi/HttpApi.js.map +1 -1
  736. package/dist/unstable/httpapi/HttpApiBuilder.d.ts +11 -5
  737. package/dist/unstable/httpapi/HttpApiBuilder.d.ts.map +1 -1
  738. package/dist/unstable/httpapi/HttpApiBuilder.js +40 -27
  739. package/dist/unstable/httpapi/HttpApiBuilder.js.map +1 -1
  740. package/dist/unstable/httpapi/HttpApiClient.d.ts +83 -7
  741. package/dist/unstable/httpapi/HttpApiClient.d.ts.map +1 -1
  742. package/dist/unstable/httpapi/HttpApiClient.js +78 -10
  743. package/dist/unstable/httpapi/HttpApiClient.js.map +1 -1
  744. package/dist/unstable/httpapi/HttpApiEndpoint.d.ts +207 -101
  745. package/dist/unstable/httpapi/HttpApiEndpoint.d.ts.map +1 -1
  746. package/dist/unstable/httpapi/HttpApiEndpoint.js +49 -43
  747. package/dist/unstable/httpapi/HttpApiEndpoint.js.map +1 -1
  748. package/dist/unstable/httpapi/HttpApiError.d.ts +31 -14
  749. package/dist/unstable/httpapi/HttpApiError.d.ts.map +1 -1
  750. package/dist/unstable/httpapi/HttpApiError.js +125 -32
  751. package/dist/unstable/httpapi/HttpApiError.js.map +1 -1
  752. package/dist/unstable/httpapi/HttpApiGroup.d.ts +4 -3
  753. package/dist/unstable/httpapi/HttpApiGroup.d.ts.map +1 -1
  754. package/dist/unstable/httpapi/HttpApiGroup.js.map +1 -1
  755. package/dist/unstable/httpapi/HttpApiMiddleware.d.ts +46 -15
  756. package/dist/unstable/httpapi/HttpApiMiddleware.d.ts.map +1 -1
  757. package/dist/unstable/httpapi/HttpApiMiddleware.js +32 -3
  758. package/dist/unstable/httpapi/HttpApiMiddleware.js.map +1 -1
  759. package/dist/unstable/httpapi/HttpApiScalar.d.ts +6 -0
  760. package/dist/unstable/httpapi/HttpApiScalar.d.ts.map +1 -1
  761. package/dist/unstable/httpapi/HttpApiScalar.js.map +1 -1
  762. package/dist/unstable/httpapi/HttpApiSchema.d.ts +5 -0
  763. package/dist/unstable/httpapi/HttpApiSchema.d.ts.map +1 -1
  764. package/dist/unstable/httpapi/HttpApiSchema.js +20 -2
  765. package/dist/unstable/httpapi/HttpApiSchema.js.map +1 -1
  766. package/dist/unstable/httpapi/HttpApiSecurity.d.ts +2 -2
  767. package/dist/unstable/httpapi/HttpApiSecurity.d.ts.map +1 -1
  768. package/dist/unstable/httpapi/HttpApiSecurity.js.map +1 -1
  769. package/dist/unstable/httpapi/OpenApi.d.ts.map +1 -1
  770. package/dist/unstable/httpapi/OpenApi.js +34 -26
  771. package/dist/unstable/httpapi/OpenApi.js.map +1 -1
  772. package/dist/unstable/observability/Otlp.d.ts +12 -12
  773. package/dist/unstable/observability/Otlp.d.ts.map +1 -1
  774. package/dist/unstable/observability/OtlpExporter.d.ts +2 -2
  775. package/dist/unstable/observability/OtlpExporter.d.ts.map +1 -1
  776. package/dist/unstable/observability/OtlpExporter.js +3 -3
  777. package/dist/unstable/observability/OtlpExporter.js.map +1 -1
  778. package/dist/unstable/observability/OtlpLogger.d.ts +4 -4
  779. package/dist/unstable/observability/OtlpLogger.d.ts.map +1 -1
  780. package/dist/unstable/observability/OtlpLogger.js +7 -4
  781. package/dist/unstable/observability/OtlpLogger.js.map +1 -1
  782. package/dist/unstable/observability/OtlpMetrics.d.ts +4 -4
  783. package/dist/unstable/observability/OtlpMetrics.d.ts.map +1 -1
  784. package/dist/unstable/observability/OtlpTracer.d.ts +4 -4
  785. package/dist/unstable/observability/OtlpTracer.d.ts.map +1 -1
  786. package/dist/unstable/observability/OtlpTracer.js +7 -3
  787. package/dist/unstable/observability/OtlpTracer.js.map +1 -1
  788. package/dist/unstable/persistence/KeyValueStore.d.ts +1 -1
  789. package/dist/unstable/persistence/KeyValueStore.js +6 -6
  790. package/dist/unstable/persistence/KeyValueStore.js.map +1 -1
  791. package/dist/unstable/persistence/Persistable.d.ts +2 -2
  792. package/dist/unstable/persistence/Persistable.d.ts.map +1 -1
  793. package/dist/unstable/persistence/Persistable.js +1 -1
  794. package/dist/unstable/persistence/Persistable.js.map +1 -1
  795. package/dist/unstable/persistence/PersistedCache.d.ts +6 -5
  796. package/dist/unstable/persistence/PersistedCache.d.ts.map +1 -1
  797. package/dist/unstable/persistence/PersistedCache.js +2 -1
  798. package/dist/unstable/persistence/PersistedCache.js.map +1 -1
  799. package/dist/unstable/persistence/PersistedQueue.d.ts +12 -12
  800. package/dist/unstable/persistence/PersistedQueue.d.ts.map +1 -1
  801. package/dist/unstable/persistence/PersistedQueue.js +12 -11
  802. package/dist/unstable/persistence/PersistedQueue.js.map +1 -1
  803. package/dist/unstable/persistence/Persistence.d.ts +1 -1
  804. package/dist/unstable/persistence/Persistence.d.ts.map +1 -1
  805. package/dist/unstable/persistence/Persistence.js +2 -2
  806. package/dist/unstable/persistence/Persistence.js.map +1 -1
  807. package/dist/unstable/persistence/RateLimiter.d.ts +3 -3
  808. package/dist/unstable/persistence/RateLimiter.d.ts.map +1 -1
  809. package/dist/unstable/persistence/RateLimiter.js +1 -1
  810. package/dist/unstable/persistence/RateLimiter.js.map +1 -1
  811. package/dist/unstable/process/ChildProcess.d.ts +5 -128
  812. package/dist/unstable/process/ChildProcess.d.ts.map +1 -1
  813. package/dist/unstable/process/ChildProcess.js +1 -65
  814. package/dist/unstable/process/ChildProcess.js.map +1 -1
  815. package/dist/unstable/process/ChildProcessSpawner.d.ts +45 -7
  816. package/dist/unstable/process/ChildProcessSpawner.d.ts.map +1 -1
  817. package/dist/unstable/process/ChildProcessSpawner.js +21 -1
  818. package/dist/unstable/process/ChildProcessSpawner.js.map +1 -1
  819. package/dist/unstable/reactivity/Atom.d.ts +73 -12
  820. package/dist/unstable/reactivity/Atom.d.ts.map +1 -1
  821. package/dist/unstable/reactivity/Atom.js +108 -25
  822. package/dist/unstable/reactivity/Atom.js.map +1 -1
  823. package/dist/unstable/reactivity/AtomHttpApi.d.ts +17 -15
  824. package/dist/unstable/reactivity/AtomHttpApi.d.ts.map +1 -1
  825. package/dist/unstable/reactivity/AtomHttpApi.js +45 -15
  826. package/dist/unstable/reactivity/AtomHttpApi.js.map +1 -1
  827. package/dist/unstable/reactivity/AtomRegistry.d.ts +6 -0
  828. package/dist/unstable/reactivity/AtomRegistry.d.ts.map +1 -1
  829. package/dist/unstable/reactivity/AtomRegistry.js +54 -11
  830. package/dist/unstable/reactivity/AtomRegistry.js.map +1 -1
  831. package/dist/unstable/reactivity/AtomRpc.d.ts +9 -9
  832. package/dist/unstable/reactivity/AtomRpc.d.ts.map +1 -1
  833. package/dist/unstable/reactivity/AtomRpc.js +47 -21
  834. package/dist/unstable/reactivity/AtomRpc.js.map +1 -1
  835. package/dist/unstable/reactivity/Hydration.d.ts +39 -0
  836. package/dist/unstable/reactivity/Hydration.d.ts.map +1 -0
  837. package/dist/unstable/reactivity/Hydration.js +76 -0
  838. package/dist/unstable/reactivity/Hydration.js.map +1 -0
  839. package/dist/unstable/reactivity/index.d.ts +4 -0
  840. package/dist/unstable/reactivity/index.d.ts.map +1 -1
  841. package/dist/unstable/reactivity/index.js +4 -0
  842. package/dist/unstable/reactivity/index.js.map +1 -1
  843. package/dist/unstable/rpc/Rpc.d.ts +5 -5
  844. package/dist/unstable/rpc/Rpc.d.ts.map +1 -1
  845. package/dist/unstable/rpc/Rpc.js +4 -3
  846. package/dist/unstable/rpc/Rpc.js.map +1 -1
  847. package/dist/unstable/rpc/RpcClient.d.ts +5 -26
  848. package/dist/unstable/rpc/RpcClient.d.ts.map +1 -1
  849. package/dist/unstable/rpc/RpcClient.js +10 -17
  850. package/dist/unstable/rpc/RpcClient.js.map +1 -1
  851. package/dist/unstable/rpc/RpcGroup.d.ts +3 -5
  852. package/dist/unstable/rpc/RpcGroup.d.ts.map +1 -1
  853. package/dist/unstable/rpc/RpcGroup.js.map +1 -1
  854. package/dist/unstable/rpc/RpcMiddleware.d.ts +8 -8
  855. package/dist/unstable/rpc/RpcMiddleware.d.ts.map +1 -1
  856. package/dist/unstable/rpc/RpcMiddleware.js.map +1 -1
  857. package/dist/unstable/rpc/RpcSchema.d.ts +13 -0
  858. package/dist/unstable/rpc/RpcSchema.d.ts.map +1 -1
  859. package/dist/unstable/rpc/RpcSchema.js +17 -2
  860. package/dist/unstable/rpc/RpcSchema.js.map +1 -1
  861. package/dist/unstable/rpc/RpcSerialization.d.ts.map +1 -1
  862. package/dist/unstable/rpc/RpcSerialization.js +39 -11
  863. package/dist/unstable/rpc/RpcSerialization.js.map +1 -1
  864. package/dist/unstable/rpc/RpcServer.d.ts +6 -10
  865. package/dist/unstable/rpc/RpcServer.d.ts.map +1 -1
  866. package/dist/unstable/rpc/RpcServer.js +20 -19
  867. package/dist/unstable/rpc/RpcServer.js.map +1 -1
  868. package/dist/unstable/rpc/Utils.d.ts.map +1 -1
  869. package/dist/unstable/rpc/Utils.js +3 -2
  870. package/dist/unstable/rpc/Utils.js.map +1 -1
  871. package/dist/unstable/schema/Model.d.ts +22 -1
  872. package/dist/unstable/schema/Model.d.ts.map +1 -1
  873. package/dist/unstable/schema/Model.js +15 -0
  874. package/dist/unstable/schema/Model.js.map +1 -1
  875. package/dist/unstable/schema/VariantSchema.d.ts +6 -6
  876. package/dist/unstable/schema/VariantSchema.d.ts.map +1 -1
  877. package/dist/unstable/schema/VariantSchema.js +6 -6
  878. package/dist/unstable/schema/VariantSchema.js.map +1 -1
  879. package/dist/unstable/socket/Socket.d.ts +6 -5
  880. package/dist/unstable/socket/Socket.d.ts.map +1 -1
  881. package/dist/unstable/socket/Socket.js +12 -9
  882. package/dist/unstable/socket/Socket.js.map +1 -1
  883. package/dist/unstable/socket/SocketServer.d.ts +3 -3
  884. package/dist/unstable/sql/Migrator.d.ts +1 -1
  885. package/dist/unstable/sql/Migrator.d.ts.map +1 -1
  886. package/dist/unstable/sql/Migrator.js +2 -2
  887. package/dist/unstable/sql/Migrator.js.map +1 -1
  888. package/dist/unstable/sql/SqlClient.d.ts +1 -1
  889. package/dist/unstable/sql/SqlClient.d.ts.map +1 -1
  890. package/dist/unstable/sql/SqlClient.js +1 -1
  891. package/dist/unstable/sql/SqlClient.js.map +1 -1
  892. package/dist/unstable/sql/SqlError.d.ts +237 -17
  893. package/dist/unstable/sql/SqlError.d.ts.map +1 -1
  894. package/dist/unstable/sql/SqlError.js +260 -4
  895. package/dist/unstable/sql/SqlError.js.map +1 -1
  896. package/dist/unstable/sql/SqlModel.d.ts +2 -2
  897. package/dist/unstable/sql/SqlModel.d.ts.map +1 -1
  898. package/dist/unstable/sql/SqlModel.js +3 -3
  899. package/dist/unstable/sql/SqlModel.js.map +1 -1
  900. package/dist/unstable/sql/SqlResolver.d.ts.map +1 -1
  901. package/dist/unstable/sql/SqlResolver.js +17 -8
  902. package/dist/unstable/sql/SqlResolver.js.map +1 -1
  903. package/dist/unstable/sql/SqlSchema.d.ts +17 -6
  904. package/dist/unstable/sql/SqlSchema.d.ts.map +1 -1
  905. package/dist/unstable/sql/SqlSchema.js +17 -7
  906. package/dist/unstable/sql/SqlSchema.js.map +1 -1
  907. package/dist/unstable/sql/Statement.js +0 -1
  908. package/dist/unstable/sql/Statement.js.map +1 -1
  909. package/dist/unstable/workers/Worker.d.ts.map +1 -1
  910. package/dist/unstable/workers/Worker.js +2 -1
  911. package/dist/unstable/workers/Worker.js.map +1 -1
  912. package/dist/unstable/workflow/DurableClock.d.ts +3 -3
  913. package/dist/unstable/workflow/DurableClock.d.ts.map +1 -1
  914. package/dist/unstable/workflow/DurableClock.js +3 -3
  915. package/dist/unstable/workflow/DurableClock.js.map +1 -1
  916. package/dist/unstable/workflow/DurableDeferred.js +8 -8
  917. package/dist/unstable/workflow/DurableDeferred.js.map +1 -1
  918. package/dist/unstable/workflow/Workflow.d.ts +5 -4
  919. package/dist/unstable/workflow/Workflow.d.ts.map +1 -1
  920. package/dist/unstable/workflow/Workflow.js +1 -1
  921. package/dist/unstable/workflow/Workflow.js.map +1 -1
  922. package/dist/unstable/workflow/WorkflowEngine.d.ts +17 -5
  923. package/dist/unstable/workflow/WorkflowEngine.d.ts.map +1 -1
  924. package/dist/unstable/workflow/WorkflowEngine.js +153 -12
  925. package/dist/unstable/workflow/WorkflowEngine.js.map +1 -1
  926. package/package.json +2 -2
  927. package/src/Array.ts +304 -447
  928. package/src/BigDecimal.ts +63 -66
  929. package/src/BigInt.ts +49 -41
  930. package/src/Brand.ts +1 -1
  931. package/src/Cache.ts +9 -8
  932. package/src/Cause.ts +37 -2
  933. package/src/Channel.ts +582 -154
  934. package/src/Chunk.ts +149 -331
  935. package/src/Combiner.ts +280 -13
  936. package/src/Config.ts +195 -25
  937. package/src/Cron.ts +155 -63
  938. package/src/Data.ts +539 -376
  939. package/src/DateTime.ts +75 -256
  940. package/src/Deferred.ts +8 -6
  941. package/src/Duration.ts +122 -66
  942. package/src/Effect.ts +1483 -1157
  943. package/src/Encoding.ts +879 -0
  944. package/src/Equal.ts +278 -111
  945. package/src/Equivalence.ts +114 -52
  946. package/src/ErrorReporter.ts +458 -0
  947. package/src/Exit.ts +24 -12
  948. package/src/Fiber.ts +12 -3
  949. package/src/FiberHandle.ts +10 -9
  950. package/src/FiberMap.ts +22 -22
  951. package/src/FileSystem.ts +34 -31
  952. package/src/Filter.ts +52 -63
  953. package/src/Formatter.ts +253 -51
  954. package/src/Function.ts +2 -10
  955. package/src/Graph.ts +131 -117
  956. package/src/HashMap.ts +26 -19
  957. package/src/Iterable.ts +117 -63
  958. package/src/JsonSchema.ts +383 -10
  959. package/src/Latch.ts +194 -0
  960. package/src/Layer.ts +393 -159
  961. package/src/LayerMap.ts +11 -9
  962. package/src/LogLevel.ts +37 -0
  963. package/src/Logger.ts +33 -100
  964. package/src/ManagedRuntime.ts +2 -2
  965. package/src/Metric.ts +6 -8
  966. package/src/MutableHashMap.ts +9 -0
  967. package/src/MutableHashSet.ts +9 -0
  968. package/src/Newtype.ts +308 -0
  969. package/src/Number.ts +85 -26
  970. package/src/Optic.ts +948 -19
  971. package/src/Option.ts +34 -24
  972. package/src/Order.ts +39 -32
  973. package/src/PartitionedSemaphore.ts +288 -56
  974. package/src/Pipeable.ts +32 -1
  975. package/src/PlatformError.ts +5 -5
  976. package/src/Pool.ts +13 -11
  977. package/src/PubSub.ts +30 -20
  978. package/src/Pull.ts +1 -1
  979. package/src/Queue.ts +11 -9
  980. package/src/Random.ts +51 -14
  981. package/src/RcMap.ts +5 -5
  982. package/src/RcRef.ts +1 -1
  983. package/src/Record.ts +94 -199
  984. package/src/Reducer.ts +166 -7
  985. package/src/References.ts +283 -287
  986. package/src/Request.ts +3 -2
  987. package/src/RequestResolver.ts +29 -49
  988. package/src/Resource.ts +2 -1
  989. package/src/Result.ts +2 -4
  990. package/src/Runtime.ts +102 -6
  991. package/src/Schedule.ts +458 -449
  992. package/src/Scheduler.ts +49 -126
  993. package/src/Schema.ts +3298 -392
  994. package/src/SchemaAST.ts +172 -33
  995. package/src/SchemaGetter.ts +19 -21
  996. package/src/SchemaParser.ts +92 -27
  997. package/src/SchemaRepresentation.ts +51 -26
  998. package/src/SchemaTransformation.ts +198 -13
  999. package/src/ScopedCache.ts +3 -3
  1000. package/src/Semaphore.ts +444 -0
  1001. package/src/ServiceMap.ts +133 -71
  1002. package/src/Sink.ts +83 -28
  1003. package/src/Stdio.ts +27 -4
  1004. package/src/Stream.ts +687 -617
  1005. package/src/String.ts +122 -69
  1006. package/src/Struct.ts +33 -7
  1007. package/src/SubscriptionRef.ts +101 -120
  1008. package/src/SynchronizedRef.ts +3 -2
  1009. package/src/Terminal.ts +2 -1
  1010. package/src/Tracer.ts +6 -5
  1011. package/src/Trie.ts +44 -31
  1012. package/src/TxChunk.ts +72 -53
  1013. package/src/TxDeferred.ts +394 -0
  1014. package/src/TxHashMap.ts +409 -343
  1015. package/src/TxHashSet.ts +113 -118
  1016. package/src/TxPriorityQueue.ts +766 -0
  1017. package/src/TxPubSub.ts +789 -0
  1018. package/src/TxQueue.ts +241 -251
  1019. package/src/TxReentrantLock.ts +753 -0
  1020. package/src/TxRef.ts +50 -38
  1021. package/src/TxSemaphore.ts +217 -44
  1022. package/src/TxSubscriptionRef.ts +639 -0
  1023. package/src/Types.ts +73 -19
  1024. package/src/Utils.ts +137 -111
  1025. package/src/index.ts +814 -54
  1026. package/src/internal/core.ts +12 -5
  1027. package/src/internal/dateTime.ts +91 -96
  1028. package/src/internal/effect.ts +841 -432
  1029. package/src/internal/hashMap.ts +12 -10
  1030. package/src/internal/option.ts +7 -0
  1031. package/src/internal/random.ts +20 -0
  1032. package/src/internal/rcRef.ts +4 -3
  1033. package/src/internal/references.ts +72 -0
  1034. package/src/internal/request.ts +2 -2
  1035. package/src/internal/schema/annotations.ts +2 -0
  1036. package/src/internal/schema/representation.ts +45 -94
  1037. package/src/internal/schema/schema.ts +1 -0
  1038. package/src/internal/schema/to-codec.ts +7 -17
  1039. package/src/internal/trie.ts +21 -15
  1040. package/src/testing/TestClock.ts +13 -11
  1041. package/src/testing/TestSchema.ts +332 -35
  1042. package/src/testing/index.ts +64 -1
  1043. package/src/unstable/ai/AiError.ts +111 -54
  1044. package/src/unstable/ai/AnthropicStructuredOutput.ts +4 -0
  1045. package/src/unstable/ai/Chat.ts +62 -74
  1046. package/src/unstable/ai/EmbeddingModel.ts +209 -0
  1047. package/src/unstable/ai/LanguageModel.ts +544 -230
  1048. package/src/unstable/ai/McpSchema.ts +73 -13
  1049. package/src/unstable/ai/McpServer.ts +271 -61
  1050. package/src/unstable/ai/Model.ts +40 -9
  1051. package/src/unstable/ai/OpenAiStructuredOutput.ts +4 -0
  1052. package/src/unstable/ai/Prompt.ts +37 -37
  1053. package/src/unstable/ai/Response.ts +25 -25
  1054. package/src/unstable/ai/ResponseIdTracker.ts +97 -0
  1055. package/src/unstable/ai/Tool.ts +42 -16
  1056. package/src/unstable/ai/Toolkit.ts +5 -14
  1057. package/src/unstable/ai/index.ts +24 -1
  1058. package/src/unstable/ai/internal/codec-transformer.ts +0 -7
  1059. package/src/unstable/cli/Argument.ts +2 -4
  1060. package/src/unstable/cli/CliError.ts +47 -59
  1061. package/src/unstable/cli/CliOutput.ts +85 -13
  1062. package/src/unstable/cli/Command.ts +801 -192
  1063. package/src/unstable/cli/Completions.ts +36 -0
  1064. package/src/unstable/cli/Flag.ts +2 -2
  1065. package/src/unstable/cli/GlobalFlag.ts +242 -0
  1066. package/src/unstable/cli/HelpDoc.ts +91 -11
  1067. package/src/unstable/cli/Param.ts +15 -11
  1068. package/src/unstable/cli/Primitive.ts +2 -2
  1069. package/src/unstable/cli/Prompt.ts +262 -100
  1070. package/src/unstable/cli/index.ts +10 -0
  1071. package/src/unstable/cli/internal/command.ts +109 -63
  1072. package/src/unstable/cli/internal/completions/CommandDescriptor.ts +10 -4
  1073. package/src/unstable/cli/internal/config.ts +49 -0
  1074. package/src/unstable/cli/internal/help.ts +171 -0
  1075. package/src/unstable/cli/internal/parser.ts +71 -63
  1076. package/src/unstable/cluster/ClusterCron.ts +2 -2
  1077. package/src/unstable/cluster/ClusterWorkflowEngine.ts +40 -34
  1078. package/src/unstable/cluster/DeliverAt.ts +1 -1
  1079. package/src/unstable/cluster/Entity.ts +24 -22
  1080. package/src/unstable/cluster/EntityAddress.ts +1 -1
  1081. package/src/unstable/cluster/EntityResource.ts +4 -4
  1082. package/src/unstable/cluster/Envelope.ts +1 -1
  1083. package/src/unstable/cluster/K8sHttpClient.ts +5 -5
  1084. package/src/unstable/cluster/Message.ts +6 -5
  1085. package/src/unstable/cluster/MessageStorage.ts +29 -30
  1086. package/src/unstable/cluster/Reply.ts +7 -4
  1087. package/src/unstable/cluster/Runner.ts +1 -1
  1088. package/src/unstable/cluster/RunnerAddress.ts +1 -1
  1089. package/src/unstable/cluster/RunnerServer.ts +10 -13
  1090. package/src/unstable/cluster/Runners.ts +14 -12
  1091. package/src/unstable/cluster/ShardId.ts +2 -2
  1092. package/src/unstable/cluster/Sharding.ts +36 -27
  1093. package/src/unstable/cluster/ShardingConfig.ts +36 -37
  1094. package/src/unstable/cluster/SqlMessageStorage.ts +21 -18
  1095. package/src/unstable/cluster/SqlRunnerStorage.ts +1 -1
  1096. package/src/unstable/cluster/internal/entityManager.ts +36 -29
  1097. package/src/unstable/cluster/internal/entityReaper.ts +2 -1
  1098. package/src/unstable/cluster/internal/resourceRef.ts +2 -1
  1099. package/src/unstable/devtools/DevToolsClient.ts +23 -18
  1100. package/src/unstable/devtools/DevToolsSchema.ts +16 -3
  1101. package/src/unstable/encoding/Ndjson.ts +17 -17
  1102. package/src/unstable/encoding/Sse.ts +3 -5
  1103. package/src/unstable/eventlog/EventJournal.ts +2 -2
  1104. package/src/unstable/eventlog/EventLog.ts +3 -2
  1105. package/src/unstable/eventlog/SqlEventLogJournal.ts +2 -2
  1106. package/src/unstable/http/Cookies.ts +94 -11
  1107. package/src/unstable/http/Etag.ts +5 -3
  1108. package/src/unstable/http/Headers.ts +68 -18
  1109. package/src/unstable/http/HttpClient.ts +376 -34
  1110. package/src/unstable/http/HttpClientRequest.ts +151 -39
  1111. package/src/unstable/http/HttpClientResponse.ts +12 -6
  1112. package/src/unstable/http/HttpEffect.ts +54 -68
  1113. package/src/unstable/http/HttpIncomingMessage.ts +3 -2
  1114. package/src/unstable/http/HttpMethod.ts +16 -4
  1115. package/src/unstable/http/HttpMiddleware.ts +25 -39
  1116. package/src/unstable/http/HttpPlatform.ts +3 -2
  1117. package/src/unstable/http/HttpRouter.ts +9 -9
  1118. package/src/unstable/http/HttpServer.ts +3 -9
  1119. package/src/unstable/http/HttpServerError.ts +45 -47
  1120. package/src/unstable/http/HttpServerRequest.ts +407 -16
  1121. package/src/unstable/http/HttpServerRespondable.ts +6 -6
  1122. package/src/unstable/http/HttpServerResponse.ts +345 -7
  1123. package/src/unstable/http/HttpStaticServer.ts +456 -0
  1124. package/src/unstable/http/HttpTraceContext.ts +31 -17
  1125. package/src/unstable/http/Multipart.ts +2 -2
  1126. package/src/unstable/http/Url.ts +650 -0
  1127. package/src/unstable/http/UrlParams.ts +31 -19
  1128. package/src/unstable/http/index.ts +10 -0
  1129. package/src/unstable/http/internal/preResponseHandler.ts +15 -0
  1130. package/src/unstable/httpapi/HttpApi.ts +6 -6
  1131. package/src/unstable/httpapi/HttpApiBuilder.ts +106 -41
  1132. package/src/unstable/httpapi/HttpApiClient.ts +180 -28
  1133. package/src/unstable/httpapi/HttpApiEndpoint.ts +216 -104
  1134. package/src/unstable/httpapi/HttpApiError.ts +108 -30
  1135. package/src/unstable/httpapi/HttpApiGroup.ts +7 -6
  1136. package/src/unstable/httpapi/HttpApiMiddleware.ts +83 -22
  1137. package/src/unstable/httpapi/HttpApiScalar.ts +6 -0
  1138. package/src/unstable/httpapi/HttpApiSchema.ts +20 -2
  1139. package/src/unstable/httpapi/HttpApiSecurity.ts +3 -3
  1140. package/src/unstable/httpapi/OpenApi.ts +43 -29
  1141. package/src/unstable/observability/Otlp.ts +12 -12
  1142. package/src/unstable/observability/OtlpExporter.ts +8 -5
  1143. package/src/unstable/observability/OtlpLogger.ts +13 -9
  1144. package/src/unstable/observability/OtlpMetrics.ts +4 -4
  1145. package/src/unstable/observability/OtlpTracer.ts +12 -8
  1146. package/src/unstable/persistence/KeyValueStore.ts +6 -6
  1147. package/src/unstable/persistence/Persistable.ts +3 -3
  1148. package/src/unstable/persistence/PersistedCache.ts +20 -9
  1149. package/src/unstable/persistence/PersistedQueue.ts +25 -24
  1150. package/src/unstable/persistence/Persistence.ts +3 -3
  1151. package/src/unstable/persistence/RateLimiter.ts +4 -4
  1152. package/src/unstable/process/ChildProcess.ts +6 -208
  1153. package/src/unstable/process/ChildProcessSpawner.ts +75 -14
  1154. package/src/unstable/reactivity/Atom.ts +212 -54
  1155. package/src/unstable/reactivity/AtomHttpApi.ts +81 -41
  1156. package/src/unstable/reactivity/AtomRegistry.ts +66 -12
  1157. package/src/unstable/reactivity/AtomRpc.ts +51 -20
  1158. package/src/unstable/reactivity/Hydration.ts +112 -0
  1159. package/src/unstable/reactivity/index.ts +5 -0
  1160. package/src/unstable/rpc/Rpc.ts +11 -12
  1161. package/src/unstable/rpc/RpcClient.ts +22 -63
  1162. package/src/unstable/rpc/RpcGroup.ts +7 -7
  1163. package/src/unstable/rpc/RpcMiddleware.ts +15 -9
  1164. package/src/unstable/rpc/RpcSchema.ts +23 -5
  1165. package/src/unstable/rpc/RpcSerialization.ts +49 -11
  1166. package/src/unstable/rpc/RpcServer.ts +31 -35
  1167. package/src/unstable/rpc/Utils.ts +3 -2
  1168. package/src/unstable/schema/Model.ts +31 -0
  1169. package/src/unstable/schema/VariantSchema.ts +10 -10
  1170. package/src/unstable/socket/Socket.ts +31 -27
  1171. package/src/unstable/sql/Migrator.ts +7 -5
  1172. package/src/unstable/sql/SqlClient.ts +6 -4
  1173. package/src/unstable/sql/SqlError.ts +365 -11
  1174. package/src/unstable/sql/SqlModel.ts +5 -5
  1175. package/src/unstable/sql/SqlResolver.ts +17 -7
  1176. package/src/unstable/sql/SqlSchema.ts +42 -26
  1177. package/src/unstable/sql/Statement.ts +0 -1
  1178. package/src/unstable/workers/Worker.ts +2 -1
  1179. package/src/unstable/workflow/DurableClock.ts +8 -8
  1180. package/src/unstable/workflow/DurableDeferred.ts +8 -8
  1181. package/src/unstable/workflow/Workflow.ts +7 -3
  1182. package/src/unstable/workflow/WorkflowEngine.ts +211 -19
  1183. package/dist/NullOr.d.ts +0 -149
  1184. package/dist/NullOr.d.ts.map +0 -1
  1185. package/dist/NullOr.js +0 -152
  1186. package/dist/NullOr.js.map +0 -1
  1187. package/dist/encoding/Base64.d.ts +0 -67
  1188. package/dist/encoding/Base64.d.ts.map +0 -1
  1189. package/dist/encoding/Base64.js +0 -146
  1190. package/dist/encoding/Base64.js.map +0 -1
  1191. package/dist/encoding/Base64Url.d.ts +0 -60
  1192. package/dist/encoding/Base64Url.d.ts.map +0 -1
  1193. package/dist/encoding/Base64Url.js +0 -89
  1194. package/dist/encoding/Base64Url.js.map +0 -1
  1195. package/dist/encoding/EncodingError.d.ts +0 -31
  1196. package/dist/encoding/EncodingError.d.ts.map +0 -1
  1197. package/dist/encoding/EncodingError.js +0 -22
  1198. package/dist/encoding/EncodingError.js.map +0 -1
  1199. package/dist/encoding/Hex.d.ts +0 -61
  1200. package/dist/encoding/Hex.d.ts.map +0 -1
  1201. package/dist/encoding/Hex.js +0 -115
  1202. package/dist/encoding/Hex.js.map +0 -1
  1203. package/dist/encoding/index.d.ts +0 -26
  1204. package/dist/encoding/index.d.ts.map +0 -1
  1205. package/dist/encoding/index.js +0 -27
  1206. package/dist/encoding/index.js.map +0 -1
  1207. package/dist/unstable/cli/internal/builtInFlags.d.ts +0 -7
  1208. package/dist/unstable/cli/internal/builtInFlags.d.ts.map +0 -1
  1209. package/dist/unstable/cli/internal/builtInFlags.js +0 -44
  1210. package/dist/unstable/cli/internal/builtInFlags.js.map +0 -1
  1211. package/dist/unstable/cli/internal/completions/Completions.d.ts +0 -2
  1212. package/dist/unstable/cli/internal/completions/Completions.d.ts.map +0 -1
  1213. package/dist/unstable/cli/internal/completions/Completions.js +0 -23
  1214. package/dist/unstable/cli/internal/completions/Completions.js.map +0 -1
  1215. package/src/NullOr.ts +0 -204
  1216. package/src/encoding/Base64.ts +0 -366
  1217. package/src/encoding/Base64Url.ts +0 -104
  1218. package/src/encoding/EncodingError.ts +0 -35
  1219. package/src/encoding/Hex.ts +0 -390
  1220. package/src/encoding/index.ts +0 -31
  1221. package/src/unstable/cli/internal/builtInFlags.ts +0 -78
  1222. package/src/unstable/cli/internal/completions/Completions.ts +0 -31
@@ -5,17 +5,15 @@ import * as Duration from "../../Duration.ts";
5
5
  import * as Effect from "../../Effect.ts";
6
6
  import * as Layer from "../../Layer.ts";
7
7
  import type { ReadonlyRecord } from "../../Record.ts";
8
- import type { SchemaError } from "../../Schema.ts";
9
8
  import * as ServiceMap from "../../ServiceMap.ts";
10
9
  import type { Simplify } from "../../Types.ts";
11
10
  import type * as HttpClient from "../http/HttpClient.ts";
12
- import type * as HttpClientError from "../http/HttpClientError.ts";
13
11
  import type { HttpClientResponse } from "../http/HttpClientResponse.ts";
14
12
  import type * as HttpApi from "../httpapi/HttpApi.ts";
15
13
  import * as HttpApiClient from "../httpapi/HttpApiClient.ts";
16
- import type * as HttpApiEndpoint from "../httpapi/HttpApiEndpoint.ts";
14
+ import * as HttpApiEndpoint from "../httpapi/HttpApiEndpoint.ts";
17
15
  import type * as HttpApiGroup from "../httpapi/HttpApiGroup.ts";
18
- import type * as AsyncResult from "./AsyncResult.ts";
16
+ import * as AsyncResult from "./AsyncResult.ts";
19
17
  import * as Atom from "./Atom.ts";
20
18
  /**
21
19
  * @since 4.0.0
@@ -25,21 +23,21 @@ export interface AtomHttpApiClient<Self, Id extends string, Groups extends HttpA
25
23
  new (_: never): ServiceMap.ServiceClass.Shape<Id, HttpApiClient.Client<Groups, never, never>>;
26
24
  readonly layer: Layer.Layer<Self>;
27
25
  readonly runtime: Atom.AtomRuntime<Self>;
28
- readonly mutation: <GroupName extends HttpApiGroup.Name<Groups>, Name extends HttpApiEndpoint.Name<HttpApiGroup.Endpoints<Group>>, Group extends HttpApiGroup.Any = HttpApiGroup.WithName<Groups, GroupName>, Endpoint extends HttpApiEndpoint.Any = HttpApiEndpoint.WithName<HttpApiGroup.Endpoints<Group>, Name>, const WithResponse extends boolean = false>(group: GroupName, endpoint: Name, options?: {
29
- readonly withResponse?: WithResponse | undefined;
26
+ readonly mutation: <GroupName extends HttpApiGroup.Name<Groups>, Name extends HttpApiEndpoint.Name<HttpApiGroup.Endpoints<Group>>, Group extends HttpApiGroup.Any = HttpApiGroup.WithName<Groups, GroupName>, Endpoint extends HttpApiEndpoint.Any = HttpApiEndpoint.WithName<HttpApiGroup.Endpoints<Group>, Name>, const ResponseMode extends HttpApiEndpoint.ClientResponseMode = HttpApiEndpoint.ClientResponseMode>(group: GroupName, endpoint: Name, options?: {
27
+ readonly responseMode?: ResponseMode | undefined;
30
28
  }) => [Endpoint] extends [
31
- HttpApiEndpoint.HttpApiEndpoint<infer _Name, infer _Method, infer _Path, infer _PathSchema, infer _UrlParams, infer _Payload, infer _Headers, infer _Success, infer _Error, infer _R, infer _RE>
32
- ] ? Atom.AtomResultFn<Simplify<HttpApiEndpoint.ClientRequest<_PathSchema, _UrlParams, _Payload, _Headers, false> & {
29
+ HttpApiEndpoint.HttpApiEndpoint<infer _Name, infer _Method, infer _Path, infer _Params, infer _Query, infer _Payload, infer _Headers, infer _Success, infer _Error, infer _R, infer _RE>
30
+ ] ? Atom.AtomResultFn<Simplify<HttpApiEndpoint.ClientRequest<_Params, _Query, _Payload, _Headers, "decoded-only"> & {
33
31
  readonly reactivityKeys?: ReadonlyArray<unknown> | ReadonlyRecord<string, ReadonlyArray<unknown>> | undefined;
34
- }>, WithResponse extends true ? [_Success, HttpClientResponse] : _Success, _Error | HttpClientError.HttpClientError | SchemaError> : never;
35
- readonly query: <GroupName extends HttpApiGroup.Name<Groups>, Name extends HttpApiEndpoint.Name<HttpApiGroup.Endpoints<Group>>, Group extends HttpApiGroup.Any = HttpApiGroup.WithName<Groups, GroupName>, Endpoint extends HttpApiEndpoint.Any = HttpApiEndpoint.WithName<HttpApiGroup.Endpoints<Group>, Name>, const WithResponse extends boolean = false>(group: GroupName, endpoint: Name, request: [Endpoint] extends [
36
- HttpApiEndpoint.HttpApiEndpoint<infer _Name, infer _Method, infer _Path, infer _PathSchema, infer _UrlParams, infer _Payload, infer _Headers, infer _Success, infer _Error, infer _R, infer _RE>
37
- ] ? Simplify<HttpApiEndpoint.ClientRequest<_PathSchema, _UrlParams, _Payload, _Headers, WithResponse> & {
32
+ }>, ResponseByMode<_Success["Type"], ResponseMode>, _Error["Type"]> : never;
33
+ readonly query: <GroupName extends HttpApiGroup.Name<Groups>, Name extends HttpApiEndpoint.Name<HttpApiGroup.Endpoints<Group>>, Group extends HttpApiGroup.Any = HttpApiGroup.WithName<Groups, GroupName>, Endpoint extends HttpApiEndpoint.Any = HttpApiEndpoint.WithName<HttpApiGroup.Endpoints<Group>, Name>, const ResponseMode extends HttpApiEndpoint.ClientResponseMode = "decoded-only">(group: GroupName, endpoint: Name, request: [Endpoint] extends [
34
+ HttpApiEndpoint.HttpApiEndpoint<infer _Name, infer _Method, infer _Path, infer _Params, infer _Query, infer _Payload, infer _Headers, infer _Success, infer _Error, infer _R, infer _RE>
35
+ ] ? Simplify<HttpApiEndpoint.ClientRequest<_Params, _Query, _Payload, _Headers, ResponseMode> & {
38
36
  readonly reactivityKeys?: ReadonlyArray<unknown> | ReadonlyRecord<string, ReadonlyArray<unknown>> | undefined;
39
- readonly timeToLive?: Duration.DurationInput | undefined;
37
+ readonly timeToLive?: Duration.Input | undefined;
40
38
  }> : never) => [Endpoint] extends [
41
- HttpApiEndpoint.HttpApiEndpoint<infer _Name, infer _Method, infer _Path, infer _UrlParams, infer _Payload, infer _Headers, infer _Success, infer _Error, infer _R, infer _RE>
42
- ] ? Atom.Atom<AsyncResult.AsyncResult<WithResponse extends true ? [_Success, HttpClientResponse] : _Success, _Error | HttpClientError.HttpClientError | SchemaError>> : never;
39
+ HttpApiEndpoint.HttpApiEndpoint<infer _Name, infer _Method, infer _Path, infer _Params, infer _Query, infer _Payload, infer _Headers, infer _Success, infer _Error, infer _R, infer _RE>
40
+ ] ? Atom.Atom<AsyncResult.AsyncResult<ResponseByMode<_Success["Type"], ResponseMode>, _Error["Type"]>> : never;
43
41
  }
44
42
  declare global {
45
43
  interface ErrorConstructor {
@@ -58,4 +56,8 @@ export declare const Service: <Self>() => <const Id extends string, ApiId extend
58
56
  readonly baseUrl?: URL | string | undefined;
59
57
  readonly runtime?: Atom.RuntimeFactory | undefined;
60
58
  }) => AtomHttpApiClient<Self, Id, Groups>;
59
+ type ResponseByMode<Success, ResponseMode extends HttpApiEndpoint.ClientResponseMode> = [ResponseMode] extends [
60
+ "decoded-and-response"
61
+ ] ? [Success, HttpClientResponse] : [ResponseMode] extends ["response-only"] ? HttpClientResponse : Success;
62
+ export {};
61
63
  //# sourceMappingURL=AtomHttpApi.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"AtomHttpApi.d.ts","sourceRoot":"","sources":["../../../src/unstable/reactivity/AtomHttpApi.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AtomHttpApi.d.ts","sourceRoot":"","sources":["../../../src/unstable/reactivity/AtomHttpApi.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,QAAQ,MAAM,mBAAmB,CAAA;AAC7C,OAAO,KAAK,MAAM,MAAM,iBAAiB,CAAA;AAEzC,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAA;AACvC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAA;AAGrD,OAAO,KAAK,UAAU,MAAM,qBAAqB,CAAA;AACjD,OAAO,KAAK,EAAW,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACvD,OAAO,KAAK,KAAK,UAAU,MAAM,uBAAuB,CAAA;AAExD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAA;AACvE,OAAO,KAAK,KAAK,OAAO,MAAM,uBAAuB,CAAA;AACrD,OAAO,KAAK,aAAa,MAAM,6BAA6B,CAAA;AAC5D,OAAO,KAAK,eAAe,MAAM,+BAA+B,CAAA;AAChE,OAAO,KAAK,KAAK,YAAY,MAAM,4BAA4B,CAAA;AAC/D,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAA;AAC/C,OAAO,KAAK,IAAI,MAAM,WAAW,CAAA;AAGjC;;;GAGG;AACH,MAAM,WAAW,iBAAiB,CAAC,IAAI,EAAE,EAAE,SAAS,MAAM,EAAE,MAAM,SAAS,YAAY,CAAC,GAAG,CACzF,SAAQ,UAAU,CAAC,OAAO,CAAC,IAAI,EAAE,aAAa,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;IAE5E,KAAI,CAAC,EAAE,KAAK,GAAG,UAAU,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,EAAE,aAAa,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAA;IAE5F,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IACjC,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;IAExC,QAAQ,CAAC,QAAQ,EAAE,CACjB,SAAS,SAAS,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,EAC3C,IAAI,SAAS,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAChE,KAAK,SAAS,YAAY,CAAC,GAAG,GAAG,YAAY,CAAC,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC,EACzE,QAAQ,SAAS,eAAe,CAAC,GAAG,GAAG,eAAe,CAAC,QAAQ,CAC7D,YAAY,CAAC,SAAS,CAAC,KAAK,CAAC,EAC7B,IAAI,CACL,EACD,KAAK,CAAC,YAAY,SAAS,eAAe,CAAC,kBAAkB,GAAG,eAAe,CAAC,kBAAkB,EAElG,KAAK,EAAE,SAAS,EAChB,QAAQ,EAAE,IAAI,EACd,OAAO,CAAC,EAAE;QACR,QAAQ,CAAC,YAAY,CAAC,EAAE,YAAY,GAAG,SAAS,CAAA;KACjD,KACE,CAAC,QAAQ,CAAC,SAAS;QACtB,eAAe,CAAC,eAAe,CAC7B,MAAM,KAAK,EACX,MAAM,OAAO,EACb,MAAM,KAAK,EACX,MAAM,OAAO,EACb,MAAM,MAAM,EACZ,MAAM,QAAQ,EACd,MAAM,QAAQ,EACd,MAAM,QAAQ,EACd,MAAM,MAAM,EACZ,MAAM,EAAE,EACR,MAAM,GAAG,CACV;KACF,GAAG,IAAI,CAAC,YAAY,CACjB,QAAQ,CACN,eAAe,CAAC,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,cAAc,CAAC,GAAG;QACnF,QAAQ,CAAC,cAAc,CAAC,EAAE,aAAa,CAAC,OAAO,CAAC,GAAG,cAAc,CAAC,MAAM,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC,GAAG,SAAS,CAAA;KAC9G,CACF,EACD,cAAc,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,YAAY,CAAC,EAC9C,MAAM,CAAC,MAAM,CAAC,CACf,GACC,KAAK,CAAA;IAET,QAAQ,CAAC,KAAK,EAAE,CACd,SAAS,SAAS,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,EAC3C,IAAI,SAAS,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAChE,KAAK,SAAS,YAAY,CAAC,GAAG,GAAG,YAAY,CAAC,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC,EACzE,QAAQ,SAAS,eAAe,CAAC,GAAG,GAAG,eAAe,CAAC,QAAQ,CAC7D,YAAY,CAAC,SAAS,CAAC,KAAK,CAAC,EAC7B,IAAI,CACL,EACD,KAAK,CAAC,YAAY,SAAS,eAAe,CAAC,kBAAkB,GAAG,cAAc,EAE9E,KAAK,EAAE,SAAS,EAChB,QAAQ,EAAE,IAAI,EACd,OAAO,EAAE,CAAC,QAAQ,CAAC,SAAS;QAC1B,eAAe,CAAC,eAAe,CAC7B,MAAM,KAAK,EACX,MAAM,OAAO,EACb,MAAM,KAAK,EACX,MAAM,OAAO,EACb,MAAM,MAAM,EACZ,MAAM,QAAQ,EACd,MAAM,QAAQ,EACd,MAAM,QAAQ,EACd,MAAM,MAAM,EACZ,MAAM,EAAE,EACR,MAAM,GAAG,CACV;KACF,GAAG,QAAQ,CACR,eAAe,CAAC,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,YAAY,CAAC,GAAG;QACjF,QAAQ,CAAC,cAAc,CAAC,EACpB,aAAa,CAAC,OAAO,CAAC,GACtB,cAAc,CAAC,MAAM,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC,GAC9C,SAAS,CAAA;QACb,QAAQ,CAAC,UAAU,CAAC,EAAE,QAAQ,CAAC,KAAK,GAAG,SAAS,CAAA;KACjD,CACF,GACC,KAAK,KACN,CAAC,QAAQ,CAAC,SAAS;QACtB,eAAe,CAAC,eAAe,CAC7B,MAAM,KAAK,EACX,MAAM,OAAO,EACb,MAAM,KAAK,EACX,MAAM,OAAO,EACb,MAAM,MAAM,EACZ,MAAM,QAAQ,EACd,MAAM,QAAQ,EACd,MAAM,QAAQ,EACd,MAAM,MAAM,EACZ,MAAM,EAAE,EACR,MAAM,GAAG,CACV;KACF,GAAG,IAAI,CAAC,IAAI,CACT,WAAW,CAAC,WAAW,CACrB,cAAc,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,YAAY,CAAC,EAC9C,MAAM,CAAC,MAAM,CAAC,CACf,CACF,GACC,KAAK,CAAA;CACV;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,gBAAgB;QACxB,eAAe,EAAE,MAAM,CAAA;KACxB;CACF;AAED;;;GAGG;AACH,eAAO,MAAM,OAAO,GAAI,IAAI,QAC3B,KAAK,CAAC,EAAE,SAAS,MAAM,EAAE,KAAK,SAAS,MAAM,EAAE,MAAM,SAAS,YAAY,CAAC,GAAG,EAC7E,IAAI,EAAE,EACN,SAAS;IACP,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;IAC5C,QAAQ,CAAC,UAAU,EAAE,KAAK,CAAC,KAAK,CAC5B,YAAY,CAAC,cAAc,CAAC,MAAM,CAAC,GACnC,UAAU,CAAC,UAAU,CACxB,CAAA;IACD,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,UAAU,CAAC,UAAU,KAAK,UAAU,CAAC,UAAU,CAAC,GAAG,SAAS,CAAA;IACjG,QAAQ,CAAC,iBAAiB,CAAC,EACvB,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,GAChG,SAAS,CAAA;IACb,QAAQ,CAAC,OAAO,CAAC,EAAE,GAAG,GAAG,MAAM,GAAG,SAAS,CAAA;IAC3C,QAAQ,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,cAAc,GAAG,SAAS,CAAA;CACnD,KACA,iBAAiB,CAAC,IAAI,EAAE,EAAE,EAAE,MAAM,CAkHpC,CAAA;AAoBD,KAAK,cAAc,CAAC,OAAO,EAAE,YAAY,SAAS,eAAe,CAAC,kBAAkB,IAAI,CAAC,YAAY,CAAC,SACpG;IAAC,sBAAsB;CAAC,GAAG,CAAC,OAAO,EAAE,kBAAkB,CAAC,GACtD,CAAC,YAAY,CAAC,SAAS,CAAC,eAAe,CAAC,GAAG,kBAAkB,GAC7D,OAAO,CAAA"}
@@ -3,9 +3,14 @@
3
3
  */
4
4
  import * as Duration from "../../Duration.js";
5
5
  import * as Effect from "../../Effect.js";
6
+ import * as Hash from "../../Hash.js";
6
7
  import * as Layer from "../../Layer.js";
8
+ import * as Schema from "../../Schema.js";
7
9
  import * as ServiceMap from "../../ServiceMap.js";
10
+ import * as HttpClientError from "../http/HttpClientError.js";
8
11
  import * as HttpApiClient from "../httpapi/HttpApiClient.js";
12
+ import * as HttpApiEndpoint from "../httpapi/HttpApiEndpoint.js";
13
+ import * as AsyncResult from "./AsyncResult.js";
9
14
  import * as Atom from "./Atom.js";
10
15
  import * as Reactivity from "./Reactivity.js";
11
16
  /**
@@ -17,28 +22,52 @@ export const Service = () => (id, options) => {
17
22
  self.layer = Layer.effect(self, HttpApiClient.make(options.api, options)).pipe(Layer.provide(options.httpClient));
18
23
  const runtimeFactory = options.runtime ?? Atom.runtime;
19
24
  self.runtime = runtimeFactory(self.layer);
25
+ const catchErrors = Effect.catch(e => Schema.isSchemaError(e) || HttpClientError.isHttpClientError(e) ? Effect.die(e) : Effect.fail(e));
20
26
  const mutationFamily = Atom.family(({
21
27
  endpoint,
22
28
  group,
23
- withResponse
24
- }) => self.runtime.fn()(Effect.fnUntraced(function* (opts) {
25
- const client = yield* self;
26
- const effect = client[group][endpoint]({
27
- ...opts,
28
- withResponse
29
- });
30
- return yield* opts.reactivityKeys ? Reactivity.mutation(effect, opts.reactivityKeys) : effect;
31
- })));
29
+ responseMode
30
+ }) => {
31
+ const atom = self.runtime.fn()(Effect.fnUntraced(function* (opts) {
32
+ const client = yield* self;
33
+ const effect = catchErrors(client[group][endpoint]({
34
+ ...opts,
35
+ responseMode
36
+ }));
37
+ return yield* opts.reactivityKeys ? Reactivity.mutation(effect, opts.reactivityKeys) : effect;
38
+ }));
39
+ if (responseMode === "decoded-only") {
40
+ const definition = options.api.groups[group].endpoints[endpoint];
41
+ return Atom.serializable(atom, {
42
+ key: `AtomHttpApi:mutation:${group}:${endpoint}`,
43
+ schema: AsyncResult.Schema({
44
+ success: Schema.Union(HttpApiEndpoint.getSuccessSchemas(definition)),
45
+ error: Schema.Union(HttpApiEndpoint.getErrorSchemas(definition))
46
+ })
47
+ });
48
+ }
49
+ return atom;
50
+ });
32
51
  self.mutation = (group, endpoint, options) => mutationFamily({
33
52
  group,
34
53
  endpoint,
35
- withResponse: options?.withResponse ?? false
54
+ responseMode: options?.responseMode ?? "decoded-only"
36
55
  });
37
56
  const queryFamily = Atom.family(opts => {
38
57
  let atom = self.runtime.atom(self.use(client_ => {
39
58
  const client = client_;
40
- return client[opts.group][opts.endpoint](opts);
59
+ return catchErrors(client[opts.group][opts.endpoint](opts));
41
60
  }));
61
+ if (opts.responseMode === "decoded-only") {
62
+ const endpoint = options.api.groups[opts.group].endpoints[opts.endpoint];
63
+ atom = Atom.serializable(atom, {
64
+ key: makeSerializableKey(opts),
65
+ schema: AsyncResult.Schema({
66
+ success: Schema.Union(HttpApiEndpoint.getSuccessSchemas(endpoint)),
67
+ error: Schema.Union(HttpApiEndpoint.getErrorSchemas(endpoint))
68
+ })
69
+ });
70
+ }
42
71
  if (opts.timeToLive) {
43
72
  atom = Duration.isFinite(opts.timeToLive) ? Atom.setIdleTTL(atom, opts.timeToLive) : Atom.keepAlive(atom);
44
73
  }
@@ -47,14 +76,15 @@ export const Service = () => (id, options) => {
47
76
  self.query = (group, endpoint, request) => queryFamily({
48
77
  group,
49
78
  endpoint,
50
- path: request.path,
51
- urlParams: request.urlParams,
79
+ params: request.params,
80
+ query: request.query,
52
81
  payload: request.payload,
53
82
  headers: request.headers,
54
- withResponse: request.withResponse ?? false,
83
+ responseMode: request.responseMode ?? "decoded-only",
55
84
  reactivityKeys: request.reactivityKeys,
56
- timeToLive: request.timeToLive ? Duration.fromDurationInputUnsafe(request.timeToLive) : undefined
85
+ timeToLive: request.timeToLive ? Duration.fromInputUnsafe(request.timeToLive) : undefined
57
86
  });
58
87
  return self;
59
88
  };
89
+ const makeSerializableKey = key => `AtomHttpApi:${key.group}:${key.endpoint}:${Hash.hash(key)}`;
60
90
  //# sourceMappingURL=AtomHttpApi.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AtomHttpApi.js","names":["Duration","Effect","Layer","ServiceMap","HttpApiClient","Atom","Reactivity","Service","id","options","self","layer","effect","make","api","pipe","provide","httpClient","runtimeFactory","runtime","mutationFamily","family","endpoint","group","withResponse","fn","fnUntraced","opts","client","reactivityKeys","mutation","queryFamily","atom","use","client_","timeToLive","isFinite","setIdleTTL","keepAlive","factory","withReactivity","query","request","path","urlParams","payload","headers","fromDurationInputUnsafe","undefined"],"sources":["../../../src/unstable/reactivity/AtomHttpApi.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"AtomHttpApi.js","names":["Duration","Effect","Hash","Layer","Schema","ServiceMap","HttpClientError","HttpApiClient","HttpApiEndpoint","AsyncResult","Atom","Reactivity","Service","id","options","self","layer","effect","make","api","pipe","provide","httpClient","runtimeFactory","runtime","catchErrors","catch","e","isSchemaError","isHttpClientError","die","fail","mutationFamily","family","endpoint","group","responseMode","atom","fn","fnUntraced","opts","client","reactivityKeys","mutation","definition","groups","endpoints","serializable","key","schema","success","Union","getSuccessSchemas","error","getErrorSchemas","queryFamily","use","client_","makeSerializableKey","timeToLive","isFinite","setIdleTTL","keepAlive","factory","withReactivity","query","request","params","payload","headers","fromInputUnsafe","undefined","hash"],"sources":["../../../src/unstable/reactivity/AtomHttpApi.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -45,6 +45,8 @@ export interface AtomRegistry {
45
45
  }) => () => void;
46
46
  readonly reset: () => void;
47
47
  readonly dispose: () => void;
48
+ onNodeAdded?: ((node: Node<any>) => void) | undefined;
49
+ onNodeRemoved?: ((node: Node<any>) => void) | undefined;
48
50
  }
49
51
  /**
50
52
  * @since 4.0.0
@@ -53,6 +55,10 @@ export interface AtomRegistry {
53
55
  export interface Node<A> {
54
56
  readonly atom: Atom.Atom<A>;
55
57
  readonly value: () => A;
58
+ parents: Array<Node<any>>;
59
+ children: Array<Node<any>>;
60
+ listeners: Set<() => void>;
61
+ currentState(): "uninitialized" | "stale" | "valid" | "removed";
56
62
  }
57
63
  /**
58
64
  * @since 4.0.0
@@ -1 +1 @@
1
- {"version":3,"file":"AtomRegistry.d.ts","sourceRoot":"","sources":["../../../src/unstable/reactivity/AtomRegistry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AtomRegistry.d.ts","sourceRoot":"","sources":["../../../src/unstable/reactivity/AtomRegistry.ts"],"names":[],"mappings":"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"}
@@ -114,10 +114,14 @@ class RegistryImpl {
114
114
  defaultIdleTTL;
115
115
  scheduler;
116
116
  schedulerAsync;
117
+ dispatcher;
118
+ onNodeAdded;
119
+ onNodeRemoved;
117
120
  constructor(initialValues, scheduleTask, timeoutResolution, defaultIdleTTL) {
118
121
  this[TypeId] = TypeId;
119
122
  this.scheduler = new MixedScheduler("sync", scheduleTask);
120
123
  this.schedulerAsync = new MixedScheduler("async", scheduleTask);
124
+ this.dispatcher = this.schedulerAsync.makeDispatcher();
121
125
  this.defaultIdleTTL = defaultIdleTTL;
122
126
  if (timeoutResolution === undefined && defaultIdleTTL !== undefined) {
123
127
  this.timeoutResolution = Math.round(defaultIdleTTL / 2);
@@ -126,7 +130,11 @@ class RegistryImpl {
126
130
  }
127
131
  if (initialValues !== undefined) {
128
132
  for (const [atom, value] of initialValues) {
129
- this.ensureNode(atom).setValue(value);
133
+ let target = atom;
134
+ while (target.initialValueTarget) {
135
+ target = target.initialValueTarget;
136
+ }
137
+ this.ensureNode(target).setInitialValue(value);
130
138
  }
131
139
  }
132
140
  }
@@ -191,6 +199,7 @@ class RegistryImpl {
191
199
  if (node === undefined) {
192
200
  node = this.createNode(atom);
193
201
  this.nodes.set(key, node);
202
+ this.onNodeAdded?.(node);
194
203
  } else if (this.atomHasTtl(atom)) {
195
204
  this.removeNodeTimeout(node);
196
205
  }
@@ -215,7 +224,7 @@ class RegistryImpl {
215
224
  this.ensureNode(atom).invalidate();
216
225
  };
217
226
  scheduleAtomRemoval(atom) {
218
- this.schedulerAsync.scheduleTask(() => {
227
+ this.dispatcher.scheduleTask(() => {
219
228
  const node = this.nodes.get(atomKey(atom));
220
229
  if (node !== undefined && node.canBeRemoved) {
221
230
  this.removeNode(node);
@@ -223,7 +232,7 @@ class RegistryImpl {
223
232
  }, 0);
224
233
  }
225
234
  scheduleNodeRemoval(node) {
226
- this.schedulerAsync.scheduleTask(() => {
235
+ this.dispatcher.scheduleTask(() => {
227
236
  if (node.canBeRemoved) {
228
237
  this.removeNode(node);
229
238
  }
@@ -235,6 +244,7 @@ class RegistryImpl {
235
244
  } else {
236
245
  this.nodes.delete(atomKey(node.atom));
237
246
  node.remove();
247
+ this.onNodeRemoved?.(node);
238
248
  }
239
249
  }
240
250
  setNodeTimeout(node) {
@@ -247,6 +257,7 @@ class RegistryImpl {
247
257
  if (idleTTL <= 0) {
248
258
  this.nodes.delete(atomKey(node.atom));
249
259
  node.remove();
260
+ this.onNodeRemoved?.(node);
250
261
  return;
251
262
  }
252
263
  }
@@ -263,9 +274,7 @@ class RegistryImpl {
263
274
  }
264
275
  removeNodeTimeout(node) {
265
276
  const bucket = this.nodeTimeoutBucket.get(node);
266
- if (bucket === undefined) {
267
- return;
268
- }
277
+ if (bucket === undefined) return;
269
278
  this.nodeTimeoutBucket.delete(node);
270
279
  this.scheduleNodeRemoval(node);
271
280
  const [nodes, handle] = this.timeoutBuckets.get(bucket);
@@ -280,11 +289,10 @@ class RegistryImpl {
280
289
  const nodes = this.timeoutBuckets.get(bucket)[0];
281
290
  this.timeoutBuckets.delete(bucket);
282
291
  nodes.forEach(node => {
283
- if (!node.canBeRemoved) {
284
- return;
285
- }
286
292
  this.nodeTimeoutBucket.delete(node);
293
+ if (!node.canBeRemoved) return;
287
294
  this.nodes.delete(atomKey(node.atom));
295
+ this.onNodeRemoved?.(node);
288
296
  this.#currentSweepTTL = node.atom.idleTTL ?? this.defaultIdleTTL;
289
297
  node.remove();
290
298
  this.#currentSweepTTL = null;
@@ -294,7 +302,10 @@ class RegistryImpl {
294
302
  this.timeoutBuckets.forEach(([, handle]) => clearTimeout(handle));
295
303
  this.timeoutBuckets.clear();
296
304
  this.nodeTimeoutBucket.clear();
297
- this.nodes.forEach(node => node.remove());
305
+ this.nodes.forEach(node => {
306
+ node.remove();
307
+ this.onNodeRemoved?.(node);
308
+ });
298
309
  this.nodes.clear();
299
310
  }
300
311
  dispose() {
@@ -326,11 +337,24 @@ class NodeImpl {
326
337
  state = NodeState.uninitialized;
327
338
  lifetime;
328
339
  writeContext;
340
+ preserveInitialValueOnBuild = false;
329
341
  parents = [];
330
342
  previousParents;
331
343
  children = [];
332
344
  listeners = /*#__PURE__*/new Set();
333
345
  skipInvalidation = false;
346
+ currentState() {
347
+ switch (this.state) {
348
+ case NodeState.uninitialized:
349
+ return "uninitialized";
350
+ case NodeState.stale:
351
+ return "stale";
352
+ case NodeState.valid:
353
+ return "valid";
354
+ default:
355
+ return "removed";
356
+ }
357
+ }
334
358
  get canBeRemoved() {
335
359
  return !this.atom.keepAlive && this.listeners.size === 0 && this.children.length === 0 && this.state !== 0;
336
360
  }
@@ -340,7 +364,12 @@ class NodeImpl {
340
364
  this.lifetime = makeLifetime(this);
341
365
  const value = this.atom.read(this.lifetime);
342
366
  if ((this.state & NodeFlags.waitingForValue) !== 0) {
343
- this.setValue(value);
367
+ if (this.preserveInitialValueOnBuild) {
368
+ this.preserveInitialValueOnBuild = false;
369
+ this.state = NodeState.valid;
370
+ } else {
371
+ this.setValue(value);
372
+ }
344
373
  }
345
374
  if (this.previousParents) {
346
375
  const parents = this.previousParents;
@@ -361,6 +390,20 @@ class NodeImpl {
361
390
  }
362
391
  return Option.some(this._value);
363
392
  }
393
+ setInitialValue(value) {
394
+ if ((this.state & NodeFlags.initialized) === 0) {
395
+ this.preserveInitialValueOnBuild = true;
396
+ this.state = NodeState.stale;
397
+ this._value = value;
398
+ if (batchState.phase === BatchPhase.collect) {
399
+ batchState.notify.add(this);
400
+ } else {
401
+ this.notify();
402
+ }
403
+ return;
404
+ }
405
+ this.setValue(value);
406
+ }
364
407
  setValue(value) {
365
408
  if ((this.state & NodeFlags.initialized) === 0) {
366
409
  this.state = NodeState.valid;
@@ -1 +1 @@
1
- {"version":3,"file":"AtomRegistry.js","names":["Effect","Exit","Fiber","constVoid","dual","Layer","Option","hasProperty","Queue","MixedScheduler","Scope","ServiceMap","Stream","Result","TypeId","isAtomRegistry","u","make","options","RegistryImpl","initialValues","scheduleTask","timeoutResolution","defaultIdleTTL","AtomRegistry","Service","layerOptions","effect","gen","scope","registry","addFinalizer","sync","dispose","layer","toStream","self","atom","callback","queue","suspend","fiber","getCurrent","getUnsafe","services","cancel","subscribe","value","offerUnsafe","immediate","toStreamResult","pipe","filter","isNotInitial","mapEffect","result","_tag","succeed","failCause","cause","changes","getResult","args","suspendOnWaiting","resume","get","waiting","toExit","mount","acquireRelease","release","constImmediate","notifyListener","listener","SerializableTypeId","atomKey","key","scheduler","schedulerAsync","constructor","undefined","Math","round","ensureNode","setValue","nodes","Map","preloadedSerializable","timeoutBuckets","nodeTimeoutBucket","disposed","getNodes","set","write","writeContext","setSerializable","encoded","modify","f","node","update","refresh","invalidateAtom","remove","_value","canBeRemoved","scheduleNodeRemoval","atomHasTtl","keepAlive","idleTTL","createNode","removeNodeTimeout","has","delete","decoded","decode","Error","scheduleAtomRemoval","NodeImpl","invalidate","removeNode","setNodeTimeout","currentSweepTTL","ttl","ceil","timestamp","Date","now","bucket","entry","Set","setTimeout","sweepBucket","add","handle","size","clearTimeout","forEach","reset","clear","NodeFlags","alive","initialized","waitingForValue","NodeState","uninitialized","stale","valid","removed","WriteContextImpl","state","lifetime","parents","previousParents","children","listeners","skipInvalidation","length","makeLifetime","read","i","removeChild","valueOption","none","some","batchState","phase","BatchPhase","collect","notify","Object","is","invalidateChildren","addParent","parent","push","index","indexOf","pop","child","disposeLifetime","lazy","childrenAreActive","commit","current","stack","stackIndex","len","LifetimeProto","finalizers","isFn","resultOnce","never","once","setResult","someOnce","isSome","isNone","refreshSelf","setSelf","a","stream","empty","withoutInitialValue","streamResult","setPrototypeOf","disabled","depth","batch","batchRebuildNode"],"sources":["../../../src/unstable/reactivity/AtomRegistry.ts"],"sourcesContent":[null],"mappings":"AAAA;;;AAGA,OAAO,KAAKA,MAAM,MAAM,iBAAiB;AACzC,OAAO,KAAKC,IAAI,MAAM,eAAe;AACrC,OAAO,KAAKC,KAAK,MAAM,gBAAgB;AACvC,SAASC,SAAS,EAAEC,IAAI,QAAQ,mBAAmB;AACnD,OAAO,KAAKC,KAAK,MAAM,gBAAgB;AACvC,OAAO,KAAKC,MAAM,MAAM,iBAAiB;AACzC,SAASC,WAAW,QAAQ,oBAAoB;AAChD,OAAO,KAAKC,KAAK,MAAM,gBAAgB;AAEvC,SAASC,cAAc,QAAQ,oBAAoB;AACnD,OAAO,KAAKC,KAAK,MAAM,gBAAgB;AACvC,OAAO,KAAKC,UAAU,MAAM,qBAAqB;AACjD,OAAO,KAAKC,MAAM,MAAM,iBAAiB;AACzC,OAAO,KAAKC,MAAM,MAAM,kBAAkB;AAS1C;;;;AAIA,OAAO,MAAMC,MAAM,GAAW,iCAAiC;AAE/D;;;;AAIA,OAAO,MAAMC,cAAc,GAAIC,CAAU,IAAwBT,WAAW,CAACS,CAAC,EAAEF,MAAM,CAAC;AAkCvF;;;;AAIA,OAAO,MAAMG,IAAI,GACfC,OAKa,IAEb,IAAIC,YAAY,CACdD,OAAO,EAAEE,aAAa,EACtBF,OAAO,EAAEG,YAAY,EACrBH,OAAO,EAAEI,iBAAiB,EAC1BJ,OAAO,EAAEK,cAAc,CACxB;AAEH;;;;AAIA,OAAO,MAAMC,YAAY,gBAAGb,UAAU,CAACc,OAAO,CAAeX,MAAM,CAAC;AAEpE;;;;AAIA,OAAO,MAAMY,YAAY,GAAIR,OAK5B,IACCb,KAAK,CAACsB,MAAM,CACVH,YAAY,EACZxB,MAAM,CAAC4B,GAAG,CAAC,aAAS;EAClB,MAAMC,KAAK,GAAG,OAAO7B,MAAM,CAAC6B,KAAK;EACjC,MAAMC,QAAQ,GAAGb,IAAI,CAAC;IACpB,GAAGC,OAAO;IACVG,YAAY,EAAEH,OAAO,EAAEG;GACxB,CAAC;EACF,OAAOX,KAAK,CAACqB,YAAY,CAACF,KAAK,EAAE7B,MAAM,CAACgC,IAAI,CAAC,MAAMF,QAAQ,CAACG,OAAO,EAAE,CAAC,CAAC;EACvE,OAAOH,QAAQ;AACjB,CAAC,CAAC,CACH;AAEH;;;;AAIA,OAAO,MAAMI,KAAK,gBAA8BR,YAAY,EAAE;AAE9D;AACA;AACA;AAEA;;;;AAIA,OAAO,MAAMS,QAAQ,gBAmBjB/B,IAAI,CACN,CAAC,EACD,CAAIgC,IAAkB,EAAEC,IAAkB,KACxCzB,MAAM,CAAC0B,QAAQ,CAQXC,KAAK,IACPvC,MAAM,CAACwC,OAAO,CAAC,MAAK;EAClB,MAAMC,KAAK,GAAGvC,KAAK,CAACwC,UAAU,EAAG;EACjC,MAAMb,KAAK,GAAGlB,UAAU,CAACgC,SAAS,CAACF,KAAK,CAACG,QAAQ,EAAElC,KAAK,CAACA,KAAK,CAAC;EAC/D,MAAMmC,MAAM,GAAGT,IAAI,CAACU,SAAS,CAACT,IAAI,EAAGU,KAAK,IAAKvC,KAAK,CAACwC,WAAW,CAACT,KAAK,EAAEQ,KAAK,CAAC,EAAE;IAC9EE,SAAS,EAAE;GACZ,CAAC;EACF,OAAOvC,KAAK,CAACqB,YAAY,CAACF,KAAK,EAAE7B,MAAM,CAACgC,IAAI,CAACa,MAAM,CAAC,CAAC;AACvD,CAAC,CAAC,CACH,CACJ;AAED;;;;AAIA,OAAO,MAAMK,cAAc,gBAWvB9C,IAAI,CACN,CAAC,EACD,CAAOgC,IAAkB,EAAEC,IAAyC,KAClEF,QAAQ,CAACC,IAAI,EAAEC,IAAI,CAAC,CAACc,IAAI,CACvBvC,MAAM,CAACwC,MAAM,CAACvC,MAAM,CAACwC,YAAY,CAAC,EAClCzC,MAAM,CAAC0C,SAAS,CAAEC,MAAM,IACtBA,MAAM,CAACC,IAAI,KAAK,SAAS,GAAGxD,MAAM,CAACyD,OAAO,CAACF,MAAM,CAACR,KAAK,CAAC,GAAG/C,MAAM,CAAC0D,SAAS,CAACH,MAAM,CAACI,KAAK,CAAC,CAC1F,EACD/C,MAAM,CAACgD,OAAO,CACf,CACJ;AAED;;;;AAIA,OAAO,MAAMC,SAAS,gBAsBlBzD,IAAI,CACL0D,IAAI,IAAK/C,cAAc,CAAC+C,IAAI,CAAC,CAAC,CAAC,CAAC,EACjC,CAAO1B,IAAkB,EAAEC,IAAyC,EAAEnB,OAErE,KAAyB;EACxB,MAAM6C,gBAAgB,GAAG7C,OAAO,EAAE6C,gBAAgB,IAAI,KAAK;EAC3D,OAAO/D,MAAM,CAACsC,QAAQ,CAAE0B,MAAM,IAAI;IAChC,MAAMT,MAAM,GAAGnB,IAAI,CAAC6B,GAAG,CAAC5B,IAAI,CAAC;IAC7B,IAAIkB,MAAM,CAACC,IAAI,KAAK,SAAS,IAAI,EAAEO,gBAAgB,IAAIR,MAAM,CAACW,OAAO,CAAC,EAAE;MACtE,OAAOF,MAAM,CAACnD,MAAM,CAACsD,MAAM,CAACZ,MAAM,CAAQ,CAAC;IAC7C;IACA,MAAMV,MAAM,GAAGT,IAAI,CAACU,SAAS,CAACT,IAAI,EAAGU,KAAK,IAAI;MAC5C,IAAIA,KAAK,CAACS,IAAI,KAAK,SAAS,IAAI,EAAEO,gBAAgB,IAAIhB,KAAK,CAACmB,OAAO,CAAC,EAAE;QACpEF,MAAM,CAACnD,MAAM,CAACsD,MAAM,CAACpB,KAAK,CAAQ,CAAC;QACnCF,MAAM,EAAE;MACV;IACF,CAAC,CAAC;IACF,OAAO7C,MAAM,CAACgC,IAAI,CAACa,MAAM,CAAC;EAC5B,CAAC,CAAC;AACJ,CAAC,CACF;AAED;;;;AAIA,OAAO,MAAMuB,KAAK,gBAWdhE,IAAI,CACN,CAAC,EACD,CAAIgC,IAAkB,EAAEC,IAAkB,KACxCrC,MAAM,CAACqE,cAAc,CACnBrE,MAAM,CAACgC,IAAI,CAAC,MAAMI,IAAI,CAACgC,KAAK,CAAC/B,IAAI,CAAC,CAAC,EAClCiC,OAAO,IAAKtE,MAAM,CAACgC,IAAI,CAACsC,OAAO,CAAC,CAClC,CACJ;AAED;AACA;AACA;AAEA,MAAMC,cAAc,GAAG;EAAEtB,SAAS,EAAE;AAAI,CAAE;AAE1C,MAAMuB,cAAc,GAAIC,QAAoB,IAAU;EACpDA,QAAQ,EAAE;AACZ,CAAC;AAED,MAAMC,kBAAkB,GAA4B,qCAAqC;AACzF,MAAMC,OAAO,GAAOtC,IAAkB,IACpCqC,kBAAkB,IAAIrC,IAAI,GAAIA,IAA+B,CAACqC,kBAAkB,CAAC,CAACE,GAAG,GAAGvC,IAAI;AAE9F,MAAMlB,YAAY;EACP,CAACL,MAAM;EACPQ,iBAAiB;EACjBC,cAAc;EACdsD,SAAS;EACTC,cAAc;EAEvBC,YACE3D,aAAwD,EACxDC,YAA6C,EAC7CC,iBAA0B,EAC1BC,cAAuB;IAEvB,IAAI,CAACT,MAAM,CAAC,GAAGA,MAAM;IACrB,IAAI,CAAC+D,SAAS,GAAG,IAAIpE,cAAc,CAAC,MAAM,EAAEY,YAAY,CAAC;IACzD,IAAI,CAACyD,cAAc,GAAG,IAAIrE,cAAc,CAAC,OAAO,EAAEY,YAAY,CAAC;IAC/D,IAAI,CAACE,cAAc,GAAGA,cAAc;IAEpC,IAAID,iBAAiB,KAAK0D,SAAS,IAAIzD,cAAc,KAAKyD,SAAS,EAAE;MACnE,IAAI,CAAC1D,iBAAiB,GAAG2D,IAAI,CAACC,KAAK,CAAC3D,cAAc,GAAG,CAAC,CAAC;IACzD,CAAC,MAAM;MACL,IAAI,CAACD,iBAAiB,GAAGA,iBAAiB,IAAI,IAAI;IACpD;IACA,IAAIF,aAAa,KAAK4D,SAAS,EAAE;MAC/B,KAAK,MAAM,CAAC3C,IAAI,EAAEU,KAAK,CAAC,IAAI3B,aAAa,EAAE;QACzC,IAAI,CAAC+D,UAAU,CAAC9C,IAAI,CAAC,CAAC+C,QAAQ,CAACrC,KAAK,CAAC;MACvC;IACF;EACF;EAESsC,KAAK,gBAAG,IAAIC,GAAG,EAA0C;EACzDC,qBAAqB,gBAAG,IAAID,GAAG,EAAmB;EAClDE,cAAc,gBAAG,IAAIF,GAAG,EAAgE;EACxFG,iBAAiB,gBAAG,IAAIH,GAAG,EAAyB;EAC7DI,QAAQ,GAAG,KAAK;EAEhBC,QAAQA,CAAA;IACN,OAAO,IAAI,CAACN,KAAK;EACnB;EAEApB,GAAGA,CAAI5B,IAAkB;IACvB,OAAO,IAAI,CAAC8C,UAAU,CAAC9C,IAAI,CAAC,CAACU,KAAK,EAAE;EACtC;EAEA6C,GAAGA,CAAOvD,IAAyB,EAAEU,KAAQ;IAC3CV,IAAI,CAACwD,KAAK,CAAC,IAAI,CAACV,UAAU,CAAC9C,IAAI,CAAC,CAACyD,YAAY,EAAE/C,KAAK,CAAC;EACvD;EAEAgD,eAAeA,CAACnB,GAAW,EAAEoB,OAAgB;IAC3C,IAAI,CAACT,qBAAqB,CAACK,GAAG,CAAChB,GAAG,EAAEoB,OAAO,CAAC;EAC9C;EAEAC,MAAMA,CAAU5D,IAAyB,EAAE6D,CAA2C;IACpF,MAAMC,IAAI,GAAG,IAAI,CAAChB,UAAU,CAAC9C,IAAI,CAAC;IAClC,MAAMkB,MAAM,GAAG2C,CAAC,CAACC,IAAI,CAACpD,KAAK,EAAE,CAAC;IAC9BV,IAAI,CAACwD,KAAK,CAACM,IAAI,CAACL,YAAY,EAAEvC,MAAM,CAAC,CAAC,CAAC,CAAC;IACxC,OAAOA,MAAM,CAAC,CAAC,CAAC;EAClB;EAEA6C,MAAMA,CAAO/D,IAAyB,EAAE6D,CAAc;IACpD,MAAMC,IAAI,GAAG,IAAI,CAAChB,UAAU,CAAC9C,IAAI,CAAC;IAClCA,IAAI,CAACwD,KAAK,CAACM,IAAI,CAACL,YAAY,EAAEI,CAAC,CAACC,IAAI,CAACpD,KAAK,EAAE,CAAC,CAAC;EAChD;EAEAsD,OAAO,GAAOhE,IAAkB,IAAU;IACxC,IAAIA,IAAI,CAACgE,OAAO,KAAKrB,SAAS,EAAE;MAC9B3C,IAAI,CAACgE,OAAO,CAAC,IAAI,CAACA,OAAO,CAAC;IAC5B,CAAC,MAAM;MACL,IAAI,CAACC,cAAc,CAACjE,IAAI,CAAC;IAC3B;EACF,CAAC;EAEDS,SAASA,CAAIT,IAAkB,EAAE6D,CAAiB,EAAEhF,OAA0C;IAC5F,MAAMiF,IAAI,GAAG,IAAI,CAAChB,UAAU,CAAC9C,IAAI,CAAC;IAClC,IAAInB,OAAO,EAAE+B,SAAS,EAAE;MACtBiD,CAAC,CAACC,IAAI,CAACpD,KAAK,EAAE,CAAC;IACjB;IACA,MAAMwD,MAAM,GAAGJ,IAAI,CAACrD,SAAS,CAAC;MAC5BoD,CAAC,CAACC,IAAI,CAACK,MAAM,CAAC;IAChB,CAAC,CAAC;IACF,OAAO,MAAK;MACVD,MAAM,EAAE;MACR,IAAIJ,IAAI,CAACM,YAAY,EAAE;QACrB,IAAI,CAACC,mBAAmB,CAACP,IAAI,CAAC;MAChC;IACF,CAAC;EACH;EAEA/B,KAAKA,CAAI/B,IAAkB;IACzB,OAAO,IAAI,CAACS,SAAS,CAACT,IAAI,EAAElC,SAAS,EAAEoE,cAAc,CAAC;EACxD;EAEAoC,UAAUA,CAACtE,IAAoB;IAC7B,OAAO,CAACA,IAAI,CAACuE,SAAS,IAAIvE,IAAI,CAACwE,OAAO,KAAK,CAAC,KAAKxE,IAAI,CAACwE,OAAO,KAAK7B,SAAS,IAAI,IAAI,CAACzD,cAAc,KAAKyD,SAAS,CAAC;EACnH;EAEAG,UAAUA,CAAI9C,IAAkB;IAC9B,MAAMuC,GAAG,GAAGD,OAAO,CAACtC,IAAI,CAAC;IACzB,IAAI8D,IAAI,GAAG,IAAI,CAACd,KAAK,CAACpB,GAAG,CAACW,GAAG,CAAC;IAC9B,IAAIuB,IAAI,KAAKnB,SAAS,EAAE;MACtBmB,IAAI,GAAG,IAAI,CAACW,UAAU,CAACzE,IAAI,CAAC;MAC5B,IAAI,CAACgD,KAAK,CAACO,GAAG,CAAChB,GAAG,EAAEuB,IAAI,CAAC;IAC3B,CAAC,MAAM,IAAI,IAAI,CAACQ,UAAU,CAACtE,IAAI,CAAC,EAAE;MAChC,IAAI,CAAC0E,iBAAiB,CAACZ,IAAI,CAAC;IAC9B;IACA,IAAI,OAAOvB,GAAG,KAAK,QAAQ,IAAI,IAAI,CAACW,qBAAqB,CAACyB,GAAG,CAACpC,GAAG,CAAC,EAAE;MAClE,MAAMoB,OAAO,GAAG,IAAI,CAACT,qBAAqB,CAACtB,GAAG,CAACW,GAAG,CAAC;MACnD,IAAI,CAACW,qBAAqB,CAAC0B,MAAM,CAACrC,GAAG,CAAC;MACtC,MAAMsC,OAAO,GAAI7E,IAAsC,CAACqC,kBAAkB,CAAC,CAACyC,MAAM,CAACnB,OAAO,CAAC;MAC3FG,IAAI,CAACf,QAAQ,CAAC8B,OAAO,CAAC;IACxB;IACA,OAAOf,IAAI;EACb;EAEAW,UAAUA,CAAIzE,IAAkB;IAC9B,IAAI,IAAI,CAACqD,QAAQ,EAAE;MACjB,MAAM,IAAI0B,KAAK,CAAC,sBAAsB/E,IAAI,wBAAwB,CAAC;IACrE;IAEA,IAAI,CAACA,IAAI,CAACuE,SAAS,EAAE;MACnB,IAAI,CAACS,mBAAmB,CAAChF,IAAI,CAAC;IAChC;IACA,OAAO,IAAIiF,QAAQ,CAAC,IAAI,EAAEjF,IAAI,CAAC;EACjC;EAEAiE,cAAc,GAAOjE,IAAkB,IAAU;IAC/C,IAAI,CAAC8C,UAAU,CAAC9C,IAAI,CAAC,CAACkF,UAAU,EAAE;EACpC,CAAC;EAEDF,mBAAmBA,CAAChF,IAAoB;IACtC,IAAI,CAACyC,cAAc,CAACzD,YAAY,CAAC,MAAK;MACpC,MAAM8E,IAAI,GAAG,IAAI,CAACd,KAAK,CAACpB,GAAG,CAACU,OAAO,CAACtC,IAAI,CAAC,CAAC;MAC1C,IAAI8D,IAAI,KAAKnB,SAAS,IAAImB,IAAI,CAACM,YAAY,EAAE;QAC3C,IAAI,CAACe,UAAU,CAACrB,IAAI,CAAC;MACvB;IACF,CAAC,EAAE,CAAC,CAAC;EACP;EAEAO,mBAAmBA,CAACP,IAAmB;IACrC,IAAI,CAACrB,cAAc,CAACzD,YAAY,CAAC,MAAK;MACpC,IAAI8E,IAAI,CAACM,YAAY,EAAE;QACrB,IAAI,CAACe,UAAU,CAACrB,IAAI,CAAC;MACvB;IACF,CAAC,EAAE,CAAC,CAAC;EACP;EAEAqB,UAAUA,CAACrB,IAAmB;IAC5B,IAAI,IAAI,CAACQ,UAAU,CAACR,IAAI,CAAC9D,IAAI,CAAC,EAAE;MAC9B,IAAI,CAACoF,cAAc,CAACtB,IAAI,CAAC;IAC3B,CAAC,MAAM;MACL,IAAI,CAACd,KAAK,CAAC4B,MAAM,CAACtC,OAAO,CAACwB,IAAI,CAAC9D,IAAI,CAAC,CAAC;MACrC8D,IAAI,CAACI,MAAM,EAAE;IACf;EACF;EAEAkB,cAAcA,CAACtB,IAAmB;IAChC,IAAI,IAAI,CAACV,iBAAiB,CAACuB,GAAG,CAACb,IAAI,CAAC,EAAE;MACpC;IACF;IAEA,IAAIU,OAAO,GAAGV,IAAI,CAAC9D,IAAI,CAACwE,OAAO,IAAI,IAAI,CAACtF,cAAe;IACvD,IAAI,IAAI,CAAC,CAAAmG,eAAgB,KAAK,IAAI,EAAE;MAClCb,OAAO,IAAI,IAAI,CAAC,CAAAa,eAAgB;MAChC,IAAIb,OAAO,IAAI,CAAC,EAAE;QAChB,IAAI,CAACxB,KAAK,CAAC4B,MAAM,CAACtC,OAAO,CAACwB,IAAI,CAAC9D,IAAI,CAAC,CAAC;QACrC8D,IAAI,CAACI,MAAM,EAAE;QACb;MACF;IACF;IACA,MAAMoB,GAAG,GAAG1C,IAAI,CAAC2C,IAAI,CAACf,OAAQ,GAAG,IAAI,CAACvF,iBAAiB,CAAC,GAAG,IAAI,CAACA,iBAAiB;IACjF,MAAMuG,SAAS,GAAGC,IAAI,CAACC,GAAG,EAAE,GAAGJ,GAAG;IAClC,MAAMK,MAAM,GAAGH,SAAS,GAAIA,SAAS,GAAG,IAAI,CAACvG,iBAAkB,GAAG,IAAI,CAACA,iBAAiB;IAExF,IAAI2G,KAAK,GAAG,IAAI,CAACzC,cAAc,CAACvB,GAAG,CAAC+D,MAAM,CAAC;IAC3C,IAAIC,KAAK,KAAKjD,SAAS,EAAE;MACvBiD,KAAK,GAAG,CACN,IAAIC,GAAG,EAAiB,EACxBC,UAAU,CAAC,MAAM,IAAI,CAACC,WAAW,CAACJ,MAAM,CAAC,EAAEA,MAAM,GAAGF,IAAI,CAACC,GAAG,EAAE,CAAQ,CACvE;MACD,IAAI,CAACvC,cAAc,CAACI,GAAG,CAACoC,MAAM,EAAEC,KAAK,CAAC;IACxC;IACAA,KAAK,CAAC,CAAC,CAAC,CAACI,GAAG,CAAClC,IAAI,CAAC;IAClB,IAAI,CAACV,iBAAiB,CAACG,GAAG,CAACO,IAAI,EAAE6B,MAAM,CAAC;EAC1C;EAEAjB,iBAAiBA,CAACZ,IAAmB;IACnC,MAAM6B,MAAM,GAAG,IAAI,CAACvC,iBAAiB,CAACxB,GAAG,CAACkC,IAAI,CAAC;IAC/C,IAAI6B,MAAM,KAAKhD,SAAS,EAAE;MACxB;IACF;IACA,IAAI,CAACS,iBAAiB,CAACwB,MAAM,CAACd,IAAI,CAAC;IACnC,IAAI,CAACO,mBAAmB,CAACP,IAAI,CAAC;IAE9B,MAAM,CAACd,KAAK,EAAEiD,MAAM,CAAC,GAAG,IAAI,CAAC9C,cAAc,CAACvB,GAAG,CAAC+D,MAAM,CAAE;IACxD3C,KAAK,CAAC4B,MAAM,CAACd,IAAI,CAAC;IAClB,IAAId,KAAK,CAACkD,IAAI,KAAK,CAAC,EAAE;MACpBC,YAAY,CAACF,MAAM,CAAC;MACpB,IAAI,CAAC9C,cAAc,CAACyB,MAAM,CAACe,MAAM,CAAC;IACpC;EACF;EAEA,CAAAN,eAAgB,GAAkB,IAAI;EACtCU,WAAWA,CAACJ,MAAc;IACxB,MAAM3C,KAAK,GAAG,IAAI,CAACG,cAAc,CAACvB,GAAG,CAAC+D,MAAM,CAAE,CAAC,CAAC,CAAC;IACjD,IAAI,CAACxC,cAAc,CAACyB,MAAM,CAACe,MAAM,CAAC;IAElC3C,KAAK,CAACoD,OAAO,CAAEtC,IAAI,IAAI;MACrB,IAAI,CAACA,IAAI,CAACM,YAAY,EAAE;QACtB;MACF;MACA,IAAI,CAAChB,iBAAiB,CAACwB,MAAM,CAACd,IAAI,CAAC;MACnC,IAAI,CAACd,KAAK,CAAC4B,MAAM,CAACtC,OAAO,CAACwB,IAAI,CAAC9D,IAAI,CAAC,CAAC;MACrC,IAAI,CAAC,CAAAqF,eAAgB,GAAGvB,IAAI,CAAC9D,IAAI,CAACwE,OAAO,IAAI,IAAI,CAACtF,cAAe;MACjE4E,IAAI,CAACI,MAAM,EAAE;MACb,IAAI,CAAC,CAAAmB,eAAgB,GAAG,IAAI;IAC9B,CAAC,CAAC;EACJ;EAEAgB,KAAKA,CAAA;IACH,IAAI,CAAClD,cAAc,CAACiD,OAAO,CAAC,CAAC,GAAGH,MAAM,CAAC,KAAKE,YAAY,CAACF,MAAM,CAAC,CAAC;IACjE,IAAI,CAAC9C,cAAc,CAACmD,KAAK,EAAE;IAC3B,IAAI,CAAClD,iBAAiB,CAACkD,KAAK,EAAE;IAE9B,IAAI,CAACtD,KAAK,CAACoD,OAAO,CAAEtC,IAAI,IAAKA,IAAI,CAACI,MAAM,EAAE,CAAC;IAC3C,IAAI,CAAClB,KAAK,CAACsD,KAAK,EAAE;EACpB;EAEA1G,OAAOA,CAAA;IACL,IAAI,CAACyD,QAAQ,GAAG,IAAI;IACpB,IAAI,CAACgD,KAAK,EAAE;EACd;;AAGF,MAAME,SAAS,GAAG;EAChBC,KAAK,EAAE,CAAC;EAAE;EACVC,WAAW,EAAE,CAAC;EAAE;EAChBC,eAAe,EAAE,CAAC,CAAC;CACX;AAGV,MAAMC,SAAS,GAAG;EAChBC,aAAa,EAAEL,SAAS,CAACC,KAAK,GAAGD,SAAS,CAACG,eAAe;EAC1DG,KAAK,EAAEN,SAAS,CAACC,KAAK,GAAGD,SAAS,CAACE,WAAW,GAAGF,SAAS,CAACG,eAAe;EAC1EI,KAAK,EAAEP,SAAS,CAACC,KAAK,GAAGD,SAAS,CAACE,WAAW;EAC9CM,OAAO,EAAE;CACD;AAGV,MAAM9B,QAAQ;EACZvC,YACEjD,QAAsB,EACtBO,IAAkB;IAElB,IAAI,CAACP,QAAQ,GAAGA,QAAQ;IACxB,IAAI,CAACO,IAAI,GAAGA,IAAI;IAChB,IAAI,CAACyD,YAAY,GAAG,IAAIuD,gBAAgB,CAACvH,QAAQ,EAAE,IAAI,CAAC;EAC1D;EAESA,QAAQ;EACRO,IAAI;EACbiH,KAAK,GAAcN,SAAS,CAACC,aAAa;EAC1CM,QAAQ;EACRzD,YAAY;EAEZ0D,OAAO,GAAyB,EAAE;EAClCC,eAAe;EACfC,QAAQ,GAAyB,EAAE;EACnCC,SAAS,gBAAoB,IAAIzB,GAAG,EAAE;EACtC0B,gBAAgB,GAAG,KAAK;EAExB,IAAInD,YAAYA,CAAA;IACd,OAAO,CAAC,IAAI,CAACpE,IAAI,CAACuE,SAAS,IAAI,IAAI,CAAC+C,SAAS,CAACpB,IAAI,KAAK,CAAC,IAAI,IAAI,CAACmB,QAAQ,CAACG,MAAM,KAAK,CAAC,IAAI,IAAI,CAACP,KAAK,KAAK,CAAC;EAC5G;EAEA9C,MAAM,GAAMxB,SAAgB;EAC5BjC,KAAKA,CAAA;IACH,IAAI,CAAC,IAAI,CAACuG,KAAK,GAAGV,SAAS,CAACG,eAAe,MAAM,CAAC,EAAE;MAClD,IAAI,CAACQ,QAAQ,GAAGO,YAAY,CAAC,IAAI,CAAC;MAClC,MAAM/G,KAAK,GAAG,IAAI,CAACV,IAAI,CAAC0H,IAAI,CAAC,IAAI,CAACR,QAAQ,CAAC;MAC3C,IAAI,CAAC,IAAI,CAACD,KAAK,GAAGV,SAAS,CAACG,eAAe,MAAM,CAAC,EAAE;QAClD,IAAI,CAAC3D,QAAQ,CAACrC,KAAK,CAAC;MACtB;MAEA,IAAI,IAAI,CAAC0G,eAAe,EAAE;QACxB,MAAMD,OAAO,GAAG,IAAI,CAACC,eAAe;QACpC,IAAI,CAACA,eAAe,GAAGzE,SAAS;QAChC,KAAK,IAAIgF,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGR,OAAO,CAACK,MAAM,EAAEG,CAAC,EAAE,EAAE;UACvCR,OAAO,CAACQ,CAAC,CAAC,CAACC,WAAW,CAAC,IAAI,CAAC;UAC5B,IAAIT,OAAO,CAACQ,CAAC,CAAC,CAACvD,YAAY,EAAE;YAC3B,IAAI,CAAC3E,QAAQ,CAAC4E,mBAAmB,CAAC8C,OAAO,CAACQ,CAAC,CAAC,CAAC;UAC/C;QACF;MACF;IACF;IAEA,OAAO,IAAI,CAACxD,MAAM;EACpB;EAEA0D,WAAWA,CAAA;IACT,IAAI,CAAC,IAAI,CAACZ,KAAK,GAAGV,SAAS,CAACE,WAAW,MAAM,CAAC,EAAE;MAC9C,OAAOxI,MAAM,CAAC6J,IAAI,EAAE;IACtB;IACA,OAAO7J,MAAM,CAAC8J,IAAI,CAAC,IAAI,CAAC5D,MAAM,CAAC;EACjC;EAEApB,QAAQA,CAACrC,KAAQ;IACf,IAAI,CAAC,IAAI,CAACuG,KAAK,GAAGV,SAAS,CAACE,WAAW,MAAM,CAAC,EAAE;MAC9C,IAAI,CAACQ,KAAK,GAAGN,SAAS,CAACG,KAAK;MAC5B,IAAI,CAAC3C,MAAM,GAAGzD,KAAK;MAEnB,IAAIsH,UAAU,CAACC,KAAK,KAAKC,UAAU,CAACC,OAAO,EAAE;QAC3CH,UAAU,CAACI,MAAM,CAACpC,GAAG,CAAC,IAAI,CAAC;MAC7B,CAAC,MAAM;QACL,IAAI,CAACoC,MAAM,EAAE;MACf;MAEA;IACF;IAEA,IAAI,CAACnB,KAAK,GAAGN,SAAS,CAACG,KAAK;IAC5B,IAAIuB,MAAM,CAACC,EAAE,CAAC,IAAI,CAACnE,MAAM,EAAEzD,KAAK,CAAC,EAAE;MACjC;IACF;IAEA,IAAI,CAACyD,MAAM,GAAGzD,KAAK;IACnB,IAAI,IAAI,CAAC6G,gBAAgB,EAAE;MACzB,IAAI,CAACA,gBAAgB,GAAG,KAAK;IAC/B,CAAC,MAAM;MACL,IAAI,CAACgB,kBAAkB,EAAE;IAC3B;IAEA,IAAI,IAAI,CAACjB,SAAS,CAACpB,IAAI,GAAG,CAAC,EAAE;MAC3B,IAAI8B,UAAU,CAACC,KAAK,KAAKC,UAAU,CAACC,OAAO,EAAE;QAC3CH,UAAU,CAACI,MAAM,CAACpC,GAAG,CAAC,IAAI,CAAC;MAC7B,CAAC,MAAM;QACL,IAAI,CAACoC,MAAM,EAAE;MACf;IACF;EACF;EAEAI,SAASA,CAACC,MAAqB;IAC7B,IAAI,CAACtB,OAAO,CAACuB,IAAI,CAACD,MAAM,CAAC;IACzB,IAAI,IAAI,CAACrB,eAAe,KAAKzE,SAAS,EAAE;MACtC,MAAMgG,KAAK,GAAG,IAAI,CAACvB,eAAe,CAACwB,OAAO,CAACH,MAAM,CAAC;MAClD,IAAIE,KAAK,KAAK,CAAC,CAAC,EAAE;QAChB,IAAI,CAACvB,eAAe,CAACuB,KAAK,CAAC,GAAG,IAAI,CAACvB,eAAe,CAAC,IAAI,CAACA,eAAe,CAACI,MAAM,GAAG,CAAC,CAAC;QACnF,IAAI,IAAI,CAACJ,eAAe,CAACyB,GAAG,EAAE,KAAKlG,SAAS,EAAE;UAC5C,IAAI,CAACyE,eAAe,GAAGzE,SAAS;QAClC;MACF;IACF;IAEA,IAAI8F,MAAM,CAACpB,QAAQ,CAACuB,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE;MACxCH,MAAM,CAACpB,QAAQ,CAACqB,IAAI,CAAC,IAAI,CAAC;MAC1B,IAAID,MAAM,CAAClB,gBAAgB,EAAE;QAC3BkB,MAAM,CAAClB,gBAAgB,GAAG,KAAK;MACjC;IACF;EACF;EAEAK,WAAWA,CAACkB,KAAoB;IAC9B,MAAMH,KAAK,GAAG,IAAI,CAACtB,QAAQ,CAACuB,OAAO,CAACE,KAAK,CAAC;IAC1C,IAAIH,KAAK,KAAK,CAAC,CAAC,EAAE;MAChB,IAAI,CAACtB,QAAQ,CAACsB,KAAK,CAAC,GAAG,IAAI,CAACtB,QAAQ,CAAC,IAAI,CAACA,QAAQ,CAACG,MAAM,GAAG,CAAC,CAAC;MAC9D,IAAI,CAACH,QAAQ,CAACwB,GAAG,EAAE;IACrB;EACF;EAEA3D,UAAUA,CAAA;IACR,IAAI,IAAI,CAAC+B,KAAK,KAAKN,SAAS,CAACG,KAAK,EAAE;MAClC,IAAI,CAACG,KAAK,GAAGN,SAAS,CAACE,KAAK;MAC5B,IAAI,CAACkC,eAAe,EAAE;IACxB;IAEA,IAAIf,UAAU,CAACC,KAAK,KAAKC,UAAU,CAACC,OAAO,EAAE;MAC3CH,UAAU,CAACnB,KAAK,CAAC6B,IAAI,CAAC,IAAI,CAAC;IAC7B,CAAC,MAAM,IAAI,IAAI,CAAC1I,IAAI,CAACgJ,IAAI,IAAI,IAAI,CAAC1B,SAAS,CAACpB,IAAI,KAAK,CAAC,IAAI,CAAC+C,iBAAiB,CAAC,IAAI,CAAC5B,QAAQ,CAAC,EAAE;MAC3F,IAAI,CAACkB,kBAAkB,EAAE;MACzB,IAAI,CAAChB,gBAAgB,GAAG,IAAI;IAC9B,CAAC,MAAM;MACL,IAAI,CAAC7G,KAAK,EAAE;IACd;EACF;EAEA6H,kBAAkBA,CAAA;IAChB,IAAI,IAAI,CAAClB,QAAQ,CAACG,MAAM,KAAK,CAAC,EAAE;MAC9B;IACF;IAEA,MAAMH,QAAQ,GAAG,IAAI,CAACA,QAAQ;IAC9B,IAAI,CAACA,QAAQ,GAAG,EAAE;IAClB,KAAK,IAAIM,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGN,QAAQ,CAACG,MAAM,EAAEG,CAAC,EAAE,EAAE;MACxCN,QAAQ,CAACM,CAAC,CAAC,CAACzC,UAAU,EAAE;IAC1B;EACF;EAEAkD,MAAMA,CAAA;IACJ,IAAI,CAACd,SAAS,CAAClB,OAAO,CAACjE,cAAc,CAAC;IAEtC,IAAI6F,UAAU,CAACC,KAAK,KAAKC,UAAU,CAACgB,MAAM,EAAE;MAC1ClB,UAAU,CAACI,MAAM,CAACxD,MAAM,CAAC,IAAI,CAAC;IAChC;EACF;EAEAmE,eAAeA,CAAA;IACb,IAAI,IAAI,CAAC7B,QAAQ,KAAKvE,SAAS,EAAE;MAC/B,IAAI,CAACuE,QAAQ,CAACtH,OAAO,EAAE;MACvB,IAAI,CAACsH,QAAQ,GAAGvE,SAAS;IAC3B;IAEA,IAAI,IAAI,CAACwE,OAAO,CAACK,MAAM,KAAK,CAAC,EAAE;MAC7B,IAAI,CAACJ,eAAe,GAAG,IAAI,CAACD,OAAO;MACnC,IAAI,CAACA,OAAO,GAAG,EAAE;IACnB;EACF;EAEAjD,MAAMA,CAAA;IACJ,IAAI,CAAC+C,KAAK,GAAGN,SAAS,CAACI,OAAO;IAC9B,IAAI,CAACO,SAAS,CAAChB,KAAK,EAAE;IAEtB,IAAI,IAAI,CAACY,QAAQ,KAAKvE,SAAS,EAAE;MAC/B;IACF;IAEA,IAAI,CAACoG,eAAe,EAAE;IAEtB,IAAI,IAAI,CAAC3B,eAAe,KAAKzE,SAAS,EAAE;MACtC;IACF;IAEA,MAAMwE,OAAO,GAAG,IAAI,CAACC,eAAe;IACpC,IAAI,CAACA,eAAe,GAAGzE,SAAS;IAChC,KAAK,IAAIgF,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGR,OAAO,CAACK,MAAM,EAAEG,CAAC,EAAE,EAAE;MACvCR,OAAO,CAACQ,CAAC,CAAC,CAACC,WAAW,CAAC,IAAI,CAAC;MAC5B,IAAIT,OAAO,CAACQ,CAAC,CAAC,CAACvD,YAAY,EAAE;QAC3B,IAAI,CAAC3E,QAAQ,CAAC0F,UAAU,CAACgC,OAAO,CAACQ,CAAC,CAAC,CAAC;MACtC;IACF;EACF;EAEAlH,SAASA,CAAC2B,QAAoB;IAC5B,IAAI,CAACkF,SAAS,CAACtB,GAAG,CAAC5D,QAAQ,CAAC;IAC5B,OAAO,MAAM,IAAI,CAACkF,SAAS,CAAC1C,MAAM,CAACxC,QAAQ,CAAC;EAC9C;;AAGF,SAAS6G,iBAAiBA,CAAC5B,QAA8B;EACvD,IAAIA,QAAQ,CAACG,MAAM,KAAK,CAAC,EAAE;IACzB,OAAO,KAAK;EACd;EACA,IAAI2B,OAAO,GAAqC9B,QAAQ;EACxD,IAAI+B,KAA8C;EAClD,IAAIC,UAAU,GAAG,CAAC;EAClB,OAAOF,OAAO,KAAKxG,SAAS,EAAE;IAC5B,KAAK,IAAIgF,CAAC,GAAG,CAAC,EAAE2B,GAAG,GAAGH,OAAO,CAAC3B,MAAM,EAAEG,CAAC,GAAG2B,GAAG,EAAE3B,CAAC,EAAE,EAAE;MAClD,MAAMmB,KAAK,GAAGK,OAAO,CAACxB,CAAC,CAAC;MACxB,IAAI,CAACmB,KAAK,CAAC9I,IAAI,CAACgJ,IAAI,IAAIF,KAAK,CAACxB,SAAS,CAACpB,IAAI,GAAG,CAAC,EAAE;QAChD,OAAO,IAAI;MACb,CAAC,MAAM,IAAI4C,KAAK,CAACzB,QAAQ,CAACG,MAAM,GAAG,CAAC,EAAE;QACpC,IAAI4B,KAAK,KAAKzG,SAAS,EAAE;UACvByG,KAAK,GAAG,CAACN,KAAK,CAACzB,QAAQ,CAAC;QAC1B,CAAC,MAAM;UACL+B,KAAK,CAACV,IAAI,CAACI,KAAK,CAACzB,QAAQ,CAAC;QAC5B;MACF;IACF;IACA8B,OAAO,GAAGC,KAAK,GAAGC,UAAU,EAAE,CAAC;EACjC;EACA,OAAO,KAAK;AACd;AAUA,MAAME,aAAa,GAAqE;EACtF,IAAI9J,QAAQA,CAAA;IACV,OAAQ,IAAsB,CAACqE,IAAI,CAACrE,QAAQ;EAC9C,CAAC;EAEDC,YAAYA,CAAsBmE,CAAa;IAC7C,IAAI,IAAI,CAACR,QAAQ,EAAE,OAAOQ,CAAC,EAAE;IAC7B,IAAI,CAAC2F,UAAU,KAAK,EAAE;IACtB,IAAI,CAACA,UAAU,CAACd,IAAI,CAAC7E,CAAC,CAAC;EACzB,CAAC;EAEDjC,GAAGA,CAAyB5B,IAAkB;IAC5C,IAAI,IAAI,CAACqD,QAAQ,EAAE;MACjB,OAAO,IAAI,CAACS,IAAI,CAACrE,QAAQ,CAACmC,GAAG,CAAC5B,IAAI,CAAC;IACrC;IACA,MAAMyI,MAAM,GAAG,IAAI,CAAC3E,IAAI,CAACrE,QAAQ,CAACqD,UAAU,CAAC9C,IAAI,CAAC;IAClD,IAAI,CAAC8D,IAAI,CAAC0E,SAAS,CAACC,MAAM,CAAC;IAC3B,OAAOA,MAAM,CAAC/H,KAAK,EAAE;EACvB,CAAC;EAEDQ,MAAMA,CAA4BlB,IAAyC,EAAEnB,OAE5E;IACC,IAAI,IAAI,CAACwE,QAAQ,IAAI,IAAI,CAACoG,IAAI,EAAE;MAC9B,OAAO,IAAI,CAACC,UAAU,CAAC1J,IAAI,EAAEnB,OAAO,CAAC;IACvC;IACA,MAAMqC,MAAM,GAAG,IAAI,CAACU,GAAG,CAAC5B,IAAI,CAAC;IAC7B,IAAInB,OAAO,EAAE6C,gBAAgB,IAAIR,MAAM,CAACW,OAAO,EAAE;MAC/C,OAAOlE,MAAM,CAACgM,KAAK;IACrB;IACA,QAAQzI,MAAM,CAACC,IAAI;MACjB,KAAK,SAAS;QAAE;UACd,OAAOxD,MAAM,CAACgM,KAAK;QACrB;MACA,KAAK,SAAS;QAAE;UACd,OAAO/L,IAAI,CAACyD,SAAS,CAACH,MAAM,CAACI,KAAK,CAAC;QACrC;MACA,KAAK,SAAS;QAAE;UACd,OAAO3D,MAAM,CAACyD,OAAO,CAACF,MAAM,CAACR,KAAK,CAAC;QACrC;IACF;EACF,CAAC;EAEDgJ,UAAUA,CAA4B1J,IAAyC,EAAEnB,OAEhF;IACC,OAAOlB,MAAM,CAACsC,QAAQ,CAAQ0B,MAAM,IAAI;MACtC,MAAMT,MAAM,GAAG,IAAI,CAAC0I,IAAI,CAAC5J,IAAI,CAAC;MAC9B,IAAIkB,MAAM,CAACC,IAAI,KAAK,SAAS,IAAI,EAAEtC,OAAO,EAAE6C,gBAAgB,IAAIR,MAAM,CAACW,OAAO,CAAC,EAAE;QAC/E,OAAOF,MAAM,CAACnD,MAAM,CAACsD,MAAM,CAACZ,MAAM,CAAQ,CAAC;MAC7C;MACA,MAAMV,MAAM,GAAG,IAAI,CAACsD,IAAI,CAACrE,QAAQ,CAACgB,SAAS,CAACT,IAAI,EAAGkB,MAAM,IAAI;QAC3D,IAAIA,MAAM,CAACC,IAAI,KAAK,SAAS,IAAKtC,OAAO,EAAE6C,gBAAgB,IAAIR,MAAM,CAACW,OAAQ,EAAE;QAChFrB,MAAM,EAAE;QACRmB,MAAM,CAACnD,MAAM,CAACsD,MAAM,CAACZ,MAAM,CAAQ,CAAC;MACtC,CAAC,EAAE;QAAEN,SAAS,EAAE;MAAK,CAAE,CAAC;MACxB,OAAOjD,MAAM,CAACgC,IAAI,CAACa,MAAM,CAAC;IAC5B,CAAC,CAAC;EACJ,CAAC;EAEDqJ,SAASA,CAEP7J,IAAgD,EAChDU,KAAQ;IAER,IAAI,IAAI,CAAC2C,QAAQ,EAAE,OAAO1F,MAAM,CAACgM,KAAK;IACtC,IAAI,CAAC7F,IAAI,CAACrE,QAAQ,CAAC8D,GAAG,CAACvD,IAAI,EAAEU,KAAK,CAAC;IACnC,OAAO,IAAI,CAACgJ,UAAU,CAAC1J,IAAI,EAAE;MAAE0B,gBAAgB,EAAE;IAAI,CAAE,CAAC;EAC1D,CAAC;EAEDqG,IAAIA,CAAyB/H,IAAiC;IAC5D,IAAI,IAAI,CAACqD,QAAQ,IAAI,IAAI,CAACoG,IAAI,EAAE;MAC9B,OAAO,IAAI,CAACK,QAAQ,CAAC9J,IAAI,CAAC;IAC5B;IACA,MAAMkB,MAAM,GAAG,IAAI,CAACU,GAAG,CAAC5B,IAAI,CAAC;IAC7B,OAAOkB,MAAM,CAACC,IAAI,KAAK,MAAM,GAAGxD,MAAM,CAACgM,KAAK,GAAGhM,MAAM,CAACyD,OAAO,CAACF,MAAM,CAACR,KAAK,CAAC;EAC7E,CAAC;EAEDoJ,QAAQA,CAAyB9J,IAAiC;IAChE,OAAOrC,MAAM,CAACsC,QAAQ,CAAK0B,MAAM,IAAI;MACnC,MAAMT,MAAM,GAAG,IAAI,CAAC0I,IAAI,CAAC5J,IAAI,CAAC;MAC9B,IAAI/B,MAAM,CAAC8L,MAAM,CAAC7I,MAAM,CAAC,EAAE;QACzB,OAAOS,MAAM,CAAChE,MAAM,CAACyD,OAAO,CAACF,MAAM,CAACR,KAAK,CAAC,CAAC;MAC7C;MACA,MAAMF,MAAM,GAAG,IAAI,CAACsD,IAAI,CAACrE,QAAQ,CAACgB,SAAS,CAACT,IAAI,EAAGkB,MAAM,IAAI;QAC3D,IAAIjD,MAAM,CAAC+L,MAAM,CAAC9I,MAAM,CAAC,EAAE;QAC3BV,MAAM,EAAE;QACRmB,MAAM,CAAChE,MAAM,CAACyD,OAAO,CAACF,MAAM,CAACR,KAAK,CAAC,CAAC;MACtC,CAAC,EAAE;QAAEE,SAAS,EAAE;MAAK,CAAE,CAAC;MACxB,OAAOjD,MAAM,CAACgC,IAAI,CAACa,MAAM,CAAC;IAC5B,CAAC,CAAC;EACJ,CAAC;EAEDoJ,IAAIA,CAAyB5J,IAAkB;IAC7C,OAAO,IAAI,CAAC8D,IAAI,CAACrE,QAAQ,CAACmC,GAAG,CAAC5B,IAAI,CAAC;EACrC,CAAC;EAEDD,IAAIA,CAAA;IACF,IAAI,IAAI,CAACsD,QAAQ,EAAE,OAAOpF,MAAM,CAAC6J,IAAI,EAAE;IACvC,OAAO,IAAI,CAAChE,IAAI,CAAC+D,WAAW,EAAS;EACvC,CAAC;EAED7D,OAAOA,CAAyBhE,IAAkB;IAChD,IAAI,IAAI,CAACqD,QAAQ,EAAE;IACnB,IAAI,CAACS,IAAI,CAACrE,QAAQ,CAACuE,OAAO,CAAChE,IAAI,CAAC;EAClC,CAAC;EAEDiK,WAAWA,CAAA;IACT,IAAI,IAAI,CAAC5G,QAAQ,EAAE;IACnB,IAAI,CAACS,IAAI,CAACoB,UAAU,EAAE;EACxB,CAAC;EAEDnD,KAAKA,CAAyB/B,IAAkB;IAC9C,IAAI,IAAI,CAACqD,QAAQ,EAAE;IACnB,IAAI,CAAC3D,YAAY,CAAC,IAAI,CAACoE,IAAI,CAACrE,QAAQ,CAACsC,KAAK,CAAC/B,IAAI,CAAC,CAAC;EACnD,CAAC;EAEDS,SAASA,CAAyBT,IAAkB,EAAE6D,CAAiB,EAAEhF,OAExE;IACC,IAAI,IAAI,CAACwE,QAAQ,EAAE;IACnB,IAAI,CAAC3D,YAAY,CAAC,IAAI,CAACoE,IAAI,CAACrE,QAAQ,CAACgB,SAAS,CAACT,IAAI,EAAE6D,CAAC,EAAEhF,OAAO,CAAC,CAAC;EACnE,CAAC;EAEDqL,OAAOA,CAAyBC,CAAI;IAClC,IAAI,IAAI,CAAC9G,QAAQ,EAAE;IACnB,IAAI,CAACS,IAAI,CAACf,QAAQ,CAACoH,CAAQ,CAAC;EAC9B,CAAC;EAED5G,GAAGA,CAA4BvD,IAAyB,EAAEU,KAAQ;IAChE,IAAI,IAAI,CAAC2C,QAAQ,EAAE;IACnB,IAAI,CAACS,IAAI,CAACrE,QAAQ,CAAC8D,GAAG,CAACvD,IAAI,EAAEU,KAAK,CAAC;EACrC,CAAC;EAED0J,MAAMA,CAAyBpK,IAAkB,EAAEnB,OAElD;IACC,IAAI,IAAI,CAACwE,QAAQ,EAAE,OAAO9E,MAAM,CAAC8L,KAAK;IACtC,OAAO9L,MAAM,CAAC0B,QAAQ,CAAKC,KAAK,IAC9BvC,MAAM,CAACgC,IAAI,CAAC,MAAK;MACf,IAAI,CAACc,SAAS,CAACT,IAAI,EAAGU,KAAK,IAAKvC,KAAK,CAACwC,WAAW,CAACT,KAAK,EAAEQ,KAAK,CAAC,EAAE;QAC/DE,SAAS,EAAE,CAAC/B,OAAO,EAAEyL;OACtB,CAAC;IACJ,CAAC,CAAC,CACH;EACH,CAAC;EAEDC,YAAYA,CAA4BvK,IAAyC,EAAEnB,OAGlF;IACC,OAAO,IAAI,CAACuL,MAAM,CAACpK,IAAI,EAAEnB,OAAO,CAAC,CAACiC,IAAI,CACpCvC,MAAM,CAACwC,MAAM,CAACvC,MAAM,CAACwC,YAAY,CAAC,EAClCzC,MAAM,CAAC0C,SAAS,CAAEC,MAAM,IACtBA,MAAM,CAACC,IAAI,KAAK,SAAS,GAAGxD,MAAM,CAACyD,OAAO,CAACF,MAAM,CAACR,KAAK,CAAC,GAAG/C,MAAM,CAAC0D,SAAS,CAACH,MAAM,CAACI,KAAK,CAAC,CAC1F,CACF;EACH,CAAC;EAED1B,OAAOA,CAAA;IACL,IAAI,CAACyD,QAAQ,GAAG,IAAI;IACpB,IAAI,IAAI,CAACmG,UAAU,KAAK7G,SAAS,EAAE;MACjC;IACF;IAEA,MAAM6G,UAAU,GAAG,IAAI,CAACA,UAAU;IAClC,IAAI,CAACA,UAAU,GAAG7G,SAAS;IAC3B,KAAK,IAAIgF,CAAC,GAAG6B,UAAU,CAAChC,MAAM,GAAG,CAAC,EAAEG,CAAC,IAAI,CAAC,EAAEA,CAAC,EAAE,EAAE;MAC/C6B,UAAU,CAAC7B,CAAC,CAAC,EAAE;IACjB;EACF;CACD;AAED,MAAMF,YAAY,GAAO3D,IAAiB,IAAiB;EACzD,SAASlC,GAAGA,CAAI5B,IAAkB;IAChC,IAAI4B,GAAG,CAACyB,QAAQ,EAAE;MAChB,OAAOS,IAAI,CAACrE,QAAQ,CAACmC,GAAG,CAAC5B,IAAI,CAAC;IAChC,CAAC,MAAM,IAAI4B,GAAG,CAAC6H,IAAI,EAAE;MACnB,OAAO3F,IAAI,CAACrE,QAAQ,CAACmC,GAAG,CAAC5B,IAAI,CAAC;IAChC;IACA,MAAMyI,MAAM,GAAG3E,IAAI,CAACrE,QAAQ,CAACqD,UAAU,CAAC9C,IAAI,CAAC;IAC7C,MAAMU,KAAK,GAAG+H,MAAM,CAAC/H,KAAK,EAAE;IAC5BoD,IAAI,CAAC0E,SAAS,CAACC,MAAM,CAAC;IACtB,OAAO/H,KAAK;EACd;EACA2H,MAAM,CAACmC,cAAc,CAAC5I,GAAG,EAAE2H,aAAa,CAAC;EACzC3H,GAAG,CAAC6H,IAAI,GAAG,KAAK;EAChB7H,GAAG,CAACyB,QAAQ,GAAG,KAAK;EACpBzB,GAAG,CAAC4H,UAAU,GAAG7G,SAAS;EAC1Bf,GAAG,CAACkC,IAAI,GAAGA,IAAI;EACf,OAAOlC,GAAU;AACnB,CAAC;AAED,MAAMoF,gBAAgB;EACpBtE,YACEjD,QAAsB,EACtBqE,IAAiB;IAEjB,IAAI,CAACrE,QAAQ,GAAGA,QAAQ;IACxB,IAAI,CAACqE,IAAI,GAAGA,IAAI;EAClB;EACSrE,QAAQ;EACRqE,IAAI;EACblC,GAAGA,CAAI5B,IAAkB;IACvB,OAAO,IAAI,CAACP,QAAQ,CAACmC,GAAG,CAAC5B,IAAI,CAAC;EAChC;EACAuD,GAAGA,CAAOvD,IAAyB,EAAEU,KAAQ;IAC3C,OAAO,IAAI,CAACjB,QAAQ,CAAC8D,GAAG,CAACvD,IAAI,EAAEU,KAAK,CAAC;EACvC;EACAwJ,OAAOA,CAACxJ,KAAU;IAChB,OAAO,IAAI,CAACoD,IAAI,CAACf,QAAQ,CAACrC,KAAK,CAAC;EAClC;EACAuJ,WAAWA,CAAA;IACT,OAAO,IAAI,CAACnG,IAAI,CAACoB,UAAU,EAAE;EAC/B;;AAGF;AACA;AACA;AAEA;AACA,OAAO,MAAMgD,UAAU,GAAG;EACxBuC,QAAQ,EAAE,CAAC;EACXtC,OAAO,EAAE,CAAC;EACVe,MAAM,EAAE;CACA;AAKV;AACA,OAAO,MAAMlB,UAAU,GAAG;EACxBC,KAAK,EAAEC,UAAU,CAACuC,QAAsB;EACxCC,KAAK,EAAE,CAAC;EACR7D,KAAK,EAAE,EAA0B;EACjCuB,MAAM,eAAE,IAAIvC,GAAG;CAChB;AAED;AACA,OAAM,SAAU8E,KAAKA,CAAC9G,CAAa;EACjCmE,UAAU,CAACC,KAAK,GAAGC,UAAU,CAACC,OAAO;EACrCH,UAAU,CAAC0C,KAAK,EAAE;EAClB,IAAI;IACF7G,CAAC,EAAE;IACH,IAAImE,UAAU,CAAC0C,KAAK,KAAK,CAAC,EAAE;MAC1B,KAAK,IAAI/C,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGK,UAAU,CAACnB,KAAK,CAACW,MAAM,EAAEG,CAAC,EAAE,EAAE;QAChDiD,gBAAgB,CAAC5C,UAAU,CAACnB,KAAK,CAACc,CAAC,CAAC,CAAC;MACvC;MACAK,UAAU,CAACC,KAAK,GAAGC,UAAU,CAACgB,MAAM;MACpC,KAAK,MAAMpF,IAAI,IAAIkE,UAAU,CAACI,MAAM,EAAE;QACpCtE,IAAI,CAACsE,MAAM,EAAE;MACf;MACAJ,UAAU,CAACI,MAAM,CAAC9B,KAAK,EAAE;IAC3B;EACF,CAAC,SAAS;IACR0B,UAAU,CAAC0C,KAAK,EAAE;IAClB,IAAI1C,UAAU,CAAC0C,KAAK,KAAK,CAAC,EAAE;MAC1B1C,UAAU,CAACC,KAAK,GAAGC,UAAU,CAACuC,QAAQ;MACtCzC,UAAU,CAACnB,KAAK,GAAG,EAAE;IACvB;EACF;AACF;AAEA,SAAS+D,gBAAgBA,CAAC9G,IAAmB;EAC3C,IAAIA,IAAI,CAACmD,KAAK,KAAKN,SAAS,CAACG,KAAK,EAAE;IAClC;EACF;EAEA,KAAK,IAAIa,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAG7D,IAAI,CAACqD,OAAO,CAACK,MAAM,EAAEG,CAAC,EAAE,EAAE;IAC5C,MAAMc,MAAM,GAAG3E,IAAI,CAACqD,OAAO,CAACQ,CAAC,CAAC;IAC9B,IAAIc,MAAM,CAACxB,KAAK,KAAKN,SAAS,CAACG,KAAK,EAAE;MACpC8D,gBAAgB,CAACnC,MAAM,CAAC;IAC1B;EACF;EAEA;EACA,IAAI3E,IAAI,CAACmD,KAAK,KAAKN,SAAS,CAACG,KAAK,EAAE;IAClChD,IAAI,CAACpD,KAAK,EAAE;EACd;AACF","ignoreList":[]}
1
+ {"version":3,"file":"AtomRegistry.js","names":["Effect","Exit","Fiber","constVoid","dual","Layer","Option","hasProperty","Queue","MixedScheduler","Scope","ServiceMap","Stream","Result","TypeId","isAtomRegistry","u","make","options","RegistryImpl","initialValues","scheduleTask","timeoutResolution","defaultIdleTTL","AtomRegistry","Service","layerOptions","effect","gen","scope","registry","addFinalizer","sync","dispose","layer","toStream","self","atom","callback","queue","suspend","fiber","getCurrent","getUnsafe","services","cancel","subscribe","value","offerUnsafe","immediate","toStreamResult","pipe","filter","isNotInitial","mapEffect","result","_tag","succeed","failCause","cause","changes","getResult","args","suspendOnWaiting","resume","get","waiting","toExit","mount","acquireRelease","release","constImmediate","notifyListener","listener","SerializableTypeId","atomKey","key","scheduler","schedulerAsync","dispatcher","onNodeAdded","onNodeRemoved","constructor","makeDispatcher","undefined","Math","round","target","initialValueTarget","ensureNode","setInitialValue","nodes","Map","preloadedSerializable","timeoutBuckets","nodeTimeoutBucket","disposed","getNodes","set","write","writeContext","setSerializable","encoded","modify","f","node","update","refresh","invalidateAtom","remove","_value","canBeRemoved","scheduleNodeRemoval","atomHasTtl","keepAlive","idleTTL","createNode","removeNodeTimeout","has","delete","decoded","decode","setValue","Error","scheduleAtomRemoval","NodeImpl","invalidate","removeNode","setNodeTimeout","currentSweepTTL","ttl","ceil","timestamp","Date","now","bucket","entry","Set","setTimeout","sweepBucket","add","handle","size","clearTimeout","forEach","reset","clear","NodeFlags","alive","initialized","waitingForValue","NodeState","uninitialized","stale","valid","removed","WriteContextImpl","state","lifetime","preserveInitialValueOnBuild","parents","previousParents","children","listeners","skipInvalidation","currentState","length","makeLifetime","read","i","removeChild","valueOption","none","some","batchState","phase","BatchPhase","collect","notify","Object","is","invalidateChildren","addParent","parent","push","index","indexOf","pop","child","disposeLifetime","lazy","childrenAreActive","commit","current","stack","stackIndex","len","LifetimeProto","finalizers","isFn","resultOnce","never","once","setResult","someOnce","isSome","isNone","refreshSelf","setSelf","a","stream","empty","withoutInitialValue","streamResult","setPrototypeOf","disabled","depth","batch","batchRebuildNode"],"sources":["../../../src/unstable/reactivity/AtomRegistry.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -11,30 +11,30 @@ import type { NoInfer } from "../../Types.ts";
11
11
  import * as Headers from "../http/Headers.ts";
12
12
  import type * as Rpc from "../rpc/Rpc.ts";
13
13
  import * as RpcClient from "../rpc/RpcClient.ts";
14
- import type { RpcClientError } from "../rpc/RpcClientError.ts";
14
+ import { RpcClientError } from "../rpc/RpcClientError.ts";
15
15
  import type * as RpcGroup from "../rpc/RpcGroup.ts";
16
16
  import type { RequestId } from "../rpc/RpcMessage.ts";
17
17
  import * as RpcSchema from "../rpc/RpcSchema.ts";
18
- import type * as AsyncResult from "./AsyncResult.ts";
18
+ import * as AsyncResult from "./AsyncResult.ts";
19
19
  import * as Atom from "./Atom.ts";
20
20
  /**
21
21
  * @since 4.0.0
22
22
  * @category Models
23
23
  */
24
- export interface AtomRpcClient<Self, Id extends string, Rpcs extends Rpc.Any, E> extends ServiceMap.Service<Self, RpcClient.RpcClient.Flat<Rpcs, RpcClientError>> {
24
+ export interface AtomRpcClient<Self, Id extends string, Rpcs extends Rpc.Any> extends ServiceMap.Service<Self, RpcClient.RpcClient.Flat<Rpcs, RpcClientError>> {
25
25
  new (_: never): ServiceMap.ServiceClass.Shape<Id, RpcClient.RpcClient.Flat<Rpcs, RpcClientError>>;
26
- readonly layer: Layer.Layer<Self, E>;
27
- readonly runtime: Atom.AtomRuntime<Self, E>;
26
+ readonly layer: Layer.Layer<Self>;
27
+ readonly runtime: Atom.AtomRuntime<Self>;
28
28
  readonly mutation: <Tag extends Rpc.Tag<Rpcs>>(arg: Tag) => Rpc.ExtractTag<Rpcs, Tag> extends Rpc.Rpc<infer _Tag, infer _Payload, infer _Success, infer _Error, infer _Middleware, infer _Requires> ? [_Success] extends [RpcSchema.Stream<infer _A, infer _E>] ? never : Atom.AtomResultFn<{
29
29
  readonly payload: Rpc.PayloadConstructor<Rpc.ExtractTag<Rpcs, Tag>>;
30
30
  readonly reactivityKeys?: ReadonlyArray<unknown> | ReadonlyRecord<string, ReadonlyArray<unknown>> | undefined;
31
31
  readonly headers?: Headers.Input | undefined;
32
- }, _Success["Type"], _Error["Type"] | E | _Middleware["error"]["Type"]> : never;
32
+ }, _Success["Type"], _Error["Type"] | RpcClientError | _Middleware["error"]["Type"]> : never;
33
33
  readonly query: <Tag extends Rpc.Tag<Rpcs>>(tag: Tag, payload: Rpc.PayloadConstructor<Rpc.ExtractTag<Rpcs, Tag>>, options?: {
34
34
  readonly headers?: Headers.Input | undefined;
35
35
  readonly reactivityKeys?: ReadonlyArray<unknown> | ReadonlyRecord<string, ReadonlyArray<unknown>> | undefined;
36
- readonly timeToLive?: Duration.DurationInput | undefined;
37
- }) => Rpc.ExtractTag<Rpcs, Tag> extends Rpc.Rpc<infer _Tag, infer _Payload, infer _Success, infer _Error, infer _Middleware> ? [_Success] extends [RpcSchema.Stream<infer _A, infer _E>] ? Atom.Writable<Atom.PullResult<_A["Type"], _E["Type"] | _Error["Type"] | E | _Middleware["error"]["Type"]>, void> : Atom.Atom<AsyncResult.AsyncResult<_Success["Type"], _Error["Type"] | E | _Middleware["error"]["Type"]>> : never;
36
+ readonly timeToLive?: Duration.Input | undefined;
37
+ }) => Rpc.ExtractTag<Rpcs, Tag> extends Rpc.Rpc<infer _Tag, infer _Payload, infer _Success, infer _Error, infer _Middleware> ? [_Success] extends [RpcSchema.Stream<infer _A, infer _E>] ? Atom.Writable<Atom.PullResult<_A["Type"], _E["Type"] | _Error["Type"] | RpcClientError | _Middleware["error"]["Type"]>, void> : Atom.Atom<AsyncResult.AsyncResult<_Success["Type"], _Error["Type"] | RpcClientError | _Middleware["error"]["Type"]>> : never;
38
38
  }
39
39
  declare global {
40
40
  interface ErrorConstructor {
@@ -54,5 +54,5 @@ export declare const Service: <Self>() => <const Id extends string, Rpcs extends
54
54
  readonly disableTracing?: boolean | undefined;
55
55
  readonly makeEffect?: Effect.Effect<RpcClient.RpcClient.Flat<Rpcs, RpcClientError>, never, RM> | undefined;
56
56
  readonly runtime?: Atom.RuntimeFactory | undefined;
57
- }) => AtomRpcClient<Self, Id, Rpcs, ER>;
57
+ }) => AtomRpcClient<Self, Id, Rpcs>;
58
58
  //# sourceMappingURL=AtomRpc.d.ts.map