effect 2.3.8 → 2.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (272) hide show
  1. package/dist/cjs/BigInt.js +14 -1
  2. package/dist/cjs/BigInt.js.map +1 -1
  3. package/dist/cjs/Effect.js +16 -61
  4. package/dist/cjs/Effect.js.map +1 -1
  5. package/dist/cjs/Either.js +35 -6
  6. package/dist/cjs/Either.js.map +1 -1
  7. package/dist/cjs/Equal.js +1 -1
  8. package/dist/cjs/Equal.js.map +1 -1
  9. package/dist/cjs/Exit.js +1 -1
  10. package/dist/cjs/Number.js +25 -1
  11. package/dist/cjs/Number.js.map +1 -1
  12. package/dist/cjs/ReadonlyArray.js +2 -2
  13. package/dist/cjs/ReadonlyArray.js.map +1 -1
  14. package/dist/cjs/ReadonlyRecord.js +71 -76
  15. package/dist/cjs/ReadonlyRecord.js.map +1 -1
  16. package/dist/cjs/STM.js.map +1 -1
  17. package/dist/cjs/Schedule.js.map +1 -1
  18. package/dist/cjs/Sink.js.map +1 -1
  19. package/dist/cjs/Stream.js +3 -23
  20. package/dist/cjs/Stream.js.map +1 -1
  21. package/dist/cjs/Struct.js +3 -1
  22. package/dist/cjs/Struct.js.map +1 -1
  23. package/dist/cjs/TestAnnotation.js.map +1 -1
  24. package/dist/cjs/internal/channel/channelExecutor.js +5 -5
  25. package/dist/cjs/internal/channel/channelExecutor.js.map +1 -1
  26. package/dist/cjs/internal/channel/channelState.js +5 -5
  27. package/dist/cjs/internal/channel/channelState.js.map +1 -1
  28. package/dist/cjs/internal/channel.js.map +1 -1
  29. package/dist/cjs/internal/clock.js +3 -4
  30. package/dist/cjs/internal/clock.js.map +1 -1
  31. package/dist/cjs/internal/core-effect.js +6 -23
  32. package/dist/cjs/internal/core-effect.js.map +1 -1
  33. package/dist/cjs/internal/core.js +11 -27
  34. package/dist/cjs/internal/core.js.map +1 -1
  35. package/dist/cjs/internal/effect/circular.js +4 -5
  36. package/dist/cjs/internal/effect/circular.js.map +1 -1
  37. package/dist/cjs/internal/either.js +3 -3
  38. package/dist/cjs/internal/either.js.map +1 -1
  39. package/dist/cjs/internal/groupBy.js.map +1 -1
  40. package/dist/cjs/internal/layer.js +0 -2
  41. package/dist/cjs/internal/layer.js.map +1 -1
  42. package/dist/cjs/internal/runtime.js +12 -1
  43. package/dist/cjs/internal/runtime.js.map +1 -1
  44. package/dist/cjs/internal/schedule.js +4 -4
  45. package/dist/cjs/internal/schedule.js.map +1 -1
  46. package/dist/cjs/internal/sink.js +0 -2
  47. package/dist/cjs/internal/sink.js.map +1 -1
  48. package/dist/cjs/internal/stm/stm.js +1 -0
  49. package/dist/cjs/internal/stm/stm.js.map +1 -1
  50. package/dist/cjs/internal/stream.js +51 -64
  51. package/dist/cjs/internal/stream.js.map +1 -1
  52. package/dist/cjs/internal/version.js +1 -1
  53. package/dist/dts/BigInt.d.ts +7 -0
  54. package/dist/dts/BigInt.d.ts.map +1 -1
  55. package/dist/dts/Brand.d.ts +1 -1
  56. package/dist/dts/Brand.d.ts.map +1 -1
  57. package/dist/dts/Cause.d.ts +1 -1
  58. package/dist/dts/Cause.d.ts.map +1 -1
  59. package/dist/dts/Channel.d.ts +11 -11
  60. package/dist/dts/Channel.d.ts.map +1 -1
  61. package/dist/dts/Chunk.d.ts +3 -3
  62. package/dist/dts/Config.d.ts +4 -4
  63. package/dist/dts/Config.d.ts.map +1 -1
  64. package/dist/dts/Cron.d.ts +1 -1
  65. package/dist/dts/Cron.d.ts.map +1 -1
  66. package/dist/dts/Differ.d.ts +2 -2
  67. package/dist/dts/Differ.d.ts.map +1 -1
  68. package/dist/dts/Effect.d.ts +52 -108
  69. package/dist/dts/Effect.d.ts.map +1 -1
  70. package/dist/dts/Either.d.ts +126 -83
  71. package/dist/dts/Either.d.ts.map +1 -1
  72. package/dist/dts/Encoding.d.ts +6 -6
  73. package/dist/dts/Encoding.d.ts.map +1 -1
  74. package/dist/dts/Equal.d.ts.map +1 -1
  75. package/dist/dts/Exit.d.ts +2 -2
  76. package/dist/dts/Fiber.d.ts +2 -2
  77. package/dist/dts/Fiber.d.ts.map +1 -1
  78. package/dist/dts/GroupBy.d.ts +12 -12
  79. package/dist/dts/GroupBy.d.ts.map +1 -1
  80. package/dist/dts/Layer.d.ts +26 -26
  81. package/dist/dts/Layer.d.ts.map +1 -1
  82. package/dist/dts/List.d.ts +2 -2
  83. package/dist/dts/Logger.d.ts +4 -4
  84. package/dist/dts/Match.d.ts +2 -2
  85. package/dist/dts/Match.d.ts.map +1 -1
  86. package/dist/dts/MergeDecision.d.ts +1 -1
  87. package/dist/dts/MergeState.d.ts +5 -5
  88. package/dist/dts/MergeState.d.ts.map +1 -1
  89. package/dist/dts/Metric.d.ts +13 -13
  90. package/dist/dts/Metric.d.ts.map +1 -1
  91. package/dist/dts/MetricPolling.d.ts +4 -4
  92. package/dist/dts/MetricPolling.d.ts.map +1 -1
  93. package/dist/dts/Number.d.ts +8 -0
  94. package/dist/dts/Number.d.ts.map +1 -1
  95. package/dist/dts/Option.d.ts +11 -11
  96. package/dist/dts/ReadonlyArray.d.ts +9 -8
  97. package/dist/dts/ReadonlyArray.d.ts.map +1 -1
  98. package/dist/dts/ReadonlyRecord.d.ts +111 -94
  99. package/dist/dts/ReadonlyRecord.d.ts.map +1 -1
  100. package/dist/dts/Reloadable.d.ts +4 -4
  101. package/dist/dts/Reloadable.d.ts.map +1 -1
  102. package/dist/dts/RequestResolver.d.ts +13 -13
  103. package/dist/dts/RequestResolver.d.ts.map +1 -1
  104. package/dist/dts/Resource.d.ts +1 -1
  105. package/dist/dts/Resource.d.ts.map +1 -1
  106. package/dist/dts/STM.d.ts +144 -139
  107. package/dist/dts/STM.d.ts.map +1 -1
  108. package/dist/dts/Schedule.d.ts +171 -179
  109. package/dist/dts/Schedule.d.ts.map +1 -1
  110. package/dist/dts/SingleProducerAsyncInput.d.ts +1 -1
  111. package/dist/dts/SingleProducerAsyncInput.d.ts.map +1 -1
  112. package/dist/dts/Sink.d.ts +13 -13
  113. package/dist/dts/Sink.d.ts.map +1 -1
  114. package/dist/dts/Stream.d.ts +355 -366
  115. package/dist/dts/Stream.d.ts.map +1 -1
  116. package/dist/dts/Struct.d.ts +3 -3
  117. package/dist/dts/Struct.d.ts.map +1 -1
  118. package/dist/dts/SubscriptionRef.d.ts +2 -2
  119. package/dist/dts/TArray.d.ts +2 -2
  120. package/dist/dts/TDeferred.d.ts +3 -3
  121. package/dist/dts/TMap.d.ts +10 -10
  122. package/dist/dts/TSet.d.ts +4 -4
  123. package/dist/dts/Take.d.ts +2 -2
  124. package/dist/dts/TestAnnotation.d.ts +2 -2
  125. package/dist/dts/TestAnnotation.d.ts.map +1 -1
  126. package/dist/dts/Types.d.ts +7 -0
  127. package/dist/dts/Types.d.ts.map +1 -1
  128. package/dist/dts/internal/stm/stm.d.ts +2 -15
  129. package/dist/dts/internal/stm/stm.d.ts.map +1 -1
  130. package/dist/esm/BigInt.js +12 -0
  131. package/dist/esm/BigInt.js.map +1 -1
  132. package/dist/esm/Effect.js +13 -58
  133. package/dist/esm/Effect.js.map +1 -1
  134. package/dist/esm/Either.js +42 -5
  135. package/dist/esm/Either.js.map +1 -1
  136. package/dist/esm/Equal.js +1 -1
  137. package/dist/esm/Equal.js.map +1 -1
  138. package/dist/esm/Exit.js +1 -1
  139. package/dist/esm/Number.js +23 -0
  140. package/dist/esm/Number.js.map +1 -1
  141. package/dist/esm/ReadonlyArray.js +2 -2
  142. package/dist/esm/ReadonlyArray.js.map +1 -1
  143. package/dist/esm/ReadonlyRecord.js +70 -75
  144. package/dist/esm/ReadonlyRecord.js.map +1 -1
  145. package/dist/esm/STM.js.map +1 -1
  146. package/dist/esm/Schedule.js.map +1 -1
  147. package/dist/esm/Sink.js.map +1 -1
  148. package/dist/esm/Stream.js +5 -22
  149. package/dist/esm/Stream.js.map +1 -1
  150. package/dist/esm/Struct.js +3 -1
  151. package/dist/esm/Struct.js.map +1 -1
  152. package/dist/esm/TestAnnotation.js.map +1 -1
  153. package/dist/esm/internal/channel/channelExecutor.js +5 -5
  154. package/dist/esm/internal/channel/channelExecutor.js.map +1 -1
  155. package/dist/esm/internal/channel/channelState.js +3 -3
  156. package/dist/esm/internal/channel/channelState.js.map +1 -1
  157. package/dist/esm/internal/channel.js.map +1 -1
  158. package/dist/esm/internal/clock.js +3 -4
  159. package/dist/esm/internal/clock.js.map +1 -1
  160. package/dist/esm/internal/core-effect.js +4 -20
  161. package/dist/esm/internal/core-effect.js.map +1 -1
  162. package/dist/esm/internal/core.js +8 -22
  163. package/dist/esm/internal/core.js.map +1 -1
  164. package/dist/esm/internal/effect/circular.js +4 -5
  165. package/dist/esm/internal/effect/circular.js.map +1 -1
  166. package/dist/esm/internal/either.js +3 -3
  167. package/dist/esm/internal/either.js.map +1 -1
  168. package/dist/esm/internal/groupBy.js.map +1 -1
  169. package/dist/esm/internal/layer.js +0 -2
  170. package/dist/esm/internal/layer.js.map +1 -1
  171. package/dist/esm/internal/runtime.js +12 -1
  172. package/dist/esm/internal/runtime.js.map +1 -1
  173. package/dist/esm/internal/schedule.js +4 -4
  174. package/dist/esm/internal/schedule.js.map +1 -1
  175. package/dist/esm/internal/sink.js +0 -2
  176. package/dist/esm/internal/sink.js.map +1 -1
  177. package/dist/esm/internal/stm/stm.js +1 -0
  178. package/dist/esm/internal/stm/stm.js.map +1 -1
  179. package/dist/esm/internal/stream.js +49 -59
  180. package/dist/esm/internal/stream.js.map +1 -1
  181. package/dist/esm/internal/version.js +1 -1
  182. package/package.json +1 -1
  183. package/src/BigInt.ts +13 -0
  184. package/src/Brand.ts +4 -4
  185. package/src/Cause.ts +1 -1
  186. package/src/Channel.ts +17 -17
  187. package/src/Chunk.ts +4 -4
  188. package/src/Config.ts +4 -4
  189. package/src/Cron.ts +2 -2
  190. package/src/Differ.ts +2 -2
  191. package/src/Effect.ts +68 -145
  192. package/src/Either.ts +215 -133
  193. package/src/Encoding.ts +3 -3
  194. package/src/Equal.ts +1 -1
  195. package/src/Exit.ts +2 -2
  196. package/src/Fiber.ts +2 -2
  197. package/src/GroupBy.ts +16 -16
  198. package/src/Layer.ts +32 -32
  199. package/src/List.ts +3 -3
  200. package/src/Logger.ts +4 -4
  201. package/src/Match.ts +3 -3
  202. package/src/MergeDecision.ts +1 -1
  203. package/src/MergeState.ts +8 -8
  204. package/src/Metric.ts +13 -13
  205. package/src/MetricPolling.ts +9 -9
  206. package/src/Number.ts +26 -0
  207. package/src/Option.ts +17 -17
  208. package/src/ReadonlyArray.ts +23 -15
  209. package/src/ReadonlyRecord.ts +421 -265
  210. package/src/Reloadable.ts +4 -4
  211. package/src/RequestResolver.ts +19 -19
  212. package/src/Resource.ts +3 -3
  213. package/src/STM.ts +166 -213
  214. package/src/Schedule.ts +331 -361
  215. package/src/SingleProducerAsyncInput.ts +1 -1
  216. package/src/Sink.ts +19 -19
  217. package/src/Stream.ts +449 -456
  218. package/src/Struct.ts +8 -5
  219. package/src/SubscriptionRef.ts +2 -2
  220. package/src/TArray.ts +2 -2
  221. package/src/TDeferred.ts +4 -4
  222. package/src/TMap.ts +10 -10
  223. package/src/TSet.ts +4 -4
  224. package/src/Take.ts +4 -4
  225. package/src/TestAnnotation.ts +5 -8
  226. package/src/Types.ts +11 -0
  227. package/src/internal/blockedRequests.ts +2 -2
  228. package/src/internal/cause.ts +2 -2
  229. package/src/internal/channel/channelExecutor.ts +26 -26
  230. package/src/internal/channel/channelState.ts +13 -13
  231. package/src/internal/channel/mergeDecision.ts +1 -1
  232. package/src/internal/channel/mergeState.ts +6 -6
  233. package/src/internal/channel/singleProducerAsyncInput.ts +5 -5
  234. package/src/internal/channel.ts +43 -43
  235. package/src/internal/clock.ts +3 -4
  236. package/src/internal/config.ts +7 -7
  237. package/src/internal/configError.ts +1 -1
  238. package/src/internal/configProvider/pathPatch.ts +2 -2
  239. package/src/internal/configProvider.ts +1 -1
  240. package/src/internal/core-effect.ts +28 -43
  241. package/src/internal/core.ts +15 -40
  242. package/src/internal/dataSource.ts +26 -26
  243. package/src/internal/differ/orPatch.ts +7 -7
  244. package/src/internal/differ.ts +2 -2
  245. package/src/internal/effect/circular.ts +9 -10
  246. package/src/internal/either.ts +25 -22
  247. package/src/internal/encoding/base64.ts +1 -1
  248. package/src/internal/encoding/base64Url.ts +1 -1
  249. package/src/internal/encoding/hex.ts +1 -1
  250. package/src/internal/fiber.ts +2 -2
  251. package/src/internal/fiberRuntime.ts +9 -9
  252. package/src/internal/groupBy.ts +40 -40
  253. package/src/internal/layer/circular.ts +4 -4
  254. package/src/internal/layer.ts +52 -54
  255. package/src/internal/matcher.ts +5 -5
  256. package/src/internal/metric/polling.ts +8 -8
  257. package/src/internal/metric.ts +6 -6
  258. package/src/internal/reloadable.ts +4 -4
  259. package/src/internal/resource.ts +2 -2
  260. package/src/internal/runtime.ts +32 -19
  261. package/src/internal/schedule.ts +430 -500
  262. package/src/internal/sink.ts +27 -29
  263. package/src/internal/stm/core.ts +23 -23
  264. package/src/internal/stm/stm.ts +158 -157
  265. package/src/internal/stm/tArray.ts +3 -3
  266. package/src/internal/stm/tDeferred.ts +5 -5
  267. package/src/internal/stm/tMap.ts +13 -13
  268. package/src/internal/stm/tSet.ts +4 -4
  269. package/src/internal/stream.ts +688 -723
  270. package/src/internal/subscriptionRef.ts +3 -3
  271. package/src/internal/take.ts +6 -6
  272. package/src/internal/version.ts +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Number.js","names":["equivalence","_interopRequireWildcard","require","_Function","option","order","predicate","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","isNumber","exports","sum","dual","self","that","multiply","subtract","divide","none","some","unsafeDivide","increment","decrement","Equivalence","number","Order","lessThan","lessThanOrEqualTo","greaterThan","greaterThanOrEqualTo","between","clamp","min","max","sign","sumAll","collection","out","multiplyAll","remainder","divisor","selfDecCount","toString","split","length","divisorDecCount","decCount","selfInt","parseInt","toFixed","replace","divisorInt","Math","pow","nextPow2","nextPow","ceil","log"],"sources":["../../src/Number.ts"],"sourcesContent":[null],"mappings":";;;;;;AAOA,IAAAA,WAAA,gBAAAC,uBAAA,eAAAC,OAAA;AACA,IAAAC,SAAA,gBAAAD,OAAA;AACA,IAAAE,MAAA,gBAAAH,uBAAA,eAAAC,OAAA;AAEA,IAAAG,KAAA,gBAAAJ,uBAAA,eAAAC,OAAA;AAEA,IAAAI,SAAA,gBAAAL,uBAAA,eAAAC,OAAA;AAA2C,SAAAK,yBAAAC,CAAA;EAAA,yBAAAC,OAAA;EAAA,IAAAC,CAAA,OAAAD,OAAA;IAAAE,CAAA,OAAAF,OAAA;EAAA,QAAAF,wBAAA,YAAAA,CAAAC,CAAA;IAAA,OAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA;EAAA,GAAAF,CAAA;AAAA;AAAA,SAAAP,wBAAAO,CAAA,EAAAE,CAAA;EAAA,KAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA;EAAA,aAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA;IAAAK,OAAA,EAAAL;EAAA;EAAA,IAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA;EAAA,IAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA;EAAA,IAAAQ,CAAA;MAAAC,SAAA;IAAA;IAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA;EAAA,SAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAc,CAAA;IAAA,IAAAI,CAAA,GAAAR,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA;IAAAI,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAI,CAAA,IAAAV,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA;EAAA;EAAA,OAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAgB,GAAA,CAAAnB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAAA;AAb3C;;;;;;;;AAeA;;;;;;;;;;;;;;AAcO,MAAMY,QAAQ,GAAAC,OAAA,CAAAD,QAAA,GAAwCtB,SAAS,CAACsB,QAAQ;AAE/E;;;;;;;;;;;;;;AAcO,MAAME,GAAG,GAAAD,OAAA,CAAAC,GAAA,gBAGZ,IAAA3B,SAAA,CAAA4B,IAAI,EAAC,CAAC,EAAE,CAACC,IAAY,EAAEC,IAAY,KAAaD,IAAI,GAAGC,IAAI,CAAC;AAEhE;;;;;;;;;;;;;;AAcO,MAAMC,QAAQ,GAAAL,OAAA,CAAAK,QAAA,gBAGjB,IAAA/B,SAAA,CAAA4B,IAAI,EAAC,CAAC,EAAE,CAACC,IAAY,EAAEC,IAAY,KAAaD,IAAI,GAAGC,IAAI,CAAC;AAEhE;;;;;;;;;;;;;;AAcO,MAAME,QAAQ,GAAAN,OAAA,CAAAM,QAAA,gBAGjB,IAAAhC,SAAA,CAAA4B,IAAI,EAAC,CAAC,EAAE,CAACC,IAAY,EAAEC,IAAY,KAAaD,IAAI,GAAGC,IAAI,CAAC;AAEhE;;;;;;;;;;;;;;;;AAgBO,MAAMG,MAAM,GAAAP,OAAA,CAAAO,MAAA,gBAGf,IAAAjC,SAAA,CAAA4B,IAAI,EACN,CAAC,EACD,CAACC,IAAY,EAAEC,IAAY,KAAqBA,IAAI,KAAK,CAAC,GAAG7B,MAAM,CAACiC,IAAI,GAAGjC,MAAM,CAACkC,IAAI,CAACN,IAAI,GAAGC,IAAI,CAAC,CACpG;AAED;;;;;;;;;;;;;;;;AAgBO,MAAMM,YAAY,GAAAV,OAAA,CAAAU,YAAA,gBAGrB,IAAApC,SAAA,CAAA4B,IAAI,EAAC,CAAC,EAAE,CAACC,IAAY,EAAEC,IAAY,KAAaD,IAAI,GAAGC,IAAI,CAAC;AAEhE;;;;;;;;;;;;;AAaO,MAAMO,SAAS,GAAIxB,CAAS,IAAaA,CAAC,GAAG,CAAC;AAErD;;;;;;;;;;;;;AAAAa,OAAA,CAAAW,SAAA,GAAAA,SAAA;AAaO,MAAMC,SAAS,GAAIzB,CAAS,IAAaA,CAAC,GAAG,CAAC;AAErD;;;;AAAAa,OAAA,CAAAY,SAAA,GAAAA,SAAA;AAIO,MAAMC,WAAW,GAAAb,OAAA,CAAAa,WAAA,GAAoC1C,WAAW,CAAC2C,MAAM;AAE9E;;;;AAIO,MAAMC,KAAK,GAAAf,OAAA,CAAAe,KAAA,GAAwBvC,KAAK,CAACsC,MAAM;AAEtD;;;;;;;;;;;;;;;;AAgBO,MAAME,QAAQ,GAAAhB,OAAA,CAAAgB,QAAA,gBAGjBxC,KAAK,CAACwC,QAAQ,CAACD,KAAK,CAAC;AAEzB;;;;;;;;;;;;;;;;AAgBO,MAAME,iBAAiB,GAAAjB,OAAA,CAAAiB,iBAAA,gBAG1BzC,KAAK,CAACyC,iBAAiB,CAACF,KAAK,CAAC;AAElC;;;;;;;;;;;;;;;;AAgBO,MAAMG,WAAW,GAAAlB,OAAA,CAAAkB,WAAA,gBAGpB1C,KAAK,CAAC0C,WAAW,CAACH,KAAK,CAAC;AAE5B;;;;;;;;;;;;;;;;AAgBO,MAAMI,oBAAoB,GAAAnB,OAAA,CAAAmB,oBAAA,gBAG7B3C,KAAK,CAAC2C,oBAAoB,CAACJ,KAAK,CAAC;AAErC;;;;;;;;;;;;;;;;;;;AAmBO,MAAMK,OAAO,GAAApB,OAAA,CAAAoB,OAAA,gBAShB5C,KAAK,CAAC4C,OAAO,CAACL,KAAK,CAAC;AAExB;;;;;;;;;;;;;;;;;;;;;;AAsBO,MAAMM,KAAK,GAAArB,OAAA,CAAAqB,KAAA,gBASd7C,KAAK,CAAC6C,KAAK,CAACN,KAAK,CAAC;AAEtB;;;;;;;;;;;;;AAaO,MAAMO,GAAG,GAAAtB,OAAA,CAAAsB,GAAA,gBAGZ9C,KAAK,CAAC8C,GAAG,CAACP,KAAK,CAAC;AAEpB;;;;;;;;;;;;;AAaO,MAAMQ,GAAG,GAAAvB,OAAA,CAAAuB,GAAA,gBAGZ/C,KAAK,CAAC+C,GAAG,CAACR,KAAK,CAAC;AAEpB;;;;;;;;;;;;;;;AAeO,MAAMS,IAAI,GAAIrC,CAAS,IAAe4B,KAAK,CAAC5B,CAAC,EAAE,CAAC,CAAC;AAExD;;;;;;;;;;;;;AAAAa,OAAA,CAAAwB,IAAA,GAAAA,IAAA;AAaO,MAAMC,MAAM,GAAIC,UAA4B,IAAY;EAC7D,IAAIC,GAAG,GAAG,CAAC;EACX,KAAK,MAAMxC,CAAC,IAAIuC,UAAU,EAAE;IAC1BC,GAAG,IAAIxC,CAAC;EACV;EACA,OAAOwC,GAAG;AACZ,CAAC;AAED;;;;;;;;;;;;;AAAA3B,OAAA,CAAAyB,MAAA,GAAAA,MAAA;AAaO,MAAMG,WAAW,GAAIF,UAA4B,IAAY;EAClE,IAAIC,GAAG,GAAG,CAAC;EACX,KAAK,MAAMxC,CAAC,IAAIuC,UAAU,EAAE;IAC1B,IAAIvC,CAAC,KAAK,CAAC,EAAE;MACX,OAAO,CAAC;IACV;IACAwC,GAAG,IAAIxC,CAAC;EACV;EACA,OAAOwC,GAAG;AACZ,CAAC;AAED;;;;;;;;;;;;;;;;;;AAAA3B,OAAA,CAAA4B,WAAA,GAAAA,WAAA;AAkBO,MAAMC,SAAS,GAAA7B,OAAA,CAAA6B,SAAA,gBAGlB,IAAAvD,SAAA,CAAA4B,IAAI,EAAC,CAAC,EAAE,CAACC,IAAY,EAAE2B,OAAe,KAAY;EACpD;EACA,MAAMC,YAAY,GAAG,CAAC5B,IAAI,CAAC6B,QAAQ,EAAE,CAACC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,EAAEC,MAAM;EACjE,MAAMC,eAAe,GAAG,CAACL,OAAO,CAACE,QAAQ,EAAE,CAACC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,EAAEC,MAAM;EACvE,MAAME,QAAQ,GAAGL,YAAY,GAAGI,eAAe,GAAGJ,YAAY,GAAGI,eAAe;EAChF,MAAME,OAAO,GAAGC,QAAQ,CAACnC,IAAI,CAACoC,OAAO,CAACH,QAAQ,CAAC,CAACI,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;EACjE,MAAMC,UAAU,GAAGH,QAAQ,CAACR,OAAO,CAACS,OAAO,CAACH,QAAQ,CAAC,CAACI,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;EACvE,OAAQH,OAAO,GAAGI,UAAU,GAAIC,IAAI,CAACC,GAAG,CAAC,EAAE,EAAEP,QAAQ,CAAC;AACxD,CAAC,CAAC;AAEF;;;;;;;;;;;;;;AAcO,MAAMQ,QAAQ,GAAIzD,CAAS,IAAY;EAC5C,MAAM0D,OAAO,GAAGH,IAAI,CAACI,IAAI,CAACJ,IAAI,CAACK,GAAG,CAAC5D,CAAC,CAAC,GAAGuD,IAAI,CAACK,GAAG,CAAC,CAAC,CAAC,CAAC;EACpD,OAAOL,IAAI,CAACnB,GAAG,CAACmB,IAAI,CAACC,GAAG,CAAC,CAAC,EAAEE,OAAO,CAAC,EAAE,CAAC,CAAC;AAC1C,CAAC;AAAA7C,OAAA,CAAA4C,QAAA,GAAAA,QAAA"}
1
+ {"version":3,"file":"Number.js","names":["equivalence","_interopRequireWildcard","require","_Function","option","order","predicate","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","isNumber","exports","sum","dual","self","that","multiply","subtract","divide","none","some","unsafeDivide","increment","decrement","Equivalence","number","Order","lessThan","lessThanOrEqualTo","greaterThan","greaterThanOrEqualTo","between","clamp","min","max","sign","sumAll","collection","out","multiplyAll","remainder","divisor","selfDecCount","toString","split","length","divisorDecCount","decCount","selfInt","parseInt","toFixed","replace","divisorInt","Math","pow","nextPow2","nextPow","ceil","log","parse","s","NaN","Infinity","trim","Number","isNaN"],"sources":["../../src/Number.ts"],"sourcesContent":[null],"mappings":"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"}
@@ -13,7 +13,7 @@ var readonlyArray = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("
13
13
  var O = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("./Option.js"));
14
14
  var Order = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("./Order.js"));
15
15
  var _Predicate = /*#__PURE__*/require("./Predicate.js");
16
- var RR = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("./ReadonlyRecord.js"));
16
+ var ReadonlyRecord = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("./ReadonlyRecord.js"));
17
17
  var Tuple = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("./Tuple.js"));
18
18
  function _getRequireWildcardCache(e) {
19
19
  if ("function" != typeof WeakMap) return null;
@@ -125,7 +125,7 @@ const fromIterable = collection => Array.isArray(collection) ? collection : Arra
125
125
  * @since 2.0.0
126
126
  */
127
127
  exports.fromIterable = fromIterable;
128
- const fromRecord = exports.fromRecord = RR.toEntries;
128
+ const fromRecord = exports.fromRecord = ReadonlyRecord.toEntries;
129
129
  /**
130
130
  * @category conversions
131
131
  * @since 2.0.0
@@ -1 +1 @@
1
- {"version":3,"file":"ReadonlyArray.js","names":["E","_interopRequireWildcard","require","Equal","Equivalence","_Function","readonlyArray","O","Order","_Predicate","RR","Tuple","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","make","elements","exports","makeBy","f","max","Math","floor","out","push","range","start","end","replicate","dual","fromIterable","collection","Array","isArray","from","fromRecord","toEntries","fromOption","toArray","match","self","onEmpty","onNonEmpty","isNonEmptyReadonlyArray","matchLeft","headNonEmpty","tailNonEmpty","matchRight","initNonEmpty","lastNonEmpty","prepend","head","prependAll","that","concat","append","last","appendAll","scan","b","scanRight","input","length","isEmptyArray","isEmptyReadonlyArray","isNonEmptyArray","isOutOfBound","as","clamp","min","index","none","some","unsafeGet","Error","unprepend","unappend","tail","slice","init","take","takeRight","takeWhile","predicate","spanIndex","span","splitAt","drop","dropRight","dropWhile","findFirstIndex","findLastIndex","findFirst","o","isBoolean","isSome","findLast","insertAt","splice","replace","modify","replaceOption","modifyOption","getOrElse","next","remove","reverse","sort","sortWith","order","mapInput","sortBy","orders","sortByAll","combineAll","zip","zipWith","bs","len","unzip","fa","fb","intersperse","middle","modifyNonEmptyHead","setNonEmptyHead","modifyNonEmptyLast","setNonEmptyLast","rotate","m","round","abs","copy","s","splitNonEmptyAt","containsWith","isEquivalent","_equivalence","equivalence","contains","chop","rest","_n","split","chunksOf","ceil","splitWhere","groupWith","h","group","groupBy","k","unionWith","dedupe","dedupeWith","union","intersectionWith","filter","intersection","differenceWith","difference","empty","of","map","flatMap","inner","j","flatten","identity","filterMap","value","filterMapWhile","partitionMap","left","right","isLeft","getSomes","getLefts","getRights","isRight","partition","separate","reduce","reduceRight","liftPredicate","liftOption","fromNullable","liftNullable","flatMapNullable","liftEither","every","refinement","extend","_","unfold","getOrder","array","getEquivalence","forEach","dedupeAdjacentWith","lastA","isNone","dedupeAdjacent","join","sep","mapAccum","s1","cartesianWith","cartesian"],"sources":["../../src/ReadonlyArray.ts"],"sourcesContent":[null],"mappings":"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"}
1
+ {"version":3,"file":"ReadonlyArray.js","names":["E","_interopRequireWildcard","require","Equal","Equivalence","_Function","readonlyArray","O","Order","_Predicate","ReadonlyRecord","Tuple","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","make","elements","exports","makeBy","f","max","Math","floor","out","push","range","start","end","replicate","dual","fromIterable","collection","Array","isArray","from","fromRecord","toEntries","fromOption","toArray","match","self","onEmpty","onNonEmpty","isNonEmptyReadonlyArray","matchLeft","headNonEmpty","tailNonEmpty","matchRight","initNonEmpty","lastNonEmpty","prepend","head","prependAll","that","concat","append","last","appendAll","scan","b","scanRight","input","length","isEmptyArray","isEmptyReadonlyArray","isNonEmptyArray","isOutOfBound","as","clamp","min","index","none","some","unsafeGet","Error","unprepend","unappend","tail","slice","init","take","takeRight","takeWhile","predicate","spanIndex","span","splitAt","drop","dropRight","dropWhile","findFirstIndex","findLastIndex","findFirst","o","isBoolean","isSome","findLast","insertAt","splice","replace","modify","replaceOption","modifyOption","getOrElse","next","remove","reverse","sort","sortWith","order","mapInput","sortBy","orders","sortByAll","combineAll","zip","zipWith","bs","len","unzip","fa","fb","intersperse","middle","modifyNonEmptyHead","setNonEmptyHead","modifyNonEmptyLast","setNonEmptyLast","rotate","m","round","abs","copy","s","splitNonEmptyAt","containsWith","isEquivalent","_equivalence","equivalence","contains","chop","rest","_n","split","chunksOf","ceil","splitWhere","groupWith","h","group","groupBy","k","unionWith","dedupe","dedupeWith","union","intersectionWith","filter","intersection","differenceWith","difference","empty","of","map","flatMap","inner","j","flatten","identity","filterMap","value","filterMapWhile","partitionMap","left","right","isLeft","getSomes","getLefts","getRights","isRight","partition","separate","reduce","reduceRight","liftPredicate","liftOption","fromNullable","liftNullable","flatMapNullable","liftEither","every","refinement","extend","_","unfold","getOrder","array","getEquivalence","forEach","dedupeAdjacentWith","lastA","isNone","dedupeAdjacent","join","sep","mapAccum","s1","cartesianWith","cartesian"],"sources":["../../src/ReadonlyArray.ts"],"sourcesContent":[null],"mappings":"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"}
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.values = exports.union = exports.toEntries = exports.some = exports.size = exports.singleton = exports.set = exports.separate = exports.replaceOption = exports.replace = exports.remove = exports.reduce = exports.pop = exports.partitionMap = exports.partition = exports.modifyOption = exports.modify = exports.mapKeys = exports.mapEntries = exports.map = exports.keys = exports.isSubrecordBy = exports.isSubrecord = exports.isEmptyRecord = exports.isEmptyReadonlyRecord = exports.intersection = exports.has = exports.getSomes = exports.getRights = exports.getLefts = exports.getEquivalence = exports.get = exports.fromIterableWith = exports.fromIterableBy = exports.fromIterable = exports.fromEntries = exports.filterMap = exports.filter = exports.every = exports.empty = exports.difference = exports.collect = void 0;
6
+ exports.values = exports.union = exports.toEntries = exports.some = exports.size = exports.singleton = exports.set = exports.separate = exports.replaceOption = exports.replace = exports.remove = exports.reduce = exports.pop = exports.partitionMap = exports.partition = exports.modifyOption = exports.modify = exports.mapKeys = exports.mapEntries = exports.map = exports.keys = exports.isSubrecordBy = exports.isSubrecord = exports.isEmptyRecord = exports.isEmptyReadonlyRecord = exports.intersection = exports.has = exports.getSomes = exports.getRights = exports.getLefts = exports.getEquivalence = exports.get = exports.fromIterableWith = exports.fromIterableBy = exports.fromEntries = exports.filterMap = exports.filter = exports.every = exports.empty = exports.difference = exports.collect = void 0;
7
7
  var E = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("./Either.js"));
8
8
  var Equal = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("./Equal.js"));
9
9
  var _Function = /*#__PURE__*/require("./Function.js");
@@ -61,14 +61,7 @@ const empty = () => ({});
61
61
  * @since 2.0.0
62
62
  */
63
63
  exports.empty = empty;
64
- const isEmptyRecord = self => {
65
- for (const k in self) {
66
- if (has(self, k)) {
67
- return false;
68
- }
69
- }
70
- return true;
71
- };
64
+ const isEmptyRecord = self => keys(self).length === 0;
72
65
  /**
73
66
  * Determine if a record is empty.
74
67
  *
@@ -106,20 +99,13 @@ const isEmptyReadonlyRecord = exports.isEmptyReadonlyRecord = isEmptyRecord;
106
99
  * @since 2.0.0
107
100
  */
108
101
  const fromIterableWith = exports.fromIterableWith = /*#__PURE__*/(0, _Function.dual)(2, (self, f) => {
109
- const out = {};
102
+ const out = empty();
110
103
  for (const a of self) {
111
104
  const [k, b] = f(a);
112
105
  out[k] = b;
113
106
  }
114
107
  return out;
115
108
  });
116
- /**
117
- * Creates a new record from an iterable collection of key/value pairs.
118
- *
119
- * @since 2.0.0
120
- * @category constructors
121
- */
122
- const fromIterable = exports.fromIterable = /*#__PURE__*/fromIterableWith(_Function.identity);
123
109
  /**
124
110
  * Creates a new record from an iterable, utilizing the provided function to determine the key for each element.
125
111
  *
@@ -161,11 +147,11 @@ const fromIterableBy = (items, f) => fromIterableWith(items, a => [f(a), a]);
161
147
  *
162
148
  * assert.deepStrictEqual(fromEntries(input), { a: 1, b: 2 })
163
149
  *
164
- * @category conversions
165
150
  * @since 2.0.0
151
+ * @category constructors
166
152
  */
167
153
  exports.fromIterableBy = fromIterableBy;
168
- const fromEntries = exports.fromEntries = /*#__PURE__*/fromIterableWith(_Function.identity);
154
+ const fromEntries = exports.fromEntries = Object.fromEntries;
169
155
  /**
170
156
  * Transforms the values of a record into an `Array` with a custom mapping function.
171
157
  *
@@ -183,7 +169,7 @@ const fromEntries = exports.fromEntries = /*#__PURE__*/fromIterableWith(_Functio
183
169
  */
184
170
  const collect = exports.collect = /*#__PURE__*/(0, _Function.dual)(2, (self, f) => {
185
171
  const out = [];
186
- for (const key of Object.keys(self)) {
172
+ for (const key of keys(self)) {
187
173
  out.push(f(key, self[key]));
188
174
  }
189
175
  return out;
@@ -215,7 +201,7 @@ const toEntries = exports.toEntries = /*#__PURE__*/collect((key, value) => [key,
215
201
  *
216
202
  * @since 2.0.0
217
203
  */
218
- const size = self => Object.keys(self).length;
204
+ const size = self => keys(self).length;
219
205
  /**
220
206
  * Check if a given `key` exists in a record.
221
207
  *
@@ -223,10 +209,10 @@ const size = self => Object.keys(self).length;
223
209
  * @param key - the key to look for in the record.
224
210
  *
225
211
  * @example
226
- * import { has } from "effect/ReadonlyRecord"
212
+ * import { empty, has } from "effect/ReadonlyRecord"
227
213
  *
228
214
  * assert.deepStrictEqual(has({ a: 1, b: 2 }, "a"), true);
229
- * assert.deepStrictEqual(has({ a: 1, b: 2 }, "c"), false);
215
+ * assert.deepStrictEqual(has(empty<string>(), "c"), false);
230
216
  *
231
217
  * @since 2.0.0
232
218
  */
@@ -242,7 +228,7 @@ const has = exports.has = /*#__PURE__*/(0, _Function.dual)(2, (self, key) => Obj
242
228
  * import { get } from "effect/ReadonlyRecord"
243
229
  * import { some, none } from "effect/Option"
244
230
  *
245
- * const person = { name: "John Doe", age: 35 }
231
+ * const person: Record<string, unknown> = { name: "John Doe", age: 35 }
246
232
  *
247
233
  * assert.deepStrictEqual(get(person, "name"), some("John Doe"))
248
234
  * assert.deepStrictEqual(get(person, "email"), none())
@@ -269,7 +255,7 @@ const get = exports.get = /*#__PURE__*/(0, _Function.dual)(2, (self, key) => has
269
255
  * { a: 6 }
270
256
  * )
271
257
  * assert.deepStrictEqual(
272
- * modify({ a: 3 }, 'b', f),
258
+ * modify({ a: 3 } as Record<string, number>, 'b', f),
273
259
  * { a: 3 }
274
260
  * )
275
261
  *
@@ -305,7 +291,7 @@ const modify = exports.modify = /*#__PURE__*/(0, _Function.dual)(3, (self, key,
305
291
  * some({ a: 6 })
306
292
  * )
307
293
  * assert.deepStrictEqual(
308
- * modifyOption({ a: 3 }, 'b', f),
294
+ * modifyOption({ a: 3 } as Record<string, number>, 'b', f),
309
295
  * none()
310
296
  * )
311
297
  *
@@ -315,11 +301,10 @@ const modifyOption = exports.modifyOption = /*#__PURE__*/(0, _Function.dual)(3,
315
301
  if (!has(self, key)) {
316
302
  return Option.none();
317
303
  }
318
- const out = {
319
- ...self
320
- };
321
- out[key] = f(self[key]);
322
- return Option.some(out);
304
+ return Option.some({
305
+ ...self,
306
+ [key]: f(self[key])
307
+ });
323
308
  });
324
309
  /**
325
310
  * Replaces a value in the record with the new value passed as parameter.
@@ -329,20 +314,21 @@ const modifyOption = exports.modifyOption = /*#__PURE__*/(0, _Function.dual)(3,
329
314
  * @param b - The new value to replace the existing value with.
330
315
  *
331
316
  * @example
332
- * import { replaceOption } from "effect/ReadonlyRecord"
317
+ * import { empty, replaceOption } from "effect/ReadonlyRecord"
333
318
  * import { some, none } from "effect/Option"
334
319
  *
335
320
  * assert.deepStrictEqual(
336
321
  * replaceOption({ a: 1, b: 2, c: 3 }, 'a', 10),
337
322
  * some({ a: 10, b: 2, c: 3 })
338
323
  * )
339
- * assert.deepStrictEqual(replaceOption({}, 'a', 10), none())
324
+ * assert.deepStrictEqual(replaceOption(empty<string>(), 'a', 10), none())
340
325
  *
341
326
  * @since 2.0.0
342
327
  */
343
328
  const replaceOption = exports.replaceOption = /*#__PURE__*/(0, _Function.dual)(3, (self, key, b) => modifyOption(self, key, () => b));
344
329
  /**
345
- * Removes a key from a record and returns a new record
330
+ * If the given key exists in the record, returns a new record with the key removed,
331
+ * otherwise returns a copy of the original record.
346
332
  *
347
333
  * @param self - the record to remove the key from.
348
334
  * @param key - the key to remove from the record.
@@ -355,6 +341,11 @@ const replaceOption = exports.replaceOption = /*#__PURE__*/(0, _Function.dual)(3
355
341
  * @since 2.0.0
356
342
  */
357
343
  const remove = exports.remove = /*#__PURE__*/(0, _Function.dual)(2, (self, key) => {
344
+ if (!has(self, key)) {
345
+ return {
346
+ ...self
347
+ };
348
+ }
358
349
  const out = {
359
350
  ...self
360
351
  };
@@ -374,7 +365,7 @@ const remove = exports.remove = /*#__PURE__*/(0, _Function.dual)(2, (self, key)
374
365
  * import { some, none } from 'effect/Option'
375
366
  *
376
367
  * assert.deepStrictEqual(pop({ a: 1, b: 2 }, "a"), some([1, { b: 2 }]))
377
- * assert.deepStrictEqual(pop({ a: 1, b: 2 }, "c"), none())
368
+ * assert.deepStrictEqual(pop({ a: 1, b: 2 } as Record<string, number>, "c"), none())
378
369
  *
379
370
  * @category record
380
371
  * @since 2.0.0
@@ -401,8 +392,10 @@ const pop = exports.pop = /*#__PURE__*/(0, _Function.dual)(2, (self, key) => has
401
392
  * @since 2.0.0
402
393
  */
403
394
  const map = exports.map = /*#__PURE__*/(0, _Function.dual)(2, (self, f) => {
404
- const out = {};
405
- for (const key of Object.keys(self)) {
395
+ const out = {
396
+ ...self
397
+ };
398
+ for (const key of keys(self)) {
406
399
  out[key] = f(self[key], key);
407
400
  }
408
401
  return out;
@@ -420,7 +413,7 @@ const map = exports.map = /*#__PURE__*/(0, _Function.dual)(2, (self, f) => {
420
413
  */
421
414
  const mapKeys = exports.mapKeys = /*#__PURE__*/(0, _Function.dual)(2, (self, f) => {
422
415
  const out = {};
423
- for (const key of Object.keys(self)) {
416
+ for (const key of keys(self)) {
424
417
  const a = self[key];
425
418
  out[f(key, a)] = a;
426
419
  }
@@ -439,9 +432,9 @@ const mapKeys = exports.mapKeys = /*#__PURE__*/(0, _Function.dual)(2, (self, f)
439
432
  */
440
433
  const mapEntries = exports.mapEntries = /*#__PURE__*/(0, _Function.dual)(2, (self, f) => {
441
434
  const out = {};
442
- for (const key of Object.keys(self)) {
443
- const [k, a] = f(self[key], key);
444
- out[k] = a;
435
+ for (const key of keys(self)) {
436
+ const [k, b] = f(self[key], key);
437
+ out[k] = b;
445
438
  }
446
439
  return out;
447
440
  });
@@ -463,8 +456,8 @@ const mapEntries = exports.mapEntries = /*#__PURE__*/(0, _Function.dual)(2, (sel
463
456
  * @since 2.0.0
464
457
  */
465
458
  const filterMap = exports.filterMap = /*#__PURE__*/(0, _Function.dual)(2, (self, f) => {
466
- const out = {};
467
- for (const key of Object.keys(self)) {
459
+ const out = empty();
460
+ for (const key of keys(self)) {
468
461
  const o = f(self[key], key);
469
462
  if (Option.isSome(o)) {
470
463
  out[key] = o.value;
@@ -488,8 +481,8 @@ const filterMap = exports.filterMap = /*#__PURE__*/(0, _Function.dual)(2, (self,
488
481
  * @since 2.0.0
489
482
  */
490
483
  const filter = exports.filter = /*#__PURE__*/(0, _Function.dual)(2, (self, predicate) => {
491
- const out = {};
492
- for (const key of Object.keys(self)) {
484
+ const out = empty();
485
+ for (const key of keys(self)) {
493
486
  if (predicate(self[key], key)) {
494
487
  out[key] = self[key];
495
488
  }
@@ -530,8 +523,8 @@ const getSomes = exports.getSomes = /*#__PURE__*/filterMap(_Function.identity);
530
523
  * @since 2.0.0
531
524
  */
532
525
  const getLefts = self => {
533
- const out = {};
534
- for (const key of Object.keys(self)) {
526
+ const out = empty();
527
+ for (const key of keys(self)) {
535
528
  const value = self[key];
536
529
  if (E.isLeft(value)) {
537
530
  out[key] = value.left;
@@ -556,8 +549,8 @@ const getLefts = self => {
556
549
  */
557
550
  exports.getLefts = getLefts;
558
551
  const getRights = self => {
559
- const out = {};
560
- for (const key of Object.keys(self)) {
552
+ const out = empty();
553
+ for (const key of keys(self)) {
561
554
  const value = self[key];
562
555
  if (E.isRight(value)) {
563
556
  out[key] = value.right;
@@ -584,9 +577,9 @@ const getRights = self => {
584
577
  */
585
578
  exports.getRights = getRights;
586
579
  const partitionMap = exports.partitionMap = /*#__PURE__*/(0, _Function.dual)(2, (self, f) => {
587
- const left = {};
588
- const right = {};
589
- for (const key of Object.keys(self)) {
580
+ const left = empty();
581
+ const right = empty();
582
+ for (const key of keys(self)) {
590
583
  const e = f(self[key], key);
591
584
  if (E.isLeft(e)) {
592
585
  left[key] = e.left;
@@ -633,9 +626,9 @@ const separate = exports.separate = /*#__PURE__*/partitionMap(_Function.identity
633
626
  * @since 2.0.0
634
627
  */
635
628
  const partition = exports.partition = /*#__PURE__*/(0, _Function.dual)(2, (self, predicate) => {
636
- const left = {};
637
- const right = {};
638
- for (const key of Object.keys(self)) {
629
+ const left = empty();
630
+ const right = empty();
631
+ for (const key of keys(self)) {
639
632
  if (predicate(self[key], key)) {
640
633
  right[key] = self[key];
641
634
  } else {
@@ -678,14 +671,14 @@ const values = self => collect(self, (_, a) => a);
678
671
  */
679
672
  exports.values = values;
680
673
  const set = exports.set = /*#__PURE__*/(0, _Function.dual)(3, (self, key, value) => {
681
- const out = {
682
- ...self
674
+ return {
675
+ ...self,
676
+ [key]: value
683
677
  };
684
- out[key] = value;
685
- return out;
686
678
  });
687
679
  /**
688
680
  * Replace a key's value in a record and return the updated record.
681
+ * If the key does not exist in the record, a copy of the original record is returned.
689
682
  *
690
683
  * @param self - The original record.
691
684
  * @param key - The key to replace.
@@ -701,13 +694,15 @@ const set = exports.set = /*#__PURE__*/(0, _Function.dual)(3, (self, key, value)
701
694
  * @since 2.0.0
702
695
  */
703
696
  const replace = exports.replace = /*#__PURE__*/(0, _Function.dual)(3, (self, key, value) => {
704
- const out = {
705
- ...self
706
- };
707
697
  if (has(self, key)) {
708
- out[key] = value;
698
+ return {
699
+ ...self,
700
+ [key]: value
701
+ };
709
702
  }
710
- return out;
703
+ return {
704
+ ...self
705
+ };
711
706
  });
712
707
  /**
713
708
  * Check if all the keys and values in one record are also found in another record.
@@ -719,7 +714,7 @@ const replace = exports.replace = /*#__PURE__*/(0, _Function.dual)(3, (self, key
719
714
  * @since 2.0.0
720
715
  */
721
716
  const isSubrecordBy = equivalence => (0, _Function.dual)(2, (self, that) => {
722
- for (const key in self) {
717
+ for (const key of keys(self)) {
723
718
  if (!has(that, key) || !equivalence(self[key], that[key])) {
724
719
  return false;
725
720
  }
@@ -749,7 +744,7 @@ const isSubrecord = exports.isSubrecord = /*#__PURE__*/isSubrecordBy( /*#__PURE_
749
744
  */
750
745
  const reduce = exports.reduce = /*#__PURE__*/(0, _Function.dual)(3, (self, zero, f) => {
751
746
  let out = zero;
752
- for (const key in self) {
747
+ for (const key of keys(self)) {
753
748
  out = f(out, self[key], key);
754
749
  }
755
750
  return out;
@@ -763,7 +758,7 @@ const reduce = exports.reduce = /*#__PURE__*/(0, _Function.dual)(3, (self, zero,
763
758
  * @since 2.0.0
764
759
  */
765
760
  const every = exports.every = /*#__PURE__*/(0, _Function.dual)(2, (self, refinement) => {
766
- for (const key in self) {
761
+ for (const key of keys(self)) {
767
762
  if (!refinement(self[key], key)) {
768
763
  return false;
769
764
  }
@@ -779,7 +774,7 @@ const every = exports.every = /*#__PURE__*/(0, _Function.dual)(2, (self, refinem
779
774
  * @since 2.0.0
780
775
  */
781
776
  const some = exports.some = /*#__PURE__*/(0, _Function.dual)(2, (self, predicate) => {
782
- for (const key in self) {
777
+ for (const key of keys(self)) {
783
778
  if (predicate(self[key], key)) {
784
779
  return true;
785
780
  }
@@ -806,15 +801,15 @@ const union = exports.union = /*#__PURE__*/(0, _Function.dual)(3, (self, that, c
806
801
  ...self
807
802
  };
808
803
  }
809
- const out = {};
810
- for (const key in self) {
804
+ const out = empty();
805
+ for (const key of keys(self)) {
811
806
  if (has(that, key)) {
812
807
  out[key] = combine(self[key], that[key]);
813
808
  } else {
814
809
  out[key] = self[key];
815
810
  }
816
811
  }
817
- for (const key in that) {
812
+ for (const key of keys(that)) {
818
813
  if (!has(out, key)) {
819
814
  out[key] = that[key];
820
815
  }
@@ -831,11 +826,11 @@ const union = exports.union = /*#__PURE__*/(0, _Function.dual)(3, (self, that, c
831
826
  * @since 2.0.0
832
827
  */
833
828
  const intersection = exports.intersection = /*#__PURE__*/(0, _Function.dual)(3, (self, that, combine) => {
829
+ const out = empty();
834
830
  if (isEmptyRecord(self) || isEmptyRecord(that)) {
835
- return empty();
831
+ return out;
836
832
  }
837
- const out = {};
838
- for (const key in self) {
833
+ for (const key of keys(self)) {
839
834
  if (has(that, key)) {
840
835
  out[key] = combine(self[key], that[key]);
841
836
  }
@@ -862,12 +857,12 @@ const difference = exports.difference = /*#__PURE__*/(0, _Function.dual)(2, (sel
862
857
  };
863
858
  }
864
859
  const out = {};
865
- for (const key in self) {
860
+ for (const key of keys(self)) {
866
861
  if (!has(that, key)) {
867
862
  out[key] = self[key];
868
863
  }
869
864
  }
870
- for (const key in that) {
865
+ for (const key of keys(that)) {
871
866
  if (!has(self, key)) {
872
867
  out[key] = that[key];
873
868
  }