ts-data-forge 14.6.1 → 14.6.3

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 (420) hide show
  1. package/dist/array/impl/array-utils-creation.mjs +126 -26
  2. package/dist/array/impl/array-utils-creation.mjs.map +1 -1
  3. package/dist/array/impl/array-utils-element-access.mjs +63 -30
  4. package/dist/array/impl/array-utils-element-access.mjs.map +1 -1
  5. package/dist/array/impl/array-utils-iterators.mjs +68 -52
  6. package/dist/array/impl/array-utils-iterators.mjs.map +1 -1
  7. package/dist/array/impl/array-utils-length-bounded-array-cast.mjs +109 -73
  8. package/dist/array/impl/array-utils-length-bounded-array-cast.mjs.map +1 -1
  9. package/dist/array/impl/array-utils-length-bounded-array-guard.mjs +70 -32
  10. package/dist/array/impl/array-utils-length-bounded-array-guard.mjs.map +1 -1
  11. package/dist/array/impl/array-utils-length-bounded-tuple-cast.mjs +102 -73
  12. package/dist/array/impl/array-utils-length-bounded-tuple-cast.mjs.map +1 -1
  13. package/dist/array/impl/array-utils-length-bounded-tuple-guard.mjs +77 -33
  14. package/dist/array/impl/array-utils-length-bounded-tuple-guard.mjs.map +1 -1
  15. package/dist/array/impl/array-utils-modification.mjs +75 -122
  16. package/dist/array/impl/array-utils-modification.mjs.map +1 -1
  17. package/dist/array/impl/array-utils-reducing-value.mjs +99 -149
  18. package/dist/array/impl/array-utils-reducing-value.mjs.map +1 -1
  19. package/dist/array/impl/array-utils-search.mjs +112 -136
  20. package/dist/array/impl/array-utils-search.mjs.map +1 -1
  21. package/dist/array/impl/array-utils-set-op.mjs +146 -38
  22. package/dist/array/impl/array-utils-set-op.mjs.map +1 -1
  23. package/dist/array/impl/array-utils-size.mjs +10 -8
  24. package/dist/array/impl/array-utils-size.mjs.map +1 -1
  25. package/dist/array/impl/array-utils-slice-clamped.mjs +13 -50
  26. package/dist/array/impl/array-utils-slice-clamped.mjs.map +1 -1
  27. package/dist/array/impl/array-utils-slicing.mjs +92 -76
  28. package/dist/array/impl/array-utils-slicing.mjs.map +1 -1
  29. package/dist/array/impl/array-utils-transformation.mjs +291 -199
  30. package/dist/array/impl/array-utils-transformation.mjs.map +1 -1
  31. package/dist/array/impl/array-utils-validation.mjs +53 -55
  32. package/dist/array/impl/array-utils-validation.mjs.map +1 -1
  33. package/dist/array/impl/index.mjs +17 -17
  34. package/dist/array/impl/index.mjs.map +1 -1
  35. package/dist/array/index.mjs +2 -3
  36. package/dist/array/index.mjs.map +1 -1
  37. package/dist/collections/imap-mapped.mjs +335 -292
  38. package/dist/collections/imap-mapped.mjs.map +1 -1
  39. package/dist/collections/imap.mjs +280 -239
  40. package/dist/collections/imap.mjs.map +1 -1
  41. package/dist/collections/index.mjs +7 -7
  42. package/dist/collections/index.mjs.map +1 -1
  43. package/dist/collections/iset-mapped.mjs +448 -265
  44. package/dist/collections/iset-mapped.mjs.map +1 -1
  45. package/dist/collections/iset.mjs +328 -201
  46. package/dist/collections/iset.mjs.map +1 -1
  47. package/dist/collections/queue.mjs +181 -149
  48. package/dist/collections/queue.mjs.map +1 -1
  49. package/dist/collections/stack.mjs +167 -138
  50. package/dist/collections/stack.mjs.map +1 -1
  51. package/dist/entry-point.mjs +4 -77
  52. package/dist/entry-point.mjs.map +1 -1
  53. package/dist/expect-type.mjs +69 -3
  54. package/dist/expect-type.mjs.map +1 -1
  55. package/dist/functional/async-result/async-result.mjs +2 -3
  56. package/dist/functional/async-result/async-result.mjs.map +1 -1
  57. package/dist/functional/async-result/impl/async-result-flat-map.mjs +18 -20
  58. package/dist/functional/async-result/impl/async-result-flat-map.mjs.map +1 -1
  59. package/dist/functional/async-result/impl/async-result-from-promise.mjs +9 -10
  60. package/dist/functional/async-result/impl/async-result-from-promise.mjs.map +1 -1
  61. package/dist/functional/async-result/impl/async-result-from-throwable.mjs +12 -14
  62. package/dist/functional/async-result/impl/async-result-from-throwable.mjs.map +1 -1
  63. package/dist/functional/async-result/impl/async-result-map-err.mjs +15 -18
  64. package/dist/functional/async-result/impl/async-result-map-err.mjs.map +1 -1
  65. package/dist/functional/async-result/impl/async-result-map.mjs +15 -18
  66. package/dist/functional/async-result/impl/async-result-map.mjs.map +1 -1
  67. package/dist/functional/async-result/impl/async-result-unwrap-or.mjs +35 -8
  68. package/dist/functional/async-result/impl/async-result-unwrap-or.mjs.map +1 -1
  69. package/dist/functional/async-result/impl/index.mjs +8 -7
  70. package/dist/functional/async-result/impl/index.mjs.map +1 -1
  71. package/dist/functional/async-result/impl/types.mjs +2 -2
  72. package/dist/functional/async-result/impl/types.mjs.map +1 -1
  73. package/dist/functional/async-result/index.mjs +2 -3
  74. package/dist/functional/async-result/index.mjs.map +1 -1
  75. package/dist/functional/index.mjs +7 -11
  76. package/dist/functional/index.mjs.map +1 -1
  77. package/dist/functional/match.mjs +27 -13
  78. package/dist/functional/match.mjs.map +1 -1
  79. package/dist/functional/optional/impl/index.mjs +19 -18
  80. package/dist/functional/optional/impl/index.mjs.map +1 -1
  81. package/dist/functional/optional/impl/optional-expect-to-be.mjs +15 -17
  82. package/dist/functional/optional/impl/optional-expect-to-be.mjs.map +1 -1
  83. package/dist/functional/optional/impl/optional-filter.mjs +16 -18
  84. package/dist/functional/optional/impl/optional-filter.mjs.map +1 -1
  85. package/dist/functional/optional/impl/optional-flat-map.mjs +12 -14
  86. package/dist/functional/optional/impl/optional-flat-map.mjs.map +1 -1
  87. package/dist/functional/optional/impl/optional-from-nullable.mjs +24 -3
  88. package/dist/functional/optional/impl/optional-from-nullable.mjs.map +1 -1
  89. package/dist/functional/optional/impl/optional-is-none.mjs +19 -3
  90. package/dist/functional/optional/impl/optional-is-none.mjs.map +1 -1
  91. package/dist/functional/optional/impl/optional-is-optional.mjs +24 -6
  92. package/dist/functional/optional/impl/optional-is-optional.mjs.map +1 -1
  93. package/dist/functional/optional/impl/optional-is-some.mjs +20 -3
  94. package/dist/functional/optional/impl/optional-is-some.mjs.map +1 -1
  95. package/dist/functional/optional/impl/optional-map.mjs +15 -17
  96. package/dist/functional/optional/impl/optional-map.mjs.map +1 -1
  97. package/dist/functional/optional/impl/optional-match.mjs +15 -17
  98. package/dist/functional/optional/impl/optional-match.mjs.map +1 -1
  99. package/dist/functional/optional/impl/optional-none.mjs +16 -3
  100. package/dist/functional/optional/impl/optional-none.mjs.map +1 -1
  101. package/dist/functional/optional/impl/optional-or-else.mjs +12 -14
  102. package/dist/functional/optional/impl/optional-or-else.mjs.map +1 -1
  103. package/dist/functional/optional/impl/optional-some.mjs +22 -6
  104. package/dist/functional/optional/impl/optional-some.mjs.map +1 -1
  105. package/dist/functional/optional/impl/optional-to-nullable.mjs +26 -3
  106. package/dist/functional/optional/impl/optional-to-nullable.mjs.map +1 -1
  107. package/dist/functional/optional/impl/optional-unwrap-or.mjs +11 -13
  108. package/dist/functional/optional/impl/optional-unwrap-or.mjs.map +1 -1
  109. package/dist/functional/optional/impl/optional-unwrap-throw.mjs +33 -8
  110. package/dist/functional/optional/impl/optional-unwrap-throw.mjs.map +1 -1
  111. package/dist/functional/optional/impl/optional-unwrap.mjs +6 -9
  112. package/dist/functional/optional/impl/optional-unwrap.mjs.map +1 -1
  113. package/dist/functional/optional/impl/optional-zip.mjs +34 -3
  114. package/dist/functional/optional/impl/optional-zip.mjs.map +1 -1
  115. package/dist/functional/optional/impl/tag.mjs +3 -4
  116. package/dist/functional/optional/impl/tag.mjs.map +1 -1
  117. package/dist/functional/optional/impl/types.mjs +2 -2
  118. package/dist/functional/optional/impl/types.mjs.map +1 -1
  119. package/dist/functional/optional/index.mjs +2 -3
  120. package/dist/functional/optional/index.mjs.map +1 -1
  121. package/dist/functional/optional/optional.mjs +2 -3
  122. package/dist/functional/optional/optional.mjs.map +1 -1
  123. package/dist/functional/pipe.mjs +42 -14
  124. package/dist/functional/pipe.mjs.map +1 -1
  125. package/dist/functional/result/impl/index.mjs +28 -27
  126. package/dist/functional/result/impl/index.mjs.map +1 -1
  127. package/dist/functional/result/impl/result-err.mjs +28 -6
  128. package/dist/functional/result/impl/result-err.mjs.map +1 -1
  129. package/dist/functional/result/impl/result-expect-to-be.mjs +16 -17
  130. package/dist/functional/result/impl/result-expect-to-be.mjs.map +1 -1
  131. package/dist/functional/result/impl/result-flat-map.mjs +17 -20
  132. package/dist/functional/result/impl/result-flat-map.mjs.map +1 -1
  133. package/dist/functional/result/impl/result-fold.mjs +17 -20
  134. package/dist/functional/result/impl/result-fold.mjs.map +1 -1
  135. package/dist/functional/result/impl/result-from-optional.mjs +16 -19
  136. package/dist/functional/result/impl/result-from-optional.mjs.map +1 -1
  137. package/dist/functional/result/impl/result-from-promise.mjs +35 -6
  138. package/dist/functional/result/impl/result-from-promise.mjs.map +1 -1
  139. package/dist/functional/result/impl/result-from-throwable.mjs +40 -13
  140. package/dist/functional/result/impl/result-from-throwable.mjs.map +1 -1
  141. package/dist/functional/result/impl/result-is-err.mjs +19 -3
  142. package/dist/functional/result/impl/result-is-err.mjs.map +1 -1
  143. package/dist/functional/result/impl/result-is-ok.mjs +19 -3
  144. package/dist/functional/result/impl/result-is-ok.mjs.map +1 -1
  145. package/dist/functional/result/impl/result-is-result.mjs +23 -5
  146. package/dist/functional/result/impl/result-is-result.mjs.map +1 -1
  147. package/dist/functional/result/impl/result-map-err.mjs +17 -20
  148. package/dist/functional/result/impl/result-map-err.mjs.map +1 -1
  149. package/dist/functional/result/impl/result-map.mjs +17 -20
  150. package/dist/functional/result/impl/result-map.mjs.map +1 -1
  151. package/dist/functional/result/impl/result-match.mjs +16 -20
  152. package/dist/functional/result/impl/result-match.mjs.map +1 -1
  153. package/dist/functional/result/impl/result-ok.mjs +28 -6
  154. package/dist/functional/result/impl/result-ok.mjs.map +1 -1
  155. package/dist/functional/result/impl/result-or-else.mjs +13 -14
  156. package/dist/functional/result/impl/result-or-else.mjs.map +1 -1
  157. package/dist/functional/result/impl/result-safe-try.mjs +32 -21
  158. package/dist/functional/result/impl/result-safe-try.mjs.map +1 -1
  159. package/dist/functional/result/impl/result-safe-unwrap.mjs +39 -11
  160. package/dist/functional/result/impl/result-safe-unwrap.mjs.map +1 -1
  161. package/dist/functional/result/impl/result-swap.mjs +21 -6
  162. package/dist/functional/result/impl/result-swap.mjs.map +1 -1
  163. package/dist/functional/result/impl/result-to-optional.mjs +28 -5
  164. package/dist/functional/result/impl/result-to-optional.mjs.map +1 -1
  165. package/dist/functional/result/impl/result-unwrap-err-or.mjs +12 -13
  166. package/dist/functional/result/impl/result-unwrap-err-or.mjs.map +1 -1
  167. package/dist/functional/result/impl/result-unwrap-err-throw.mjs +42 -19
  168. package/dist/functional/result/impl/result-unwrap-err-throw.mjs.map +1 -1
  169. package/dist/functional/result/impl/result-unwrap-err.mjs +31 -6
  170. package/dist/functional/result/impl/result-unwrap-err.mjs.map +1 -1
  171. package/dist/functional/result/impl/result-unwrap-ok-or.mjs +12 -13
  172. package/dist/functional/result/impl/result-unwrap-ok-or.mjs.map +1 -1
  173. package/dist/functional/result/impl/result-unwrap-ok.mjs +6 -9
  174. package/dist/functional/result/impl/result-unwrap-ok.mjs.map +1 -1
  175. package/dist/functional/result/impl/result-unwrap-throw.mjs +37 -10
  176. package/dist/functional/result/impl/result-unwrap-throw.mjs.map +1 -1
  177. package/dist/functional/result/impl/result-zip.mjs +33 -3
  178. package/dist/functional/result/impl/result-zip.mjs.map +1 -1
  179. package/dist/functional/result/impl/tag.mjs +3 -4
  180. package/dist/functional/result/impl/tag.mjs.map +1 -1
  181. package/dist/functional/result/impl/types.mjs +2 -2
  182. package/dist/functional/result/impl/types.mjs.map +1 -1
  183. package/dist/functional/result/index.mjs +2 -3
  184. package/dist/functional/result/index.mjs.map +1 -1
  185. package/dist/functional/result/result.mjs +2 -3
  186. package/dist/functional/result/result.mjs.map +1 -1
  187. package/dist/functional/ternary-result/impl/index.mjs +29 -28
  188. package/dist/functional/ternary-result/impl/index.mjs.map +1 -1
  189. package/dist/functional/ternary-result/impl/tag.mjs +5 -5
  190. package/dist/functional/ternary-result/impl/tag.mjs.map +1 -1
  191. package/dist/functional/ternary-result/impl/ternary-result-err.mjs +16 -6
  192. package/dist/functional/ternary-result/impl/ternary-result-err.mjs.map +1 -1
  193. package/dist/functional/ternary-result/impl/ternary-result-expect-to-be.mjs +15 -18
  194. package/dist/functional/ternary-result/impl/ternary-result-expect-to-be.mjs.map +1 -1
  195. package/dist/functional/ternary-result/impl/ternary-result-flat-map.mjs +29 -33
  196. package/dist/functional/ternary-result/impl/ternary-result-flat-map.mjs.map +1 -1
  197. package/dist/functional/ternary-result/impl/ternary-result-fold.mjs +24 -26
  198. package/dist/functional/ternary-result/impl/ternary-result-fold.mjs.map +1 -1
  199. package/dist/functional/ternary-result/impl/ternary-result-from-promise.mjs +19 -6
  200. package/dist/functional/ternary-result/impl/ternary-result-from-promise.mjs.map +1 -1
  201. package/dist/functional/ternary-result/impl/ternary-result-from-throwable.mjs +27 -12
  202. package/dist/functional/ternary-result/impl/ternary-result-from-throwable.mjs.map +1 -1
  203. package/dist/functional/ternary-result/impl/ternary-result-is-err.mjs +17 -3
  204. package/dist/functional/ternary-result/impl/ternary-result-is-err.mjs.map +1 -1
  205. package/dist/functional/ternary-result/impl/ternary-result-is-ok.mjs +19 -3
  206. package/dist/functional/ternary-result/impl/ternary-result-is-ok.mjs.map +1 -1
  207. package/dist/functional/ternary-result/impl/ternary-result-is-ternary-result.mjs +26 -6
  208. package/dist/functional/ternary-result/impl/ternary-result-is-ternary-result.mjs.map +1 -1
  209. package/dist/functional/ternary-result/impl/ternary-result-is-warn.mjs +18 -3
  210. package/dist/functional/ternary-result/impl/ternary-result-is-warn.mjs.map +1 -1
  211. package/dist/functional/ternary-result/impl/ternary-result-map-err.mjs +17 -18
  212. package/dist/functional/ternary-result/impl/ternary-result-map-err.mjs.map +1 -1
  213. package/dist/functional/ternary-result/impl/ternary-result-map-warn.mjs +20 -23
  214. package/dist/functional/ternary-result/impl/ternary-result-map-warn.mjs.map +1 -1
  215. package/dist/functional/ternary-result/impl/ternary-result-map.mjs +24 -26
  216. package/dist/functional/ternary-result/impl/ternary-result-map.mjs.map +1 -1
  217. package/dist/functional/ternary-result/impl/ternary-result-ok.mjs +17 -6
  218. package/dist/functional/ternary-result/impl/ternary-result-ok.mjs.map +1 -1
  219. package/dist/functional/ternary-result/impl/ternary-result-or-else.mjs +11 -14
  220. package/dist/functional/ternary-result/impl/ternary-result-or-else.mjs.map +1 -1
  221. package/dist/functional/ternary-result/impl/ternary-result-to-optional.mjs +22 -8
  222. package/dist/functional/ternary-result/impl/ternary-result-to-optional.mjs.map +1 -1
  223. package/dist/functional/ternary-result/impl/ternary-result-unwrap-err-or.mjs +11 -14
  224. package/dist/functional/ternary-result/impl/ternary-result-unwrap-err-or.mjs.map +1 -1
  225. package/dist/functional/ternary-result/impl/ternary-result-unwrap-err-throw.mjs +29 -18
  226. package/dist/functional/ternary-result/impl/ternary-result-unwrap-err-throw.mjs.map +1 -1
  227. package/dist/functional/ternary-result/impl/ternary-result-unwrap-err.mjs +18 -6
  228. package/dist/functional/ternary-result/impl/ternary-result-unwrap-err.mjs.map +1 -1
  229. package/dist/functional/ternary-result/impl/ternary-result-unwrap-ok-or.mjs +11 -14
  230. package/dist/functional/ternary-result/impl/ternary-result-unwrap-ok-or.mjs.map +1 -1
  231. package/dist/functional/ternary-result/impl/ternary-result-unwrap-ok.mjs +6 -8
  232. package/dist/functional/ternary-result/impl/ternary-result-unwrap-ok.mjs.map +1 -1
  233. package/dist/functional/ternary-result/impl/ternary-result-unwrap-throw.mjs +31 -23
  234. package/dist/functional/ternary-result/impl/ternary-result-unwrap-throw.mjs.map +1 -1
  235. package/dist/functional/ternary-result/impl/ternary-result-unwrap-warn-or.mjs +11 -14
  236. package/dist/functional/ternary-result/impl/ternary-result-unwrap-warn-or.mjs.map +1 -1
  237. package/dist/functional/ternary-result/impl/ternary-result-unwrap-warn-throw.mjs +26 -16
  238. package/dist/functional/ternary-result/impl/ternary-result-unwrap-warn-throw.mjs.map +1 -1
  239. package/dist/functional/ternary-result/impl/ternary-result-unwrap-warn.mjs +18 -6
  240. package/dist/functional/ternary-result/impl/ternary-result-unwrap-warn.mjs.map +1 -1
  241. package/dist/functional/ternary-result/impl/ternary-result-warn.mjs +20 -7
  242. package/dist/functional/ternary-result/impl/ternary-result-warn.mjs.map +1 -1
  243. package/dist/functional/ternary-result/impl/ternary-result-zip.mjs +46 -18
  244. package/dist/functional/ternary-result/impl/ternary-result-zip.mjs.map +1 -1
  245. package/dist/functional/ternary-result/impl/types.mjs +2 -2
  246. package/dist/functional/ternary-result/impl/types.mjs.map +1 -1
  247. package/dist/functional/ternary-result/impl/variant-name.mjs +11 -13
  248. package/dist/functional/ternary-result/impl/variant-name.mjs.map +1 -1
  249. package/dist/functional/ternary-result/index.mjs +2 -3
  250. package/dist/functional/ternary-result/index.mjs.map +1 -1
  251. package/dist/functional/ternary-result/ternary-result.mjs +2 -3
  252. package/dist/functional/ternary-result/ternary-result.mjs.map +1 -1
  253. package/dist/guard/has-key.mjs +42 -3
  254. package/dist/guard/has-key.mjs.map +1 -1
  255. package/dist/guard/index.mjs +8 -8
  256. package/dist/guard/index.mjs.map +1 -1
  257. package/dist/guard/is-non-empty-string.mjs +38 -3
  258. package/dist/guard/is-non-empty-string.mjs.map +1 -1
  259. package/dist/guard/is-non-null-object.mjs +35 -3
  260. package/dist/guard/is-non-null-object.mjs.map +1 -1
  261. package/dist/guard/is-primitive.mjs +46 -15
  262. package/dist/guard/is-primitive.mjs.map +1 -1
  263. package/dist/guard/is-record.mjs +87 -4
  264. package/dist/guard/is-record.mjs.map +1 -1
  265. package/dist/guard/is-type.mjs +404 -19
  266. package/dist/guard/is-type.mjs.map +1 -1
  267. package/dist/guard/key-is-in.mjs +41 -3
  268. package/dist/guard/key-is-in.mjs.map +1 -1
  269. package/dist/index.mjs +12 -65
  270. package/dist/index.mjs.map +1 -1
  271. package/dist/iterator/index.mjs +2 -2
  272. package/dist/iterator/index.mjs.map +1 -1
  273. package/dist/iterator/range.mjs +18 -56
  274. package/dist/iterator/range.mjs.map +1 -1
  275. package/dist/json/index.mjs +2 -2
  276. package/dist/json/index.mjs.map +1 -1
  277. package/dist/json/json.mjs +346 -105
  278. package/dist/json/json.mjs.map +1 -1
  279. package/dist/number/branded-types/finite-number.mjs +148 -137
  280. package/dist/number/branded-types/finite-number.mjs.map +1 -1
  281. package/dist/number/branded-types/index.mjs +33 -33
  282. package/dist/number/branded-types/index.mjs.map +1 -1
  283. package/dist/number/branded-types/int.mjs +245 -209
  284. package/dist/number/branded-types/int.mjs.map +1 -1
  285. package/dist/number/branded-types/int16.mjs +141 -131
  286. package/dist/number/branded-types/int16.mjs.map +1 -1
  287. package/dist/number/branded-types/int32.mjs +141 -131
  288. package/dist/number/branded-types/int32.mjs.map +1 -1
  289. package/dist/number/branded-types/negative-finite-number.mjs +155 -149
  290. package/dist/number/branded-types/negative-finite-number.mjs.map +1 -1
  291. package/dist/number/branded-types/negative-int.mjs +125 -110
  292. package/dist/number/branded-types/negative-int.mjs.map +1 -1
  293. package/dist/number/branded-types/negative-safe-int.mjs +126 -115
  294. package/dist/number/branded-types/negative-safe-int.mjs.map +1 -1
  295. package/dist/number/branded-types/non-negative-finite-number.mjs +164 -154
  296. package/dist/number/branded-types/non-negative-finite-number.mjs.map +1 -1
  297. package/dist/number/branded-types/non-negative-int16.mjs +137 -125
  298. package/dist/number/branded-types/non-negative-int16.mjs.map +1 -1
  299. package/dist/number/branded-types/non-negative-int32.mjs +137 -125
  300. package/dist/number/branded-types/non-negative-int32.mjs.map +1 -1
  301. package/dist/number/branded-types/non-positive-finite-number.mjs +143 -139
  302. package/dist/number/branded-types/non-positive-finite-number.mjs.map +1 -1
  303. package/dist/number/branded-types/non-positive-int.mjs +116 -99
  304. package/dist/number/branded-types/non-positive-int.mjs.map +1 -1
  305. package/dist/number/branded-types/non-positive-safe-int.mjs +118 -107
  306. package/dist/number/branded-types/non-positive-safe-int.mjs.map +1 -1
  307. package/dist/number/branded-types/non-zero-finite-number.mjs +144 -129
  308. package/dist/number/branded-types/non-zero-finite-number.mjs.map +1 -1
  309. package/dist/number/branded-types/non-zero-int.mjs +102 -82
  310. package/dist/number/branded-types/non-zero-int.mjs.map +1 -1
  311. package/dist/number/branded-types/non-zero-int16.mjs +118 -105
  312. package/dist/number/branded-types/non-zero-int16.mjs.map +1 -1
  313. package/dist/number/branded-types/non-zero-int32.mjs +118 -105
  314. package/dist/number/branded-types/non-zero-int32.mjs.map +1 -1
  315. package/dist/number/branded-types/non-zero-safe-int.mjs +121 -107
  316. package/dist/number/branded-types/non-zero-safe-int.mjs.map +1 -1
  317. package/dist/number/branded-types/non-zero-uint16.mjs +118 -104
  318. package/dist/number/branded-types/non-zero-uint16.mjs.map +1 -1
  319. package/dist/number/branded-types/non-zero-uint32.mjs +118 -104
  320. package/dist/number/branded-types/non-zero-uint32.mjs.map +1 -1
  321. package/dist/number/branded-types/positive-finite-number.mjs +167 -160
  322. package/dist/number/branded-types/positive-finite-number.mjs.map +1 -1
  323. package/dist/number/branded-types/positive-int.mjs +260 -224
  324. package/dist/number/branded-types/positive-int.mjs.map +1 -1
  325. package/dist/number/branded-types/positive-int16.mjs +134 -122
  326. package/dist/number/branded-types/positive-int16.mjs.map +1 -1
  327. package/dist/number/branded-types/positive-int32.mjs +134 -122
  328. package/dist/number/branded-types/positive-int32.mjs.map +1 -1
  329. package/dist/number/branded-types/positive-safe-int.mjs +291 -257
  330. package/dist/number/branded-types/positive-safe-int.mjs.map +1 -1
  331. package/dist/number/branded-types/positive-uint16.mjs +134 -122
  332. package/dist/number/branded-types/positive-uint16.mjs.map +1 -1
  333. package/dist/number/branded-types/positive-uint32.mjs +134 -122
  334. package/dist/number/branded-types/positive-uint32.mjs.map +1 -1
  335. package/dist/number/branded-types/safe-int.mjs +283 -254
  336. package/dist/number/branded-types/safe-int.mjs.map +1 -1
  337. package/dist/number/branded-types/safe-uint.mjs +134 -123
  338. package/dist/number/branded-types/safe-uint.mjs.map +1 -1
  339. package/dist/number/branded-types/uint.mjs +248 -211
  340. package/dist/number/branded-types/uint.mjs.map +1 -1
  341. package/dist/number/branded-types/uint16.mjs +132 -121
  342. package/dist/number/branded-types/uint16.mjs.map +1 -1
  343. package/dist/number/branded-types/uint32.mjs +132 -121
  344. package/dist/number/branded-types/uint32.mjs.map +1 -1
  345. package/dist/number/enum/index.mjs +3 -3
  346. package/dist/number/enum/index.mjs.map +1 -1
  347. package/dist/number/enum/int8.mjs +146 -131
  348. package/dist/number/enum/int8.mjs.map +1 -1
  349. package/dist/number/enum/uint8.mjs +133 -119
  350. package/dist/number/enum/uint8.mjs.map +1 -1
  351. package/dist/number/index.mjs +6 -37
  352. package/dist/number/index.mjs.map +1 -1
  353. package/dist/number/num-arithmetic-types.mjs +42 -1
  354. package/dist/number/num-arithmetic-types.mjs.map +1 -1
  355. package/dist/number/num.mjs +549 -91
  356. package/dist/number/num.mjs.map +1 -1
  357. package/dist/number/refined-number-utils.mjs +294 -133
  358. package/dist/number/refined-number-utils.mjs.map +1 -1
  359. package/dist/object/index.mjs +2 -2
  360. package/dist/object/index.mjs.map +1 -1
  361. package/dist/object/object.mjs +356 -203
  362. package/dist/object/object.mjs.map +1 -1
  363. package/dist/others/cast-mutable.mjs +38 -11
  364. package/dist/others/cast-mutable.mjs.map +1 -1
  365. package/dist/others/cast-readonly.mjs +37 -11
  366. package/dist/others/cast-readonly.mjs.map +1 -1
  367. package/dist/others/debounce-function.mjs +22 -11
  368. package/dist/others/debounce-function.mjs.map +1 -1
  369. package/dist/others/fast-deep-equal.mjs +70 -51
  370. package/dist/others/fast-deep-equal.mjs.map +1 -1
  371. package/dist/others/if-then.mjs +31 -4
  372. package/dist/others/if-then.mjs.map +1 -1
  373. package/dist/others/index.mjs +10 -10
  374. package/dist/others/index.mjs.map +1 -1
  375. package/dist/others/map-nullable.mjs +11 -13
  376. package/dist/others/map-nullable.mjs.map +1 -1
  377. package/dist/others/memoize-function.mjs +14 -16
  378. package/dist/others/memoize-function.mjs.map +1 -1
  379. package/dist/others/tuple.mjs +51 -3
  380. package/dist/others/tuple.mjs.map +1 -1
  381. package/dist/others/unknown-to-string.mjs +91 -47
  382. package/dist/others/unknown-to-string.mjs.map +1 -1
  383. package/dist/promise/index.mjs +2 -2
  384. package/dist/promise/index.mjs.map +1 -1
  385. package/dist/promise/promise.mjs +49 -8
  386. package/dist/promise/promise.mjs.map +1 -1
  387. package/dist/string/index.mjs +2 -2
  388. package/dist/string/index.mjs.map +1 -1
  389. package/dist/string/str.mjs +250 -83
  390. package/dist/string/str.mjs.map +1 -1
  391. package/dist/types.mjs +2 -1
  392. package/dist/types.mjs.map +1 -1
  393. package/package.json +6 -7
  394. package/src/guard/is-type.test.mts +2 -2
  395. package/src/number/branded-types/finite-number.test.mts +1 -1
  396. package/src/number/branded-types/int.test.mts +1 -1
  397. package/src/number/branded-types/int16.test.mts +1 -1
  398. package/src/number/branded-types/int32.test.mts +1 -1
  399. package/src/number/branded-types/non-negative-finite-number.test.mts +1 -1
  400. package/src/number/branded-types/non-negative-int16.test.mts +1 -1
  401. package/src/number/branded-types/non-negative-int32.test.mts +1 -1
  402. package/src/number/branded-types/non-zero-finite-number.test.mts +1 -1
  403. package/src/number/branded-types/non-zero-int.test.mts +1 -1
  404. package/src/number/branded-types/non-zero-int16.test.mts +1 -1
  405. package/src/number/branded-types/non-zero-int32.test.mts +1 -1
  406. package/src/number/branded-types/non-zero-safe-int.test.mts +1 -1
  407. package/src/number/branded-types/non-zero-uint16.test.mts +1 -1
  408. package/src/number/branded-types/non-zero-uint32.test.mts +1 -1
  409. package/src/number/branded-types/positive-finite-number.test.mts +1 -1
  410. package/src/number/branded-types/positive-int.test.mts +1 -1
  411. package/src/number/branded-types/positive-int16.test.mts +1 -1
  412. package/src/number/branded-types/positive-int32.test.mts +1 -1
  413. package/src/number/branded-types/positive-safe-int.test.mts +1 -1
  414. package/src/number/branded-types/positive-uint16.test.mts +1 -1
  415. package/src/number/branded-types/positive-uint32.test.mts +1 -1
  416. package/src/number/branded-types/safe-int.test.mts +1 -1
  417. package/src/number/branded-types/safe-uint.test.mts +1 -1
  418. package/src/number/branded-types/uint.test.mts +1 -1
  419. package/src/number/branded-types/uint16.test.mts +1 -1
  420. package/src/number/branded-types/uint32.test.mts +1 -1
@@ -1,308 +1,351 @@
1
- import { isSome } from '../functional/optional/impl/optional-is-some.mjs';
2
- import { none } from '../functional/optional/impl/optional-none.mjs';
3
- import { some } from '../functional/optional/impl/optional-some.mjs';
4
- import { isNone } from '../functional/optional/impl/optional-is-none.mjs';
5
- import '@sindresorhus/is';
6
- import { tp } from '../others/tuple.mjs';
7
- import { unknownToString } from '../others/unknown-to-string.mjs';
8
- import { pipe } from '../functional/pipe.mjs';
9
- import '../number/branded-types/finite-number.mjs';
10
- import '../number/branded-types/int.mjs';
11
- import '../number/branded-types/int16.mjs';
12
- import '../number/branded-types/int32.mjs';
13
- import '../number/branded-types/negative-finite-number.mjs';
14
- import '../number/branded-types/negative-int.mjs';
15
- import '../number/branded-types/negative-safe-int.mjs';
16
- import '../number/branded-types/non-negative-finite-number.mjs';
17
- import '../number/branded-types/non-negative-int16.mjs';
18
- import '../number/branded-types/non-negative-int32.mjs';
19
- import '../number/branded-types/non-positive-finite-number.mjs';
20
- import '../number/branded-types/non-positive-int.mjs';
21
- import '../number/branded-types/non-positive-safe-int.mjs';
22
- import '../number/branded-types/non-zero-finite-number.mjs';
23
- import '../number/branded-types/non-zero-int.mjs';
24
- import '../number/branded-types/non-zero-int16.mjs';
25
- import '../number/branded-types/non-zero-int32.mjs';
26
- import '../number/branded-types/non-zero-safe-int.mjs';
27
- import '../number/branded-types/non-zero-uint16.mjs';
28
- import '../number/branded-types/non-zero-uint32.mjs';
29
- import '../number/branded-types/positive-finite-number.mjs';
30
- import '../number/branded-types/positive-int.mjs';
31
- import '../number/branded-types/positive-int16.mjs';
32
- import '../number/branded-types/positive-int32.mjs';
33
- import '../number/branded-types/positive-safe-int.mjs';
34
- import '../number/branded-types/positive-uint16.mjs';
35
- import '../number/branded-types/positive-uint32.mjs';
36
- import '../number/branded-types/safe-int.mjs';
37
- import '../number/branded-types/safe-uint.mjs';
38
- import '../number/branded-types/uint.mjs';
39
- import '../number/branded-types/uint16.mjs';
40
- import { asUint32 } from '../number/branded-types/uint32.mjs';
41
- import '../number/enum/int8.mjs';
42
- import '../number/enum/uint8.mjs';
43
- import '../number/num.mjs';
44
- import '../number/refined-number-utils.mjs';
45
-
46
- var IMapMapped;
47
- ((IMapMapped2) => {
48
- IMapMapped2.create = (iterable, toKey, fromKey) => new IMapMappedClass(iterable, toKey, fromKey);
49
- IMapMapped2.equal = (a, b) => a.size === b.size && a.every(
50
- (v, k) => pipe(b.get(k)).map((bv) => isSome(bv) && bv.value === v).value
51
- );
1
+ import { Optional, pipe } from '../functional/index.mjs';
2
+ import { asUint32 } from '../number/index.mjs';
3
+ import { tp, unknownToString } from '../others/index.mjs';
4
+
5
+ export var IMapMapped;
6
+ (function (IMapMapped) {
7
+
8
+
9
+
10
+
11
+
12
+
13
+
14
+
15
+
16
+
17
+
18
+
19
+
20
+
21
+
22
+
23
+
24
+
25
+
26
+
27
+
28
+
29
+
30
+
31
+
32
+
33
+
34
+
35
+
36
+
37
+
38
+
39
+
40
+
41
+
42
+
43
+
44
+
45
+
46
+
47
+
48
+
49
+
50
+
51
+
52
+
53
+
54
+ IMapMapped.create = (iterable, toKey, fromKey) => new IMapMappedClass(iterable, toKey, fromKey);
55
+
56
+
57
+
58
+
59
+
60
+
61
+
62
+
63
+
64
+
65
+
66
+
67
+
68
+
69
+
70
+
71
+
72
+
73
+
74
+
75
+
76
+
77
+
78
+
79
+
80
+
81
+
82
+
83
+
84
+
85
+
86
+
87
+
88
+
89
+
90
+
91
+
92
+
93
+
94
+
95
+
96
+
97
+
98
+
99
+
100
+
101
+
102
+
103
+
104
+
105
+
106
+
107
+
108
+
109
+
110
+
111
+
112
+
113
+ IMapMapped.equal = (a, b) => a.size === b.size &&
114
+ a.every((v, k) => pipe(b.get(k)).map((bv) => Optional.isSome(bv) && bv.value === v).value);
52
115
  })(IMapMapped || (IMapMapped = {}));
116
+
117
+
118
+
119
+
120
+
121
+
122
+
123
+
124
+
125
+
126
+
127
+
128
+
129
+
130
+
131
+
132
+
133
+
134
+
135
+
136
+
137
+
138
+
53
139
  class IMapMappedClass {
54
- #map;
55
- #toKey;
56
- #fromKey;
57
- #showNotFoundMessage;
58
- /**
59
- * Constructs an IMapMappedClass instance with custom key transformation.
60
- *
61
- * @param iterable An iterable of key-value pairs using the custom key type K.
62
- * @param toKey A function that converts a custom key K to a primitive key KM.
63
- * Must be deterministic and produce unique values for unique keys.
64
- * @param fromKey A function that converts a primitive key KM back to the
65
- * custom key K. Should be the inverse of the toKey function.
66
- * @param showNotFoundMessage Whether to log warning messages when operations
67
- * are performed on non-existent keys. Useful for debugging. Defaults to
68
- * false for production use.
69
- * @internal Use IMapMapped.create() instead of calling this constructor directly.
70
- */
71
- constructor(iterable, toKey, fromKey, showNotFoundMessage = false) {
72
- this.#map = new Map(Array.from(iterable, ([k, v]) => [toKey(k), v]));
73
- this.#toKey = toKey;
74
- this.#fromKey = fromKey;
75
- this.#showNotFoundMessage = showNotFoundMessage;
76
- }
77
- /** @inheritdoc */
78
- get size() {
79
- return asUint32(this.#map.size);
80
- }
81
- /** @inheritdoc */
82
- has(key) {
83
- return this.#map.has(this.#toKey(key));
84
- }
85
- /** @inheritdoc */
86
- get(key) {
87
- if (!this.has(key)) return none;
88
- return some(this.#map.get(this.#toKey(key)));
89
- }
90
- /** @inheritdoc */
91
- every(predicate) {
92
- for (const [k, v] of this.entries()) {
93
- if (!predicate(v, k)) return false;
140
+ #map;
141
+ #toKey;
142
+ #fromKey;
143
+ #showNotFoundMessage;
144
+
145
+
146
+
147
+
148
+
149
+
150
+
151
+
152
+
153
+
154
+
155
+
156
+
157
+ constructor(iterable, toKey, fromKey, showNotFoundMessage = false) {
158
+ this.#map = new Map(Array.from(iterable, ([k, v]) => [toKey(k), v]));
159
+ this.#toKey = toKey;
160
+ this.#fromKey = fromKey;
161
+ this.#showNotFoundMessage = showNotFoundMessage;
94
162
  }
95
- return true;
96
- }
97
- /** @inheritdoc */
98
- some(predicate) {
99
- for (const [k, v] of this.entries()) {
100
- if (predicate(v, k)) return true;
163
+
164
+ get size() {
165
+ return asUint32(this.#map.size);
166
+ }
167
+
168
+ has(key) {
169
+
170
+ return this.#map.has(this.#toKey(key));
101
171
  }
102
- return false;
103
- }
104
- /** @inheritdoc */
105
- delete(key) {
106
- if (!this.has(key)) {
107
- if (this.#showNotFoundMessage) {
108
- console.warn(
109
- `IMapMapped.delete: key not found: ${unknownToString(this.#toKey(key))}`
110
- );
111
- }
112
- return this;
172
+
173
+ get(key) {
174
+ if (!this.has(key))
175
+ return Optional.none;
176
+
177
+ return Optional.some(this.#map.get(this.#toKey(key)));
113
178
  }
114
- const keyMapped = this.#toKey(key);
115
- return IMapMapped.create(
116
- Array.from(this.#map).filter(([km]) => !Object.is(km, keyMapped)).map(([km, v]) => tp(this.#fromKey(km), v)),
117
- this.#toKey,
118
- this.#fromKey
119
- );
120
- }
121
- /** @inheritdoc */
122
- set(key, value) {
123
- const curr = this.get(key);
124
- if (isSome(curr) && value === curr.value) return this;
125
- const keyMapped = this.#toKey(key);
126
- if (!this.has(key)) {
127
- return IMapMapped.create(
128
- [...this.#map, tp(keyMapped, value)].map(
129
- ([km, v]) => tp(this.#fromKey(km), v)
130
- ),
131
- this.#toKey,
132
- this.#fromKey
133
- );
179
+
180
+ every(predicate) {
181
+ for (const [k, v] of this.entries()) {
182
+ if (!predicate(v, k))
183
+ return false;
184
+ }
185
+ return true;
134
186
  }
135
- return IMapMapped.create(
136
- Array.from(
137
- this.#map,
138
- ([km, v]) => tp(this.#fromKey(km), Object.is(km, keyMapped) ? value : v)
139
- ),
140
- this.#toKey,
141
- this.#fromKey
142
- );
143
- }
144
- /** @inheritdoc */
145
- update(key, updater) {
146
- const curr = this.get(key);
147
- if (isNone(curr)) {
148
- if (this.#showNotFoundMessage) {
149
- console.warn(
150
- `IMapMapped.update: key not found: ${unknownToString(this.#toKey(key))}`
151
- );
152
- }
153
- return this;
187
+
188
+ some(predicate) {
189
+ for (const [k, v] of this.entries()) {
190
+ if (predicate(v, k))
191
+ return true;
192
+ }
193
+ return false;
154
194
  }
155
- const keyMapped = this.#toKey(key);
156
- return IMapMapped.create(
157
- Array.from(
158
- this.#map,
159
- ([km, v]) => tp(
160
- this.#fromKey(km),
161
- Object.is(km, keyMapped) ? updater(curr.value) : v
162
- )
163
- ),
164
- this.#toKey,
165
- this.#fromKey
166
- );
167
- }
168
- /** @inheritdoc */
169
- withMutations(actions) {
170
- const mut_result = new Map(this.#map);
171
- const updateFn = (action) => {
172
- const key = this.#toKey(action.key);
173
- switch (action.type) {
174
- case "delete":
175
- mut_result.delete(key);
176
- break;
177
- case "set":
178
- mut_result.set(key, action.value);
179
- break;
180
- case "update": {
181
- const curr = mut_result.get(key);
182
- if (curr === void 0 || !mut_result.has(key)) {
195
+
196
+ delete(key) {
197
+ if (!this.has(key)) {
183
198
  if (this.#showNotFoundMessage) {
184
- console.warn(
185
- `IMapMapped.withMutations::update: key not found: ${unknownToString(key)}`
186
- );
199
+ console.warn(`IMapMapped.delete: key not found: ${unknownToString(this.#toKey(key))}`);
187
200
  }
188
- break;
189
- }
190
- mut_result.set(key, action.updater(curr));
191
- break;
201
+ return this;
192
202
  }
193
- }
194
- };
195
- for (const action of actions) {
196
- updateFn(action);
203
+ const keyMapped = this.#toKey(key);
204
+ return IMapMapped.create(Array.from(this.#map)
205
+ .filter(([km]) => !Object.is(km, keyMapped))
206
+ .map(([km, v]) => tp(this.#fromKey(km), v)), this.#toKey, this.#fromKey);
197
207
  }
198
- return IMapMapped.create(
199
- Array.from(mut_result, ([k, v]) => [this.#fromKey(k), v]),
200
- this.#toKey,
201
- this.#fromKey
202
- );
203
- }
204
- /** @inheritdoc */
205
- map(mapFn) {
206
- return IMapMapped.create(
207
- this.toArray().map(([k, v]) => tp(k, mapFn(v, k))),
208
- this.#toKey,
209
- this.#fromKey
210
- );
211
- }
212
- /** @inheritdoc */
213
- mapKeys(mapFn) {
214
- return IMapMapped.create(
215
- this.toArray().map(([k, v]) => tp(mapFn(k), v)),
216
- this.#toKey,
217
- this.#fromKey
218
- );
219
- }
220
- /** @inheritdoc */
221
- mapEntries(mapFn) {
222
- return IMapMapped.create(
223
- this.toArray().map(mapFn),
224
- this.#toKey,
225
- this.#fromKey
226
- );
227
- }
228
- /** @inheritdoc */
229
- forEach(callbackfn) {
230
- for (const [km, value] of this.#map) {
231
- callbackfn(value, this.#fromKey(km));
208
+
209
+ set(key, value) {
210
+ const curr = this.get(key);
211
+ if (Optional.isSome(curr) && value === curr.value)
212
+ return this;
213
+ const keyMapped = this.#toKey(key);
214
+ if (!this.has(key)) {
215
+ return IMapMapped.create([...this.#map, tp(keyMapped, value)].map(([km, v]) => tp(this.#fromKey(km), v)), this.#toKey, this.#fromKey);
216
+ }
217
+ return IMapMapped.create(Array.from(this.#map, ([km, v]) => tp(this.#fromKey(km), Object.is(km, keyMapped) ? value : v)), this.#toKey, this.#fromKey);
232
218
  }
233
- }
234
- /**
235
- * @example
236
- *
237
- * ```ts
238
- * type Point = Readonly<{ x: number; y: number }>;
239
- *
240
- * const toKey = (p: Point) => JSON.stringify(p);
241
- *
242
- * // eslint-disable-next-line total-functions/no-unsafe-type-assertion
243
- * const fromKey = (key: string) => JSON.parse(key) as Point;
244
- *
245
- * const map = IMapMapped.create<Point, string, string>(
246
- * [
247
- * [{ x: 0, y: 0 }, 'origin'],
248
- * [{ x: 1, y: 0 }, 'right'],
249
- * ],
250
- * toKey,
251
- * fromKey,
252
- * );
253
- *
254
- * const collected = Array.from(map);
255
- *
256
- * assert.deepStrictEqual(collected, [
257
- * [{ x: 0, y: 0 }, 'origin'],
258
- * [{ x: 1, y: 0 }, 'right'],
259
- * ]);
260
- * ```
261
- *
262
- * @inheritdoc
263
- */
264
- *[Symbol.iterator]() {
265
- for (const e of this.entries()) {
266
- yield e;
219
+
220
+ update(key, updater) {
221
+ const curr = this.get(key);
222
+ if (Optional.isNone(curr)) {
223
+ if (this.#showNotFoundMessage) {
224
+ console.warn(`IMapMapped.update: key not found: ${unknownToString(this.#toKey(key))}`);
225
+ }
226
+ return this;
227
+ }
228
+ const keyMapped = this.#toKey(key);
229
+ return IMapMapped.create(Array.from(this.#map, ([km, v]) => tp(this.#fromKey(km), Object.is(km, keyMapped) ? updater(curr.value) : v)), this.#toKey, this.#fromKey);
267
230
  }
268
- }
269
- /** @inheritdoc */
270
- *keys() {
271
- for (const km of this.#map.keys()) {
272
- yield this.#fromKey(km);
231
+
232
+ withMutations(actions) {
233
+ const mut_result = new Map(this.#map);
234
+ const updateFn = (action) => {
235
+ const key = this.#toKey(action.key);
236
+ switch (action.type) {
237
+ case 'delete':
238
+ mut_result.delete(key);
239
+ break;
240
+ case 'set':
241
+ mut_result.set(key, action.value);
242
+ break;
243
+ case 'update': {
244
+ const curr = mut_result.get(key);
245
+ if (curr === undefined || !mut_result.has(key)) {
246
+ if (this.#showNotFoundMessage) {
247
+ console.warn(`IMapMapped.withMutations::update: key not found: ${unknownToString(key)}`);
248
+ }
249
+ break;
250
+ }
251
+ mut_result.set(key, action.updater(curr));
252
+ break;
253
+ }
254
+ }
255
+ };
256
+ for (const action of actions) {
257
+ updateFn(action);
258
+ }
259
+ return IMapMapped.create(Array.from(mut_result, ([k, v]) => [this.#fromKey(k), v]), this.#toKey, this.#fromKey);
260
+ }
261
+
262
+ map(mapFn) {
263
+ return IMapMapped.create(this.toArray().map(([k, v]) => tp(k, mapFn(v, k))), this.#toKey, this.#fromKey);
273
264
  }
274
- }
275
- /** @inheritdoc */
276
- values() {
277
- return this.#map.values();
278
- }
279
- /** @inheritdoc */
280
- *entries() {
281
- for (const [km, v] of this.#map) {
282
- yield [this.#fromKey(km), v];
265
+
266
+ mapKeys(mapFn) {
267
+ return IMapMapped.create(this.toArray().map(([k, v]) => tp(mapFn(k), v)), this.#toKey, this.#fromKey);
283
268
  }
284
- }
285
- /** @inheritdoc */
286
- toKeysArray() {
287
- return Array.from(this.keys());
288
- }
289
- /** @inheritdoc */
290
- toValuesArray() {
291
- return Array.from(this.values());
292
- }
293
- /** @inheritdoc */
294
- toEntriesArray() {
295
- return Array.from(this.entries());
296
- }
297
- /** @inheritdoc */
298
- toArray() {
299
- return Array.from(this.entries());
300
- }
301
- /** @inheritdoc */
302
- toRawMap() {
303
- return this.#map;
304
- }
305
- }
306
269
 
307
- export { IMapMapped };
308
- //# sourceMappingURL=imap-mapped.mjs.map
270
+ mapEntries(mapFn) {
271
+ return IMapMapped.create(this.toArray().map(mapFn), this.#toKey, this.#fromKey);
272
+ }
273
+
274
+ forEach(callbackfn) {
275
+ for (const [km, value] of this.#map) {
276
+ callbackfn(value, this.#fromKey(km));
277
+ }
278
+ }
279
+
280
+
281
+
282
+
283
+
284
+
285
+
286
+
287
+
288
+
289
+
290
+
291
+
292
+
293
+
294
+
295
+
296
+
297
+
298
+
299
+
300
+
301
+
302
+
303
+
304
+
305
+
306
+
307
+
308
+
309
+ *[Symbol.iterator]() {
310
+ for (const e of this.entries()) {
311
+ yield e;
312
+ }
313
+ }
314
+
315
+ *keys() {
316
+ for (const km of this.#map.keys()) {
317
+ yield this.#fromKey(km);
318
+ }
319
+ }
320
+
321
+ values() {
322
+ return this.#map.values();
323
+ }
324
+
325
+ *entries() {
326
+ for (const [km, v] of this.#map) {
327
+ yield [this.#fromKey(km), v];
328
+ }
329
+ }
330
+
331
+ toKeysArray() {
332
+ return Array.from(this.keys());
333
+ }
334
+
335
+ toValuesArray() {
336
+ return Array.from(this.values());
337
+ }
338
+
339
+ toEntriesArray() {
340
+ return Array.from(this.entries());
341
+ }
342
+
343
+ toArray() {
344
+ return Array.from(this.entries());
345
+ }
346
+
347
+ toRawMap() {
348
+ return this.#map;
349
+ }
350
+ }
351
+ //# sourceMappingURL=imap-mapped.mjs.map