effect 2.0.0-next.41 → 2.0.0-next.43

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 (684) hide show
  1. package/Bigint/dist/effect-Bigint.cjs.dev.js +365 -28
  2. package/Bigint/dist/effect-Bigint.cjs.prod.js +365 -28
  3. package/Boolean/dist/effect-Boolean.cjs.dev.js +243 -22
  4. package/Boolean/dist/effect-Boolean.cjs.prod.js +243 -22
  5. package/Brand/dist/effect-Brand.cjs.dev.js +221 -26
  6. package/Brand/dist/effect-Brand.cjs.prod.js +221 -26
  7. package/Cache/dist/effect-Cache.cjs.dev.js +182 -77
  8. package/Cache/dist/effect-Cache.cjs.prod.js +182 -77
  9. package/Cause/dist/effect-Cause.cjs.dev.js +754 -93
  10. package/Cause/dist/effect-Cause.cjs.prod.js +754 -93
  11. package/Channel/dist/effect-Channel.cjs.dev.js +1206 -214
  12. package/Channel/dist/effect-Channel.cjs.prod.js +1206 -214
  13. package/ChannelChildExecutorDecision/dist/effect-ChannelChildExecutorDecision.cjs.dev.js +118 -12
  14. package/ChannelChildExecutorDecision/dist/effect-ChannelChildExecutorDecision.cjs.prod.js +118 -12
  15. package/ChannelMergeDecision/dist/effect-ChannelMergeDecision.cjs.dev.js +63 -9
  16. package/ChannelMergeDecision/dist/effect-ChannelMergeDecision.cjs.prod.js +63 -9
  17. package/ChannelMergeState/dist/effect-ChannelMergeState.cjs.dev.js +107 -12
  18. package/ChannelMergeState/dist/effect-ChannelMergeState.cjs.prod.js +107 -12
  19. package/ChannelMergeStrategy/dist/effect-ChannelMergeStrategy.cjs.dev.js +88 -10
  20. package/ChannelMergeStrategy/dist/effect-ChannelMergeStrategy.cjs.prod.js +88 -10
  21. package/ChannelSingleProducerAsyncInput/dist/effect-ChannelSingleProducerAsyncInput.cjs.dev.js +131 -90
  22. package/ChannelSingleProducerAsyncInput/dist/effect-ChannelSingleProducerAsyncInput.cjs.prod.js +131 -90
  23. package/ChannelUpstreamPullRequest/dist/effect-ChannelUpstreamPullRequest.cjs.dev.js +88 -10
  24. package/ChannelUpstreamPullRequest/dist/effect-ChannelUpstreamPullRequest.cjs.prod.js +88 -10
  25. package/ChannelUpstreamPullStrategy/dist/effect-ChannelUpstreamPullStrategy.cjs.dev.js +87 -10
  26. package/ChannelUpstreamPullStrategy/dist/effect-ChannelUpstreamPullStrategy.cjs.prod.js +87 -10
  27. package/Chunk/dist/effect-Chunk.cjs.dev.js +1170 -101
  28. package/Chunk/dist/effect-Chunk.cjs.prod.js +1170 -101
  29. package/Clock/dist/effect-Clock.cjs.dev.js +121 -50
  30. package/Clock/dist/effect-Clock.cjs.prod.js +121 -50
  31. package/Config/dist/effect-Config.cjs.dev.js +386 -71
  32. package/Config/dist/effect-Config.cjs.prod.js +386 -71
  33. package/ConfigError/dist/effect-ConfigError.cjs.dev.js +219 -40
  34. package/ConfigError/dist/effect-ConfigError.cjs.prod.js +219 -40
  35. package/ConfigProvider/dist/effect-ConfigProvider.cjs.dev.js +250 -58
  36. package/ConfigProvider/dist/effect-ConfigProvider.cjs.prod.js +250 -58
  37. package/ConfigProviderPathPatch/dist/effect-ConfigProviderPathPatch.cjs.dev.js +92 -28
  38. package/ConfigProviderPathPatch/dist/effect-ConfigProviderPathPatch.cjs.prod.js +92 -28
  39. package/ConfigSecret/dist/effect-ConfigSecret.cjs.dev.js +85 -28
  40. package/ConfigSecret/dist/effect-ConfigSecret.cjs.prod.js +85 -28
  41. package/Console/dist/effect-Console.cjs.dev.js +316 -106
  42. package/Console/dist/effect-Console.cjs.prod.js +316 -106
  43. package/Context/dist/effect-Context.cjs.dev.js +322 -33
  44. package/Context/dist/effect-Context.cjs.prod.js +322 -33
  45. package/Data/dist/effect-Data.cjs.dev.js +223 -21
  46. package/Data/dist/effect-Data.cjs.prod.js +223 -21
  47. package/DefaultServices/dist/effect-DefaultServices.cjs.dev.js +60 -42
  48. package/DefaultServices/dist/effect-DefaultServices.cjs.prod.js +60 -42
  49. package/Deferred/dist/effect-Deferred.cjs.dev.js +254 -55
  50. package/Deferred/dist/effect-Deferred.cjs.prod.js +254 -55
  51. package/Differ/dist/effect-Differ.cjs.dev.js +985 -42
  52. package/Differ/dist/effect-Differ.cjs.prod.js +985 -42
  53. package/Duration/dist/effect-Duration.cjs.dev.js +476 -51
  54. package/Duration/dist/effect-Duration.cjs.prod.js +476 -51
  55. package/Effect/dist/effect-Effect.cjs.dev.js +3485 -411
  56. package/Effect/dist/effect-Effect.cjs.prod.js +3485 -411
  57. package/Effectable/dist/effect-Effectable.cjs.dev.js +92 -21
  58. package/Effectable/dist/effect-Effectable.cjs.prod.js +92 -21
  59. package/Either/dist/effect-Either.cjs.dev.js +475 -43
  60. package/Either/dist/effect-Either.cjs.prod.js +475 -43
  61. package/Encoding/dist/effect-Encoding.cjs.dev.js +302 -29
  62. package/Encoding/dist/effect-Encoding.cjs.prod.js +302 -29
  63. package/Equal/dist/effect-Equal.cjs.dev.js +61 -10
  64. package/Equal/dist/effect-Equal.cjs.prod.js +61 -10
  65. package/Equivalence/dist/effect-Equivalence.cjs.dev.js +213 -23
  66. package/Equivalence/dist/effect-Equivalence.cjs.prod.js +213 -23
  67. package/Error/dist/effect-Error.cjs.dev.js +131 -91
  68. package/Error/dist/effect-Error.cjs.mjs +1 -1
  69. package/Error/dist/effect-Error.cjs.prod.js +131 -91
  70. package/Error/dist/effect-Error.esm.js +2 -2
  71. package/ExecutionStrategy/dist/effect-ExecutionStrategy.cjs.dev.js +2 -2
  72. package/ExecutionStrategy/dist/effect-ExecutionStrategy.cjs.prod.js +2 -2
  73. package/Exit/dist/effect-Exit.cjs.dev.js +395 -69
  74. package/Exit/dist/effect-Exit.cjs.prod.js +395 -69
  75. package/Fiber/dist/effect-Fiber.cjs.dev.js +538 -124
  76. package/Fiber/dist/effect-Fiber.cjs.prod.js +538 -124
  77. package/FiberId/dist/effect-FiberId.cjs.dev.js +19 -19
  78. package/FiberId/dist/effect-FiberId.cjs.prod.js +19 -19
  79. package/FiberRef/dist/effect-FiberRef.cjs.dev.js +401 -121
  80. package/FiberRef/dist/effect-FiberRef.cjs.prod.js +401 -121
  81. package/FiberRefs/dist/effect-FiberRefs.cjs.dev.js +147 -46
  82. package/FiberRefs/dist/effect-FiberRefs.cjs.prod.js +147 -46
  83. package/FiberRefsPatch/dist/effect-FiberRefsPatch.cjs.dev.js +110 -40
  84. package/FiberRefsPatch/dist/effect-FiberRefsPatch.cjs.prod.js +110 -40
  85. package/FiberStatus/dist/effect-FiberStatus.cjs.dev.js +185 -18
  86. package/FiberStatus/dist/effect-FiberStatus.cjs.prod.js +185 -18
  87. package/Function/dist/effect-Function.cjs.dev.js +511 -24
  88. package/Function/dist/effect-Function.cjs.prod.js +511 -24
  89. package/GlobalValue/dist/effect-GlobalValue.cjs.dev.js +18 -3
  90. package/GlobalValue/dist/effect-GlobalValue.cjs.prod.js +18 -3
  91. package/GroupBy/dist/effect-GroupBy.cjs.dev.js +168 -111
  92. package/GroupBy/dist/effect-GroupBy.cjs.prod.js +168 -111
  93. package/Hash/dist/effect-Hash.cjs.dev.js +175 -19
  94. package/Hash/dist/effect-Hash.cjs.prod.js +175 -19
  95. package/HashMap/dist/effect-HashMap.cjs.dev.js +337 -52
  96. package/HashMap/dist/effect-HashMap.cjs.prod.js +337 -52
  97. package/HashSet/dist/effect-HashSet.cjs.dev.js +266 -45
  98. package/HashSet/dist/effect-HashSet.cjs.prod.js +266 -45
  99. package/Hub/dist/effect-Hub.cjs.dev.js +1320 -89
  100. package/Hub/dist/effect-Hub.cjs.prod.js +1320 -89
  101. package/Inspectable/dist/effect-Inspectable.cjs.dev.js +37 -4
  102. package/Inspectable/dist/effect-Inspectable.cjs.prod.js +37 -4
  103. package/KeyedPool/dist/effect-KeyedPool.cjs.dev.js +328 -83
  104. package/KeyedPool/dist/effect-KeyedPool.cjs.prod.js +328 -83
  105. package/Layer/dist/effect-Layer.cjs.dev.js +697 -147
  106. package/Layer/dist/effect-Layer.cjs.prod.js +697 -147
  107. package/List/dist/effect-List.cjs.dev.js +868 -68
  108. package/List/dist/effect-List.cjs.prod.js +868 -68
  109. package/LogLevel/dist/effect-LogLevel.cjs.dev.js +243 -50
  110. package/LogLevel/dist/effect-LogLevel.cjs.prod.js +243 -50
  111. package/LogSpan/dist/effect-LogSpan.cjs.dev.js +34 -3
  112. package/LogSpan/dist/effect-LogSpan.cjs.prod.js +34 -3
  113. package/Logger/dist/effect-Logger.cjs.dev.js +314 -113
  114. package/Logger/dist/effect-Logger.cjs.prod.js +314 -113
  115. package/Metric/dist/effect-Metric.cjs.dev.js +504 -116
  116. package/Metric/dist/effect-Metric.cjs.prod.js +504 -116
  117. package/MetricBoundaries/dist/effect-MetricBoundaries.cjs.dev.js +72 -26
  118. package/MetricBoundaries/dist/effect-MetricBoundaries.cjs.prod.js +72 -26
  119. package/MetricHook/dist/effect-MetricHook.cjs.dev.js +95 -33
  120. package/MetricHook/dist/effect-MetricHook.cjs.prod.js +95 -33
  121. package/MetricKey/dist/effect-MetricKey.cjs.dev.js +133 -35
  122. package/MetricKey/dist/effect-MetricKey.cjs.prod.js +133 -35
  123. package/MetricKeyType/dist/effect-MetricKeyType.cjs.dev.js +179 -38
  124. package/MetricKeyType/dist/effect-MetricKeyType.cjs.prod.js +179 -38
  125. package/MetricLabel/dist/effect-MetricLabel.cjs.dev.js +47 -12
  126. package/MetricLabel/dist/effect-MetricLabel.cjs.prod.js +47 -12
  127. package/MetricPair/dist/effect-MetricPair.cjs.dev.js +38 -6
  128. package/MetricPair/dist/effect-MetricPair.cjs.prod.js +38 -6
  129. package/MetricPolling/dist/effect-MetricPolling.cjs.dev.js +230 -86
  130. package/MetricPolling/dist/effect-MetricPolling.cjs.prod.js +230 -86
  131. package/MetricRegistry/dist/effect-MetricRegistry.cjs.dev.js +55 -33
  132. package/MetricRegistry/dist/effect-MetricRegistry.cjs.prod.js +55 -33
  133. package/MetricState/dist/effect-MetricState.cjs.dev.js +174 -29
  134. package/MetricState/dist/effect-MetricState.cjs.prod.js +174 -29
  135. package/MutableHashMap/dist/effect-MutableHashMap.cjs.dev.js +149 -32
  136. package/MutableHashMap/dist/effect-MutableHashMap.cjs.prod.js +149 -32
  137. package/MutableHashSet/dist/effect-MutableHashSet.cjs.dev.js +111 -30
  138. package/MutableHashSet/dist/effect-MutableHashSet.cjs.prod.js +111 -30
  139. package/MutableList/dist/effect-MutableList.cjs.dev.js +276 -20
  140. package/MutableList/dist/effect-MutableList.cjs.prod.js +276 -20
  141. package/MutableQueue/dist/effect-MutableQueue.cjs.dev.js +209 -32
  142. package/MutableQueue/dist/effect-MutableQueue.cjs.prod.js +209 -32
  143. package/MutableRef/dist/effect-MutableRef.cjs.dev.js +175 -28
  144. package/MutableRef/dist/effect-MutableRef.cjs.prod.js +175 -28
  145. package/NonEmptyIterable/dist/effect-NonEmptyIterable.cjs.dev.js +25 -2
  146. package/NonEmptyIterable/dist/effect-NonEmptyIterable.cjs.prod.js +25 -2
  147. package/Number/dist/effect-Number.cjs.dev.js +389 -29
  148. package/Number/dist/effect-Number.cjs.prod.js +389 -29
  149. package/Option/dist/effect-Option.cjs.dev.js +1137 -79
  150. package/Option/dist/effect-Option.cjs.prod.js +1137 -79
  151. package/Order/dist/effect-Order.cjs.dev.js +288 -31
  152. package/Order/dist/effect-Order.cjs.prod.js +288 -31
  153. package/Ordering/dist/effect-Ordering.cjs.dev.js +89 -7
  154. package/Ordering/dist/effect-Ordering.cjs.prod.js +89 -7
  155. package/Pipeable/dist/effect-Pipeable.cjs.dev.js +41 -2
  156. package/Pipeable/dist/effect-Pipeable.cjs.prod.js +41 -2
  157. package/Pool/dist/effect-Pool.cjs.dev.js +177 -79
  158. package/Pool/dist/effect-Pool.cjs.prod.js +177 -79
  159. package/Predicate/dist/effect-Predicate.cjs.dev.js +672 -44
  160. package/Predicate/dist/effect-Predicate.cjs.prod.js +672 -44
  161. package/Queue/dist/effect-Queue.cjs.dev.js +427 -105
  162. package/Queue/dist/effect-Queue.cjs.prod.js +427 -105
  163. package/Random/dist/effect-Random.cjs.dev.js +127 -51
  164. package/Random/dist/effect-Random.cjs.prod.js +127 -51
  165. package/ReadonlyArray/dist/effect-ReadonlyArray.cjs.dev.js +1589 -157
  166. package/ReadonlyArray/dist/effect-ReadonlyArray.cjs.prod.js +1589 -157
  167. package/ReadonlyRecord/dist/effect-ReadonlyRecord.cjs.dev.js +552 -42
  168. package/ReadonlyRecord/dist/effect-ReadonlyRecord.cjs.prod.js +552 -42
  169. package/RedBlackTree/dist/effect-RedBlackTree.cjs.dev.js +1638 -59
  170. package/RedBlackTree/dist/effect-RedBlackTree.cjs.prod.js +1638 -59
  171. package/Ref/dist/effect-Ref.cjs.dev.js +31 -31
  172. package/Ref/dist/effect-Ref.cjs.prod.js +31 -31
  173. package/Reloadable/dist/effect-Reloadable.cjs.dev.js +226 -93
  174. package/Reloadable/dist/effect-Reloadable.cjs.prod.js +226 -93
  175. package/Request/dist/effect-Request.cjs.dev.js +238 -88
  176. package/Request/dist/effect-Request.cjs.prod.js +238 -88
  177. package/RequestBlock/dist/effect-RequestBlock.cjs.dev.js +195 -100
  178. package/RequestBlock/dist/effect-RequestBlock.cjs.prod.js +195 -100
  179. package/RequestResolver/dist/effect-RequestResolver.cjs.dev.js +292 -110
  180. package/RequestResolver/dist/effect-RequestResolver.cjs.prod.js +292 -110
  181. package/Resource/dist/effect-Resource.cjs.dev.js +177 -85
  182. package/Resource/dist/effect-Resource.cjs.prod.js +177 -85
  183. package/Runtime/dist/effect-Runtime.cjs.dev.js +245 -94
  184. package/Runtime/dist/effect-Runtime.cjs.prod.js +245 -94
  185. package/RuntimeFlags/dist/effect-RuntimeFlags.cjs.dev.js +419 -121
  186. package/RuntimeFlags/dist/effect-RuntimeFlags.cjs.prod.js +419 -121
  187. package/RuntimeFlagsPatch/dist/effect-RuntimeFlagsPatch.cjs.dev.js +25 -25
  188. package/RuntimeFlagsPatch/dist/effect-RuntimeFlagsPatch.cjs.prod.js +25 -25
  189. package/STM/dist/effect-STM.cjs.dev.js +1421 -237
  190. package/STM/dist/effect-STM.cjs.prod.js +1421 -237
  191. package/Schedule/dist/effect-Schedule.cjs.dev.js +1107 -156
  192. package/Schedule/dist/effect-Schedule.cjs.prod.js +1107 -156
  193. package/ScheduleDecision/dist/effect-ScheduleDecision.cjs.dev.js +111 -28
  194. package/ScheduleDecision/dist/effect-ScheduleDecision.cjs.prod.js +111 -28
  195. package/ScheduleInterval/dist/effect-ScheduleInterval.cjs.dev.js +237 -33
  196. package/ScheduleInterval/dist/effect-ScheduleInterval.cjs.prod.js +237 -33
  197. package/ScheduleIntervals/dist/effect-ScheduleIntervals.cjs.dev.js +264 -36
  198. package/ScheduleIntervals/dist/effect-ScheduleIntervals.cjs.prod.js +264 -36
  199. package/Scheduler/dist/effect-Scheduler.cjs.dev.js +365 -48
  200. package/Scheduler/dist/effect-Scheduler.cjs.prod.js +365 -48
  201. package/Scope/dist/effect-Scope.cjs.dev.js +192 -82
  202. package/Scope/dist/effect-Scope.cjs.prod.js +192 -82
  203. package/ScopedCache/dist/effect-ScopedCache.cjs.dev.js +512 -79
  204. package/ScopedCache/dist/effect-ScopedCache.cjs.prod.js +512 -79
  205. package/ScopedRef/dist/effect-ScopedRef.cjs.dev.js +147 -82
  206. package/ScopedRef/dist/effect-ScopedRef.cjs.prod.js +147 -82
  207. package/Sink/dist/effect-Sink.cjs.dev.js +1199 -208
  208. package/Sink/dist/effect-Sink.cjs.prod.js +1199 -208
  209. package/SortedMap/dist/effect-SortedMap.cjs.dev.js +194 -39
  210. package/SortedMap/dist/effect-SortedMap.cjs.prod.js +194 -39
  211. package/SortedSet/dist/effect-SortedSet.cjs.dev.js +293 -42
  212. package/SortedSet/dist/effect-SortedSet.cjs.prod.js +293 -42
  213. package/Stream/dist/effect-Stream.cjs.dev.js +3273 -401
  214. package/Stream/dist/effect-Stream.cjs.prod.js +3273 -401
  215. package/StreamHaltStrategy/dist/effect-StreamHaltStrategy.cjs.dev.js +2 -2
  216. package/StreamHaltStrategy/dist/effect-StreamHaltStrategy.cjs.prod.js +2 -2
  217. package/String/dist/effect-String.cjs.dev.js +652 -64
  218. package/String/dist/effect-String.cjs.prod.js +652 -64
  219. package/Struct/dist/effect-Struct.cjs.dev.js +126 -9
  220. package/Struct/dist/effect-Struct.cjs.prod.js +126 -9
  221. package/SubscriptionRef/dist/effect-SubscriptionRef.cjs.dev.js +337 -131
  222. package/SubscriptionRef/dist/effect-SubscriptionRef.cjs.prod.js +337 -131
  223. package/Supervisor/dist/effect-Supervisor.cjs.dev.js +234 -94
  224. package/Supervisor/dist/effect-Supervisor.cjs.prod.js +234 -94
  225. package/Symbol/dist/effect-Symbol.cjs.dev.js +29 -6
  226. package/Symbol/dist/effect-Symbol.cjs.prod.js +29 -6
  227. package/SynchronizedRef/dist/effect-SynchronizedRef.cjs.dev.js +254 -102
  228. package/SynchronizedRef/dist/effect-SynchronizedRef.cjs.prod.js +254 -102
  229. package/TArray/dist/effect-TArray.cjs.dev.js +517 -156
  230. package/TArray/dist/effect-TArray.cjs.prod.js +517 -156
  231. package/TDeferred/dist/effect-TDeferred.cjs.dev.js +219 -121
  232. package/TDeferred/dist/effect-TDeferred.cjs.prod.js +219 -121
  233. package/THub/dist/effect-THub.cjs.dev.js +651 -131
  234. package/THub/dist/effect-THub.cjs.prod.js +651 -131
  235. package/TMap/dist/effect-TMap.cjs.dev.js +526 -159
  236. package/TMap/dist/effect-TMap.cjs.prod.js +526 -159
  237. package/TPriorityQueue/dist/effect-TPriorityQueue.cjs.dev.js +459 -133
  238. package/TPriorityQueue/dist/effect-TPriorityQueue.cjs.prod.js +459 -133
  239. package/TQueue/dist/effect-TQueue.cjs.dev.js +430 -143
  240. package/TQueue/dist/effect-TQueue.cjs.prod.js +430 -143
  241. package/TRandom/dist/effect-TRandom.cjs.dev.js +290 -124
  242. package/TRandom/dist/effect-TRandom.cjs.prod.js +290 -124
  243. package/TReentrantLock/dist/effect-TReentrantLock.cjs.dev.js +531 -132
  244. package/TReentrantLock/dist/effect-TReentrantLock.cjs.prod.js +531 -132
  245. package/TRef/dist/effect-TRef.cjs.dev.js +238 -128
  246. package/TRef/dist/effect-TRef.cjs.prod.js +238 -128
  247. package/TSemaphore/dist/effect-TSemaphore.cjs.dev.js +283 -127
  248. package/TSemaphore/dist/effect-TSemaphore.cjs.prod.js +283 -127
  249. package/TSet/dist/effect-TSet.cjs.dev.js +515 -147
  250. package/TSet/dist/effect-TSet.cjs.prod.js +515 -147
  251. package/Take/dist/effect-Take.cjs.dev.js +296 -112
  252. package/Take/dist/effect-Take.cjs.prod.js +296 -112
  253. package/TestAnnotation/dist/effect-TestAnnotation.cjs.dev.js +132 -33
  254. package/TestAnnotation/dist/effect-TestAnnotation.cjs.prod.js +132 -33
  255. package/TestAnnotationMap/dist/effect-TestAnnotationMap.cjs.dev.js +106 -11
  256. package/TestAnnotationMap/dist/effect-TestAnnotationMap.cjs.prod.js +106 -11
  257. package/TestAnnotations/dist/effect-TestAnnotations.cjs.dev.js +128 -62
  258. package/TestAnnotations/dist/effect-TestAnnotations.cjs.prod.js +128 -62
  259. package/TestClock/dist/effect-TestClock.cjs.dev.js +624 -102
  260. package/TestClock/dist/effect-TestClock.cjs.prod.js +624 -102
  261. package/TestConfig/dist/effect-TestConfig.cjs.dev.js +41 -20
  262. package/TestConfig/dist/effect-TestConfig.cjs.prod.js +41 -20
  263. package/TestContext/dist/effect-TestContext.cjs.dev.js +118 -99
  264. package/TestContext/dist/effect-TestContext.cjs.prod.js +118 -99
  265. package/TestLive/dist/effect-TestLive.cjs.dev.js +86 -46
  266. package/TestLive/dist/effect-TestLive.cjs.prod.js +86 -46
  267. package/TestServices/dist/effect-TestServices.cjs.dev.js +381 -130
  268. package/TestServices/dist/effect-TestServices.cjs.prod.js +381 -130
  269. package/TestSized/dist/effect-TestSized.cjs.dev.js +78 -35
  270. package/TestSized/dist/effect-TestSized.cjs.prod.js +78 -35
  271. package/Tracer/dist/effect-Tracer.cjs.dev.js +108 -47
  272. package/Tracer/dist/effect-Tracer.cjs.prod.js +108 -47
  273. package/Tuple/dist/effect-Tuple.cjs.dev.js +182 -17
  274. package/Tuple/dist/effect-Tuple.cjs.prod.js +182 -17
  275. package/Unify/dist/effect-Unify.cjs.dev.js +37 -3
  276. package/Unify/dist/effect-Unify.cjs.prod.js +37 -3
  277. package/Utils/dist/effect-Utils.cjs.dev.js +354 -9
  278. package/Utils/dist/effect-Utils.cjs.prod.js +354 -9
  279. package/dist/{Context-f958cabc.cjs.prod.js → Context-01a123ac.cjs.prod.js} +8 -8
  280. package/dist/{Context-96739709.cjs.dev.js → Context-593661f6.cjs.dev.js} +8 -8
  281. package/dist/{Effectable-a6403e5f.cjs.dev.js → Effectable-2f022879.cjs.dev.js} +4 -4
  282. package/dist/{Effectable-f867d1cb.cjs.prod.js → Effectable-cd8f3a96.cjs.prod.js} +4 -4
  283. package/dist/{Either-9c349424.cjs.dev.js → Either-12bbe00c.cjs.dev.js} +5 -5
  284. package/dist/{Either-d03d5f05.cjs.prod.js → Either-7a881c7a.cjs.prod.js} +5 -5
  285. package/dist/{ExecutionStrategy-89fbe735.cjs.dev.js → ExecutionStrategy-14d3053a.cjs.prod.js} +1 -13
  286. package/dist/{ExecutionStrategy-dc778180.cjs.prod.js → ExecutionStrategy-70f1a920.cjs.dev.js} +1 -13
  287. package/dist/{FiberId-929dcce4.cjs.dev.js → FiberId-557db880.cjs.dev.js} +8 -30
  288. package/dist/{FiberId-b79e8047.cjs.prod.js → FiberId-e594f6e8.cjs.prod.js} +8 -30
  289. package/dist/{HashSet-ece2cfe8.cjs.dev.js → HashSet-0b4ff1e4.cjs.dev.js} +7 -7
  290. package/dist/{HashSet-6fe62df2.cjs.prod.js → HashSet-6257b66d.cjs.prod.js} +7 -7
  291. package/dist/{Ref-af783b72.cjs.dev.js → Ref-74b592a4.cjs.dev.js} +5 -25
  292. package/dist/{Ref-30e5ee58.cjs.prod.js → Ref-a3a4e50d.cjs.prod.js} +5 -25
  293. package/dist/{RuntimeFlagsPatch-130e990c.cjs.dev.js → RuntimeFlagsPatch-e2769b87.cjs.prod.js} +2 -24
  294. package/dist/{RuntimeFlagsPatch-5570758d.cjs.prod.js → RuntimeFlagsPatch-ea268c50.cjs.dev.js} +2 -24
  295. package/dist/{StreamHaltStrategy-66a53f66.cjs.dev.js → StreamHaltStrategy-9a61b88d.cjs.dev.js} +1 -16
  296. package/dist/{StreamHaltStrategy-07f544a6.cjs.prod.js → StreamHaltStrategy-b495622b.cjs.prod.js} +1 -16
  297. package/dist/{boundaries-03c7494a.cjs.dev.js → boundaries-20cfad9d.cjs.prod.js} +6 -6
  298. package/dist/{boundaries-5d1a46e1.cjs.prod.js → boundaries-3810d885.cjs.dev.js} +6 -6
  299. package/dist/{cache-ab7bbfbd.cjs.prod.js → cache-3a55a13a.cjs.prod.js} +21 -21
  300. package/dist/{cache-6cdc31f7.cjs.dev.js → cache-83d14f6e.cjs.dev.js} +21 -21
  301. package/dist/{childExecutorDecision-2b30946c.cjs.prod.js → childExecutorDecision-2eed6e25.cjs.dev.js} +1 -1
  302. package/dist/{childExecutorDecision-ad3db696.cjs.dev.js → childExecutorDecision-b5842db5.cjs.prod.js} +1 -1
  303. package/dist/{circular-81e1906f.cjs.dev.js → circular-2162b720.cjs.dev.js} +7 -7
  304. package/dist/{circular-4cb0b79d.cjs.dev.js → circular-a4887ee9.cjs.dev.js} +19 -19
  305. package/dist/{circular-6a5291c3.cjs.prod.js → circular-c3ce70f4.cjs.prod.js} +7 -7
  306. package/dist/{circular-5b3558d9.cjs.prod.js → circular-f72fcb1d.cjs.prod.js} +19 -19
  307. package/dist/{config-10f2a1d1.cjs.dev.js → config-80900693.cjs.dev.js} +10 -10
  308. package/dist/{config-78feb1ac.cjs.prod.js → config-d0ddc159.cjs.prod.js} +10 -10
  309. package/dist/{configError-6a3652f8.cjs.prod.js → configError-240e9b61.cjs.dev.js} +3 -3
  310. package/dist/{configError-1686533e.cjs.dev.js → configError-33e55472.cjs.prod.js} +3 -3
  311. package/dist/{configProvider-2b177eac.cjs.prod.js → configProvider-93617d6d.cjs.prod.js} +13 -13
  312. package/dist/{configProvider-e2eb112d.cjs.dev.js → configProvider-ce43fdbf.cjs.dev.js} +13 -13
  313. package/dist/{configSecret-ecb6c5b3.cjs.prod.js → configSecret-d1caca55.cjs.prod.js} +4 -4
  314. package/dist/{configSecret-5812fa69.cjs.dev.js → configSecret-e34c1b14.cjs.dev.js} +4 -4
  315. package/dist/{core-c2eb171a.cjs.prod.js → core-0b0539de.cjs.prod.js} +24 -24
  316. package/dist/{core-bce61cfc.cjs.prod.js → core-8ff5a82c.cjs.prod.js} +14 -14
  317. package/dist/{core-898decb7.cjs.dev.js → core-b2dfee8d.cjs.dev.js} +14 -14
  318. package/dist/{core-ac668be0.cjs.dev.js → core-b4d7b4f5.cjs.dev.js} +24 -24
  319. package/dist/{core-effect-a9b8ee08.cjs.dev.js → core-effect-892f3686.cjs.dev.js} +23 -23
  320. package/dist/{core-effect-bf806dd9.cjs.prod.js → core-effect-c65770cd.cjs.prod.js} +23 -23
  321. package/dist/{dataSource-31698050.cjs.dev.js → dataSource-5227437c.cjs.dev.js} +7 -7
  322. package/dist/{dataSource-77d1e579.cjs.prod.js → dataSource-837686e6.cjs.prod.js} +7 -7
  323. package/dist/declarations/src/Data.d.ts +2 -2
  324. package/dist/declarations/src/Error.d.ts +1 -1
  325. package/dist/declarations/src/Error.d.ts.map +1 -1
  326. package/dist/declarations/src/index.d.ts.map +1 -1
  327. package/dist/{defaultServices-60c753dc.cjs.dev.js → defaultServices-086b8ac9.cjs.prod.js} +13 -13
  328. package/dist/{defaultServices-4112c0c9.cjs.prod.js → defaultServices-5530ff0e.cjs.dev.js} +13 -13
  329. package/dist/effect.cjs.dev.js +466 -344
  330. package/dist/effect.cjs.prod.js +466 -344
  331. package/dist/effect.esm.js +283 -283
  332. package/dist/{fiber-da1a207c.cjs.dev.js → fiber-1bfb4c1d.cjs.dev.js} +14 -14
  333. package/dist/{fiber-90ffaf8c.cjs.prod.js → fiber-2eb0a4c1.cjs.prod.js} +14 -14
  334. package/dist/{fiberRefs-64c35250.cjs.prod.js → fiberRefs-be4fae6a.cjs.dev.js} +7 -7
  335. package/dist/{fiberRefs-a7e00f7e.cjs.dev.js → fiberRefs-be6b6a70.cjs.prod.js} +7 -7
  336. package/dist/{fiberRuntime-1c369a47.cjs.prod.js → fiberRuntime-af2d0ca1.cjs.prod.js} +47 -47
  337. package/dist/{fiberRuntime-e9680313.cjs.dev.js → fiberRuntime-e0db0ab6.cjs.dev.js} +47 -47
  338. package/dist/{groupBy-aa608972.cjs.prod.js → groupBy-7ce46ea3.cjs.prod.js} +14 -14
  339. package/dist/{groupBy-fa001ed8.cjs.dev.js → groupBy-bd943372.cjs.dev.js} +14 -14
  340. package/dist/{hook-822704ea.cjs.dev.js → hook-470b717e.cjs.prod.js} +9 -9
  341. package/dist/{hook-6c7550dc.cjs.prod.js → hook-e72b20fd.cjs.dev.js} +9 -9
  342. package/dist/{key-330b98b1.cjs.prod.js → key-378a6a2c.cjs.prod.js} +8 -8
  343. package/dist/{key-a474fc0d.cjs.dev.js → key-f0a1408a.cjs.dev.js} +8 -8
  344. package/dist/{keyType-1e916ae2.cjs.dev.js → keyType-55f27f07.cjs.dev.js} +5 -5
  345. package/dist/{keyType-8460e792.cjs.prod.js → keyType-cf67c69c.cjs.prod.js} +5 -5
  346. package/dist/{label-3e143765.cjs.prod.js → label-011edbe7.cjs.dev.js} +4 -4
  347. package/dist/{label-246fb11d.cjs.dev.js → label-655343b5.cjs.prod.js} +4 -4
  348. package/dist/{layer-6f71c525.cjs.prod.js → layer-3b1b0e2e.cjs.prod.js} +19 -19
  349. package/dist/{layer-7991a9d1.cjs.dev.js → layer-9cbb61ce.cjs.dev.js} +19 -19
  350. package/dist/{mergeDecision-e483c280.cjs.prod.js → mergeDecision-07c6b5c9.cjs.prod.js} +1 -1
  351. package/dist/{mergeDecision-e457a76b.cjs.dev.js → mergeDecision-be41e797.cjs.dev.js} +1 -1
  352. package/dist/{mergeState-dba66248.cjs.prod.js → mergeState-75990fa2.cjs.prod.js} +1 -1
  353. package/dist/{mergeState-83204f38.cjs.dev.js → mergeState-8153ce39.cjs.dev.js} +1 -1
  354. package/dist/{mergeStrategy-845a1279.cjs.prod.js → mergeStrategy-3dd6e55f.cjs.prod.js} +1 -1
  355. package/dist/{mergeStrategy-b19dc19a.cjs.dev.js → mergeStrategy-81ea5b80.cjs.dev.js} +1 -1
  356. package/dist/{pair-e5443c93.cjs.prod.js → pair-291b78d7.cjs.dev.js} +1 -1
  357. package/dist/{pair-08a8685e.cjs.dev.js → pair-6254cf85.cjs.prod.js} +1 -1
  358. package/dist/{patch-4671ab7f.cjs.dev.js → patch-a1b2802f.cjs.dev.js} +4 -4
  359. package/dist/{patch-f27e9f08.cjs.prod.js → patch-c4d6c61e.cjs.prod.js} +4 -4
  360. package/dist/{pathPatch-e46d4168.cjs.dev.js → pathPatch-15c8d723.cjs.prod.js} +6 -6
  361. package/dist/{pathPatch-ded405f6.cjs.prod.js → pathPatch-d9d41297.cjs.dev.js} +6 -6
  362. package/dist/{pool-3f16af61.cjs.dev.js → pool-29b03fb2.cjs.dev.js} +12 -12
  363. package/dist/{pool-59a31f55.cjs.prod.js → pool-b5c7d254.cjs.prod.js} +12 -12
  364. package/dist/{query-193d0a89.cjs.dev.js → query-67a7c448.cjs.dev.js} +6 -6
  365. package/dist/{query-fe4a82d6.cjs.prod.js → query-d5eefc43.cjs.prod.js} +6 -6
  366. package/dist/{queue-b81aee38.cjs.prod.js → queue-38614769.cjs.prod.js} +9 -9
  367. package/dist/{queue-04ae7ec7.cjs.dev.js → queue-997d6e51.cjs.dev.js} +9 -9
  368. package/dist/{registry-29905dcc.cjs.prod.js → registry-013ecdde.cjs.prod.js} +7 -7
  369. package/dist/{registry-c883cf52.cjs.dev.js → registry-1099de3f.cjs.dev.js} +7 -7
  370. package/dist/{runtime-3ae98f19.cjs.dev.js → runtime-15cc9cc5.cjs.dev.js} +18 -16
  371. package/dist/{runtime-8c3f1bd3.cjs.prod.js → runtime-3a59f5c4.cjs.prod.js} +18 -16
  372. package/dist/{schedule-7e30db2d.cjs.prod.js → schedule-1d92198c.cjs.prod.js} +22 -22
  373. package/dist/{schedule-479d8fcc.cjs.dev.js → schedule-e0f55cab.cjs.dev.js} +22 -22
  374. package/dist/{scopedRef-16d9d192.cjs.dev.js → scopedRef-88ae648a.cjs.dev.js} +9 -9
  375. package/dist/{scopedRef-40b5bb82.cjs.prod.js → scopedRef-a0257d92.cjs.prod.js} +9 -9
  376. package/dist/{singleProducerAsyncInput-24ccc472.cjs.prod.js → singleProducerAsyncInput-1c6cc8fb.cjs.prod.js} +13 -13
  377. package/dist/{singleProducerAsyncInput-18fc5896.cjs.dev.js → singleProducerAsyncInput-998b8fac.cjs.dev.js} +13 -13
  378. package/dist/{sink-3a597454.cjs.dev.js → sink-1ac24bca.cjs.dev.js} +42 -42
  379. package/dist/{sink-1f4c02bb.cjs.prod.js → sink-4d668efb.cjs.prod.js} +42 -42
  380. package/dist/{state-0d29362f.cjs.prod.js → state-8fbec044.cjs.dev.js} +4 -4
  381. package/dist/{state-8a8a647c.cjs.dev.js → state-dd1bd066.cjs.prod.js} +4 -4
  382. package/dist/{stm-789f4457.cjs.dev.js → stm-fbb398a5.cjs.dev.js} +13 -13
  383. package/dist/{stm-8e837f76.cjs.prod.js → stm-fcac86d5.cjs.prod.js} +13 -13
  384. package/dist/{stream-42bee6fa.cjs.dev.js → stream-adef675d.cjs.dev.js} +33 -33
  385. package/dist/{stream-71fa9ae8.cjs.prod.js → stream-e670e8fa.cjs.prod.js} +33 -33
  386. package/dist/{synchronizedRef-58a64ffe.cjs.dev.js → synchronizedRef-37e32854.cjs.dev.js} +3 -3
  387. package/dist/{synchronizedRef-6cfe9354.cjs.prod.js → synchronizedRef-b4cde4de.cjs.prod.js} +3 -3
  388. package/dist/{tArray-b96cf402.cjs.prod.js → tArray-239d37ad.cjs.dev.js} +7 -7
  389. package/dist/{tArray-56df545e.cjs.dev.js → tArray-70de8ec4.cjs.prod.js} +7 -7
  390. package/dist/{tMap-1103e942.cjs.dev.js → tMap-4b27665d.cjs.dev.js} +12 -12
  391. package/dist/{tMap-3ed5a386.cjs.prod.js → tMap-a202396b.cjs.prod.js} +12 -12
  392. package/dist/{tQueue-4d90a114.cjs.dev.js → tQueue-004a478e.cjs.dev.js} +8 -8
  393. package/dist/{tQueue-9c69c6b3.cjs.prod.js → tQueue-82c4db95.cjs.prod.js} +8 -8
  394. package/dist/{tRef-5c469ca5.cjs.dev.js → tRef-bb7cc73a.cjs.dev.js} +3 -3
  395. package/dist/{tRef-68a9114f.cjs.prod.js → tRef-ee2c7f44.cjs.prod.js} +3 -3
  396. package/dist/{take-85954a45.cjs.prod.js → take-4857b6af.cjs.dev.js} +7 -7
  397. package/dist/{take-84a0722c.cjs.dev.js → take-9c555b46.cjs.prod.js} +7 -7
  398. package/dist/{timeout-2a62e4b5.cjs.prod.js → timeout-489f3f86.cjs.prod.js} +2 -2
  399. package/dist/{timeout-0245c158.cjs.dev.js → timeout-d380d3f8.cjs.dev.js} +2 -2
  400. package/dist/{upstreamPullRequest-705e868d.cjs.prod.js → upstreamPullRequest-7a694281.cjs.dev.js} +1 -1
  401. package/dist/{upstreamPullRequest-c08f06a4.cjs.dev.js → upstreamPullRequest-c89f818d.cjs.prod.js} +1 -1
  402. package/dist/{upstreamPullStrategy-34452db1.cjs.prod.js → upstreamPullStrategy-63cc8967.cjs.prod.js} +1 -1
  403. package/dist/{upstreamPullStrategy-0ccf2960.cjs.dev.js → upstreamPullStrategy-f9f1ab57.cjs.dev.js} +1 -1
  404. package/internal/core.esm.js +5 -5
  405. package/internal/defaultServices/console.esm.js +1 -1
  406. package/internal/defaultServices.esm.js +2 -1
  407. package/internal/fiberRuntime.esm.js +7 -7
  408. package/internal/logger.esm.js +3 -3
  409. package/internal/runtime.esm.js +2 -0
  410. package/internal/supervisor.esm.js +2 -1
  411. package/internal/timeout.esm.js +2 -2
  412. package/package.json +3 -2
  413. package/dist/Bigint-0ebd807c.cjs.dev.js +0 -392
  414. package/dist/Bigint-912c77f3.cjs.prod.js +0 -392
  415. package/dist/Boolean-97839b78.cjs.prod.js +0 -264
  416. package/dist/Boolean-f0bc3abf.cjs.dev.js +0 -264
  417. package/dist/Brand-93578f43.cjs.prod.js +0 -224
  418. package/dist/Brand-b238487d.cjs.dev.js +0 -224
  419. package/dist/Cache-1688e584.cjs.dev.js +0 -127
  420. package/dist/Cache-8f2f2b55.cjs.prod.js +0 -127
  421. package/dist/Cause-384e2165.cjs.prod.js +0 -791
  422. package/dist/Cause-96c29074.cjs.dev.js +0 -791
  423. package/dist/Channel-0701d2dd.cjs.dev.js +0 -1217
  424. package/dist/Channel-7aed463e.cjs.prod.js +0 -1217
  425. package/dist/ChannelChildExecutorDecision-168278f6.cjs.prod.js +0 -136
  426. package/dist/ChannelChildExecutorDecision-b0e715de.cjs.dev.js +0 -136
  427. package/dist/ChannelMergeDecision-9c266aeb.cjs.prod.js +0 -78
  428. package/dist/ChannelMergeDecision-eeaf4779.cjs.dev.js +0 -78
  429. package/dist/ChannelMergeState-4366d090.cjs.prod.js +0 -125
  430. package/dist/ChannelMergeState-abce1d88.cjs.dev.js +0 -125
  431. package/dist/ChannelMergeStrategy-6193b8e0.cjs.prod.js +0 -104
  432. package/dist/ChannelMergeStrategy-e7ddbb7a.cjs.dev.js +0 -104
  433. package/dist/ChannelSingleProducerAsyncInput-46c393db.cjs.dev.js +0 -55
  434. package/dist/ChannelSingleProducerAsyncInput-7eb9d2ae.cjs.prod.js +0 -55
  435. package/dist/ChannelUpstreamPullRequest-1ca7d2bd.cjs.dev.js +0 -104
  436. package/dist/ChannelUpstreamPullRequest-208751c3.cjs.prod.js +0 -104
  437. package/dist/ChannelUpstreamPullStrategy-266b5a77.cjs.prod.js +0 -103
  438. package/dist/ChannelUpstreamPullStrategy-ec57dc70.cjs.dev.js +0 -103
  439. package/dist/Chunk-6cf5a8e6.cjs.prod.js +0 -1248
  440. package/dist/Chunk-bd290b8e.cjs.dev.js +0 -1248
  441. package/dist/Clock-09ecce0a.cjs.prod.js +0 -97
  442. package/dist/Clock-bec722c1.cjs.dev.js +0 -97
  443. package/dist/Config-85ae6286.cjs.prod.js +0 -393
  444. package/dist/Config-dc58cf69.cjs.dev.js +0 -393
  445. package/dist/ConfigError-c1f762d2.cjs.dev.js +0 -225
  446. package/dist/ConfigError-cee682fa.cjs.prod.js +0 -225
  447. package/dist/ConfigProvider-8341a5f5.cjs.prod.js +0 -240
  448. package/dist/ConfigProvider-de45b085.cjs.dev.js +0 -240
  449. package/dist/ConfigProviderPathPatch-52422b32.cjs.prod.js +0 -86
  450. package/dist/ConfigProviderPathPatch-d22442e3.cjs.dev.js +0 -86
  451. package/dist/ConfigSecret-c76717e8.cjs.dev.js +0 -83
  452. package/dist/ConfigSecret-ebab2ae7.cjs.prod.js +0 -83
  453. package/dist/Console-63eebbd5.cjs.prod.js +0 -271
  454. package/dist/Console-a1c2c16f.cjs.dev.js +0 -271
  455. package/dist/Context-25a49952.cjs.prod.js +0 -327
  456. package/dist/Context-3c9e986b.cjs.dev.js +0 -327
  457. package/dist/Data-07dc27f1.cjs.prod.js +0 -237
  458. package/dist/Data-85559fb3.cjs.dev.js +0 -237
  459. package/dist/DefaultServices-d5740d37.cjs.dev.js +0 -34
  460. package/dist/DefaultServices-df7495bb.cjs.prod.js +0 -34
  461. package/dist/Deferred-5d5c886c.cjs.dev.js +0 -253
  462. package/dist/Deferred-9d825b3b.cjs.prod.js +0 -253
  463. package/dist/Differ-0122f60e.cjs.dev.js +0 -992
  464. package/dist/Differ-0bd34066.cjs.prod.js +0 -992
  465. package/dist/Duration-0bc08d03.cjs.prod.js +0 -508
  466. package/dist/Duration-604874d1.cjs.dev.js +0 -508
  467. package/dist/Effect-4de56bb2.cjs.prod.js +0 -3740
  468. package/dist/Effect-cf226187.cjs.dev.js +0 -3740
  469. package/dist/Effectable-04f3cd30.cjs.dev.js +0 -99
  470. package/dist/Effectable-8997112d.cjs.prod.js +0 -99
  471. package/dist/Either-3fab3796.cjs.prod.js +0 -502
  472. package/dist/Either-a806809d.cjs.dev.js +0 -502
  473. package/dist/Encoding-0cab52d5.cjs.prod.js +0 -309
  474. package/dist/Encoding-d993b1b0.cjs.dev.js +0 -309
  475. package/dist/Equal-281b6ca8.cjs.dev.js +0 -71
  476. package/dist/Equal-ce9977a8.cjs.prod.js +0 -71
  477. package/dist/Equivalence-0bc84518.cjs.prod.js +0 -238
  478. package/dist/Equivalence-de7a0d51.cjs.dev.js +0 -238
  479. package/dist/Error-05f55a51.cjs.prod.js +0 -57
  480. package/dist/Error-469a9429.cjs.dev.js +0 -57
  481. package/dist/Exit-5691142c.cjs.prod.js +0 -408
  482. package/dist/Exit-a23874e1.cjs.dev.js +0 -408
  483. package/dist/Fiber-6432d5f7.cjs.dev.js +0 -521
  484. package/dist/Fiber-e61b3c65.cjs.prod.js +0 -521
  485. package/dist/FiberRef-1db44a9b.cjs.dev.js +0 -385
  486. package/dist/FiberRef-efb4a3ac.cjs.prod.js +0 -385
  487. package/dist/FiberRefs-43bfd8b9.cjs.dev.js +0 -135
  488. package/dist/FiberRefs-4cb171f7.cjs.prod.js +0 -135
  489. package/dist/FiberRefsPatch-5236f61e.cjs.dev.js +0 -90
  490. package/dist/FiberRefsPatch-cb847553.cjs.prod.js +0 -90
  491. package/dist/FiberStatus-b82dad24.cjs.prod.js +0 -197
  492. package/dist/FiberStatus-bac7d58d.cjs.dev.js +0 -197
  493. package/dist/Function-2e6b0cda.cjs.prod.js +0 -538
  494. package/dist/Function-41ce433d.cjs.dev.js +0 -538
  495. package/dist/GlobalValue-81ab6908.cjs.dev.js +0 -28
  496. package/dist/GlobalValue-cb645c99.cjs.prod.js +0 -28
  497. package/dist/GroupBy-2d7ec675.cjs.dev.js +0 -79
  498. package/dist/GroupBy-cf6e72eb.cjs.prod.js +0 -79
  499. package/dist/HKT-2cc79e63.cjs.dev.js +0 -7
  500. package/dist/HKT-d682535d.cjs.prod.js +0 -7
  501. package/dist/Hash-1bd73210.cjs.prod.js +0 -192
  502. package/dist/Hash-bd154268.cjs.dev.js +0 -192
  503. package/dist/HashMap-12668911.cjs.prod.js +0 -361
  504. package/dist/HashMap-68e290b6.cjs.dev.js +0 -361
  505. package/dist/HashSet-6978c08e.cjs.dev.js +0 -283
  506. package/dist/HashSet-c40a52b1.cjs.prod.js +0 -283
  507. package/dist/Hub-6e64debd.cjs.prod.js +0 -1280
  508. package/dist/Hub-74834668.cjs.dev.js +0 -1280
  509. package/dist/Inspectable-3c4a0f5d.cjs.prod.js +0 -50
  510. package/dist/Inspectable-ac929af4.cjs.dev.js +0 -50
  511. package/dist/KeyedPool-b05481e9.cjs.dev.js +0 -282
  512. package/dist/KeyedPool-cd8abf95.cjs.prod.js +0 -282
  513. package/dist/Layer-b05441ff.cjs.dev.js +0 -688
  514. package/dist/Layer-b1461d01.cjs.prod.js +0 -688
  515. package/dist/List-c6ea7efe.cjs.dev.js +0 -912
  516. package/dist/List-d9775087.cjs.prod.js +0 -912
  517. package/dist/LogLevel-99f64f82.cjs.dev.js +0 -240
  518. package/dist/LogLevel-e9848e15.cjs.prod.js +0 -240
  519. package/dist/LogSpan-c905a192.cjs.prod.js +0 -46
  520. package/dist/LogSpan-e345ba58.cjs.dev.js +0 -46
  521. package/dist/Logger-72da8fab.cjs.dev.js +0 -275
  522. package/dist/Logger-ea8c75a9.cjs.prod.js +0 -275
  523. package/dist/Metric-09d012ff.cjs.dev.js +0 -488
  524. package/dist/Metric-b7563a68.cjs.prod.js +0 -488
  525. package/dist/MetricBoundaries-cf5df220.cjs.prod.js +0 -68
  526. package/dist/MetricBoundaries-f5f5aae1.cjs.dev.js +0 -68
  527. package/dist/MetricHook-3104e93b.cjs.dev.js +0 -90
  528. package/dist/MetricHook-efd05d72.cjs.prod.js +0 -90
  529. package/dist/MetricKey-9cfcaec8.cjs.prod.js +0 -130
  530. package/dist/MetricKey-c3ba437e.cjs.dev.js +0 -130
  531. package/dist/MetricKeyType-6d2d9036.cjs.prod.js +0 -187
  532. package/dist/MetricKeyType-c1d7ebe8.cjs.dev.js +0 -187
  533. package/dist/MetricLabel-6a1886c6.cjs.dev.js +0 -53
  534. package/dist/MetricLabel-7e1d569e.cjs.prod.js +0 -53
  535. package/dist/MetricPair-658ab13d.cjs.dev.js +0 -50
  536. package/dist/MetricPair-aec13967.cjs.prod.js +0 -50
  537. package/dist/MetricPolling-5af0ff67.cjs.dev.js +0 -177
  538. package/dist/MetricPolling-a0a4e798.cjs.prod.js +0 -177
  539. package/dist/MetricRegistry-e4af936b.cjs.dev.js +0 -38
  540. package/dist/MetricRegistry-ff6df283.cjs.prod.js +0 -38
  541. package/dist/MetricState-b65340a4.cjs.dev.js +0 -191
  542. package/dist/MetricState-bd6a5001.cjs.prod.js +0 -191
  543. package/dist/MutableHashMap-74e83e84.cjs.dev.js +0 -154
  544. package/dist/MutableHashMap-95493edb.cjs.prod.js +0 -154
  545. package/dist/MutableHashSet-780dfd63.cjs.prod.js +0 -110
  546. package/dist/MutableHashSet-ec8d7cc4.cjs.dev.js +0 -110
  547. package/dist/MutableList-58124ef2.cjs.dev.js +0 -296
  548. package/dist/MutableList-732af09a.cjs.prod.js +0 -296
  549. package/dist/MutableQueue-0e9f2466.cjs.dev.js +0 -215
  550. package/dist/MutableQueue-f8aba856.cjs.prod.js +0 -215
  551. package/dist/MutableRef-4a2f1f23.cjs.prod.js +0 -194
  552. package/dist/MutableRef-724c4082.cjs.dev.js +0 -194
  553. package/dist/NonEmptyIterable-418cef14.cjs.prod.js +0 -36
  554. package/dist/NonEmptyIterable-bb452f41.cjs.dev.js +0 -36
  555. package/dist/Number-588f6483.cjs.dev.js +0 -417
  556. package/dist/Number-cb2ba2e8.cjs.prod.js +0 -417
  557. package/dist/Option-02025c86.cjs.prod.js +0 -1198
  558. package/dist/Option-03997d77.cjs.dev.js +0 -1198
  559. package/dist/Order-28bdebd2.cjs.dev.js +0 -321
  560. package/dist/Order-8a112bfb.cjs.prod.js +0 -321
  561. package/dist/Ordering-60bf9127.cjs.prod.js +0 -104
  562. package/dist/Ordering-b955b746.cjs.dev.js +0 -104
  563. package/dist/Pipeable-4698db72.cjs.dev.js +0 -52
  564. package/dist/Pipeable-d3ec6711.cjs.prod.js +0 -52
  565. package/dist/Pool-54389592.cjs.prod.js +0 -122
  566. package/dist/Pool-fe1b506a.cjs.dev.js +0 -122
  567. package/dist/Predicate-9e859c9c.cjs.dev.js +0 -718
  568. package/dist/Predicate-daa86e61.cjs.prod.js +0 -718
  569. package/dist/Queue-5f954287.cjs.prod.js +0 -394
  570. package/dist/Queue-8d082fe4.cjs.dev.js +0 -394
  571. package/dist/Random-35304046.cjs.dev.js +0 -104
  572. package/dist/Random-b4709b6a.cjs.prod.js +0 -104
  573. package/dist/ReadonlyArray-48949ee7.cjs.dev.js +0 -1721
  574. package/dist/ReadonlyArray-8157f697.cjs.prod.js +0 -1721
  575. package/dist/ReadonlyRecord-605a625b.cjs.dev.js +0 -568
  576. package/dist/ReadonlyRecord-8db8bada.cjs.prod.js +0 -568
  577. package/dist/RedBlackTree-e6bd147c.cjs.dev.js +0 -1669
  578. package/dist/RedBlackTree-eb41ea8a.cjs.prod.js +0 -1669
  579. package/dist/Reloadable-97b2e406.cjs.dev.js +0 -169
  580. package/dist/Reloadable-d1cd2c7d.cjs.prod.js +0 -169
  581. package/dist/Request-53592fe4.cjs.prod.js +0 -190
  582. package/dist/Request-d3b63af6.cjs.dev.js +0 -190
  583. package/dist/RequestBlock-5062df49.cjs.dev.js +0 -124
  584. package/dist/RequestBlock-8552671f.cjs.prod.js +0 -124
  585. package/dist/RequestResolver-3a24e033.cjs.prod.js +0 -233
  586. package/dist/RequestResolver-7fcb89fb.cjs.dev.js +0 -233
  587. package/dist/Resource-2530fe45.cjs.prod.js +0 -118
  588. package/dist/Resource-e50b4b25.cjs.dev.js +0 -118
  589. package/dist/Runtime-0d643f0c.cjs.prod.js +0 -191
  590. package/dist/Runtime-c4b887ff.cjs.dev.js +0 -191
  591. package/dist/RuntimeFlags-128b287a.cjs.dev.js +0 -381
  592. package/dist/RuntimeFlags-f50d0c72.cjs.prod.js +0 -381
  593. package/dist/STM-243df414.cjs.prod.js +0 -1447
  594. package/dist/STM-2b6ea69d.cjs.dev.js +0 -1447
  595. package/dist/Schedule-0444792d.cjs.prod.js +0 -1159
  596. package/dist/Schedule-b6c7b49a.cjs.dev.js +0 -1159
  597. package/dist/ScheduleDecision-369f2d2b.cjs.prod.js +0 -106
  598. package/dist/ScheduleDecision-ba8d0e87.cjs.dev.js +0 -106
  599. package/dist/ScheduleInterval-51f42533.cjs.dev.js +0 -244
  600. package/dist/ScheduleInterval-78037484.cjs.prod.js +0 -244
  601. package/dist/ScheduleIntervals-b0bfcf3b.cjs.dev.js +0 -265
  602. package/dist/ScheduleIntervals-db13140c.cjs.prod.js +0 -265
  603. package/dist/Scheduler-819ee02a.cjs.prod.js +0 -358
  604. package/dist/Scheduler-d080442d.cjs.dev.js +0 -358
  605. package/dist/Scope-311c7eb9.cjs.prod.js +0 -143
  606. package/dist/Scope-6ba9ec6d.cjs.dev.js +0 -143
  607. package/dist/ScopedCache-3f58b125.cjs.dev.js +0 -467
  608. package/dist/ScopedCache-8f99505c.cjs.prod.js +0 -467
  609. package/dist/ScopedRef-7946d287.cjs.prod.js +0 -87
  610. package/dist/ScopedRef-b92e1633.cjs.dev.js +0 -87
  611. package/dist/Sink-175252a1.cjs.dev.js +0 -1215
  612. package/dist/Sink-85c6820f.cjs.prod.js +0 -1215
  613. package/dist/SortedMap-bb3311c3.cjs.prod.js +0 -210
  614. package/dist/SortedMap-f452cc44.cjs.dev.js +0 -210
  615. package/dist/SortedSet-424670fe.cjs.prod.js +0 -311
  616. package/dist/SortedSet-f90b14a2.cjs.dev.js +0 -311
  617. package/dist/Stream-31c121b4.cjs.prod.js +0 -3469
  618. package/dist/Stream-f833c9da.cjs.dev.js +0 -3469
  619. package/dist/StreamEmit-a10e1de5.cjs.prod.js +0 -7
  620. package/dist/StreamEmit-ec1da471.cjs.dev.js +0 -7
  621. package/dist/String-23b18ca9.cjs.prod.js +0 -694
  622. package/dist/String-830aaa3e.cjs.dev.js +0 -694
  623. package/dist/Struct-14648d76.cjs.dev.js +0 -141
  624. package/dist/Struct-c6b00f29.cjs.prod.js +0 -141
  625. package/dist/SubscriptionRef-10afb90a.cjs.prod.js +0 -269
  626. package/dist/SubscriptionRef-8870f37c.cjs.dev.js +0 -269
  627. package/dist/Supervisor-0b397027.cjs.dev.js +0 -170
  628. package/dist/Supervisor-18f2ef4e.cjs.prod.js +0 -170
  629. package/dist/Symbol-55d0b3d8.cjs.prod.js +0 -40
  630. package/dist/Symbol-5d74a5f2.cjs.dev.js +0 -40
  631. package/dist/SynchronizedRef-3181eb0a.cjs.dev.js +0 -212
  632. package/dist/SynchronizedRef-c6e0884b.cjs.prod.js +0 -212
  633. package/dist/TArray-13d02e45.cjs.prod.js +0 -455
  634. package/dist/TArray-d244048f.cjs.dev.js +0 -455
  635. package/dist/TDeferred-66f69724.cjs.prod.js +0 -129
  636. package/dist/TDeferred-6b7151e4.cjs.dev.js +0 -129
  637. package/dist/THub-4f3308b5.cjs.dev.js +0 -570
  638. package/dist/THub-70471c3e.cjs.prod.js +0 -570
  639. package/dist/TMap-6ec29b88.cjs.prod.js +0 -463
  640. package/dist/TMap-d28007c5.cjs.dev.js +0 -463
  641. package/dist/TPriorityQueue-76d9fb5a.cjs.prod.js +0 -381
  642. package/dist/TPriorityQueue-b2370942.cjs.dev.js +0 -381
  643. package/dist/TQueue-d66ff462.cjs.dev.js +0 -353
  644. package/dist/TQueue-defe6f54.cjs.prod.js +0 -353
  645. package/dist/TRandom-2d293b98.cjs.prod.js +0 -203
  646. package/dist/TRandom-f6a907b8.cjs.dev.js +0 -203
  647. package/dist/TReentrantLock-81ebe2df.cjs.prod.js +0 -456
  648. package/dist/TReentrantLock-eed7de13.cjs.dev.js +0 -456
  649. package/dist/TRef-ad753da1.cjs.dev.js +0 -152
  650. package/dist/TRef-f8453998.cjs.prod.js +0 -152
  651. package/dist/TSemaphore-26326b8a.cjs.dev.js +0 -197
  652. package/dist/TSemaphore-de7a42e6.cjs.prod.js +0 -197
  653. package/dist/TSet-eb8e6abb.cjs.prod.js +0 -444
  654. package/dist/TSet-f5f2a16b.cjs.dev.js +0 -444
  655. package/dist/Take-7eae9eb6.cjs.dev.js +0 -236
  656. package/dist/Take-bf728196.cjs.prod.js +0 -236
  657. package/dist/TestAnnotation-73be7a68.cjs.dev.js +0 -135
  658. package/dist/TestAnnotation-b9b93d03.cjs.prod.js +0 -135
  659. package/dist/TestAnnotationMap-80c87410.cjs.dev.js +0 -125
  660. package/dist/TestAnnotationMap-e946bab5.cjs.prod.js +0 -125
  661. package/dist/TestAnnotations-5db95828.cjs.prod.js +0 -97
  662. package/dist/TestAnnotations-733b39ef.cjs.dev.js +0 -97
  663. package/dist/TestClock-7b24411c.cjs.dev.js +0 -581
  664. package/dist/TestClock-93cdaabb.cjs.prod.js +0 -581
  665. package/dist/TestConfig-1a73e844.cjs.prod.js +0 -37
  666. package/dist/TestConfig-e5ffa946.cjs.dev.js +0 -37
  667. package/dist/TestContext-eeb935e5.cjs.dev.js +0 -41
  668. package/dist/TestContext-fe76c79a.cjs.prod.js +0 -41
  669. package/dist/TestLive-465ad3ef.cjs.dev.js +0 -60
  670. package/dist/TestLive-f3232ac4.cjs.prod.js +0 -60
  671. package/dist/TestServices-217f5abb.cjs.dev.js +0 -341
  672. package/dist/TestServices-3e29bef4.cjs.prod.js +0 -341
  673. package/dist/TestSized-6c1abc21.cjs.dev.js +0 -64
  674. package/dist/TestSized-a9a87d64.cjs.prod.js +0 -64
  675. package/dist/Tracer-d06d0b61.cjs.prod.js +0 -81
  676. package/dist/Tracer-da182c8c.cjs.dev.js +0 -81
  677. package/dist/Tuple-27ecf3a1.cjs.prod.js +0 -199
  678. package/dist/Tuple-75d2a389.cjs.dev.js +0 -199
  679. package/dist/Types-1280d3aa.cjs.dev.js +0 -7
  680. package/dist/Types-3a58df45.cjs.prod.js +0 -7
  681. package/dist/Unify-99be0499.cjs.dev.js +0 -48
  682. package/dist/Unify-e86fd412.cjs.prod.js +0 -48
  683. package/dist/Utils-864e1d48.cjs.prod.js +0 -370
  684. package/dist/Utils-b0c14d1b.cjs.dev.js +0 -370
@@ -2,160 +2,1592 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- require('../../dist/Either-a806809d.cjs.dev.js');
6
- require('../../dist/Equal-281b6ca8.cjs.dev.js');
7
- require('../../dist/Equivalence-de7a0d51.cjs.dev.js');
8
- require('../../dist/Function-41ce433d.cjs.dev.js');
9
- require('../../dist/ReadonlyArray-9a1474f6.cjs.dev.js');
10
- require('../../dist/Option-03997d77.cjs.dev.js');
11
- require('../../dist/Order-28bdebd2.cjs.dev.js');
12
- require('../../dist/ReadonlyRecord-605a625b.cjs.dev.js');
13
- var ReadonlyArray_dist_effectReadonlyArray = require('../../dist/ReadonlyArray-48949ee7.cjs.dev.js');
14
- require('../../dist/Either-9c349424.cjs.dev.js');
15
- require('../../dist/Hash-bd154268.cjs.dev.js');
16
- require('../../dist/GlobalValue-81ab6908.cjs.dev.js');
17
- require('../../dist/Utils-b0c14d1b.cjs.dev.js');
18
- require('../../dist/Predicate-9e859c9c.cjs.dev.js');
19
- require('../../dist/Inspectable-ac929af4.cjs.dev.js');
20
- require('../../dist/Effectable-a6403e5f.cjs.dev.js');
21
- require('../../dist/Data-85559fb3.cjs.dev.js');
22
- require('../../dist/Pipeable-4698db72.cjs.dev.js');
23
- require('../../dist/Number-588f6483.cjs.dev.js');
24
-
25
-
26
-
27
- exports.append = ReadonlyArray_dist_effectReadonlyArray.append;
28
- exports.appendAll = ReadonlyArray_dist_effectReadonlyArray.appendAll;
29
- exports.appendAllNonEmpty = ReadonlyArray_dist_effectReadonlyArray.appendAllNonEmpty;
30
- exports.cartesian = ReadonlyArray_dist_effectReadonlyArray.cartesian;
31
- exports.cartesianWith = ReadonlyArray_dist_effectReadonlyArray.cartesianWith;
32
- exports.chop = ReadonlyArray_dist_effectReadonlyArray.chop;
33
- exports.chopNonEmpty = ReadonlyArray_dist_effectReadonlyArray.chopNonEmpty;
34
- exports.chunksOf = ReadonlyArray_dist_effectReadonlyArray.chunksOf;
35
- exports.chunksOfNonEmpty = ReadonlyArray_dist_effectReadonlyArray.chunksOfNonEmpty;
36
- exports.compact = ReadonlyArray_dist_effectReadonlyArray.compact;
37
- exports.contains = ReadonlyArray_dist_effectReadonlyArray.contains;
38
- exports.containsWith = ReadonlyArray_dist_effectReadonlyArray.containsWith;
39
- exports.copy = ReadonlyArray_dist_effectReadonlyArray.copy;
40
- exports.dedupe = ReadonlyArray_dist_effectReadonlyArray.dedupe;
41
- exports.dedupeAdjacent = ReadonlyArray_dist_effectReadonlyArray.dedupeAdjacent;
42
- exports.dedupeAdjacentWith = ReadonlyArray_dist_effectReadonlyArray.dedupeAdjacentWith;
43
- exports.dedupeNonEmpty = ReadonlyArray_dist_effectReadonlyArray.dedupeNonEmpty;
44
- exports.dedupeNonEmptyWith = ReadonlyArray_dist_effectReadonlyArray.dedupeNonEmptyWith;
45
- exports.dedupeWith = ReadonlyArray_dist_effectReadonlyArray.dedupeWith;
46
- exports.difference = ReadonlyArray_dist_effectReadonlyArray.difference;
47
- exports.differenceWith = ReadonlyArray_dist_effectReadonlyArray.differenceWith;
48
- exports.drop = ReadonlyArray_dist_effectReadonlyArray.drop;
49
- exports.dropRight = ReadonlyArray_dist_effectReadonlyArray.dropRight;
50
- exports.dropWhile = ReadonlyArray_dist_effectReadonlyArray.dropWhile;
51
- exports.empty = ReadonlyArray_dist_effectReadonlyArray.empty;
52
- exports.every = ReadonlyArray_dist_effectReadonlyArray.every;
53
- exports.extend = ReadonlyArray_dist_effectReadonlyArray.extend;
54
- exports.filter = ReadonlyArray_dist_effectReadonlyArray.filter;
55
- exports.filterMap = ReadonlyArray_dist_effectReadonlyArray.filterMap;
56
- exports.filterMapWhile = ReadonlyArray_dist_effectReadonlyArray.filterMapWhile;
57
- exports.findFirst = ReadonlyArray_dist_effectReadonlyArray.findFirst;
58
- exports.findFirstIndex = ReadonlyArray_dist_effectReadonlyArray.findFirstIndex;
59
- exports.findLast = ReadonlyArray_dist_effectReadonlyArray.findLast;
60
- exports.findLastIndex = ReadonlyArray_dist_effectReadonlyArray.findLastIndex;
61
- exports.flatMap = ReadonlyArray_dist_effectReadonlyArray.flatMap;
62
- exports.flatMapNonEmpty = ReadonlyArray_dist_effectReadonlyArray.flatMapNonEmpty;
63
- exports.flatMapNullable = ReadonlyArray_dist_effectReadonlyArray.flatMapNullable;
64
- exports.flatten = ReadonlyArray_dist_effectReadonlyArray.flatten;
65
- exports.flattenNonEmpty = ReadonlyArray_dist_effectReadonlyArray.flattenNonEmpty;
66
- exports.forEach = ReadonlyArray_dist_effectReadonlyArray.forEach;
67
- exports.fromIterable = ReadonlyArray_dist_effectReadonlyArray.fromIterable;
68
- exports.fromNullable = ReadonlyArray_dist_effectReadonlyArray.fromNullable;
69
- exports.fromOption = ReadonlyArray_dist_effectReadonlyArray.fromOption;
70
- exports.fromRecord = ReadonlyArray_dist_effectReadonlyArray.fromRecord;
71
- exports.get = ReadonlyArray_dist_effectReadonlyArray.get;
72
- exports.getEquivalence = ReadonlyArray_dist_effectReadonlyArray.getEquivalence;
73
- exports.getOrder = ReadonlyArray_dist_effectReadonlyArray.getOrder;
74
- exports.group = ReadonlyArray_dist_effectReadonlyArray.group;
75
- exports.groupBy = ReadonlyArray_dist_effectReadonlyArray.groupBy;
76
- exports.groupWith = ReadonlyArray_dist_effectReadonlyArray.groupWith;
77
- exports.head = ReadonlyArray_dist_effectReadonlyArray.head;
78
- exports.headNonEmpty = ReadonlyArray_dist_effectReadonlyArray.headNonEmpty;
79
- exports.init = ReadonlyArray_dist_effectReadonlyArray.init;
80
- exports.initNonEmpty = ReadonlyArray_dist_effectReadonlyArray.initNonEmpty;
81
- exports.insertAt = ReadonlyArray_dist_effectReadonlyArray.insertAt;
82
- exports.intersection = ReadonlyArray_dist_effectReadonlyArray.intersection;
83
- exports.intersectionWith = ReadonlyArray_dist_effectReadonlyArray.intersectionWith;
84
- exports.intersperse = ReadonlyArray_dist_effectReadonlyArray.intersperse;
85
- exports.intersperseNonEmpty = ReadonlyArray_dist_effectReadonlyArray.intersperseNonEmpty;
86
- exports.isEmptyArray = ReadonlyArray_dist_effectReadonlyArray.isEmptyArray;
87
- exports.isEmptyReadonlyArray = ReadonlyArray_dist_effectReadonlyArray.isEmptyReadonlyArray;
88
- exports.isNonEmptyArray = ReadonlyArray_dist_effectReadonlyArray.isNonEmptyArray;
89
- exports.isNonEmptyReadonlyArray = ReadonlyArray_dist_effectReadonlyArray.isNonEmptyReadonlyArray;
90
- exports.join = ReadonlyArray_dist_effectReadonlyArray.join;
91
- exports.last = ReadonlyArray_dist_effectReadonlyArray.last;
92
- exports.lastNonEmpty = ReadonlyArray_dist_effectReadonlyArray.lastNonEmpty;
93
- exports.length = ReadonlyArray_dist_effectReadonlyArray.length;
94
- exports.liftEither = ReadonlyArray_dist_effectReadonlyArray.liftEither;
95
- exports.liftNullable = ReadonlyArray_dist_effectReadonlyArray.liftNullable;
96
- exports.liftOption = ReadonlyArray_dist_effectReadonlyArray.liftOption;
97
- exports.liftPredicate = ReadonlyArray_dist_effectReadonlyArray.liftPredicate;
98
- exports.make = ReadonlyArray_dist_effectReadonlyArray.make;
99
- exports.makeBy = ReadonlyArray_dist_effectReadonlyArray.makeBy;
100
- exports.map = ReadonlyArray_dist_effectReadonlyArray.map;
101
- exports.mapAccum = ReadonlyArray_dist_effectReadonlyArray.mapAccum;
102
- exports.mapNonEmpty = ReadonlyArray_dist_effectReadonlyArray.mapNonEmpty;
103
- exports.match = ReadonlyArray_dist_effectReadonlyArray.match;
104
- exports.matchLeft = ReadonlyArray_dist_effectReadonlyArray.matchLeft;
105
- exports.matchRight = ReadonlyArray_dist_effectReadonlyArray.matchRight;
106
- exports.max = ReadonlyArray_dist_effectReadonlyArray.max;
107
- exports.min = ReadonlyArray_dist_effectReadonlyArray.min;
108
- exports.modify = ReadonlyArray_dist_effectReadonlyArray.modify;
109
- exports.modifyNonEmptyHead = ReadonlyArray_dist_effectReadonlyArray.modifyNonEmptyHead;
110
- exports.modifyNonEmptyLast = ReadonlyArray_dist_effectReadonlyArray.modifyNonEmptyLast;
111
- exports.modifyOption = ReadonlyArray_dist_effectReadonlyArray.modifyOption;
112
- exports.of = ReadonlyArray_dist_effectReadonlyArray.of;
113
- exports.partition = ReadonlyArray_dist_effectReadonlyArray.partition;
114
- exports.partitionMap = ReadonlyArray_dist_effectReadonlyArray.partitionMap;
115
- exports.prepend = ReadonlyArray_dist_effectReadonlyArray.prepend;
116
- exports.prependAll = ReadonlyArray_dist_effectReadonlyArray.prependAll;
117
- exports.prependAllNonEmpty = ReadonlyArray_dist_effectReadonlyArray.prependAllNonEmpty;
118
- exports.range = ReadonlyArray_dist_effectReadonlyArray.range;
119
- exports.reduce = ReadonlyArray_dist_effectReadonlyArray.reduce;
120
- exports.reduceRight = ReadonlyArray_dist_effectReadonlyArray.reduceRight;
121
- exports.remove = ReadonlyArray_dist_effectReadonlyArray.remove;
122
- exports.replace = ReadonlyArray_dist_effectReadonlyArray.replace;
123
- exports.replaceOption = ReadonlyArray_dist_effectReadonlyArray.replaceOption;
124
- exports.replicate = ReadonlyArray_dist_effectReadonlyArray.replicate;
125
- exports.reverse = ReadonlyArray_dist_effectReadonlyArray.reverse;
126
- exports.reverseNonEmpty = ReadonlyArray_dist_effectReadonlyArray.reverseNonEmpty;
127
- exports.rotate = ReadonlyArray_dist_effectReadonlyArray.rotate;
128
- exports.rotateNonEmpty = ReadonlyArray_dist_effectReadonlyArray.rotateNonEmpty;
129
- exports.scan = ReadonlyArray_dist_effectReadonlyArray.scan;
130
- exports.scanRight = ReadonlyArray_dist_effectReadonlyArray.scanRight;
131
- exports.separate = ReadonlyArray_dist_effectReadonlyArray.separate;
132
- exports.setNonEmptyHead = ReadonlyArray_dist_effectReadonlyArray.setNonEmptyHead;
133
- exports.setNonEmptyLast = ReadonlyArray_dist_effectReadonlyArray.setNonEmptyLast;
134
- exports.some = ReadonlyArray_dist_effectReadonlyArray.some;
135
- exports.sort = ReadonlyArray_dist_effectReadonlyArray.sort;
136
- exports.sortBy = ReadonlyArray_dist_effectReadonlyArray.sortBy;
137
- exports.sortByNonEmpty = ReadonlyArray_dist_effectReadonlyArray.sortByNonEmpty;
138
- exports.sortNonEmpty = ReadonlyArray_dist_effectReadonlyArray.sortNonEmpty;
139
- exports.sortWith = ReadonlyArray_dist_effectReadonlyArray.sortWith;
140
- exports.span = ReadonlyArray_dist_effectReadonlyArray.span;
141
- exports.splitAt = ReadonlyArray_dist_effectReadonlyArray.splitAt;
142
- exports.splitNonEmptyAt = ReadonlyArray_dist_effectReadonlyArray.splitNonEmptyAt;
143
- exports.tail = ReadonlyArray_dist_effectReadonlyArray.tail;
144
- exports.tailNonEmpty = ReadonlyArray_dist_effectReadonlyArray.tailNonEmpty;
145
- exports.take = ReadonlyArray_dist_effectReadonlyArray.take;
146
- exports.takeRight = ReadonlyArray_dist_effectReadonlyArray.takeRight;
147
- exports.takeWhile = ReadonlyArray_dist_effectReadonlyArray.takeWhile;
148
- exports.unappend = ReadonlyArray_dist_effectReadonlyArray.unappend;
149
- exports.unfold = ReadonlyArray_dist_effectReadonlyArray.unfold;
150
- exports.union = ReadonlyArray_dist_effectReadonlyArray.union;
151
- exports.unionNonEmpty = ReadonlyArray_dist_effectReadonlyArray.unionNonEmpty;
152
- exports.unionNonEmptyWith = ReadonlyArray_dist_effectReadonlyArray.unionNonEmptyWith;
153
- exports.unionWith = ReadonlyArray_dist_effectReadonlyArray.unionWith;
154
- exports.unprepend = ReadonlyArray_dist_effectReadonlyArray.unprepend;
155
- exports.unsafeGet = ReadonlyArray_dist_effectReadonlyArray.unsafeGet;
156
- exports.unzip = ReadonlyArray_dist_effectReadonlyArray.unzip;
157
- exports.unzipNonEmpty = ReadonlyArray_dist_effectReadonlyArray.unzipNonEmpty;
158
- exports.zip = ReadonlyArray_dist_effectReadonlyArray.zip;
159
- exports.zipNonEmpty = ReadonlyArray_dist_effectReadonlyArray.zipNonEmpty;
160
- exports.zipNonEmptyWith = ReadonlyArray_dist_effectReadonlyArray.zipNonEmptyWith;
161
- exports.zipWith = ReadonlyArray_dist_effectReadonlyArray.zipWith;
5
+ var Either_dist_effectEither = require('../../Either/dist/effect-Either.cjs.dev.js');
6
+ var Equal_dist_effectEqual = require('../../Equal/dist/effect-Equal.cjs.dev.js');
7
+ var Equivalence_dist_effectEquivalence = require('../../Equivalence/dist/effect-Equivalence.cjs.dev.js');
8
+ var Function_dist_effectFunction = require('../../Function/dist/effect-Function.cjs.dev.js');
9
+ var ReadonlyArray = require('../../dist/ReadonlyArray-9a1474f6.cjs.dev.js');
10
+ var Option_dist_effectOption = require('../../Option/dist/effect-Option.cjs.dev.js');
11
+ var Order_dist_effectOrder = require('../../Order/dist/effect-Order.cjs.dev.js');
12
+ var ReadonlyRecord_dist_effectReadonlyRecord = require('../../ReadonlyRecord/dist/effect-ReadonlyRecord.cjs.dev.js');
13
+ require('../../dist/Either-12bbe00c.cjs.dev.js');
14
+ require('../../Hash/dist/effect-Hash.cjs.dev.js');
15
+ require('../../GlobalValue/dist/effect-GlobalValue.cjs.dev.js');
16
+ require('../../Utils/dist/effect-Utils.cjs.dev.js');
17
+ require('../../Predicate/dist/effect-Predicate.cjs.dev.js');
18
+ require('../../Inspectable/dist/effect-Inspectable.cjs.dev.js');
19
+ require('../../dist/Effectable-2f022879.cjs.dev.js');
20
+ require('../../Data/dist/effect-Data.cjs.dev.js');
21
+ require('../../Pipeable/dist/effect-Pipeable.cjs.dev.js');
22
+ require('../../Number/dist/effect-Number.cjs.dev.js');
23
+
24
+ /**
25
+ * This module provides utility functions for working with arrays in TypeScript.
26
+ *
27
+ * @since 2.0.0
28
+ */
29
+
30
+ /**
31
+ * @category type lambdas
32
+ * @since 2.0.0
33
+ */
34
+
35
+ /**
36
+ * @category models
37
+ * @since 2.0.0
38
+ */
39
+
40
+ /**
41
+ * @category models
42
+ * @since 2.0.0
43
+ */
44
+
45
+ /**
46
+ * Builds a `NonEmptyArray` from an non-empty collection of elements.
47
+ *
48
+ * @category constructors
49
+ * @since 2.0.0
50
+ */
51
+ const make = (...elements) => elements;
52
+
53
+ /**
54
+ * Return a `NonEmptyArray` of length `n` with element `i` initialized with `f(i)`.
55
+ *
56
+ * **Note**. `n` is normalized to an integer >= 1.
57
+ *
58
+ * @example
59
+ * import { makeBy } from 'effect/ReadonlyArray'
60
+ *
61
+ * assert.deepStrictEqual(makeBy(5, n => n * 2), [0, 2, 4, 6, 8])
62
+ *
63
+ * @category constructors
64
+ * @since 2.0.0
65
+ */
66
+ const makeBy = (n, f) => {
67
+ const max = Math.max(1, Math.floor(n));
68
+ const out = [f(0)];
69
+ for (let i = 1; i < max; i++) {
70
+ out.push(f(i));
71
+ }
72
+ return out;
73
+ };
74
+
75
+ /**
76
+ * Return a `NonEmptyArray` containing a range of integers, including both endpoints.
77
+ *
78
+ * @example
79
+ * import { range } from 'effect/ReadonlyArray'
80
+ *
81
+ * assert.deepStrictEqual(range(1, 3), [1, 2, 3])
82
+ *
83
+ * @category constructors
84
+ * @since 2.0.0
85
+ */
86
+ const range = (start, end) => start <= end ? makeBy(end - start + 1, i => start + i) : [start];
87
+
88
+ /**
89
+ * Return a `NonEmptyArray` containing a value repeated the specified number of times.
90
+ *
91
+ * **Note**. `n` is normalized to an integer >= 1.
92
+ *
93
+ * @example
94
+ * import { replicate } from 'effect/ReadonlyArray'
95
+ *
96
+ * assert.deepStrictEqual(replicate("a", 3), ["a", "a", "a"])
97
+ *
98
+ * @category constructors
99
+ * @since 2.0.0
100
+ */
101
+ const replicate = /*#__PURE__*/Function_dist_effectFunction.dual(2, (a, n) => makeBy(n, () => a));
102
+
103
+ /**
104
+ * @category conversions
105
+ * @since 2.0.0
106
+ */
107
+ const fromIterable = collection => Array.isArray(collection) ? collection : Array.from(collection);
108
+
109
+ /**
110
+ * Takes a record and returns an array of tuples containing its keys and values.
111
+ *
112
+ * @param self - The record to transform.
113
+ *
114
+ * @example
115
+ * import { fromRecord } from "effect/ReadonlyArray"
116
+ *
117
+ * const x = { a: 1, b: 2, c: 3 }
118
+ * assert.deepStrictEqual(fromRecord(x), [["a", 1], ["b", 2], ["c", 3]])
119
+ *
120
+ * @category conversions
121
+ * @since 2.0.0
122
+ */
123
+ const fromRecord = ReadonlyRecord_dist_effectReadonlyRecord.toEntries;
124
+
125
+ /**
126
+ * @category conversions
127
+ * @since 2.0.0
128
+ */
129
+ const fromOption = Option_dist_effectOption.toArray;
130
+
131
+ /**
132
+ * @category pattern matching
133
+ * @since 2.0.0
134
+ */
135
+ const match = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, {
136
+ onEmpty,
137
+ onNonEmpty
138
+ }) => isNonEmptyReadonlyArray(self) ? onNonEmpty(self) : onEmpty());
139
+
140
+ /**
141
+ * @category pattern matching
142
+ * @since 2.0.0
143
+ */
144
+ const matchLeft = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, {
145
+ onEmpty,
146
+ onNonEmpty
147
+ }) => isNonEmptyReadonlyArray(self) ? onNonEmpty(headNonEmpty(self), tailNonEmpty(self)) : onEmpty());
148
+
149
+ /**
150
+ * @category pattern matching
151
+ * @since 2.0.0
152
+ */
153
+ const matchRight = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, {
154
+ onEmpty,
155
+ onNonEmpty
156
+ }) => isNonEmptyReadonlyArray(self) ? onNonEmpty(initNonEmpty(self), lastNonEmpty(self)) : onEmpty());
157
+
158
+ /**
159
+ * Prepend an element to the front of an `Iterable`, creating a new `NonEmptyArray`.
160
+ *
161
+ * @category concatenating
162
+ * @since 2.0.0
163
+ */
164
+ const prepend = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, head) => [head, ...self]);
165
+
166
+ /**
167
+ * @category concatenating
168
+ * @since 2.0.0
169
+ */
170
+ const prependAll = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, that) => fromIterable(that).concat(fromIterable(self)));
171
+
172
+ /**
173
+ * @category concatenating
174
+ * @since 2.0.0
175
+ */
176
+ const prependAllNonEmpty = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, that) => prependAll(self, that));
177
+
178
+ /**
179
+ * Append an element to the end of an `Iterable`, creating a new `NonEmptyArray`.
180
+ *
181
+ * @category concatenating
182
+ * @since 2.0.0
183
+ */
184
+ const append = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, last) => [...self, last]);
185
+
186
+ /**
187
+ * @category concatenating
188
+ * @since 2.0.0
189
+ */
190
+ const appendAll = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, that) => fromIterable(self).concat(fromIterable(that)));
191
+
192
+ /**
193
+ * @category concatenating
194
+ * @since 2.0.0
195
+ */
196
+ const appendAllNonEmpty = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, that) => appendAll(self, that));
197
+
198
+ /**
199
+ * Reduce an `Iterable` from the left, keeping all intermediate results instead of only the final result.
200
+ *
201
+ * @category folding
202
+ * @since 2.0.0
203
+ */
204
+ const scan = /*#__PURE__*/Function_dist_effectFunction.dual(3, (self, b, f) => {
205
+ const out = [b];
206
+ let i = 0;
207
+ for (const a of self) {
208
+ out[i + 1] = f(out[i], a);
209
+ i++;
210
+ }
211
+ return out;
212
+ });
213
+
214
+ /**
215
+ * Reduce an `Iterable` from the right, keeping all intermediate results instead of only the final result.
216
+ *
217
+ * @category folding
218
+ * @since 2.0.0
219
+ */
220
+ const scanRight = /*#__PURE__*/Function_dist_effectFunction.dual(3, (self, b, f) => {
221
+ const input = fromIterable(self);
222
+ const out = new Array(input.length + 1);
223
+ out[input.length] = b;
224
+ for (let i = input.length - 1; i >= 0; i--) {
225
+ out[i] = f(out[i + 1], input[i]);
226
+ }
227
+ return out;
228
+ });
229
+
230
+ /**
231
+ * Determine if an `Array` is empty narrowing down the type to `[]`.
232
+ *
233
+ * @param self - The `Array` to check.
234
+ *
235
+ * @example
236
+ * import { isEmptyArray } from "effect/ReadonlyArray"
237
+ *
238
+ * assert.deepStrictEqual(isEmptyArray([]), true);
239
+ * assert.deepStrictEqual(isEmptyArray([1, 2, 3]), false);
240
+ *
241
+ * @category guards
242
+ * @since 2.0.0
243
+ */
244
+ const isEmptyArray = self => self.length === 0;
245
+
246
+ /**
247
+ * Determine if a `ReadonlyArray` is empty narrowing down the type to `readonly []`.
248
+ *
249
+ * @param self - The `ReadonlyArray` to check.
250
+ *
251
+ * @example
252
+ * import { isEmptyReadonlyArray } from "effect/ReadonlyArray"
253
+ *
254
+ * assert.deepStrictEqual(isEmptyReadonlyArray([]), true);
255
+ * assert.deepStrictEqual(isEmptyReadonlyArray([1, 2, 3]), false);
256
+ *
257
+ * @category guards
258
+ * @since 2.0.0
259
+ */
260
+ const isEmptyReadonlyArray = isEmptyArray;
261
+
262
+ /**
263
+ * Determine if an `Array` is non empty narrowing down the type to `NonEmptyArray`.
264
+ *
265
+ * An `Array` is considered to be a `NonEmptyArray` if it contains at least one element.
266
+ *
267
+ * @param self - The `Array` to check.
268
+ *
269
+ * @example
270
+ * import { isNonEmptyArray } from "effect/ReadonlyArray"
271
+ *
272
+ * assert.deepStrictEqual(isNonEmptyArray([]), false);
273
+ * assert.deepStrictEqual(isNonEmptyArray([1, 2, 3]), true);
274
+ *
275
+ * @category guards
276
+ * @since 2.0.0
277
+ */
278
+ const isNonEmptyArray = ReadonlyArray.isNonEmptyArray;
279
+
280
+ /**
281
+ * Determine if a `ReadonlyArray` is non empty narrowing down the type to `NonEmptyReadonlyArray`.
282
+ *
283
+ * A `ReadonlyArray` is considered to be a `NonEmptyReadonlyArray` if it contains at least one element.
284
+ *
285
+ * @param self - The `ReadonlyArray` to check.
286
+ *
287
+ * @example
288
+ * import { isNonEmptyReadonlyArray } from "effect/ReadonlyArray"
289
+ *
290
+ * assert.deepStrictEqual(isNonEmptyReadonlyArray([]), false);
291
+ * assert.deepStrictEqual(isNonEmptyReadonlyArray([1, 2, 3]), true);
292
+ *
293
+ * @category guards
294
+ * @since 2.0.0
295
+ */
296
+ const isNonEmptyReadonlyArray = ReadonlyArray.isNonEmptyArray;
297
+
298
+ /**
299
+ * Return the number of elements in a `ReadonlyArray`.
300
+ *
301
+ * @category getters
302
+ * @since 2.0.0
303
+ */
304
+ const length = self => self.length;
305
+ const isOutOfBound = (i, as) => i < 0 || i >= as.length;
306
+ const clamp = (i, as) => Math.floor(Math.min(Math.max(0, i), as.length));
307
+
308
+ /**
309
+ * This function provides a safe way to read a value at a particular index from a `ReadonlyArray`.
310
+ *
311
+ * @category getters
312
+ * @since 2.0.0
313
+ */
314
+ const get = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, index) => {
315
+ const i = Math.floor(index);
316
+ return isOutOfBound(i, self) ? Option_dist_effectOption.none() : Option_dist_effectOption.some(self[i]);
317
+ });
318
+
319
+ /**
320
+ * Gets an element unsafely, will throw on out of bounds.
321
+ *
322
+ * @since 2.0.0
323
+ * @category unsafe
324
+ */
325
+ const unsafeGet = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, index) => {
326
+ const i = Math.floor(index);
327
+ if (isOutOfBound(i, self)) {
328
+ throw new Error(`Index ${i} out of bounds`);
329
+ }
330
+ return self[i];
331
+ });
332
+
333
+ /**
334
+ * Return a tuple containing the first element, and a new `Array` of the remaining elements, if any.
335
+ *
336
+ * @category getters
337
+ * @since 2.0.0
338
+ */
339
+ const unprepend = self => [headNonEmpty(self), tailNonEmpty(self)];
340
+
341
+ /**
342
+ * Return a tuple containing a copy of the `NonEmptyReadonlyArray` without its last element, and that last element.
343
+ *
344
+ * @category getters
345
+ * @since 2.0.0
346
+ */
347
+ const unappend = self => [initNonEmpty(self), lastNonEmpty(self)];
348
+
349
+ /**
350
+ * Get the first element of a `ReadonlyArray`, or `None` if the `ReadonlyArray` is empty.
351
+ *
352
+ * @category getters
353
+ * @since 2.0.0
354
+ */
355
+ const head = /*#__PURE__*/get(0);
356
+
357
+ /**
358
+ * @category getters
359
+ * @since 2.0.0
360
+ */
361
+ const headNonEmpty = /*#__PURE__*/unsafeGet(0);
362
+
363
+ /**
364
+ * Get the last element in a `ReadonlyArray`, or `None` if the `ReadonlyArray` is empty.
365
+ *
366
+ * @category getters
367
+ * @since 2.0.0
368
+ */
369
+ const last = self => isNonEmptyReadonlyArray(self) ? Option_dist_effectOption.some(lastNonEmpty(self)) : Option_dist_effectOption.none();
370
+
371
+ /**
372
+ * @category getters
373
+ * @since 2.0.0
374
+ */
375
+ const lastNonEmpty = self => self[self.length - 1];
376
+
377
+ /**
378
+ * Get all but the first element of an `Iterable`, creating a new `Array`, or `None` if the `Iterable` is empty.
379
+ *
380
+ * @category getters
381
+ * @since 2.0.0
382
+ */
383
+ const tail = self => {
384
+ const input = fromIterable(self);
385
+ return isNonEmptyReadonlyArray(input) ? Option_dist_effectOption.some(tailNonEmpty(input)) : Option_dist_effectOption.none();
386
+ };
387
+
388
+ /**
389
+ * @category getters
390
+ * @since 2.0.0
391
+ */
392
+ const tailNonEmpty = self => self.slice(1);
393
+
394
+ /**
395
+ * Get all but the last element of an `Iterable`, creating a new `Array`, or `None` if the `Iterable` is empty.
396
+ *
397
+ * @category getters
398
+ * @since 2.0.0
399
+ */
400
+ const init = self => {
401
+ const input = fromIterable(self);
402
+ return isNonEmptyReadonlyArray(input) ? Option_dist_effectOption.some(initNonEmpty(input)) : Option_dist_effectOption.none();
403
+ };
404
+
405
+ /**
406
+ * Get all but the last element of a non empty array, creating a new array.
407
+ *
408
+ * @category getters
409
+ * @since 2.0.0
410
+ */
411
+ const initNonEmpty = self => self.slice(0, -1);
412
+
413
+ /**
414
+ * Keep only a max number of elements from the start of an `Iterable`, creating a new `Array`.
415
+ *
416
+ * **Note**. `n` is normalized to a non negative integer.
417
+ *
418
+ * @category getters
419
+ * @since 2.0.0
420
+ */
421
+ const take = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, n) => {
422
+ const input = fromIterable(self);
423
+ return input.slice(0, clamp(n, input));
424
+ });
425
+
426
+ /**
427
+ * Keep only a max number of elements from the end of an `Iterable`, creating a new `Array`.
428
+ *
429
+ * **Note**. `n` is normalized to a non negative integer.
430
+ *
431
+ * @category getters
432
+ * @since 2.0.0
433
+ */
434
+ const takeRight = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, n) => {
435
+ const input = fromIterable(self);
436
+ const i = clamp(n, input);
437
+ return i === 0 ? [] : input.slice(-i);
438
+ });
439
+
440
+ /**
441
+ * Calculate the longest initial subarray for which all element satisfy the specified predicate, creating a new `Array`.
442
+ *
443
+ * @category getters
444
+ * @since 2.0.0
445
+ */
446
+ const takeWhile = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, predicate) => {
447
+ const out = [];
448
+ for (const a of self) {
449
+ if (!predicate(a)) {
450
+ break;
451
+ }
452
+ out.push(a);
453
+ }
454
+ return out;
455
+ });
456
+ const spanIndex = (self, predicate) => {
457
+ let i = 0;
458
+ for (const a of self) {
459
+ if (!predicate(a)) {
460
+ break;
461
+ }
462
+ i++;
463
+ }
464
+ return i;
465
+ };
466
+
467
+ /**
468
+ * Split an `Iterable` into two parts:
469
+ *
470
+ * 1. the longest initial subarray for which all elements satisfy the specified predicate
471
+ * 2. the remaining elements
472
+ *
473
+ * @category filtering
474
+ * @since 2.0.0
475
+ */
476
+ const span = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, predicate) => splitAt(self, spanIndex(self, predicate)));
477
+
478
+ /**
479
+ * Drop a max number of elements from the start of an `Iterable`, creating a new `Array`.
480
+ *
481
+ * **Note**. `n` is normalized to a non negative integer.
482
+ *
483
+ * @category getters
484
+ * @since 2.0.0
485
+ */
486
+ const drop = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, n) => {
487
+ const input = fromIterable(self);
488
+ return input.slice(clamp(n, input), input.length);
489
+ });
490
+
491
+ /**
492
+ * Drop a max number of elements from the end of an `Iterable`, creating a new `Array`.
493
+ *
494
+ * **Note**. `n` is normalized to a non negative integer.
495
+ *
496
+ * @category getters
497
+ * @since 2.0.0
498
+ */
499
+ const dropRight = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, n) => {
500
+ const input = fromIterable(self);
501
+ return input.slice(0, input.length - clamp(n, input));
502
+ });
503
+
504
+ /**
505
+ * Remove the longest initial subarray for which all element satisfy the specified predicate, creating a new `Array`.
506
+ *
507
+ * @category getters
508
+ * @since 2.0.0
509
+ */
510
+ const dropWhile = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, predicate) => fromIterable(self).slice(spanIndex(self, predicate)));
511
+
512
+ /**
513
+ * Return the first index for which a predicate holds.
514
+ *
515
+ * @category elements
516
+ * @since 2.0.0
517
+ */
518
+ const findFirstIndex = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, predicate) => {
519
+ let i = 0;
520
+ for (const a of self) {
521
+ if (predicate(a)) {
522
+ return Option_dist_effectOption.some(i);
523
+ }
524
+ i++;
525
+ }
526
+ return Option_dist_effectOption.none();
527
+ });
528
+
529
+ /**
530
+ * Return the last index for which a predicate holds.
531
+ *
532
+ * @category elements
533
+ * @since 2.0.0
534
+ */
535
+ const findLastIndex = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, predicate) => {
536
+ const input = fromIterable(self);
537
+ for (let i = input.length - 1; i >= 0; i--) {
538
+ if (predicate(input[i])) {
539
+ return Option_dist_effectOption.some(i);
540
+ }
541
+ }
542
+ return Option_dist_effectOption.none();
543
+ });
544
+
545
+ /**
546
+ * Returns the first element that satisfies the specified
547
+ * predicate, or `None` if no such element exists.
548
+ *
549
+ * @category elements
550
+ * @since 2.0.0
551
+ */
552
+ const findFirst = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, predicate) => {
553
+ const input = fromIterable(self);
554
+ for (let i = 0; i < input.length; i++) {
555
+ if (predicate(input[i])) {
556
+ return Option_dist_effectOption.some(input[i]);
557
+ }
558
+ }
559
+ return Option_dist_effectOption.none();
560
+ });
561
+
562
+ /**
563
+ * Find the last element for which a predicate holds.
564
+ *
565
+ * @category elements
566
+ * @since 2.0.0
567
+ */
568
+ const findLast = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, predicate) => {
569
+ const input = fromIterable(self);
570
+ for (let i = input.length - 1; i >= 0; i--) {
571
+ if (predicate(input[i])) {
572
+ return Option_dist_effectOption.some(input[i]);
573
+ }
574
+ }
575
+ return Option_dist_effectOption.none();
576
+ });
577
+
578
+ /**
579
+ * Insert an element at the specified index, creating a new `NonEmptyArray`,
580
+ * or return `None` if the index is out of bounds.
581
+ *
582
+ * @since 2.0.0
583
+ */
584
+ const insertAt = /*#__PURE__*/Function_dist_effectFunction.dual(3, (self, i, b) => {
585
+ const out = Array.from(self);
586
+ // v--- `= self.length` is ok, it means inserting in last position
587
+ if (i < 0 || i > out.length) {
588
+ return Option_dist_effectOption.none();
589
+ }
590
+ out.splice(i, 0, b);
591
+ return Option_dist_effectOption.some(out);
592
+ });
593
+
594
+ /**
595
+ * Change the element at the specified index, creating a new `Array`,
596
+ * or return a copy of the input if the index is out of bounds.
597
+ *
598
+ * @since 2.0.0
599
+ */
600
+ const replace = /*#__PURE__*/Function_dist_effectFunction.dual(3, (self, i, b) => modify(self, i, () => b));
601
+
602
+ /**
603
+ * @since 2.0.0
604
+ */
605
+ const replaceOption = /*#__PURE__*/Function_dist_effectFunction.dual(3, (self, i, b) => modifyOption(self, i, () => b));
606
+
607
+ /**
608
+ * Apply a function to the element at the specified index, creating a new `Array`,
609
+ * or return a copy of the input if the index is out of bounds.
610
+ *
611
+ * @since 2.0.0
612
+ */
613
+ const modify = /*#__PURE__*/Function_dist_effectFunction.dual(3, (self, i, f) => Option_dist_effectOption.getOrElse(modifyOption(self, i, f), () => Array.from(self)));
614
+
615
+ /**
616
+ * Apply a function to the element at the specified index, creating a new `Array`,
617
+ * or return `None` if the index is out of bounds.
618
+ *
619
+ * @since 2.0.0
620
+ */
621
+ const modifyOption = /*#__PURE__*/Function_dist_effectFunction.dual(3, (self, i, f) => {
622
+ const out = Array.from(self);
623
+ if (isOutOfBound(i, out)) {
624
+ return Option_dist_effectOption.none();
625
+ }
626
+ const next = f(out[i]);
627
+ // @ts-expect-error
628
+ out[i] = next;
629
+ return Option_dist_effectOption.some(out);
630
+ });
631
+
632
+ /**
633
+ * Delete the element at the specified index, creating a new `Array`,
634
+ * or return a copy of the input if the index is out of bounds.
635
+ *
636
+ * @since 2.0.0
637
+ */
638
+ const remove = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, i) => {
639
+ const out = Array.from(self);
640
+ if (isOutOfBound(i, out)) {
641
+ return out;
642
+ }
643
+ out.splice(i, 1);
644
+ return out;
645
+ });
646
+
647
+ /**
648
+ * Reverse an `Iterable`, creating a new `Array`.
649
+ *
650
+ * @category elements
651
+ * @since 2.0.0
652
+ */
653
+ const reverse = self => Array.from(self).reverse();
654
+
655
+ /**
656
+ * @category elements
657
+ * @since 2.0.0
658
+ */
659
+ const reverseNonEmpty = self => [lastNonEmpty(self), ...self.slice(0, -1).reverse()];
660
+
661
+ /**
662
+ * Sort the elements of an `Iterable` in increasing order, creating a new `Array`.
663
+ *
664
+ * @category sorting
665
+ * @since 2.0.0
666
+ */
667
+ const sort = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, O) => {
668
+ const out = Array.from(self);
669
+ out.sort(O);
670
+ return out;
671
+ });
672
+
673
+ /**
674
+ * @since 2.0.0
675
+ * @category elements
676
+ */
677
+ const sortWith = /*#__PURE__*/Function_dist_effectFunction.dual(3, (self, f, order) => sort(self, Order_dist_effectOrder.mapInput(order, f)));
678
+
679
+ /**
680
+ * Sort the elements of a `NonEmptyReadonlyArray` in increasing order, creating a new `NonEmptyArray`.
681
+ *
682
+ * @category sorting
683
+ * @since 2.0.0
684
+ */
685
+ const sortNonEmpty = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, O) => sort(O)(self));
686
+
687
+ /**
688
+ * Sort the elements of an `Iterable` in increasing order, where elements are compared
689
+ * using first `orders[0]`, then `orders[1]`, etc...
690
+ *
691
+ * @category sorting
692
+ * @since 2.0.0
693
+ */
694
+ const sortBy = (...orders) => self => {
695
+ const input = fromIterable(self);
696
+ return isNonEmptyReadonlyArray(input) ? sortByNonEmpty(...orders)(input) : [];
697
+ };
698
+
699
+ /**
700
+ * @category sorting
701
+ * @since 2.0.0
702
+ */
703
+ const sortByNonEmpty = (...orders) => sortNonEmpty(Order_dist_effectOrder.combineAll(orders));
704
+
705
+ /**
706
+ * Takes two `Iterable`s and returns an `Array` of corresponding pairs.
707
+ * If one input `Iterable` is short, excess elements of the
708
+ * longer `Iterable` are discarded.
709
+ *
710
+ * @since 2.0.0
711
+ */
712
+ const zip = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, that) => zipWith(self, that, (a, b) => [a, b]));
713
+
714
+ /**
715
+ * Apply a function to pairs of elements at the same index in two `Iterable`s, collecting the results in a new `Array`. If one
716
+ * input `Iterable` is short, excess elements of the longer `Iterable` are discarded.
717
+ *
718
+ * @since 2.0.0
719
+ */
720
+ const zipWith = /*#__PURE__*/Function_dist_effectFunction.dual(3, (self, that, f) => {
721
+ const as = fromIterable(self);
722
+ const bs = fromIterable(that);
723
+ return isNonEmptyReadonlyArray(as) && isNonEmptyReadonlyArray(bs) ? zipNonEmptyWith(bs, f)(as) : [];
724
+ });
725
+
726
+ /**
727
+ * @since 2.0.0
728
+ */
729
+ const zipNonEmpty = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, that) => zipNonEmptyWith(self, that, (a, b) => [a, b]));
730
+
731
+ /**
732
+ * @since 2.0.0
733
+ */
734
+ const zipNonEmptyWith = /*#__PURE__*/Function_dist_effectFunction.dual(3, (self, that, f) => {
735
+ const cs = [f(headNonEmpty(self), headNonEmpty(that))];
736
+ const len = Math.min(self.length, that.length);
737
+ for (let i = 1; i < len; i++) {
738
+ cs[i] = f(self[i], that[i]);
739
+ }
740
+ return cs;
741
+ });
742
+
743
+ /**
744
+ * This function is the inverse of `zip`. Takes an `Iterable` of pairs and return two corresponding `Array`s.
745
+ *
746
+ * @since 2.0.0
747
+ */
748
+ const unzip = self => {
749
+ const input = fromIterable(self);
750
+ return isNonEmptyReadonlyArray(input) ? unzipNonEmpty(input) : [[], []];
751
+ };
752
+
753
+ /**
754
+ * @since 2.0.0
755
+ */
756
+ const unzipNonEmpty = self => {
757
+ const fa = [self[0][0]];
758
+ const fb = [self[0][1]];
759
+ for (let i = 1; i < self.length; i++) {
760
+ fa[i] = self[i][0];
761
+ fb[i] = self[i][1];
762
+ }
763
+ return [fa, fb];
764
+ };
765
+
766
+ /**
767
+ * Places an element in between members of an `Iterable`
768
+ *
769
+ * @since 2.0.0
770
+ */
771
+ const intersperse = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, middle) => {
772
+ const input = fromIterable(self);
773
+ return isNonEmptyReadonlyArray(input) ? intersperseNonEmpty(input, middle) : [];
774
+ });
775
+
776
+ /**
777
+ * Places an element in between members of a `NonEmptyReadonlyArray`
778
+ *
779
+ * @since 2.0.0
780
+ */
781
+ const intersperseNonEmpty = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, middle) => {
782
+ const out = [headNonEmpty(self)];
783
+ const tail = tailNonEmpty(self);
784
+ for (let i = 0; i < tail.length; i++) {
785
+ if (i < tail.length) {
786
+ out.push(middle);
787
+ }
788
+ out.push(tail[i]);
789
+ }
790
+ return out;
791
+ });
792
+
793
+ /**
794
+ * Apply a function to the head, creating a new `NonEmptyReadonlyArray`.
795
+ *
796
+ * @since 2.0.0
797
+ */
798
+ const modifyNonEmptyHead = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, f) => [f(headNonEmpty(self)), ...tailNonEmpty(self)]);
799
+
800
+ /**
801
+ * Change the head, creating a new `NonEmptyReadonlyArray`.
802
+ *
803
+ * @since 2.0.0
804
+ */
805
+ const setNonEmptyHead = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, b) => modifyNonEmptyHead(self, () => b));
806
+
807
+ /**
808
+ * Apply a function to the last element, creating a new `NonEmptyReadonlyArray`.
809
+ *
810
+ * @since 2.0.0
811
+ */
812
+ const modifyNonEmptyLast = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, f) => append(initNonEmpty(self), f(lastNonEmpty(self))));
813
+
814
+ /**
815
+ * Change the last element, creating a new `NonEmptyReadonlyArray`.
816
+ *
817
+ * @since 2.0.0
818
+ */
819
+ const setNonEmptyLast = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, b) => modifyNonEmptyLast(self, () => b));
820
+
821
+ /**
822
+ * Rotate an `Iterable` by `n` steps.
823
+ *
824
+ * @since 2.0.0
825
+ */
826
+ const rotate = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, n) => {
827
+ const input = fromIterable(self);
828
+ return isNonEmptyReadonlyArray(input) ? rotateNonEmpty(input, n) : [];
829
+ });
830
+
831
+ /**
832
+ * Rotate a `NonEmptyReadonlyArray` by `n` steps.
833
+ *
834
+ * @since 2.0.0
835
+ */
836
+ const rotateNonEmpty = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, n) => {
837
+ const len = self.length;
838
+ const m = Math.round(n) % len;
839
+ if (isOutOfBound(Math.abs(m), self) || m === 0) {
840
+ return copy(self);
841
+ }
842
+ if (m < 0) {
843
+ const [f, s] = splitNonEmptyAt(self, -m);
844
+ return appendAllNonEmpty(s, f);
845
+ } else {
846
+ return rotateNonEmpty(self, m - len);
847
+ }
848
+ });
849
+
850
+ /**
851
+ * Returns a function that checks if a `ReadonlyArray` contains a given value using a provided `isEquivalent` function.
852
+ *
853
+ * @category elements
854
+ * @since 2.0.0
855
+ */
856
+ const containsWith = isEquivalent => Function_dist_effectFunction.dual(2, (self, a) => {
857
+ for (const i of self) {
858
+ if (isEquivalent(a, i)) {
859
+ return true;
860
+ }
861
+ }
862
+ return false;
863
+ });
864
+ const _equivalence = /*#__PURE__*/Equal_dist_effectEqual.equivalence();
865
+
866
+ /**
867
+ * Returns a function that checks if a `ReadonlyArray` contains a given value using the default `Equivalence`.
868
+ *
869
+ * @category elements
870
+ * @since 2.0.0
871
+ */
872
+ const contains = /*#__PURE__*/containsWith(_equivalence);
873
+
874
+ /**
875
+ * Remove duplicates from a `NonEmptyReadonlyArray`, keeping the first occurrence of an element using the provided `isEquivalent` function.
876
+ *
877
+ * @since 2.0.0
878
+ */
879
+ const dedupeNonEmptyWith = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, isEquivalent) => {
880
+ const out = [headNonEmpty(self)];
881
+ const rest = tailNonEmpty(self);
882
+ for (const a of rest) {
883
+ if (out.every(o => !isEquivalent(a, o))) {
884
+ out.push(a);
885
+ }
886
+ }
887
+ return out;
888
+ });
889
+
890
+ /**
891
+ * Remove duplicates from a `NonEmptyReadonlyArray`, keeping the first occurrence of an element.
892
+ *
893
+ * @since 2.0.0
894
+ */
895
+ const dedupeNonEmpty = /*#__PURE__*/dedupeNonEmptyWith( /*#__PURE__*/Equal_dist_effectEqual.equivalence());
896
+
897
+ /**
898
+ * A useful recursion pattern for processing an `Iterable` to produce a new `Array`, often used for "chopping" up the input
899
+ * `Iterable`. Typically chop is called with some function that will consume an initial prefix of the `Iterable` and produce a
900
+ * value and the rest of the `Array`.
901
+ *
902
+ * @since 2.0.0
903
+ */
904
+ const chop = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, f) => {
905
+ const input = fromIterable(self);
906
+ return isNonEmptyReadonlyArray(input) ? chopNonEmpty(input, f) : [];
907
+ });
908
+
909
+ /**
910
+ * A useful recursion pattern for processing a `NonEmptyReadonlyArray` to produce a new `NonEmptyReadonlyArray`, often used for "chopping" up the input
911
+ * `NonEmptyReadonlyArray`. Typically `chop` is called with some function that will consume an initial prefix of the `NonEmptyReadonlyArray` and produce a
912
+ * value and the tail of the `NonEmptyReadonlyArray`.
913
+ *
914
+ * @since 2.0.0
915
+ */
916
+ const chopNonEmpty = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, f) => {
917
+ const [b, rest] = f(self);
918
+ const out = [b];
919
+ let next = rest;
920
+ while (ReadonlyArray.isNonEmptyArray(next)) {
921
+ const [b, rest] = f(next);
922
+ out.push(b);
923
+ next = rest;
924
+ }
925
+ return out;
926
+ });
927
+
928
+ /**
929
+ * Splits an `Iterable` into two pieces, the first piece has max `n` elements.
930
+ *
931
+ * @category getters
932
+ * @since 2.0.0
933
+ */
934
+ const splitAt = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, n) => {
935
+ const input = Array.from(self);
936
+ return n >= 1 && isNonEmptyReadonlyArray(input) ? splitNonEmptyAt(input, n) : isEmptyReadonlyArray(input) ? [input, []] : [[], input];
937
+ });
938
+
939
+ /**
940
+ * @since 2.0.0
941
+ */
942
+ const copy = self => self.slice();
943
+
944
+ /**
945
+ * Splits a `NonEmptyReadonlyArray` into two pieces, the first piece has max `n` elements.
946
+ *
947
+ * @category getters
948
+ * @since 2.0.0
949
+ */
950
+ const splitNonEmptyAt = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, n) => {
951
+ const m = Math.max(1, n);
952
+ return m >= self.length ? [copy(self), []] : [prepend(self.slice(1, m), headNonEmpty(self)), self.slice(m)];
953
+ });
954
+
955
+ /**
956
+ * Splits an `Iterable` into length-`n` pieces. The last piece will be shorter if `n` does not evenly divide the length of
957
+ * the `Iterable`. Note that `chunksOf(n)([])` is `[]`, not `[[]]`. This is intentional, and is consistent with a recursive
958
+ * definition of `chunksOf`; it satisfies the property that
959
+ *
960
+ * ```ts
961
+ * chunksOf(n)(xs).concat(chunksOf(n)(ys)) == chunksOf(n)(xs.concat(ys)))
962
+ * ```
963
+ *
964
+ * whenever `n` evenly divides the length of `self`.
965
+ *
966
+ * @category getters
967
+ * @since 2.0.0
968
+ */
969
+ const chunksOf = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, n) => {
970
+ const input = fromIterable(self);
971
+ return isNonEmptyReadonlyArray(input) ? chunksOfNonEmpty(input, n) : [];
972
+ });
973
+
974
+ /**
975
+ * Splits a `NonEmptyReadonlyArray` into length-`n` pieces. The last piece will be shorter if `n` does not evenly divide the length of
976
+ * the `NonEmptyReadonlyArray`.
977
+ *
978
+ * @category getters
979
+ * @since 2.0.0
980
+ */
981
+ const chunksOfNonEmpty = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, n) => chopNonEmpty(self, splitNonEmptyAt(n)));
982
+
983
+ /**
984
+ * Group equal, consecutive elements of a `NonEmptyReadonlyArray` into `NonEmptyArray`s using the provided `isEquivalent` function.
985
+ *
986
+ * @category grouping
987
+ * @since 2.0.0
988
+ */
989
+ const groupWith = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, isEquivalent) => chopNonEmpty(self, as => {
990
+ const h = headNonEmpty(as);
991
+ const out = [h];
992
+ let i = 1;
993
+ for (; i < as.length; i++) {
994
+ const a = as[i];
995
+ if (isEquivalent(a, h)) {
996
+ out.push(a);
997
+ } else {
998
+ break;
999
+ }
1000
+ }
1001
+ return [out, as.slice(i)];
1002
+ }));
1003
+
1004
+ /**
1005
+ * Group equal, consecutive elements of a `NonEmptyReadonlyArray` into `NonEmptyArray`s.
1006
+ *
1007
+ * @category grouping
1008
+ * @since 2.0.0
1009
+ */
1010
+ const group = /*#__PURE__*/groupWith( /*#__PURE__*/Equal_dist_effectEqual.equivalence());
1011
+
1012
+ /**
1013
+ * Splits an `Iterable` into sub-non-empty-arrays stored in an object, based on the result of calling a `string`-returning
1014
+ * function on each element, and grouping the results according to values returned
1015
+ *
1016
+ * @category grouping
1017
+ * @since 2.0.0
1018
+ */
1019
+ const groupBy = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, f) => {
1020
+ const out = {};
1021
+ for (const a of self) {
1022
+ const k = f(a);
1023
+ if (Object.prototype.hasOwnProperty.call(out, k)) {
1024
+ out[k].push(a);
1025
+ } else {
1026
+ out[k] = [a];
1027
+ }
1028
+ }
1029
+ return out;
1030
+ });
1031
+
1032
+ /**
1033
+ * @since 2.0.0
1034
+ */
1035
+ const unionWith = isEquivalent => Function_dist_effectFunction.dual(2, (self, that) => {
1036
+ const a = fromIterable(self);
1037
+ const b = fromIterable(that);
1038
+ return isNonEmptyReadonlyArray(a) && isNonEmptyReadonlyArray(b) ? unionNonEmptyWith(isEquivalent)(a, b) : isNonEmptyReadonlyArray(a) ? a : b;
1039
+ });
1040
+
1041
+ /**
1042
+ * @since 2.0.0
1043
+ */
1044
+ const union = /*#__PURE__*/unionWith(_equivalence);
1045
+
1046
+ /**
1047
+ * @since 2.0.0
1048
+ */
1049
+ const unionNonEmptyWith = isEquivalent => {
1050
+ const dedupe = dedupeNonEmptyWith(isEquivalent);
1051
+ return Function_dist_effectFunction.dual(2, (self, that) => dedupe(appendAllNonEmpty(self, that)));
1052
+ };
1053
+
1054
+ /**
1055
+ * @since 2.0.0
1056
+ */
1057
+ const unionNonEmpty = /*#__PURE__*/unionNonEmptyWith(_equivalence);
1058
+
1059
+ /**
1060
+ * Creates an `Array` of unique values that are included in all given `Iterable`s using the provided `isEquivalent` function.
1061
+ * The order and references of result values are determined by the first `Iterable`.
1062
+ *
1063
+ * @since 2.0.0
1064
+ */
1065
+ const intersectionWith = isEquivalent => {
1066
+ const has = containsWith(isEquivalent);
1067
+ return Function_dist_effectFunction.dual(2, (self, that) => fromIterable(self).filter(a => has(that, a)));
1068
+ };
1069
+
1070
+ /**
1071
+ * Creates an `Array` of unique values that are included in all given `Iterable`s.
1072
+ * The order and references of result values are determined by the first `Iterable`.
1073
+ *
1074
+ * @since 2.0.0
1075
+ */
1076
+ const intersection = /*#__PURE__*/intersectionWith(_equivalence);
1077
+
1078
+ /**
1079
+ * Creates a `Array` of values not included in the other given `Iterable` using the provided `isEquivalent` function.
1080
+ * The order and references of result values are determined by the first `Iterable`.
1081
+ *
1082
+ * @since 2.0.0
1083
+ */
1084
+ const differenceWith = isEquivalent => {
1085
+ const has = containsWith(isEquivalent);
1086
+ return Function_dist_effectFunction.dual(2, (self, that) => fromIterable(self).filter(a => !has(that, a)));
1087
+ };
1088
+
1089
+ /**
1090
+ * Creates a `Array` of values not included in the other given `Iterable` using the provided `isEquivalent` function.
1091
+ * The order and references of result values are determined by the first `Iterable`.
1092
+ *
1093
+ * @since 2.0.0
1094
+ */
1095
+ const difference = /*#__PURE__*/differenceWith(_equivalence);
1096
+
1097
+ /**
1098
+ * @category constructors
1099
+ * @since 2.0.0
1100
+ */
1101
+ const empty = () => [];
1102
+
1103
+ /**
1104
+ * Constructs a new `NonEmptyArray<A>` from the specified value.
1105
+ *
1106
+ * @category constructors
1107
+ * @since 2.0.0
1108
+ */
1109
+ const of = a => [a];
1110
+
1111
+ /**
1112
+ * @category mapping
1113
+ * @since 2.0.0
1114
+ */
1115
+ const map = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, f) => self.map(f));
1116
+
1117
+ /**
1118
+ * @category mapping
1119
+ * @since 2.0.0
1120
+ */
1121
+ const mapNonEmpty = map;
1122
+
1123
+ /**
1124
+ * @category sequencing
1125
+ * @since 2.0.0
1126
+ */
1127
+ const flatMap = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, f) => {
1128
+ if (isEmptyReadonlyArray(self)) {
1129
+ return [];
1130
+ }
1131
+ const out = [];
1132
+ for (let i = 0; i < self.length; i++) {
1133
+ out.push(...f(self[i], i));
1134
+ }
1135
+ return out;
1136
+ });
1137
+
1138
+ /**
1139
+ * @category sequencing
1140
+ * @since 2.0.0
1141
+ */
1142
+ const flatMapNonEmpty = flatMap;
1143
+
1144
+ /**
1145
+ * @category sequencing
1146
+ * @since 2.0.0
1147
+ */
1148
+ const flatten = /*#__PURE__*/flatMap(Function_dist_effectFunction.identity);
1149
+
1150
+ /**
1151
+ * @category sequencing
1152
+ * @since 2.0.0
1153
+ */
1154
+ const flattenNonEmpty = /*#__PURE__*/flatMapNonEmpty(Function_dist_effectFunction.identity);
1155
+
1156
+ /**
1157
+ * @category filtering
1158
+ * @since 2.0.0
1159
+ */
1160
+ const filterMap = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, f) => {
1161
+ const as = fromIterable(self);
1162
+ const out = [];
1163
+ for (let i = 0; i < as.length; i++) {
1164
+ const o = f(as[i], i);
1165
+ if (Option_dist_effectOption.isSome(o)) {
1166
+ out.push(o.value);
1167
+ }
1168
+ }
1169
+ return out;
1170
+ });
1171
+
1172
+ /**
1173
+ * Transforms all elements of the `readonlyArray` for as long as the specified function returns some value
1174
+ *
1175
+ * @category filtering
1176
+ * @since 2.0.0
1177
+ */
1178
+ const filterMapWhile = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, f) => {
1179
+ const out = [];
1180
+ for (const a of self) {
1181
+ const b = f(a);
1182
+ if (Option_dist_effectOption.isSome(b)) {
1183
+ out.push(b.value);
1184
+ } else {
1185
+ break;
1186
+ }
1187
+ }
1188
+ return out;
1189
+ });
1190
+
1191
+ /**
1192
+ * @category filtering
1193
+ * @since 2.0.0
1194
+ */
1195
+ const partitionMap = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, f) => {
1196
+ const left = [];
1197
+ const right = [];
1198
+ const as = fromIterable(self);
1199
+ for (let i = 0; i < as.length; i++) {
1200
+ const e = f(as[i], i);
1201
+ if (Either_dist_effectEither.isLeft(e)) {
1202
+ left.push(e.left);
1203
+ } else {
1204
+ right.push(e.right);
1205
+ }
1206
+ }
1207
+ return [left, right];
1208
+ });
1209
+
1210
+ /**
1211
+ * @category filtering
1212
+ * @since 2.0.0
1213
+ */
1214
+ const compact = /*#__PURE__*/filterMap(Function_dist_effectFunction.identity);
1215
+
1216
+ /**
1217
+ * @category filtering
1218
+ * @since 2.0.0
1219
+ */
1220
+ const filter = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, predicate) => {
1221
+ const as = fromIterable(self);
1222
+ const out = [];
1223
+ for (let i = 0; i < as.length; i++) {
1224
+ if (predicate(as[i], i)) {
1225
+ out.push(as[i]);
1226
+ }
1227
+ }
1228
+ return out;
1229
+ });
1230
+
1231
+ /**
1232
+ * @category filtering
1233
+ * @since 2.0.0
1234
+ */
1235
+ const partition = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, predicate) => {
1236
+ const left = [];
1237
+ const right = [];
1238
+ const as = fromIterable(self);
1239
+ for (let i = 0; i < as.length; i++) {
1240
+ if (predicate(as[i], i)) {
1241
+ right.push(as[i]);
1242
+ } else {
1243
+ left.push(as[i]);
1244
+ }
1245
+ }
1246
+ return [left, right];
1247
+ });
1248
+
1249
+ /**
1250
+ * @category filtering
1251
+ * @since 2.0.0
1252
+ */
1253
+ const separate = /*#__PURE__*/partitionMap(Function_dist_effectFunction.identity);
1254
+
1255
+ /**
1256
+ * @category folding
1257
+ * @since 2.0.0
1258
+ */
1259
+ const reduce = /*#__PURE__*/Function_dist_effectFunction.dual(3, (self, b, f) => fromIterable(self).reduce((b, a, i) => f(b, a, i), b));
1260
+
1261
+ /**
1262
+ * @category folding
1263
+ * @since 2.0.0
1264
+ */
1265
+ const reduceRight = /*#__PURE__*/Function_dist_effectFunction.dual(3, (self, b, f) => fromIterable(self).reduceRight((b, a, i) => f(b, a, i), b));
1266
+
1267
+ /**
1268
+ * @category lifting
1269
+ * @since 2.0.0
1270
+ */
1271
+ const liftPredicate = predicate => b => predicate(b) ? [b] : [];
1272
+
1273
+ /**
1274
+ * @category lifting
1275
+ * @since 2.0.0
1276
+ */
1277
+ const liftOption = f => (...a) => fromOption(f(...a));
1278
+
1279
+ /**
1280
+ * @category conversions
1281
+ * @since 2.0.0
1282
+ */
1283
+ const fromNullable = a => a == null ? empty() : [a];
1284
+
1285
+ /**
1286
+ * @category lifting
1287
+ * @since 2.0.0
1288
+ */
1289
+ const liftNullable = f => (...a) => fromNullable(f(...a));
1290
+
1291
+ /**
1292
+ * @category combining
1293
+ * @since 2.0.0
1294
+ */
1295
+ const flatMapNullable = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, f) => isNonEmptyReadonlyArray(self) ? fromNullable(f(headNonEmpty(self))) : empty());
1296
+
1297
+ /**
1298
+ * @category lifting
1299
+ * @since 2.0.0
1300
+ */
1301
+ const liftEither = f => (...a) => {
1302
+ const e = f(...a);
1303
+ return Either_dist_effectEither.isLeft(e) ? [] : [e.right];
1304
+ };
1305
+
1306
+ /**
1307
+ * Check if a predicate holds true for every `ReadonlyArray` element.
1308
+ *
1309
+ * @category elements
1310
+ * @since 2.0.0
1311
+ */
1312
+ const every = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, refinement) => self.every(refinement));
1313
+
1314
+ /**
1315
+ * Check if a predicate holds true for some `ReadonlyArray` element.
1316
+ *
1317
+ * @category elements
1318
+ * @since 2.0.0
1319
+ */
1320
+ const some = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, predicate) => self.some(predicate));
1321
+
1322
+ /**
1323
+ * @since 2.0.0
1324
+ */
1325
+ const extend = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, f) => self.map((_, i, as) => f(as.slice(i))));
1326
+
1327
+ /**
1328
+ * @since 2.0.0
1329
+ */
1330
+ const min = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, O) => self.reduce(Order_dist_effectOrder.min(O)));
1331
+
1332
+ /**
1333
+ * @since 2.0.0
1334
+ */
1335
+ const max = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, O) => self.reduce(Order_dist_effectOrder.max(O)));
1336
+
1337
+ /**
1338
+ * @category constructors
1339
+ * @since 2.0.0
1340
+ */
1341
+ const unfold = (b, f) => {
1342
+ const out = [];
1343
+ let next = b;
1344
+ let o;
1345
+ while (Option_dist_effectOption.isSome(o = f(next))) {
1346
+ const [a, b] = o.value;
1347
+ out.push(a);
1348
+ next = b;
1349
+ }
1350
+ return out;
1351
+ };
1352
+
1353
+ /**
1354
+ * This function creates and returns a new `Order` for an array of values based on a given `Order` for the elements of the array.
1355
+ * The returned `Order` compares two arrays by applying the given `Order` to each element in the arrays.
1356
+ * If all elements are equal, the arrays are then compared based on their length.
1357
+ * 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.
1358
+ *
1359
+ * @category instances
1360
+ * @since 2.0.0
1361
+ */
1362
+ const getOrder = Order_dist_effectOrder.array;
1363
+
1364
+ /**
1365
+ * @category instances
1366
+ * @since 2.0.0
1367
+ */
1368
+ const getEquivalence = Equivalence_dist_effectEquivalence.array;
1369
+
1370
+ /**
1371
+ * Iterate over the `Iterable` applying `f`.
1372
+ *
1373
+ * @since 2.0.0
1374
+ */
1375
+ const forEach = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, f) => fromIterable(self).forEach((a, i) => f(a, i)));
1376
+
1377
+ /**
1378
+ * Remove duplicates from am `Iterable` using the provided `isEquivalent` function, keeping the first occurrence of an element.
1379
+ *
1380
+ * @since 2.0.0
1381
+ */
1382
+ const dedupeWith = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, isEquivalent) => {
1383
+ const input = fromIterable(self);
1384
+ return isNonEmptyReadonlyArray(input) ? dedupeNonEmptyWith(isEquivalent)(input) : [];
1385
+ });
1386
+
1387
+ /**
1388
+ * Remove duplicates from am `Iterable`, keeping the first occurrence of an element.
1389
+ *
1390
+ * @since 2.0.0
1391
+ */
1392
+ const dedupe = /*#__PURE__*/dedupeWith( /*#__PURE__*/Equal_dist_effectEqual.equivalence());
1393
+
1394
+ /**
1395
+ * Deduplicates adjacent elements that are identical using the provided `isEquivalent` function.
1396
+ *
1397
+ * @since 2.0.0
1398
+ */
1399
+ const dedupeAdjacentWith = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, isEquivalent) => {
1400
+ const out = [];
1401
+ let lastA = Option_dist_effectOption.none();
1402
+ for (const a of self) {
1403
+ if (Option_dist_effectOption.isNone(lastA) || !isEquivalent(a, lastA.value)) {
1404
+ out.push(a);
1405
+ lastA = Option_dist_effectOption.some(a);
1406
+ }
1407
+ }
1408
+ return out;
1409
+ });
1410
+
1411
+ /**
1412
+ * Deduplicates adjacent elements that are identical.
1413
+ *
1414
+ * @since 2.0.0
1415
+ */
1416
+ const dedupeAdjacent = /*#__PURE__*/dedupeAdjacentWith( /*#__PURE__*/Equal_dist_effectEqual.equivalence());
1417
+
1418
+ /**
1419
+ * Joins the elements together with "sep" in the middle.
1420
+ *
1421
+ * @since 2.0.0
1422
+ * @category folding
1423
+ */
1424
+ const join = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, sep) => fromIterable(self).join(sep));
1425
+
1426
+ /**
1427
+ * Statefully maps over the chunk, producing new elements of type `B`.
1428
+ *
1429
+ * @since 2.0.0
1430
+ * @category folding
1431
+ */
1432
+ const mapAccum = /*#__PURE__*/Function_dist_effectFunction.dual(3, (self, s, f) => {
1433
+ let s1 = s;
1434
+ const out = [];
1435
+ for (const a of self) {
1436
+ const r = f(s1, a);
1437
+ s1 = r[0];
1438
+ out.push(r[1]);
1439
+ }
1440
+ return [s1, out];
1441
+ });
1442
+
1443
+ /**
1444
+ * Zips this chunk crosswise with the specified chunk using the specified combiner.
1445
+ *
1446
+ * @since 2.0.0
1447
+ * @category elements
1448
+ */
1449
+ const cartesianWith = /*#__PURE__*/Function_dist_effectFunction.dual(3, (self, that, f) => flatMap(self, a => map(that, b => f(a, b))));
1450
+
1451
+ /**
1452
+ * Zips this chunk crosswise with the specified chunk.
1453
+ *
1454
+ * @since 2.0.0
1455
+ * @category elements
1456
+ */
1457
+ const cartesian = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, that) => cartesianWith(self, that, (a, b) => [a, b]));
1458
+
1459
+ exports.append = append;
1460
+ exports.appendAll = appendAll;
1461
+ exports.appendAllNonEmpty = appendAllNonEmpty;
1462
+ exports.cartesian = cartesian;
1463
+ exports.cartesianWith = cartesianWith;
1464
+ exports.chop = chop;
1465
+ exports.chopNonEmpty = chopNonEmpty;
1466
+ exports.chunksOf = chunksOf;
1467
+ exports.chunksOfNonEmpty = chunksOfNonEmpty;
1468
+ exports.compact = compact;
1469
+ exports.contains = contains;
1470
+ exports.containsWith = containsWith;
1471
+ exports.copy = copy;
1472
+ exports.dedupe = dedupe;
1473
+ exports.dedupeAdjacent = dedupeAdjacent;
1474
+ exports.dedupeAdjacentWith = dedupeAdjacentWith;
1475
+ exports.dedupeNonEmpty = dedupeNonEmpty;
1476
+ exports.dedupeNonEmptyWith = dedupeNonEmptyWith;
1477
+ exports.dedupeWith = dedupeWith;
1478
+ exports.difference = difference;
1479
+ exports.differenceWith = differenceWith;
1480
+ exports.drop = drop;
1481
+ exports.dropRight = dropRight;
1482
+ exports.dropWhile = dropWhile;
1483
+ exports.empty = empty;
1484
+ exports.every = every;
1485
+ exports.extend = extend;
1486
+ exports.filter = filter;
1487
+ exports.filterMap = filterMap;
1488
+ exports.filterMapWhile = filterMapWhile;
1489
+ exports.findFirst = findFirst;
1490
+ exports.findFirstIndex = findFirstIndex;
1491
+ exports.findLast = findLast;
1492
+ exports.findLastIndex = findLastIndex;
1493
+ exports.flatMap = flatMap;
1494
+ exports.flatMapNonEmpty = flatMapNonEmpty;
1495
+ exports.flatMapNullable = flatMapNullable;
1496
+ exports.flatten = flatten;
1497
+ exports.flattenNonEmpty = flattenNonEmpty;
1498
+ exports.forEach = forEach;
1499
+ exports.fromIterable = fromIterable;
1500
+ exports.fromNullable = fromNullable;
1501
+ exports.fromOption = fromOption;
1502
+ exports.fromRecord = fromRecord;
1503
+ exports.get = get;
1504
+ exports.getEquivalence = getEquivalence;
1505
+ exports.getOrder = getOrder;
1506
+ exports.group = group;
1507
+ exports.groupBy = groupBy;
1508
+ exports.groupWith = groupWith;
1509
+ exports.head = head;
1510
+ exports.headNonEmpty = headNonEmpty;
1511
+ exports.init = init;
1512
+ exports.initNonEmpty = initNonEmpty;
1513
+ exports.insertAt = insertAt;
1514
+ exports.intersection = intersection;
1515
+ exports.intersectionWith = intersectionWith;
1516
+ exports.intersperse = intersperse;
1517
+ exports.intersperseNonEmpty = intersperseNonEmpty;
1518
+ exports.isEmptyArray = isEmptyArray;
1519
+ exports.isEmptyReadonlyArray = isEmptyReadonlyArray;
1520
+ exports.isNonEmptyArray = isNonEmptyArray;
1521
+ exports.isNonEmptyReadonlyArray = isNonEmptyReadonlyArray;
1522
+ exports.join = join;
1523
+ exports.last = last;
1524
+ exports.lastNonEmpty = lastNonEmpty;
1525
+ exports.length = length;
1526
+ exports.liftEither = liftEither;
1527
+ exports.liftNullable = liftNullable;
1528
+ exports.liftOption = liftOption;
1529
+ exports.liftPredicate = liftPredicate;
1530
+ exports.make = make;
1531
+ exports.makeBy = makeBy;
1532
+ exports.map = map;
1533
+ exports.mapAccum = mapAccum;
1534
+ exports.mapNonEmpty = mapNonEmpty;
1535
+ exports.match = match;
1536
+ exports.matchLeft = matchLeft;
1537
+ exports.matchRight = matchRight;
1538
+ exports.max = max;
1539
+ exports.min = min;
1540
+ exports.modify = modify;
1541
+ exports.modifyNonEmptyHead = modifyNonEmptyHead;
1542
+ exports.modifyNonEmptyLast = modifyNonEmptyLast;
1543
+ exports.modifyOption = modifyOption;
1544
+ exports.of = of;
1545
+ exports.partition = partition;
1546
+ exports.partitionMap = partitionMap;
1547
+ exports.prepend = prepend;
1548
+ exports.prependAll = prependAll;
1549
+ exports.prependAllNonEmpty = prependAllNonEmpty;
1550
+ exports.range = range;
1551
+ exports.reduce = reduce;
1552
+ exports.reduceRight = reduceRight;
1553
+ exports.remove = remove;
1554
+ exports.replace = replace;
1555
+ exports.replaceOption = replaceOption;
1556
+ exports.replicate = replicate;
1557
+ exports.reverse = reverse;
1558
+ exports.reverseNonEmpty = reverseNonEmpty;
1559
+ exports.rotate = rotate;
1560
+ exports.rotateNonEmpty = rotateNonEmpty;
1561
+ exports.scan = scan;
1562
+ exports.scanRight = scanRight;
1563
+ exports.separate = separate;
1564
+ exports.setNonEmptyHead = setNonEmptyHead;
1565
+ exports.setNonEmptyLast = setNonEmptyLast;
1566
+ exports.some = some;
1567
+ exports.sort = sort;
1568
+ exports.sortBy = sortBy;
1569
+ exports.sortByNonEmpty = sortByNonEmpty;
1570
+ exports.sortNonEmpty = sortNonEmpty;
1571
+ exports.sortWith = sortWith;
1572
+ exports.span = span;
1573
+ exports.splitAt = splitAt;
1574
+ exports.splitNonEmptyAt = splitNonEmptyAt;
1575
+ exports.tail = tail;
1576
+ exports.tailNonEmpty = tailNonEmpty;
1577
+ exports.take = take;
1578
+ exports.takeRight = takeRight;
1579
+ exports.takeWhile = takeWhile;
1580
+ exports.unappend = unappend;
1581
+ exports.unfold = unfold;
1582
+ exports.union = union;
1583
+ exports.unionNonEmpty = unionNonEmpty;
1584
+ exports.unionNonEmptyWith = unionNonEmptyWith;
1585
+ exports.unionWith = unionWith;
1586
+ exports.unprepend = unprepend;
1587
+ exports.unsafeGet = unsafeGet;
1588
+ exports.unzip = unzip;
1589
+ exports.unzipNonEmpty = unzipNonEmpty;
1590
+ exports.zip = zip;
1591
+ exports.zipNonEmpty = zipNonEmpty;
1592
+ exports.zipNonEmptyWith = zipNonEmptyWith;
1593
+ exports.zipWith = zipWith;