effect 2.0.0-next.45 → 2.0.0-next.46

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 (377) hide show
  1. package/Bigint/dist/effect-Bigint.cjs.dev.js +125 -1
  2. package/Bigint/dist/effect-Bigint.cjs.mjs +6 -1
  3. package/Bigint/dist/effect-Bigint.cjs.prod.js +125 -1
  4. package/Bigint/dist/effect-Bigint.esm.js +111 -2
  5. package/Boolean/dist/effect-Boolean.cjs.dev.js +1 -1
  6. package/Boolean/dist/effect-Boolean.cjs.prod.js +1 -1
  7. package/Boolean/dist/effect-Boolean.esm.js +1 -1
  8. package/Brand/dist/effect-Brand.cjs.dev.js +3 -3
  9. package/Brand/dist/effect-Brand.cjs.prod.js +3 -3
  10. package/Cache/dist/effect-Cache.cjs.dev.js +30 -30
  11. package/Cache/dist/effect-Cache.cjs.prod.js +30 -30
  12. package/Cause/dist/effect-Cause.cjs.dev.js +8 -8
  13. package/Cause/dist/effect-Cause.cjs.prod.js +8 -8
  14. package/Channel/dist/effect-Channel.cjs.dev.js +38 -38
  15. package/Channel/dist/effect-Channel.cjs.prod.js +38 -38
  16. package/ChannelSingleProducerAsyncInput/dist/effect-ChannelSingleProducerAsyncInput.cjs.dev.js +34 -34
  17. package/ChannelSingleProducerAsyncInput/dist/effect-ChannelSingleProducerAsyncInput.cjs.prod.js +34 -34
  18. package/Chunk/dist/effect-Chunk.cjs.dev.js +3 -3
  19. package/Chunk/dist/effect-Chunk.cjs.prod.js +3 -3
  20. package/Clock/dist/effect-Clock.cjs.dev.js +16 -16
  21. package/Clock/dist/effect-Clock.cjs.prod.js +16 -16
  22. package/Config/dist/effect-Config.cjs.dev.js +11 -11
  23. package/Config/dist/effect-Config.cjs.prod.js +11 -11
  24. package/ConfigError/dist/effect-ConfigError.cjs.dev.js +4 -4
  25. package/ConfigError/dist/effect-ConfigError.cjs.prod.js +4 -4
  26. package/ConfigProvider/dist/effect-ConfigProvider.cjs.dev.js +17 -17
  27. package/ConfigProvider/dist/effect-ConfigProvider.cjs.prod.js +17 -17
  28. package/ConfigProviderPathPatch/dist/effect-ConfigProviderPathPatch.cjs.dev.js +5 -5
  29. package/ConfigProviderPathPatch/dist/effect-ConfigProviderPathPatch.cjs.prod.js +5 -5
  30. package/ConfigSecret/dist/effect-ConfigSecret.cjs.dev.js +4 -4
  31. package/ConfigSecret/dist/effect-ConfigSecret.cjs.prod.js +4 -4
  32. package/Console/dist/effect-Console.cjs.dev.js +33 -33
  33. package/Console/dist/effect-Console.cjs.prod.js +33 -33
  34. package/Context/dist/effect-Context.cjs.dev.js +3 -8
  35. package/Context/dist/effect-Context.cjs.prod.js +3 -8
  36. package/Data/dist/effect-Data.cjs.dev.js +141 -54
  37. package/Data/dist/effect-Data.cjs.mjs +2 -0
  38. package/Data/dist/effect-Data.cjs.prod.js +141 -54
  39. package/Data/dist/effect-Data.esm.js +51 -3
  40. package/DefaultServices/dist/effect-DefaultServices.cjs.dev.js +16 -16
  41. package/DefaultServices/dist/effect-DefaultServices.cjs.prod.js +16 -16
  42. package/Deferred/dist/effect-Deferred.cjs.dev.js +8 -8
  43. package/Deferred/dist/effect-Deferred.cjs.prod.js +8 -8
  44. package/Differ/dist/effect-Differ.cjs.dev.js +11 -11
  45. package/Differ/dist/effect-Differ.cjs.prod.js +11 -11
  46. package/Duration/dist/effect-Duration.cjs.dev.js +3 -3
  47. package/Duration/dist/effect-Duration.cjs.prod.js +3 -3
  48. package/Effect/dist/effect-Effect.cjs.dev.js +35 -35
  49. package/Effect/dist/effect-Effect.cjs.prod.js +35 -35
  50. package/Effectable/dist/effect-Effectable.cjs.dev.js +1 -2
  51. package/Effectable/dist/effect-Effectable.cjs.prod.js +1 -2
  52. package/Either/dist/effect-Either.cjs.dev.js +3 -3
  53. package/Either/dist/effect-Either.cjs.prod.js +3 -3
  54. package/Encoding/dist/effect-Encoding.cjs.dev.js +3 -3
  55. package/Encoding/dist/effect-Encoding.cjs.prod.js +3 -3
  56. package/Exit/dist/effect-Exit.cjs.dev.js +8 -8
  57. package/Exit/dist/effect-Exit.cjs.prod.js +8 -8
  58. package/Fiber/dist/effect-Fiber.cjs.dev.js +27 -27
  59. package/Fiber/dist/effect-Fiber.cjs.prod.js +27 -27
  60. package/FiberId/dist/effect-FiberId.cjs.dev.js +5 -5
  61. package/FiberId/dist/effect-FiberId.cjs.prod.js +5 -5
  62. package/FiberRef/dist/effect-FiberRef.cjs.dev.js +27 -27
  63. package/FiberRef/dist/effect-FiberRef.cjs.prod.js +27 -27
  64. package/FiberRefs/dist/effect-FiberRefs.cjs.dev.js +9 -9
  65. package/FiberRefs/dist/effect-FiberRefs.cjs.prod.js +9 -9
  66. package/FiberRefsPatch/dist/effect-FiberRefsPatch.cjs.dev.js +10 -10
  67. package/FiberRefsPatch/dist/effect-FiberRefsPatch.cjs.prod.js +10 -10
  68. package/GroupBy/dist/effect-GroupBy.cjs.dev.js +39 -39
  69. package/GroupBy/dist/effect-GroupBy.cjs.prod.js +39 -39
  70. package/HashMap/dist/effect-HashMap.cjs.dev.js +4 -4
  71. package/HashMap/dist/effect-HashMap.cjs.prod.js +4 -4
  72. package/HashSet/dist/effect-HashSet.cjs.dev.js +4 -4
  73. package/HashSet/dist/effect-HashSet.cjs.prod.js +4 -4
  74. package/KeyedPool/dist/effect-KeyedPool.cjs.dev.js +27 -27
  75. package/KeyedPool/dist/effect-KeyedPool.cjs.prod.js +27 -27
  76. package/Layer/dist/effect-Layer.cjs.dev.js +30 -30
  77. package/Layer/dist/effect-Layer.cjs.prod.js +30 -30
  78. package/List/dist/effect-List.cjs.dev.js +3 -3
  79. package/List/dist/effect-List.cjs.prod.js +3 -3
  80. package/LogLevel/dist/effect-LogLevel.cjs.dev.js +8 -8
  81. package/LogLevel/dist/effect-LogLevel.cjs.prod.js +8 -8
  82. package/Logger/dist/effect-Logger.cjs.dev.js +31 -31
  83. package/Logger/dist/effect-Logger.cjs.prod.js +31 -31
  84. package/Metric/dist/effect-Metric.cjs.dev.js +25 -25
  85. package/Metric/dist/effect-Metric.cjs.prod.js +25 -25
  86. package/MetricBoundaries/dist/effect-MetricBoundaries.cjs.dev.js +4 -4
  87. package/MetricBoundaries/dist/effect-MetricBoundaries.cjs.prod.js +4 -4
  88. package/MetricHook/dist/effect-MetricHook.cjs.dev.js +5 -5
  89. package/MetricHook/dist/effect-MetricHook.cjs.prod.js +5 -5
  90. package/MetricKey/dist/effect-MetricKey.cjs.dev.js +6 -6
  91. package/MetricKey/dist/effect-MetricKey.cjs.prod.js +6 -6
  92. package/MetricKeyType/dist/effect-MetricKeyType.cjs.dev.js +4 -4
  93. package/MetricKeyType/dist/effect-MetricKeyType.cjs.prod.js +4 -4
  94. package/MetricPolling/dist/effect-MetricPolling.cjs.dev.js +27 -27
  95. package/MetricPolling/dist/effect-MetricPolling.cjs.prod.js +27 -27
  96. package/MetricRegistry/dist/effect-MetricRegistry.cjs.dev.js +7 -7
  97. package/MetricRegistry/dist/effect-MetricRegistry.cjs.prod.js +7 -7
  98. package/MutableHashMap/dist/effect-MutableHashMap.cjs.dev.js +4 -4
  99. package/MutableHashMap/dist/effect-MutableHashMap.cjs.prod.js +4 -4
  100. package/MutableHashSet/dist/effect-MutableHashSet.cjs.dev.js +4 -4
  101. package/MutableHashSet/dist/effect-MutableHashSet.cjs.prod.js +4 -4
  102. package/MutableQueue/dist/effect-MutableQueue.cjs.dev.js +3 -3
  103. package/MutableQueue/dist/effect-MutableQueue.cjs.prod.js +3 -3
  104. package/Number/dist/effect-Number.cjs.dev.js +1 -1
  105. package/Number/dist/effect-Number.cjs.prod.js +1 -1
  106. package/Number/dist/effect-Number.esm.js +1 -1
  107. package/Option/dist/effect-Option.cjs.dev.js +9 -9
  108. package/Option/dist/effect-Option.cjs.prod.js +9 -9
  109. package/Pool/dist/effect-Pool.cjs.dev.js +29 -29
  110. package/Pool/dist/effect-Pool.cjs.prod.js +29 -29
  111. package/PubSub/dist/effect-PubSub.cjs.dev.js +26 -26
  112. package/PubSub/dist/effect-PubSub.cjs.prod.js +26 -26
  113. package/Queue/dist/effect-Queue.cjs.dev.js +26 -26
  114. package/Queue/dist/effect-Queue.cjs.prod.js +26 -26
  115. package/README.md +5 -5
  116. package/Random/dist/effect-Random.cjs.dev.js +16 -16
  117. package/Random/dist/effect-Random.cjs.prod.js +16 -16
  118. package/ReadonlyArray/dist/effect-ReadonlyArray.cjs.dev.js +3 -3
  119. package/ReadonlyArray/dist/effect-ReadonlyArray.cjs.prod.js +3 -3
  120. package/ReadonlyRecord/dist/effect-ReadonlyRecord.cjs.dev.js +3 -3
  121. package/ReadonlyRecord/dist/effect-ReadonlyRecord.cjs.prod.js +3 -3
  122. package/RedBlackTree/dist/effect-RedBlackTree.cjs.dev.js +4 -4
  123. package/RedBlackTree/dist/effect-RedBlackTree.cjs.prod.js +4 -4
  124. package/Ref/dist/effect-Ref.cjs.dev.js +9 -9
  125. package/Ref/dist/effect-Ref.cjs.prod.js +9 -9
  126. package/Reloadable/dist/effect-Reloadable.cjs.dev.js +34 -34
  127. package/Reloadable/dist/effect-Reloadable.cjs.prod.js +34 -34
  128. package/Request/dist/effect-Request.cjs.dev.js +26 -26
  129. package/Request/dist/effect-Request.cjs.prod.js +26 -26
  130. package/RequestBlock/dist/effect-RequestBlock.cjs.dev.js +34 -34
  131. package/RequestBlock/dist/effect-RequestBlock.cjs.prod.js +34 -34
  132. package/RequestResolver/dist/effect-RequestResolver.cjs.dev.js +36 -36
  133. package/RequestResolver/dist/effect-RequestResolver.cjs.prod.js +36 -36
  134. package/Resource/dist/effect-Resource.cjs.dev.js +29 -29
  135. package/Resource/dist/effect-Resource.cjs.prod.js +29 -29
  136. package/Runtime/dist/effect-Runtime.cjs.dev.js +32 -32
  137. package/Runtime/dist/effect-Runtime.cjs.prod.js +32 -32
  138. package/RuntimeFlags/dist/effect-RuntimeFlags.cjs.dev.js +31 -31
  139. package/RuntimeFlags/dist/effect-RuntimeFlags.cjs.prod.js +31 -31
  140. package/RuntimeFlagsPatch/dist/effect-RuntimeFlagsPatch.cjs.dev.js +6 -6
  141. package/RuntimeFlagsPatch/dist/effect-RuntimeFlagsPatch.cjs.prod.js +6 -6
  142. package/STM/dist/effect-STM.cjs.dev.js +45 -45
  143. package/STM/dist/effect-STM.cjs.prod.js +45 -45
  144. package/Schedule/dist/effect-Schedule.cjs.dev.js +19 -19
  145. package/Schedule/dist/effect-Schedule.cjs.prod.js +19 -19
  146. package/ScheduleDecision/dist/effect-ScheduleDecision.cjs.dev.js +3 -3
  147. package/ScheduleDecision/dist/effect-ScheduleDecision.cjs.prod.js +3 -3
  148. package/ScheduleInterval/dist/effect-ScheduleInterval.cjs.dev.js +3 -3
  149. package/ScheduleInterval/dist/effect-ScheduleInterval.cjs.prod.js +3 -3
  150. package/ScheduleIntervals/dist/effect-ScheduleIntervals.cjs.dev.js +3 -3
  151. package/ScheduleIntervals/dist/effect-ScheduleIntervals.cjs.prod.js +3 -3
  152. package/Scheduler/dist/effect-Scheduler.cjs.dev.js +8 -8
  153. package/Scheduler/dist/effect-Scheduler.cjs.prod.js +8 -8
  154. package/Scope/dist/effect-Scope.cjs.dev.js +25 -25
  155. package/Scope/dist/effect-Scope.cjs.prod.js +25 -25
  156. package/ScopedCache/dist/effect-ScopedCache.cjs.dev.js +57 -40
  157. package/ScopedCache/dist/effect-ScopedCache.cjs.prod.js +57 -40
  158. package/ScopedRef/dist/effect-ScopedRef.cjs.dev.js +32 -32
  159. package/ScopedRef/dist/effect-ScopedRef.cjs.prod.js +32 -32
  160. package/Sink/dist/effect-Sink.cjs.dev.js +36 -36
  161. package/Sink/dist/effect-Sink.cjs.prod.js +36 -36
  162. package/SortedMap/dist/effect-SortedMap.cjs.dev.js +3 -3
  163. package/SortedMap/dist/effect-SortedMap.cjs.prod.js +3 -3
  164. package/SortedSet/dist/effect-SortedSet.cjs.dev.js +3 -3
  165. package/SortedSet/dist/effect-SortedSet.cjs.prod.js +3 -3
  166. package/Stream/dist/effect-Stream.cjs.dev.js +39 -39
  167. package/Stream/dist/effect-Stream.cjs.prod.js +39 -39
  168. package/Streamable/dist/effect-Streamable.cjs.dev.js +39 -39
  169. package/Streamable/dist/effect-Streamable.cjs.prod.js +39 -39
  170. package/String/dist/effect-String.cjs.dev.js +4 -4
  171. package/String/dist/effect-String.cjs.prod.js +4 -4
  172. package/String/dist/effect-String.esm.js +1 -1
  173. package/SubscriptionRef/dist/effect-SubscriptionRef.cjs.dev.js +39 -39
  174. package/SubscriptionRef/dist/effect-SubscriptionRef.cjs.prod.js +39 -39
  175. package/Supervisor/dist/effect-Supervisor.cjs.dev.js +31 -31
  176. package/Supervisor/dist/effect-Supervisor.cjs.prod.js +31 -31
  177. package/SynchronizedRef/dist/effect-SynchronizedRef.cjs.dev.js +28 -28
  178. package/SynchronizedRef/dist/effect-SynchronizedRef.cjs.prod.js +28 -28
  179. package/TArray/dist/effect-TArray.cjs.dev.js +43 -43
  180. package/TArray/dist/effect-TArray.cjs.prod.js +43 -43
  181. package/TDeferred/dist/effect-TDeferred.cjs.dev.js +42 -42
  182. package/TDeferred/dist/effect-TDeferred.cjs.prod.js +42 -42
  183. package/TMap/dist/effect-TMap.cjs.dev.js +44 -44
  184. package/TMap/dist/effect-TMap.cjs.prod.js +44 -44
  185. package/TPriorityQueue/dist/effect-TPriorityQueue.cjs.dev.js +41 -41
  186. package/TPriorityQueue/dist/effect-TPriorityQueue.cjs.prod.js +41 -41
  187. package/TPubSub/dist/effect-TPubSub.cjs.dev.js +45 -45
  188. package/TPubSub/dist/effect-TPubSub.cjs.prod.js +45 -45
  189. package/TQueue/dist/effect-TQueue.cjs.dev.js +43 -43
  190. package/TQueue/dist/effect-TQueue.cjs.prod.js +43 -43
  191. package/TRandom/dist/effect-TRandom.cjs.dev.js +47 -47
  192. package/TRandom/dist/effect-TRandom.cjs.prod.js +47 -47
  193. package/TReentrantLock/dist/effect-TReentrantLock.cjs.dev.js +43 -43
  194. package/TReentrantLock/dist/effect-TReentrantLock.cjs.prod.js +43 -43
  195. package/TRef/dist/effect-TRef.cjs.dev.js +41 -41
  196. package/TRef/dist/effect-TRef.cjs.prod.js +41 -41
  197. package/TSemaphore/dist/effect-TSemaphore.cjs.dev.js +42 -42
  198. package/TSemaphore/dist/effect-TSemaphore.cjs.prod.js +42 -42
  199. package/TSet/dist/effect-TSet.cjs.dev.js +44 -44
  200. package/TSet/dist/effect-TSet.cjs.prod.js +44 -44
  201. package/Take/dist/effect-Take.cjs.dev.js +34 -34
  202. package/Take/dist/effect-Take.cjs.prod.js +34 -34
  203. package/TestAnnotation/dist/effect-TestAnnotation.cjs.dev.js +8 -8
  204. package/TestAnnotation/dist/effect-TestAnnotation.cjs.prod.js +8 -8
  205. package/TestAnnotations/dist/effect-TestAnnotations.cjs.dev.js +22 -22
  206. package/TestAnnotations/dist/effect-TestAnnotations.cjs.prod.js +22 -22
  207. package/TestClock/dist/effect-TestClock.cjs.dev.js +30 -30
  208. package/TestClock/dist/effect-TestClock.cjs.prod.js +30 -30
  209. package/TestConfig/dist/effect-TestConfig.cjs.dev.js +3 -8
  210. package/TestConfig/dist/effect-TestConfig.cjs.prod.js +3 -8
  211. package/TestContext/dist/effect-TestContext.cjs.dev.js +35 -35
  212. package/TestContext/dist/effect-TestContext.cjs.prod.js +35 -35
  213. package/TestLive/dist/effect-TestLive.cjs.dev.js +17 -17
  214. package/TestLive/dist/effect-TestLive.cjs.prod.js +17 -17
  215. package/TestServices/dist/effect-TestServices.cjs.dev.js +36 -36
  216. package/TestServices/dist/effect-TestServices.cjs.prod.js +36 -36
  217. package/TestSized/dist/effect-TestSized.cjs.dev.js +11 -11
  218. package/TestSized/dist/effect-TestSized.cjs.prod.js +11 -11
  219. package/Tracer/dist/effect-Tracer.cjs.dev.js +16 -16
  220. package/Tracer/dist/effect-Tracer.cjs.prod.js +16 -16
  221. package/dist/{Context-0b0d0e29.cjs.prod.js → Context-9fe5eb16.cjs.prod.js} +4 -4
  222. package/dist/{Context-1f857844.cjs.dev.js → Context-da73ddfa.cjs.dev.js} +4 -4
  223. package/dist/{Effectable-07258ce9.cjs.dev.js → Effectable-7314aed8.cjs.dev.js} +53 -2
  224. package/dist/{Effectable-c2cd2b50.cjs.prod.js → Effectable-c4c14a2b.cjs.prod.js} +53 -2
  225. package/dist/{Either-a974e241.cjs.prod.js → Either-d43f082c.cjs.prod.js} +5 -78
  226. package/dist/{Either-d49a9926.cjs.dev.js → Either-fa0ef1d9.cjs.dev.js} +5 -78
  227. package/dist/Option-463b42e6.cjs.dev.js +81 -0
  228. package/dist/Option-935e5d7c.cjs.prod.js +81 -0
  229. package/dist/{Ref-590d873e.cjs.prod.js → Ref-4014b526.cjs.prod.js} +1 -1
  230. package/dist/{Ref-4009db78.cjs.dev.js → Ref-acdee7ef.cjs.dev.js} +1 -1
  231. package/dist/{cache-8a5a4a2d.cjs.prod.js → cache-5c7d77e4.cjs.prod.js} +8 -8
  232. package/dist/{cache-fe0cd2f2.cjs.dev.js → cache-7eed9d33.cjs.dev.js} +8 -8
  233. package/dist/{circular-ccfbed47.cjs.prod.js → circular-1f481ffb.cjs.prod.js} +7 -7
  234. package/dist/{circular-2d1d95bc.cjs.prod.js → circular-9e10a5a7.cjs.prod.js} +4 -4
  235. package/dist/{circular-95bf2834.cjs.dev.js → circular-c2dbce1a.cjs.dev.js} +7 -7
  236. package/dist/{circular-325c6904.cjs.dev.js → circular-c8b65bdb.cjs.dev.js} +4 -4
  237. package/dist/{config-e4643c63.cjs.dev.js → config-3b7935a3.cjs.dev.js} +3 -3
  238. package/dist/{config-a72429ce.cjs.prod.js → config-5ba54da1.cjs.prod.js} +3 -3
  239. package/dist/{configProvider-16bc7ff6.cjs.prod.js → configProvider-b6b20998.cjs.prod.js} +4 -4
  240. package/dist/{configProvider-3cdbe5f3.cjs.dev.js → configProvider-f34a82f1.cjs.dev.js} +4 -4
  241. package/dist/{core-c87f1ac0.cjs.prod.js → core-07202cc0.cjs.prod.js} +4 -19
  242. package/dist/{core-ce4f24fc.cjs.prod.js → core-7411d1e1.cjs.prod.js} +3 -3
  243. package/dist/{core-efee9c5a.cjs.dev.js → core-b7401357.cjs.dev.js} +4 -19
  244. package/dist/{core-44c23eaf.cjs.dev.js → core-c5747f88.cjs.dev.js} +3 -3
  245. package/dist/{core-effect-f99b558c.cjs.dev.js → core-effect-1c564d42.cjs.dev.js} +8 -8
  246. package/dist/{core-effect-867f1514.cjs.prod.js → core-effect-9201ea63.cjs.prod.js} +8 -8
  247. package/dist/{dataSource-642004b6.cjs.dev.js → dataSource-b5eda714.cjs.dev.js} +2 -2
  248. package/dist/{dataSource-2fe48092.cjs.prod.js → dataSource-b83bc277.cjs.prod.js} +2 -2
  249. package/dist/declarations/src/Bigint.d.ts +92 -1
  250. package/dist/declarations/src/Bigint.d.ts.map +1 -1
  251. package/dist/declarations/src/Boolean.d.ts +1 -1
  252. package/dist/declarations/src/Data.d.ts +30 -0
  253. package/dist/declarations/src/Data.d.ts.map +1 -1
  254. package/dist/declarations/src/Number.d.ts +1 -1
  255. package/dist/declarations/src/String.d.ts +1 -1
  256. package/dist/declarations/src/index.d.ts +4 -8
  257. package/dist/declarations/src/index.d.ts.map +1 -1
  258. package/dist/{defaultServices-eb04fba1.cjs.dev.js → defaultServices-755d5b46.cjs.dev.js} +2 -2
  259. package/dist/{defaultServices-7e943cae.cjs.prod.js → defaultServices-9d7ce86f.cjs.prod.js} +2 -2
  260. package/dist/effect.cjs.dev.js +0 -3
  261. package/dist/effect.cjs.mjs +0 -1
  262. package/dist/effect.cjs.prod.js +0 -3
  263. package/dist/effect.esm.js +0 -2
  264. package/dist/{fiber-4d2acba3.cjs.dev.js → fiber-5156eff2.cjs.dev.js} +3 -3
  265. package/dist/{fiber-588d28c2.cjs.prod.js → fiber-9519d109.cjs.prod.js} +3 -3
  266. package/dist/{fiberRefs-51f2a630.cjs.prod.js → fiberRefs-558c17e6.cjs.prod.js} +1 -1
  267. package/dist/{fiberRefs-e08092fb.cjs.dev.js → fiberRefs-98b71233.cjs.dev.js} +1 -1
  268. package/dist/{fiberRuntime-7287c284.cjs.prod.js → fiberRuntime-31ae011f.cjs.prod.js} +17 -18
  269. package/dist/{fiberRuntime-6e93adff.cjs.dev.js → fiberRuntime-d3872282.cjs.dev.js} +17 -18
  270. package/dist/{groupBy-6d5815f3.cjs.prod.js → groupBy-724f64ef.cjs.prod.js} +4 -4
  271. package/dist/{groupBy-1e05ffd4.cjs.dev.js → groupBy-862cc2da.cjs.dev.js} +4 -4
  272. package/dist/{key-6d9b350e.cjs.dev.js → key-198b6670.cjs.dev.js} +1 -1
  273. package/dist/{key-66f61406.cjs.prod.js → key-eb8a12b2.cjs.prod.js} +1 -1
  274. package/dist/{layer-e3745d23.cjs.dev.js → layer-29574350.cjs.dev.js} +10 -10
  275. package/dist/{layer-f8cd3f83.cjs.prod.js → layer-51ff4846.cjs.prod.js} +10 -10
  276. package/dist/{patch-b051ae7e.cjs.dev.js → patch-0220a642.cjs.dev.js} +1 -1
  277. package/dist/{patch-b8d22fb3.cjs.prod.js → patch-7c559bb2.cjs.prod.js} +1 -1
  278. package/dist/{pathPatch-bdcb0e3f.cjs.prod.js → pathPatch-b56a4da2.cjs.prod.js} +1 -1
  279. package/dist/{pathPatch-fc0ba157.cjs.dev.js → pathPatch-fab016f1.cjs.dev.js} +1 -1
  280. package/dist/{pool-a52582b9.cjs.dev.js → pool-3211287f.cjs.dev.js} +5 -5
  281. package/dist/{pool-6c034854.cjs.prod.js → pool-f77d7705.cjs.prod.js} +5 -5
  282. package/dist/{query-59d346d8.cjs.prod.js → query-a52b25f0.cjs.prod.js} +3 -3
  283. package/dist/{query-ab3d963c.cjs.dev.js → query-c36decd5.cjs.dev.js} +3 -3
  284. package/dist/{queue-fcd6126f.cjs.prod.js → queue-315ea45d.cjs.prod.js} +2 -2
  285. package/dist/{queue-50c41726.cjs.dev.js → queue-7a223c44.cjs.dev.js} +2 -2
  286. package/dist/{registry-fc4cef7b.cjs.dev.js → registry-62ff192e.cjs.dev.js} +2 -2
  287. package/dist/{registry-3809a602.cjs.prod.js → registry-d5258dff.cjs.prod.js} +2 -2
  288. package/dist/{runtime-aa083fe4.cjs.prod.js → runtime-005f8a9b.cjs.prod.js} +6 -6
  289. package/dist/{runtime-9047860e.cjs.dev.js → runtime-57c8ddf8.cjs.dev.js} +6 -6
  290. package/dist/{schedule-4ca6941d.cjs.prod.js → schedule-8cdf6bf1.cjs.prod.js} +3 -3
  291. package/dist/{schedule-fd323904.cjs.dev.js → schedule-e7a9f93f.cjs.dev.js} +3 -3
  292. package/dist/{scopedRef-0fc8943d.cjs.prod.js → scopedRef-789d7fef.cjs.prod.js} +6 -6
  293. package/dist/{scopedRef-dc386056.cjs.dev.js → scopedRef-eb19c7a6.cjs.dev.js} +6 -6
  294. package/dist/{singleProducerAsyncInput-54b43c1b.cjs.dev.js → singleProducerAsyncInput-9ff8389b.cjs.dev.js} +1 -1
  295. package/dist/{singleProducerAsyncInput-61ffe143.cjs.prod.js → singleProducerAsyncInput-f9b258b1.cjs.prod.js} +1 -1
  296. package/dist/{sink-ade4fdbe.cjs.prod.js → sink-572d8981.cjs.prod.js} +2 -2
  297. package/dist/{sink-0445fb11.cjs.dev.js → sink-8d3427e7.cjs.dev.js} +2 -2
  298. package/dist/{stm-e9d8effb.cjs.dev.js → stm-8aca0022.cjs.dev.js} +3 -3
  299. package/dist/{stm-8d082310.cjs.prod.js → stm-f250b596.cjs.prod.js} +3 -3
  300. package/dist/{stream-e220a3b2.cjs.dev.js → stream-34d80d2c.cjs.dev.js} +4 -4
  301. package/dist/{stream-97061dd9.cjs.prod.js → stream-ea4f4d44.cjs.prod.js} +4 -4
  302. package/dist/{synchronizedRef-1f28b27f.cjs.dev.js → synchronizedRef-a12fd967.cjs.dev.js} +1 -1
  303. package/dist/{synchronizedRef-ff0ddebf.cjs.prod.js → synchronizedRef-ed8aa6ac.cjs.prod.js} +1 -1
  304. package/dist/{tArray-59a819a0.cjs.dev.js → tArray-17f078f2.cjs.dev.js} +3 -3
  305. package/dist/{tArray-437f6510.cjs.prod.js → tArray-d184e22f.cjs.prod.js} +3 -3
  306. package/dist/{tMap-d6376d13.cjs.dev.js → tMap-1a5aa78b.cjs.dev.js} +4 -4
  307. package/dist/{tMap-ca06b00f.cjs.prod.js → tMap-e219f30e.cjs.prod.js} +4 -4
  308. package/dist/{tQueue-7b931af8.cjs.dev.js → tQueue-0a4fc773.cjs.dev.js} +3 -3
  309. package/dist/{tQueue-bf3716af.cjs.prod.js → tQueue-47129ad0.cjs.prod.js} +3 -3
  310. package/dist/{tRef-bb143111.cjs.prod.js → tRef-ab4c5713.cjs.prod.js} +1 -1
  311. package/dist/{tRef-5b159626.cjs.dev.js → tRef-b860ef05.cjs.dev.js} +1 -1
  312. package/internal/Context.esm.js +2 -2
  313. package/internal/Data.esm.js +4 -1
  314. package/internal/Differ/ChunkPatch.esm.js +1 -1
  315. package/internal/Differ/ContextPatch.esm.js +1 -1
  316. package/internal/Differ/HashMapPatch.esm.js +1 -1
  317. package/internal/Differ/HashSetPatch.esm.js +1 -1
  318. package/internal/Differ/OrPatch.esm.js +1 -1
  319. package/internal/Effectable.esm.js +1 -1
  320. package/internal/cache.esm.js +1 -1
  321. package/internal/cause.esm.js +1 -16
  322. package/internal/core-effect.esm.js +3 -3
  323. package/internal/fiberRuntime.esm.js +3 -3
  324. package/internal/layer.esm.js +1 -1
  325. package/internal/request.esm.js +1 -1
  326. package/package.json +5 -9
  327. package/src/Bigint.ts +117 -1
  328. package/src/Boolean.ts +1 -1
  329. package/src/Data.ts +74 -2
  330. package/src/Number.ts +1 -1
  331. package/src/String.ts +1 -1
  332. package/src/index.ts +4 -9
  333. package/src/internal/Context.ts +2 -2
  334. package/src/internal/Data.ts +4 -0
  335. package/src/internal/Differ/ChunkPatch.ts +1 -1
  336. package/src/internal/Differ/ContextPatch.ts +1 -1
  337. package/src/internal/Differ/HashMapPatch.ts +1 -1
  338. package/src/internal/Differ/HashSetPatch.ts +1 -1
  339. package/src/internal/Differ/OrPatch.ts +1 -1
  340. package/src/internal/Effectable.ts +1 -1
  341. package/src/internal/cache.ts +1 -1
  342. package/src/internal/cause.ts +1 -16
  343. package/src/internal/core-effect.ts +2 -2
  344. package/src/internal/fiberRuntime.ts +2 -2
  345. package/src/internal/layer.ts +1 -1
  346. package/src/internal/request.ts +1 -1
  347. package/Error/dist/effect-Error.cjs.d.mts +0 -2
  348. package/Error/dist/effect-Error.cjs.d.mts.map +0 -1
  349. package/Error/dist/effect-Error.cjs.d.ts +0 -2
  350. package/Error/dist/effect-Error.cjs.d.ts.map +0 -1
  351. package/Error/dist/effect-Error.cjs.dev.js +0 -140
  352. package/Error/dist/effect-Error.cjs.js +0 -7
  353. package/Error/dist/effect-Error.cjs.mjs +0 -4
  354. package/Error/dist/effect-Error.cjs.prod.js +0 -140
  355. package/Error/dist/effect-Error.esm.js +0 -47
  356. package/Error/package.json +0 -4
  357. package/dist/declarations/src/Error.d.ts +0 -37
  358. package/dist/declarations/src/Error.d.ts.map +0 -1
  359. package/src/Error.ts +0 -69
  360. /package/dist/{FiberId-fd1b9201.cjs.prod.js → FiberId-1d7ac632.cjs.prod.js} +0 -0
  361. /package/dist/{FiberId-9c555b91.cjs.dev.js → FiberId-d88ddce6.cjs.dev.js} +0 -0
  362. /package/dist/{HashSet-606682d1.cjs.dev.js → HashSet-5963ad6b.cjs.dev.js} +0 -0
  363. /package/dist/{HashSet-0ffa0e48.cjs.prod.js → HashSet-ac02a3e1.cjs.prod.js} +0 -0
  364. /package/dist/{RuntimeFlagsPatch-197be4f3.cjs.dev.js → RuntimeFlagsPatch-69102b03.cjs.dev.js} +0 -0
  365. /package/dist/{RuntimeFlagsPatch-7f853fa5.cjs.prod.js → RuntimeFlagsPatch-866fa259.cjs.prod.js} +0 -0
  366. /package/dist/{boundaries-73dd633f.cjs.prod.js → boundaries-9af538e3.cjs.prod.js} +0 -0
  367. /package/dist/{boundaries-60c435b8.cjs.dev.js → boundaries-f212e414.cjs.dev.js} +0 -0
  368. /package/dist/{configError-d2914327.cjs.prod.js → configError-b43723af.cjs.prod.js} +0 -0
  369. /package/dist/{configError-623ccb8d.cjs.dev.js → configError-d5efe9c0.cjs.dev.js} +0 -0
  370. /package/dist/{configSecret-baa8839f.cjs.dev.js → configSecret-3e8ae336.cjs.dev.js} +0 -0
  371. /package/dist/{configSecret-c08c317d.cjs.prod.js → configSecret-e2faa181.cjs.prod.js} +0 -0
  372. /package/dist/{hook-f9a9b660.cjs.dev.js → hook-8cefc909.cjs.dev.js} +0 -0
  373. /package/dist/{hook-39ebe8b3.cjs.prod.js → hook-98ce30e4.cjs.prod.js} +0 -0
  374. /package/dist/{keyType-8ff33fde.cjs.prod.js → keyType-0c5e6178.cjs.prod.js} +0 -0
  375. /package/dist/{keyType-22634b88.cjs.dev.js → keyType-7c164b82.cjs.dev.js} +0 -0
  376. /package/dist/{take-c7b73760.cjs.prod.js → take-85daaf79.cjs.prod.js} +0 -0
  377. /package/dist/{take-05b33c5b.cjs.dev.js → take-f9ef9e2e.cjs.dev.js} +0 -0
@@ -4,13 +4,24 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var Equivalence_dist_effectEquivalence = require('../../Equivalence/dist/effect-Equivalence.cjs.dev.js');
6
6
  var Function_dist_effectFunction = require('../../Function/dist/effect-Function.cjs.dev.js');
7
+ var Option_dist_effectOption = require('../../Option/dist/effect-Option.cjs.dev.js');
7
8
  var Order_dist_effectOrder = require('../../Order/dist/effect-Order.cjs.dev.js');
8
9
  var Predicate_dist_effectPredicate = require('../../Predicate/dist/effect-Predicate.cjs.dev.js');
10
+ require('../../Equal/dist/effect-Equal.cjs.dev.js');
11
+ require('../../Hash/dist/effect-Hash.cjs.dev.js');
12
+ require('../../GlobalValue/dist/effect-GlobalValue.cjs.dev.js');
13
+ require('../../Utils/dist/effect-Utils.cjs.dev.js');
14
+ require('../../dist/Either-fa0ef1d9.cjs.dev.js');
15
+ require('../../Inspectable/dist/effect-Inspectable.cjs.dev.js');
16
+ require('../../dist/Option-463b42e6.cjs.dev.js');
17
+ require('../../dist/Effectable-7314aed8.cjs.dev.js');
18
+ require('../../Pipeable/dist/effect-Pipeable.cjs.dev.js');
19
+ require('../../Number/dist/effect-Number.cjs.dev.js');
9
20
 
10
21
  /**
11
22
  * This module provides utility functions and type class instances for working with the `bigint` type in TypeScript.
12
23
  * It includes functions for basic arithmetic operations, as well as type class instances for
13
- * `Equivalence`, `Order`, `Semigroup`, and `Monoid`.
24
+ * `Equivalence` and `Order`.
14
25
  *
15
26
  * @since 2.0.0
16
27
  */
@@ -302,6 +313,114 @@ const max = /*#__PURE__*/Order_dist_effectOrder.max(Order);
302
313
  */
303
314
  const sign = n => Order(n, 0n);
304
315
 
316
+ /**
317
+ * Determines the absolute value of a given `bigint`.
318
+ *
319
+ * @param n - The `bigint` to determine the absolute value of.
320
+ *
321
+ * @example
322
+ * import { abs } from 'effect/Bigint'
323
+ *
324
+ * assert.deepStrictEqual(abs(-5n), 5n)
325
+ * assert.deepStrictEqual(abs(0n), 0n)
326
+ * assert.deepStrictEqual(abs(5n), 5n)
327
+ *
328
+ * @category math
329
+ * @since 2.0.0
330
+ */
331
+ const abs = n => n < 0n ? -n : n;
332
+
333
+ /**
334
+ * Determines the greatest common divisor of two `bigint`s.
335
+ *
336
+ * @param a - The first `bigint`.
337
+ * @param b - The second `bigint`.
338
+ *
339
+ * @example
340
+ * import { gcd } from 'effect/Bigint'
341
+ *
342
+ * assert.deepStrictEqual(gcd(2n, 3n), 1n)
343
+ * assert.deepStrictEqual(gcd(2n, 4n), 2n)
344
+ * assert.deepStrictEqual(gcd(16n, 24n), 8n)
345
+ *
346
+ * @category math
347
+ * @since 2.0.0
348
+ */
349
+ const gcd = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, that) => {
350
+ while (that !== 0n) {
351
+ const t = that;
352
+ that = self % that;
353
+ self = t;
354
+ }
355
+ return self;
356
+ });
357
+
358
+ /**
359
+ * Determines the least common multiple of two `bigint`s.
360
+ *
361
+ * @param a - The first `bigint`.
362
+ * @param b - The second `bigint`.
363
+ *
364
+ * @example
365
+ * import { lcm } from 'effect/Bigint'
366
+ *
367
+ * assert.deepStrictEqual(lcm(2n, 3n), 6n)
368
+ * assert.deepStrictEqual(lcm(2n, 4n), 4n)
369
+ * assert.deepStrictEqual(lcm(16n, 24n), 48n)
370
+ *
371
+ * @category math
372
+ * @since 2.0.0
373
+ */
374
+ const lcm = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, that) => self * that / gcd(self, that));
375
+
376
+ /**
377
+ * Determines the square root of a given `bigint` unsafely. Throws if the given `bigint` is negative.
378
+ *
379
+ * @param n - The `bigint` to determine the square root of.
380
+ *
381
+ * @example
382
+ * import { unsafeSqrt } from 'effect/Bigint'
383
+ *
384
+ * assert.deepStrictEqual(unsafeSqrt(4n), 2n)
385
+ * assert.deepStrictEqual(unsafeSqrt(9n), 3n)
386
+ * assert.deepStrictEqual(unsafeSqrt(16n), 4n)
387
+ *
388
+ * @category math
389
+ * @since 2.0.0
390
+ */
391
+ const unsafeSqrt = n => {
392
+ if (n < 0n) {
393
+ throw new RangeError("Cannot take the square root of a negative number");
394
+ }
395
+ if (n < 2n) {
396
+ return n;
397
+ }
398
+ let x = n / 2n;
399
+ while (x * x > n) {
400
+ x = (n / x + x) / 2n;
401
+ }
402
+ return x;
403
+ };
404
+
405
+ /**
406
+ * Determines the square root of a given `bigint` safely. Returns `none` if the given `bigint` is negative.
407
+ *
408
+ * @param n - The `bigint` to determine the square root of.
409
+ *
410
+ * @example
411
+ * import { sqrt } from 'effect/Bigint'
412
+ * import * as Option from 'effect/Option'
413
+ *
414
+ * assert.deepStrictEqual(sqrt(4n), Option.some(2n))
415
+ * assert.deepStrictEqual(sqrt(9n), Option.some(3n))
416
+ * assert.deepStrictEqual(sqrt(16n), Option.some(4n))
417
+ * assert.deepStrictEqual(sqrt(-1n), Option.none())
418
+ *
419
+ * @category math
420
+ * @since 2.0.0
421
+ */
422
+ const sqrt = n => greaterThanOrEqualTo(n, 0n) ? Option_dist_effectOption.some(unsafeSqrt(n)) : Option_dist_effectOption.none();
423
+
305
424
  /**
306
425
  * Takes an `Iterable` of `bigint`s and returns their sum as a single `bigint
307
426
  *
@@ -349,14 +468,17 @@ const multiplyAll = collection => {
349
468
 
350
469
  exports.Equivalence = Equivalence;
351
470
  exports.Order = Order;
471
+ exports.abs = abs;
352
472
  exports.between = between;
353
473
  exports.clamp = clamp;
354
474
  exports.decrement = decrement;
355
475
  exports.divide = divide;
476
+ exports.gcd = gcd;
356
477
  exports.greaterThan = greaterThan;
357
478
  exports.greaterThanOrEqualTo = greaterThanOrEqualTo;
358
479
  exports.increment = increment;
359
480
  exports.isBigint = isBigint;
481
+ exports.lcm = lcm;
360
482
  exports.lessThan = lessThan;
361
483
  exports.lessThanOrEqualTo = lessThanOrEqualTo;
362
484
  exports.max = max;
@@ -364,6 +486,8 @@ exports.min = min;
364
486
  exports.multiply = multiply;
365
487
  exports.multiplyAll = multiplyAll;
366
488
  exports.sign = sign;
489
+ exports.sqrt = sqrt;
367
490
  exports.subtract = subtract;
368
491
  exports.sum = sum;
369
492
  exports.sumAll = sumAll;
493
+ exports.unsafeSqrt = unsafeSqrt;
@@ -1,14 +1,17 @@
1
1
  export {
2
2
  Equivalence,
3
3
  Order,
4
+ abs,
4
5
  between,
5
6
  clamp,
6
7
  decrement,
7
8
  divide,
9
+ gcd,
8
10
  greaterThan,
9
11
  greaterThanOrEqualTo,
10
12
  increment,
11
13
  isBigint,
14
+ lcm,
12
15
  lessThan,
13
16
  lessThanOrEqualTo,
14
17
  max,
@@ -16,7 +19,9 @@ export {
16
19
  multiply,
17
20
  multiplyAll,
18
21
  sign,
22
+ sqrt,
19
23
  subtract,
20
24
  sum,
21
- sumAll
25
+ sumAll,
26
+ unsafeSqrt
22
27
  } from "./effect-Bigint.cjs.js";
@@ -4,13 +4,24 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var Equivalence_dist_effectEquivalence = require('../../Equivalence/dist/effect-Equivalence.cjs.prod.js');
6
6
  var Function_dist_effectFunction = require('../../Function/dist/effect-Function.cjs.prod.js');
7
+ var Option_dist_effectOption = require('../../Option/dist/effect-Option.cjs.prod.js');
7
8
  var Order_dist_effectOrder = require('../../Order/dist/effect-Order.cjs.prod.js');
8
9
  var Predicate_dist_effectPredicate = require('../../Predicate/dist/effect-Predicate.cjs.prod.js');
10
+ require('../../Equal/dist/effect-Equal.cjs.prod.js');
11
+ require('../../Hash/dist/effect-Hash.cjs.prod.js');
12
+ require('../../GlobalValue/dist/effect-GlobalValue.cjs.prod.js');
13
+ require('../../Utils/dist/effect-Utils.cjs.prod.js');
14
+ require('../../dist/Either-d43f082c.cjs.prod.js');
15
+ require('../../Inspectable/dist/effect-Inspectable.cjs.prod.js');
16
+ require('../../dist/Option-935e5d7c.cjs.prod.js');
17
+ require('../../dist/Effectable-c4c14a2b.cjs.prod.js');
18
+ require('../../Pipeable/dist/effect-Pipeable.cjs.prod.js');
19
+ require('../../Number/dist/effect-Number.cjs.prod.js');
9
20
 
10
21
  /**
11
22
  * This module provides utility functions and type class instances for working with the `bigint` type in TypeScript.
12
23
  * It includes functions for basic arithmetic operations, as well as type class instances for
13
- * `Equivalence`, `Order`, `Semigroup`, and `Monoid`.
24
+ * `Equivalence` and `Order`.
14
25
  *
15
26
  * @since 2.0.0
16
27
  */
@@ -302,6 +313,114 @@ const max = /*#__PURE__*/Order_dist_effectOrder.max(Order);
302
313
  */
303
314
  const sign = n => Order(n, 0n);
304
315
 
316
+ /**
317
+ * Determines the absolute value of a given `bigint`.
318
+ *
319
+ * @param n - The `bigint` to determine the absolute value of.
320
+ *
321
+ * @example
322
+ * import { abs } from 'effect/Bigint'
323
+ *
324
+ * assert.deepStrictEqual(abs(-5n), 5n)
325
+ * assert.deepStrictEqual(abs(0n), 0n)
326
+ * assert.deepStrictEqual(abs(5n), 5n)
327
+ *
328
+ * @category math
329
+ * @since 2.0.0
330
+ */
331
+ const abs = n => n < 0n ? -n : n;
332
+
333
+ /**
334
+ * Determines the greatest common divisor of two `bigint`s.
335
+ *
336
+ * @param a - The first `bigint`.
337
+ * @param b - The second `bigint`.
338
+ *
339
+ * @example
340
+ * import { gcd } from 'effect/Bigint'
341
+ *
342
+ * assert.deepStrictEqual(gcd(2n, 3n), 1n)
343
+ * assert.deepStrictEqual(gcd(2n, 4n), 2n)
344
+ * assert.deepStrictEqual(gcd(16n, 24n), 8n)
345
+ *
346
+ * @category math
347
+ * @since 2.0.0
348
+ */
349
+ const gcd = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, that) => {
350
+ while (that !== 0n) {
351
+ const t = that;
352
+ that = self % that;
353
+ self = t;
354
+ }
355
+ return self;
356
+ });
357
+
358
+ /**
359
+ * Determines the least common multiple of two `bigint`s.
360
+ *
361
+ * @param a - The first `bigint`.
362
+ * @param b - The second `bigint`.
363
+ *
364
+ * @example
365
+ * import { lcm } from 'effect/Bigint'
366
+ *
367
+ * assert.deepStrictEqual(lcm(2n, 3n), 6n)
368
+ * assert.deepStrictEqual(lcm(2n, 4n), 4n)
369
+ * assert.deepStrictEqual(lcm(16n, 24n), 48n)
370
+ *
371
+ * @category math
372
+ * @since 2.0.0
373
+ */
374
+ const lcm = /*#__PURE__*/Function_dist_effectFunction.dual(2, (self, that) => self * that / gcd(self, that));
375
+
376
+ /**
377
+ * Determines the square root of a given `bigint` unsafely. Throws if the given `bigint` is negative.
378
+ *
379
+ * @param n - The `bigint` to determine the square root of.
380
+ *
381
+ * @example
382
+ * import { unsafeSqrt } from 'effect/Bigint'
383
+ *
384
+ * assert.deepStrictEqual(unsafeSqrt(4n), 2n)
385
+ * assert.deepStrictEqual(unsafeSqrt(9n), 3n)
386
+ * assert.deepStrictEqual(unsafeSqrt(16n), 4n)
387
+ *
388
+ * @category math
389
+ * @since 2.0.0
390
+ */
391
+ const unsafeSqrt = n => {
392
+ if (n < 0n) {
393
+ throw new RangeError("Cannot take the square root of a negative number");
394
+ }
395
+ if (n < 2n) {
396
+ return n;
397
+ }
398
+ let x = n / 2n;
399
+ while (x * x > n) {
400
+ x = (n / x + x) / 2n;
401
+ }
402
+ return x;
403
+ };
404
+
405
+ /**
406
+ * Determines the square root of a given `bigint` safely. Returns `none` if the given `bigint` is negative.
407
+ *
408
+ * @param n - The `bigint` to determine the square root of.
409
+ *
410
+ * @example
411
+ * import { sqrt } from 'effect/Bigint'
412
+ * import * as Option from 'effect/Option'
413
+ *
414
+ * assert.deepStrictEqual(sqrt(4n), Option.some(2n))
415
+ * assert.deepStrictEqual(sqrt(9n), Option.some(3n))
416
+ * assert.deepStrictEqual(sqrt(16n), Option.some(4n))
417
+ * assert.deepStrictEqual(sqrt(-1n), Option.none())
418
+ *
419
+ * @category math
420
+ * @since 2.0.0
421
+ */
422
+ const sqrt = n => greaterThanOrEqualTo(n, 0n) ? Option_dist_effectOption.some(unsafeSqrt(n)) : Option_dist_effectOption.none();
423
+
305
424
  /**
306
425
  * Takes an `Iterable` of `bigint`s and returns their sum as a single `bigint
307
426
  *
@@ -349,14 +468,17 @@ const multiplyAll = collection => {
349
468
 
350
469
  exports.Equivalence = Equivalence;
351
470
  exports.Order = Order;
471
+ exports.abs = abs;
352
472
  exports.between = between;
353
473
  exports.clamp = clamp;
354
474
  exports.decrement = decrement;
355
475
  exports.divide = divide;
476
+ exports.gcd = gcd;
356
477
  exports.greaterThan = greaterThan;
357
478
  exports.greaterThanOrEqualTo = greaterThanOrEqualTo;
358
479
  exports.increment = increment;
359
480
  exports.isBigint = isBigint;
481
+ exports.lcm = lcm;
360
482
  exports.lessThan = lessThan;
361
483
  exports.lessThanOrEqualTo = lessThanOrEqualTo;
362
484
  exports.max = max;
@@ -364,6 +486,8 @@ exports.min = min;
364
486
  exports.multiply = multiply;
365
487
  exports.multiplyAll = multiplyAll;
366
488
  exports.sign = sign;
489
+ exports.sqrt = sqrt;
367
490
  exports.subtract = subtract;
368
491
  exports.sum = sum;
369
492
  exports.sumAll = sumAll;
493
+ exports.unsafeSqrt = unsafeSqrt;
@@ -1,12 +1,13 @@
1
1
  import { bigint } from '../../Equivalence/dist/effect-Equivalence.esm.js';
2
2
  import { dual } from '../../Function/dist/effect-Function.esm.js';
3
+ import { some, none } from '../../Option/dist/effect-Option.esm.js';
3
4
  import { bigint as bigint$1, lessThan as lessThan$1, lessThanOrEqualTo as lessThanOrEqualTo$1, greaterThan as greaterThan$1, greaterThanOrEqualTo as greaterThanOrEqualTo$1, between as between$1, clamp as clamp$1, min as min$1, max as max$1 } from '../../Order/dist/effect-Order.esm.js';
4
5
  import { isBigint as isBigint$1 } from '../../Predicate/dist/effect-Predicate.esm.js';
5
6
 
6
7
  /**
7
8
  * This module provides utility functions and type class instances for working with the `bigint` type in TypeScript.
8
9
  * It includes functions for basic arithmetic operations, as well as type class instances for
9
- * `Equivalence`, `Order`, `Semigroup`, and `Monoid`.
10
+ * `Equivalence` and `Order`.
10
11
  *
11
12
  * @since 2.0.0
12
13
  */
@@ -298,6 +299,114 @@ const max = /*#__PURE__*/max$1(Order);
298
299
  */
299
300
  const sign = n => Order(n, 0n);
300
301
 
302
+ /**
303
+ * Determines the absolute value of a given `bigint`.
304
+ *
305
+ * @param n - The `bigint` to determine the absolute value of.
306
+ *
307
+ * @example
308
+ * import { abs } from 'effect/Bigint'
309
+ *
310
+ * assert.deepStrictEqual(abs(-5n), 5n)
311
+ * assert.deepStrictEqual(abs(0n), 0n)
312
+ * assert.deepStrictEqual(abs(5n), 5n)
313
+ *
314
+ * @category math
315
+ * @since 2.0.0
316
+ */
317
+ const abs = n => n < 0n ? -n : n;
318
+
319
+ /**
320
+ * Determines the greatest common divisor of two `bigint`s.
321
+ *
322
+ * @param a - The first `bigint`.
323
+ * @param b - The second `bigint`.
324
+ *
325
+ * @example
326
+ * import { gcd } from 'effect/Bigint'
327
+ *
328
+ * assert.deepStrictEqual(gcd(2n, 3n), 1n)
329
+ * assert.deepStrictEqual(gcd(2n, 4n), 2n)
330
+ * assert.deepStrictEqual(gcd(16n, 24n), 8n)
331
+ *
332
+ * @category math
333
+ * @since 2.0.0
334
+ */
335
+ const gcd = /*#__PURE__*/dual(2, (self, that) => {
336
+ while (that !== 0n) {
337
+ const t = that;
338
+ that = self % that;
339
+ self = t;
340
+ }
341
+ return self;
342
+ });
343
+
344
+ /**
345
+ * Determines the least common multiple of two `bigint`s.
346
+ *
347
+ * @param a - The first `bigint`.
348
+ * @param b - The second `bigint`.
349
+ *
350
+ * @example
351
+ * import { lcm } from 'effect/Bigint'
352
+ *
353
+ * assert.deepStrictEqual(lcm(2n, 3n), 6n)
354
+ * assert.deepStrictEqual(lcm(2n, 4n), 4n)
355
+ * assert.deepStrictEqual(lcm(16n, 24n), 48n)
356
+ *
357
+ * @category math
358
+ * @since 2.0.0
359
+ */
360
+ const lcm = /*#__PURE__*/dual(2, (self, that) => self * that / gcd(self, that));
361
+
362
+ /**
363
+ * Determines the square root of a given `bigint` unsafely. Throws if the given `bigint` is negative.
364
+ *
365
+ * @param n - The `bigint` to determine the square root of.
366
+ *
367
+ * @example
368
+ * import { unsafeSqrt } from 'effect/Bigint'
369
+ *
370
+ * assert.deepStrictEqual(unsafeSqrt(4n), 2n)
371
+ * assert.deepStrictEqual(unsafeSqrt(9n), 3n)
372
+ * assert.deepStrictEqual(unsafeSqrt(16n), 4n)
373
+ *
374
+ * @category math
375
+ * @since 2.0.0
376
+ */
377
+ const unsafeSqrt = n => {
378
+ if (n < 0n) {
379
+ throw new RangeError("Cannot take the square root of a negative number");
380
+ }
381
+ if (n < 2n) {
382
+ return n;
383
+ }
384
+ let x = n / 2n;
385
+ while (x * x > n) {
386
+ x = (n / x + x) / 2n;
387
+ }
388
+ return x;
389
+ };
390
+
391
+ /**
392
+ * Determines the square root of a given `bigint` safely. Returns `none` if the given `bigint` is negative.
393
+ *
394
+ * @param n - The `bigint` to determine the square root of.
395
+ *
396
+ * @example
397
+ * import { sqrt } from 'effect/Bigint'
398
+ * import * as Option from 'effect/Option'
399
+ *
400
+ * assert.deepStrictEqual(sqrt(4n), Option.some(2n))
401
+ * assert.deepStrictEqual(sqrt(9n), Option.some(3n))
402
+ * assert.deepStrictEqual(sqrt(16n), Option.some(4n))
403
+ * assert.deepStrictEqual(sqrt(-1n), Option.none())
404
+ *
405
+ * @category math
406
+ * @since 2.0.0
407
+ */
408
+ const sqrt = n => greaterThanOrEqualTo(n, 0n) ? some(unsafeSqrt(n)) : none();
409
+
301
410
  /**
302
411
  * Takes an `Iterable` of `bigint`s and returns their sum as a single `bigint
303
412
  *
@@ -343,4 +452,4 @@ const multiplyAll = collection => {
343
452
  return out;
344
453
  };
345
454
 
346
- export { Equivalence, Order, between, clamp, decrement, divide, greaterThan, greaterThanOrEqualTo, increment, isBigint, lessThan, lessThanOrEqualTo, max, min, multiply, multiplyAll, sign, subtract, sum, sumAll };
455
+ export { Equivalence, Order, abs, between, clamp, decrement, divide, gcd, greaterThan, greaterThanOrEqualTo, increment, isBigint, lcm, lessThan, lessThanOrEqualTo, max, min, multiply, multiplyAll, sign, sqrt, subtract, sum, sumAll, unsafeSqrt };
@@ -10,7 +10,7 @@ var Predicate_dist_effectPredicate = require('../../Predicate/dist/effect-Predic
10
10
  /**
11
11
  * This module provides utility functions and type class instances for working with the `boolean` type in TypeScript.
12
12
  * It includes functions for basic boolean operations, as well as type class instances for
13
- * `Equivalence`, `Order`, `Semigroup`, and `Monoid`.
13
+ * `Equivalence` and `Order`.
14
14
  *
15
15
  * @since 2.0.0
16
16
  */
@@ -10,7 +10,7 @@ var Predicate_dist_effectPredicate = require('../../Predicate/dist/effect-Predic
10
10
  /**
11
11
  * This module provides utility functions and type class instances for working with the `boolean` type in TypeScript.
12
12
  * It includes functions for basic boolean operations, as well as type class instances for
13
- * `Equivalence`, `Order`, `Semigroup`, and `Monoid`.
13
+ * `Equivalence` and `Order`.
14
14
  *
15
15
  * @since 2.0.0
16
16
  */
@@ -6,7 +6,7 @@ import { isBoolean as isBoolean$1 } from '../../Predicate/dist/effect-Predicate.
6
6
  /**
7
7
  * This module provides utility functions and type class instances for working with the `boolean` type in TypeScript.
8
8
  * It includes functions for basic boolean operations, as well as type class instances for
9
- * `Equivalence`, `Order`, `Semigroup`, and `Monoid`.
9
+ * `Equivalence` and `Order`.
10
10
  *
11
11
  * @since 2.0.0
12
12
  */
@@ -7,15 +7,15 @@ var Function_dist_effectFunction = require('../../Function/dist/effect-Function.
7
7
  var Option_dist_effectOption = require('../../Option/dist/effect-Option.cjs.dev.js');
8
8
  var ReadonlyArray_dist_effectReadonlyArray = require('../../ReadonlyArray/dist/effect-ReadonlyArray.cjs.dev.js');
9
9
  require('../../Equivalence/dist/effect-Equivalence.cjs.dev.js');
10
- require('../../dist/Either-d49a9926.cjs.dev.js');
10
+ require('../../dist/Either-fa0ef1d9.cjs.dev.js');
11
11
  require('../../Equal/dist/effect-Equal.cjs.dev.js');
12
12
  require('../../Hash/dist/effect-Hash.cjs.dev.js');
13
13
  require('../../GlobalValue/dist/effect-GlobalValue.cjs.dev.js');
14
14
  require('../../Utils/dist/effect-Utils.cjs.dev.js');
15
15
  require('../../Predicate/dist/effect-Predicate.cjs.dev.js');
16
16
  require('../../Inspectable/dist/effect-Inspectable.cjs.dev.js');
17
- require('../../dist/Effectable-07258ce9.cjs.dev.js');
18
- require('../../Data/dist/effect-Data.cjs.dev.js');
17
+ require('../../dist/Option-463b42e6.cjs.dev.js');
18
+ require('../../dist/Effectable-7314aed8.cjs.dev.js');
19
19
  require('../../Pipeable/dist/effect-Pipeable.cjs.dev.js');
20
20
  require('../../Number/dist/effect-Number.cjs.dev.js');
21
21
  require('../../Order/dist/effect-Order.cjs.dev.js');
@@ -7,15 +7,15 @@ var Function_dist_effectFunction = require('../../Function/dist/effect-Function.
7
7
  var Option_dist_effectOption = require('../../Option/dist/effect-Option.cjs.prod.js');
8
8
  var ReadonlyArray_dist_effectReadonlyArray = require('../../ReadonlyArray/dist/effect-ReadonlyArray.cjs.prod.js');
9
9
  require('../../Equivalence/dist/effect-Equivalence.cjs.prod.js');
10
- require('../../dist/Either-a974e241.cjs.prod.js');
10
+ require('../../dist/Either-d43f082c.cjs.prod.js');
11
11
  require('../../Equal/dist/effect-Equal.cjs.prod.js');
12
12
  require('../../Hash/dist/effect-Hash.cjs.prod.js');
13
13
  require('../../GlobalValue/dist/effect-GlobalValue.cjs.prod.js');
14
14
  require('../../Utils/dist/effect-Utils.cjs.prod.js');
15
15
  require('../../Predicate/dist/effect-Predicate.cjs.prod.js');
16
16
  require('../../Inspectable/dist/effect-Inspectable.cjs.prod.js');
17
- require('../../dist/Effectable-c2cd2b50.cjs.prod.js');
18
- require('../../Data/dist/effect-Data.cjs.prod.js');
17
+ require('../../dist/Option-935e5d7c.cjs.prod.js');
18
+ require('../../dist/Effectable-c4c14a2b.cjs.prod.js');
19
19
  require('../../Pipeable/dist/effect-Pipeable.cjs.prod.js');
20
20
  require('../../Number/dist/effect-Number.cjs.prod.js');
21
21
  require('../../Order/dist/effect-Order.cjs.prod.js');
@@ -2,9 +2,9 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var cache = require('../../dist/cache-fe0cd2f2.cjs.dev.js');
5
+ var cache = require('../../dist/cache-7eed9d33.cjs.dev.js');
6
6
  require('../../Context/dist/effect-Context.cjs.dev.js');
7
- require('../../dist/Context-1f857844.cjs.dev.js');
7
+ require('../../dist/Context-da73ddfa.cjs.dev.js');
8
8
  require('../../Equal/dist/effect-Equal.cjs.dev.js');
9
9
  require('../../Hash/dist/effect-Hash.cjs.dev.js');
10
10
  require('../../Function/dist/effect-Function.cjs.dev.js');
@@ -12,64 +12,64 @@ require('../../GlobalValue/dist/effect-GlobalValue.cjs.dev.js');
12
12
  require('../../Utils/dist/effect-Utils.cjs.dev.js');
13
13
  require('../../Predicate/dist/effect-Predicate.cjs.dev.js');
14
14
  require('../../Inspectable/dist/effect-Inspectable.cjs.dev.js');
15
- require('../../Option/dist/effect-Option.cjs.dev.js');
16
- require('../../Equivalence/dist/effect-Equivalence.cjs.dev.js');
17
- require('../../dist/Either-d49a9926.cjs.dev.js');
18
- require('../../dist/Effectable-07258ce9.cjs.dev.js');
19
- require('../../Data/dist/effect-Data.cjs.dev.js');
20
15
  require('../../Pipeable/dist/effect-Pipeable.cjs.dev.js');
21
- require('../../Number/dist/effect-Number.cjs.dev.js');
22
- require('../../Order/dist/effect-Order.cjs.dev.js');
16
+ require('../../dist/Effectable-7314aed8.cjs.dev.js');
17
+ require('../../dist/Option-463b42e6.cjs.dev.js');
23
18
  require('../../Deferred/dist/effect-Deferred.cjs.dev.js');
24
- require('../../dist/core-efee9c5a.cjs.dev.js');
19
+ require('../../dist/core-b7401357.cjs.dev.js');
25
20
  require('../../Chunk/dist/effect-Chunk.cjs.dev.js');
21
+ require('../../Equivalence/dist/effect-Equivalence.cjs.dev.js');
22
+ require('../../Option/dist/effect-Option.cjs.dev.js');
23
+ require('../../dist/Either-fa0ef1d9.cjs.dev.js');
24
+ require('../../Number/dist/effect-Number.cjs.dev.js');
25
+ require('../../Order/dist/effect-Order.cjs.dev.js');
26
26
  require('../../ReadonlyArray/dist/effect-ReadonlyArray.cjs.dev.js');
27
27
  require('../../Either/dist/effect-Either.cjs.dev.js');
28
28
  require('../../dist/ReadonlyArray-9a1474f6.cjs.dev.js');
29
29
  require('../../ReadonlyRecord/dist/effect-ReadonlyRecord.cjs.dev.js');
30
30
  require('../../Differ/dist/effect-Differ.cjs.dev.js');
31
31
  require('../../HashMap/dist/effect-HashMap.cjs.dev.js');
32
- require('../../dist/HashSet-606682d1.cjs.dev.js');
32
+ require('../../dist/HashSet-5963ad6b.cjs.dev.js');
33
33
  require('../../dist/Stack-ada2d201.cjs.dev.js');
34
34
  require('../../HashSet/dist/effect-HashSet.cjs.dev.js');
35
- require('../../dist/FiberId-9c555b91.cjs.dev.js');
35
+ require('../../dist/FiberId-d88ddce6.cjs.dev.js');
36
36
  require('../../MutableRef/dist/effect-MutableRef.cjs.dev.js');
37
37
  require('../../List/dist/effect-List.cjs.dev.js');
38
- require('../../dist/RuntimeFlagsPatch-197be4f3.cjs.dev.js');
38
+ require('../../dist/RuntimeFlagsPatch-69102b03.cjs.dev.js');
39
39
  require('../../Duration/dist/effect-Duration.cjs.dev.js');
40
40
  require('../../Exit/dist/effect-Exit.cjs.dev.js');
41
41
  require('../../MutableHashMap/dist/effect-MutableHashMap.cjs.dev.js');
42
42
  require('../../MutableQueue/dist/effect-MutableQueue.cjs.dev.js');
43
43
  require('../../MutableList/dist/effect-MutableList.cjs.dev.js');
44
- require('../../dist/core-effect-f99b558c.cjs.dev.js');
44
+ require('../../dist/core-effect-1c564d42.cjs.dev.js');
45
45
  require('../../Clock/dist/effect-Clock.cjs.dev.js');
46
- require('../../dist/defaultServices-eb04fba1.cjs.dev.js');
46
+ require('../../dist/defaultServices-755d5b46.cjs.dev.js');
47
47
  require('../../dist/timeout-d380d3f8.cjs.dev.js');
48
- require('../../dist/configProvider-3cdbe5f3.cjs.dev.js');
49
- require('../../dist/config-e4643c63.cjs.dev.js');
48
+ require('../../dist/configProvider-f34a82f1.cjs.dev.js');
49
+ require('../../dist/config-3b7935a3.cjs.dev.js');
50
50
  require('../../ConfigError/dist/effect-ConfigError.cjs.dev.js');
51
- require('../../dist/configError-623ccb8d.cjs.dev.js');
52
- require('../../dist/configSecret-baa8839f.cjs.dev.js');
53
- require('../../dist/pathPatch-fc0ba157.cjs.dev.js');
51
+ require('../../dist/configError-d5efe9c0.cjs.dev.js');
52
+ require('../../dist/configSecret-3e8ae336.cjs.dev.js');
53
+ require('../../dist/pathPatch-fab016f1.cjs.dev.js');
54
54
  require('../../FiberRefs/dist/effect-FiberRefs.cjs.dev.js');
55
- require('../../dist/fiberRefs-e08092fb.cjs.dev.js');
56
- require('../../dist/patch-b051ae7e.cjs.dev.js');
55
+ require('../../dist/fiberRefs-98b71233.cjs.dev.js');
56
+ require('../../dist/patch-0220a642.cjs.dev.js');
57
57
  require('../../dist/label-011edbe7.cjs.dev.js');
58
58
  require('../../LogLevel/dist/effect-LogLevel.cjs.dev.js');
59
59
  require('../../LogSpan/dist/effect-LogSpan.cjs.dev.js');
60
- require('../../dist/Ref-4009db78.cjs.dev.js');
60
+ require('../../dist/Ref-acdee7ef.cjs.dev.js');
61
61
  require('../../Tracer/dist/effect-Tracer.cjs.dev.js');
62
- require('../../dist/fiberRuntime-6e93adff.cjs.dev.js');
62
+ require('../../dist/fiberRuntime-d3872282.cjs.dev.js');
63
63
  require('../../Boolean/dist/effect-Boolean.cjs.dev.js');
64
64
  require('../../dist/ExecutionStrategy-7d9d457b.cjs.dev.js');
65
65
  require('../../FiberRefsPatch/dist/effect-FiberRefsPatch.cjs.dev.js');
66
66
  require('../../FiberStatus/dist/effect-FiberStatus.cjs.dev.js');
67
- require('../../dist/fiber-4d2acba3.cjs.dev.js');
68
- require('../../dist/boundaries-60c435b8.cjs.dev.js');
69
- require('../../dist/key-6d9b350e.cjs.dev.js');
70
- require('../../dist/keyType-22634b88.cjs.dev.js');
71
- require('../../dist/registry-fc4cef7b.cjs.dev.js');
72
- require('../../dist/hook-f9a9b660.cjs.dev.js');
67
+ require('../../dist/fiber-5156eff2.cjs.dev.js');
68
+ require('../../dist/boundaries-f212e414.cjs.dev.js');
69
+ require('../../dist/key-198b6670.cjs.dev.js');
70
+ require('../../dist/keyType-7c164b82.cjs.dev.js');
71
+ require('../../dist/registry-62ff192e.cjs.dev.js');
72
+ require('../../dist/hook-8cefc909.cjs.dev.js');
73
73
  require('../../dist/state-931050c4.cjs.dev.js');
74
74
  require('../../dist/pair-291b78d7.cjs.dev.js');
75
75
  require('../../SortedSet/dist/effect-SortedSet.cjs.dev.js');