effect 2.4.18 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (688) hide show
  1. package/Array/package.json +6 -0
  2. package/FiberHandle/package.json +6 -0
  3. package/Readable/package.json +6 -0
  4. package/Record/package.json +6 -0
  5. package/RegExp/package.json +6 -0
  6. package/Subscribable/package.json +6 -0
  7. package/dist/cjs/{ReadonlyArray.js → Array.js} +46 -23
  8. package/dist/cjs/Array.js.map +1 -0
  9. package/dist/cjs/Brand.js +2 -2
  10. package/dist/cjs/Brand.js.map +1 -1
  11. package/dist/cjs/Channel.js +4 -8
  12. package/dist/cjs/Channel.js.map +1 -1
  13. package/dist/cjs/Chunk.js +5 -1
  14. package/dist/cjs/Chunk.js.map +1 -1
  15. package/dist/cjs/ConfigError.js.map +1 -1
  16. package/dist/cjs/Cron.js +13 -13
  17. package/dist/cjs/Cron.js.map +1 -1
  18. package/dist/cjs/Duration.js +39 -2
  19. package/dist/cjs/Duration.js.map +1 -1
  20. package/dist/cjs/Effect.js +14 -10
  21. package/dist/cjs/Effect.js.map +1 -1
  22. package/dist/cjs/Either.js +4 -1
  23. package/dist/cjs/Either.js.map +1 -1
  24. package/dist/cjs/ExecutionStrategy.js.map +1 -1
  25. package/dist/cjs/Exit.js +3 -9
  26. package/dist/cjs/Exit.js.map +1 -1
  27. package/dist/cjs/Fiber.js +2 -8
  28. package/dist/cjs/Fiber.js.map +1 -1
  29. package/dist/cjs/FiberHandle.js +288 -0
  30. package/dist/cjs/FiberHandle.js.map +1 -0
  31. package/dist/cjs/FiberMap.js +86 -27
  32. package/dist/cjs/FiberMap.js.map +1 -1
  33. package/dist/cjs/FiberRefs.js.map +1 -1
  34. package/dist/cjs/FiberSet.js +51 -15
  35. package/dist/cjs/FiberSet.js.map +1 -1
  36. package/dist/cjs/HashMap.js.map +1 -1
  37. package/dist/cjs/HashSet.js.map +1 -1
  38. package/dist/cjs/Iterable.js +40 -5
  39. package/dist/cjs/Iterable.js.map +1 -1
  40. package/dist/cjs/Layer.js.map +1 -1
  41. package/dist/cjs/List.js +8 -7
  42. package/dist/cjs/List.js.map +1 -1
  43. package/dist/cjs/Metric.js +3 -1
  44. package/dist/cjs/Metric.js.map +1 -1
  45. package/dist/cjs/MetricKey.js.map +1 -1
  46. package/dist/cjs/MetricKeyType.js.map +1 -1
  47. package/dist/cjs/MutableHashMap.js +0 -4
  48. package/dist/cjs/MutableHashMap.js.map +1 -1
  49. package/dist/cjs/Option.js +3 -6
  50. package/dist/cjs/Option.js.map +1 -1
  51. package/dist/cjs/Readable.js +79 -0
  52. package/dist/cjs/Readable.js.map +1 -0
  53. package/dist/cjs/{ReadonlyRecord.js → Record.js} +29 -29
  54. package/dist/cjs/Record.js.map +1 -0
  55. package/dist/cjs/RegExp.js +24 -0
  56. package/dist/cjs/RegExp.js.map +1 -0
  57. package/dist/cjs/STM.js +4 -10
  58. package/dist/cjs/STM.js.map +1 -1
  59. package/dist/cjs/Schedule.js +2 -2
  60. package/dist/cjs/Schedule.js.map +1 -1
  61. package/dist/cjs/ScopedCache.js.map +1 -1
  62. package/dist/cjs/Stream.js +3 -9
  63. package/dist/cjs/Stream.js.map +1 -1
  64. package/dist/cjs/StreamHaltStrategy.js +2 -0
  65. package/dist/cjs/StreamHaltStrategy.js.map +1 -1
  66. package/dist/cjs/String.js +44 -2
  67. package/dist/cjs/String.js.map +1 -1
  68. package/dist/cjs/Subscribable.js +91 -0
  69. package/dist/cjs/Subscribable.js.map +1 -0
  70. package/dist/cjs/SubscriptionRef.js.map +1 -1
  71. package/dist/cjs/TestAnnotation.js +2 -1
  72. package/dist/cjs/TestAnnotation.js.map +1 -1
  73. package/dist/cjs/TestAnnotations.js +1 -1
  74. package/dist/cjs/TestAnnotations.js.map +1 -1
  75. package/dist/cjs/TestClock.js +3 -3
  76. package/dist/cjs/TestClock.js.map +1 -1
  77. package/dist/cjs/Tracer.js.map +1 -1
  78. package/dist/cjs/index.js +14 -6
  79. package/dist/cjs/index.js.map +1 -1
  80. package/dist/cjs/internal/{readonlyArray.js → array.js} +1 -1
  81. package/dist/cjs/internal/array.js.map +1 -0
  82. package/dist/cjs/internal/cache.js +3 -3
  83. package/dist/cjs/internal/cache.js.map +1 -1
  84. package/dist/cjs/internal/cause.js +6 -5
  85. package/dist/cjs/internal/cause.js.map +1 -1
  86. package/dist/cjs/internal/channel/channelExecutor.js +15 -15
  87. package/dist/cjs/internal/channel/channelExecutor.js.map +1 -1
  88. package/dist/cjs/internal/channel/channelState.js +1 -1
  89. package/dist/cjs/internal/channel/channelState.js.map +1 -1
  90. package/dist/cjs/internal/channel/singleProducerAsyncInput.js +1 -1
  91. package/dist/cjs/internal/channel/singleProducerAsyncInput.js.map +1 -1
  92. package/dist/cjs/internal/channel.js +10 -10
  93. package/dist/cjs/internal/channel.js.map +1 -1
  94. package/dist/cjs/internal/clock.js +2 -2
  95. package/dist/cjs/internal/clock.js.map +1 -1
  96. package/dist/cjs/internal/configError.js +20 -19
  97. package/dist/cjs/internal/configError.js.map +1 -1
  98. package/dist/cjs/internal/configProvider/pathPatch.js +1 -1
  99. package/dist/cjs/internal/configProvider/pathPatch.js.map +1 -1
  100. package/dist/cjs/internal/configProvider.js +48 -49
  101. package/dist/cjs/internal/configProvider.js.map +1 -1
  102. package/dist/cjs/internal/core-effect.js +68 -40
  103. package/dist/cjs/internal/core-effect.js.map +1 -1
  104. package/dist/cjs/internal/core-stream.js +2 -3
  105. package/dist/cjs/internal/core-stream.js.map +1 -1
  106. package/dist/cjs/internal/core.js +41 -114
  107. package/dist/cjs/internal/core.js.map +1 -1
  108. package/dist/cjs/internal/dataSource.js +19 -2
  109. package/dist/cjs/internal/dataSource.js.map +1 -1
  110. package/dist/cjs/internal/differ/readonlyArrayPatch.js +6 -6
  111. package/dist/cjs/internal/differ/readonlyArrayPatch.js.map +1 -1
  112. package/dist/cjs/internal/effect/circular.js +6 -1
  113. package/dist/cjs/internal/effect/circular.js.map +1 -1
  114. package/dist/cjs/internal/errors.js +13 -0
  115. package/dist/cjs/internal/errors.js.map +1 -0
  116. package/dist/cjs/internal/executionStrategy.js +4 -4
  117. package/dist/cjs/internal/executionStrategy.js.map +1 -1
  118. package/dist/cjs/internal/fiber.js +5 -6
  119. package/dist/cjs/internal/fiber.js.map +1 -1
  120. package/dist/cjs/internal/fiberRefs/patch.js +1 -1
  121. package/dist/cjs/internal/fiberRefs/patch.js.map +1 -1
  122. package/dist/cjs/internal/fiberRefs.js +1 -1
  123. package/dist/cjs/internal/fiberRefs.js.map +1 -1
  124. package/dist/cjs/internal/fiberRuntime.js +106 -66
  125. package/dist/cjs/internal/fiberRuntime.js.map +1 -1
  126. package/dist/cjs/internal/groupBy.js +3 -3
  127. package/dist/cjs/internal/groupBy.js.map +1 -1
  128. package/dist/cjs/internal/hashMap.js +1 -1
  129. package/dist/cjs/internal/hashMap.js.map +1 -1
  130. package/dist/cjs/internal/hashSet.js.map +1 -1
  131. package/dist/cjs/internal/layer/circular.js.map +1 -1
  132. package/dist/cjs/internal/layer.js +5 -5
  133. package/dist/cjs/internal/layer.js.map +1 -1
  134. package/dist/cjs/internal/logger.js +28 -8
  135. package/dist/cjs/internal/logger.js.map +1 -1
  136. package/dist/cjs/internal/managedRuntime.js +1 -1
  137. package/dist/cjs/internal/managedRuntime.js.map +1 -1
  138. package/dist/cjs/internal/matcher.js +5 -4
  139. package/dist/cjs/internal/matcher.js.map +1 -1
  140. package/dist/cjs/internal/metric/boundaries.js +4 -4
  141. package/dist/cjs/internal/metric/boundaries.js.map +1 -1
  142. package/dist/cjs/internal/metric/hook.js +20 -17
  143. package/dist/cjs/internal/metric/hook.js.map +1 -1
  144. package/dist/cjs/internal/metric/key.js +4 -4
  145. package/dist/cjs/internal/metric/key.js.map +1 -1
  146. package/dist/cjs/internal/metric/keyType.js +6 -1
  147. package/dist/cjs/internal/metric/keyType.js.map +1 -1
  148. package/dist/cjs/internal/metric/state.js +4 -4
  149. package/dist/cjs/internal/metric/state.js.map +1 -1
  150. package/dist/cjs/internal/metric.js +4 -4
  151. package/dist/cjs/internal/metric.js.map +1 -1
  152. package/dist/cjs/internal/pool.js +11 -11
  153. package/dist/cjs/internal/pool.js.map +1 -1
  154. package/dist/cjs/internal/pubsub.js +5 -5
  155. package/dist/cjs/internal/pubsub.js.map +1 -1
  156. package/dist/cjs/internal/query.js +2 -2
  157. package/dist/cjs/internal/query.js.map +1 -1
  158. package/dist/cjs/internal/queue.js +9 -9
  159. package/dist/cjs/internal/queue.js.map +1 -1
  160. package/dist/cjs/internal/rateLimiter.js +1 -1
  161. package/dist/cjs/internal/rateLimiter.js.map +1 -1
  162. package/dist/cjs/internal/redBlackTree/iterator.js +2 -2
  163. package/dist/cjs/internal/redBlackTree/iterator.js.map +1 -1
  164. package/dist/cjs/internal/ref.js +6 -1
  165. package/dist/cjs/internal/ref.js.map +1 -1
  166. package/dist/cjs/internal/reloadable.js +1 -1
  167. package/dist/cjs/internal/reloadable.js.map +1 -1
  168. package/dist/cjs/internal/runtime.js +4 -4
  169. package/dist/cjs/internal/runtime.js.map +1 -1
  170. package/dist/cjs/internal/schedule/intervals.js +2 -1
  171. package/dist/cjs/internal/schedule/intervals.js.map +1 -1
  172. package/dist/cjs/internal/schedule.js +5 -5
  173. package/dist/cjs/internal/schedule.js.map +1 -1
  174. package/dist/cjs/internal/scopedCache.js +7 -7
  175. package/dist/cjs/internal/scopedCache.js.map +1 -1
  176. package/dist/cjs/internal/scopedRef.js +4 -4
  177. package/dist/cjs/internal/scopedRef.js.map +1 -1
  178. package/dist/cjs/internal/secret.js +2 -2
  179. package/dist/cjs/internal/secret.js.map +1 -1
  180. package/dist/cjs/internal/sink.js +10 -10
  181. package/dist/cjs/internal/sink.js.map +1 -1
  182. package/dist/cjs/internal/stm/stm/tExit.js +2 -4
  183. package/dist/cjs/internal/stm/stm/tExit.js.map +1 -1
  184. package/dist/cjs/internal/stm/stm.js +11 -11
  185. package/dist/cjs/internal/stm/stm.js.map +1 -1
  186. package/dist/cjs/internal/stm/tMap.js +3 -3
  187. package/dist/cjs/internal/stm/tMap.js.map +1 -1
  188. package/dist/cjs/internal/stm/tPriorityQueue.js +11 -11
  189. package/dist/cjs/internal/stm/tPriorityQueue.js.map +1 -1
  190. package/dist/cjs/internal/stm/tPubSub.js +3 -3
  191. package/dist/cjs/internal/stm/tPubSub.js.map +1 -1
  192. package/dist/cjs/internal/stm/tQueue.js +3 -3
  193. package/dist/cjs/internal/stm/tQueue.js.map +1 -1
  194. package/dist/cjs/internal/stm/tSet.js +1 -1
  195. package/dist/cjs/internal/stm/tSet.js.map +1 -1
  196. package/dist/cjs/internal/stream/haltStrategy.js +5 -5
  197. package/dist/cjs/internal/stream/haltStrategy.js.map +1 -1
  198. package/dist/cjs/internal/stream.js +84 -85
  199. package/dist/cjs/internal/stream.js.map +1 -1
  200. package/dist/cjs/internal/subscriptionRef.js +8 -0
  201. package/dist/cjs/internal/subscriptionRef.js.map +1 -1
  202. package/dist/cjs/internal/supervisor.js +1 -1
  203. package/dist/cjs/internal/supervisor.js.map +1 -1
  204. package/dist/cjs/internal/take.js +1 -1
  205. package/dist/cjs/internal/take.js.map +1 -1
  206. package/dist/cjs/internal/tracer.js.map +1 -1
  207. package/dist/cjs/internal/trie.js +1 -1
  208. package/dist/cjs/internal/trie.js.map +1 -1
  209. package/dist/cjs/internal/version.js +1 -1
  210. package/dist/cjs/internal/version.js.map +1 -1
  211. package/dist/dts/{ReadonlyArray.d.ts → Array.d.ts} +39 -18
  212. package/dist/dts/Array.d.ts.map +1 -0
  213. package/dist/dts/BigDecimal.d.ts.map +1 -1
  214. package/dist/dts/BigInt.d.ts.map +1 -1
  215. package/dist/dts/Brand.d.ts +1 -19
  216. package/dist/dts/Brand.d.ts.map +1 -1
  217. package/dist/dts/Cache.d.ts +10 -10
  218. package/dist/dts/Cache.d.ts.map +1 -1
  219. package/dist/dts/Cause.d.ts +1 -1
  220. package/dist/dts/Cause.d.ts.map +1 -1
  221. package/dist/dts/Channel.d.ts +6 -4
  222. package/dist/dts/Channel.d.ts.map +1 -1
  223. package/dist/dts/Chunk.d.ts +1 -4
  224. package/dist/dts/Chunk.d.ts.map +1 -1
  225. package/dist/dts/ConfigError.d.ts +7 -6
  226. package/dist/dts/ConfigError.d.ts.map +1 -1
  227. package/dist/dts/Cron.d.ts +0 -5
  228. package/dist/dts/Cron.d.ts.map +1 -1
  229. package/dist/dts/Duration.d.ts +16 -0
  230. package/dist/dts/Duration.d.ts.map +1 -1
  231. package/dist/dts/Effect.d.ts +38 -33
  232. package/dist/dts/Effect.d.ts.map +1 -1
  233. package/dist/dts/Either.d.ts +5 -2
  234. package/dist/dts/Either.d.ts.map +1 -1
  235. package/dist/dts/Encoding.d.ts.map +1 -1
  236. package/dist/dts/Equivalence.d.ts.map +1 -1
  237. package/dist/dts/ExecutionStrategy.d.ts +10 -2
  238. package/dist/dts/ExecutionStrategy.d.ts.map +1 -1
  239. package/dist/dts/Exit.d.ts +4 -3
  240. package/dist/dts/Exit.d.ts.map +1 -1
  241. package/dist/dts/Fiber.d.ts +4 -2
  242. package/dist/dts/Fiber.d.ts.map +1 -1
  243. package/dist/dts/FiberHandle.d.ts +189 -0
  244. package/dist/dts/FiberHandle.d.ts.map +1 -0
  245. package/dist/dts/FiberMap.d.ts +48 -12
  246. package/dist/dts/FiberMap.d.ts.map +1 -1
  247. package/dist/dts/FiberRefs.d.ts +1 -1
  248. package/dist/dts/FiberRefs.d.ts.map +1 -1
  249. package/dist/dts/FiberSet.d.ts +9 -5
  250. package/dist/dts/FiberSet.d.ts.map +1 -1
  251. package/dist/dts/Function.d.ts.map +1 -1
  252. package/dist/dts/GroupBy.d.ts +1 -1
  253. package/dist/dts/GroupBy.d.ts.map +1 -1
  254. package/dist/dts/HashMap.d.ts +0 -1
  255. package/dist/dts/HashMap.d.ts.map +1 -1
  256. package/dist/dts/HashSet.d.ts +0 -1
  257. package/dist/dts/HashSet.d.ts.map +1 -1
  258. package/dist/dts/Iterable.d.ts +12 -5
  259. package/dist/dts/Iterable.d.ts.map +1 -1
  260. package/dist/dts/Layer.d.ts +6 -6
  261. package/dist/dts/Layer.d.ts.map +1 -1
  262. package/dist/dts/List.d.ts +0 -11
  263. package/dist/dts/List.d.ts.map +1 -1
  264. package/dist/dts/Logger.d.ts +2 -2
  265. package/dist/dts/Logger.d.ts.map +1 -1
  266. package/dist/dts/Metric.d.ts +7 -2
  267. package/dist/dts/Metric.d.ts.map +1 -1
  268. package/dist/dts/MetricKey.d.ts +4 -1
  269. package/dist/dts/MetricKey.d.ts.map +1 -1
  270. package/dist/dts/MetricKeyType.d.ts +4 -1
  271. package/dist/dts/MetricKeyType.d.ts.map +1 -1
  272. package/dist/dts/MutableHashMap.d.ts.map +1 -1
  273. package/dist/dts/Option.d.ts +5 -3
  274. package/dist/dts/Option.d.ts.map +1 -1
  275. package/dist/dts/Order.d.ts.map +1 -1
  276. package/dist/dts/Readable.d.ts +55 -0
  277. package/dist/dts/Readable.d.ts.map +1 -0
  278. package/dist/dts/{ReadonlyRecord.d.ts → Record.d.ts} +29 -30
  279. package/dist/dts/Record.d.ts.map +1 -0
  280. package/dist/dts/Ref.d.ts +2 -2
  281. package/dist/dts/Ref.d.ts.map +1 -1
  282. package/dist/dts/RegExp.d.ts +17 -0
  283. package/dist/dts/RegExp.d.ts.map +1 -0
  284. package/dist/dts/Request.d.ts +1 -1
  285. package/dist/dts/Request.d.ts.map +1 -1
  286. package/dist/dts/RequestResolver.d.ts +2 -2
  287. package/dist/dts/RequestResolver.d.ts.map +1 -1
  288. package/dist/dts/STM.d.ts +6 -4
  289. package/dist/dts/STM.d.ts.map +1 -1
  290. package/dist/dts/Schedule.d.ts +1 -1
  291. package/dist/dts/Scheduler.d.ts.map +1 -1
  292. package/dist/dts/ScopedCache.d.ts +9 -9
  293. package/dist/dts/ScopedCache.d.ts.map +1 -1
  294. package/dist/dts/SortedMap.d.ts.map +1 -1
  295. package/dist/dts/SortedSet.d.ts +1 -1
  296. package/dist/dts/SortedSet.d.ts.map +1 -1
  297. package/dist/dts/Stream.d.ts +8 -6
  298. package/dist/dts/Stream.d.ts.map +1 -1
  299. package/dist/dts/StreamHaltStrategy.d.ts +14 -2
  300. package/dist/dts/StreamHaltStrategy.d.ts.map +1 -1
  301. package/dist/dts/String.d.ts +25 -1
  302. package/dist/dts/String.d.ts.map +1 -1
  303. package/dist/dts/Subscribable.d.ts +59 -0
  304. package/dist/dts/Subscribable.d.ts.map +1 -0
  305. package/dist/dts/SubscriptionRef.d.ts +2 -2
  306. package/dist/dts/SubscriptionRef.d.ts.map +1 -1
  307. package/dist/dts/TestAnnotation.d.ts.map +1 -1
  308. package/dist/dts/TestAnnotationMap.d.ts.map +1 -1
  309. package/dist/dts/TestAnnotations.d.ts +0 -3
  310. package/dist/dts/TestAnnotations.d.ts.map +1 -1
  311. package/dist/dts/TestClock.d.ts.map +1 -1
  312. package/dist/dts/TestLive.d.ts.map +1 -1
  313. package/dist/dts/TestServices.d.ts.map +1 -1
  314. package/dist/dts/TestSized.d.ts.map +1 -1
  315. package/dist/dts/Tracer.d.ts +12 -5
  316. package/dist/dts/Tracer.d.ts.map +1 -1
  317. package/dist/dts/Trie.d.ts +1 -1
  318. package/dist/dts/Trie.d.ts.map +1 -1
  319. package/dist/dts/Types.d.ts +0 -7
  320. package/dist/dts/Types.d.ts.map +1 -1
  321. package/dist/dts/index.d.ts +22 -4
  322. package/dist/dts/index.d.ts.map +1 -1
  323. package/dist/dts/internal/array.d.ts +5 -0
  324. package/dist/dts/internal/array.d.ts.map +1 -0
  325. package/dist/dts/internal/core-stream.d.ts +4 -0
  326. package/dist/dts/internal/core-stream.d.ts.map +1 -1
  327. package/dist/dts/internal/core.d.ts +3 -1
  328. package/dist/dts/internal/core.d.ts.map +1 -1
  329. package/dist/dts/internal/errors.d.ts +5 -0
  330. package/dist/dts/internal/errors.d.ts.map +1 -0
  331. package/dist/dts/internal/fiber.d.ts +5 -1
  332. package/dist/dts/internal/fiber.d.ts.map +1 -1
  333. package/dist/dts/internal/hashMap.d.ts.map +1 -1
  334. package/dist/dts/internal/logger.d.ts.map +1 -1
  335. package/dist/dts/internal/metric/keyType.d.ts +3 -1
  336. package/dist/dts/internal/metric/keyType.d.ts.map +1 -1
  337. package/dist/dts/internal/metric/state.d.ts.map +1 -1
  338. package/dist/dts/internal/random.d.ts.map +1 -1
  339. package/dist/dts/internal/runtimeFlags.d.ts.map +1 -1
  340. package/dist/dts/internal/stm/stm/tExit.d.ts +4 -1
  341. package/dist/dts/internal/stm/stm/tExit.d.ts.map +1 -1
  342. package/dist/dts/internal/stm/stm.d.ts +3 -0
  343. package/dist/dts/internal/stm/stm.d.ts.map +1 -1
  344. package/dist/dts/internal/stream.d.ts +5 -1
  345. package/dist/dts/internal/stream.d.ts.map +1 -1
  346. package/dist/esm/{ReadonlyArray.js → Array.js} +42 -20
  347. package/dist/esm/Array.js.map +1 -0
  348. package/dist/esm/Brand.js +2 -2
  349. package/dist/esm/Brand.js.map +1 -1
  350. package/dist/esm/Channel.js +4 -2
  351. package/dist/esm/Channel.js.map +1 -1
  352. package/dist/esm/Chunk.js +4 -1
  353. package/dist/esm/Chunk.js.map +1 -1
  354. package/dist/esm/ConfigError.js.map +1 -1
  355. package/dist/esm/Cron.js +13 -13
  356. package/dist/esm/Cron.js.map +1 -1
  357. package/dist/esm/Duration.js +38 -1
  358. package/dist/esm/Duration.js.map +1 -1
  359. package/dist/esm/Effect.js +11 -2
  360. package/dist/esm/Effect.js.map +1 -1
  361. package/dist/esm/Either.js +4 -1
  362. package/dist/esm/Either.js.map +1 -1
  363. package/dist/esm/ExecutionStrategy.js.map +1 -1
  364. package/dist/esm/Exit.js +4 -2
  365. package/dist/esm/Exit.js.map +1 -1
  366. package/dist/esm/Fiber.js +3 -1
  367. package/dist/esm/Fiber.js.map +1 -1
  368. package/dist/esm/FiberHandle.js +247 -0
  369. package/dist/esm/FiberHandle.js.map +1 -0
  370. package/dist/esm/FiberMap.js +85 -26
  371. package/dist/esm/FiberMap.js.map +1 -1
  372. package/dist/esm/FiberRefs.js.map +1 -1
  373. package/dist/esm/FiberSet.js +51 -15
  374. package/dist/esm/FiberSet.js.map +1 -1
  375. package/dist/esm/HashMap.js.map +1 -1
  376. package/dist/esm/HashSet.js.map +1 -1
  377. package/dist/esm/Iterable.js +39 -4
  378. package/dist/esm/Iterable.js.map +1 -1
  379. package/dist/esm/Layer.js.map +1 -1
  380. package/dist/esm/List.js +7 -6
  381. package/dist/esm/List.js.map +1 -1
  382. package/dist/esm/Metric.js +3 -1
  383. package/dist/esm/Metric.js.map +1 -1
  384. package/dist/esm/MetricKey.js.map +1 -1
  385. package/dist/esm/MetricKeyType.js.map +1 -1
  386. package/dist/esm/MutableHashMap.js +0 -3
  387. package/dist/esm/MutableHashMap.js.map +1 -1
  388. package/dist/esm/Option.js +4 -2
  389. package/dist/esm/Option.js.map +1 -1
  390. package/dist/esm/Readable.js +45 -0
  391. package/dist/esm/Readable.js.map +1 -0
  392. package/dist/esm/{ReadonlyRecord.js → Record.js} +29 -29
  393. package/dist/esm/Record.js.map +1 -0
  394. package/dist/esm/RegExp.js +17 -0
  395. package/dist/esm/RegExp.js.map +1 -0
  396. package/dist/esm/STM.js +5 -3
  397. package/dist/esm/STM.js.map +1 -1
  398. package/dist/esm/Schedule.js +1 -1
  399. package/dist/esm/Schedule.js.map +1 -1
  400. package/dist/esm/ScopedCache.js.map +1 -1
  401. package/dist/esm/Stream.js +5 -3
  402. package/dist/esm/Stream.js.map +1 -1
  403. package/dist/esm/StreamHaltStrategy.js +2 -0
  404. package/dist/esm/StreamHaltStrategy.js.map +1 -1
  405. package/dist/esm/String.js +37 -1
  406. package/dist/esm/String.js.map +1 -1
  407. package/dist/esm/Subscribable.js +56 -0
  408. package/dist/esm/Subscribable.js.map +1 -0
  409. package/dist/esm/SubscriptionRef.js.map +1 -1
  410. package/dist/esm/TestAnnotation.js +2 -1
  411. package/dist/esm/TestAnnotation.js.map +1 -1
  412. package/dist/esm/TestAnnotations.js +1 -1
  413. package/dist/esm/TestAnnotations.js.map +1 -1
  414. package/dist/esm/TestClock.js +3 -3
  415. package/dist/esm/TestClock.js.map +1 -1
  416. package/dist/esm/Tracer.js.map +1 -1
  417. package/dist/esm/index.js +22 -4
  418. package/dist/esm/index.js.map +1 -1
  419. package/dist/esm/internal/{readonlyArray.js → array.js} +1 -1
  420. package/dist/esm/internal/array.js.map +1 -0
  421. package/dist/esm/internal/cache.js +3 -3
  422. package/dist/esm/internal/cache.js.map +1 -1
  423. package/dist/esm/internal/cause.js +6 -5
  424. package/dist/esm/internal/cause.js.map +1 -1
  425. package/dist/esm/internal/channel/channelExecutor.js +15 -15
  426. package/dist/esm/internal/channel/channelExecutor.js.map +1 -1
  427. package/dist/esm/internal/channel/channelState.js +1 -1
  428. package/dist/esm/internal/channel/channelState.js.map +1 -1
  429. package/dist/esm/internal/channel/singleProducerAsyncInput.js +1 -1
  430. package/dist/esm/internal/channel/singleProducerAsyncInput.js.map +1 -1
  431. package/dist/esm/internal/channel.js +8 -8
  432. package/dist/esm/internal/channel.js.map +1 -1
  433. package/dist/esm/internal/clock.js +2 -2
  434. package/dist/esm/internal/clock.js.map +1 -1
  435. package/dist/esm/internal/configError.js +20 -19
  436. package/dist/esm/internal/configError.js.map +1 -1
  437. package/dist/esm/internal/configProvider/pathPatch.js +1 -1
  438. package/dist/esm/internal/configProvider/pathPatch.js.map +1 -1
  439. package/dist/esm/internal/configProvider.js +48 -49
  440. package/dist/esm/internal/configProvider.js.map +1 -1
  441. package/dist/esm/internal/core-effect.js +64 -38
  442. package/dist/esm/internal/core-effect.js.map +1 -1
  443. package/dist/esm/internal/core-stream.js +3 -2
  444. package/dist/esm/internal/core-stream.js.map +1 -1
  445. package/dist/esm/internal/core.js +37 -108
  446. package/dist/esm/internal/core.js.map +1 -1
  447. package/dist/esm/internal/dataSource.js +19 -2
  448. package/dist/esm/internal/dataSource.js.map +1 -1
  449. package/dist/esm/internal/differ/readonlyArrayPatch.js +6 -6
  450. package/dist/esm/internal/differ/readonlyArrayPatch.js.map +1 -1
  451. package/dist/esm/internal/effect/circular.js +6 -1
  452. package/dist/esm/internal/effect/circular.js.map +1 -1
  453. package/dist/esm/internal/errors.js +6 -0
  454. package/dist/esm/internal/errors.js.map +1 -0
  455. package/dist/esm/internal/executionStrategy.js +4 -4
  456. package/dist/esm/internal/executionStrategy.js.map +1 -1
  457. package/dist/esm/internal/fiber.js +6 -5
  458. package/dist/esm/internal/fiber.js.map +1 -1
  459. package/dist/esm/internal/fiberRefs/patch.js +1 -1
  460. package/dist/esm/internal/fiberRefs/patch.js.map +1 -1
  461. package/dist/esm/internal/fiberRefs.js +1 -1
  462. package/dist/esm/internal/fiberRefs.js.map +1 -1
  463. package/dist/esm/internal/fiberRuntime.js +104 -63
  464. package/dist/esm/internal/fiberRuntime.js.map +1 -1
  465. package/dist/esm/internal/groupBy.js +3 -3
  466. package/dist/esm/internal/groupBy.js.map +1 -1
  467. package/dist/esm/internal/hashMap.js +1 -1
  468. package/dist/esm/internal/hashMap.js.map +1 -1
  469. package/dist/esm/internal/hashSet.js.map +1 -1
  470. package/dist/esm/internal/layer/circular.js.map +1 -1
  471. package/dist/esm/internal/layer.js +5 -5
  472. package/dist/esm/internal/layer.js.map +1 -1
  473. package/dist/esm/internal/logger.js +28 -8
  474. package/dist/esm/internal/logger.js.map +1 -1
  475. package/dist/esm/internal/managedRuntime.js +1 -1
  476. package/dist/esm/internal/managedRuntime.js.map +1 -1
  477. package/dist/esm/internal/matcher.js +4 -3
  478. package/dist/esm/internal/matcher.js.map +1 -1
  479. package/dist/esm/internal/metric/boundaries.js +4 -4
  480. package/dist/esm/internal/metric/boundaries.js.map +1 -1
  481. package/dist/esm/internal/metric/hook.js +20 -17
  482. package/dist/esm/internal/metric/hook.js.map +1 -1
  483. package/dist/esm/internal/metric/key.js +4 -4
  484. package/dist/esm/internal/metric/key.js.map +1 -1
  485. package/dist/esm/internal/metric/keyType.js +5 -1
  486. package/dist/esm/internal/metric/keyType.js.map +1 -1
  487. package/dist/esm/internal/metric/state.js +4 -4
  488. package/dist/esm/internal/metric/state.js.map +1 -1
  489. package/dist/esm/internal/metric.js +4 -4
  490. package/dist/esm/internal/metric.js.map +1 -1
  491. package/dist/esm/internal/pool.js +11 -11
  492. package/dist/esm/internal/pool.js.map +1 -1
  493. package/dist/esm/internal/pubsub.js +5 -5
  494. package/dist/esm/internal/pubsub.js.map +1 -1
  495. package/dist/esm/internal/query.js +2 -2
  496. package/dist/esm/internal/query.js.map +1 -1
  497. package/dist/esm/internal/queue.js +9 -9
  498. package/dist/esm/internal/queue.js.map +1 -1
  499. package/dist/esm/internal/rateLimiter.js +1 -1
  500. package/dist/esm/internal/rateLimiter.js.map +1 -1
  501. package/dist/esm/internal/redBlackTree/iterator.js +2 -2
  502. package/dist/esm/internal/redBlackTree/iterator.js.map +1 -1
  503. package/dist/esm/internal/ref.js +6 -1
  504. package/dist/esm/internal/ref.js.map +1 -1
  505. package/dist/esm/internal/reloadable.js +1 -1
  506. package/dist/esm/internal/reloadable.js.map +1 -1
  507. package/dist/esm/internal/runtime.js +4 -4
  508. package/dist/esm/internal/runtime.js.map +1 -1
  509. package/dist/esm/internal/schedule/intervals.js +2 -1
  510. package/dist/esm/internal/schedule/intervals.js.map +1 -1
  511. package/dist/esm/internal/schedule.js +3 -3
  512. package/dist/esm/internal/schedule.js.map +1 -1
  513. package/dist/esm/internal/scopedCache.js +7 -7
  514. package/dist/esm/internal/scopedCache.js.map +1 -1
  515. package/dist/esm/internal/scopedRef.js +4 -4
  516. package/dist/esm/internal/scopedRef.js.map +1 -1
  517. package/dist/esm/internal/secret.js +2 -2
  518. package/dist/esm/internal/secret.js.map +1 -1
  519. package/dist/esm/internal/sink.js +10 -10
  520. package/dist/esm/internal/sink.js.map +1 -1
  521. package/dist/esm/internal/stm/stm/tExit.js +3 -2
  522. package/dist/esm/internal/stm/stm/tExit.js.map +1 -1
  523. package/dist/esm/internal/stm/stm.js +11 -9
  524. package/dist/esm/internal/stm/stm.js.map +1 -1
  525. package/dist/esm/internal/stm/tMap.js +3 -3
  526. package/dist/esm/internal/stm/tMap.js.map +1 -1
  527. package/dist/esm/internal/stm/tPriorityQueue.js +11 -11
  528. package/dist/esm/internal/stm/tPriorityQueue.js.map +1 -1
  529. package/dist/esm/internal/stm/tPubSub.js +3 -3
  530. package/dist/esm/internal/stm/tPubSub.js.map +1 -1
  531. package/dist/esm/internal/stm/tQueue.js +3 -3
  532. package/dist/esm/internal/stm/tQueue.js.map +1 -1
  533. package/dist/esm/internal/stm/tSet.js +1 -1
  534. package/dist/esm/internal/stm/tSet.js.map +1 -1
  535. package/dist/esm/internal/stream/haltStrategy.js +5 -5
  536. package/dist/esm/internal/stream/haltStrategy.js.map +1 -1
  537. package/dist/esm/internal/stream.js +85 -84
  538. package/dist/esm/internal/stream.js.map +1 -1
  539. package/dist/esm/internal/subscriptionRef.js +8 -0
  540. package/dist/esm/internal/subscriptionRef.js.map +1 -1
  541. package/dist/esm/internal/supervisor.js +1 -1
  542. package/dist/esm/internal/supervisor.js.map +1 -1
  543. package/dist/esm/internal/take.js +1 -1
  544. package/dist/esm/internal/take.js.map +1 -1
  545. package/dist/esm/internal/tracer.js.map +1 -1
  546. package/dist/esm/internal/trie.js +1 -1
  547. package/dist/esm/internal/trie.js.map +1 -1
  548. package/dist/esm/internal/version.js +1 -1
  549. package/dist/esm/internal/version.js.map +1 -1
  550. package/package.json +45 -13
  551. package/src/{ReadonlyArray.ts → Array.ts} +47 -24
  552. package/src/Brand.ts +3 -3
  553. package/src/Cache.ts +12 -10
  554. package/src/Cause.ts +1 -1
  555. package/src/Channel.ts +12 -9
  556. package/src/Chunk.ts +3 -3
  557. package/src/ConfigError.ts +7 -6
  558. package/src/Cron.ts +17 -17
  559. package/src/Duration.ts +54 -1
  560. package/src/Effect.ts +46 -57
  561. package/src/Either.ts +7 -7
  562. package/src/ExecutionStrategy.ts +10 -2
  563. package/src/Exit.ts +11 -9
  564. package/src/Fiber.ts +11 -8
  565. package/src/FiberHandle.ts +414 -0
  566. package/src/FiberMap.ts +181 -73
  567. package/src/FiberRefs.ts +1 -1
  568. package/src/FiberSet.ts +96 -36
  569. package/src/GroupBy.ts +1 -1
  570. package/src/HashMap.ts +0 -1
  571. package/src/HashSet.ts +0 -1
  572. package/src/Iterable.ts +48 -10
  573. package/src/Layer.ts +6 -6
  574. package/src/List.ts +8 -7
  575. package/src/Logger.ts +2 -2
  576. package/src/Metric.ts +9 -2
  577. package/src/MetricKey.ts +9 -1
  578. package/src/MetricKeyType.ts +6 -1
  579. package/src/MutableHashMap.ts +1 -1
  580. package/src/Option.ts +9 -6
  581. package/src/Readable.ts +92 -0
  582. package/src/{ReadonlyRecord.ts → Record.ts} +28 -29
  583. package/src/Ref.ts +2 -2
  584. package/src/RegExp.ts +17 -0
  585. package/src/Request.ts +1 -1
  586. package/src/RequestResolver.ts +4 -4
  587. package/src/STM.ts +12 -9
  588. package/src/Schedule.ts +1 -1
  589. package/src/ScopedCache.ts +11 -9
  590. package/src/SortedSet.ts +1 -1
  591. package/src/Stream.ts +14 -11
  592. package/src/StreamHaltStrategy.ts +14 -2
  593. package/src/String.ts +45 -2
  594. package/src/Subscribable.ts +99 -0
  595. package/src/SubscriptionRef.ts +2 -2
  596. package/src/TestAnnotation.ts +2 -1
  597. package/src/TestAnnotations.ts +1 -1
  598. package/src/TestClock.ts +3 -3
  599. package/src/Tracer.ts +13 -5
  600. package/src/Trie.ts +1 -1
  601. package/src/Types.ts +0 -8
  602. package/src/index.ts +26 -4
  603. package/src/internal/{readonlyArray.ts → array.ts} +1 -1
  604. package/src/internal/cache.ts +40 -40
  605. package/src/internal/cause.ts +8 -8
  606. package/src/internal/channel/channelExecutor.ts +15 -15
  607. package/src/internal/channel/channelState.ts +1 -1
  608. package/src/internal/channel/singleProducerAsyncInput.ts +1 -1
  609. package/src/internal/channel.ts +11 -11
  610. package/src/internal/clock.ts +2 -2
  611. package/src/internal/configError.ts +22 -21
  612. package/src/internal/configProvider/pathPatch.ts +1 -1
  613. package/src/internal/configProvider.ts +51 -55
  614. package/src/internal/core-effect.ts +149 -134
  615. package/src/internal/core-stream.ts +5 -2
  616. package/src/internal/core.ts +64 -200
  617. package/src/internal/dataSource.ts +19 -20
  618. package/src/internal/differ/readonlyArrayPatch.ts +6 -6
  619. package/src/internal/effect/circular.ts +9 -3
  620. package/src/internal/errors.ts +7 -0
  621. package/src/internal/executionStrategy.ts +14 -12
  622. package/src/internal/fiber.ts +8 -5
  623. package/src/internal/fiberRefs/patch.ts +1 -1
  624. package/src/internal/fiberRefs.ts +1 -1
  625. package/src/internal/fiberRuntime.ts +157 -123
  626. package/src/internal/groupBy.ts +4 -4
  627. package/src/internal/hashMap.ts +1 -2
  628. package/src/internal/hashSet.ts +0 -1
  629. package/src/internal/layer/circular.ts +2 -2
  630. package/src/internal/layer.ts +9 -9
  631. package/src/internal/logger.ts +28 -8
  632. package/src/internal/managedRuntime.ts +1 -1
  633. package/src/internal/matcher.ts +5 -3
  634. package/src/internal/metric/boundaries.ts +5 -5
  635. package/src/internal/metric/hook.ts +21 -18
  636. package/src/internal/metric/key.ts +8 -5
  637. package/src/internal/metric/keyType.ts +5 -2
  638. package/src/internal/metric/state.ts +5 -5
  639. package/src/internal/metric.ts +8 -6
  640. package/src/internal/pool.ts +11 -11
  641. package/src/internal/pubsub.ts +6 -6
  642. package/src/internal/query.ts +4 -4
  643. package/src/internal/queue.ts +11 -11
  644. package/src/internal/rateLimiter.ts +1 -1
  645. package/src/internal/redBlackTree/iterator.ts +2 -2
  646. package/src/internal/ref.ts +8 -2
  647. package/src/internal/reloadable.ts +1 -1
  648. package/src/internal/runtime.ts +5 -5
  649. package/src/internal/schedule/intervals.ts +2 -1
  650. package/src/internal/schedule.ts +8 -9
  651. package/src/internal/scopedCache.ts +53 -53
  652. package/src/internal/scopedRef.ts +4 -4
  653. package/src/internal/secret.ts +2 -2
  654. package/src/internal/sink.ts +10 -10
  655. package/src/internal/stm/stm/tExit.ts +5 -2
  656. package/src/internal/stm/stm.ts +13 -9
  657. package/src/internal/stm/tMap.ts +3 -3
  658. package/src/internal/stm/tPriorityQueue.ts +11 -11
  659. package/src/internal/stm/tPubSub.ts +3 -3
  660. package/src/internal/stm/tQueue.ts +3 -3
  661. package/src/internal/stm/tSet.ts +1 -1
  662. package/src/internal/stream/haltStrategy.ts +23 -14
  663. package/src/internal/stream.ts +91 -88
  664. package/src/internal/subscriptionRef.ts +8 -0
  665. package/src/internal/supervisor.ts +1 -1
  666. package/src/internal/take.ts +1 -1
  667. package/src/internal/tracer.ts +2 -2
  668. package/src/internal/trie.ts +1 -2
  669. package/src/internal/version.ts +1 -1
  670. package/ReadonlyArray/package.json +0 -6
  671. package/ReadonlyRecord/package.json +0 -6
  672. package/dist/cjs/ReadonlyArray.js.map +0 -1
  673. package/dist/cjs/ReadonlyRecord.js.map +0 -1
  674. package/dist/cjs/internal/Iterable.js +0 -61
  675. package/dist/cjs/internal/Iterable.js.map +0 -1
  676. package/dist/cjs/internal/readonlyArray.js.map +0 -1
  677. package/dist/dts/ReadonlyArray.d.ts.map +0 -1
  678. package/dist/dts/ReadonlyRecord.d.ts.map +0 -1
  679. package/dist/dts/internal/Iterable.d.ts +0 -2
  680. package/dist/dts/internal/Iterable.d.ts.map +0 -1
  681. package/dist/dts/internal/readonlyArray.d.ts +0 -5
  682. package/dist/dts/internal/readonlyArray.d.ts.map +0 -1
  683. package/dist/esm/ReadonlyArray.js.map +0 -1
  684. package/dist/esm/ReadonlyRecord.js.map +0 -1
  685. package/dist/esm/internal/Iterable.js +0 -53
  686. package/dist/esm/internal/Iterable.js.map +0 -1
  687. package/dist/esm/internal/readonlyArray.js.map +0 -1
  688. package/src/internal/Iterable.ts +0 -54
@@ -4,6 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.within = exports.upperCase = exports.unnested = exports.snakeCase = exports.orElse = exports.nested = exports.mapInputPath = exports.makeFlat = exports.make = exports.lowerCase = exports.kebabCase = exports.fromMap = exports.fromJson = exports.fromFlat = exports.fromEnv = exports.constantCase = exports.configProviderTag = exports.FlatConfigProviderTypeId = exports.ConfigProviderTypeId = void 0;
7
+ var Array = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("../Array.js"));
7
8
  var Context = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("../Context.js"));
8
9
  var Either = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("../Either.js"));
9
10
  var _Function = /*#__PURE__*/require("../Function.js");
@@ -12,7 +13,7 @@ var HashSet = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("../Has
12
13
  var number = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("../Number.js"));
13
14
  var Option = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("../Option.js"));
14
15
  var _Pipeable = /*#__PURE__*/require("../Pipeable.js");
15
- var ReadonlyArray = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("../ReadonlyArray.js"));
16
+ var regexp = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("../RegExp.js"));
16
17
  var configError = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("./configError.js"));
17
18
  var pathPatch = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("./configProvider/pathPatch.js"));
18
19
  var core = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("./core.js"));
@@ -73,8 +74,8 @@ const makeFlat = options => ({
73
74
  /** @internal */
74
75
  exports.makeFlat = makeFlat;
75
76
  const fromFlat = flat => make({
76
- load: config => core.flatMap(fromFlatLoop(flat, ReadonlyArray.empty(), config, false), chunk => Option.match(ReadonlyArray.head(chunk), {
77
- onNone: () => core.fail(configError.MissingData(ReadonlyArray.empty(), `Expected a single value having structure: ${config}`)),
77
+ load: config => core.flatMap(fromFlatLoop(flat, Array.empty(), config, false), chunk => Option.match(Array.head(chunk), {
78
+ onNone: () => core.fail(configError.MissingData(Array.empty(), `Expected a single value having structure: ${config}`)),
78
79
  onSome: core.succeed
79
80
  })),
80
81
  flattened: flat
@@ -89,7 +90,7 @@ const fromEnv = config => {
89
90
  pathDelim: "_",
90
91
  seqDelim: ","
91
92
  }, config);
92
- const makePathString = path => (0, _Function.pipe)(path, ReadonlyArray.join(pathDelim));
93
+ const makePathString = path => (0, _Function.pipe)(path, Array.join(pathDelim));
93
94
  const unmakePathString = pathString => pathString.split(pathDelim);
94
95
  const getEnv = () => typeof process !== "undefined" && "env" in process && typeof process.env === "object" ? process.env : {};
95
96
  const load = (path, primitive, split = true) => {
@@ -101,10 +102,10 @@ const fromEnv = config => {
101
102
  const enumerateChildren = path => core.sync(() => {
102
103
  const current = getEnv();
103
104
  const keys = Object.keys(current);
104
- const keyPaths = Array.from(keys).map(value => unmakePathString(value.toUpperCase()));
105
+ const keyPaths = keys.map(value => unmakePathString(value.toUpperCase()));
105
106
  const filteredKeyPaths = keyPaths.filter(keyPath => {
106
107
  for (let i = 0; i < path.length; i++) {
107
- const pathComponent = (0, _Function.pipe)(path, ReadonlyArray.unsafeGet(i));
108
+ const pathComponent = (0, _Function.pipe)(path, Array.unsafeGet(i));
108
109
  const currentElement = keyPath[i];
109
110
  if (currentElement === undefined || pathComponent !== currentElement) {
110
111
  return false;
@@ -130,19 +131,19 @@ const fromMap = (map, config) => {
130
131
  seqDelim: ",",
131
132
  pathDelim: "."
132
133
  }, config);
133
- const makePathString = path => (0, _Function.pipe)(path, ReadonlyArray.join(pathDelim));
134
+ const makePathString = path => (0, _Function.pipe)(path, Array.join(pathDelim));
134
135
  const unmakePathString = pathString => pathString.split(pathDelim);
135
- const mapWithIndexSplit = splitIndexInKeys(map, str => Array.from(unmakePathString(str)), makePathString);
136
+ const mapWithIndexSplit = splitIndexInKeys(map, str => unmakePathString(str), makePathString);
136
137
  const load = (path, primitive, split = true) => {
137
138
  const pathString = makePathString(path);
138
139
  const valueOpt = mapWithIndexSplit.has(pathString) ? Option.some(mapWithIndexSplit.get(pathString)) : Option.none();
139
140
  return (0, _Function.pipe)(valueOpt, core.mapError(() => configError.MissingData(path, `Expected ${pathString} to exist in the provided map`)), core.flatMap(value => parsePrimitive(value, path, primitive, seqDelim, split)));
140
141
  };
141
142
  const enumerateChildren = path => core.sync(() => {
142
- const keyPaths = Array.from(mapWithIndexSplit.keys()).map(unmakePathString);
143
+ const keyPaths = Array.fromIterable(mapWithIndexSplit.keys()).map(unmakePathString);
143
144
  const filteredKeyPaths = keyPaths.filter(keyPath => {
144
145
  for (let i = 0; i < path.length; i++) {
145
- const pathComponent = (0, _Function.pipe)(path, ReadonlyArray.unsafeGet(i));
146
+ const pathComponent = (0, _Function.pipe)(path, Array.unsafeGet(i));
146
147
  const currentElement = keyPath[i];
147
148
  if (currentElement === undefined || pathComponent !== currentElement) {
148
149
  return false;
@@ -160,8 +161,8 @@ const fromMap = (map, config) => {
160
161
  };
161
162
  exports.fromMap = fromMap;
162
163
  const extend = (leftDef, rightDef, left, right) => {
163
- const leftPad = ReadonlyArray.unfold(left.length, index => index >= right.length ? Option.none() : Option.some([leftDef(index), index + 1]));
164
- const rightPad = ReadonlyArray.unfold(right.length, index => index >= left.length ? Option.none() : Option.some([rightDef(index), index + 1]));
164
+ const leftPad = Array.unfold(left.length, index => index >= right.length ? Option.none() : Option.some([leftDef(index), index + 1]));
165
+ const rightPad = Array.unfold(right.length, index => index >= left.length ? Option.none() : Option.some([rightDef(index), index + 1]));
165
166
  const leftExtension = concat(left, leftPad);
166
167
  const rightExtension = concat(right, rightPad);
167
168
  return [leftExtension, rightExtension];
@@ -183,7 +184,7 @@ const fromFlatLoop = (flat, prefix, config, split) => {
183
184
  switch (op._tag) {
184
185
  case OpCodes.OP_CONSTANT:
185
186
  {
186
- return core.succeed(ReadonlyArray.of(op.value));
187
+ return core.succeed(Array.of(op.value));
187
188
  }
188
189
  case OpCodes.OP_DESCRIBED:
189
190
  {
@@ -212,13 +213,13 @@ const fromFlatLoop = (flat, prefix, config, split) => {
212
213
  }
213
214
  case OpCodes.OP_NESTED:
214
215
  {
215
- return core.suspend(() => fromFlatLoop(flat, concat(prefix, ReadonlyArray.of(op.name)), op.config, split));
216
+ return core.suspend(() => fromFlatLoop(flat, concat(prefix, Array.of(op.name)), op.config, split));
216
217
  }
217
218
  case OpCodes.OP_PRIMITIVE:
218
219
  {
219
220
  return (0, _Function.pipe)(pathPatch.patch(prefix, flat.patch), core.flatMap(prefix => (0, _Function.pipe)(flat.load(prefix, op, split), core.flatMap(values => {
220
221
  if (values.length === 0) {
221
- const name = (0, _Function.pipe)(ReadonlyArray.last(prefix), Option.getOrElse(() => "<n/a>"));
222
+ const name = (0, _Function.pipe)(Array.last(prefix), Option.getOrElse(() => "<n/a>"));
222
223
  return core.fail(configError.MissingData([], `Expected ${op.description} with name ${name}`));
223
224
  }
224
225
  return core.succeed(values);
@@ -228,26 +229,25 @@ const fromFlatLoop = (flat, prefix, config, split) => {
228
229
  {
229
230
  return (0, _Function.pipe)(pathPatch.patch(prefix, flat.patch), core.flatMap(patchedPrefix => (0, _Function.pipe)(flat.enumerateChildren(patchedPrefix), core.flatMap(indicesFrom), core.flatMap(indices => {
230
231
  if (indices.length === 0) {
231
- return core.suspend(() => core.map(fromFlatLoop(flat, patchedPrefix, op.config, true), ReadonlyArray.of));
232
+ return core.suspend(() => core.map(fromFlatLoop(flat, patchedPrefix, op.config, true), Array.of));
232
233
  }
233
- return (0, _Function.pipe)(core.forEachSequential(indices, index => fromFlatLoop(flat, ReadonlyArray.append(prefix, `[${index}]`), op.config, true)), core.map(chunkChunk => {
234
- const flattened = ReadonlyArray.flatten(chunkChunk);
234
+ return (0, _Function.pipe)(core.forEachSequential(indices, index => fromFlatLoop(flat, Array.append(prefix, `[${index}]`), op.config, true)), core.map(chunkChunk => {
235
+ const flattened = Array.flatten(chunkChunk);
235
236
  if (flattened.length === 0) {
236
- return ReadonlyArray.of(ReadonlyArray.empty());
237
+ return Array.of(Array.empty());
237
238
  }
238
- return ReadonlyArray.of(flattened);
239
+ return Array.of(flattened);
239
240
  }));
240
241
  }))));
241
242
  }
242
243
  case OpCodes.OP_HASHMAP:
243
244
  {
244
245
  return core.suspend(() => (0, _Function.pipe)(pathPatch.patch(prefix, flat.patch), core.flatMap(prefix => (0, _Function.pipe)(flat.enumerateChildren(prefix), core.flatMap(keys => {
245
- return (0, _Function.pipe)(keys, core.forEachSequential(key => fromFlatLoop(flat, concat(prefix, ReadonlyArray.of(key)), op.valueConfig, split)), core.map(values => {
246
- if (values.length === 0) {
247
- return ReadonlyArray.of(HashMap.empty());
246
+ return (0, _Function.pipe)(keys, core.forEachSequential(key => fromFlatLoop(flat, concat(prefix, Array.of(key)), op.valueConfig, split)), core.map(matrix => {
247
+ if (matrix.length === 0) {
248
+ return Array.of(HashMap.empty());
248
249
  }
249
- const matrix = values.map(x => Array.from(x));
250
- return (0, _Function.pipe)(transpose(matrix), ReadonlyArray.map(values => HashMap.fromIterable(ReadonlyArray.zip(ReadonlyArray.fromIterable(keys), values))));
250
+ return (0, _Function.pipe)(transpose(matrix), Array.map(values => HashMap.fromIterable(Array.zip(Array.fromIterable(keys), values))));
251
251
  }));
252
252
  })))));
253
253
  }
@@ -264,10 +264,10 @@ const fromFlatLoop = (flat, prefix, config, split) => {
264
264
  return core.fail(right.left);
265
265
  }
266
266
  if (Either.isRight(left) && Either.isRight(right)) {
267
- const path = (0, _Function.pipe)(prefix, ReadonlyArray.join("."));
267
+ const path = (0, _Function.pipe)(prefix, Array.join("."));
268
268
  const fail = fromFlatLoopFail(prefix, path);
269
- const [lefts, rights] = extend(fail, fail, (0, _Function.pipe)(left.right, ReadonlyArray.map(Either.right)), (0, _Function.pipe)(right.right, ReadonlyArray.map(Either.right)));
270
- return (0, _Function.pipe)(lefts, ReadonlyArray.zip(rights), core.forEachSequential(([left, right]) => (0, _Function.pipe)(core.zip(left, right), core.map(([left, right]) => op.zip(left, right)))));
269
+ const [lefts, rights] = extend(fail, fail, (0, _Function.pipe)(left.right, Array.map(Either.right)), (0, _Function.pipe)(right.right, Array.map(Either.right)));
270
+ return (0, _Function.pipe)(lefts, Array.zip(rights), core.forEachSequential(([left, right]) => (0, _Function.pipe)(core.zip(left, right), core.map(([left, right]) => op.zip(left, right)))));
271
271
  }
272
272
  throw new Error("BUG: ConfigProvider.fromFlatLoop - please report an issue at https://github.com/Effect-TS/effect/issues");
273
273
  })))));
@@ -332,19 +332,19 @@ const upperCase = self => mapInputPath(self, StringUtils.upperCase);
332
332
  /** @internal */
333
333
  exports.upperCase = upperCase;
334
334
  const within = exports.within = /*#__PURE__*/(0, _Function.dual)(3, (self, path, f) => {
335
- const unnest = ReadonlyArray.reduce(path, self, (provider, name) => unnested(provider, name));
336
- const nest = ReadonlyArray.reduceRight(path, f(unnest), (provider, name) => nested(provider, name));
335
+ const unnest = Array.reduce(path, self, (provider, name) => unnested(provider, name));
336
+ const nest = Array.reduceRight(path, f(unnest), (provider, name) => nested(provider, name));
337
337
  return orElse(nest, () => self);
338
338
  });
339
339
  const splitPathString = (text, delim) => {
340
- const split = text.split(new RegExp(`\\s*${escapeRegex(delim)}\\s*`));
340
+ const split = text.split(new RegExp(`\\s*${regexp.escape(delim)}\\s*`));
341
341
  return split;
342
342
  };
343
343
  const parsePrimitive = (text, path, primitive, delimiter, split) => {
344
344
  if (!split) {
345
345
  return (0, _Function.pipe)(primitive.parse(text), core.mapBoth({
346
346
  onFailure: configError.prefixed(path),
347
- onSuccess: ReadonlyArray.of
347
+ onSuccess: Array.of
348
348
  }));
349
349
  }
350
350
  return (0, _Function.pipe)(splitPathString(text, delimiter), core.forEachSequential(char => primitive.parse(char.trim())), core.mapError(configError.prefixed(path)));
@@ -352,10 +352,9 @@ const parsePrimitive = (text, path, primitive, delimiter, split) => {
352
352
  const transpose = array => {
353
353
  return Object.keys(array[0]).map(column => array.map(row => row[column]));
354
354
  };
355
- const escapeRegex = string => string.replace(/[/\-\\^$*+?.()|[\]{}]/g, "\\$&");
356
355
  const indicesFrom = quotedIndices => (0, _Function.pipe)(core.forEachSequential(quotedIndices, parseQuotedIndex), core.mapBoth({
357
- onFailure: () => ReadonlyArray.empty(),
358
- onSuccess: ReadonlyArray.sort(number.Order)
356
+ onFailure: () => Array.empty(),
357
+ onSuccess: Array.sort(number.Order)
359
358
  }), core.either, core.map(Either.merge));
360
359
  const STR_INDEX_REGEX = /(^.+)(\[(\d+)\])$/;
361
360
  const QUOTED_INDEX_REGEX = /^(\[(\d+)\])$/;
@@ -370,9 +369,9 @@ const parseQuotedIndex = str => {
370
369
  const splitIndexInKeys = (map, unmakePathString, makePathString) => {
371
370
  const newMap = new Map();
372
371
  for (const [pathString, value] of map) {
373
- const keyWithIndex = (0, _Function.pipe)(unmakePathString(pathString), ReadonlyArray.flatMap(key => Option.match(splitIndexFrom(key), {
374
- onNone: () => ReadonlyArray.of(key),
375
- onSome: ([key, index]) => ReadonlyArray.make(key, `[${index}]`)
372
+ const keyWithIndex = (0, _Function.pipe)(unmakePathString(pathString), Array.flatMap(key => Option.match(splitIndexFrom(key), {
373
+ onNone: () => Array.of(key),
374
+ onSome: ([key, index]) => Array.make(key, `[${index}]`)
376
375
  })));
377
376
  newMap.set(makePathString(keyWithIndex), value);
378
377
  }
@@ -404,7 +403,7 @@ const keyIndex = index => ({
404
403
  /** @internal */
405
404
  const fromJson = json => {
406
405
  const hiddenDelimiter = "\ufeff";
407
- const indexedEntries = ReadonlyArray.map(getIndexedEntries(json), ([key, value]) => [configPathToString(key).join(hiddenDelimiter), value]);
406
+ const indexedEntries = Array.map(getIndexedEntries(json), ([key, value]) => [configPathToString(key).join(hiddenDelimiter), value]);
408
407
  return fromMap(new Map(indexedEntries), {
409
408
  pathDelim: hiddenDelimiter,
410
409
  seqDelim: hiddenDelimiter
@@ -437,10 +436,10 @@ const configPathToString = path => {
437
436
  const getIndexedEntries = config => {
438
437
  const loopAny = (path, value) => {
439
438
  if (typeof value === "string") {
440
- return ReadonlyArray.make([path, value]);
439
+ return Array.make([path, value]);
441
440
  }
442
441
  if (typeof value === "number" || typeof value === "boolean") {
443
- return ReadonlyArray.make([path, String(value)]);
442
+ return Array.make([path, String(value)]);
444
443
  }
445
444
  if (Array.isArray(value)) {
446
445
  return loopArray(path, value);
@@ -448,20 +447,20 @@ const getIndexedEntries = config => {
448
447
  if (typeof value === "object" && value !== null) {
449
448
  return loopObject(path, value);
450
449
  }
451
- return ReadonlyArray.empty();
450
+ return Array.empty();
452
451
  };
453
- const loopArray = (path, values) => ReadonlyArray.match(values, {
454
- onEmpty: () => ReadonlyArray.make([path, "<nil>"]),
455
- onNonEmpty: ReadonlyArray.flatMap((value, index) => loopAny(ReadonlyArray.append(path, keyIndex(index)), value))
452
+ const loopArray = (path, values) => Array.match(values, {
453
+ onEmpty: () => Array.make([path, "<nil>"]),
454
+ onNonEmpty: Array.flatMap((value, index) => loopAny(Array.append(path, keyIndex(index)), value))
456
455
  });
457
456
  const loopObject = (path, value) => Object.entries(value).flatMap(([key, value]) => {
458
- const newPath = ReadonlyArray.append(path, keyName(key));
457
+ const newPath = Array.append(path, keyName(key));
459
458
  const result = loopAny(newPath, value);
460
- if (ReadonlyArray.isEmptyReadonlyArray(result)) {
461
- return ReadonlyArray.make([newPath, ""]);
459
+ if (Array.isEmptyReadonlyArray(result)) {
460
+ return Array.make([newPath, ""]);
462
461
  }
463
462
  return result;
464
463
  });
465
- return loopObject(ReadonlyArray.empty(), config);
464
+ return loopObject(Array.empty(), config);
466
465
  };
467
466
  //# sourceMappingURL=configProvider.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"configProvider.js","names":["Context","_interopRequireWildcard","require","Either","_Function","HashMap","HashSet","number","Option","_Pipeable","ReadonlyArray","configError","pathPatch","core","OpCodes","StringUtils","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","concat","l","ConfigProviderSymbolKey","ConfigProviderTypeId","exports","Symbol","for","configProviderTag","GenericTag","FlatConfigProviderSymbolKey","FlatConfigProviderTypeId","make","options","pipe","pipeArguments","arguments","makeFlat","patch","load","path","config","split","enumerateChildren","fromFlat","flat","flatMap","fromFlatLoop","empty","chunk","match","head","onNone","fail","MissingData","onSome","succeed","flattened","fromEnv","pathDelim","seqDelim","assign","makePathString","join","unmakePathString","pathString","getEnv","process","env","primitive","current","valueOpt","some","none","mapError","value","parsePrimitive","sync","keys","keyPaths","Array","from","map","toUpperCase","filteredKeyPaths","filter","keyPath","length","pathComponent","unsafeGet","currentElement","undefined","slice","fromIterable","fromMap","mapWithIndexSplit","splitIndexInKeys","str","extend","leftDef","rightDef","left","right","leftPad","unfold","index","rightPad","leftExtension","rightExtension","appendConfigPath","op","_tag","out","push","name","prefix","OP_CONSTANT","of","OP_DESCRIBED","suspend","OP_FAIL","message","OP_FALLBACK","first","catchAll","error1","condition","second","error2","Or","OP_LAZY","OP_MAP_OR_FAIL","original","forEachSequential","mapOrFail","prefixed","OP_NESTED","OP_PRIMITIVE","values","last","getOrElse","description","OP_SEQUENCE","patchedPrefix","indicesFrom","indices","append","chunkChunk","flatten","OP_HASHMAP","key","valueConfig","matrix","x","transpose","zip","OP_ZIP_WITH","either","isLeft","And","isRight","fromFlatLoopFail","lefts","rights","Error","mapInputPath","dual","self","f","mapInputPathFlat","mapName","nested","unnested","orElse","that","orElseFlat","union","constantCase","kebabCase","lowerCase","snakeCase","upperCase","within","unnest","reduce","provider","nest","reduceRight","splitPathString","text","delim","RegExp","escapeRegex","delimiter","parse","mapBoth","onFailure","onSuccess","char","trim","array","column","row","string","replace","quotedIndices","parseQuotedIndex","sort","Order","merge","STR_INDEX_REGEX","QUOTED_INDEX_REGEX","matchedIndex","parseInteger","newMap","Map","keyWithIndex","splitIndexFrom","matchedString","optionalString","optionalIndex","all","parsedIndex","Number","parseInt","isNaN","keyName","keyIndex","fromJson","json","hiddenDelimiter","indexedEntries","getIndexedEntries","configPathToString","output","component","nextComponent","loopAny","String","isArray","loopArray","loopObject","onEmpty","onNonEmpty","entries","newPath","result","isEmptyReadonlyArray"],"sources":["../../../src/internal/configProvider.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"configProvider.js","names":["Array","_interopRequireWildcard","require","Context","Either","_Function","HashMap","HashSet","number","Option","_Pipeable","regexp","configError","pathPatch","core","OpCodes","StringUtils","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","concat","l","ConfigProviderSymbolKey","ConfigProviderTypeId","exports","Symbol","for","configProviderTag","GenericTag","FlatConfigProviderSymbolKey","FlatConfigProviderTypeId","make","options","pipe","pipeArguments","arguments","makeFlat","patch","load","path","config","split","enumerateChildren","fromFlat","flat","flatMap","fromFlatLoop","empty","chunk","match","head","onNone","fail","MissingData","onSome","succeed","flattened","fromEnv","pathDelim","seqDelim","assign","makePathString","join","unmakePathString","pathString","getEnv","process","env","primitive","current","valueOpt","some","none","mapError","value","parsePrimitive","sync","keys","keyPaths","map","toUpperCase","filteredKeyPaths","filter","keyPath","length","pathComponent","unsafeGet","currentElement","undefined","slice","fromIterable","fromMap","mapWithIndexSplit","splitIndexInKeys","str","extend","leftDef","rightDef","left","right","leftPad","unfold","index","rightPad","leftExtension","rightExtension","appendConfigPath","op","_tag","out","push","name","prefix","OP_CONSTANT","of","OP_DESCRIBED","suspend","OP_FAIL","message","OP_FALLBACK","first","catchAll","error1","condition","second","error2","Or","OP_LAZY","OP_MAP_OR_FAIL","original","forEachSequential","mapOrFail","prefixed","OP_NESTED","OP_PRIMITIVE","values","last","getOrElse","description","OP_SEQUENCE","patchedPrefix","indicesFrom","indices","append","chunkChunk","flatten","OP_HASHMAP","key","valueConfig","matrix","transpose","zip","OP_ZIP_WITH","either","isLeft","And","isRight","fromFlatLoopFail","lefts","rights","Error","mapInputPath","dual","self","f","mapInputPathFlat","mapName","nested","unnested","orElse","that","orElseFlat","union","constantCase","kebabCase","lowerCase","snakeCase","upperCase","within","unnest","reduce","provider","nest","reduceRight","splitPathString","text","delim","RegExp","escape","delimiter","parse","mapBoth","onFailure","onSuccess","char","trim","array","column","row","quotedIndices","parseQuotedIndex","sort","Order","merge","STR_INDEX_REGEX","QUOTED_INDEX_REGEX","matchedIndex","parseInteger","newMap","Map","keyWithIndex","splitIndexFrom","matchedString","optionalString","optionalIndex","all","parsedIndex","Number","parseInt","isNaN","keyName","keyIndex","fromJson","json","hiddenDelimiter","indexedEntries","getIndexedEntries","configPathToString","output","component","nextComponent","loopAny","String","isArray","loopArray","loopObject","onEmpty","onNonEmpty","entries","newPath","result","isEmptyReadonlyArray"],"sources":["../../../src/internal/configProvider.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}