effect 4.0.1 → 4.0.3

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 (1085) hide show
  1. package/ai-docs/package.json +2 -2
  2. package/ai-docs/tsconfig.json +2 -1
  3. package/dist/Array.d.ts +339 -0
  4. package/dist/Array.d.ts.map +1 -1
  5. package/dist/Array.js +143 -3
  6. package/dist/Array.js.map +1 -1
  7. package/dist/BigDecimal.d.ts +88 -0
  8. package/dist/BigDecimal.d.ts.map +1 -1
  9. package/dist/BigDecimal.js +44 -0
  10. package/dist/BigDecimal.js.map +1 -1
  11. package/dist/BigInt.d.ts +68 -0
  12. package/dist/BigInt.d.ts.map +1 -1
  13. package/dist/BigInt.js +36 -0
  14. package/dist/BigInt.js.map +1 -1
  15. package/dist/Boolean.d.ts +34 -0
  16. package/dist/Boolean.d.ts.map +1 -1
  17. package/dist/Boolean.js +18 -0
  18. package/dist/Boolean.js.map +1 -1
  19. package/dist/Brand.d.ts +9 -0
  20. package/dist/Brand.d.ts.map +1 -1
  21. package/dist/Brand.js +6 -0
  22. package/dist/Brand.js.map +1 -1
  23. package/dist/ByteSize.d.ts +86 -0
  24. package/dist/ByteSize.d.ts.map +1 -1
  25. package/dist/ByteSize.js +51 -0
  26. package/dist/ByteSize.js.map +1 -1
  27. package/dist/Cache.d.ts +38 -1
  28. package/dist/Cache.d.ts.map +1 -1
  29. package/dist/Cache.js +27 -7
  30. package/dist/Cache.js.map +1 -1
  31. package/dist/Cause.d.ts +82 -0
  32. package/dist/Cause.d.ts.map +1 -1
  33. package/dist/Cause.js +60 -0
  34. package/dist/Cause.js.map +1 -1
  35. package/dist/Channel.d.ts +327 -4
  36. package/dist/Channel.d.ts.map +1 -1
  37. package/dist/Channel.js +168 -8
  38. package/dist/Channel.js.map +1 -1
  39. package/dist/ChannelSchema.d.ts +11 -0
  40. package/dist/ChannelSchema.d.ts.map +1 -1
  41. package/dist/ChannelSchema.js +6 -0
  42. package/dist/ChannelSchema.js.map +1 -1
  43. package/dist/Chunk.d.ts +192 -0
  44. package/dist/Chunk.d.ts.map +1 -1
  45. package/dist/Chunk.js +78 -0
  46. package/dist/Chunk.js.map +1 -1
  47. package/dist/Clock.d.ts +7 -0
  48. package/dist/Clock.d.ts.map +1 -1
  49. package/dist/Clock.js +5 -0
  50. package/dist/Clock.js.map +1 -1
  51. package/dist/Combiner.d.ts +10 -0
  52. package/dist/Combiner.d.ts.map +1 -1
  53. package/dist/Combiner.js +8 -0
  54. package/dist/Combiner.js.map +1 -1
  55. package/dist/Config.d.ts +52 -12
  56. package/dist/Config.d.ts.map +1 -1
  57. package/dist/Config.js +55 -5
  58. package/dist/Config.js.map +1 -1
  59. package/dist/ConfigProvider.d.ts +28 -0
  60. package/dist/ConfigProvider.d.ts.map +1 -1
  61. package/dist/ConfigProvider.js +19 -0
  62. package/dist/ConfigProvider.js.map +1 -1
  63. package/dist/Console.d.ts +22 -0
  64. package/dist/Console.d.ts.map +1 -1
  65. package/dist/Console.js +20 -0
  66. package/dist/Console.js.map +1 -1
  67. package/dist/Context.d.ts +50 -0
  68. package/dist/Context.d.ts.map +1 -1
  69. package/dist/Context.js +24 -3
  70. package/dist/Context.js.map +1 -1
  71. package/dist/Cron.d.ts +16 -0
  72. package/dist/Cron.d.ts.map +1 -1
  73. package/dist/Cron.js +26 -1
  74. package/dist/Cron.js.map +1 -1
  75. package/dist/Crypto.d.ts +38 -5
  76. package/dist/Crypto.d.ts.map +1 -1
  77. package/dist/Crypto.js +11 -2
  78. package/dist/Crypto.js.map +1 -1
  79. package/dist/Data.d.ts +13 -0
  80. package/dist/Data.d.ts.map +1 -1
  81. package/dist/Data.js +5 -0
  82. package/dist/Data.js.map +1 -1
  83. package/dist/DateTime.d.ts +180 -6
  84. package/dist/DateTime.d.ts.map +1 -1
  85. package/dist/DateTime.js +98 -6
  86. package/dist/DateTime.js.map +1 -1
  87. package/dist/Deferred.d.ts +51 -0
  88. package/dist/Deferred.d.ts.map +1 -1
  89. package/dist/Deferred.js +22 -0
  90. package/dist/Deferred.js.map +1 -1
  91. package/dist/Differ.d.ts +2 -0
  92. package/dist/Differ.d.ts.map +1 -1
  93. package/dist/Differ.js +1 -0
  94. package/dist/Duration.d.ts +96 -6
  95. package/dist/Duration.d.ts.map +1 -1
  96. package/dist/Duration.js +80 -8
  97. package/dist/Duration.js.map +1 -1
  98. package/dist/Effect.d.ts +527 -0
  99. package/dist/Effect.d.ts.map +1 -1
  100. package/dist/Effect.js +240 -5
  101. package/dist/Effect.js.map +1 -1
  102. package/dist/Effectable.d.ts +4 -0
  103. package/dist/Effectable.d.ts.map +1 -1
  104. package/dist/Effectable.js +3 -0
  105. package/dist/Effectable.js.map +1 -1
  106. package/dist/Equal.d.ts +8 -0
  107. package/dist/Equal.d.ts.map +1 -1
  108. package/dist/Equal.js +9 -1
  109. package/dist/Equal.js.map +1 -1
  110. package/dist/Equivalence.d.ts +21 -0
  111. package/dist/Equivalence.d.ts.map +1 -1
  112. package/dist/Equivalence.js +16 -0
  113. package/dist/Equivalence.js.map +1 -1
  114. package/dist/ErrorReporter.d.ts +36 -0
  115. package/dist/ErrorReporter.d.ts.map +1 -1
  116. package/dist/ErrorReporter.js +11 -0
  117. package/dist/ErrorReporter.js.map +1 -1
  118. package/dist/ExecutionPlan.d.ts +49 -8
  119. package/dist/ExecutionPlan.d.ts.map +1 -1
  120. package/dist/ExecutionPlan.js +7 -0
  121. package/dist/ExecutionPlan.js.map +1 -1
  122. package/dist/Exit.d.ts +40 -0
  123. package/dist/Exit.d.ts.map +1 -1
  124. package/dist/Exit.js +27 -0
  125. package/dist/Exit.js.map +1 -1
  126. package/dist/Fiber.d.ts +20 -0
  127. package/dist/Fiber.d.ts.map +1 -1
  128. package/dist/Fiber.js +11 -0
  129. package/dist/Fiber.js.map +1 -1
  130. package/dist/FiberHandle.d.ts +21 -0
  131. package/dist/FiberHandle.d.ts.map +1 -1
  132. package/dist/FiberHandle.js +21 -4
  133. package/dist/FiberHandle.js.map +1 -1
  134. package/dist/FiberMap.d.ts +35 -0
  135. package/dist/FiberMap.d.ts.map +1 -1
  136. package/dist/FiberMap.js +19 -0
  137. package/dist/FiberMap.js.map +1 -1
  138. package/dist/FiberSet.d.ts +20 -0
  139. package/dist/FiberSet.d.ts.map +1 -1
  140. package/dist/FiberSet.js +14 -0
  141. package/dist/FiberSet.js.map +1 -1
  142. package/dist/FileSystem.d.ts +59 -2
  143. package/dist/FileSystem.d.ts.map +1 -1
  144. package/dist/FileSystem.js +8 -0
  145. package/dist/FileSystem.js.map +1 -1
  146. package/dist/Filter.d.ts +55 -0
  147. package/dist/Filter.d.ts.map +1 -1
  148. package/dist/Filter.js +28 -0
  149. package/dist/Filter.js.map +1 -1
  150. package/dist/Formatter.d.ts +3 -0
  151. package/dist/Formatter.d.ts.map +1 -1
  152. package/dist/Formatter.js +39 -1
  153. package/dist/Formatter.js.map +1 -1
  154. package/dist/Function.d.ts +30 -0
  155. package/dist/Function.d.ts.map +1 -1
  156. package/dist/Function.js +20 -0
  157. package/dist/Function.js.map +1 -1
  158. package/dist/Graph.d.ts +247 -12
  159. package/dist/Graph.d.ts.map +1 -1
  160. package/dist/Graph.js +149 -28
  161. package/dist/Graph.js.map +1 -1
  162. package/dist/HKT.d.ts +5 -0
  163. package/dist/HKT.d.ts.map +1 -1
  164. package/dist/Hash.d.ts +14 -0
  165. package/dist/Hash.d.ts.map +1 -1
  166. package/dist/Hash.js +12 -0
  167. package/dist/Hash.js.map +1 -1
  168. package/dist/HashMap.d.ts +91 -0
  169. package/dist/HashMap.d.ts.map +1 -1
  170. package/dist/HashMap.js +39 -0
  171. package/dist/HashMap.js.map +1 -1
  172. package/dist/HashRing.d.ts +17 -0
  173. package/dist/HashRing.d.ts.map +1 -1
  174. package/dist/HashRing.js +9 -0
  175. package/dist/HashRing.js.map +1 -1
  176. package/dist/HashSet.d.ts +49 -0
  177. package/dist/HashSet.d.ts.map +1 -1
  178. package/dist/HashSet.js +19 -0
  179. package/dist/HashSet.js.map +1 -1
  180. package/dist/Inspectable.d.ts +7 -0
  181. package/dist/Inspectable.d.ts.map +1 -1
  182. package/dist/Inspectable.js +6 -0
  183. package/dist/Inspectable.js.map +1 -1
  184. package/dist/Iterable.d.ts +127 -0
  185. package/dist/Iterable.d.ts.map +1 -1
  186. package/dist/Iterable.js +51 -0
  187. package/dist/Iterable.js.map +1 -1
  188. package/dist/JsonPatch.d.ts +4 -0
  189. package/dist/JsonPatch.d.ts.map +1 -1
  190. package/dist/JsonPatch.js +3 -0
  191. package/dist/JsonPatch.js.map +1 -1
  192. package/dist/JsonPointer.d.ts +5 -0
  193. package/dist/JsonPointer.d.ts.map +1 -1
  194. package/dist/JsonPointer.js +5 -0
  195. package/dist/JsonPointer.js.map +1 -1
  196. package/dist/JsonSchema.d.ts +16 -0
  197. package/dist/JsonSchema.d.ts.map +1 -1
  198. package/dist/JsonSchema.js +11 -0
  199. package/dist/JsonSchema.js.map +1 -1
  200. package/dist/Latch.d.ts +14 -0
  201. package/dist/Latch.d.ts.map +1 -1
  202. package/dist/Latch.js +10 -0
  203. package/dist/Latch.js.map +1 -1
  204. package/dist/Layer.d.ts +100 -0
  205. package/dist/Layer.d.ts.map +1 -1
  206. package/dist/Layer.js +45 -1
  207. package/dist/Layer.js.map +1 -1
  208. package/dist/LayerMap.d.ts +7 -0
  209. package/dist/LayerMap.d.ts.map +1 -1
  210. package/dist/LayerMap.js +4 -0
  211. package/dist/LayerMap.js.map +1 -1
  212. package/dist/LayerRef.d.ts +5 -0
  213. package/dist/LayerRef.d.ts.map +1 -1
  214. package/dist/LayerRef.js +3 -0
  215. package/dist/LayerRef.js.map +1 -1
  216. package/dist/LogLevel.d.ts +20 -0
  217. package/dist/LogLevel.d.ts.map +1 -1
  218. package/dist/LogLevel.js +9 -0
  219. package/dist/LogLevel.js.map +1 -1
  220. package/dist/Logger.d.ts +25 -0
  221. package/dist/Logger.d.ts.map +1 -1
  222. package/dist/Logger.js +30 -4
  223. package/dist/Logger.js.map +1 -1
  224. package/dist/ManagedRuntime.d.ts +5 -0
  225. package/dist/ManagedRuntime.d.ts.map +1 -1
  226. package/dist/ManagedRuntime.js +9 -1
  227. package/dist/ManagedRuntime.js.map +1 -1
  228. package/dist/Match.d.ts +51 -0
  229. package/dist/Match.d.ts.map +1 -1
  230. package/dist/Match.js +39 -0
  231. package/dist/Match.js.map +1 -1
  232. package/dist/Metric.d.ts +59 -0
  233. package/dist/Metric.d.ts.map +1 -1
  234. package/dist/Metric.js +31 -0
  235. package/dist/Metric.js.map +1 -1
  236. package/dist/MutableHashMap.d.ts +32 -0
  237. package/dist/MutableHashMap.d.ts.map +1 -1
  238. package/dist/MutableHashMap.js +16 -0
  239. package/dist/MutableHashMap.js.map +1 -1
  240. package/dist/MutableHashSet.d.ts +16 -0
  241. package/dist/MutableHashSet.d.ts.map +1 -1
  242. package/dist/MutableHashSet.js +10 -0
  243. package/dist/MutableHashSet.js.map +1 -1
  244. package/dist/MutableList.d.ts +20 -0
  245. package/dist/MutableList.d.ts.map +1 -1
  246. package/dist/MutableList.js +18 -0
  247. package/dist/MutableList.js.map +1 -1
  248. package/dist/MutableRef.d.ts +31 -0
  249. package/dist/MutableRef.d.ts.map +1 -1
  250. package/dist/MutableRef.js +17 -0
  251. package/dist/MutableRef.js.map +1 -1
  252. package/dist/Newtype.d.ts +9 -0
  253. package/dist/Newtype.d.ts.map +1 -1
  254. package/dist/Newtype.js +6 -0
  255. package/dist/Newtype.js.map +1 -1
  256. package/dist/NonEmptyIterable.d.ts +4 -0
  257. package/dist/NonEmptyIterable.d.ts.map +1 -1
  258. package/dist/NonEmptyIterable.js +2 -0
  259. package/dist/NonEmptyIterable.js.map +1 -1
  260. package/dist/Number.d.ts +61 -0
  261. package/dist/Number.d.ts.map +1 -1
  262. package/dist/Number.js +31 -0
  263. package/dist/Number.js.map +1 -1
  264. package/dist/Optic.d.ts +41 -0
  265. package/dist/Optic.d.ts.map +1 -1
  266. package/dist/Optic.js +20 -0
  267. package/dist/Optic.js.map +1 -1
  268. package/dist/Option.d.ts +134 -0
  269. package/dist/Option.d.ts.map +1 -1
  270. package/dist/Option.js +61 -0
  271. package/dist/Option.js.map +1 -1
  272. package/dist/Order.d.ts +29 -0
  273. package/dist/Order.d.ts.map +1 -1
  274. package/dist/Order.js +24 -0
  275. package/dist/Order.js.map +1 -1
  276. package/dist/Ordering.d.ts +7 -0
  277. package/dist/Ordering.d.ts.map +1 -1
  278. package/dist/Ordering.js +3 -0
  279. package/dist/Ordering.js.map +1 -1
  280. package/dist/PartitionedSemaphore.d.ts +24 -0
  281. package/dist/PartitionedSemaphore.d.ts.map +1 -1
  282. package/dist/PartitionedSemaphore.js +47 -21
  283. package/dist/PartitionedSemaphore.js.map +1 -1
  284. package/dist/Path.d.ts +6 -0
  285. package/dist/Path.d.ts.map +1 -1
  286. package/dist/Path.js +4 -0
  287. package/dist/Path.js.map +1 -1
  288. package/dist/Pipeable.d.ts +7 -0
  289. package/dist/Pipeable.d.ts.map +1 -1
  290. package/dist/Pipeable.js +5 -0
  291. package/dist/Pipeable.js.map +1 -1
  292. package/dist/PlatformError.d.ts +8 -0
  293. package/dist/PlatformError.d.ts.map +1 -1
  294. package/dist/PlatformError.js +7 -0
  295. package/dist/PlatformError.js.map +1 -1
  296. package/dist/Pool.d.ts +19 -0
  297. package/dist/Pool.d.ts.map +1 -1
  298. package/dist/Pool.js +8 -1
  299. package/dist/Pool.js.map +1 -1
  300. package/dist/Predicate.d.ts +84 -0
  301. package/dist/Predicate.d.ts.map +1 -1
  302. package/dist/Predicate.js +48 -0
  303. package/dist/Predicate.js.map +1 -1
  304. package/dist/PrimaryKey.d.ts +5 -0
  305. package/dist/PrimaryKey.d.ts.map +1 -1
  306. package/dist/PrimaryKey.js +4 -0
  307. package/dist/PrimaryKey.js.map +1 -1
  308. package/dist/PubSub.d.ts +67 -5
  309. package/dist/PubSub.d.ts.map +1 -1
  310. package/dist/PubSub.js +60 -8
  311. package/dist/PubSub.js.map +1 -1
  312. package/dist/Pull.d.ts +20 -0
  313. package/dist/Pull.d.ts.map +1 -1
  314. package/dist/Pull.js +10 -0
  315. package/dist/Pull.js.map +1 -1
  316. package/dist/Queue.d.ts +60 -0
  317. package/dist/Queue.d.ts.map +1 -1
  318. package/dist/Queue.js +58 -8
  319. package/dist/Queue.js.map +1 -1
  320. package/dist/Random.d.ts +13 -0
  321. package/dist/Random.d.ts.map +1 -1
  322. package/dist/Random.js +9 -0
  323. package/dist/Random.js.map +1 -1
  324. package/dist/RcMap.d.ts +23 -0
  325. package/dist/RcMap.d.ts.map +1 -1
  326. package/dist/RcMap.js +8 -0
  327. package/dist/RcMap.js.map +1 -1
  328. package/dist/RcRef.d.ts +6 -0
  329. package/dist/RcRef.d.ts.map +1 -1
  330. package/dist/RcRef.js +3 -0
  331. package/dist/RcRef.js.map +1 -1
  332. package/dist/Record.d.ts +100 -0
  333. package/dist/Record.d.ts.map +1 -1
  334. package/dist/Record.js +43 -0
  335. package/dist/Record.js.map +1 -1
  336. package/dist/Redactable.d.ts +6 -0
  337. package/dist/Redactable.d.ts.map +1 -1
  338. package/dist/Redactable.js +4 -0
  339. package/dist/Redactable.js.map +1 -1
  340. package/dist/Redacted.d.ts +8 -0
  341. package/dist/Redacted.d.ts.map +1 -1
  342. package/dist/Redacted.js +6 -0
  343. package/dist/Redacted.js.map +1 -1
  344. package/dist/Reducer.d.ts +4 -0
  345. package/dist/Reducer.d.ts.map +1 -1
  346. package/dist/Reducer.js +3 -0
  347. package/dist/Reducer.js.map +1 -1
  348. package/dist/Ref.d.ts +20 -0
  349. package/dist/Ref.d.ts.map +1 -1
  350. package/dist/Ref.js +16 -0
  351. package/dist/Ref.js.map +1 -1
  352. package/dist/References.d.ts +21 -0
  353. package/dist/References.d.ts.map +1 -1
  354. package/dist/References.js +19 -0
  355. package/dist/References.js.map +1 -1
  356. package/dist/RegExp.d.ts +3 -0
  357. package/dist/RegExp.d.ts.map +1 -1
  358. package/dist/RegExp.js +4 -0
  359. package/dist/RegExp.js.map +1 -1
  360. package/dist/Request.d.ts +32 -0
  361. package/dist/Request.d.ts.map +1 -1
  362. package/dist/Request.js +12 -0
  363. package/dist/Request.js.map +1 -1
  364. package/dist/RequestResolver.d.ts +42 -0
  365. package/dist/RequestResolver.d.ts.map +1 -1
  366. package/dist/RequestResolver.js +27 -6
  367. package/dist/RequestResolver.js.map +1 -1
  368. package/dist/Resource.d.ts +6 -0
  369. package/dist/Resource.d.ts.map +1 -1
  370. package/dist/Resource.js +6 -0
  371. package/dist/Resource.js.map +1 -1
  372. package/dist/Result.d.ts +91 -0
  373. package/dist/Result.d.ts.map +1 -1
  374. package/dist/Result.js +41 -0
  375. package/dist/Result.js.map +1 -1
  376. package/dist/Runtime.d.ts +9 -0
  377. package/dist/Runtime.d.ts.map +1 -1
  378. package/dist/Runtime.js +7 -0
  379. package/dist/Runtime.js.map +1 -1
  380. package/dist/Schedule.d.ts +57 -0
  381. package/dist/Schedule.d.ts.map +1 -1
  382. package/dist/Schedule.js +32 -0
  383. package/dist/Schedule.js.map +1 -1
  384. package/dist/Scheduler.d.ts +7 -0
  385. package/dist/Scheduler.d.ts.map +1 -1
  386. package/dist/Scheduler.js +5 -0
  387. package/dist/Scheduler.js.map +1 -1
  388. package/dist/Schema.d.ts +969 -2
  389. package/dist/Schema.d.ts.map +1 -1
  390. package/dist/Schema.js +635 -5
  391. package/dist/Schema.js.map +1 -1
  392. package/dist/SchemaAST.d.ts +107 -0
  393. package/dist/SchemaAST.d.ts.map +1 -1
  394. package/dist/SchemaAST.js +81 -1
  395. package/dist/SchemaAST.js.map +1 -1
  396. package/dist/SchemaGetter.d.ts +69 -2
  397. package/dist/SchemaGetter.d.ts.map +1 -1
  398. package/dist/SchemaGetter.js +63 -4
  399. package/dist/SchemaGetter.js.map +1 -1
  400. package/dist/SchemaIssue.d.ts +33 -0
  401. package/dist/SchemaIssue.d.ts.map +1 -1
  402. package/dist/SchemaIssue.js +18 -0
  403. package/dist/SchemaIssue.js.map +1 -1
  404. package/dist/SchemaParser.d.ts +25 -0
  405. package/dist/SchemaParser.d.ts.map +1 -1
  406. package/dist/SchemaParser.js +26 -0
  407. package/dist/SchemaParser.js.map +1 -1
  408. package/dist/SchemaRepresentation.d.ts +147 -0
  409. package/dist/SchemaRepresentation.d.ts.map +1 -1
  410. package/dist/SchemaRepresentation.js +99 -0
  411. package/dist/SchemaRepresentation.js.map +1 -1
  412. package/dist/SchemaTransformation.d.ts +53 -0
  413. package/dist/SchemaTransformation.d.ts.map +1 -1
  414. package/dist/SchemaTransformation.js +46 -0
  415. package/dist/SchemaTransformation.js.map +1 -1
  416. package/dist/Scope.d.ts +19 -0
  417. package/dist/Scope.d.ts.map +1 -1
  418. package/dist/Scope.js +12 -0
  419. package/dist/Scope.js.map +1 -1
  420. package/dist/ScopedCache.d.ts +34 -0
  421. package/dist/ScopedCache.d.ts.map +1 -1
  422. package/dist/ScopedCache.js +26 -3
  423. package/dist/ScopedCache.js.map +1 -1
  424. package/dist/ScopedRef.d.ts +9 -0
  425. package/dist/ScopedRef.d.ts.map +1 -1
  426. package/dist/ScopedRef.js +6 -0
  427. package/dist/ScopedRef.js.map +1 -1
  428. package/dist/Semaphore.d.ts +26 -0
  429. package/dist/Semaphore.d.ts.map +1 -1
  430. package/dist/Semaphore.js +10 -0
  431. package/dist/Semaphore.js.map +1 -1
  432. package/dist/Sink.d.ts +125 -1
  433. package/dist/Sink.d.ts.map +1 -1
  434. package/dist/Sink.js +75 -1
  435. package/dist/Sink.js.map +1 -1
  436. package/dist/StandardSchema.d.ts +1 -0
  437. package/dist/StandardSchema.d.ts.map +1 -1
  438. package/dist/StandardSchema.js +1 -0
  439. package/dist/Stdio.d.ts +14 -1
  440. package/dist/Stdio.d.ts.map +1 -1
  441. package/dist/Stdio.js +6 -0
  442. package/dist/Stdio.js.map +1 -1
  443. package/dist/Stream.d.ts +569 -11
  444. package/dist/Stream.d.ts.map +1 -1
  445. package/dist/Stream.js +266 -18
  446. package/dist/Stream.js.map +1 -1
  447. package/dist/String.d.ts +87 -0
  448. package/dist/String.d.ts.map +1 -1
  449. package/dist/String.js +61 -0
  450. package/dist/String.js.map +1 -1
  451. package/dist/Struct.d.ts +46 -0
  452. package/dist/Struct.d.ts.map +1 -1
  453. package/dist/Struct.js +19 -0
  454. package/dist/Struct.js.map +1 -1
  455. package/dist/SubscriptionRef.d.ts +65 -0
  456. package/dist/SubscriptionRef.d.ts.map +1 -1
  457. package/dist/SubscriptionRef.js +25 -0
  458. package/dist/SubscriptionRef.js.map +1 -1
  459. package/dist/Symbol.d.ts +2 -0
  460. package/dist/Symbol.d.ts.map +1 -1
  461. package/dist/Symbol.js +2 -0
  462. package/dist/Symbol.js.map +1 -1
  463. package/dist/SynchronizedRef.d.ts +63 -0
  464. package/dist/SynchronizedRef.d.ts.map +1 -1
  465. package/dist/SynchronizedRef.js +24 -0
  466. package/dist/SynchronizedRef.js.map +1 -1
  467. package/dist/Take.d.ts +3 -0
  468. package/dist/Take.d.ts.map +1 -1
  469. package/dist/Take.js +1 -0
  470. package/dist/Take.js.map +1 -1
  471. package/dist/Terminal.d.ts +8 -0
  472. package/dist/Terminal.d.ts.map +1 -1
  473. package/dist/Terminal.js +4 -0
  474. package/dist/Terminal.js.map +1 -1
  475. package/dist/Tracer.d.ts +23 -0
  476. package/dist/Tracer.d.ts.map +1 -1
  477. package/dist/Tracer.js +12 -0
  478. package/dist/Tracer.js.map +1 -1
  479. package/dist/Trie.d.ts +68 -0
  480. package/dist/Trie.d.ts.map +1 -1
  481. package/dist/Trie.js +28 -0
  482. package/dist/Trie.js.map +1 -1
  483. package/dist/Tuple.d.ts +38 -0
  484. package/dist/Tuple.d.ts.map +1 -1
  485. package/dist/Tuple.js +18 -0
  486. package/dist/Tuple.js.map +1 -1
  487. package/dist/TxChunk.d.ts +52 -0
  488. package/dist/TxChunk.d.ts.map +1 -1
  489. package/dist/TxChunk.js +23 -0
  490. package/dist/TxChunk.js.map +1 -1
  491. package/dist/TxDeferred.d.ts +15 -0
  492. package/dist/TxDeferred.d.ts.map +1 -1
  493. package/dist/TxDeferred.js +8 -0
  494. package/dist/TxDeferred.js.map +1 -1
  495. package/dist/TxHashMap.d.ts +83 -0
  496. package/dist/TxHashMap.d.ts.map +1 -1
  497. package/dist/TxHashMap.js +52 -7
  498. package/dist/TxHashMap.js.map +1 -1
  499. package/dist/TxHashSet.d.ts +51 -0
  500. package/dist/TxHashSet.d.ts.map +1 -1
  501. package/dist/TxHashSet.js +29 -4
  502. package/dist/TxHashSet.js.map +1 -1
  503. package/dist/TxPriorityQueue.d.ts +30 -0
  504. package/dist/TxPriorityQueue.d.ts.map +1 -1
  505. package/dist/TxPriorityQueue.js +22 -1
  506. package/dist/TxPriorityQueue.js.map +1 -1
  507. package/dist/TxPubSub.d.ts +25 -0
  508. package/dist/TxPubSub.d.ts.map +1 -1
  509. package/dist/TxPubSub.js +19 -0
  510. package/dist/TxPubSub.js.map +1 -1
  511. package/dist/TxQueue.d.ts +51 -0
  512. package/dist/TxQueue.d.ts.map +1 -1
  513. package/dist/TxQueue.js +30 -0
  514. package/dist/TxQueue.js.map +1 -1
  515. package/dist/TxReentrantLock.d.ts +24 -0
  516. package/dist/TxReentrantLock.d.ts.map +1 -1
  517. package/dist/TxReentrantLock.js +32 -18
  518. package/dist/TxReentrantLock.js.map +1 -1
  519. package/dist/TxRef.d.ts +14 -0
  520. package/dist/TxRef.d.ts.map +1 -1
  521. package/dist/TxRef.js +7 -0
  522. package/dist/TxRef.js.map +1 -1
  523. package/dist/TxSemaphore.d.ts +25 -0
  524. package/dist/TxSemaphore.d.ts.map +1 -1
  525. package/dist/TxSemaphore.js +29 -13
  526. package/dist/TxSemaphore.js.map +1 -1
  527. package/dist/TxSubscriptionRef.d.ts +25 -0
  528. package/dist/TxSubscriptionRef.d.ts.map +1 -1
  529. package/dist/TxSubscriptionRef.js +12 -0
  530. package/dist/TxSubscriptionRef.js.map +1 -1
  531. package/dist/Types.d.ts +36 -0
  532. package/dist/Types.d.ts.map +1 -1
  533. package/dist/Types.js +1 -0
  534. package/dist/UndefinedOr.d.ts +15 -0
  535. package/dist/UndefinedOr.d.ts.map +1 -1
  536. package/dist/UndefinedOr.js +9 -0
  537. package/dist/UndefinedOr.js.map +1 -1
  538. package/dist/Unify.d.ts +15 -0
  539. package/dist/Unify.d.ts.map +1 -1
  540. package/dist/Unify.js +2 -0
  541. package/dist/Unify.js.map +1 -1
  542. package/dist/Utils.d.ts +4 -0
  543. package/dist/Utils.d.ts.map +1 -1
  544. package/dist/Utils.js +1 -0
  545. package/dist/Utils.js.map +1 -1
  546. package/dist/Version.d.ts +26 -0
  547. package/dist/Version.d.ts.map +1 -0
  548. package/dist/Version.js +36 -0
  549. package/dist/Version.js.map +1 -0
  550. package/dist/ai/Chat.js +1 -1
  551. package/dist/ai/Chat.js.map +1 -1
  552. package/dist/ai/DecisionModel.d.ts +22 -0
  553. package/dist/ai/DecisionModel.d.ts.map +1 -1
  554. package/dist/ai/DecisionModel.js +22 -4
  555. package/dist/ai/DecisionModel.js.map +1 -1
  556. package/dist/ai/LanguageModel.d.ts.map +1 -1
  557. package/dist/ai/LanguageModel.js +14 -13
  558. package/dist/ai/LanguageModel.js.map +1 -1
  559. package/dist/ai/McpServer.d.ts +38 -11
  560. package/dist/ai/McpServer.d.ts.map +1 -1
  561. package/dist/ai/McpServer.js +276 -190
  562. package/dist/ai/McpServer.js.map +1 -1
  563. package/dist/ai/Telemetry.d.ts +49 -41
  564. package/dist/ai/Telemetry.d.ts.map +1 -1
  565. package/dist/ai/Telemetry.js +6 -8
  566. package/dist/ai/Telemetry.js.map +1 -1
  567. package/dist/ai/internal/mcpProtocol/v2026_07_28.js +5 -0
  568. package/dist/ai/internal/mcpProtocol/v2026_07_28.js.map +1 -1
  569. package/dist/ai/internal/mcpProtocol.js.map +1 -1
  570. package/dist/ai/internal/mcpRuntime.js +80 -46
  571. package/dist/ai/internal/mcpRuntime.js.map +1 -1
  572. package/dist/ai/internal/mcpStatefulRuntime.js +1 -0
  573. package/dist/ai/internal/mcpStatefulRuntime.js.map +1 -1
  574. package/dist/cli/CliOutput.d.ts +27 -0
  575. package/dist/cli/CliOutput.d.ts.map +1 -1
  576. package/dist/cli/CliOutput.js +33 -10
  577. package/dist/cli/CliOutput.js.map +1 -1
  578. package/dist/cli/Command.d.ts.map +1 -1
  579. package/dist/cli/Command.js +6 -3
  580. package/dist/cli/Command.js.map +1 -1
  581. package/dist/cli/Completions.d.ts +3 -3
  582. package/dist/cli/Completions.d.ts.map +1 -1
  583. package/dist/cli/Completions.js +8 -5
  584. package/dist/cli/Completions.js.map +1 -1
  585. package/dist/cli/GlobalFlag.d.ts +5 -4
  586. package/dist/cli/GlobalFlag.d.ts.map +1 -1
  587. package/dist/cli/GlobalFlag.js +3 -3
  588. package/dist/cli/GlobalFlag.js.map +1 -1
  589. package/dist/cli/Prompt.d.ts +17 -1
  590. package/dist/cli/Prompt.d.ts.map +1 -1
  591. package/dist/cli/Prompt.js +119 -114
  592. package/dist/cli/Prompt.js.map +1 -1
  593. package/dist/cli/internal/ansi.d.ts +0 -1
  594. package/dist/cli/internal/ansi.d.ts.map +1 -1
  595. package/dist/cli/internal/ansi.js +20 -3
  596. package/dist/cli/internal/ansi.js.map +1 -1
  597. package/dist/cli/internal/completions/powershell.d.ts +2 -0
  598. package/dist/cli/internal/completions/powershell.d.ts.map +1 -0
  599. package/dist/cli/internal/completions/powershell.js +273 -0
  600. package/dist/cli/internal/completions/powershell.js.map +1 -0
  601. package/dist/cli/internal/completions/zsh.js +3 -2
  602. package/dist/cli/internal/completions/zsh.js.map +1 -1
  603. package/dist/cli/internal/wizard.d.ts +3 -3
  604. package/dist/cli/internal/wizard.d.ts.map +1 -1
  605. package/dist/cli/internal/wizard.js +21 -18
  606. package/dist/cli/internal/wizard.js.map +1 -1
  607. package/dist/cluster/ClusterSchema.d.ts +28 -0
  608. package/dist/cluster/ClusterSchema.d.ts.map +1 -1
  609. package/dist/cluster/ClusterSchema.js +30 -0
  610. package/dist/cluster/ClusterSchema.js.map +1 -1
  611. package/dist/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
  612. package/dist/cluster/ClusterWorkflowEngine.js +10 -18
  613. package/dist/cluster/ClusterWorkflowEngine.js.map +1 -1
  614. package/dist/cluster/K8sHttpClient.d.ts.map +1 -1
  615. package/dist/cluster/K8sHttpClient.js +5 -2
  616. package/dist/cluster/K8sHttpClient.js.map +1 -1
  617. package/dist/cluster/MessageStorage.d.ts +18 -3
  618. package/dist/cluster/MessageStorage.d.ts.map +1 -1
  619. package/dist/cluster/MessageStorage.js +31 -11
  620. package/dist/cluster/MessageStorage.js.map +1 -1
  621. package/dist/cluster/Runners.d.ts.map +1 -1
  622. package/dist/cluster/Runners.js +8 -2
  623. package/dist/cluster/Runners.js.map +1 -1
  624. package/dist/cluster/Sharding.d.ts.map +1 -1
  625. package/dist/cluster/Sharding.js +181 -62
  626. package/dist/cluster/Sharding.js.map +1 -1
  627. package/dist/cluster/SqlMessageStorage.d.ts +59 -19
  628. package/dist/cluster/SqlMessageStorage.d.ts.map +1 -1
  629. package/dist/cluster/SqlMessageStorage.js +84 -55
  630. package/dist/cluster/SqlMessageStorage.js.map +1 -1
  631. package/dist/cluster/SqlRunnerStorage.d.ts +68 -19
  632. package/dist/cluster/SqlRunnerStorage.d.ts.map +1 -1
  633. package/dist/cluster/SqlRunnerStorage.js +191 -113
  634. package/dist/cluster/SqlRunnerStorage.js.map +1 -1
  635. package/dist/cluster/internal/entityManager.js +104 -37
  636. package/dist/cluster/internal/entityManager.js.map +1 -1
  637. package/dist/encoding/Base64.d.ts +4 -0
  638. package/dist/encoding/Base64.d.ts.map +1 -1
  639. package/dist/encoding/Base64.js +4 -0
  640. package/dist/encoding/Base64.js.map +1 -1
  641. package/dist/encoding/Base64Url.d.ts +4 -0
  642. package/dist/encoding/Base64Url.d.ts.map +1 -1
  643. package/dist/encoding/Base64Url.js +4 -0
  644. package/dist/encoding/Base64Url.js.map +1 -1
  645. package/dist/encoding/EncodingError.d.ts +4 -0
  646. package/dist/encoding/EncodingError.d.ts.map +1 -1
  647. package/dist/encoding/EncodingError.js +4 -0
  648. package/dist/encoding/EncodingError.js.map +1 -1
  649. package/dist/encoding/Hex.d.ts +5 -0
  650. package/dist/encoding/Hex.d.ts.map +1 -1
  651. package/dist/encoding/Hex.js +5 -0
  652. package/dist/encoding/Hex.js.map +1 -1
  653. package/dist/encoding/Toml.js +2 -2
  654. package/dist/encoding/Toml.js.map +1 -1
  655. package/dist/encoding/Yaml.d.ts.map +1 -1
  656. package/dist/encoding/Yaml.js +6 -4
  657. package/dist/encoding/Yaml.js.map +1 -1
  658. package/dist/encoding/index.d.ts +4 -0
  659. package/dist/encoding/index.d.ts.map +1 -1
  660. package/dist/encoding/index.js +4 -0
  661. package/dist/encoding/index.js.map +1 -1
  662. package/dist/eventlog/SqlEventJournal.js +8 -4
  663. package/dist/eventlog/SqlEventJournal.js.map +1 -1
  664. package/dist/eventlog/SqlEventLogServerUnencrypted.d.ts +27 -10
  665. package/dist/eventlog/SqlEventLogServerUnencrypted.d.ts.map +1 -1
  666. package/dist/eventlog/SqlEventLogServerUnencrypted.js +49 -7
  667. package/dist/eventlog/SqlEventLogServerUnencrypted.js.map +1 -1
  668. package/dist/http/FindMyWay/internal/router.js +3 -6
  669. package/dist/http/FindMyWay/internal/router.js.map +1 -1
  670. package/dist/http/Headers.d.ts +3 -1
  671. package/dist/http/Headers.d.ts.map +1 -1
  672. package/dist/http/Headers.js +4 -2
  673. package/dist/http/Headers.js.map +1 -1
  674. package/dist/http/HttpClient.d.ts +15 -0
  675. package/dist/http/HttpClient.d.ts.map +1 -1
  676. package/dist/http/HttpClient.js +79 -23
  677. package/dist/http/HttpClient.js.map +1 -1
  678. package/dist/http/HttpClientResponse.js +3 -1
  679. package/dist/http/HttpClientResponse.js.map +1 -1
  680. package/dist/http/HttpEffect.d.ts +3 -0
  681. package/dist/http/HttpEffect.d.ts.map +1 -1
  682. package/dist/http/HttpEffect.js +5 -2
  683. package/dist/http/HttpEffect.js.map +1 -1
  684. package/dist/http/HttpMiddleware.d.ts +17 -0
  685. package/dist/http/HttpMiddleware.d.ts.map +1 -1
  686. package/dist/http/HttpMiddleware.js +56 -39
  687. package/dist/http/HttpMiddleware.js.map +1 -1
  688. package/dist/http/HttpServer.d.ts +1 -1
  689. package/dist/http/HttpServer.d.ts.map +1 -1
  690. package/dist/http/HttpTraceContext.d.ts.map +1 -1
  691. package/dist/http/HttpTraceContext.js +4 -2
  692. package/dist/http/HttpTraceContext.js.map +1 -1
  693. package/dist/http/internal/tracing.d.ts +2 -0
  694. package/dist/http/internal/tracing.d.ts.map +1 -0
  695. package/dist/http/internal/tracing.js +37 -0
  696. package/dist/http/internal/tracing.js.map +1 -0
  697. package/dist/http-api/HttpApiBuilder.js +2 -1
  698. package/dist/http-api/HttpApiBuilder.js.map +1 -1
  699. package/dist/http-api/HttpApiClient.d.ts +12 -3
  700. package/dist/http-api/HttpApiClient.d.ts.map +1 -1
  701. package/dist/http-api/HttpApiClient.js.map +1 -1
  702. package/dist/http-api/HttpApiError.d.ts +4 -3
  703. package/dist/http-api/HttpApiError.d.ts.map +1 -1
  704. package/dist/http-api/HttpApiError.js +7 -4
  705. package/dist/http-api/HttpApiError.js.map +1 -1
  706. package/dist/http-api/HttpApiSecurity.d.ts +8 -8
  707. package/dist/http-api/HttpApiSecurity.js +8 -8
  708. package/dist/index.d.ts +155 -0
  709. package/dist/index.d.ts.map +1 -1
  710. package/dist/index.js +155 -0
  711. package/dist/index.js.map +1 -1
  712. package/dist/internal/arbitrary/array.js +3 -3
  713. package/dist/internal/arbitrary/array.js.map +1 -1
  714. package/dist/internal/arbitrary/model.js +26 -11
  715. package/dist/internal/arbitrary/model.js.map +1 -1
  716. package/dist/internal/arbitrary/runner.js +8 -8
  717. package/dist/internal/arbitrary/runner.js.map +1 -1
  718. package/dist/internal/arbitrary/schema.js +4 -5
  719. package/dist/internal/arbitrary/schema.js.map +1 -1
  720. package/dist/internal/effect.js +53 -46
  721. package/dist/internal/effect.js.map +1 -1
  722. package/dist/internal/schedule.js +7 -5
  723. package/dist/internal/schedule.js.map +1 -1
  724. package/dist/internal/schema/standardSchema.js +2 -2
  725. package/dist/internal/schema/standardSchema.js.map +1 -1
  726. package/dist/internal/version.d.ts +2 -0
  727. package/dist/internal/version.d.ts.map +1 -0
  728. package/dist/internal/version.js +3 -0
  729. package/dist/internal/version.js.map +1 -0
  730. package/dist/net/AddressResolver.d.ts +145 -0
  731. package/dist/net/AddressResolver.d.ts.map +1 -0
  732. package/dist/net/AddressResolver.js +114 -0
  733. package/dist/net/AddressResolver.js.map +1 -0
  734. package/dist/net/Dns.d.ts +596 -0
  735. package/dist/net/Dns.d.ts.map +1 -0
  736. package/dist/net/Dns.js +549 -0
  737. package/dist/net/Dns.js.map +1 -0
  738. package/dist/net/Host.d.ts +320 -0
  739. package/dist/net/Host.d.ts.map +1 -0
  740. package/dist/net/Host.js +342 -0
  741. package/dist/net/Host.js.map +1 -0
  742. package/dist/net/IpInterface.d.ts +76 -3
  743. package/dist/net/IpInterface.d.ts.map +1 -1
  744. package/dist/net/IpInterface.js +53 -4
  745. package/dist/net/IpInterface.js.map +1 -1
  746. package/dist/net/IpNetwork.d.ts +82 -8
  747. package/dist/net/IpNetwork.d.ts.map +1 -1
  748. package/dist/net/IpNetwork.js +60 -4
  749. package/dist/net/IpNetwork.js.map +1 -1
  750. package/dist/net/NetAddress.d.ts +388 -35
  751. package/dist/net/NetAddress.d.ts.map +1 -1
  752. package/dist/net/NetAddress.js +350 -34
  753. package/dist/net/NetAddress.js.map +1 -1
  754. package/dist/net/index.d.ts +15 -0
  755. package/dist/net/index.d.ts.map +1 -1
  756. package/dist/net/index.js +15 -0
  757. package/dist/net/index.js.map +1 -1
  758. package/dist/observability/OtlpExporter.d.ts.map +1 -1
  759. package/dist/observability/OtlpExporter.js +5 -6
  760. package/dist/observability/OtlpExporter.js.map +1 -1
  761. package/dist/observability/OtlpLogger.d.ts.map +1 -1
  762. package/dist/observability/OtlpLogger.js +23 -27
  763. package/dist/observability/OtlpLogger.js.map +1 -1
  764. package/dist/observability/OtlpMetrics.d.ts +5 -3
  765. package/dist/observability/OtlpMetrics.d.ts.map +1 -1
  766. package/dist/observability/OtlpMetrics.js +36 -115
  767. package/dist/observability/OtlpMetrics.js.map +1 -1
  768. package/dist/observability/OtlpResource.d.ts +4 -3
  769. package/dist/observability/OtlpResource.d.ts.map +1 -1
  770. package/dist/observability/OtlpResource.js +20 -23
  771. package/dist/observability/OtlpResource.js.map +1 -1
  772. package/dist/observability/OtlpTracer.d.ts +1 -0
  773. package/dist/observability/OtlpTracer.d.ts.map +1 -1
  774. package/dist/observability/OtlpTracer.js +32 -36
  775. package/dist/observability/OtlpTracer.js.map +1 -1
  776. package/dist/observability/PrometheusMetrics.js +1 -0
  777. package/dist/observability/PrometheusMetrics.js.map +1 -1
  778. package/dist/observability/internal/otlpProtobuf.js +32 -1
  779. package/dist/observability/internal/otlpProtobuf.js.map +1 -1
  780. package/dist/persistence/PersistedQueue.d.ts +32 -3
  781. package/dist/persistence/PersistedQueue.d.ts.map +1 -1
  782. package/dist/persistence/PersistedQueue.js +75 -16
  783. package/dist/persistence/PersistedQueue.js.map +1 -1
  784. package/dist/reactivity/AsyncResult.d.ts +1 -1
  785. package/dist/reactivity/Atom.d.ts +5 -5
  786. package/dist/reactivity/Atom.d.ts.map +1 -1
  787. package/dist/reactivity/Atom.js +9 -5
  788. package/dist/reactivity/Atom.js.map +1 -1
  789. package/dist/reactivity/AtomHttpApi.d.ts +2 -2
  790. package/dist/reactivity/AtomHttpApi.d.ts.map +1 -1
  791. package/dist/reactivity/AtomRegistry.d.ts +8 -0
  792. package/dist/reactivity/AtomRegistry.d.ts.map +1 -1
  793. package/dist/reactivity/AtomRegistry.js.map +1 -1
  794. package/dist/rpc/RpcClient.d.ts +41 -7
  795. package/dist/rpc/RpcClient.d.ts.map +1 -1
  796. package/dist/rpc/RpcClient.js +50 -25
  797. package/dist/rpc/RpcClient.js.map +1 -1
  798. package/dist/rpc/RpcServer.d.ts +6 -0
  799. package/dist/rpc/RpcServer.d.ts.map +1 -1
  800. package/dist/rpc/RpcServer.js +59 -40
  801. package/dist/rpc/RpcServer.js.map +1 -1
  802. package/dist/rpc/internal/tracing.d.ts +2 -0
  803. package/dist/rpc/internal/tracing.d.ts.map +1 -0
  804. package/dist/rpc/internal/tracing.js +18 -0
  805. package/dist/rpc/internal/tracing.js.map +1 -0
  806. package/dist/schema/SchemaCompiler/runtime.js +9 -1
  807. package/dist/schema/SchemaCompiler/runtime.js.map +1 -1
  808. package/dist/socket/DatagramSocket.d.ts +456 -0
  809. package/dist/socket/DatagramSocket.d.ts.map +1 -0
  810. package/dist/socket/DatagramSocket.js +535 -0
  811. package/dist/socket/DatagramSocket.js.map +1 -0
  812. package/dist/socket/Socket.d.ts +14 -1
  813. package/dist/socket/Socket.d.ts.map +1 -1
  814. package/dist/socket/Socket.js +9 -1
  815. package/dist/socket/Socket.js.map +1 -1
  816. package/dist/socket/index.d.ts +5 -0
  817. package/dist/socket/index.d.ts.map +1 -1
  818. package/dist/socket/index.js +5 -0
  819. package/dist/socket/index.js.map +1 -1
  820. package/dist/sql/Migrator.d.ts.map +1 -1
  821. package/dist/sql/Migrator.js +7 -2
  822. package/dist/sql/Migrator.js.map +1 -1
  823. package/dist/sql/SqlClient.d.ts +7 -1
  824. package/dist/sql/SqlClient.d.ts.map +1 -1
  825. package/dist/sql/SqlClient.js +35 -10
  826. package/dist/sql/SqlClient.js.map +1 -1
  827. package/dist/sql/Statement.d.ts +21 -1
  828. package/dist/sql/Statement.d.ts.map +1 -1
  829. package/dist/sql/Statement.js +55 -7
  830. package/dist/sql/Statement.js.map +1 -1
  831. package/dist/testing/TestClock.d.ts +8 -0
  832. package/dist/testing/TestClock.d.ts.map +1 -1
  833. package/dist/testing/TestClock.js +7 -0
  834. package/dist/testing/TestClock.js.map +1 -1
  835. package/dist/testing/TestConsole.d.ts +7 -0
  836. package/dist/testing/TestConsole.d.ts.map +1 -1
  837. package/dist/testing/TestConsole.js +6 -0
  838. package/dist/testing/TestConsole.js.map +1 -1
  839. package/dist/testing/TestCrypto.d.ts +73 -0
  840. package/dist/testing/TestCrypto.d.ts.map +1 -0
  841. package/dist/testing/TestCrypto.js +87 -0
  842. package/dist/testing/TestCrypto.js.map +1 -0
  843. package/dist/testing/index.d.ts +8 -0
  844. package/dist/testing/index.d.ts.map +1 -1
  845. package/dist/testing/index.js +8 -0
  846. package/dist/testing/index.js.map +1 -1
  847. package/dist/workflow/DurableDeferred.d.ts +54 -0
  848. package/dist/workflow/DurableDeferred.d.ts.map +1 -1
  849. package/dist/workflow/DurableDeferred.js +78 -49
  850. package/dist/workflow/DurableDeferred.js.map +1 -1
  851. package/dist/workflow/WorkflowEngine.d.ts.map +1 -1
  852. package/dist/workflow/WorkflowEngine.js +2 -1
  853. package/dist/workflow/WorkflowEngine.js.map +1 -1
  854. package/package.json +3 -3
  855. package/src/Array.ts +351 -3
  856. package/src/BigDecimal.ts +88 -0
  857. package/src/BigInt.ts +68 -0
  858. package/src/Boolean.ts +34 -0
  859. package/src/Brand.ts +10 -0
  860. package/src/ByteSize.ts +87 -0
  861. package/src/Cache.ts +50 -8
  862. package/src/Cause.ts +82 -0
  863. package/src/Channel.ts +368 -18
  864. package/src/ChannelSchema.ts +13 -0
  865. package/src/Chunk.ts +193 -0
  866. package/src/Clock.ts +7 -0
  867. package/src/Combiner.ts +10 -0
  868. package/src/Config.ts +82 -8
  869. package/src/ConfigProvider.ts +28 -0
  870. package/src/Console.ts +26 -0
  871. package/src/Context.ts +53 -3
  872. package/src/Cron.ts +32 -1
  873. package/src/Crypto.ts +48 -9
  874. package/src/Data.ts +13 -0
  875. package/src/DateTime.ts +180 -6
  876. package/src/Deferred.ts +51 -0
  877. package/src/Differ.ts +2 -0
  878. package/src/Duration.ts +126 -16
  879. package/src/Effect.ts +539 -5
  880. package/src/Effectable.ts +4 -0
  881. package/src/Equal.ts +12 -1
  882. package/src/Equivalence.ts +22 -0
  883. package/src/ErrorReporter.ts +36 -0
  884. package/src/ExecutionPlan.ts +58 -14
  885. package/src/Exit.ts +40 -0
  886. package/src/Fiber.ts +20 -0
  887. package/src/FiberHandle.ts +29 -4
  888. package/src/FiberMap.ts +38 -0
  889. package/src/FiberSet.ts +21 -0
  890. package/src/FileSystem.ts +64 -2
  891. package/src/Filter.ts +55 -0
  892. package/src/Formatter.ts +42 -1
  893. package/src/Function.ts +30 -0
  894. package/src/Graph.ts +317 -36
  895. package/src/HKT.ts +5 -0
  896. package/src/Hash.ts +15 -0
  897. package/src/HashMap.ts +91 -0
  898. package/src/HashRing.ts +18 -0
  899. package/src/HashSet.ts +53 -0
  900. package/src/Inspectable.ts +8 -0
  901. package/src/Iterable.ts +127 -0
  902. package/src/JsonPatch.ts +5 -0
  903. package/src/JsonPointer.ts +5 -0
  904. package/src/JsonSchema.ts +17 -0
  905. package/src/Latch.ts +14 -0
  906. package/src/Layer.ts +101 -1
  907. package/src/LayerMap.ts +7 -0
  908. package/src/LayerRef.ts +5 -0
  909. package/src/LogLevel.ts +20 -0
  910. package/src/Logger.ts +41 -5
  911. package/src/ManagedRuntime.ts +12 -1
  912. package/src/Match.ts +52 -0
  913. package/src/Metric.ts +69 -0
  914. package/src/MutableHashMap.ts +44 -0
  915. package/src/MutableHashSet.ts +17 -0
  916. package/src/MutableList.ts +21 -0
  917. package/src/MutableRef.ts +32 -0
  918. package/src/Newtype.ts +9 -0
  919. package/src/NonEmptyIterable.ts +4 -0
  920. package/src/Number.ts +61 -0
  921. package/src/Optic.ts +57 -0
  922. package/src/Option.ts +134 -0
  923. package/src/Order.ts +30 -0
  924. package/src/Ordering.ts +7 -0
  925. package/src/PartitionedSemaphore.ts +61 -22
  926. package/src/Path.ts +6 -0
  927. package/src/Pipeable.ts +7 -0
  928. package/src/PlatformError.ts +8 -0
  929. package/src/Pool.ts +20 -1
  930. package/src/Predicate.ts +85 -0
  931. package/src/PrimaryKey.ts +5 -0
  932. package/src/PubSub.ts +90 -9
  933. package/src/Pull.ts +20 -0
  934. package/src/Queue.ts +80 -10
  935. package/src/Random.ts +13 -0
  936. package/src/RcMap.ts +23 -0
  937. package/src/RcRef.ts +6 -0
  938. package/src/Record.ts +100 -0
  939. package/src/Redactable.ts +6 -0
  940. package/src/Redacted.ts +8 -0
  941. package/src/Reducer.ts +4 -0
  942. package/src/Ref.ts +42 -0
  943. package/src/References.ts +21 -0
  944. package/src/RegExp.ts +4 -0
  945. package/src/Request.ts +32 -0
  946. package/src/RequestResolver.ts +59 -10
  947. package/src/Resource.ts +7 -0
  948. package/src/Result.ts +93 -0
  949. package/src/Runtime.ts +10 -0
  950. package/src/Schedule.ts +61 -0
  951. package/src/Scheduler.ts +7 -0
  952. package/src/Schema.ts +1168 -9
  953. package/src/SchemaAST.ts +115 -1
  954. package/src/SchemaGetter.ts +80 -4
  955. package/src/SchemaIssue.ts +34 -0
  956. package/src/SchemaParser.ts +26 -0
  957. package/src/SchemaRepresentation.ts +148 -0
  958. package/src/SchemaTransformation.ts +53 -0
  959. package/src/Scope.ts +19 -0
  960. package/src/ScopedCache.ts +55 -3
  961. package/src/ScopedRef.ts +9 -0
  962. package/src/Semaphore.ts +26 -0
  963. package/src/Sink.ts +126 -2
  964. package/src/StandardSchema.ts +1 -0
  965. package/src/Stdio.ts +16 -2
  966. package/src/Stream.ts +633 -26
  967. package/src/String.ts +87 -0
  968. package/src/Struct.ts +46 -0
  969. package/src/SubscriptionRef.ts +65 -0
  970. package/src/Symbol.ts +2 -0
  971. package/src/SynchronizedRef.ts +63 -0
  972. package/src/Take.ts +3 -0
  973. package/src/Terminal.ts +8 -0
  974. package/src/Tracer.ts +23 -0
  975. package/src/Trie.ts +68 -0
  976. package/src/Tuple.ts +38 -0
  977. package/src/TxChunk.ts +52 -0
  978. package/src/TxDeferred.ts +15 -0
  979. package/src/TxHashMap.ts +97 -6
  980. package/src/TxHashSet.ts +83 -3
  981. package/src/TxPriorityQueue.ts +34 -2
  982. package/src/TxPubSub.ts +26 -0
  983. package/src/TxQueue.ts +51 -0
  984. package/src/TxReentrantLock.ts +53 -36
  985. package/src/TxRef.ts +14 -0
  986. package/src/TxSemaphore.ts +47 -31
  987. package/src/TxSubscriptionRef.ts +25 -0
  988. package/src/Types.ts +36 -0
  989. package/src/UndefinedOr.ts +15 -0
  990. package/src/Unify.ts +15 -0
  991. package/src/Utils.ts +4 -0
  992. package/src/Version.ts +38 -0
  993. package/src/ai/Chat.ts +1 -1
  994. package/src/ai/DecisionModel.ts +42 -1
  995. package/src/ai/LanguageModel.ts +16 -19
  996. package/src/ai/McpServer.ts +169 -58
  997. package/src/ai/Telemetry.ts +62 -58
  998. package/src/ai/internal/mcpProtocol/v2026_07_28.ts +5 -0
  999. package/src/ai/internal/mcpProtocol.ts +3 -0
  1000. package/src/ai/internal/mcpRuntime.ts +86 -43
  1001. package/src/ai/internal/mcpStatefulRuntime.ts +2 -0
  1002. package/src/cli/CliOutput.ts +33 -16
  1003. package/src/cli/Command.ts +4 -3
  1004. package/src/cli/Completions.ts +9 -6
  1005. package/src/cli/GlobalFlag.ts +19 -11
  1006. package/src/cli/Prompt.ts +159 -149
  1007. package/src/cli/internal/ansi.ts +26 -3
  1008. package/src/cli/internal/completions/powershell.ts +322 -0
  1009. package/src/cli/internal/completions/zsh.ts +4 -2
  1010. package/src/cli/internal/wizard.ts +34 -26
  1011. package/src/cluster/ClusterSchema.ts +32 -0
  1012. package/src/cluster/ClusterWorkflowEngine.ts +13 -24
  1013. package/src/cluster/K8sHttpClient.ts +12 -2
  1014. package/src/cluster/MessageStorage.ts +45 -14
  1015. package/src/cluster/Runners.ts +8 -2
  1016. package/src/cluster/Sharding.ts +207 -49
  1017. package/src/cluster/SqlMessageStorage.ts +118 -84
  1018. package/src/cluster/SqlRunnerStorage.ts +224 -128
  1019. package/src/cluster/internal/entityManager.ts +151 -55
  1020. package/src/encoding/Base64.ts +4 -0
  1021. package/src/encoding/Base64Url.ts +4 -0
  1022. package/src/encoding/EncodingError.ts +5 -0
  1023. package/src/encoding/Hex.ts +5 -0
  1024. package/src/encoding/Toml.ts +2 -2
  1025. package/src/encoding/Yaml.ts +8 -4
  1026. package/src/encoding/index.ts +4 -0
  1027. package/src/eventlog/SqlEventJournal.ts +18 -4
  1028. package/src/eventlog/SqlEventLogServerUnencrypted.ts +282 -235
  1029. package/src/http/FindMyWay/internal/router.ts +4 -7
  1030. package/src/http/Headers.ts +8 -2
  1031. package/src/http/HttpClient.ts +100 -29
  1032. package/src/http/HttpClientResponse.ts +3 -1
  1033. package/src/http/HttpEffect.ts +11 -2
  1034. package/src/http/HttpMiddleware.ts +60 -45
  1035. package/src/http/HttpServer.ts +1 -1
  1036. package/src/http/HttpTraceContext.ts +8 -2
  1037. package/src/http/internal/tracing.ts +52 -0
  1038. package/src/http-api/HttpApiBuilder.ts +5 -1
  1039. package/src/http-api/HttpApiClient.ts +13 -4
  1040. package/src/http-api/HttpApiError.ts +8 -4
  1041. package/src/http-api/HttpApiSecurity.ts +8 -8
  1042. package/src/index.ts +156 -0
  1043. package/src/internal/arbitrary/array.ts +3 -3
  1044. package/src/internal/arbitrary/model.ts +37 -14
  1045. package/src/internal/arbitrary/runner.ts +7 -7
  1046. package/src/internal/arbitrary/schema.ts +4 -3
  1047. package/src/internal/effect.ts +62 -58
  1048. package/src/internal/schedule.ts +23 -17
  1049. package/src/internal/schema/standardSchema.ts +2 -2
  1050. package/src/internal/version.ts +2 -0
  1051. package/src/net/AddressResolver.ts +222 -0
  1052. package/src/net/Dns.ts +1035 -0
  1053. package/src/net/Host.ts +472 -0
  1054. package/src/net/IpInterface.ts +117 -7
  1055. package/src/net/IpNetwork.ts +116 -17
  1056. package/src/net/NetAddress.ts +611 -76
  1057. package/src/net/index.ts +18 -0
  1058. package/src/observability/OtlpExporter.ts +9 -6
  1059. package/src/observability/OtlpLogger.ts +20 -21
  1060. package/src/observability/OtlpMetrics.ts +46 -116
  1061. package/src/observability/OtlpResource.ts +18 -27
  1062. package/src/observability/OtlpTracer.ts +34 -40
  1063. package/src/observability/PrometheusMetrics.ts +1 -0
  1064. package/src/observability/internal/otlpProtobuf.ts +60 -0
  1065. package/src/persistence/PersistedQueue.ts +146 -53
  1066. package/src/reactivity/AsyncResult.ts +1 -1
  1067. package/src/reactivity/Atom.ts +10 -6
  1068. package/src/reactivity/AtomHttpApi.ts +2 -4
  1069. package/src/reactivity/AtomRegistry.ts +7 -0
  1070. package/src/rpc/RpcClient.ts +87 -41
  1071. package/src/rpc/RpcServer.ts +85 -48
  1072. package/src/rpc/internal/tracing.ts +22 -0
  1073. package/src/schema/SchemaCompiler/runtime.ts +4 -1
  1074. package/src/socket/DatagramSocket.ts +919 -0
  1075. package/src/socket/Socket.ts +22 -2
  1076. package/src/socket/index.ts +6 -0
  1077. package/src/sql/Migrator.ts +21 -5
  1078. package/src/sql/SqlClient.ts +43 -19
  1079. package/src/sql/Statement.ts +59 -7
  1080. package/src/testing/TestClock.ts +9 -0
  1081. package/src/testing/TestConsole.ts +8 -0
  1082. package/src/testing/TestCrypto.ts +94 -0
  1083. package/src/testing/index.ts +9 -0
  1084. package/src/workflow/DurableDeferred.ts +123 -48
  1085. package/src/workflow/WorkflowEngine.ts +2 -1
package/src/cli/Prompt.ts CHANGED
@@ -26,6 +26,7 @@ import * as Path from "../Path.ts"
26
26
  import * as Predicate from "../Predicate.ts"
27
27
  import * as Queue from "../Queue.ts"
28
28
  import * as Redacted from "../Redacted.ts"
29
+ import type * as Scope from "../Scope.ts"
29
30
  import * as Terminal from "../Terminal.ts"
30
31
  import type { Covariant } from "../Types.ts"
31
32
  import * as Ansi from "./internal/ansi.ts"
@@ -203,6 +204,11 @@ export interface Theme {
203
204
  readonly errorColor: string
204
205
  /** The color used for submitted values. */
205
206
  readonly submittedColor: string
207
+ /**
208
+ * Whether prompts and the command wizard emit color and style escapes.
209
+ * Cursor movement and redraw controls are always emitted.
210
+ */
211
+ readonly colors: boolean
206
212
  }
207
213
 
208
214
  /**
@@ -620,7 +626,7 @@ export interface ToggleOptions extends ThemeOptions {
620
626
  readonly inactive?: string
621
627
  }
622
628
 
623
- const defaultTheme: Theme = {
629
+ const defaultTheme: Omit<Theme, "colors"> = {
624
630
  prefix: "?",
625
631
  arrowUp: "↑",
626
632
  arrowDown: "↓",
@@ -640,7 +646,7 @@ const defaultTheme: Theme = {
640
646
  submittedColor: Ansi.white
641
647
  }
642
648
 
643
- const windowsTheme: Theme = {
649
+ const windowsTheme: Omit<Theme, "colors"> = {
644
650
  ...defaultTheme,
645
651
  checkboxOn: "[*]",
646
652
  checkboxOff: "[ ]",
@@ -653,13 +659,19 @@ const windowsTheme: Theme = {
653
659
  /**
654
660
  * Creates a prompt theme using the current platform defaults.
655
661
  *
662
+ * **Details**
663
+ *
664
+ * Unless `colors` is provided, it is detected when the theme is created:
665
+ * colors are enabled when stdout is a TTY and `NO_COLOR` is unset or empty.
666
+ *
656
667
  * @stability unstable
657
668
  * @category constructors
658
669
  * @since 4.0.0
659
670
  */
660
671
  export const makeTheme = (options?: Partial<Theme>): Theme => ({
661
672
  ...(process.platform === "win32" ? windowsTheme : defaultTheme),
662
- ...options
673
+ ...options,
674
+ colors: options?.colors ?? Ansi.detectColors()
663
675
  })
664
676
 
665
677
  /**
@@ -668,7 +680,13 @@ export const makeTheme = (options?: Partial<Theme>): Theme => ({
668
680
  * **Details**
669
681
  *
670
682
  * Provide this reference once to theme every prompt in an application. A
671
- * prompt's `theme` option takes precedence over the context value.
683
+ * prompt's `theme` option takes precedence over the context value. The
684
+ * command wizard also reads `colors` from this reference, so provide a theme
685
+ * with `colors: false` to disable wizard styling.
686
+ *
687
+ * The default value is created with `makeTheme` the first time it is read,
688
+ * so color detection runs once per process. Changes to `NO_COLOR` after the
689
+ * first prompt do not affect the default theme.
672
690
  *
673
691
  * @stability unstable
674
692
  * @category services
@@ -832,11 +850,10 @@ export const all: <
832
850
  return allTupled(arguments[0]) as any
833
851
  }
834
852
 
835
- const annotateLine = (line: string): string => Ansi.annotate(line, Ansi.bold)
836
- const annotateErrorLine = (line: string, color: string): string =>
837
- Ansi.annotate(line, Ansi.combine(Ansi.italicized, color))
838
- const annotateSymbol = (symbol: string, ...styles: Array<string | Array<string>>): string =>
839
- symbol.length === 0 ? "" : Ansi.annotate(symbol, ...styles)
853
+ const annotateErrorLine = (theme: Theme, line: string): string =>
854
+ Ansi.annotate(theme.colors, line, Ansi.combine(Ansi.italicized, theme.errorColor))
855
+ const annotateSymbol = (theme: Theme, symbol: string, ...styles: Array<string | Array<string>>): string =>
856
+ symbol.length === 0 ? "" : Ansi.annotate(theme.colors, symbol, ...styles)
840
857
  const separateSymbol = (symbol: string, text: string): string => symbol.length === 0 ? text : symbol + " " + text
841
858
  const renderPagingPrefix = (theme: Theme, showArrowUp: boolean, showArrowDown: boolean): string => {
842
859
  const width = Math.max(theme.arrowUp.length, theme.arrowDown.length)
@@ -1304,7 +1321,7 @@ export const run: <Output>(
1304
1321
  > = Effect.fnUntraced(
1305
1322
  function*<Output>(self: Prompt<Output>) {
1306
1323
  const terminal = yield* Terminal.Terminal
1307
- const input = yield* terminal.readInput
1324
+ const input = yield* Effect.cached(terminal.readInput)
1308
1325
  return yield* runWithInput(self, terminal, input)
1309
1326
  },
1310
1327
  Effect.mapError(() => new Terminal.QuitError({})),
@@ -1569,13 +1586,13 @@ const allTupled = <const T extends ArrayLike<Prompt<any>>>(arg: T): Prompt<
1569
1586
  const runWithInput = <Output>(
1570
1587
  prompt: Prompt<Output>,
1571
1588
  terminal: Terminal.Terminal,
1572
- input: Queue.Dequeue<Terminal.UserInput, Cause.Done>
1573
- ): Effect.Effect<Output, NoSuchElementError, Environment> =>
1589
+ input: Terminal.Terminal["readInput"]
1590
+ ): Effect.Effect<Output, NoSuchElementError, Environment | Scope.Scope> =>
1574
1591
  Effect.suspend(() => {
1575
1592
  const op = prompt as PromptPrimitive
1576
1593
  switch (op._tag) {
1577
1594
  case "Loop": {
1578
- return runLoop(op, terminal, input)
1595
+ return Effect.flatMap(input, (queue) => runLoop(op, terminal, queue))
1579
1596
  }
1580
1597
  case "OnSuccess": {
1581
1598
  return Effect.flatMap(
@@ -1689,48 +1706,36 @@ const handleConfirmClear = (options: ConfirmOptionsReq) => {
1689
1706
  const confirmMessage = state.value
1690
1707
  ? options.placeholder.defaultConfirm!
1691
1708
  : options.placeholder.defaultDeny!
1692
- const promptText = renderConfirmOutput(
1693
- confirmMessage,
1694
- figures.prefix,
1695
- figures.pointerSmall,
1696
- options,
1697
- { plain: true }
1698
- )
1709
+ const promptText = renderPrompt(confirmMessage, options.message, figures.prefix, figures.pointerSmall, figures, {
1710
+ plain: true
1711
+ })
1699
1712
  const clearOutput = eraseText(promptText, columns)
1700
1713
  const resetCurrentLine = Ansi.eraseLine + Ansi.cursorLeft
1701
1714
  return clearOutput + resetCurrentLine
1702
1715
  })
1703
1716
  }
1704
1717
 
1705
- const renderConfirmOutput = (
1706
- confirm: string,
1707
- leadingSymbol: string,
1708
- trailingSymbol: string,
1709
- options: ConfirmOptionsReq,
1710
- renderOptions?: RenderOptions | undefined
1711
- ) => renderPrompt(confirm, options.message, leadingSymbol, trailingSymbol, renderOptions)
1712
-
1713
1718
  const renderConfirmNextFrame = Effect.fnUntraced(function*(state: ConfirmState, options: ConfirmOptionsReq) {
1714
1719
  const figures = yield* getTheme(options)
1715
- const leadingSymbol = annotateSymbol(figures.prefix, figures.primaryColor)
1716
- const trailingSymbol = annotateSymbol(figures.pointerSmall, figures.mutedColor)
1720
+ const leadingSymbol = annotateSymbol(figures, figures.prefix, figures.primaryColor)
1721
+ const trailingSymbol = annotateSymbol(figures, figures.pointerSmall, figures.mutedColor)
1717
1722
  // Marking these explicitly as present with `!` because they always will be
1718
1723
  // and there is really no value in adding a `DeepRequired` type helper just
1719
1724
  // for these internal cases
1720
1725
  const confirmMessage = state.value
1721
1726
  ? options.placeholder.defaultConfirm!
1722
1727
  : options.placeholder.defaultDeny!
1723
- const confirm = Ansi.annotate(confirmMessage, figures.mutedColor)
1724
- const promptMsg = renderConfirmOutput(confirm, leadingSymbol, trailingSymbol, options)
1728
+ const confirm = Ansi.annotate(figures.colors, confirmMessage, figures.mutedColor)
1729
+ const promptMsg = renderPrompt(confirm, options.message, leadingSymbol, trailingSymbol, figures)
1725
1730
  return Ansi.cursorHide + promptMsg
1726
1731
  })
1727
1732
 
1728
1733
  const renderConfirmSubmission = Effect.fnUntraced(function*(value: boolean, options: ConfirmOptionsReq) {
1729
1734
  const figures = yield* getTheme(options)
1730
- const leadingSymbol = annotateSymbol(figures.tick, figures.successColor)
1731
- const trailingSymbol = annotateSymbol(figures.ellipsis, figures.mutedColor)
1735
+ const leadingSymbol = annotateSymbol(figures, figures.tick, figures.successColor)
1736
+ const trailingSymbol = annotateSymbol(figures, figures.ellipsis, figures.mutedColor)
1732
1737
  const confirmMessage = value ? options.label.confirm : options.label.deny
1733
- const promptMsg = renderConfirmOutput(confirmMessage, leadingSymbol, trailingSymbol, options)
1738
+ const promptMsg = renderPrompt(confirmMessage, options.message, leadingSymbol, trailingSymbol, figures)
1734
1739
  return promptMsg + "\n"
1735
1740
  })
1736
1741
 
@@ -1778,7 +1783,9 @@ const handleDateClear = (options: DateOptionsReq) => {
1778
1783
  const figures = yield* getTheme(options)
1779
1784
  const resetCurrentLine = Ansi.eraseLine + Ansi.cursorLeft
1780
1785
  const parts = Arr.reduce(state.dateParts, "", (doc, part) => doc + part.toString())
1781
- const promptText = renderDateOutput(figures.prefix, figures.pointerSmall, parts, options, { plain: true })
1786
+ const promptText = renderPrompt(parts, options.message, figures.prefix, figures.pointerSmall, figures, {
1787
+ plain: true
1788
+ })
1782
1789
  const errorText = Option.isSome(state.error)
1783
1790
  ? Arr.match(state.error.value.split(NEWLINE_REGEXP), {
1784
1791
  onEmpty: () => "",
@@ -1794,8 +1801,8 @@ const renderDateError = (state: DateState, pointer: string, theme: Theme): strin
1794
1801
  if (Option.isSome(state.error)) {
1795
1802
  const errorLines = state.error.value.split(NEWLINE_REGEXP)
1796
1803
  if (Arr.isReadonlyArrayNonEmpty(errorLines)) {
1797
- const prefix = annotateSymbol(pointer, theme.errorColor)
1798
- const lines = Arr.map(errorLines, (str) => annotateErrorLine(str, theme.errorColor))
1804
+ const prefix = annotateSymbol(theme, pointer, theme.errorColor)
1805
+ const lines = Arr.map(errorLines, (str) => annotateErrorLine(theme, str))
1799
1806
  return Ansi.cursorSavePosition + "\n" + separateSymbol(prefix, lines.join("\n")) + Ansi.cursorRestorePosition
1800
1807
  }
1801
1808
  }
@@ -1810,37 +1817,29 @@ const renderParts = (state: DateState, theme: Theme, submitted: boolean = false)
1810
1817
  const partDoc = part.toString()
1811
1818
  if (currentIndex === state.cursor && !submitted) {
1812
1819
  const annotation = Ansi.combine(Ansi.underlined, theme.primaryColor)
1813
- return doc + Ansi.annotate(partDoc, annotation)
1820
+ return doc + Ansi.annotate(theme.colors, partDoc, annotation)
1814
1821
  }
1815
1822
  return doc + partDoc
1816
1823
  }
1817
1824
  )
1818
1825
  }
1819
1826
 
1820
- const renderDateOutput = (
1821
- leadingSymbol: string,
1822
- trailingSymbol: string,
1823
- parts: string,
1824
- options: DateOptionsReq,
1825
- renderOptions?: RenderOptions | undefined
1826
- ) => renderPrompt(parts, options.message, leadingSymbol, trailingSymbol, renderOptions)
1827
-
1828
1827
  const renderDateNextFrame = Effect.fnUntraced(function*(state: DateState, options: DateOptionsReq) {
1829
1828
  const figures = yield* getTheme(options)
1830
- const leadingSymbol = annotateSymbol(figures.prefix, figures.primaryColor)
1831
- const trailingSymbol = annotateSymbol(figures.pointerSmall, figures.mutedColor)
1829
+ const leadingSymbol = annotateSymbol(figures, figures.prefix, figures.primaryColor)
1830
+ const trailingSymbol = annotateSymbol(figures, figures.pointerSmall, figures.mutedColor)
1832
1831
  const parts = renderParts(state, figures)
1833
- const promptMsg = renderDateOutput(leadingSymbol, trailingSymbol, parts, options)
1832
+ const promptMsg = renderPrompt(parts, options.message, leadingSymbol, trailingSymbol, figures)
1834
1833
  const errorMsg = renderDateError(state, figures.pointerSmall, figures)
1835
1834
  return Ansi.cursorHide + promptMsg + errorMsg
1836
1835
  })
1837
1836
 
1838
1837
  const renderDateSubmission = Effect.fnUntraced(function*(state: DateState, options: DateOptionsReq) {
1839
1838
  const figures = yield* getTheme(options)
1840
- const leadingSymbol = annotateSymbol(figures.tick, figures.successColor)
1841
- const trailingSymbol = annotateSymbol(figures.ellipsis, figures.mutedColor)
1839
+ const leadingSymbol = annotateSymbol(figures, figures.tick, figures.successColor)
1840
+ const trailingSymbol = annotateSymbol(figures, figures.ellipsis, figures.mutedColor)
1842
1841
  const parts = renderParts(state, figures, true)
1843
- const promptMsg = renderDateOutput(leadingSymbol, trailingSymbol, parts, options)
1842
+ const promptMsg = renderPrompt(parts, options.message, leadingSymbol, trailingSymbol, figures)
1844
1843
  return promptMsg + "\n"
1845
1844
  })
1846
1845
 
@@ -2428,12 +2427,13 @@ const handleFileClear = (options: FileOptionsReq) => {
2428
2427
  const resolvedPathText = separateSymbol(figures.pointerSmall, resolvedPath)
2429
2428
  const isConfirming = showConfirmation(state.confirm)
2430
2429
  const promptText = isConfirming
2431
- ? renderPrompt("(Y/n)", CONFIRM_MESSAGE, figures.prefix, figures.pointerSmall, { plain: true })
2430
+ ? renderPrompt("(Y/n)", CONFIRM_MESSAGE, figures.prefix, figures.pointerSmall, figures, { plain: true })
2432
2431
  : renderPrompt(
2433
2432
  renderFileFilter(state, figures, { plain: true }),
2434
2433
  options.message,
2435
2434
  figures.tick,
2436
2435
  figures.ellipsis,
2436
+ figures,
2437
2437
  {
2438
2438
  plain: true
2439
2439
  }
@@ -2459,6 +2459,7 @@ const renderPrompt = (
2459
2459
  message: string,
2460
2460
  leadingSymbol: string,
2461
2461
  trailingSymbol: string,
2462
+ theme: Theme,
2462
2463
  options?: RenderOptions | undefined
2463
2464
  ) => {
2464
2465
  const prefix = leadingSymbol.length === 0 ? "" : leadingSymbol + " "
@@ -2474,13 +2475,12 @@ const renderPrompt = (
2474
2475
  }
2475
2476
  return output
2476
2477
  }
2477
- const annotate = options?.plain === true
2478
- ? (line: string) => line
2479
- : annotateLine
2480
2478
  return Arr.match(message.split(NEWLINE_REGEXP), {
2481
2479
  onEmpty: () => renderLine(""),
2482
2480
  onNonEmpty: (promptLines) => {
2483
- const lines = Arr.map(promptLines, (line) => annotate(line))
2481
+ const lines = options?.plain === true
2482
+ ? promptLines
2483
+ : Arr.map(promptLines, (line) => Ansi.annotate(theme.colors, line, Ansi.bold))
2484
2484
  return renderLine(lines.join("\n"))
2485
2485
  }
2486
2486
  })
@@ -2502,7 +2502,7 @@ const renderPrefix = (
2502
2502
  if (state.cursor === currentIndex) {
2503
2503
  return renderOptions?.plain === true
2504
2504
  ? figures.pointer + prefix
2505
- : annotateSymbol(figures.pointer, figures.primaryColor) + prefix
2505
+ : annotateSymbol(figures, figures.pointer, figures.primaryColor) + prefix
2506
2506
  }
2507
2507
  return prefix + " ".repeat(figures.pointer.length)
2508
2508
  }
@@ -2517,7 +2517,7 @@ const renderFileName = (
2517
2517
  return file
2518
2518
  }
2519
2519
  return isSelected
2520
- ? Ansi.annotate(file, Ansi.combine(Ansi.underlined, theme.primaryColor))
2520
+ ? Ansi.annotate(theme.colors, file, Ansi.combine(Ansi.underlined, theme.primaryColor))
2521
2521
  : file
2522
2522
  }
2523
2523
 
@@ -2525,10 +2525,10 @@ const renderFileFilter = (state: FileState, theme: Theme, renderOptions?: Render
2525
2525
  const filterValue = state.query.length === 0
2526
2526
  ? renderOptions?.plain === true
2527
2527
  ? FILE_FILTER_PLACEHOLDER
2528
- : Ansi.annotate(FILE_FILTER_PLACEHOLDER, theme.mutedColor)
2528
+ : Ansi.annotate(theme.colors, FILE_FILTER_PLACEHOLDER, theme.mutedColor)
2529
2529
  : renderOptions?.plain === true
2530
2530
  ? state.query
2531
- : Ansi.annotate(state.query, Ansi.combine(Ansi.underlined, theme.primaryColor))
2531
+ : Ansi.annotate(theme.colors, state.query, Ansi.combine(Ansi.underlined, theme.primaryColor))
2532
2532
  return `[${FILE_FILTER_LABEL}: ${filterValue}]`
2533
2533
  }
2534
2534
 
@@ -2543,7 +2543,7 @@ const renderFiles = (
2543
2543
  if (length === 0) {
2544
2544
  return renderOptions?.plain === true
2545
2545
  ? FILE_EMPTY_MESSAGE
2546
- : Ansi.annotate(FILE_EMPTY_MESSAGE, figures.mutedColor)
2546
+ : Ansi.annotate(figures.colors, FILE_EMPTY_MESSAGE, figures.mutedColor)
2547
2547
  }
2548
2548
  const toDisplay = entriesToDisplay(state.cursor, length, options.maxPerPage)
2549
2549
  const documents: Array<string> = []
@@ -2562,28 +2562,44 @@ const renderFileNextFrame = Effect.fnUntraced(function*(state: FileState, option
2562
2562
  const currentPath = yield* resolveCurrentPath(state.path, options)
2563
2563
  const selectedPath = state.files[state.cursor]
2564
2564
  const resolvedPath = selectedPath === undefined ? currentPath : path.resolve(currentPath, selectedPath)
2565
- const resolvedPathMsg = Ansi.annotate(separateSymbol(figures.pointerSmall, resolvedPath), figures.mutedColor)
2565
+ const resolvedPathMsg = Ansi.annotate(
2566
+ figures.colors,
2567
+ separateSymbol(figures.pointerSmall, resolvedPath),
2568
+ figures.mutedColor
2569
+ )
2566
2570
 
2567
2571
  if (showConfirmation(state.confirm)) {
2568
- const leadingSymbol = annotateSymbol(figures.prefix, figures.primaryColor)
2569
- const trailingSymbol = annotateSymbol(figures.pointerSmall, figures.mutedColor)
2570
- const confirm = Ansi.annotate("(Y/n)", figures.mutedColor)
2571
- const promptMsg = renderPrompt(confirm, CONFIRM_MESSAGE, leadingSymbol, trailingSymbol)
2572
+ const leadingSymbol = annotateSymbol(figures, figures.prefix, figures.primaryColor)
2573
+ const trailingSymbol = annotateSymbol(figures, figures.pointerSmall, figures.mutedColor)
2574
+ const confirm = Ansi.annotate(figures.colors, "(Y/n)", figures.mutedColor)
2575
+ const promptMsg = renderPrompt(confirm, CONFIRM_MESSAGE, leadingSymbol, trailingSymbol, figures)
2572
2576
  return Ansi.cursorHide + promptMsg + "\n" + resolvedPathMsg
2573
2577
  }
2574
- const leadingSymbol = annotateSymbol(figures.tick, figures.successColor)
2575
- const trailingSymbol = annotateSymbol(figures.ellipsis, figures.mutedColor)
2576
- const promptMsg = renderPrompt(renderFileFilter(state, figures), options.message, leadingSymbol, trailingSymbol)
2578
+ const leadingSymbol = annotateSymbol(figures, figures.tick, figures.successColor)
2579
+ const trailingSymbol = annotateSymbol(figures, figures.ellipsis, figures.mutedColor)
2580
+ const promptMsg = renderPrompt(
2581
+ renderFileFilter(state, figures),
2582
+ options.message,
2583
+ leadingSymbol,
2584
+ trailingSymbol,
2585
+ figures
2586
+ )
2577
2587
  const files = renderFiles(state, state.files, figures, options)
2578
2588
  return Ansi.cursorHide + promptMsg + "\n" + resolvedPathMsg + "\n" + files
2579
2589
  })
2580
2590
 
2581
2591
  const renderFileSubmission = Effect.fnUntraced(function*(state: FileState, value: string, options: FileOptionsReq) {
2582
2592
  const figures = yield* getTheme(options)
2583
- const leadingSymbol = annotateSymbol(figures.tick, figures.successColor)
2584
- const trailingSymbol = annotateSymbol(figures.ellipsis, figures.mutedColor)
2585
- const promptMsg = renderPrompt(renderFileFilter(state, figures), options.message, leadingSymbol, trailingSymbol)
2586
- return promptMsg + " " + Ansi.annotate(value, figures.submittedColor) + "\n"
2593
+ const leadingSymbol = annotateSymbol(figures, figures.tick, figures.successColor)
2594
+ const trailingSymbol = annotateSymbol(figures, figures.ellipsis, figures.mutedColor)
2595
+ const promptMsg = renderPrompt(
2596
+ renderFileFilter(state, figures),
2597
+ options.message,
2598
+ leadingSymbol,
2599
+ trailingSymbol,
2600
+ figures
2601
+ )
2602
+ return promptMsg + " " + Ansi.annotate(figures.colors, value, figures.submittedColor) + "\n"
2587
2603
  })
2588
2604
 
2589
2605
  const handleFileRender = (options: FileOptionsReq) => {
@@ -2784,8 +2800,8 @@ const renderMultiSelectError = (
2784
2800
  if (renderOptions?.plain === true) {
2785
2801
  return separateSymbol(pointer, errorLines.join("\n"))
2786
2802
  }
2787
- const prefix = annotateSymbol(pointer, theme.errorColor)
2788
- const lines = Arr.map(errorLines, (str) => annotateErrorLine(str, theme.errorColor))
2803
+ const prefix = annotateSymbol(theme, pointer, theme.errorColor)
2804
+ const lines = Arr.map(errorLines, (str) => annotateErrorLine(theme, str))
2789
2805
  return Ansi.cursorSavePosition + "\n" + separateSymbol(prefix, lines.join("\n")) + Ansi.cursorRestorePosition
2790
2806
  }
2791
2807
  })
@@ -2803,7 +2819,7 @@ const renderChoiceDescription = <A>(
2803
2819
  const text = theme.descriptionSeparator + choice.description
2804
2820
  return renderOptions?.plain === true
2805
2821
  ? text
2806
- : Ansi.annotate(text, theme.mutedColor)
2822
+ : Ansi.annotate(theme.colors, text, theme.mutedColor)
2807
2823
  }
2808
2824
  return ""
2809
2825
  }
@@ -2819,7 +2835,7 @@ const renderMultiSelectTitle = (
2819
2835
  if (renderOptions?.plain === true || !isHighlighted) {
2820
2836
  return title
2821
2837
  }
2822
- return Ansi.annotate(title, Ansi.combine(Ansi.underlined, theme.primaryColor))
2838
+ return Ansi.annotate(theme.colors, title, Ansi.combine(Ansi.underlined, theme.primaryColor))
2823
2839
  }
2824
2840
 
2825
2841
  const renderMultiSelectChoices = <A>(
@@ -2865,7 +2881,7 @@ const renderMultiSelectChoices = <A>(
2865
2881
  const isSelected = state.selectedIndices.has(choiceIndex)
2866
2882
  const checkbox = isSelected ? figures.checkboxOn : figures.checkboxOff
2867
2883
  const annotatedCheckbox = isHighlighted && renderOptions?.plain !== true
2868
- ? Ansi.annotate(checkbox, figures.primaryColor)
2884
+ ? Ansi.annotate(figures.colors, checkbox, figures.primaryColor)
2869
2885
  : checkbox
2870
2886
  const selectChoice = choice as SelectChoice<A>
2871
2887
  const title = renderChoiceTitle(selectChoice, isHighlighted, figures, renderOptions)
@@ -2885,9 +2901,9 @@ const renderMultiSelectNextFrame = Effect.fnUntraced(
2885
2901
  function*<A>(state: MultiSelectState, options: SelectOptionsReq<A>) {
2886
2902
  const figures = yield* getTheme(options)
2887
2903
  const choices = renderMultiSelectChoices(state, options, figures)
2888
- const leadingSymbol = annotateSymbol(figures.prefix, figures.primaryColor)
2889
- const trailingSymbol = annotateSymbol(figures.pointerSmall, figures.mutedColor)
2890
- const promptMsg = renderSelectOutput(leadingSymbol, trailingSymbol, options)
2904
+ const leadingSymbol = annotateSymbol(figures, figures.prefix, figures.primaryColor)
2905
+ const trailingSymbol = annotateSymbol(figures, figures.pointerSmall, figures.mutedColor)
2906
+ const promptMsg = renderSelectOutput(leadingSymbol, trailingSymbol, options, figures)
2891
2907
  const error = renderMultiSelectError(state, figures.pointer, figures)
2892
2908
  return Ansi.cursorHide + withSelectHeader(promptMsg, choices) + error
2893
2909
  }
@@ -2900,10 +2916,10 @@ const renderMultiSelectSubmission = Effect.fnUntraced(
2900
2916
  options.choices[index].title
2901
2917
  )
2902
2918
  const selectedText = selectedChoices.join(", ")
2903
- const leadingSymbol = annotateSymbol(figures.tick, figures.successColor)
2904
- const trailingSymbol = annotateSymbol(figures.ellipsis, figures.mutedColor)
2905
- const promptMsg = renderSelectOutput(leadingSymbol, trailingSymbol, options) ?? leadingSymbol
2906
- return promptMsg + " " + Ansi.annotate(selectedText, figures.submittedColor) + "\n"
2919
+ const leadingSymbol = annotateSymbol(figures, figures.tick, figures.successColor)
2920
+ const trailingSymbol = annotateSymbol(figures, figures.ellipsis, figures.mutedColor)
2921
+ const promptMsg = renderSelectOutput(leadingSymbol, trailingSymbol, options, figures) ?? leadingSymbol
2922
+ return promptMsg + " " + Ansi.annotate(figures.colors, selectedText, figures.submittedColor) + "\n"
2907
2923
  }
2908
2924
  )
2909
2925
 
@@ -2961,7 +2977,7 @@ const handleMultiSelectClear = <A>(options: SelectOptionsReq<A>) =>
2961
2977
  const columns = yield* terminal.columns
2962
2978
  const figures = yield* getTheme(options)
2963
2979
  const clearPrompt = Ansi.eraseLine + Ansi.cursorLeft
2964
- const promptText = renderSelectOutput(figures.prefix, figures.pointerSmall, options, { plain: true })
2980
+ const promptText = renderSelectOutput(figures.prefix, figures.pointerSmall, options, figures, { plain: true })
2965
2981
  const choicesText = renderMultiSelectChoices(state, options, figures, { plain: true })
2966
2982
  const errorText = renderMultiSelectError(state, figures.pointer, figures, { plain: true })
2967
2983
  const clearOutput = clearOutputWithError(withSelectHeader(promptText, choicesText), columns, errorText)
@@ -3055,7 +3071,7 @@ const renderNumberInput = (
3055
3071
  const annotation = Option.isSome(state.error) ?
3056
3072
  theme.errorColor :
3057
3073
  Ansi.combine(Ansi.underlined, theme.primaryColor)
3058
- return Ansi.annotate(value, annotation)
3074
+ return Ansi.annotate(theme.colors, value, annotation)
3059
3075
  }
3060
3076
 
3061
3077
  const renderNumberError = (
@@ -3071,8 +3087,8 @@ const renderNumberError = (
3071
3087
  if (renderOptions?.plain === true) {
3072
3088
  return separateSymbol(pointer, errorLines.join("\n"))
3073
3089
  }
3074
- const prefix = annotateSymbol(pointer, theme.errorColor)
3075
- const lines = Arr.map(errorLines, (str) => annotateErrorLine(str, theme.errorColor))
3090
+ const prefix = annotateSymbol(theme, pointer, theme.errorColor)
3091
+ const lines = Arr.map(errorLines, (str) => annotateErrorLine(theme, str))
3076
3092
  return Ansi.cursorSavePosition + "\n" + separateSymbol(prefix, lines.join("\n")) + Ansi.cursorRestorePosition
3077
3093
  }
3078
3094
  })
@@ -3090,13 +3106,13 @@ const renderNumberOutput = (
3090
3106
  submitted: boolean = false
3091
3107
  ) => {
3092
3108
  const value = renderNumberInput(state, submitted, theme, renderOptions)
3093
- return renderPrompt(value, options.message, leadingSymbol, trailingSymbol, renderOptions)
3109
+ return renderPrompt(value, options.message, leadingSymbol, trailingSymbol, theme, renderOptions)
3094
3110
  }
3095
3111
 
3096
3112
  const renderNumberNextFrame = Effect.fnUntraced(function*(state: NumberState, options: IntOptionsReq) {
3097
3113
  const figures = yield* getTheme(options)
3098
- const leadingSymbol = annotateSymbol(figures.prefix, figures.primaryColor)
3099
- const trailingSymbol = annotateSymbol(figures.pointerSmall, figures.mutedColor)
3114
+ const leadingSymbol = annotateSymbol(figures, figures.prefix, figures.primaryColor)
3115
+ const trailingSymbol = annotateSymbol(figures, figures.pointerSmall, figures.mutedColor)
3100
3116
  const errorMsg = renderNumberError(state, figures.pointerSmall, figures)
3101
3117
  const promptMsg = renderNumberOutput(state, leadingSymbol, trailingSymbol, options, figures)
3102
3118
  return promptMsg + errorMsg
@@ -3104,8 +3120,8 @@ const renderNumberNextFrame = Effect.fnUntraced(function*(state: NumberState, op
3104
3120
 
3105
3121
  const renderNumberSubmission = Effect.fnUntraced(function*(nextState: NumberState, options: IntOptionsReq) {
3106
3122
  const figures = yield* getTheme(options)
3107
- const leadingSymbol = annotateSymbol(figures.tick, figures.successColor)
3108
- const trailingSymbol = annotateSymbol(figures.ellipsis, figures.mutedColor)
3123
+ const leadingSymbol = annotateSymbol(figures, figures.tick, figures.successColor)
3124
+ const trailingSymbol = annotateSymbol(figures, figures.ellipsis, figures.mutedColor)
3109
3125
  const promptMsg = renderNumberOutput(nextState, leadingSymbol, trailingSymbol, options, figures, undefined, true)
3110
3126
  return promptMsg + "\n"
3111
3127
  })
@@ -3363,11 +3379,12 @@ const renderSelectOutput = <A>(
3363
3379
  leadingSymbol: string,
3364
3380
  trailingSymbol: string,
3365
3381
  options: SelectOptionsReq<A>,
3382
+ theme: Theme,
3366
3383
  renderOptions?: RenderOptions | undefined
3367
3384
  ): string | undefined =>
3368
3385
  options.message === undefined
3369
3386
  ? undefined
3370
- : renderPrompt("", options.message, leadingSymbol, trailingSymbol, renderOptions)
3387
+ : renderPrompt("", options.message, leadingSymbol, trailingSymbol, theme, renderOptions)
3371
3388
 
3372
3389
  const withSelectHeader = (header: string | undefined, body: string): string =>
3373
3390
  header === undefined ? body : header + "\n" + body
@@ -3381,10 +3398,10 @@ const renderAutoCompleteFilter = <A>(
3381
3398
  const filterValue = state.query.length === 0
3382
3399
  ? renderOptions?.plain === true
3383
3400
  ? options.filterPlaceholder
3384
- : Ansi.annotate(options.filterPlaceholder, theme.mutedColor)
3401
+ : Ansi.annotate(theme.colors, options.filterPlaceholder, theme.mutedColor)
3385
3402
  : renderOptions?.plain === true
3386
3403
  ? state.query
3387
- : Ansi.annotate(state.query, Ansi.combine(Ansi.underlined, theme.primaryColor))
3404
+ : Ansi.annotate(theme.colors, state.query, Ansi.combine(Ansi.underlined, theme.primaryColor))
3388
3405
  return `[${options.filterLabel}: ${filterValue}]`
3389
3406
  }
3390
3407
 
@@ -3397,7 +3414,7 @@ const renderAutoCompleteOutput = <A>(
3397
3414
  renderOptions?: RenderOptions | undefined
3398
3415
  ) => {
3399
3416
  const filter = renderAutoCompleteFilter(state, options, theme, renderOptions)
3400
- return renderPrompt(filter, options.message, leadingSymbol, trailingSymbol, renderOptions)
3417
+ return renderPrompt(filter, options.message, leadingSymbol, trailingSymbol, theme, renderOptions)
3401
3418
  }
3402
3419
 
3403
3420
  const renderChoicePrefix = <A>(
@@ -3421,11 +3438,11 @@ const renderChoicePrefix = <A>(
3421
3438
  if (choices[currentIndex].disabled) {
3422
3439
  const annotation = Ansi.combine(Ansi.bold, figures.mutedColor)
3423
3440
  return state === currentIndex
3424
- ? annotateSymbol(figures.pointer, annotation) + prefix
3441
+ ? annotateSymbol(figures, figures.pointer, annotation) + prefix
3425
3442
  : prefix + " ".repeat(figures.pointer.length)
3426
3443
  }
3427
3444
  return state === currentIndex
3428
- ? annotateSymbol(figures.pointer, figures.primaryColor) + prefix
3445
+ ? annotateSymbol(figures, figures.pointer, figures.primaryColor) + prefix
3429
3446
  : prefix + " ".repeat(figures.pointer.length)
3430
3447
  }
3431
3448
 
@@ -3452,11 +3469,11 @@ const renderAutoCompleteChoicePrefix = <A>(
3452
3469
  if (choice.disabled) {
3453
3470
  const annotation = Ansi.combine(Ansi.bold, figures.mutedColor)
3454
3471
  return state.index === choiceIndex
3455
- ? annotateSymbol(figures.pointer, annotation) + prefix
3472
+ ? annotateSymbol(figures, figures.pointer, annotation) + prefix
3456
3473
  : prefix + " ".repeat(figures.pointer.length)
3457
3474
  }
3458
3475
  return state.index === choiceIndex
3459
- ? annotateSymbol(figures.pointer, figures.primaryColor) + prefix
3476
+ ? annotateSymbol(figures, figures.pointer, figures.primaryColor) + prefix
3460
3477
  : prefix + " ".repeat(figures.pointer.length)
3461
3478
  }
3462
3479
 
@@ -3472,11 +3489,11 @@ const renderChoiceTitle = <A>(
3472
3489
  const title = choice.title
3473
3490
  if (isSelected) {
3474
3491
  return choice.disabled
3475
- ? Ansi.annotate(title, Ansi.combine(Ansi.underlined, theme.mutedColor))
3476
- : Ansi.annotate(title, Ansi.combine(Ansi.underlined, theme.primaryColor))
3492
+ ? Ansi.annotate(theme.colors, title, Ansi.combine(Ansi.underlined, theme.mutedColor))
3493
+ : Ansi.annotate(theme.colors, title, Ansi.combine(Ansi.underlined, theme.primaryColor))
3477
3494
  }
3478
3495
  return choice.disabled
3479
- ? Ansi.annotate(title, Ansi.combine(Ansi.strikethrough, theme.mutedColor))
3496
+ ? Ansi.annotate(theme.colors, title, Ansi.combine(Ansi.strikethrough, theme.mutedColor))
3480
3497
  : title
3481
3498
  }
3482
3499
 
@@ -3509,7 +3526,7 @@ const renderAutoCompleteChoices = <A>(
3509
3526
  if (state.filtered.length === 0) {
3510
3527
  return renderOptions?.plain === true
3511
3528
  ? options.emptyMessage
3512
- : Ansi.annotate(options.emptyMessage, figures.mutedColor)
3529
+ : Ansi.annotate(figures.colors, options.emptyMessage, figures.mutedColor)
3513
3530
  }
3514
3531
  const cursor = autoCompleteCursor(state)
3515
3532
  const toDisplay = entriesToDisplay(cursor, state.filtered.length, options.maxPerPage)
@@ -3529,9 +3546,9 @@ const renderAutoCompleteChoices = <A>(
3529
3546
  const renderSelectNextFrame = Effect.fnUntraced(function*<A>(state: SelectState, options: SelectOptionsReq<A>) {
3530
3547
  const figures = yield* getTheme(options)
3531
3548
  const choices = renderSelectChoices(state, options, figures)
3532
- const leadingSymbol = annotateSymbol(figures.prefix, figures.primaryColor)
3533
- const trailingSymbol = annotateSymbol(figures.pointerSmall, figures.mutedColor)
3534
- const promptMsg = renderSelectOutput(leadingSymbol, trailingSymbol, options)
3549
+ const leadingSymbol = annotateSymbol(figures, figures.prefix, figures.primaryColor)
3550
+ const trailingSymbol = annotateSymbol(figures, figures.pointerSmall, figures.mutedColor)
3551
+ const promptMsg = renderSelectOutput(leadingSymbol, trailingSymbol, options, figures)
3535
3552
  return Ansi.cursorHide + withSelectHeader(promptMsg, choices)
3536
3553
  })
3537
3554
 
@@ -3541,8 +3558,8 @@ const renderAutoCompleteNextFrame = Effect.fnUntraced(function*<A>(
3541
3558
  ) {
3542
3559
  const figures = yield* getTheme(options)
3543
3560
  const choices = renderAutoCompleteChoices(state, options, figures)
3544
- const leadingSymbol = annotateSymbol(figures.prefix, figures.primaryColor)
3545
- const trailingSymbol = annotateSymbol(figures.pointerSmall, figures.mutedColor)
3561
+ const leadingSymbol = annotateSymbol(figures, figures.prefix, figures.primaryColor)
3562
+ const trailingSymbol = annotateSymbol(figures, figures.pointerSmall, figures.mutedColor)
3546
3563
  const promptMsg = renderAutoCompleteOutput(state, leadingSymbol, trailingSymbol, options, figures)
3547
3564
  return Ansi.cursorHide + promptMsg + "\n" + choices
3548
3565
  })
@@ -3550,10 +3567,10 @@ const renderAutoCompleteNextFrame = Effect.fnUntraced(function*<A>(
3550
3567
  const renderSelectSubmission = Effect.fnUntraced(function*<A>(state: SelectState, options: SelectOptionsReq<A>) {
3551
3568
  const figures = yield* getTheme(options)
3552
3569
  const selected = options.choices[state].title
3553
- const leadingSymbol = annotateSymbol(figures.tick, figures.successColor)
3554
- const trailingSymbol = annotateSymbol(figures.ellipsis, figures.mutedColor)
3555
- const promptMsg = renderSelectOutput(leadingSymbol, trailingSymbol, options) ?? leadingSymbol
3556
- return promptMsg + " " + Ansi.annotate(selected, figures.submittedColor) + "\n"
3570
+ const leadingSymbol = annotateSymbol(figures, figures.tick, figures.successColor)
3571
+ const trailingSymbol = annotateSymbol(figures, figures.ellipsis, figures.mutedColor)
3572
+ const promptMsg = renderSelectOutput(leadingSymbol, trailingSymbol, options, figures) ?? leadingSymbol
3573
+ return promptMsg + " " + Ansi.annotate(figures.colors, selected, figures.submittedColor) + "\n"
3557
3574
  })
3558
3575
 
3559
3576
  const renderAutoCompleteSubmission = Effect.fnUntraced(function*<A>(
@@ -3562,10 +3579,10 @@ const renderAutoCompleteSubmission = Effect.fnUntraced(function*<A>(
3562
3579
  ) {
3563
3580
  const figures = yield* getTheme(options)
3564
3581
  const selected = options.choices[state.index].title
3565
- const leadingSymbol = annotateSymbol(figures.tick, figures.successColor)
3566
- const trailingSymbol = annotateSymbol(figures.ellipsis, figures.mutedColor)
3582
+ const leadingSymbol = annotateSymbol(figures, figures.tick, figures.successColor)
3583
+ const trailingSymbol = annotateSymbol(figures, figures.ellipsis, figures.mutedColor)
3567
3584
  const promptMsg = renderAutoCompleteOutput(state, leadingSymbol, trailingSymbol, options, figures)
3568
- return promptMsg + " " + Ansi.annotate(selected, figures.submittedColor) + "\n"
3585
+ return promptMsg + " " + Ansi.annotate(figures.colors, selected, figures.submittedColor) + "\n"
3569
3586
  })
3570
3587
 
3571
3588
  const processSelectCursorUp = <A>(state: SelectState, choices: SelectOptionsReq<A>["choices"]) => {
@@ -3651,7 +3668,7 @@ const handleSelectClear = <A>(options: SelectOptionsReq<A>) =>
3651
3668
  const columns = yield* terminal.columns
3652
3669
  const figures = yield* getTheme(options)
3653
3670
  const clearPrompt = Ansi.eraseLine + Ansi.cursorLeft
3654
- const promptText = renderSelectOutput(figures.prefix, figures.pointerSmall, options, { plain: true })
3671
+ const promptText = renderSelectOutput(figures.prefix, figures.pointerSmall, options, figures, { plain: true })
3655
3672
  const choicesText = renderSelectChoices(state, options, figures, { plain: true })
3656
3673
  const clearOutput = eraseText(withSelectHeader(promptText, choicesText), columns)
3657
3674
  return clearOutput + clearPrompt
@@ -3823,10 +3840,10 @@ const renderTextInput = (
3823
3840
  return ""
3824
3841
  }
3825
3842
  case "password": {
3826
- return annotateSymbol(theme.passwordMask.repeat(text.length), annotation)
3843
+ return annotateSymbol(theme, theme.passwordMask.repeat(text.length), annotation)
3827
3844
  }
3828
3845
  case "text": {
3829
- return Ansi.annotate(text, annotation)
3846
+ return Ansi.annotate(theme.colors, text, annotation)
3830
3847
  }
3831
3848
  }
3832
3849
  }
@@ -3844,8 +3861,8 @@ const renderTextError = (
3844
3861
  if (renderOptions?.plain === true) {
3845
3862
  return separateSymbol(pointer, errorLines.join("\n"))
3846
3863
  }
3847
- const prefix = annotateSymbol(pointer, theme.errorColor)
3848
- const lines = Arr.map(errorLines, (str) => annotateErrorLine(str, theme.errorColor))
3864
+ const prefix = annotateSymbol(theme, pointer, theme.errorColor)
3865
+ const lines = Arr.map(errorLines, (str) => annotateErrorLine(theme, str))
3849
3866
  return Ansi.cursorSavePosition + "\n" + separateSymbol(prefix, lines.join("\n")) + Ansi.cursorRestorePosition
3850
3867
  }
3851
3868
  })
@@ -3863,13 +3880,13 @@ const renderTextOutput = (
3863
3880
  submitted: boolean = false
3864
3881
  ) => {
3865
3882
  const value = renderTextInput(nextState, options, theme, submitted, renderOptions)
3866
- return renderPrompt(value, options.message, leadingSymbol, trailingSymbol, renderOptions)
3883
+ return renderPrompt(value, options.message, leadingSymbol, trailingSymbol, theme, renderOptions)
3867
3884
  }
3868
3885
 
3869
3886
  const renderTextNextFrame = Effect.fnUntraced(function*(state: TextState, options: TextOptionsReq) {
3870
3887
  const figures = yield* getTheme(options)
3871
- const leadingSymbol = annotateSymbol(figures.prefix, figures.primaryColor)
3872
- const trailingSymbol = annotateSymbol(figures.pointerSmall, figures.mutedColor)
3888
+ const leadingSymbol = annotateSymbol(figures, figures.prefix, figures.primaryColor)
3889
+ const trailingSymbol = annotateSymbol(figures, figures.pointerSmall, figures.mutedColor)
3873
3890
  const promptMsg = renderTextOutput(state, leadingSymbol, trailingSymbol, options, figures)
3874
3891
  const errorMsg = renderTextError(state, figures.pointerSmall, figures)
3875
3892
  const cursorWidth = options.type === "password" ? figures.passwordMask.length : 1
@@ -3879,8 +3896,8 @@ const renderTextNextFrame = Effect.fnUntraced(function*(state: TextState, option
3879
3896
 
3880
3897
  const renderTextSubmission = Effect.fnUntraced(function*(state: TextState, options: TextOptionsReq) {
3881
3898
  const figures = yield* getTheme(options)
3882
- const leadingSymbol = annotateSymbol(figures.tick, figures.successColor)
3883
- const trailingSymbol = annotateSymbol(figures.ellipsis, figures.mutedColor)
3899
+ const leadingSymbol = annotateSymbol(figures, figures.tick, figures.successColor)
3900
+ const trailingSymbol = annotateSymbol(figures, figures.ellipsis, figures.mutedColor)
3884
3901
  const promptMsg = renderTextOutput(state, leadingSymbol, trailingSymbol, options, figures, undefined, true)
3885
3902
  return promptMsg + "\n"
3886
3903
  })
@@ -4073,7 +4090,9 @@ const handleToggleClear = Effect.fnUntraced(function*(options: ToggleOptionsReq)
4073
4090
  const figures = yield* getTheme(options)
4074
4091
  const clearPrompt = Ansi.eraseLine + Ansi.cursorLeft
4075
4092
  const toggleText = options.active + " " + separateSymbol(figures.toggleSeparator, options.inactive)
4076
- const promptText = renderPrompt(toggleText, options.message, figures.prefix, figures.pointerSmall, { plain: true })
4093
+ const promptText = renderPrompt(toggleText, options.message, figures.prefix, figures.pointerSmall, figures, {
4094
+ plain: true
4095
+ })
4077
4096
  const clearOutput = eraseText(promptText, columns)
4078
4097
  return clearOutput + clearPrompt
4079
4098
  })
@@ -4084,44 +4103,35 @@ const renderToggle = (
4084
4103
  theme: Theme,
4085
4104
  submitted: boolean = false
4086
4105
  ) => {
4087
- const separator = annotateSymbol(theme.toggleSeparator, theme.mutedColor)
4106
+ const separator = annotateSymbol(theme, theme.toggleSeparator, theme.mutedColor)
4088
4107
  const selectedAnnotation = Ansi.combine(
4089
4108
  Ansi.underlined,
4090
4109
  submitted ? theme.submittedColor : theme.primaryColor
4091
4110
  )
4092
4111
  const inactive = value
4093
4112
  ? options.inactive
4094
- : Ansi.annotate(options.inactive, selectedAnnotation)
4113
+ : Ansi.annotate(theme.colors, options.inactive, selectedAnnotation)
4095
4114
  const active = value
4096
- ? Ansi.annotate(options.active, selectedAnnotation)
4115
+ ? Ansi.annotate(theme.colors, options.active, selectedAnnotation)
4097
4116
  : options.active
4098
4117
  return active + " " + separateSymbol(separator, inactive)
4099
4118
  }
4100
4119
 
4101
- const renderToggleOutput = (
4102
- toggle: string,
4103
- leadingSymbol: string,
4104
- trailingSymbol: string,
4105
- options: ToggleOptionsReq
4106
- ) => {
4107
- return renderPrompt(toggle, options.message, leadingSymbol, trailingSymbol)
4108
- }
4109
-
4110
4120
  const renderToggleNextFrame = Effect.fnUntraced(function*(state: ToggleState, options: ToggleOptionsReq) {
4111
4121
  const figures = yield* getTheme(options)
4112
- const leadingSymbol = annotateSymbol(figures.prefix, figures.primaryColor)
4113
- const trailingSymbol = annotateSymbol(figures.pointerSmall, figures.mutedColor)
4122
+ const leadingSymbol = annotateSymbol(figures, figures.prefix, figures.primaryColor)
4123
+ const trailingSymbol = annotateSymbol(figures, figures.pointerSmall, figures.mutedColor)
4114
4124
  const toggle = renderToggle(state, options, figures)
4115
- const promptMsg = renderToggleOutput(toggle, leadingSymbol, trailingSymbol, options)
4125
+ const promptMsg = renderPrompt(toggle, options.message, leadingSymbol, trailingSymbol, figures)
4116
4126
  return Ansi.cursorHide + promptMsg
4117
4127
  })
4118
4128
 
4119
4129
  const renderToggleSubmission = Effect.fnUntraced(function*(value: boolean, options: ToggleOptionsReq) {
4120
4130
  const figures = yield* getTheme(options)
4121
- const leadingSymbol = annotateSymbol(figures.tick, figures.successColor)
4122
- const trailingSymbol = annotateSymbol(figures.ellipsis, figures.mutedColor)
4131
+ const leadingSymbol = annotateSymbol(figures, figures.tick, figures.successColor)
4132
+ const trailingSymbol = annotateSymbol(figures, figures.ellipsis, figures.mutedColor)
4123
4133
  const toggle = renderToggle(value, options, figures, true)
4124
- const promptMsg = renderToggleOutput(toggle, leadingSymbol, trailingSymbol, options)
4134
+ const promptMsg = renderPrompt(toggle, options.message, leadingSymbol, trailingSymbol, figures)
4125
4135
  return promptMsg + "\n"
4126
4136
  })
4127
4137