effect 2.0.0-next.38 → 2.0.0-next.39

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 (767) hide show
  1. package/Bigint/dist/effect-Bigint.esm.js +346 -5
  2. package/Boolean/dist/effect-Boolean.esm.js +230 -5
  3. package/Brand/dist/effect-Brand.esm.js +204 -20
  4. package/Cache/dist/effect-Cache.cjs.dev.js +13 -13
  5. package/Cache/dist/effect-Cache.cjs.prod.js +13 -13
  6. package/Cache/dist/effect-Cache.esm.js +111 -74
  7. package/Cause/dist/effect-Cause.esm.js +668 -33
  8. package/Channel/dist/effect-Channel.cjs.dev.js +36 -36
  9. package/Channel/dist/effect-Channel.cjs.prod.js +36 -36
  10. package/Channel/dist/effect-Channel.esm.js +1001 -107
  11. package/ChannelChildExecutorDecision/dist/effect-ChannelChildExecutorDecision.esm.js +112 -3
  12. package/ChannelMergeDecision/dist/effect-ChannelMergeDecision.esm.js +60 -3
  13. package/ChannelMergeState/dist/effect-ChannelMergeState.esm.js +101 -3
  14. package/ChannelMergeStrategy/dist/effect-ChannelMergeStrategy.esm.js +84 -3
  15. package/ChannelSingleProducerAsyncInput/dist/effect-ChannelSingleProducerAsyncInput.cjs.dev.js +28 -28
  16. package/ChannelSingleProducerAsyncInput/dist/effect-ChannelSingleProducerAsyncInput.cjs.prod.js +28 -28
  17. package/ChannelSingleProducerAsyncInput/dist/effect-ChannelSingleProducerAsyncInput.esm.js +47 -91
  18. package/ChannelUpstreamPullRequest/dist/effect-ChannelUpstreamPullRequest.esm.js +84 -3
  19. package/ChannelUpstreamPullStrategy/dist/effect-ChannelUpstreamPullStrategy.esm.js +83 -3
  20. package/Chunk/dist/effect-Chunk.esm.js +1084 -20
  21. package/Clock/dist/effect-Clock.cjs.dev.js +3 -3
  22. package/Clock/dist/effect-Clock.cjs.prod.js +3 -3
  23. package/Clock/dist/effect-Clock.esm.js +78 -42
  24. package/Config/dist/effect-Config.esm.js +321 -37
  25. package/ConfigError/dist/effect-ConfigError.esm.js +185 -21
  26. package/ConfigProvider/dist/effect-ConfigProvider.esm.js +198 -39
  27. package/ConfigProviderPathPatch/dist/effect-ConfigProviderPathPatch.esm.js +70 -24
  28. package/ConfigSecret/dist/effect-ConfigSecret.esm.js +63 -22
  29. package/Console/dist/effect-Console.cjs.dev.js +22 -22
  30. package/Console/dist/effect-Console.cjs.prod.js +22 -22
  31. package/Console/dist/effect-Console.esm.js +154 -83
  32. package/Context/dist/effect-Context.esm.js +295 -17
  33. package/Data/dist/effect-Data.esm.js +163 -7
  34. package/DefaultServices/dist/effect-DefaultServices.cjs.dev.js +3 -3
  35. package/DefaultServices/dist/effect-DefaultServices.cjs.prod.js +3 -3
  36. package/DefaultServices/dist/effect-DefaultServices.esm.js +24 -42
  37. package/Deferred/dist/effect-Deferred.esm.js +206 -33
  38. package/Differ/dist/effect-Differ.esm.js +137 -26
  39. package/Duration/dist/effect-Duration.cjs.dev.js +2 -1
  40. package/Duration/dist/effect-Duration.cjs.mjs +1 -0
  41. package/Duration/dist/effect-Duration.cjs.prod.js +2 -1
  42. package/Duration/dist/effect-Duration.esm.js +438 -16
  43. package/Effect/dist/effect-Effect.cjs.dev.js +26 -26
  44. package/Effect/dist/effect-Effect.cjs.prod.js +26 -26
  45. package/Effect/dist/effect-Effect.esm.js +3093 -89
  46. package/Effectable/dist/effect-Effectable.esm.js +77 -10
  47. package/Either/dist/effect-Either.esm.js +442 -13
  48. package/Encoding/dist/effect-Encoding.esm.js +123 -14
  49. package/Equal/dist/effect-Equal.esm.js +57 -6
  50. package/Equivalence/dist/effect-Equivalence.esm.js +196 -2
  51. package/Error/dist/effect-Error.cjs.dev.js +27 -27
  52. package/Error/dist/effect-Error.cjs.prod.js +27 -27
  53. package/Error/dist/effect-Error.esm.js +47 -91
  54. package/ExecutionStrategy/dist/effect-ExecutionStrategy.esm.js +99 -2
  55. package/Exit/dist/effect-Exit.esm.js +332 -33
  56. package/Fiber/dist/effect-Fiber.cjs.dev.js +18 -18
  57. package/Fiber/dist/effect-Fiber.cjs.prod.js +18 -18
  58. package/Fiber/dist/effect-Fiber.esm.js +423 -77
  59. package/FiberId/dist/effect-FiberId.esm.js +161 -20
  60. package/FiberRef/dist/effect-FiberRef.cjs.dev.js +14 -14
  61. package/FiberRef/dist/effect-FiberRef.cjs.prod.js +14 -14
  62. package/FiberRef/dist/effect-FiberRef.esm.js +289 -75
  63. package/FiberRefs/dist/effect-FiberRefs.esm.js +107 -34
  64. package/FiberRefsPatch/dist/effect-FiberRefsPatch.esm.js +76 -35
  65. package/FiberStatus/dist/effect-FiberStatus.esm.js +89 -7
  66. package/Function/dist/effect-Function.esm.js +492 -1
  67. package/GlobalValue/dist/effect-GlobalValue.esm.js +20 -1
  68. package/GroupBy/dist/effect-GroupBy.cjs.dev.js +37 -37
  69. package/GroupBy/dist/effect-GroupBy.cjs.prod.js +37 -37
  70. package/GroupBy/dist/effect-GroupBy.esm.js +63 -108
  71. package/Hash/dist/effect-Hash.esm.js +164 -5
  72. package/HashMap/dist/effect-HashMap.esm.js +287 -18
  73. package/HashSet/dist/effect-HashSet.esm.js +227 -18
  74. package/Hub/dist/effect-Hub.cjs.dev.js +13 -13
  75. package/Hub/dist/effect-Hub.cjs.prod.js +13 -13
  76. package/Hub/dist/effect-Hub.esm.js +148 -74
  77. package/Inspectable/dist/effect-Inspectable.esm.js +38 -1
  78. package/KeyedPool/dist/effect-KeyedPool.cjs.dev.js +14 -14
  79. package/KeyedPool/dist/effect-KeyedPool.cjs.prod.js +14 -14
  80. package/KeyedPool/dist/effect-KeyedPool.esm.js +104 -75
  81. package/Layer/dist/effect-Layer.cjs.dev.js +22 -22
  82. package/Layer/dist/effect-Layer.cjs.prod.js +22 -22
  83. package/Layer/dist/effect-Layer.esm.js +557 -83
  84. package/List/dist/effect-List.esm.js +816 -21
  85. package/LogLevel/dist/effect-LogLevel.esm.js +202 -33
  86. package/LogSpan/dist/effect-LogSpan.esm.js +24 -1
  87. package/Logger/dist/effect-Logger.cjs.dev.js +24 -24
  88. package/Logger/dist/effect-Logger.cjs.prod.js +24 -24
  89. package/Logger/dist/effect-Logger.esm.js +198 -85
  90. package/Metric/dist/effect-Metric.cjs.dev.js +12 -12
  91. package/Metric/dist/effect-Metric.cjs.prod.js +12 -12
  92. package/Metric/dist/effect-Metric.esm.js +395 -71
  93. package/MetricBoundaries/dist/effect-MetricBoundaries.esm.js +52 -22
  94. package/MetricHook/dist/effect-MetricHook.cjs.dev.js +3 -3
  95. package/MetricHook/dist/effect-MetricHook.cjs.prod.js +3 -3
  96. package/MetricHook/dist/effect-MetricHook.esm.js +68 -27
  97. package/MetricKey/dist/effect-MetricKey.cjs.dev.js +4 -4
  98. package/MetricKey/dist/effect-MetricKey.cjs.prod.js +4 -4
  99. package/MetricKey/dist/effect-MetricKey.esm.js +104 -23
  100. package/MetricKeyType/dist/effect-MetricKeyType.cjs.dev.js +3 -3
  101. package/MetricKeyType/dist/effect-MetricKeyType.cjs.prod.js +3 -3
  102. package/MetricKeyType/dist/effect-MetricKeyType.esm.js +147 -18
  103. package/MetricLabel/dist/effect-MetricLabel.esm.js +41 -9
  104. package/MetricPair/dist/effect-MetricPair.esm.js +38 -3
  105. package/MetricPolling/dist/effect-MetricPolling.cjs.dev.js +18 -18
  106. package/MetricPolling/dist/effect-MetricPolling.cjs.prod.js +18 -18
  107. package/MetricPolling/dist/effect-MetricPolling.esm.js +84 -77
  108. package/MetricRegistry/dist/effect-MetricRegistry.cjs.dev.js +5 -5
  109. package/MetricRegistry/dist/effect-MetricRegistry.cjs.prod.js +5 -5
  110. package/MetricRegistry/dist/effect-MetricRegistry.esm.js +28 -33
  111. package/MetricState/dist/effect-MetricState.esm.js +151 -9
  112. package/MutableHashMap/dist/effect-MutableHashMap.esm.js +128 -20
  113. package/MutableHashSet/dist/effect-MutableHashSet.esm.js +90 -21
  114. package/MutableList/dist/effect-MutableList.esm.js +264 -4
  115. package/MutableQueue/dist/effect-MutableQueue.esm.js +187 -22
  116. package/MutableRef/dist/effect-MutableRef.esm.js +156 -9
  117. package/NonEmptyIterable/dist/effect-NonEmptyIterable.esm.js +28 -1
  118. package/Number/dist/effect-Number.esm.js +369 -5
  119. package/Option/dist/effect-Option.esm.js +1071 -15
  120. package/Order/dist/effect-Order.esm.js +263 -2
  121. package/Ordering/dist/effect-Ordering.esm.js +88 -2
  122. package/Pipeable/dist/effect-Pipeable.esm.js +44 -1
  123. package/Pool/dist/effect-Pool.cjs.dev.js +14 -14
  124. package/Pool/dist/effect-Pool.cjs.prod.js +14 -14
  125. package/Pool/dist/effect-Pool.esm.js +104 -75
  126. package/Predicate/dist/effect-Predicate.esm.js +634 -2
  127. package/Queue/dist/effect-Queue.cjs.dev.js +13 -13
  128. package/Queue/dist/effect-Queue.cjs.prod.js +13 -13
  129. package/Queue/dist/effect-Queue.esm.js +328 -74
  130. package/Random/dist/effect-Random.cjs.dev.js +3 -3
  131. package/Random/dist/effect-Random.cjs.prod.js +3 -3
  132. package/Random/dist/effect-Random.esm.js +83 -42
  133. package/ReadonlyArray/dist/effect-ReadonlyArray.esm.js +1445 -19
  134. package/ReadonlyRecord/dist/effect-ReadonlyRecord.esm.js +518 -17
  135. package/RedBlackTree/dist/effect-RedBlackTree.esm.js +314 -22
  136. package/Ref/dist/effect-Ref.esm.js +111 -33
  137. package/Reloadable/dist/effect-Reloadable.cjs.dev.js +23 -23
  138. package/Reloadable/dist/effect-Reloadable.cjs.prod.js +23 -23
  139. package/Reloadable/dist/effect-Reloadable.esm.js +88 -84
  140. package/Request/dist/effect-Request.cjs.dev.js +13 -13
  141. package/Request/dist/effect-Request.cjs.prod.js +13 -13
  142. package/Request/dist/effect-Request.esm.js +160 -74
  143. package/RequestBlock/dist/effect-RequestBlock.cjs.dev.js +28 -28
  144. package/RequestBlock/dist/effect-RequestBlock.cjs.prod.js +28 -28
  145. package/RequestBlock/dist/effect-RequestBlock.esm.js +103 -91
  146. package/RequestResolver/dist/effect-RequestResolver.cjs.dev.js +28 -28
  147. package/RequestResolver/dist/effect-RequestResolver.cjs.prod.js +28 -28
  148. package/RequestResolver/dist/effect-RequestResolver.esm.js +191 -91
  149. package/Resource/dist/effect-Resource.cjs.dev.js +19 -19
  150. package/Resource/dist/effect-Resource.cjs.prod.js +19 -19
  151. package/Resource/dist/effect-Resource.esm.js +70 -79
  152. package/Runtime/dist/effect-Runtime.cjs.dev.js +20 -20
  153. package/Runtime/dist/effect-Runtime.cjs.prod.js +20 -20
  154. package/Runtime/dist/effect-Runtime.esm.js +157 -79
  155. package/RuntimeFlags/dist/effect-RuntimeFlags.cjs.dev.js +24 -24
  156. package/RuntimeFlags/dist/effect-RuntimeFlags.cjs.prod.js +24 -24
  157. package/RuntimeFlags/dist/effect-RuntimeFlags.esm.js +305 -85
  158. package/RuntimeFlagsPatch/dist/effect-RuntimeFlagsPatch.esm.js +158 -27
  159. package/STM/dist/effect-STM.cjs.dev.js +41 -41
  160. package/STM/dist/effect-STM.cjs.prod.js +41 -41
  161. package/STM/dist/effect-STM.esm.js +1193 -112
  162. package/Schedule/dist/effect-Schedule.cjs.dev.js +11 -11
  163. package/Schedule/dist/effect-Schedule.cjs.prod.js +11 -11
  164. package/Schedule/dist/effect-Schedule.esm.js +957 -57
  165. package/ScheduleDecision/dist/effect-ScheduleDecision.cjs.dev.js +4 -4
  166. package/ScheduleDecision/dist/effect-ScheduleDecision.cjs.prod.js +4 -4
  167. package/ScheduleDecision/dist/effect-ScheduleDecision.esm.js +48 -24
  168. package/ScheduleInterval/dist/effect-ScheduleInterval.cjs.dev.js +2 -2
  169. package/ScheduleInterval/dist/effect-ScheduleInterval.cjs.prod.js +2 -2
  170. package/ScheduleInterval/dist/effect-ScheduleInterval.esm.js +130 -17
  171. package/ScheduleIntervals/dist/effect-ScheduleIntervals.cjs.dev.js +3 -3
  172. package/ScheduleIntervals/dist/effect-ScheduleIntervals.cjs.prod.js +3 -3
  173. package/ScheduleIntervals/dist/effect-ScheduleIntervals.esm.js +105 -23
  174. package/Scheduler/dist/effect-Scheduler.esm.js +326 -34
  175. package/Scope/dist/effect-Scope.cjs.dev.js +12 -12
  176. package/Scope/dist/effect-Scope.cjs.prod.js +12 -12
  177. package/Scope/dist/effect-Scope.esm.js +117 -71
  178. package/ScopedCache/dist/effect-ScopedCache.cjs.dev.js +14 -14
  179. package/ScopedCache/dist/effect-ScopedCache.cjs.prod.js +14 -14
  180. package/ScopedCache/dist/effect-ScopedCache.esm.js +52 -75
  181. package/ScopedRef/dist/effect-ScopedRef.cjs.dev.js +19 -19
  182. package/ScopedRef/dist/effect-ScopedRef.cjs.prod.js +19 -19
  183. package/ScopedRef/dist/effect-ScopedRef.esm.js +71 -79
  184. package/Sink/dist/effect-Sink.cjs.dev.js +32 -32
  185. package/Sink/dist/effect-Sink.cjs.prod.js +32 -32
  186. package/Sink/dist/effect-Sink.esm.js +997 -101
  187. package/SortedMap/dist/effect-SortedMap.esm.js +168 -23
  188. package/SortedSet/dist/effect-SortedSet.esm.js +263 -23
  189. package/Stream/dist/effect-Stream.cjs.dev.js +37 -37
  190. package/Stream/dist/effect-Stream.cjs.prod.js +37 -37
  191. package/Stream/dist/effect-Stream.esm.js +2879 -108
  192. package/StreamHaltStrategy/dist/effect-StreamHaltStrategy.esm.js +97 -2
  193. package/String/dist/effect-String.esm.js +600 -17
  194. package/Struct/dist/effect-Struct.esm.js +125 -4
  195. package/SubscriptionRef/dist/effect-SubscriptionRef.cjs.dev.js +37 -37
  196. package/SubscriptionRef/dist/effect-SubscriptionRef.cjs.prod.js +37 -37
  197. package/SubscriptionRef/dist/effect-SubscriptionRef.esm.js +160 -108
  198. package/Supervisor/dist/effect-Supervisor.cjs.dev.js +24 -24
  199. package/Supervisor/dist/effect-Supervisor.cjs.prod.js +24 -24
  200. package/Supervisor/dist/effect-Supervisor.esm.js +148 -85
  201. package/Symbol/dist/effect-Symbol.esm.js +30 -4
  202. package/SynchronizedRef/dist/effect-SynchronizedRef.cjs.dev.js +18 -18
  203. package/SynchronizedRef/dist/effect-SynchronizedRef.cjs.prod.js +18 -18
  204. package/SynchronizedRef/dist/effect-SynchronizedRef.esm.js +160 -78
  205. package/TArray/dist/effect-TArray.cjs.dev.js +43 -43
  206. package/TArray/dist/effect-TArray.cjs.prod.js +43 -43
  207. package/TArray/dist/effect-TArray.esm.js +367 -114
  208. package/TDeferred/dist/effect-TDeferred.cjs.dev.js +42 -42
  209. package/TDeferred/dist/effect-TDeferred.cjs.prod.js +42 -42
  210. package/TDeferred/dist/effect-TDeferred.esm.js +63 -113
  211. package/THub/dist/effect-THub.cjs.dev.js +44 -44
  212. package/THub/dist/effect-THub.cjs.prod.js +44 -44
  213. package/THub/dist/effect-THub.esm.js +157 -115
  214. package/TMap/dist/effect-TMap.cjs.dev.js +45 -45
  215. package/TMap/dist/effect-TMap.cjs.prod.js +45 -45
  216. package/TMap/dist/effect-TMap.esm.js +373 -116
  217. package/TPriorityQueue/dist/effect-TPriorityQueue.cjs.dev.js +41 -41
  218. package/TPriorityQueue/dist/effect-TPriorityQueue.cjs.prod.js +41 -41
  219. package/TPriorityQueue/dist/effect-TPriorityQueue.esm.js +184 -113
  220. package/TQueue/dist/effect-TQueue.cjs.dev.js +44 -44
  221. package/TQueue/dist/effect-TQueue.cjs.prod.js +44 -44
  222. package/TQueue/dist/effect-TQueue.esm.js +293 -115
  223. package/TRandom/dist/effect-TRandom.cjs.dev.js +43 -43
  224. package/TRandom/dist/effect-TRandom.cjs.prod.js +43 -43
  225. package/TRandom/dist/effect-TRandom.esm.js +93 -114
  226. package/TReentrantLock/dist/effect-TReentrantLock.cjs.dev.js +41 -41
  227. package/TReentrantLock/dist/effect-TReentrantLock.cjs.prod.js +41 -41
  228. package/TReentrantLock/dist/effect-TReentrantLock.esm.js +199 -112
  229. package/TRef/dist/effect-TRef.cjs.dev.js +41 -41
  230. package/TRef/dist/effect-TRef.cjs.prod.js +41 -41
  231. package/TRef/dist/effect-TRef.esm.js +116 -112
  232. package/TSemaphore/dist/effect-TSemaphore.cjs.dev.js +43 -43
  233. package/TSemaphore/dist/effect-TSemaphore.cjs.prod.js +43 -43
  234. package/TSemaphore/dist/effect-TSemaphore.esm.js +97 -114
  235. package/TSet/dist/effect-TSet.cjs.dev.js +45 -45
  236. package/TSet/dist/effect-TSet.cjs.prod.js +45 -45
  237. package/TSet/dist/effect-TSet.esm.js +268 -116
  238. package/Take/dist/effect-Take.cjs.dev.js +28 -28
  239. package/Take/dist/effect-Take.cjs.prod.js +28 -28
  240. package/Take/dist/effect-Take.esm.js +190 -91
  241. package/TestAnnotation/dist/effect-TestAnnotation.esm.js +111 -26
  242. package/TestAnnotationMap/dist/effect-TestAnnotationMap.esm.js +101 -2
  243. package/TestAnnotations/dist/effect-TestAnnotations.cjs.dev.js +7 -7
  244. package/TestAnnotations/dist/effect-TestAnnotations.cjs.prod.js +7 -7
  245. package/TestAnnotations/dist/effect-TestAnnotations.esm.js +83 -59
  246. package/TestClock/dist/effect-TestClock.cjs.dev.js +24 -24
  247. package/TestClock/dist/effect-TestClock.cjs.prod.js +24 -24
  248. package/TestClock/dist/effect-TestClock.esm.js +411 -87
  249. package/TestConfig/dist/effect-TestConfig.esm.js +27 -18
  250. package/TestContext/dist/effect-TestContext.cjs.dev.js +31 -31
  251. package/TestContext/dist/effect-TestContext.cjs.prod.js +31 -31
  252. package/TestContext/dist/effect-TestContext.esm.js +29 -98
  253. package/TestLive/dist/effect-TestLive.cjs.dev.js +3 -3
  254. package/TestLive/dist/effect-TestLive.cjs.prod.js +3 -3
  255. package/TestLive/dist/effect-TestLive.esm.js +48 -42
  256. package/TestServices/dist/effect-TestServices.cjs.dev.js +29 -29
  257. package/TestServices/dist/effect-TestServices.cjs.prod.js +29 -29
  258. package/TestServices/dist/effect-TestServices.esm.js +269 -96
  259. package/TestSized/dist/effect-TestSized.esm.js +50 -33
  260. package/Tracer/dist/effect-Tracer.cjs.dev.js +3 -3
  261. package/Tracer/dist/effect-Tracer.cjs.prod.js +3 -3
  262. package/Tracer/dist/effect-Tracer.esm.js +68 -42
  263. package/Tuple/dist/effect-Tuple.esm.js +173 -4
  264. package/Unify/dist/effect-Unify.esm.js +40 -2
  265. package/Utils/dist/effect-Utils.esm.js +352 -3
  266. package/dist/{Cache-e7468f24.cjs.dev.js → Cache-1688e584.cjs.dev.js} +1 -1
  267. package/dist/{Cache-65f7e875.cjs.prod.js → Cache-8f2f2b55.cjs.prod.js} +1 -1
  268. package/dist/{Channel-482334e0.cjs.prod.js → Channel-2ce019f1.cjs.prod.js} +2 -2
  269. package/dist/{Channel-4099f225.cjs.dev.js → Channel-544108d2.cjs.dev.js} +2 -2
  270. package/dist/{ChannelSingleProducerAsyncInput-e1260219.cjs.dev.js → ChannelSingleProducerAsyncInput-62f4749c.cjs.dev.js} +1 -1
  271. package/dist/{ChannelSingleProducerAsyncInput-9d23aac3.cjs.prod.js → ChannelSingleProducerAsyncInput-6e0084c3.cjs.prod.js} +1 -1
  272. package/dist/{Clock-0b777b1b.cjs.prod.js → Clock-09ecce0a.cjs.prod.js} +1 -1
  273. package/dist/{Clock-80bf3b4b.cjs.dev.js → Clock-bec722c1.cjs.dev.js} +1 -1
  274. package/dist/{Console-69b2fba9.cjs.prod.js → Console-150b7b40.cjs.prod.js} +3 -3
  275. package/dist/{Console-ff87924b.cjs.dev.js → Console-4825ee9f.cjs.dev.js} +3 -3
  276. package/dist/{DefaultServices-c1a6b148.cjs.dev.js → DefaultServices-d5740d37.cjs.dev.js} +1 -1
  277. package/dist/{DefaultServices-6a83f0aa.cjs.prod.js → DefaultServices-df7495bb.cjs.prod.js} +1 -1
  278. package/dist/{Duration-011e7325.cjs.prod.js → Duration-0bc08d03.cjs.prod.js} +8 -0
  279. package/dist/{Duration-5ac57eb4.cjs.dev.js → Duration-604874d1.cjs.dev.js} +8 -0
  280. package/dist/{Effect-f0659a90.cjs.prod.js → Effect-1442090f.cjs.prod.js} +9 -9
  281. package/dist/{Effect-8392a3cd.cjs.dev.js → Effect-6e9780e6.cjs.dev.js} +9 -9
  282. package/dist/{Error-5edcd83a.cjs.dev.js → Error-5ab157f2.cjs.dev.js} +1 -1
  283. package/dist/{Error-d7f0de14.cjs.prod.js → Error-e9d25c53.cjs.prod.js} +1 -1
  284. package/dist/{Fiber-c797d281.cjs.dev.js → Fiber-6432d5f7.cjs.dev.js} +3 -3
  285. package/dist/{Fiber-3b2a4091.cjs.prod.js → Fiber-e61b3c65.cjs.prod.js} +3 -3
  286. package/dist/{FiberRef-61cd9abe.cjs.dev.js → FiberRef-1db44a9b.cjs.dev.js} +2 -2
  287. package/dist/{FiberRef-0b332631.cjs.prod.js → FiberRef-efb4a3ac.cjs.prod.js} +2 -2
  288. package/dist/{GroupBy-bd212344.cjs.dev.js → GroupBy-8a8149b4.cjs.dev.js} +1 -1
  289. package/dist/{GroupBy-bb08aeb2.cjs.prod.js → GroupBy-b74084af.cjs.prod.js} +1 -1
  290. package/dist/{Hub-926961e9.cjs.prod.js → Hub-6e64debd.cjs.prod.js} +2 -2
  291. package/dist/{Hub-af0194fd.cjs.dev.js → Hub-74834668.cjs.dev.js} +2 -2
  292. package/dist/{KeyedPool-f7b4675c.cjs.dev.js → KeyedPool-b05481e9.cjs.dev.js} +3 -3
  293. package/dist/{KeyedPool-0ddba691.cjs.prod.js → KeyedPool-cd8abf95.cjs.prod.js} +3 -3
  294. package/dist/{Layer-ec0ab71c.cjs.prod.js → Layer-297269fd.cjs.prod.js} +1 -1
  295. package/dist/{Layer-6ad0ac38.cjs.dev.js → Layer-c69f3fdc.cjs.dev.js} +1 -1
  296. package/dist/{Logger-620f1fa9.cjs.dev.js → Logger-680763c7.cjs.dev.js} +2 -2
  297. package/dist/{Logger-3df1180d.cjs.prod.js → Logger-7a664cc3.cjs.prod.js} +2 -2
  298. package/dist/{Metric-ebc35919.cjs.dev.js → Metric-09d012ff.cjs.dev.js} +1 -1
  299. package/dist/{Metric-9607aa06.cjs.prod.js → Metric-b7563a68.cjs.prod.js} +1 -1
  300. package/dist/{MetricHook-fdc68e37.cjs.dev.js → MetricHook-3104e93b.cjs.dev.js} +1 -1
  301. package/dist/{MetricHook-a742d813.cjs.prod.js → MetricHook-efd05d72.cjs.prod.js} +1 -1
  302. package/dist/{MetricKey-b17b2c9a.cjs.prod.js → MetricKey-9cfcaec8.cjs.prod.js} +1 -1
  303. package/dist/{MetricKey-be3afc49.cjs.dev.js → MetricKey-c3ba437e.cjs.dev.js} +1 -1
  304. package/dist/{MetricKeyType-3dfa6802.cjs.prod.js → MetricKeyType-6d2d9036.cjs.prod.js} +1 -1
  305. package/dist/{MetricKeyType-fba3e0ec.cjs.dev.js → MetricKeyType-c1d7ebe8.cjs.dev.js} +1 -1
  306. package/dist/{MetricPolling-061de6b9.cjs.dev.js → MetricPolling-5af0ff67.cjs.dev.js} +3 -3
  307. package/dist/{MetricPolling-6e5e4b2e.cjs.prod.js → MetricPolling-a0a4e798.cjs.prod.js} +3 -3
  308. package/dist/{MetricRegistry-4df5e56b.cjs.dev.js → MetricRegistry-e4af936b.cjs.dev.js} +1 -1
  309. package/dist/{MetricRegistry-da2c65bd.cjs.prod.js → MetricRegistry-ff6df283.cjs.prod.js} +1 -1
  310. package/dist/{Pool-d8e4142e.cjs.prod.js → Pool-54389592.cjs.prod.js} +1 -1
  311. package/dist/{Pool-e8a79a57.cjs.dev.js → Pool-fe1b506a.cjs.dev.js} +1 -1
  312. package/dist/{Queue-de055f1c.cjs.prod.js → Queue-5f954287.cjs.prod.js} +1 -1
  313. package/dist/{Queue-55a39179.cjs.dev.js → Queue-8d082fe4.cjs.dev.js} +1 -1
  314. package/dist/{Random-d6a2f801.cjs.dev.js → Random-35304046.cjs.dev.js} +1 -1
  315. package/dist/{Random-ade126e8.cjs.prod.js → Random-b4709b6a.cjs.prod.js} +1 -1
  316. package/dist/{Reloadable-5f1ed95c.cjs.prod.js → Reloadable-2b8ba75d.cjs.prod.js} +5 -5
  317. package/dist/{Reloadable-e8bcb00e.cjs.dev.js → Reloadable-b01c9297.cjs.dev.js} +5 -5
  318. package/dist/{Request-45226c5f.cjs.prod.js → Request-53592fe4.cjs.prod.js} +2 -2
  319. package/dist/{Request-9d12c3ba.cjs.dev.js → Request-d3b63af6.cjs.dev.js} +2 -2
  320. package/dist/{RequestBlock-0e9f377b.cjs.dev.js → RequestBlock-1aa4c3bd.cjs.dev.js} +1 -1
  321. package/dist/{RequestBlock-d4c7c31d.cjs.prod.js → RequestBlock-8c3b51d1.cjs.prod.js} +1 -1
  322. package/dist/{RequestResolver-8764ee8c.cjs.prod.js → RequestResolver-133197d5.cjs.prod.js} +2 -2
  323. package/dist/{RequestResolver-b287a04a.cjs.dev.js → RequestResolver-86c21b80.cjs.dev.js} +2 -2
  324. package/dist/{Resource-f95cf55a.cjs.prod.js → Resource-2530fe45.cjs.prod.js} +3 -3
  325. package/dist/{Resource-4f2b627f.cjs.dev.js → Resource-e50b4b25.cjs.dev.js} +3 -3
  326. package/dist/{Runtime-969e6cb2.cjs.prod.js → Runtime-0d643f0c.cjs.prod.js} +1 -1
  327. package/dist/{Runtime-dc0234a0.cjs.dev.js → Runtime-c4b887ff.cjs.dev.js} +1 -1
  328. package/dist/{RuntimeFlags-7a400d83.cjs.prod.js → RuntimeFlags-9d8fac5a.cjs.prod.js} +1 -1
  329. package/dist/{RuntimeFlags-60dfc3f5.cjs.dev.js → RuntimeFlags-f67e3984.cjs.dev.js} +1 -1
  330. package/dist/{STM-b8d9766d.cjs.prod.js → STM-23270be2.cjs.prod.js} +2 -2
  331. package/dist/{STM-af9026e6.cjs.dev.js → STM-5a4c9921.cjs.dev.js} +2 -2
  332. package/dist/{Schedule-58648908.cjs.prod.js → Schedule-0444792d.cjs.prod.js} +1 -1
  333. package/dist/{Schedule-76089454.cjs.dev.js → Schedule-b6c7b49a.cjs.dev.js} +1 -1
  334. package/dist/{ScheduleDecision-fbd6bb79.cjs.prod.js → ScheduleDecision-369f2d2b.cjs.prod.js} +1 -1
  335. package/dist/{ScheduleDecision-9555a6dc.cjs.dev.js → ScheduleDecision-ba8d0e87.cjs.dev.js} +1 -1
  336. package/dist/{ScheduleInterval-3ca6dbb0.cjs.dev.js → ScheduleInterval-51f42533.cjs.dev.js} +1 -1
  337. package/dist/{ScheduleInterval-15c7da05.cjs.prod.js → ScheduleInterval-78037484.cjs.prod.js} +1 -1
  338. package/dist/{ScheduleIntervals-36ff45c1.cjs.dev.js → ScheduleIntervals-b0bfcf3b.cjs.dev.js} +1 -1
  339. package/dist/{ScheduleIntervals-a5bbdb0d.cjs.prod.js → ScheduleIntervals-db13140c.cjs.prod.js} +1 -1
  340. package/dist/{Scope-e3e714b4.cjs.prod.js → Scope-311c7eb9.cjs.prod.js} +1 -1
  341. package/dist/{Scope-820b74b2.cjs.dev.js → Scope-6ba9ec6d.cjs.dev.js} +1 -1
  342. package/dist/{ScopedCache-f9b2f52e.cjs.dev.js → ScopedCache-3f58b125.cjs.dev.js} +5 -5
  343. package/dist/{ScopedCache-467ccc2b.cjs.prod.js → ScopedCache-8f99505c.cjs.prod.js} +5 -5
  344. package/dist/{ScopedRef-b45fd0e8.cjs.prod.js → ScopedRef-7946d287.cjs.prod.js} +1 -1
  345. package/dist/{ScopedRef-735385de.cjs.dev.js → ScopedRef-b92e1633.cjs.dev.js} +1 -1
  346. package/dist/{Sink-dffe83ea.cjs.dev.js → Sink-9f13da17.cjs.dev.js} +1 -1
  347. package/dist/{Sink-cb1bba84.cjs.prod.js → Sink-9f82fc3b.cjs.prod.js} +1 -1
  348. package/dist/{Stream-c348a386.cjs.dev.js → Stream-14325ecb.cjs.dev.js} +2 -2
  349. package/dist/{Stream-39e8de11.cjs.prod.js → Stream-cf262c16.cjs.prod.js} +2 -2
  350. package/dist/{SubscriptionRef-62745b92.cjs.prod.js → SubscriptionRef-aa7bdc5f.cjs.prod.js} +5 -5
  351. package/dist/{SubscriptionRef-53e8686c.cjs.dev.js → SubscriptionRef-d3c1aa07.cjs.dev.js} +5 -5
  352. package/dist/{Supervisor-0ea7382b.cjs.prod.js → Supervisor-21087253.cjs.prod.js} +2 -2
  353. package/dist/{Supervisor-cf21fcaa.cjs.dev.js → Supervisor-40dd7ce5.cjs.dev.js} +2 -2
  354. package/dist/{SynchronizedRef-9e9689e9.cjs.dev.js → SynchronizedRef-3181eb0a.cjs.dev.js} +1 -1
  355. package/dist/{SynchronizedRef-2cc5af97.cjs.prod.js → SynchronizedRef-c6e0884b.cjs.prod.js} +1 -1
  356. package/dist/{TArray-6057170a.cjs.prod.js → TArray-6767b4bd.cjs.prod.js} +1 -1
  357. package/dist/{TArray-0b280c93.cjs.dev.js → TArray-a0a4c6e6.cjs.dev.js} +1 -1
  358. package/dist/{TDeferred-73b5dfc2.cjs.prod.js → TDeferred-a9839479.cjs.prod.js} +3 -3
  359. package/dist/{TDeferred-786b2b13.cjs.dev.js → TDeferred-ac2c4025.cjs.dev.js} +3 -3
  360. package/dist/{THub-810db270.cjs.prod.js → THub-25b77864.cjs.prod.js} +5 -5
  361. package/dist/{THub-bcd35bc0.cjs.dev.js → THub-38053ae1.cjs.dev.js} +5 -5
  362. package/dist/{TMap-7206da08.cjs.prod.js → TMap-91505efa.cjs.prod.js} +1 -1
  363. package/dist/{TMap-06e0747b.cjs.dev.js → TMap-de8ac080.cjs.dev.js} +1 -1
  364. package/dist/{TPriorityQueue-71490af5.cjs.prod.js → TPriorityQueue-00b65d1a.cjs.prod.js} +2 -2
  365. package/dist/{TPriorityQueue-0844551b.cjs.dev.js → TPriorityQueue-96ff0e15.cjs.dev.js} +2 -2
  366. package/dist/{TQueue-67ccf55b.cjs.prod.js → TQueue-5e242ca2.cjs.prod.js} +1 -1
  367. package/dist/{TQueue-5621ef6e.cjs.dev.js → TQueue-707762bf.cjs.dev.js} +1 -1
  368. package/dist/{TRandom-c974e739.cjs.dev.js → TRandom-5eb21d23.cjs.dev.js} +5 -5
  369. package/dist/{TRandom-557dc8e1.cjs.prod.js → TRandom-ec9c7bf7.cjs.prod.js} +5 -5
  370. package/dist/{TReentrantLock-5f7cba2d.cjs.dev.js → TReentrantLock-1b77d76f.cjs.dev.js} +3 -3
  371. package/dist/{TReentrantLock-e6ee830e.cjs.prod.js → TReentrantLock-c5a8401e.cjs.prod.js} +3 -3
  372. package/dist/{TRef-f7b2bc6f.cjs.prod.js → TRef-b87580d7.cjs.prod.js} +1 -1
  373. package/dist/{TRef-38eac0f0.cjs.dev.js → TRef-cf2e8ad7.cjs.dev.js} +1 -1
  374. package/dist/{TSemaphore-28d87428.cjs.prod.js → TSemaphore-29503416.cjs.prod.js} +4 -4
  375. package/dist/{TSemaphore-3cf15f77.cjs.dev.js → TSemaphore-50edec08.cjs.dev.js} +4 -4
  376. package/dist/{TSet-677ac73c.cjs.prod.js → TSet-3c2568e9.cjs.prod.js} +2 -2
  377. package/dist/{TSet-1dca2ef3.cjs.dev.js → TSet-bb4775ca.cjs.dev.js} +2 -2
  378. package/dist/{Take-bfdbd28d.cjs.dev.js → Take-684c9901.cjs.dev.js} +1 -1
  379. package/dist/{Take-e40627bd.cjs.prod.js → Take-b4c91438.cjs.prod.js} +1 -1
  380. package/dist/{TestAnnotations-14444032.cjs.prod.js → TestAnnotations-5db95828.cjs.prod.js} +2 -2
  381. package/dist/{TestAnnotations-ee0f8c79.cjs.dev.js → TestAnnotations-733b39ef.cjs.dev.js} +2 -2
  382. package/dist/{TestClock-30ba14e8.cjs.prod.js → TestClock-89a36b89.cjs.prod.js} +8 -8
  383. package/dist/{TestClock-d782f3ee.cjs.dev.js → TestClock-e2773846.cjs.dev.js} +8 -8
  384. package/dist/{TestContext-eebb1aad.cjs.dev.js → TestContext-3328163e.cjs.dev.js} +4 -4
  385. package/dist/{TestContext-f76f750e.cjs.prod.js → TestContext-917bf305.cjs.prod.js} +4 -4
  386. package/dist/{TestLive-dc458127.cjs.dev.js → TestLive-465ad3ef.cjs.dev.js} +1 -1
  387. package/dist/{TestLive-e5d614fe.cjs.prod.js → TestLive-f3232ac4.cjs.prod.js} +1 -1
  388. package/dist/{TestServices-b3af20a3.cjs.prod.js → TestServices-605f726e.cjs.prod.js} +6 -6
  389. package/dist/{TestServices-7a60d735.cjs.dev.js → TestServices-921e5c42.cjs.dev.js} +6 -6
  390. package/dist/{Tracer-3cd1e3bc.cjs.prod.js → Tracer-d06d0b61.cjs.prod.js} +1 -1
  391. package/dist/{Tracer-435e56fd.cjs.dev.js → Tracer-da182c8c.cjs.dev.js} +1 -1
  392. package/dist/{cache-66637407.cjs.dev.js → cache-6cdc31f7.cjs.dev.js} +3 -3
  393. package/dist/{cache-c88afdc0.cjs.prod.js → cache-ab7bbfbd.cjs.prod.js} +3 -3
  394. package/dist/{circular-d08ca815.cjs.dev.js → circular-4cb0b79d.cjs.dev.js} +5 -5
  395. package/dist/{circular-7eed8a92.cjs.prod.js → circular-5b3558d9.cjs.prod.js} +5 -5
  396. package/dist/{circular-5c436934.cjs.dev.js → circular-78011d6b.cjs.dev.js} +3 -3
  397. package/dist/{circular-c8f8e360.cjs.prod.js → circular-81b4c556.cjs.prod.js} +3 -3
  398. package/dist/{core-20a91d69.cjs.prod.js → core-4ced6e17.cjs.prod.js} +4 -4
  399. package/dist/{core-6e50c01f.cjs.dev.js → core-d9eea905.cjs.dev.js} +4 -4
  400. package/dist/{core-effect-780f9db7.cjs.dev.js → core-effect-a9b8ee08.cjs.dev.js} +4 -4
  401. package/dist/{core-effect-023f4abe.cjs.prod.js → core-effect-bf806dd9.cjs.prod.js} +4 -4
  402. package/dist/{dataSource-7ec08fa5.cjs.prod.js → dataSource-abccc876.cjs.prod.js} +2 -2
  403. package/dist/{dataSource-e56e2a99.cjs.dev.js → dataSource-d5f79f4e.cjs.dev.js} +2 -2
  404. package/dist/declarations/src/Duration.d.ts +5 -0
  405. package/dist/declarations/src/Duration.d.ts.map +1 -1
  406. package/dist/{defaultServices-452aebad.cjs.prod.js → defaultServices-4112c0c9.cjs.prod.js} +1 -1
  407. package/dist/{defaultServices-e9a9b935.cjs.dev.js → defaultServices-60c753dc.cjs.dev.js} +1 -1
  408. package/dist/effect.cjs.dev.js +93 -93
  409. package/dist/effect.cjs.prod.js +93 -93
  410. package/dist/effect.esm.js +283 -197
  411. package/dist/{fiber-2975db3a.cjs.prod.js → fiber-90ffaf8c.cjs.prod.js} +1 -1
  412. package/dist/{fiber-1132297b.cjs.dev.js → fiber-da1a207c.cjs.dev.js} +1 -1
  413. package/dist/{fiberRuntime-9d6d53be.cjs.prod.js → fiberRuntime-1c369a47.cjs.prod.js} +7 -7
  414. package/dist/{fiberRuntime-ac7fae54.cjs.dev.js → fiberRuntime-e9680313.cjs.dev.js} +7 -7
  415. package/dist/{groupBy-f0a83f90.cjs.prod.js → groupBy-0cc85afb.cjs.prod.js} +5 -5
  416. package/dist/{groupBy-e1d3c5e8.cjs.dev.js → groupBy-b204a881.cjs.dev.js} +5 -5
  417. package/dist/{hook-0bf192b2.cjs.prod.js → hook-6c7550dc.cjs.prod.js} +1 -1
  418. package/dist/{hook-9e86d119.cjs.dev.js → hook-822704ea.cjs.dev.js} +1 -1
  419. package/dist/{key-a79acfe7.cjs.prod.js → key-330b98b1.cjs.prod.js} +1 -1
  420. package/dist/{key-6ac569ca.cjs.dev.js → key-a474fc0d.cjs.dev.js} +1 -1
  421. package/dist/{keyType-c1e7cfc5.cjs.dev.js → keyType-1e916ae2.cjs.dev.js} +1 -1
  422. package/dist/{keyType-681c1c4a.cjs.prod.js → keyType-8460e792.cjs.prod.js} +1 -1
  423. package/dist/{layer-f0c8023d.cjs.dev.js → layer-ae8eefad.cjs.dev.js} +9 -9
  424. package/dist/{layer-db9c42be.cjs.prod.js → layer-ffacc2c5.cjs.prod.js} +9 -9
  425. package/dist/{pool-cd9f1284.cjs.dev.js → pool-3f16af61.cjs.dev.js} +4 -4
  426. package/dist/{pool-975b7d21.cjs.prod.js → pool-59a31f55.cjs.prod.js} +4 -4
  427. package/dist/{query-12e387cf.cjs.dev.js → query-193d0a89.cjs.dev.js} +3 -3
  428. package/dist/{query-eb8a7001.cjs.prod.js → query-fe4a82d6.cjs.prod.js} +3 -3
  429. package/dist/{queue-0dbc2b3f.cjs.dev.js → queue-04ae7ec7.cjs.dev.js} +1 -1
  430. package/dist/{queue-f70dda1a.cjs.prod.js → queue-b81aee38.cjs.prod.js} +1 -1
  431. package/dist/{registry-92c00ecd.cjs.prod.js → registry-29905dcc.cjs.prod.js} +2 -2
  432. package/dist/{registry-9e9ae2c7.cjs.dev.js → registry-c883cf52.cjs.dev.js} +2 -2
  433. package/dist/{runtime-f8d0f39b.cjs.dev.js → runtime-3ae98f19.cjs.dev.js} +3 -3
  434. package/dist/{runtime-0ada41f2.cjs.prod.js → runtime-8c3f1bd3.cjs.prod.js} +3 -3
  435. package/dist/{schedule-18b063cb.cjs.dev.js → schedule-479d8fcc.cjs.dev.js} +7 -7
  436. package/dist/{schedule-f918adf5.cjs.prod.js → schedule-7e30db2d.cjs.prod.js} +7 -7
  437. package/dist/{scopedRef-50091b28.cjs.dev.js → scopedRef-16d9d192.cjs.dev.js} +3 -3
  438. package/dist/{scopedRef-d6396f06.cjs.prod.js → scopedRef-40b5bb82.cjs.prod.js} +3 -3
  439. package/dist/{singleProducerAsyncInput-f3dd657f.cjs.dev.js → singleProducerAsyncInput-552122e6.cjs.dev.js} +1 -1
  440. package/dist/{singleProducerAsyncInput-bd600183.cjs.prod.js → singleProducerAsyncInput-c5ff73b7.cjs.prod.js} +1 -1
  441. package/dist/{sink-bb64c8a6.cjs.dev.js → sink-16a1a901.cjs.dev.js} +9 -9
  442. package/dist/{sink-6a1db2b0.cjs.prod.js → sink-c9ae7558.cjs.prod.js} +9 -9
  443. package/dist/{stm-2b8fa344.cjs.dev.js → stm-44f045e5.cjs.dev.js} +3 -3
  444. package/dist/{stm-e3401389.cjs.prod.js → stm-59af7e62.cjs.prod.js} +3 -3
  445. package/dist/{stream-7bc5bfac.cjs.dev.js → stream-84a13e23.cjs.dev.js} +13 -17
  446. package/dist/{stream-22ea5a61.cjs.prod.js → stream-8acbee57.cjs.prod.js} +13 -17
  447. package/dist/{tArray-a211cc29.cjs.prod.js → tArray-a690480d.cjs.prod.js} +3 -3
  448. package/dist/{tArray-36a6e713.cjs.dev.js → tArray-c0a3d1e2.cjs.dev.js} +3 -3
  449. package/dist/{tMap-fd504724.cjs.dev.js → tMap-1c1b10c4.cjs.dev.js} +5 -5
  450. package/dist/{tMap-9c22a2ff.cjs.prod.js → tMap-8dfc92f5.cjs.prod.js} +5 -5
  451. package/dist/{tQueue-4b66ca7b.cjs.prod.js → tQueue-48a29f8b.cjs.prod.js} +4 -4
  452. package/dist/{tQueue-565f8994.cjs.dev.js → tQueue-aaec000f.cjs.dev.js} +4 -4
  453. package/dist/{tRef-565db536.cjs.dev.js → tRef-1df89632.cjs.dev.js} +1 -1
  454. package/dist/{tRef-74dff65b.cjs.prod.js → tRef-cc473a9f.cjs.prod.js} +1 -1
  455. package/dist/{take-05ea3c27.cjs.prod.js → take-906e6ef4.cjs.prod.js} +1 -1
  456. package/dist/{take-f87477f8.cjs.dev.js → take-e1c6b82a.cjs.dev.js} +1 -1
  457. package/{dist/Context-149c432f.esm.js → internal/Context.esm.js} +9 -9
  458. package/internal/Data.esm.js +49 -0
  459. package/internal/Differ/ChunkPatch.esm.js +131 -0
  460. package/internal/Differ/ContextPatch.esm.js +158 -0
  461. package/internal/Differ/HashMapPatch.esm.js +133 -0
  462. package/internal/Differ/HashSetPatch.esm.js +107 -0
  463. package/internal/Differ/OrPatch.esm.js +196 -0
  464. package/internal/Differ.esm.js +130 -0
  465. package/internal/Effectable.esm.js +89 -0
  466. package/internal/Either.esm.js +95 -0
  467. package/internal/Encoding/Base64.esm.js +74 -0
  468. package/internal/Encoding/Base64Url.esm.js +24 -0
  469. package/internal/Encoding/Common.esm.js +21 -0
  470. package/internal/Encoding/Hex.esm.js +55 -0
  471. package/internal/HashMap/array.esm.js +51 -0
  472. package/internal/HashMap/bitwise.esm.js +34 -0
  473. package/internal/HashMap/config.esm.js +16 -0
  474. package/internal/HashMap/keySet.esm.js +8 -0
  475. package/internal/HashMap/node.esm.js +253 -0
  476. package/internal/HashMap.esm.js +366 -0
  477. package/internal/HashSet.esm.js +211 -0
  478. package/internal/Option.esm.js +75 -0
  479. package/{dist/ReadonlyArray-c8b1f51c.esm.js → internal/ReadonlyArray.esm.js} +1 -1
  480. package/internal/RedBlackTree/iterator.esm.js +204 -0
  481. package/internal/RedBlackTree/node.esm.js +43 -0
  482. package/{dist/RedBlackTree-611b3b4c.esm.js → internal/RedBlackTree.esm.js} +65 -655
  483. package/{dist/Stack-765c2298.esm.js → internal/Stack.esm.js} +1 -1
  484. package/internal/blockedRequests.esm.js +365 -0
  485. package/{dist/cache-d62912e6.esm.js → internal/cache.esm.js} +18 -18
  486. package/internal/cause.esm.js +1067 -0
  487. package/internal/channel/channelExecutor.esm.js +692 -0
  488. package/internal/channel/channelState.esm.js +78 -0
  489. package/{dist/childExecutorDecision-a7b466d2.esm.js → internal/channel/childExecutorDecision.esm.js} +3 -17
  490. package/internal/channel/continuation.esm.js +58 -0
  491. package/{dist/mergeDecision-d31cb28c.esm.js → internal/channel/mergeDecision.esm.js} +3 -12
  492. package/{dist/mergeState-1325df20.esm.js → internal/channel/mergeState.esm.js} +3 -17
  493. package/{dist/mergeStrategy-a88b5442.esm.js → internal/channel/mergeStrategy.esm.js} +3 -12
  494. package/{dist/singleProducerAsyncInput-5b2ede75.esm.js → internal/channel/singleProducerAsyncInput.esm.js} +8 -8
  495. package/internal/channel/subexecutor.esm.js +153 -0
  496. package/{dist/upstreamPullRequest-fed99e29.esm.js → internal/channel/upstreamPullRequest.esm.js} +3 -12
  497. package/{dist/upstreamPullStrategy-d5d1aa92.esm.js → internal/channel/upstreamPullStrategy.esm.js} +3 -12
  498. package/internal/channel.esm.js +648 -0
  499. package/internal/clock.esm.js +82 -0
  500. package/internal/completedRequestMap.esm.js +7 -0
  501. package/internal/concurrency.esm.js +47 -0
  502. package/{dist/config-b039b99f.esm.js → internal/config.esm.js} +12 -66
  503. package/{dist/configError-8b2e2999.esm.js → internal/configError.esm.js} +5 -34
  504. package/{dist/pathPatch-f393ab1b.esm.js → internal/configProvider/pathPatch.esm.js} +7 -7
  505. package/{dist/configProvider-c997961d.esm.js → internal/configProvider.esm.js} +16 -79
  506. package/{dist/configSecret-6e9eaf9d.esm.js → internal/configSecret.esm.js} +5 -5
  507. package/internal/console.esm.js +72 -0
  508. package/{dist/core-effect-57445976.esm.js → internal/core-effect.esm.js} +26 -53
  509. package/internal/core-stream.esm.js +293 -0
  510. package/internal/core.esm.js +1745 -0
  511. package/{dist/dataSource-1f41ea46.esm.js → internal/dataSource.esm.js} +9 -8
  512. package/internal/defaultServices/console.esm.js +96 -0
  513. package/internal/defaultServices.esm.js +84 -0
  514. package/internal/deferred.esm.js +37 -0
  515. package/{dist/circular-08fb0138.esm.js → internal/effect/circular.esm.js} +23 -20
  516. package/internal/executionStrategy.esm.js +61 -0
  517. package/{dist/fiber-8fb398f3.esm.js → internal/fiber.esm.js} +15 -121
  518. package/internal/fiberId.esm.js +243 -0
  519. package/internal/fiberMessage.esm.js +54 -0
  520. package/{dist/patch-743d675c.esm.js → internal/fiberRefs/patch.esm.js} +5 -5
  521. package/{dist/fiberRefs-69cce1a0.esm.js → internal/fiberRefs.esm.js} +8 -8
  522. package/{dist/fiberRuntime-bfcf5f49.esm.js → internal/fiberRuntime.esm.js} +152 -1006
  523. package/internal/fiberScope.esm.js +58 -0
  524. package/internal/fiberStatus.esm.js +89 -0
  525. package/{dist/groupBy-d11b31b1.esm.js → internal/groupBy.esm.js} +16 -14
  526. package/{dist/Hub-121dbf51.esm.js → internal/hub.esm.js} +34 -196
  527. package/internal/keyedPool.esm.js +161 -0
  528. package/{dist/circular-e463e1e6.esm.js → internal/layer/circular.esm.js} +10 -8
  529. package/{dist/layer-35828af7.esm.js → internal/layer.esm.js} +21 -65
  530. package/internal/logSpan.esm.js +15 -0
  531. package/internal/logger-circular.esm.js +21 -0
  532. package/internal/logger.esm.js +213 -0
  533. package/{dist/boundaries-52029180.esm.js → internal/metric/boundaries.esm.js} +7 -7
  534. package/{dist/hook-fd61107b.esm.js → internal/metric/hook.esm.js} +10 -10
  535. package/{dist/key-340a2bae.esm.js → internal/metric/key.esm.js} +9 -9
  536. package/{dist/keyType-869d90f8.esm.js → internal/metric/keyType.esm.js} +6 -6
  537. package/{dist/label-0cc6c9a0.esm.js → internal/metric/label.esm.js} +5 -5
  538. package/{dist/pair-5bb3eef4.esm.js → internal/metric/pair.esm.js} +2 -2
  539. package/internal/metric/polling.esm.js +74 -0
  540. package/{dist/registry-c59aeb06.esm.js → internal/metric/registry.esm.js} +8 -8
  541. package/{dist/state-2c6abdb1.esm.js → internal/metric/state.esm.js} +5 -5
  542. package/internal/metric.esm.js +204 -0
  543. package/internal/opCodes/cause.esm.js +31 -0
  544. package/internal/opCodes/channel.esm.js +71 -0
  545. package/internal/opCodes/channelChildExecutorDecision.esm.js +16 -0
  546. package/internal/opCodes/channelMergeDecision.esm.js +11 -0
  547. package/internal/opCodes/channelMergeState.esm.js +16 -0
  548. package/internal/opCodes/channelMergeStrategy.esm.js +11 -0
  549. package/internal/opCodes/channelState.esm.js +21 -0
  550. package/internal/opCodes/channelUpstreamPullRequest.esm.js +11 -0
  551. package/internal/opCodes/channelUpstreamPullStrategy.esm.js +11 -0
  552. package/internal/opCodes/config.esm.js +56 -0
  553. package/internal/opCodes/configError.esm.js +31 -0
  554. package/internal/opCodes/continuation.esm.js +11 -0
  555. package/internal/opCodes/deferred.esm.js +11 -0
  556. package/internal/opCodes/effect.esm.js +71 -0
  557. package/internal/opCodes/layer.esm.js +46 -0
  558. package/internal/opCodes/streamHaltStrategy.esm.js +21 -0
  559. package/{dist/pool-7d5c25ef.esm.js → internal/pool.esm.js} +13 -13
  560. package/{dist/query-242f7fda.esm.js → internal/query.esm.js} +10 -7
  561. package/{dist/queue-f74db567.esm.js → internal/queue.esm.js} +10 -10
  562. package/internal/random.esm.js +58 -0
  563. package/internal/ref.esm.js +121 -0
  564. package/internal/reloadable.esm.js +62 -0
  565. package/internal/request.esm.js +81 -0
  566. package/internal/resource.esm.js +35 -0
  567. package/internal/ringBuffer.esm.js +56 -0
  568. package/{dist/runtime-bcdd4416.esm.js → internal/runtime.esm.js} +19 -17
  569. package/internal/runtimeFlags.esm.js +137 -0
  570. package/internal/runtimeFlagsPatch.esm.js +57 -0
  571. package/internal/schedule/decision.esm.js +45 -0
  572. package/internal/schedule/interval.esm.js +85 -0
  573. package/internal/schedule/intervals.esm.js +135 -0
  574. package/{dist/schedule-566ae18c.esm.js → internal/schedule.esm.js} +26 -25
  575. package/{dist/ScopedCache-8fa7e96d.esm.js → internal/scopedCache.esm.js} +27 -83
  576. package/{dist/scopedRef-0fdefef8.esm.js → internal/scopedRef.esm.js} +10 -10
  577. package/internal/singleShotGen.esm.js +30 -0
  578. package/internal/sink.esm.js +918 -0
  579. package/{dist/core-f6cae6d7.esm.js → internal/stm/core.esm.js} +46 -525
  580. package/internal/stm/opCodes/stm.esm.js +56 -0
  581. package/internal/stm/opCodes/stmState.esm.js +16 -0
  582. package/internal/stm/opCodes/strategy.esm.js +16 -0
  583. package/internal/stm/opCodes/tExit.esm.js +26 -0
  584. package/internal/stm/opCodes/tryCommit.esm.js +11 -0
  585. package/internal/stm/stm/entry.esm.js +47 -0
  586. package/internal/stm/stm/journal.esm.js +96 -0
  587. package/internal/stm/stm/stmState.esm.js +104 -0
  588. package/internal/stm/stm/tExit.esm.js +113 -0
  589. package/internal/stm/stm/tryCommit.esm.js +25 -0
  590. package/internal/stm/stm/txnId.esm.js +15 -0
  591. package/internal/stm/stm/versioned.esm.js +8 -0
  592. package/{dist/stm-6937f6f2.esm.js → internal/stm/stm.esm.js} +16 -14
  593. package/{dist/tArray-79024770.esm.js → internal/stm/tArray.esm.js} +8 -8
  594. package/internal/stm/tDeferred.esm.js +49 -0
  595. package/{dist/THub-573c2fb3.esm.js → internal/stm/tHub.esm.js} +28 -200
  596. package/{dist/tMap-907e37f4.esm.js → internal/stm/tMap.esm.js} +13 -13
  597. package/internal/stm/tPriorityQueue.esm.js +156 -0
  598. package/{dist/tQueue-74395d76.esm.js → internal/stm/tQueue.esm.js} +10 -24
  599. package/internal/stm/tRandom.esm.js +89 -0
  600. package/internal/stm/tReentrantLock.esm.js +216 -0
  601. package/{dist/tRef-fc8ff438.esm.js → internal/stm/tRef.esm.js} +6 -4
  602. package/internal/stm/tSemaphore.esm.js +73 -0
  603. package/internal/stm/tSet.esm.js +113 -0
  604. package/internal/stream/debounceState.esm.js +39 -0
  605. package/internal/stream/emit.esm.js +51 -0
  606. package/internal/stream/haltStrategy.esm.js +74 -0
  607. package/internal/stream/handoff.esm.js +79 -0
  608. package/internal/stream/handoffSignal.esm.js +40 -0
  609. package/internal/stream/pull.esm.js +10 -0
  610. package/internal/stream/sinkEndReason.esm.js +27 -0
  611. package/internal/stream/zipAllState.esm.js +65 -0
  612. package/internal/stream/zipChunksState.esm.js +41 -0
  613. package/{dist/stream-e44fba40.esm.js → internal/stream.esm.js} +399 -770
  614. package/internal/string-utils.esm.js +66 -0
  615. package/internal/subscriptionRef.esm.js +65 -0
  616. package/internal/supervisor/patch.esm.js +156 -0
  617. package/internal/supervisor.esm.js +204 -0
  618. package/{dist/synchronizedRef-1ceb6bd3.esm.js → internal/synchronizedRef.esm.js} +4 -4
  619. package/{dist/take-0d5e0eab.esm.js → internal/take.esm.js} +8 -8
  620. package/internal/testing/suspendedWarningData.esm.js +66 -0
  621. package/internal/testing/warningData.esm.js +75 -0
  622. package/{dist/timeout-4180303d.esm.js → internal/timeout.esm.js} +1 -1
  623. package/internal/tracer.esm.js +61 -0
  624. package/package.json +700 -554
  625. package/dist/Bigint-bf034c1f.esm.js +0 -370
  626. package/dist/Boolean-bf38e241.esm.js +0 -248
  627. package/dist/Brand-f068009f.esm.js +0 -215
  628. package/dist/Cache-27cd0ab7.esm.js +0 -120
  629. package/dist/Cause-5946c7a3.esm.js +0 -730
  630. package/dist/Channel-4bba5096.esm.js +0 -1109
  631. package/dist/ChannelChildExecutorDecision-674b3a48.esm.js +0 -125
  632. package/dist/ChannelMergeDecision-e5f34de0.esm.js +0 -70
  633. package/dist/ChannelMergeState-ae694a7c.esm.js +0 -114
  634. package/dist/ChannelMergeStrategy-9ef51c54.esm.js +0 -95
  635. package/dist/ChannelSingleProducerAsyncInput-1d15a3ec.esm.js +0 -52
  636. package/dist/ChannelUpstreamPullRequest-9b3a6733.esm.js +0 -95
  637. package/dist/ChannelUpstreamPullStrategy-85e1042b.esm.js +0 -94
  638. package/dist/Chunk-4c1f4599.esm.js +0 -1167
  639. package/dist/Clock-f8b987d7.esm.js +0 -88
  640. package/dist/Config-8d8f5a9f.esm.js +0 -358
  641. package/dist/ConfigError-41421a53.esm.js +0 -206
  642. package/dist/ConfigProvider-977168f2.esm.js +0 -220
  643. package/dist/ConfigProviderPathPatch-881ec2b5.esm.js +0 -79
  644. package/dist/ConfigSecret-9d3bf471.esm.js +0 -74
  645. package/dist/Console-9be5cd81.esm.js +0 -247
  646. package/dist/Context-c41aa832.esm.js +0 -312
  647. package/dist/Data-dee529b9.esm.js +0 -224
  648. package/dist/DefaultServices-b70d7e44.esm.js +0 -30
  649. package/dist/Deferred-9010d2ac.esm.js +0 -230
  650. package/dist/Differ-a249bf4d.esm.js +0 -975
  651. package/dist/Duration-98bca14c.esm.js +0 -467
  652. package/dist/Effect-ee05a487.esm.js +0 -3417
  653. package/dist/Effectable-a292d920.esm.js +0 -158
  654. package/dist/Effectable-d9b23ee3.esm.js +0 -89
  655. package/dist/Either-408d23a8.esm.js +0 -163
  656. package/dist/Either-aa46c018.esm.js +0 -473
  657. package/dist/Encoding-d95012ad.esm.js +0 -295
  658. package/dist/Equal-2a99fde3.esm.js +0 -65
  659. package/dist/Equivalence-cf2752b1.esm.js +0 -218
  660. package/dist/Error-083b7b69.esm.js +0 -53
  661. package/dist/ExecutionStrategy-e3775e86.esm.js +0 -168
  662. package/dist/Exit-666b4f01.esm.js +0 -371
  663. package/dist/Fiber-ebef9c60.esm.js +0 -473
  664. package/dist/FiberId-17e50f05.esm.js +0 -422
  665. package/dist/FiberRef-ddf157fd.esm.js +0 -338
  666. package/dist/FiberRefs-f705c1b5.esm.js +0 -122
  667. package/dist/FiberRefsPatch-04e0adc7.esm.js +0 -84
  668. package/dist/FiberStatus-7a24d5ef.esm.js +0 -187
  669. package/dist/Function-12511160.esm.js +0 -516
  670. package/dist/GlobalValue-b5edf230.esm.js +0 -25
  671. package/dist/GroupBy-4c667347.esm.js +0 -72
  672. package/dist/HKT-1990744d.esm.js +0 -5
  673. package/dist/Hash-7910f34f.esm.js +0 -179
  674. package/dist/HashMap-6c230bde.esm.js +0 -327
  675. package/dist/HashSet-69824ba8.esm.js +0 -907
  676. package/dist/HashSet-ae2856c1.esm.js +0 -256
  677. package/dist/Inspectable-b0c51e90.esm.js +0 -45
  678. package/dist/KeyedPool-08ee3618.esm.js +0 -273
  679. package/dist/Layer-8586a429.esm.js +0 -623
  680. package/dist/List-6e58a1e9.esm.js +0 -865
  681. package/dist/LogLevel-5a4fa506.esm.js +0 -222
  682. package/dist/LogSpan-f36e9619.esm.js +0 -42
  683. package/dist/Logger-aafaa76b.esm.js +0 -246
  684. package/dist/Metric-fef02dd6.esm.js +0 -442
  685. package/dist/MetricBoundaries-c8610876.esm.js +0 -61
  686. package/dist/MetricHook-6859801b.esm.js +0 -80
  687. package/dist/MetricKey-d1b96e85.esm.js +0 -118
  688. package/dist/MetricKeyType-4ce20904.esm.js +0 -168
  689. package/dist/MetricLabel-123185d1.esm.js +0 -48
  690. package/dist/MetricPair-840a98b7.esm.js +0 -45
  691. package/dist/MetricPolling-538e65c8.esm.js +0 -167
  692. package/dist/MetricRegistry-1e32438c.esm.js +0 -34
  693. package/dist/MetricState-ccc2e0db.esm.js +0 -172
  694. package/dist/MutableHashMap-02b39969.esm.js +0 -142
  695. package/dist/MutableHashSet-db4f96e8.esm.js +0 -101
  696. package/dist/MutableList-76401868.esm.js +0 -281
  697. package/dist/MutableQueue-446ac662.esm.js +0 -202
  698. package/dist/MutableRef-2734b082.esm.js +0 -176
  699. package/dist/NonEmptyIterable-e78d759e.esm.js +0 -33
  700. package/dist/Number-4b836a09.esm.js +0 -394
  701. package/dist/Option-df40d2b9.esm.js +0 -1135
  702. package/dist/Order-a875fe30.esm.js +0 -293
  703. package/dist/Ordering-079176ff.esm.js +0 -97
  704. package/dist/Pipeable-10760a1d.esm.js +0 -49
  705. package/dist/Pool-f1667f78.esm.js +0 -114
  706. package/dist/Predicate-6b61b95b.esm.js +0 -677
  707. package/dist/Queue-d99be5de.esm.js +0 -362
  708. package/dist/Random-5ed16d23.esm.js +0 -94
  709. package/dist/ReadonlyArray-0a71b226.esm.js +0 -1584
  710. package/dist/ReadonlyRecord-c9f03980.esm.js +0 -544
  711. package/dist/Ref-5eefaff1.esm.js +0 -248
  712. package/dist/Reloadable-e2eba7eb.esm.js +0 -159
  713. package/dist/Request-8b0e9130.esm.js +0 -175
  714. package/dist/RequestBlock-88afac19.esm.js +0 -114
  715. package/dist/RequestResolver-f17a25be.esm.js +0 -213
  716. package/dist/Resource-525ecb8a.esm.js +0 -111
  717. package/dist/Runtime-7b6c0a8b.esm.js +0 -175
  718. package/dist/RuntimeFlags-60048f70.esm.js +0 -344
  719. package/dist/RuntimeFlagsPatch-51f77dce.esm.js +0 -365
  720. package/dist/STM-1ef98d11.esm.js +0 -1321
  721. package/dist/Schedule-8502145c.esm.js +0 -1059
  722. package/dist/ScheduleDecision-e0b221dc.esm.js +0 -99
  723. package/dist/ScheduleInterval-cc7fc624.esm.js +0 -229
  724. package/dist/ScheduleIntervals-c4dc0500.esm.js +0 -252
  725. package/dist/Scheduler-844c1a90.esm.js +0 -343
  726. package/dist/Scope-0253ac82.esm.js +0 -131
  727. package/dist/ScopedRef-d92cda3b.esm.js +0 -80
  728. package/dist/Sink-322b0a96.esm.js +0 -1107
  729. package/dist/SortedMap-e429b26f.esm.js +0 -190
  730. package/dist/SortedSet-ffc2cefd.esm.js +0 -288
  731. package/dist/Stream-a54c82e5.esm.js +0 -3175
  732. package/dist/StreamEmit-bd696ab0.esm.js +0 -5
  733. package/dist/StreamHaltStrategy-592df221.esm.js +0 -201
  734. package/dist/String-5d27ad4c.esm.js +0 -648
  735. package/dist/Struct-b95eb81c.esm.js +0 -134
  736. package/dist/SubscriptionRef-93d8d20b.esm.js +0 -245
  737. package/dist/Supervisor-802f0ad0.esm.js +0 -160
  738. package/dist/Symbol-81368584.esm.js +0 -36
  739. package/dist/SynchronizedRef-5b418159.esm.js +0 -187
  740. package/dist/TArray-e0699120.esm.js +0 -412
  741. package/dist/TDeferred-96a9e821.esm.js +0 -120
  742. package/dist/TMap-0b08af84.esm.js +0 -419
  743. package/dist/TPriorityQueue-a5eb73d4.esm.js +0 -360
  744. package/dist/TQueue-2c224826.esm.js +0 -324
  745. package/dist/TRandom-dbfd1b25.esm.js +0 -192
  746. package/dist/TReentrantLock-83290260.esm.js +0 -435
  747. package/dist/TRef-bb02383a.esm.js +0 -135
  748. package/dist/TSemaphore-9a746009.esm.js +0 -183
  749. package/dist/TSet-91c5d646.esm.js +0 -412
  750. package/dist/Take-880079f7.esm.js +0 -214
  751. package/dist/TestAnnotation-f4477615.esm.js +0 -124
  752. package/dist/TestAnnotationMap-11d08509.esm.js +0 -114
  753. package/dist/TestAnnotations-39f7e011.esm.js +0 -91
  754. package/dist/TestClock-ab72e391.esm.js +0 -565
  755. package/dist/TestConfig-0d2c885c.esm.js +0 -33
  756. package/dist/TestContext-61178585.esm.js +0 -36
  757. package/dist/TestLive-61a5e471.esm.js +0 -55
  758. package/dist/TestServices-310ebe14.esm.js +0 -306
  759. package/dist/TestSized-745ac7e5.esm.js +0 -58
  760. package/dist/Tracer-da65ce12.esm.js +0 -75
  761. package/dist/Tuple-eefd2c03.esm.js +0 -187
  762. package/dist/Types-be3804ad.esm.js +0 -5
  763. package/dist/Unify-118c2d56.esm.js +0 -45
  764. package/dist/Utils-80c21479.esm.js +0 -362
  765. package/dist/core-64ab7ff5.esm.js +0 -3225
  766. package/dist/defaultServices-b9ca1236.esm.js +0 -359
  767. package/dist/sink-637a9670.esm.js +0 -2877
@@ -1,1584 +0,0 @@
1
- import { a as isLeft } from './Either-aa46c018.esm.js';
2
- import { a as equivalence } from './Equal-2a99fde3.esm.js';
3
- import { a as array$1 } from './Equivalence-cf2752b1.esm.js';
4
- import { d as dual, i as identity } from './Function-12511160.esm.js';
5
- import { i as isNonEmptyArray$1 } from './ReadonlyArray-c8b1f51c.esm.js';
6
- import { t as toArray, n as none, s as some$1, g as getOrElse, i as isSome, a as isNone } from './Option-df40d2b9.esm.js';
7
- import { m as mapInput, c as combineAll, b as min$1, d as max$1, e as array } from './Order-a875fe30.esm.js';
8
- import { t as toEntries } from './ReadonlyRecord-c9f03980.esm.js';
9
-
10
- /**
11
- * This module provides utility functions for working with arrays in TypeScript.
12
- *
13
- * @since 2.0.0
14
- */
15
-
16
- /**
17
- * @category type lambdas
18
- * @since 2.0.0
19
- */
20
-
21
- /**
22
- * @category models
23
- * @since 2.0.0
24
- */
25
-
26
- /**
27
- * @category models
28
- * @since 2.0.0
29
- */
30
-
31
- /**
32
- * Builds a `NonEmptyArray` from an non-empty collection of elements.
33
- *
34
- * @category constructors
35
- * @since 2.0.0
36
- */
37
- const make = (...elements) => elements;
38
-
39
- /**
40
- * Return a `NonEmptyArray` of length `n` with element `i` initialized with `f(i)`.
41
- *
42
- * **Note**. `n` is normalized to an integer >= 1.
43
- *
44
- * @example
45
- * import { makeBy } from 'effect/ReadonlyArray'
46
- *
47
- * assert.deepStrictEqual(makeBy(5, n => n * 2), [0, 2, 4, 6, 8])
48
- *
49
- * @category constructors
50
- * @since 2.0.0
51
- */
52
- const makeBy = (n, f) => {
53
- const max = Math.max(1, Math.floor(n));
54
- const out = [f(0)];
55
- for (let i = 1; i < max; i++) {
56
- out.push(f(i));
57
- }
58
- return out;
59
- };
60
-
61
- /**
62
- * Return a `NonEmptyArray` containing a range of integers, including both endpoints.
63
- *
64
- * @example
65
- * import { range } from 'effect/ReadonlyArray'
66
- *
67
- * assert.deepStrictEqual(range(1, 3), [1, 2, 3])
68
- *
69
- * @category constructors
70
- * @since 2.0.0
71
- */
72
- const range = (start, end) => start <= end ? makeBy(end - start + 1, i => start + i) : [start];
73
-
74
- /**
75
- * Return a `NonEmptyArray` containing a value repeated the specified number of times.
76
- *
77
- * **Note**. `n` is normalized to an integer >= 1.
78
- *
79
- * @example
80
- * import { replicate } from 'effect/ReadonlyArray'
81
- *
82
- * assert.deepStrictEqual(replicate("a", 3), ["a", "a", "a"])
83
- *
84
- * @category constructors
85
- * @since 2.0.0
86
- */
87
- const replicate = /*#__PURE__*/dual(2, (a, n) => makeBy(n, () => a));
88
-
89
- /**
90
- * @category conversions
91
- * @since 2.0.0
92
- */
93
- const fromIterable = collection => Array.isArray(collection) ? collection : Array.from(collection);
94
-
95
- /**
96
- * Takes a record and returns an array of tuples containing its keys and values.
97
- *
98
- * @param self - The record to transform.
99
- *
100
- * @example
101
- * import { fromRecord } from "effect/ReadonlyArray"
102
- *
103
- * const x = { a: 1, b: 2, c: 3 }
104
- * assert.deepStrictEqual(fromRecord(x), [["a", 1], ["b", 2], ["c", 3]])
105
- *
106
- * @category conversions
107
- * @since 2.0.0
108
- */
109
- const fromRecord = toEntries;
110
-
111
- /**
112
- * @category conversions
113
- * @since 2.0.0
114
- */
115
- const fromOption = toArray;
116
-
117
- /**
118
- * @category pattern matching
119
- * @since 2.0.0
120
- */
121
- const match = /*#__PURE__*/dual(2, (self, {
122
- onEmpty,
123
- onNonEmpty
124
- }) => isNonEmptyReadonlyArray(self) ? onNonEmpty(self) : onEmpty());
125
-
126
- /**
127
- * @category pattern matching
128
- * @since 2.0.0
129
- */
130
- const matchLeft = /*#__PURE__*/dual(2, (self, {
131
- onEmpty,
132
- onNonEmpty
133
- }) => isNonEmptyReadonlyArray(self) ? onNonEmpty(headNonEmpty(self), tailNonEmpty(self)) : onEmpty());
134
-
135
- /**
136
- * @category pattern matching
137
- * @since 2.0.0
138
- */
139
- const matchRight = /*#__PURE__*/dual(2, (self, {
140
- onEmpty,
141
- onNonEmpty
142
- }) => isNonEmptyReadonlyArray(self) ? onNonEmpty(initNonEmpty(self), lastNonEmpty(self)) : onEmpty());
143
-
144
- /**
145
- * Prepend an element to the front of an `Iterable`, creating a new `NonEmptyArray`.
146
- *
147
- * @category concatenating
148
- * @since 2.0.0
149
- */
150
- const prepend = /*#__PURE__*/dual(2, (self, head) => [head, ...self]);
151
-
152
- /**
153
- * @category concatenating
154
- * @since 2.0.0
155
- */
156
- const prependAll = /*#__PURE__*/dual(2, (self, that) => fromIterable(that).concat(fromIterable(self)));
157
-
158
- /**
159
- * @category concatenating
160
- * @since 2.0.0
161
- */
162
- const prependAllNonEmpty = /*#__PURE__*/dual(2, (self, that) => prependAll(self, that));
163
-
164
- /**
165
- * Append an element to the end of an `Iterable`, creating a new `NonEmptyArray`.
166
- *
167
- * @category concatenating
168
- * @since 2.0.0
169
- */
170
- const append = /*#__PURE__*/dual(2, (self, last) => [...self, last]);
171
-
172
- /**
173
- * @category concatenating
174
- * @since 2.0.0
175
- */
176
- const appendAll = /*#__PURE__*/dual(2, (self, that) => fromIterable(self).concat(fromIterable(that)));
177
-
178
- /**
179
- * @category concatenating
180
- * @since 2.0.0
181
- */
182
- const appendAllNonEmpty = /*#__PURE__*/dual(2, (self, that) => appendAll(self, that));
183
-
184
- /**
185
- * Reduce an `Iterable` from the left, keeping all intermediate results instead of only the final result.
186
- *
187
- * @category folding
188
- * @since 2.0.0
189
- */
190
- const scan = /*#__PURE__*/dual(3, (self, b, f) => {
191
- const out = [b];
192
- let i = 0;
193
- for (const a of self) {
194
- out[i + 1] = f(out[i], a);
195
- i++;
196
- }
197
- return out;
198
- });
199
-
200
- /**
201
- * Reduce an `Iterable` from the right, keeping all intermediate results instead of only the final result.
202
- *
203
- * @category folding
204
- * @since 2.0.0
205
- */
206
- const scanRight = /*#__PURE__*/dual(3, (self, b, f) => {
207
- const input = fromIterable(self);
208
- const out = new Array(input.length + 1);
209
- out[input.length] = b;
210
- for (let i = input.length - 1; i >= 0; i--) {
211
- out[i] = f(out[i + 1], input[i]);
212
- }
213
- return out;
214
- });
215
-
216
- /**
217
- * Determine if an `Array` is empty narrowing down the type to `[]`.
218
- *
219
- * @param self - The `Array` to check.
220
- *
221
- * @example
222
- * import { isEmptyArray } from "effect/ReadonlyArray"
223
- *
224
- * assert.deepStrictEqual(isEmptyArray([]), true);
225
- * assert.deepStrictEqual(isEmptyArray([1, 2, 3]), false);
226
- *
227
- * @category guards
228
- * @since 2.0.0
229
- */
230
- const isEmptyArray = self => self.length === 0;
231
-
232
- /**
233
- * Determine if a `ReadonlyArray` is empty narrowing down the type to `readonly []`.
234
- *
235
- * @param self - The `ReadonlyArray` to check.
236
- *
237
- * @example
238
- * import { isEmptyReadonlyArray } from "effect/ReadonlyArray"
239
- *
240
- * assert.deepStrictEqual(isEmptyReadonlyArray([]), true);
241
- * assert.deepStrictEqual(isEmptyReadonlyArray([1, 2, 3]), false);
242
- *
243
- * @category guards
244
- * @since 2.0.0
245
- */
246
- const isEmptyReadonlyArray = isEmptyArray;
247
-
248
- /**
249
- * Determine if an `Array` is non empty narrowing down the type to `NonEmptyArray`.
250
- *
251
- * An `Array` is considered to be a `NonEmptyArray` if it contains at least one element.
252
- *
253
- * @param self - The `Array` to check.
254
- *
255
- * @example
256
- * import { isNonEmptyArray } from "effect/ReadonlyArray"
257
- *
258
- * assert.deepStrictEqual(isNonEmptyArray([]), false);
259
- * assert.deepStrictEqual(isNonEmptyArray([1, 2, 3]), true);
260
- *
261
- * @category guards
262
- * @since 2.0.0
263
- */
264
- const isNonEmptyArray = isNonEmptyArray$1;
265
-
266
- /**
267
- * Determine if a `ReadonlyArray` is non empty narrowing down the type to `NonEmptyReadonlyArray`.
268
- *
269
- * A `ReadonlyArray` is considered to be a `NonEmptyReadonlyArray` if it contains at least one element.
270
- *
271
- * @param self - The `ReadonlyArray` to check.
272
- *
273
- * @example
274
- * import { isNonEmptyReadonlyArray } from "effect/ReadonlyArray"
275
- *
276
- * assert.deepStrictEqual(isNonEmptyReadonlyArray([]), false);
277
- * assert.deepStrictEqual(isNonEmptyReadonlyArray([1, 2, 3]), true);
278
- *
279
- * @category guards
280
- * @since 2.0.0
281
- */
282
- const isNonEmptyReadonlyArray = isNonEmptyArray$1;
283
-
284
- /**
285
- * Return the number of elements in a `ReadonlyArray`.
286
- *
287
- * @category getters
288
- * @since 2.0.0
289
- */
290
- const length = self => self.length;
291
- const isOutOfBound = (i, as) => i < 0 || i >= as.length;
292
- const clamp = (i, as) => Math.floor(Math.min(Math.max(0, i), as.length));
293
-
294
- /**
295
- * This function provides a safe way to read a value at a particular index from a `ReadonlyArray`.
296
- *
297
- * @category getters
298
- * @since 2.0.0
299
- */
300
- const get = /*#__PURE__*/dual(2, (self, index) => {
301
- const i = Math.floor(index);
302
- return isOutOfBound(i, self) ? none() : some$1(self[i]);
303
- });
304
-
305
- /**
306
- * Gets an element unsafely, will throw on out of bounds.
307
- *
308
- * @since 2.0.0
309
- * @category unsafe
310
- */
311
- const unsafeGet = /*#__PURE__*/dual(2, (self, index) => {
312
- const i = Math.floor(index);
313
- if (isOutOfBound(i, self)) {
314
- throw new Error(`Index ${i} out of bounds`);
315
- }
316
- return self[i];
317
- });
318
-
319
- /**
320
- * Return a tuple containing the first element, and a new `Array` of the remaining elements, if any.
321
- *
322
- * @category getters
323
- * @since 2.0.0
324
- */
325
- const unprepend = self => [headNonEmpty(self), tailNonEmpty(self)];
326
-
327
- /**
328
- * Return a tuple containing a copy of the `NonEmptyReadonlyArray` without its last element, and that last element.
329
- *
330
- * @category getters
331
- * @since 2.0.0
332
- */
333
- const unappend = self => [initNonEmpty(self), lastNonEmpty(self)];
334
-
335
- /**
336
- * Get the first element of a `ReadonlyArray`, or `None` if the `ReadonlyArray` is empty.
337
- *
338
- * @category getters
339
- * @since 2.0.0
340
- */
341
- const head = /*#__PURE__*/get(0);
342
-
343
- /**
344
- * @category getters
345
- * @since 2.0.0
346
- */
347
- const headNonEmpty = /*#__PURE__*/unsafeGet(0);
348
-
349
- /**
350
- * Get the last element in a `ReadonlyArray`, or `None` if the `ReadonlyArray` is empty.
351
- *
352
- * @category getters
353
- * @since 2.0.0
354
- */
355
- const last = self => isNonEmptyReadonlyArray(self) ? some$1(lastNonEmpty(self)) : none();
356
-
357
- /**
358
- * @category getters
359
- * @since 2.0.0
360
- */
361
- const lastNonEmpty = self => self[self.length - 1];
362
-
363
- /**
364
- * Get all but the first element of an `Iterable`, creating a new `Array`, or `None` if the `Iterable` is empty.
365
- *
366
- * @category getters
367
- * @since 2.0.0
368
- */
369
- const tail = self => {
370
- const input = fromIterable(self);
371
- return isNonEmptyReadonlyArray(input) ? some$1(tailNonEmpty(input)) : none();
372
- };
373
-
374
- /**
375
- * @category getters
376
- * @since 2.0.0
377
- */
378
- const tailNonEmpty = self => self.slice(1);
379
-
380
- /**
381
- * Get all but the last element of an `Iterable`, creating a new `Array`, or `None` if the `Iterable` is empty.
382
- *
383
- * @category getters
384
- * @since 2.0.0
385
- */
386
- const init = self => {
387
- const input = fromIterable(self);
388
- return isNonEmptyReadonlyArray(input) ? some$1(initNonEmpty(input)) : none();
389
- };
390
-
391
- /**
392
- * Get all but the last element of a non empty array, creating a new array.
393
- *
394
- * @category getters
395
- * @since 2.0.0
396
- */
397
- const initNonEmpty = self => self.slice(0, -1);
398
-
399
- /**
400
- * Keep only a max number of elements from the start of an `Iterable`, creating a new `Array`.
401
- *
402
- * **Note**. `n` is normalized to a non negative integer.
403
- *
404
- * @category getters
405
- * @since 2.0.0
406
- */
407
- const take = /*#__PURE__*/dual(2, (self, n) => {
408
- const input = fromIterable(self);
409
- return input.slice(0, clamp(n, input));
410
- });
411
-
412
- /**
413
- * Keep only a max number of elements from the end of an `Iterable`, creating a new `Array`.
414
- *
415
- * **Note**. `n` is normalized to a non negative integer.
416
- *
417
- * @category getters
418
- * @since 2.0.0
419
- */
420
- const takeRight = /*#__PURE__*/dual(2, (self, n) => {
421
- const input = fromIterable(self);
422
- const i = clamp(n, input);
423
- return i === 0 ? [] : input.slice(-i);
424
- });
425
-
426
- /**
427
- * Calculate the longest initial subarray for which all element satisfy the specified predicate, creating a new `Array`.
428
- *
429
- * @category getters
430
- * @since 2.0.0
431
- */
432
- const takeWhile = /*#__PURE__*/dual(2, (self, predicate) => {
433
- const out = [];
434
- for (const a of self) {
435
- if (!predicate(a)) {
436
- break;
437
- }
438
- out.push(a);
439
- }
440
- return out;
441
- });
442
- const spanIndex = (self, predicate) => {
443
- let i = 0;
444
- for (const a of self) {
445
- if (!predicate(a)) {
446
- break;
447
- }
448
- i++;
449
- }
450
- return i;
451
- };
452
-
453
- /**
454
- * Split an `Iterable` into two parts:
455
- *
456
- * 1. the longest initial subarray for which all elements satisfy the specified predicate
457
- * 2. the remaining elements
458
- *
459
- * @category filtering
460
- * @since 2.0.0
461
- */
462
- const span = /*#__PURE__*/dual(2, (self, predicate) => splitAt(self, spanIndex(self, predicate)));
463
-
464
- /**
465
- * Drop a max number of elements from the start of an `Iterable`, creating a new `Array`.
466
- *
467
- * **Note**. `n` is normalized to a non negative integer.
468
- *
469
- * @category getters
470
- * @since 2.0.0
471
- */
472
- const drop = /*#__PURE__*/dual(2, (self, n) => {
473
- const input = fromIterable(self);
474
- return input.slice(clamp(n, input), input.length);
475
- });
476
-
477
- /**
478
- * Drop a max number of elements from the end of an `Iterable`, creating a new `Array`.
479
- *
480
- * **Note**. `n` is normalized to a non negative integer.
481
- *
482
- * @category getters
483
- * @since 2.0.0
484
- */
485
- const dropRight = /*#__PURE__*/dual(2, (self, n) => {
486
- const input = fromIterable(self);
487
- return input.slice(0, input.length - clamp(n, input));
488
- });
489
-
490
- /**
491
- * Remove the longest initial subarray for which all element satisfy the specified predicate, creating a new `Array`.
492
- *
493
- * @category getters
494
- * @since 2.0.0
495
- */
496
- const dropWhile = /*#__PURE__*/dual(2, (self, predicate) => fromIterable(self).slice(spanIndex(self, predicate)));
497
-
498
- /**
499
- * Return the first index for which a predicate holds.
500
- *
501
- * @category elements
502
- * @since 2.0.0
503
- */
504
- const findFirstIndex = /*#__PURE__*/dual(2, (self, predicate) => {
505
- let i = 0;
506
- for (const a of self) {
507
- if (predicate(a)) {
508
- return some$1(i);
509
- }
510
- i++;
511
- }
512
- return none();
513
- });
514
-
515
- /**
516
- * Return the last index for which a predicate holds.
517
- *
518
- * @category elements
519
- * @since 2.0.0
520
- */
521
- const findLastIndex = /*#__PURE__*/dual(2, (self, predicate) => {
522
- const input = fromIterable(self);
523
- for (let i = input.length - 1; i >= 0; i--) {
524
- if (predicate(input[i])) {
525
- return some$1(i);
526
- }
527
- }
528
- return none();
529
- });
530
-
531
- /**
532
- * Returns the first element that satisfies the specified
533
- * predicate, or `None` if no such element exists.
534
- *
535
- * @category elements
536
- * @since 2.0.0
537
- */
538
- const findFirst = /*#__PURE__*/dual(2, (self, predicate) => {
539
- const input = fromIterable(self);
540
- for (let i = 0; i < input.length; i++) {
541
- if (predicate(input[i])) {
542
- return some$1(input[i]);
543
- }
544
- }
545
- return none();
546
- });
547
-
548
- /**
549
- * Find the last element for which a predicate holds.
550
- *
551
- * @category elements
552
- * @since 2.0.0
553
- */
554
- const findLast = /*#__PURE__*/dual(2, (self, predicate) => {
555
- const input = fromIterable(self);
556
- for (let i = input.length - 1; i >= 0; i--) {
557
- if (predicate(input[i])) {
558
- return some$1(input[i]);
559
- }
560
- }
561
- return none();
562
- });
563
-
564
- /**
565
- * Insert an element at the specified index, creating a new `NonEmptyArray`,
566
- * or return `None` if the index is out of bounds.
567
- *
568
- * @since 2.0.0
569
- */
570
- const insertAt = /*#__PURE__*/dual(3, (self, i, b) => {
571
- const out = Array.from(self);
572
- // v--- `= self.length` is ok, it means inserting in last position
573
- if (i < 0 || i > out.length) {
574
- return none();
575
- }
576
- out.splice(i, 0, b);
577
- return some$1(out);
578
- });
579
-
580
- /**
581
- * Change the element at the specified index, creating a new `Array`,
582
- * or return a copy of the input if the index is out of bounds.
583
- *
584
- * @since 2.0.0
585
- */
586
- const replace = /*#__PURE__*/dual(3, (self, i, b) => modify(self, i, () => b));
587
-
588
- /**
589
- * @since 2.0.0
590
- */
591
- const replaceOption = /*#__PURE__*/dual(3, (self, i, b) => modifyOption(self, i, () => b));
592
-
593
- /**
594
- * Apply a function to the element at the specified index, creating a new `Array`,
595
- * or return a copy of the input if the index is out of bounds.
596
- *
597
- * @since 2.0.0
598
- */
599
- const modify = /*#__PURE__*/dual(3, (self, i, f) => getOrElse(modifyOption(self, i, f), () => Array.from(self)));
600
-
601
- /**
602
- * Apply a function to the element at the specified index, creating a new `Array`,
603
- * or return `None` if the index is out of bounds.
604
- *
605
- * @since 2.0.0
606
- */
607
- const modifyOption = /*#__PURE__*/dual(3, (self, i, f) => {
608
- const out = Array.from(self);
609
- if (isOutOfBound(i, out)) {
610
- return none();
611
- }
612
- const next = f(out[i]);
613
- // @ts-expect-error
614
- out[i] = next;
615
- return some$1(out);
616
- });
617
-
618
- /**
619
- * Delete the element at the specified index, creating a new `Array`,
620
- * or return a copy of the input if the index is out of bounds.
621
- *
622
- * @since 2.0.0
623
- */
624
- const remove = /*#__PURE__*/dual(2, (self, i) => {
625
- const out = Array.from(self);
626
- if (isOutOfBound(i, out)) {
627
- return out;
628
- }
629
- out.splice(i, 1);
630
- return out;
631
- });
632
-
633
- /**
634
- * Reverse an `Iterable`, creating a new `Array`.
635
- *
636
- * @category elements
637
- * @since 2.0.0
638
- */
639
- const reverse = self => Array.from(self).reverse();
640
-
641
- /**
642
- * @category elements
643
- * @since 2.0.0
644
- */
645
- const reverseNonEmpty = self => [lastNonEmpty(self), ...self.slice(0, -1).reverse()];
646
-
647
- /**
648
- * Sort the elements of an `Iterable` in increasing order, creating a new `Array`.
649
- *
650
- * @category sorting
651
- * @since 2.0.0
652
- */
653
- const sort = /*#__PURE__*/dual(2, (self, O) => {
654
- const out = Array.from(self);
655
- out.sort(O);
656
- return out;
657
- });
658
-
659
- /**
660
- * @since 2.0.0
661
- * @category elements
662
- */
663
- const sortWith = /*#__PURE__*/dual(3, (self, f, order) => sort(self, mapInput(order, f)));
664
-
665
- /**
666
- * Sort the elements of a `NonEmptyReadonlyArray` in increasing order, creating a new `NonEmptyArray`.
667
- *
668
- * @category sorting
669
- * @since 2.0.0
670
- */
671
- const sortNonEmpty = /*#__PURE__*/dual(2, (self, O) => sort(O)(self));
672
-
673
- /**
674
- * Sort the elements of an `Iterable` in increasing order, where elements are compared
675
- * using first `orders[0]`, then `orders[1]`, etc...
676
- *
677
- * @category sorting
678
- * @since 2.0.0
679
- */
680
- const sortBy = (...orders) => self => {
681
- const input = fromIterable(self);
682
- return isNonEmptyReadonlyArray(input) ? sortByNonEmpty(...orders)(input) : [];
683
- };
684
-
685
- /**
686
- * @category sorting
687
- * @since 2.0.0
688
- */
689
- const sortByNonEmpty = (...orders) => sortNonEmpty(combineAll(orders));
690
-
691
- /**
692
- * Takes two `Iterable`s and returns an `Array` of corresponding pairs.
693
- * If one input `Iterable` is short, excess elements of the
694
- * longer `Iterable` are discarded.
695
- *
696
- * @since 2.0.0
697
- */
698
- const zip = /*#__PURE__*/dual(2, (self, that) => zipWith(self, that, (a, b) => [a, b]));
699
-
700
- /**
701
- * Apply a function to pairs of elements at the same index in two `Iterable`s, collecting the results in a new `Array`. If one
702
- * input `Iterable` is short, excess elements of the longer `Iterable` are discarded.
703
- *
704
- * @since 2.0.0
705
- */
706
- const zipWith = /*#__PURE__*/dual(3, (self, that, f) => {
707
- const as = fromIterable(self);
708
- const bs = fromIterable(that);
709
- return isNonEmptyReadonlyArray(as) && isNonEmptyReadonlyArray(bs) ? zipNonEmptyWith(bs, f)(as) : [];
710
- });
711
-
712
- /**
713
- * @since 2.0.0
714
- */
715
- const zipNonEmpty = /*#__PURE__*/dual(2, (self, that) => zipNonEmptyWith(self, that, (a, b) => [a, b]));
716
-
717
- /**
718
- * @since 2.0.0
719
- */
720
- const zipNonEmptyWith = /*#__PURE__*/dual(3, (self, that, f) => {
721
- const cs = [f(headNonEmpty(self), headNonEmpty(that))];
722
- const len = Math.min(self.length, that.length);
723
- for (let i = 1; i < len; i++) {
724
- cs[i] = f(self[i], that[i]);
725
- }
726
- return cs;
727
- });
728
-
729
- /**
730
- * This function is the inverse of `zip`. Takes an `Iterable` of pairs and return two corresponding `Array`s.
731
- *
732
- * @since 2.0.0
733
- */
734
- const unzip = self => {
735
- const input = fromIterable(self);
736
- return isNonEmptyReadonlyArray(input) ? unzipNonEmpty(input) : [[], []];
737
- };
738
-
739
- /**
740
- * @since 2.0.0
741
- */
742
- const unzipNonEmpty = self => {
743
- const fa = [self[0][0]];
744
- const fb = [self[0][1]];
745
- for (let i = 1; i < self.length; i++) {
746
- fa[i] = self[i][0];
747
- fb[i] = self[i][1];
748
- }
749
- return [fa, fb];
750
- };
751
-
752
- /**
753
- * Places an element in between members of an `Iterable`
754
- *
755
- * @since 2.0.0
756
- */
757
- const intersperse = /*#__PURE__*/dual(2, (self, middle) => {
758
- const input = fromIterable(self);
759
- return isNonEmptyReadonlyArray(input) ? intersperseNonEmpty(input, middle) : [];
760
- });
761
-
762
- /**
763
- * Places an element in between members of a `NonEmptyReadonlyArray`
764
- *
765
- * @since 2.0.0
766
- */
767
- const intersperseNonEmpty = /*#__PURE__*/dual(2, (self, middle) => {
768
- const out = [headNonEmpty(self)];
769
- const tail = tailNonEmpty(self);
770
- for (let i = 0; i < tail.length; i++) {
771
- if (i < tail.length) {
772
- out.push(middle);
773
- }
774
- out.push(tail[i]);
775
- }
776
- return out;
777
- });
778
-
779
- /**
780
- * Apply a function to the head, creating a new `NonEmptyReadonlyArray`.
781
- *
782
- * @since 2.0.0
783
- */
784
- const modifyNonEmptyHead = /*#__PURE__*/dual(2, (self, f) => [f(headNonEmpty(self)), ...tailNonEmpty(self)]);
785
-
786
- /**
787
- * Change the head, creating a new `NonEmptyReadonlyArray`.
788
- *
789
- * @since 2.0.0
790
- */
791
- const setNonEmptyHead = /*#__PURE__*/dual(2, (self, b) => modifyNonEmptyHead(self, () => b));
792
-
793
- /**
794
- * Apply a function to the last element, creating a new `NonEmptyReadonlyArray`.
795
- *
796
- * @since 2.0.0
797
- */
798
- const modifyNonEmptyLast = /*#__PURE__*/dual(2, (self, f) => append(initNonEmpty(self), f(lastNonEmpty(self))));
799
-
800
- /**
801
- * Change the last element, creating a new `NonEmptyReadonlyArray`.
802
- *
803
- * @since 2.0.0
804
- */
805
- const setNonEmptyLast = /*#__PURE__*/dual(2, (self, b) => modifyNonEmptyLast(self, () => b));
806
-
807
- /**
808
- * Rotate an `Iterable` by `n` steps.
809
- *
810
- * @since 2.0.0
811
- */
812
- const rotate = /*#__PURE__*/dual(2, (self, n) => {
813
- const input = fromIterable(self);
814
- return isNonEmptyReadonlyArray(input) ? rotateNonEmpty(input, n) : [];
815
- });
816
-
817
- /**
818
- * Rotate a `NonEmptyReadonlyArray` by `n` steps.
819
- *
820
- * @since 2.0.0
821
- */
822
- const rotateNonEmpty = /*#__PURE__*/dual(2, (self, n) => {
823
- const len = self.length;
824
- const m = Math.round(n) % len;
825
- if (isOutOfBound(Math.abs(m), self) || m === 0) {
826
- return copy(self);
827
- }
828
- if (m < 0) {
829
- const [f, s] = splitNonEmptyAt(self, -m);
830
- return appendAllNonEmpty(s, f);
831
- } else {
832
- return rotateNonEmpty(self, m - len);
833
- }
834
- });
835
-
836
- /**
837
- * Returns a function that checks if a `ReadonlyArray` contains a given value using a provided `isEquivalent` function.
838
- *
839
- * @category elements
840
- * @since 2.0.0
841
- */
842
- const containsWith = isEquivalent => dual(2, (self, a) => {
843
- for (const i of self) {
844
- if (isEquivalent(a, i)) {
845
- return true;
846
- }
847
- }
848
- return false;
849
- });
850
- const _equivalence = /*#__PURE__*/equivalence();
851
-
852
- /**
853
- * Returns a function that checks if a `ReadonlyArray` contains a given value using the default `Equivalence`.
854
- *
855
- * @category elements
856
- * @since 2.0.0
857
- */
858
- const contains = /*#__PURE__*/containsWith(_equivalence);
859
-
860
- /**
861
- * Remove duplicates from a `NonEmptyReadonlyArray`, keeping the first occurrence of an element using the provided `isEquivalent` function.
862
- *
863
- * @since 2.0.0
864
- */
865
- const dedupeNonEmptyWith = /*#__PURE__*/dual(2, (self, isEquivalent) => {
866
- const out = [headNonEmpty(self)];
867
- const rest = tailNonEmpty(self);
868
- for (const a of rest) {
869
- if (out.every(o => !isEquivalent(a, o))) {
870
- out.push(a);
871
- }
872
- }
873
- return out;
874
- });
875
-
876
- /**
877
- * Remove duplicates from a `NonEmptyReadonlyArray`, keeping the first occurrence of an element.
878
- *
879
- * @since 2.0.0
880
- */
881
- const dedupeNonEmpty = /*#__PURE__*/dedupeNonEmptyWith( /*#__PURE__*/equivalence());
882
-
883
- /**
884
- * A useful recursion pattern for processing an `Iterable` to produce a new `Array`, often used for "chopping" up the input
885
- * `Iterable`. Typically chop is called with some function that will consume an initial prefix of the `Iterable` and produce a
886
- * value and the rest of the `Array`.
887
- *
888
- * @since 2.0.0
889
- */
890
- const chop = /*#__PURE__*/dual(2, (self, f) => {
891
- const input = fromIterable(self);
892
- return isNonEmptyReadonlyArray(input) ? chopNonEmpty(input, f) : [];
893
- });
894
-
895
- /**
896
- * A useful recursion pattern for processing a `NonEmptyReadonlyArray` to produce a new `NonEmptyReadonlyArray`, often used for "chopping" up the input
897
- * `NonEmptyReadonlyArray`. Typically `chop` is called with some function that will consume an initial prefix of the `NonEmptyReadonlyArray` and produce a
898
- * value and the tail of the `NonEmptyReadonlyArray`.
899
- *
900
- * @since 2.0.0
901
- */
902
- const chopNonEmpty = /*#__PURE__*/dual(2, (self, f) => {
903
- const [b, rest] = f(self);
904
- const out = [b];
905
- let next = rest;
906
- while (isNonEmptyArray$1(next)) {
907
- const [b, rest] = f(next);
908
- out.push(b);
909
- next = rest;
910
- }
911
- return out;
912
- });
913
-
914
- /**
915
- * Splits an `Iterable` into two pieces, the first piece has max `n` elements.
916
- *
917
- * @category getters
918
- * @since 2.0.0
919
- */
920
- const splitAt = /*#__PURE__*/dual(2, (self, n) => {
921
- const input = Array.from(self);
922
- return n >= 1 && isNonEmptyReadonlyArray(input) ? splitNonEmptyAt(input, n) : isEmptyReadonlyArray(input) ? [input, []] : [[], input];
923
- });
924
-
925
- /**
926
- * @since 2.0.0
927
- */
928
- const copy = self => self.slice();
929
-
930
- /**
931
- * Splits a `NonEmptyReadonlyArray` into two pieces, the first piece has max `n` elements.
932
- *
933
- * @category getters
934
- * @since 2.0.0
935
- */
936
- const splitNonEmptyAt = /*#__PURE__*/dual(2, (self, n) => {
937
- const m = Math.max(1, n);
938
- return m >= self.length ? [copy(self), []] : [prepend(self.slice(1, m), headNonEmpty(self)), self.slice(m)];
939
- });
940
-
941
- /**
942
- * Splits an `Iterable` into length-`n` pieces. The last piece will be shorter if `n` does not evenly divide the length of
943
- * the `Iterable`. Note that `chunksOf(n)([])` is `[]`, not `[[]]`. This is intentional, and is consistent with a recursive
944
- * definition of `chunksOf`; it satisfies the property that
945
- *
946
- * ```ts
947
- * chunksOf(n)(xs).concat(chunksOf(n)(ys)) == chunksOf(n)(xs.concat(ys)))
948
- * ```
949
- *
950
- * whenever `n` evenly divides the length of `self`.
951
- *
952
- * @category getters
953
- * @since 2.0.0
954
- */
955
- const chunksOf = /*#__PURE__*/dual(2, (self, n) => {
956
- const input = fromIterable(self);
957
- return isNonEmptyReadonlyArray(input) ? chunksOfNonEmpty(input, n) : [];
958
- });
959
-
960
- /**
961
- * Splits a `NonEmptyReadonlyArray` into length-`n` pieces. The last piece will be shorter if `n` does not evenly divide the length of
962
- * the `NonEmptyReadonlyArray`.
963
- *
964
- * @category getters
965
- * @since 2.0.0
966
- */
967
- const chunksOfNonEmpty = /*#__PURE__*/dual(2, (self, n) => chopNonEmpty(self, splitNonEmptyAt(n)));
968
-
969
- /**
970
- * Group equal, consecutive elements of a `NonEmptyReadonlyArray` into `NonEmptyArray`s using the provided `isEquivalent` function.
971
- *
972
- * @category grouping
973
- * @since 2.0.0
974
- */
975
- const groupWith = /*#__PURE__*/dual(2, (self, isEquivalent) => chopNonEmpty(self, as => {
976
- const h = headNonEmpty(as);
977
- const out = [h];
978
- let i = 1;
979
- for (; i < as.length; i++) {
980
- const a = as[i];
981
- if (isEquivalent(a, h)) {
982
- out.push(a);
983
- } else {
984
- break;
985
- }
986
- }
987
- return [out, as.slice(i)];
988
- }));
989
-
990
- /**
991
- * Group equal, consecutive elements of a `NonEmptyReadonlyArray` into `NonEmptyArray`s.
992
- *
993
- * @category grouping
994
- * @since 2.0.0
995
- */
996
- const group = /*#__PURE__*/groupWith( /*#__PURE__*/equivalence());
997
-
998
- /**
999
- * Splits an `Iterable` into sub-non-empty-arrays stored in an object, based on the result of calling a `string`-returning
1000
- * function on each element, and grouping the results according to values returned
1001
- *
1002
- * @category grouping
1003
- * @since 2.0.0
1004
- */
1005
- const groupBy = /*#__PURE__*/dual(2, (self, f) => {
1006
- const out = {};
1007
- for (const a of self) {
1008
- const k = f(a);
1009
- if (Object.prototype.hasOwnProperty.call(out, k)) {
1010
- out[k].push(a);
1011
- } else {
1012
- out[k] = [a];
1013
- }
1014
- }
1015
- return out;
1016
- });
1017
-
1018
- /**
1019
- * @since 2.0.0
1020
- */
1021
- const unionWith = isEquivalent => dual(2, (self, that) => {
1022
- const a = fromIterable(self);
1023
- const b = fromIterable(that);
1024
- return isNonEmptyReadonlyArray(a) && isNonEmptyReadonlyArray(b) ? unionNonEmptyWith(isEquivalent)(a, b) : isNonEmptyReadonlyArray(a) ? a : b;
1025
- });
1026
-
1027
- /**
1028
- * @since 2.0.0
1029
- */
1030
- const union = /*#__PURE__*/unionWith(_equivalence);
1031
-
1032
- /**
1033
- * @since 2.0.0
1034
- */
1035
- const unionNonEmptyWith = isEquivalent => {
1036
- const dedupe = dedupeNonEmptyWith(isEquivalent);
1037
- return dual(2, (self, that) => dedupe(appendAllNonEmpty(self, that)));
1038
- };
1039
-
1040
- /**
1041
- * @since 2.0.0
1042
- */
1043
- const unionNonEmpty = /*#__PURE__*/unionNonEmptyWith(_equivalence);
1044
-
1045
- /**
1046
- * Creates an `Array` of unique values that are included in all given `Iterable`s using the provided `isEquivalent` function.
1047
- * The order and references of result values are determined by the first `Iterable`.
1048
- *
1049
- * @since 2.0.0
1050
- */
1051
- const intersectionWith = isEquivalent => {
1052
- const has = containsWith(isEquivalent);
1053
- return dual(2, (self, that) => fromIterable(self).filter(a => has(that, a)));
1054
- };
1055
-
1056
- /**
1057
- * Creates an `Array` of unique values that are included in all given `Iterable`s.
1058
- * The order and references of result values are determined by the first `Iterable`.
1059
- *
1060
- * @since 2.0.0
1061
- */
1062
- const intersection = /*#__PURE__*/intersectionWith(_equivalence);
1063
-
1064
- /**
1065
- * Creates a `Array` of values not included in the other given `Iterable` using the provided `isEquivalent` function.
1066
- * The order and references of result values are determined by the first `Iterable`.
1067
- *
1068
- * @since 2.0.0
1069
- */
1070
- const differenceWith = isEquivalent => {
1071
- const has = containsWith(isEquivalent);
1072
- return dual(2, (self, that) => fromIterable(self).filter(a => !has(that, a)));
1073
- };
1074
-
1075
- /**
1076
- * Creates a `Array` of values not included in the other given `Iterable` using the provided `isEquivalent` function.
1077
- * The order and references of result values are determined by the first `Iterable`.
1078
- *
1079
- * @since 2.0.0
1080
- */
1081
- const difference = /*#__PURE__*/differenceWith(_equivalence);
1082
-
1083
- /**
1084
- * @category constructors
1085
- * @since 2.0.0
1086
- */
1087
- const empty = () => [];
1088
-
1089
- /**
1090
- * Constructs a new `NonEmptyArray<A>` from the specified value.
1091
- *
1092
- * @category constructors
1093
- * @since 2.0.0
1094
- */
1095
- const of = a => [a];
1096
-
1097
- /**
1098
- * @category mapping
1099
- * @since 2.0.0
1100
- */
1101
- const map = /*#__PURE__*/dual(2, (self, f) => self.map(f));
1102
-
1103
- /**
1104
- * @category mapping
1105
- * @since 2.0.0
1106
- */
1107
- const mapNonEmpty = map;
1108
-
1109
- /**
1110
- * @category sequencing
1111
- * @since 2.0.0
1112
- */
1113
- const flatMap = /*#__PURE__*/dual(2, (self, f) => {
1114
- if (isEmptyReadonlyArray(self)) {
1115
- return [];
1116
- }
1117
- const out = [];
1118
- for (let i = 0; i < self.length; i++) {
1119
- out.push(...f(self[i], i));
1120
- }
1121
- return out;
1122
- });
1123
-
1124
- /**
1125
- * @category sequencing
1126
- * @since 2.0.0
1127
- */
1128
- const flatMapNonEmpty = flatMap;
1129
-
1130
- /**
1131
- * @category sequencing
1132
- * @since 2.0.0
1133
- */
1134
- const flatten = /*#__PURE__*/flatMap(identity);
1135
-
1136
- /**
1137
- * @category sequencing
1138
- * @since 2.0.0
1139
- */
1140
- const flattenNonEmpty = /*#__PURE__*/flatMapNonEmpty(identity);
1141
-
1142
- /**
1143
- * @category filtering
1144
- * @since 2.0.0
1145
- */
1146
- const filterMap = /*#__PURE__*/dual(2, (self, f) => {
1147
- const as = fromIterable(self);
1148
- const out = [];
1149
- for (let i = 0; i < as.length; i++) {
1150
- const o = f(as[i], i);
1151
- if (isSome(o)) {
1152
- out.push(o.value);
1153
- }
1154
- }
1155
- return out;
1156
- });
1157
-
1158
- /**
1159
- * Transforms all elements of the `readonlyArray` for as long as the specified function returns some value
1160
- *
1161
- * @category filtering
1162
- * @since 2.0.0
1163
- */
1164
- const filterMapWhile = /*#__PURE__*/dual(2, (self, f) => {
1165
- const out = [];
1166
- for (const a of self) {
1167
- const b = f(a);
1168
- if (isSome(b)) {
1169
- out.push(b.value);
1170
- } else {
1171
- break;
1172
- }
1173
- }
1174
- return out;
1175
- });
1176
-
1177
- /**
1178
- * @category filtering
1179
- * @since 2.0.0
1180
- */
1181
- const partitionMap = /*#__PURE__*/dual(2, (self, f) => {
1182
- const left = [];
1183
- const right = [];
1184
- const as = fromIterable(self);
1185
- for (let i = 0; i < as.length; i++) {
1186
- const e = f(as[i], i);
1187
- if (isLeft(e)) {
1188
- left.push(e.left);
1189
- } else {
1190
- right.push(e.right);
1191
- }
1192
- }
1193
- return [left, right];
1194
- });
1195
-
1196
- /**
1197
- * @category filtering
1198
- * @since 2.0.0
1199
- */
1200
- const compact = /*#__PURE__*/filterMap(identity);
1201
-
1202
- /**
1203
- * @category filtering
1204
- * @since 2.0.0
1205
- */
1206
- const filter = /*#__PURE__*/dual(2, (self, predicate) => {
1207
- const as = fromIterable(self);
1208
- const out = [];
1209
- for (let i = 0; i < as.length; i++) {
1210
- if (predicate(as[i], i)) {
1211
- out.push(as[i]);
1212
- }
1213
- }
1214
- return out;
1215
- });
1216
-
1217
- /**
1218
- * @category filtering
1219
- * @since 2.0.0
1220
- */
1221
- const partition = /*#__PURE__*/dual(2, (self, predicate) => {
1222
- const left = [];
1223
- const right = [];
1224
- const as = fromIterable(self);
1225
- for (let i = 0; i < as.length; i++) {
1226
- if (predicate(as[i], i)) {
1227
- right.push(as[i]);
1228
- } else {
1229
- left.push(as[i]);
1230
- }
1231
- }
1232
- return [left, right];
1233
- });
1234
-
1235
- /**
1236
- * @category filtering
1237
- * @since 2.0.0
1238
- */
1239
- const separate = /*#__PURE__*/partitionMap(identity);
1240
-
1241
- /**
1242
- * @category folding
1243
- * @since 2.0.0
1244
- */
1245
- const reduce = /*#__PURE__*/dual(3, (self, b, f) => fromIterable(self).reduce((b, a, i) => f(b, a, i), b));
1246
-
1247
- /**
1248
- * @category folding
1249
- * @since 2.0.0
1250
- */
1251
- const reduceRight = /*#__PURE__*/dual(3, (self, b, f) => fromIterable(self).reduceRight((b, a, i) => f(b, a, i), b));
1252
-
1253
- /**
1254
- * @category lifting
1255
- * @since 2.0.0
1256
- */
1257
- const liftPredicate = predicate => b => predicate(b) ? [b] : [];
1258
-
1259
- /**
1260
- * @category lifting
1261
- * @since 2.0.0
1262
- */
1263
- const liftOption = f => (...a) => fromOption(f(...a));
1264
-
1265
- /**
1266
- * @category conversions
1267
- * @since 2.0.0
1268
- */
1269
- const fromNullable = a => a == null ? empty() : [a];
1270
-
1271
- /**
1272
- * @category lifting
1273
- * @since 2.0.0
1274
- */
1275
- const liftNullable = f => (...a) => fromNullable(f(...a));
1276
-
1277
- /**
1278
- * @category combining
1279
- * @since 2.0.0
1280
- */
1281
- const flatMapNullable = /*#__PURE__*/dual(2, (self, f) => isNonEmptyReadonlyArray(self) ? fromNullable(f(headNonEmpty(self))) : empty());
1282
-
1283
- /**
1284
- * @category lifting
1285
- * @since 2.0.0
1286
- */
1287
- const liftEither = f => (...a) => {
1288
- const e = f(...a);
1289
- return isLeft(e) ? [] : [e.right];
1290
- };
1291
-
1292
- /**
1293
- * Check if a predicate holds true for every `ReadonlyArray` element.
1294
- *
1295
- * @category elements
1296
- * @since 2.0.0
1297
- */
1298
- const every = /*#__PURE__*/dual(2, (self, refinement) => self.every(refinement));
1299
-
1300
- /**
1301
- * Check if a predicate holds true for some `ReadonlyArray` element.
1302
- *
1303
- * @category elements
1304
- * @since 2.0.0
1305
- */
1306
- const some = /*#__PURE__*/dual(2, (self, predicate) => self.some(predicate));
1307
-
1308
- /**
1309
- * @since 2.0.0
1310
- */
1311
- const extend = /*#__PURE__*/dual(2, (self, f) => self.map((_, i, as) => f(as.slice(i))));
1312
-
1313
- /**
1314
- * @since 2.0.0
1315
- */
1316
- const min = /*#__PURE__*/dual(2, (self, O) => self.reduce(min$1(O)));
1317
-
1318
- /**
1319
- * @since 2.0.0
1320
- */
1321
- const max = /*#__PURE__*/dual(2, (self, O) => self.reduce(max$1(O)));
1322
-
1323
- /**
1324
- * @category constructors
1325
- * @since 2.0.0
1326
- */
1327
- const unfold = (b, f) => {
1328
- const out = [];
1329
- let next = b;
1330
- let o;
1331
- while (isSome(o = f(next))) {
1332
- const [a, b] = o.value;
1333
- out.push(a);
1334
- next = b;
1335
- }
1336
- return out;
1337
- };
1338
-
1339
- /**
1340
- * This function creates and returns a new `Order` for an array of values based on a given `Order` for the elements of the array.
1341
- * The returned `Order` compares two arrays by applying the given `Order` to each element in the arrays.
1342
- * If all elements are equal, the arrays are then compared based on their length.
1343
- * It is useful when you need to compare two arrays of the same type and you have a specific way of comparing each element of the array.
1344
- *
1345
- * @category instances
1346
- * @since 2.0.0
1347
- */
1348
- const getOrder = array;
1349
-
1350
- /**
1351
- * @category instances
1352
- * @since 2.0.0
1353
- */
1354
- const getEquivalence = array$1;
1355
-
1356
- /**
1357
- * Iterate over the `Iterable` applying `f`.
1358
- *
1359
- * @since 2.0.0
1360
- */
1361
- const forEach = /*#__PURE__*/dual(2, (self, f) => fromIterable(self).forEach((a, i) => f(a, i)));
1362
-
1363
- /**
1364
- * Remove duplicates from am `Iterable` using the provided `isEquivalent` function, keeping the first occurrence of an element.
1365
- *
1366
- * @since 2.0.0
1367
- */
1368
- const dedupeWith = /*#__PURE__*/dual(2, (self, isEquivalent) => {
1369
- const input = fromIterable(self);
1370
- return isNonEmptyReadonlyArray(input) ? dedupeNonEmptyWith(isEquivalent)(input) : [];
1371
- });
1372
-
1373
- /**
1374
- * Remove duplicates from am `Iterable`, keeping the first occurrence of an element.
1375
- *
1376
- * @since 2.0.0
1377
- */
1378
- const dedupe = /*#__PURE__*/dedupeWith( /*#__PURE__*/equivalence());
1379
-
1380
- /**
1381
- * Deduplicates adjacent elements that are identical using the provided `isEquivalent` function.
1382
- *
1383
- * @since 2.0.0
1384
- */
1385
- const dedupeAdjacentWith = /*#__PURE__*/dual(2, (self, isEquivalent) => {
1386
- const out = [];
1387
- let lastA = none();
1388
- for (const a of self) {
1389
- if (isNone(lastA) || !isEquivalent(a, lastA.value)) {
1390
- out.push(a);
1391
- lastA = some$1(a);
1392
- }
1393
- }
1394
- return out;
1395
- });
1396
-
1397
- /**
1398
- * Deduplicates adjacent elements that are identical.
1399
- *
1400
- * @since 2.0.0
1401
- */
1402
- const dedupeAdjacent = /*#__PURE__*/dedupeAdjacentWith( /*#__PURE__*/equivalence());
1403
-
1404
- /**
1405
- * Joins the elements together with "sep" in the middle.
1406
- *
1407
- * @since 2.0.0
1408
- * @category folding
1409
- */
1410
- const join = /*#__PURE__*/dual(2, (self, sep) => fromIterable(self).join(sep));
1411
-
1412
- /**
1413
- * Statefully maps over the chunk, producing new elements of type `B`.
1414
- *
1415
- * @since 2.0.0
1416
- * @category folding
1417
- */
1418
- const mapAccum = /*#__PURE__*/dual(3, (self, s, f) => {
1419
- let s1 = s;
1420
- const out = [];
1421
- for (const a of self) {
1422
- const r = f(s1, a);
1423
- s1 = r[0];
1424
- out.push(r[1]);
1425
- }
1426
- return [s1, out];
1427
- });
1428
-
1429
- /**
1430
- * Zips this chunk crosswise with the specified chunk using the specified combiner.
1431
- *
1432
- * @since 2.0.0
1433
- * @category elements
1434
- */
1435
- const cartesianWith = /*#__PURE__*/dual(3, (self, that, f) => flatMap(self, a => map(that, b => f(a, b))));
1436
-
1437
- /**
1438
- * Zips this chunk crosswise with the specified chunk.
1439
- *
1440
- * @since 2.0.0
1441
- * @category elements
1442
- */
1443
- const cartesian = /*#__PURE__*/dual(2, (self, that) => cartesianWith(self, that, (a, b) => [a, b]));
1444
-
1445
- var ReadonlyArray = /*#__PURE__*/Object.freeze({
1446
- __proto__: null,
1447
- make: make,
1448
- makeBy: makeBy,
1449
- range: range,
1450
- replicate: replicate,
1451
- fromIterable: fromIterable,
1452
- fromRecord: fromRecord,
1453
- fromOption: fromOption,
1454
- match: match,
1455
- matchLeft: matchLeft,
1456
- matchRight: matchRight,
1457
- prepend: prepend,
1458
- prependAll: prependAll,
1459
- prependAllNonEmpty: prependAllNonEmpty,
1460
- append: append,
1461
- appendAll: appendAll,
1462
- appendAllNonEmpty: appendAllNonEmpty,
1463
- scan: scan,
1464
- scanRight: scanRight,
1465
- isEmptyArray: isEmptyArray,
1466
- isEmptyReadonlyArray: isEmptyReadonlyArray,
1467
- isNonEmptyArray: isNonEmptyArray,
1468
- isNonEmptyReadonlyArray: isNonEmptyReadonlyArray,
1469
- length: length,
1470
- get: get,
1471
- unsafeGet: unsafeGet,
1472
- unprepend: unprepend,
1473
- unappend: unappend,
1474
- head: head,
1475
- headNonEmpty: headNonEmpty,
1476
- last: last,
1477
- lastNonEmpty: lastNonEmpty,
1478
- tail: tail,
1479
- tailNonEmpty: tailNonEmpty,
1480
- init: init,
1481
- initNonEmpty: initNonEmpty,
1482
- take: take,
1483
- takeRight: takeRight,
1484
- takeWhile: takeWhile,
1485
- span: span,
1486
- drop: drop,
1487
- dropRight: dropRight,
1488
- dropWhile: dropWhile,
1489
- findFirstIndex: findFirstIndex,
1490
- findLastIndex: findLastIndex,
1491
- findFirst: findFirst,
1492
- findLast: findLast,
1493
- insertAt: insertAt,
1494
- replace: replace,
1495
- replaceOption: replaceOption,
1496
- modify: modify,
1497
- modifyOption: modifyOption,
1498
- remove: remove,
1499
- reverse: reverse,
1500
- reverseNonEmpty: reverseNonEmpty,
1501
- sort: sort,
1502
- sortWith: sortWith,
1503
- sortNonEmpty: sortNonEmpty,
1504
- sortBy: sortBy,
1505
- sortByNonEmpty: sortByNonEmpty,
1506
- zip: zip,
1507
- zipWith: zipWith,
1508
- zipNonEmpty: zipNonEmpty,
1509
- zipNonEmptyWith: zipNonEmptyWith,
1510
- unzip: unzip,
1511
- unzipNonEmpty: unzipNonEmpty,
1512
- intersperse: intersperse,
1513
- intersperseNonEmpty: intersperseNonEmpty,
1514
- modifyNonEmptyHead: modifyNonEmptyHead,
1515
- setNonEmptyHead: setNonEmptyHead,
1516
- modifyNonEmptyLast: modifyNonEmptyLast,
1517
- setNonEmptyLast: setNonEmptyLast,
1518
- rotate: rotate,
1519
- rotateNonEmpty: rotateNonEmpty,
1520
- containsWith: containsWith,
1521
- contains: contains,
1522
- dedupeNonEmptyWith: dedupeNonEmptyWith,
1523
- dedupeNonEmpty: dedupeNonEmpty,
1524
- chop: chop,
1525
- chopNonEmpty: chopNonEmpty,
1526
- splitAt: splitAt,
1527
- copy: copy,
1528
- splitNonEmptyAt: splitNonEmptyAt,
1529
- chunksOf: chunksOf,
1530
- chunksOfNonEmpty: chunksOfNonEmpty,
1531
- groupWith: groupWith,
1532
- group: group,
1533
- groupBy: groupBy,
1534
- unionWith: unionWith,
1535
- union: union,
1536
- unionNonEmptyWith: unionNonEmptyWith,
1537
- unionNonEmpty: unionNonEmpty,
1538
- intersectionWith: intersectionWith,
1539
- intersection: intersection,
1540
- differenceWith: differenceWith,
1541
- difference: difference,
1542
- empty: empty,
1543
- of: of,
1544
- map: map,
1545
- mapNonEmpty: mapNonEmpty,
1546
- flatMap: flatMap,
1547
- flatMapNonEmpty: flatMapNonEmpty,
1548
- flatten: flatten,
1549
- flattenNonEmpty: flattenNonEmpty,
1550
- filterMap: filterMap,
1551
- filterMapWhile: filterMapWhile,
1552
- partitionMap: partitionMap,
1553
- compact: compact,
1554
- filter: filter,
1555
- partition: partition,
1556
- separate: separate,
1557
- reduce: reduce,
1558
- reduceRight: reduceRight,
1559
- liftPredicate: liftPredicate,
1560
- liftOption: liftOption,
1561
- fromNullable: fromNullable,
1562
- liftNullable: liftNullable,
1563
- flatMapNullable: flatMapNullable,
1564
- liftEither: liftEither,
1565
- every: every,
1566
- some: some,
1567
- extend: extend,
1568
- min: min,
1569
- max: max,
1570
- unfold: unfold,
1571
- getOrder: getOrder,
1572
- getEquivalence: getEquivalence,
1573
- forEach: forEach,
1574
- dedupeWith: dedupeWith,
1575
- dedupe: dedupe,
1576
- dedupeAdjacentWith: dedupeAdjacentWith,
1577
- dedupeAdjacent: dedupeAdjacent,
1578
- join: join,
1579
- mapAccum: mapAccum,
1580
- cartesianWith: cartesianWith,
1581
- cartesian: cartesian
1582
- });
1583
-
1584
- export { range as $, reduce as A, reduceRight as B, forEach as C, flatten as D, compact as E, empty as F, splitAt as G, getEquivalence as H, head as I, append as J, of as K, last as L, flatMap as M, make as N, unsafeGet as O, zip as P, unfold as Q, headNonEmpty as R, prepend as S, tailNonEmpty as T, isEmptyReadonlyArray as U, isNonEmptyReadonlyArray as V, isNonEmptyArray as W, span as X, every as Y, ReadonlyArray as Z, filter as _, filterMap as a, difference as a$, replicate as a0, fromRecord as a1, fromOption as a2, match as a3, matchLeft as a4, matchRight as a5, prependAll as a6, prependAllNonEmpty as a7, appendAll as a8, appendAllNonEmpty as a9, zipNonEmpty as aA, zipNonEmptyWith as aB, unzipNonEmpty as aC, intersperse as aD, intersperseNonEmpty as aE, modifyNonEmptyHead as aF, setNonEmptyHead as aG, modifyNonEmptyLast as aH, setNonEmptyLast as aI, rotate as aJ, rotateNonEmpty as aK, dedupeNonEmptyWith as aL, dedupeNonEmpty as aM, chop as aN, chopNonEmpty as aO, copy as aP, splitNonEmptyAt as aQ, chunksOf as aR, chunksOfNonEmpty as aS, groupWith as aT, group as aU, groupBy as aV, unionWith as aW, unionNonEmptyWith as aX, unionNonEmpty as aY, intersectionWith as aZ, differenceWith as a_, scan as aa, scanRight as ab, isEmptyArray as ac, length as ad, get as ae, unprepend as af, unappend as ag, lastNonEmpty as ah, tail as ai, init as aj, initNonEmpty as ak, take as al, takeRight as am, takeWhile as an, drop as ao, dropRight as ap, dropWhile as aq, insertAt as ar, replace as as, replaceOption as at, modify as au, reverseNonEmpty as av, sortWith as aw, sortNonEmpty as ax, sortBy as ay, sortByNonEmpty as az, filterMapWhile as b, mapNonEmpty as b0, flatMapNonEmpty as b1, flattenNonEmpty as b2, liftPredicate as b3, liftOption as b4, fromNullable as b5, liftNullable as b6, flatMapNullable as b7, liftEither as b8, some as b9, extend as ba, min as bb, max as bc, getOrder as bd, dedupeWith as be, dedupeAdjacentWith as bf, cartesianWith as bg, cartesian as bh, mapAccum as c, partitionMap as d, sort as e, fromIterable as f, dedupe as g, dedupeAdjacent as h, intersection as i, unzip as j, remove as k, modifyOption as l, map as m, makeBy as n, contains as o, partition as p, containsWith as q, reverse as r, separate as s, findFirst as t, union as u, findFirstIndex as v, findLast as w, findLastIndex as x, join as y, zipWith as z };