ts-data-forge 14.6.0 → 14.6.2

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 (409) 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 +69 -53
  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 +71 -33
  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 +100 -150
  18. package/dist/array/impl/array-utils-reducing-value.mjs.map +1 -1
  19. package/dist/array/impl/array-utils-search.mjs +110 -134
  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 +94 -78
  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 +54 -56
  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 -291
  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.d.mts.map +1 -1
  44. package/dist/collections/iset-mapped.mjs +448 -263
  45. package/dist/collections/iset-mapped.mjs.map +1 -1
  46. package/dist/collections/iset.mjs +328 -201
  47. package/dist/collections/iset.mjs.map +1 -1
  48. package/dist/collections/queue.mjs +183 -151
  49. package/dist/collections/queue.mjs.map +1 -1
  50. package/dist/collections/stack.mjs +169 -140
  51. package/dist/collections/stack.mjs.map +1 -1
  52. package/dist/entry-point.mjs +4 -77
  53. package/dist/entry-point.mjs.map +1 -1
  54. package/dist/expect-type.mjs +70 -4
  55. package/dist/expect-type.mjs.map +1 -1
  56. package/dist/functional/async-result/async-result.mjs +2 -3
  57. package/dist/functional/async-result/async-result.mjs.map +1 -1
  58. package/dist/functional/async-result/impl/async-result-flat-map.mjs +19 -21
  59. package/dist/functional/async-result/impl/async-result-flat-map.mjs.map +1 -1
  60. package/dist/functional/async-result/impl/async-result-from-promise.mjs +9 -10
  61. package/dist/functional/async-result/impl/async-result-from-promise.mjs.map +1 -1
  62. package/dist/functional/async-result/impl/async-result-from-throwable.mjs +12 -14
  63. package/dist/functional/async-result/impl/async-result-from-throwable.mjs.map +1 -1
  64. package/dist/functional/async-result/impl/async-result-map-err.mjs +16 -19
  65. package/dist/functional/async-result/impl/async-result-map-err.mjs.map +1 -1
  66. package/dist/functional/async-result/impl/async-result-map.mjs +16 -19
  67. package/dist/functional/async-result/impl/async-result-map.mjs.map +1 -1
  68. package/dist/functional/async-result/impl/async-result-unwrap-or.mjs +36 -9
  69. package/dist/functional/async-result/impl/async-result-unwrap-or.mjs.map +1 -1
  70. package/dist/functional/async-result/impl/index.mjs +8 -7
  71. package/dist/functional/async-result/impl/index.mjs.map +1 -1
  72. package/dist/functional/async-result/impl/types.mjs +2 -2
  73. package/dist/functional/async-result/impl/types.mjs.map +1 -1
  74. package/dist/functional/async-result/index.mjs +2 -3
  75. package/dist/functional/async-result/index.mjs.map +1 -1
  76. package/dist/functional/index.mjs +7 -11
  77. package/dist/functional/index.mjs.map +1 -1
  78. package/dist/functional/match.mjs +27 -13
  79. package/dist/functional/match.mjs.map +1 -1
  80. package/dist/functional/optional/impl/index.mjs +19 -18
  81. package/dist/functional/optional/impl/index.mjs.map +1 -1
  82. package/dist/functional/optional/impl/optional-expect-to-be.mjs +16 -18
  83. package/dist/functional/optional/impl/optional-expect-to-be.mjs.map +1 -1
  84. package/dist/functional/optional/impl/optional-filter.mjs +17 -19
  85. package/dist/functional/optional/impl/optional-filter.mjs.map +1 -1
  86. package/dist/functional/optional/impl/optional-flat-map.mjs +13 -15
  87. package/dist/functional/optional/impl/optional-flat-map.mjs.map +1 -1
  88. package/dist/functional/optional/impl/optional-from-nullable.mjs +26 -5
  89. package/dist/functional/optional/impl/optional-from-nullable.mjs.map +1 -1
  90. package/dist/functional/optional/impl/optional-is-none.mjs +21 -5
  91. package/dist/functional/optional/impl/optional-is-none.mjs.map +1 -1
  92. package/dist/functional/optional/impl/optional-is-optional.mjs +26 -8
  93. package/dist/functional/optional/impl/optional-is-optional.mjs.map +1 -1
  94. package/dist/functional/optional/impl/optional-is-some.mjs +22 -5
  95. package/dist/functional/optional/impl/optional-is-some.mjs.map +1 -1
  96. package/dist/functional/optional/impl/optional-map.mjs +16 -18
  97. package/dist/functional/optional/impl/optional-map.mjs.map +1 -1
  98. package/dist/functional/optional/impl/optional-match.mjs +16 -18
  99. package/dist/functional/optional/impl/optional-match.mjs.map +1 -1
  100. package/dist/functional/optional/impl/optional-none.mjs +18 -5
  101. package/dist/functional/optional/impl/optional-none.mjs.map +1 -1
  102. package/dist/functional/optional/impl/optional-or-else.mjs +13 -15
  103. package/dist/functional/optional/impl/optional-or-else.mjs.map +1 -1
  104. package/dist/functional/optional/impl/optional-some.mjs +23 -7
  105. package/dist/functional/optional/impl/optional-some.mjs.map +1 -1
  106. package/dist/functional/optional/impl/optional-to-nullable.mjs +28 -5
  107. package/dist/functional/optional/impl/optional-to-nullable.mjs.map +1 -1
  108. package/dist/functional/optional/impl/optional-unwrap-or.mjs +12 -14
  109. package/dist/functional/optional/impl/optional-unwrap-or.mjs.map +1 -1
  110. package/dist/functional/optional/impl/optional-unwrap-throw.mjs +34 -9
  111. package/dist/functional/optional/impl/optional-unwrap-throw.mjs.map +1 -1
  112. package/dist/functional/optional/impl/optional-unwrap.mjs +6 -9
  113. package/dist/functional/optional/impl/optional-unwrap.mjs.map +1 -1
  114. package/dist/functional/optional/impl/optional-zip.mjs +36 -5
  115. package/dist/functional/optional/impl/optional-zip.mjs.map +1 -1
  116. package/dist/functional/optional/impl/tag.mjs +4 -5
  117. package/dist/functional/optional/impl/tag.mjs.map +1 -1
  118. package/dist/functional/optional/impl/types.mjs +2 -2
  119. package/dist/functional/optional/impl/types.mjs.map +1 -1
  120. package/dist/functional/optional/index.mjs +2 -3
  121. package/dist/functional/optional/index.mjs.map +1 -1
  122. package/dist/functional/optional/optional.mjs +2 -3
  123. package/dist/functional/optional/optional.mjs.map +1 -1
  124. package/dist/functional/pipe.mjs +42 -14
  125. package/dist/functional/pipe.mjs.map +1 -1
  126. package/dist/functional/result/impl/index.mjs +28 -27
  127. package/dist/functional/result/impl/index.mjs.map +1 -1
  128. package/dist/functional/result/impl/result-err.mjs +29 -7
  129. package/dist/functional/result/impl/result-err.mjs.map +1 -1
  130. package/dist/functional/result/impl/result-expect-to-be.mjs +17 -18
  131. package/dist/functional/result/impl/result-expect-to-be.mjs.map +1 -1
  132. package/dist/functional/result/impl/result-flat-map.mjs +18 -21
  133. package/dist/functional/result/impl/result-flat-map.mjs.map +1 -1
  134. package/dist/functional/result/impl/result-fold.mjs +18 -21
  135. package/dist/functional/result/impl/result-fold.mjs.map +1 -1
  136. package/dist/functional/result/impl/result-from-optional.mjs +17 -20
  137. package/dist/functional/result/impl/result-from-optional.mjs.map +1 -1
  138. package/dist/functional/result/impl/result-from-promise.mjs +37 -8
  139. package/dist/functional/result/impl/result-from-promise.mjs.map +1 -1
  140. package/dist/functional/result/impl/result-from-throwable.mjs +41 -14
  141. package/dist/functional/result/impl/result-from-throwable.mjs.map +1 -1
  142. package/dist/functional/result/impl/result-is-err.mjs +21 -5
  143. package/dist/functional/result/impl/result-is-err.mjs.map +1 -1
  144. package/dist/functional/result/impl/result-is-ok.mjs +21 -5
  145. package/dist/functional/result/impl/result-is-ok.mjs.map +1 -1
  146. package/dist/functional/result/impl/result-is-result.mjs +25 -7
  147. package/dist/functional/result/impl/result-is-result.mjs.map +1 -1
  148. package/dist/functional/result/impl/result-map-err.mjs +18 -21
  149. package/dist/functional/result/impl/result-map-err.mjs.map +1 -1
  150. package/dist/functional/result/impl/result-map.mjs +18 -21
  151. package/dist/functional/result/impl/result-map.mjs.map +1 -1
  152. package/dist/functional/result/impl/result-match.mjs +17 -21
  153. package/dist/functional/result/impl/result-match.mjs.map +1 -1
  154. package/dist/functional/result/impl/result-ok.mjs +29 -7
  155. package/dist/functional/result/impl/result-ok.mjs.map +1 -1
  156. package/dist/functional/result/impl/result-or-else.mjs +14 -15
  157. package/dist/functional/result/impl/result-or-else.mjs.map +1 -1
  158. package/dist/functional/result/impl/result-safe-try.mjs +32 -21
  159. package/dist/functional/result/impl/result-safe-try.mjs.map +1 -1
  160. package/dist/functional/result/impl/result-safe-unwrap.mjs +40 -12
  161. package/dist/functional/result/impl/result-safe-unwrap.mjs.map +1 -1
  162. package/dist/functional/result/impl/result-swap.mjs +23 -8
  163. package/dist/functional/result/impl/result-swap.mjs.map +1 -1
  164. package/dist/functional/result/impl/result-to-optional.mjs +30 -7
  165. package/dist/functional/result/impl/result-to-optional.mjs.map +1 -1
  166. package/dist/functional/result/impl/result-unwrap-err-or.mjs +13 -14
  167. package/dist/functional/result/impl/result-unwrap-err-or.mjs.map +1 -1
  168. package/dist/functional/result/impl/result-unwrap-err-throw.mjs +43 -20
  169. package/dist/functional/result/impl/result-unwrap-err-throw.mjs.map +1 -1
  170. package/dist/functional/result/impl/result-unwrap-err.mjs +33 -8
  171. package/dist/functional/result/impl/result-unwrap-err.mjs.map +1 -1
  172. package/dist/functional/result/impl/result-unwrap-ok-or.mjs +13 -14
  173. package/dist/functional/result/impl/result-unwrap-ok-or.mjs.map +1 -1
  174. package/dist/functional/result/impl/result-unwrap-ok.mjs +6 -9
  175. package/dist/functional/result/impl/result-unwrap-ok.mjs.map +1 -1
  176. package/dist/functional/result/impl/result-unwrap-throw.mjs +38 -11
  177. package/dist/functional/result/impl/result-unwrap-throw.mjs.map +1 -1
  178. package/dist/functional/result/impl/result-zip.mjs +35 -5
  179. package/dist/functional/result/impl/result-zip.mjs.map +1 -1
  180. package/dist/functional/result/impl/tag.mjs +4 -5
  181. package/dist/functional/result/impl/tag.mjs.map +1 -1
  182. package/dist/functional/result/impl/types.mjs +2 -2
  183. package/dist/functional/result/impl/types.mjs.map +1 -1
  184. package/dist/functional/result/index.mjs +2 -3
  185. package/dist/functional/result/index.mjs.map +1 -1
  186. package/dist/functional/result/result.mjs +2 -3
  187. package/dist/functional/result/result.mjs.map +1 -1
  188. package/dist/functional/ternary-result/impl/index.mjs +29 -28
  189. package/dist/functional/ternary-result/impl/index.mjs.map +1 -1
  190. package/dist/functional/ternary-result/impl/tag.mjs +6 -6
  191. package/dist/functional/ternary-result/impl/tag.mjs.map +1 -1
  192. package/dist/functional/ternary-result/impl/ternary-result-err.mjs +17 -7
  193. package/dist/functional/ternary-result/impl/ternary-result-err.mjs.map +1 -1
  194. package/dist/functional/ternary-result/impl/ternary-result-expect-to-be.mjs +15 -18
  195. package/dist/functional/ternary-result/impl/ternary-result-expect-to-be.mjs.map +1 -1
  196. package/dist/functional/ternary-result/impl/ternary-result-flat-map.mjs +28 -32
  197. package/dist/functional/ternary-result/impl/ternary-result-flat-map.mjs.map +1 -1
  198. package/dist/functional/ternary-result/impl/ternary-result-fold.mjs +24 -26
  199. package/dist/functional/ternary-result/impl/ternary-result-fold.mjs.map +1 -1
  200. package/dist/functional/ternary-result/impl/ternary-result-from-promise.mjs +21 -8
  201. package/dist/functional/ternary-result/impl/ternary-result-from-promise.mjs.map +1 -1
  202. package/dist/functional/ternary-result/impl/ternary-result-from-throwable.mjs +28 -13
  203. package/dist/functional/ternary-result/impl/ternary-result-from-throwable.mjs.map +1 -1
  204. package/dist/functional/ternary-result/impl/ternary-result-is-err.mjs +19 -5
  205. package/dist/functional/ternary-result/impl/ternary-result-is-err.mjs.map +1 -1
  206. package/dist/functional/ternary-result/impl/ternary-result-is-ok.mjs +21 -5
  207. package/dist/functional/ternary-result/impl/ternary-result-is-ok.mjs.map +1 -1
  208. package/dist/functional/ternary-result/impl/ternary-result-is-ternary-result.mjs +28 -8
  209. package/dist/functional/ternary-result/impl/ternary-result-is-ternary-result.mjs.map +1 -1
  210. package/dist/functional/ternary-result/impl/ternary-result-is-warn.mjs +20 -5
  211. package/dist/functional/ternary-result/impl/ternary-result-is-warn.mjs.map +1 -1
  212. package/dist/functional/ternary-result/impl/ternary-result-map-err.mjs +17 -18
  213. package/dist/functional/ternary-result/impl/ternary-result-map-err.mjs.map +1 -1
  214. package/dist/functional/ternary-result/impl/ternary-result-map-warn.mjs +20 -23
  215. package/dist/functional/ternary-result/impl/ternary-result-map-warn.mjs.map +1 -1
  216. package/dist/functional/ternary-result/impl/ternary-result-map.mjs +24 -26
  217. package/dist/functional/ternary-result/impl/ternary-result-map.mjs.map +1 -1
  218. package/dist/functional/ternary-result/impl/ternary-result-ok.mjs +18 -7
  219. package/dist/functional/ternary-result/impl/ternary-result-ok.mjs.map +1 -1
  220. package/dist/functional/ternary-result/impl/ternary-result-or-else.mjs +11 -14
  221. package/dist/functional/ternary-result/impl/ternary-result-or-else.mjs.map +1 -1
  222. package/dist/functional/ternary-result/impl/ternary-result-to-optional.mjs +24 -10
  223. package/dist/functional/ternary-result/impl/ternary-result-to-optional.mjs.map +1 -1
  224. package/dist/functional/ternary-result/impl/ternary-result-unwrap-err-or.mjs +11 -14
  225. package/dist/functional/ternary-result/impl/ternary-result-unwrap-err-or.mjs.map +1 -1
  226. package/dist/functional/ternary-result/impl/ternary-result-unwrap-err-throw.mjs +30 -19
  227. package/dist/functional/ternary-result/impl/ternary-result-unwrap-err-throw.mjs.map +1 -1
  228. package/dist/functional/ternary-result/impl/ternary-result-unwrap-err.mjs +20 -8
  229. package/dist/functional/ternary-result/impl/ternary-result-unwrap-err.mjs.map +1 -1
  230. package/dist/functional/ternary-result/impl/ternary-result-unwrap-ok-or.mjs +11 -14
  231. package/dist/functional/ternary-result/impl/ternary-result-unwrap-ok-or.mjs.map +1 -1
  232. package/dist/functional/ternary-result/impl/ternary-result-unwrap-ok.mjs +7 -9
  233. package/dist/functional/ternary-result/impl/ternary-result-unwrap-ok.mjs.map +1 -1
  234. package/dist/functional/ternary-result/impl/ternary-result-unwrap-throw.mjs +30 -22
  235. package/dist/functional/ternary-result/impl/ternary-result-unwrap-throw.mjs.map +1 -1
  236. package/dist/functional/ternary-result/impl/ternary-result-unwrap-warn-or.mjs +11 -14
  237. package/dist/functional/ternary-result/impl/ternary-result-unwrap-warn-or.mjs.map +1 -1
  238. package/dist/functional/ternary-result/impl/ternary-result-unwrap-warn-throw.mjs +27 -17
  239. package/dist/functional/ternary-result/impl/ternary-result-unwrap-warn-throw.mjs.map +1 -1
  240. package/dist/functional/ternary-result/impl/ternary-result-unwrap-warn.mjs +20 -8
  241. package/dist/functional/ternary-result/impl/ternary-result-unwrap-warn.mjs.map +1 -1
  242. package/dist/functional/ternary-result/impl/ternary-result-warn.mjs +21 -8
  243. package/dist/functional/ternary-result/impl/ternary-result-warn.mjs.map +1 -1
  244. package/dist/functional/ternary-result/impl/ternary-result-zip.mjs +47 -19
  245. package/dist/functional/ternary-result/impl/ternary-result-zip.mjs.map +1 -1
  246. package/dist/functional/ternary-result/impl/types.mjs +2 -2
  247. package/dist/functional/ternary-result/impl/types.mjs.map +1 -1
  248. package/dist/functional/ternary-result/impl/variant-name.mjs +12 -14
  249. package/dist/functional/ternary-result/impl/variant-name.mjs.map +1 -1
  250. package/dist/functional/ternary-result/index.mjs +2 -3
  251. package/dist/functional/ternary-result/index.mjs.map +1 -1
  252. package/dist/functional/ternary-result/ternary-result.mjs +2 -3
  253. package/dist/functional/ternary-result/ternary-result.mjs.map +1 -1
  254. package/dist/guard/has-key.mjs +43 -4
  255. package/dist/guard/has-key.mjs.map +1 -1
  256. package/dist/guard/index.mjs +8 -8
  257. package/dist/guard/index.mjs.map +1 -1
  258. package/dist/guard/is-non-empty-string.mjs +39 -4
  259. package/dist/guard/is-non-empty-string.mjs.map +1 -1
  260. package/dist/guard/is-non-null-object.mjs +36 -4
  261. package/dist/guard/is-non-null-object.mjs.map +1 -1
  262. package/dist/guard/is-primitive.mjs +46 -15
  263. package/dist/guard/is-primitive.mjs.map +1 -1
  264. package/dist/guard/is-record.mjs +89 -6
  265. package/dist/guard/is-record.mjs.map +1 -1
  266. package/dist/guard/is-type.mjs +404 -19
  267. package/dist/guard/is-type.mjs.map +1 -1
  268. package/dist/guard/key-is-in.mjs +42 -4
  269. package/dist/guard/key-is-in.mjs.map +1 -1
  270. package/dist/index.mjs +12 -65
  271. package/dist/index.mjs.map +1 -1
  272. package/dist/iterator/index.mjs +2 -2
  273. package/dist/iterator/index.mjs.map +1 -1
  274. package/dist/iterator/range.mjs +19 -57
  275. package/dist/iterator/range.mjs.map +1 -1
  276. package/dist/json/index.mjs +2 -2
  277. package/dist/json/index.mjs.map +1 -1
  278. package/dist/json/json.mjs +346 -105
  279. package/dist/json/json.mjs.map +1 -1
  280. package/dist/number/branded-types/finite-number.mjs +148 -137
  281. package/dist/number/branded-types/finite-number.mjs.map +1 -1
  282. package/dist/number/branded-types/index.mjs +33 -33
  283. package/dist/number/branded-types/index.mjs.map +1 -1
  284. package/dist/number/branded-types/int.mjs +245 -209
  285. package/dist/number/branded-types/int.mjs.map +1 -1
  286. package/dist/number/branded-types/int16.mjs +141 -131
  287. package/dist/number/branded-types/int16.mjs.map +1 -1
  288. package/dist/number/branded-types/int32.mjs +141 -131
  289. package/dist/number/branded-types/int32.mjs.map +1 -1
  290. package/dist/number/branded-types/negative-finite-number.mjs +155 -149
  291. package/dist/number/branded-types/negative-finite-number.mjs.map +1 -1
  292. package/dist/number/branded-types/negative-int.mjs +125 -110
  293. package/dist/number/branded-types/negative-int.mjs.map +1 -1
  294. package/dist/number/branded-types/negative-safe-int.mjs +126 -115
  295. package/dist/number/branded-types/negative-safe-int.mjs.map +1 -1
  296. package/dist/number/branded-types/non-negative-finite-number.mjs +164 -154
  297. package/dist/number/branded-types/non-negative-finite-number.mjs.map +1 -1
  298. package/dist/number/branded-types/non-negative-int16.mjs +137 -125
  299. package/dist/number/branded-types/non-negative-int16.mjs.map +1 -1
  300. package/dist/number/branded-types/non-negative-int32.mjs +137 -125
  301. package/dist/number/branded-types/non-negative-int32.mjs.map +1 -1
  302. package/dist/number/branded-types/non-positive-finite-number.mjs +143 -139
  303. package/dist/number/branded-types/non-positive-finite-number.mjs.map +1 -1
  304. package/dist/number/branded-types/non-positive-int.mjs +116 -99
  305. package/dist/number/branded-types/non-positive-int.mjs.map +1 -1
  306. package/dist/number/branded-types/non-positive-safe-int.mjs +118 -107
  307. package/dist/number/branded-types/non-positive-safe-int.mjs.map +1 -1
  308. package/dist/number/branded-types/non-zero-finite-number.mjs +144 -129
  309. package/dist/number/branded-types/non-zero-finite-number.mjs.map +1 -1
  310. package/dist/number/branded-types/non-zero-int.mjs +102 -82
  311. package/dist/number/branded-types/non-zero-int.mjs.map +1 -1
  312. package/dist/number/branded-types/non-zero-int16.mjs +118 -105
  313. package/dist/number/branded-types/non-zero-int16.mjs.map +1 -1
  314. package/dist/number/branded-types/non-zero-int32.mjs +118 -105
  315. package/dist/number/branded-types/non-zero-int32.mjs.map +1 -1
  316. package/dist/number/branded-types/non-zero-safe-int.mjs +122 -108
  317. package/dist/number/branded-types/non-zero-safe-int.mjs.map +1 -1
  318. package/dist/number/branded-types/non-zero-uint16.mjs +118 -104
  319. package/dist/number/branded-types/non-zero-uint16.mjs.map +1 -1
  320. package/dist/number/branded-types/non-zero-uint32.mjs +118 -104
  321. package/dist/number/branded-types/non-zero-uint32.mjs.map +1 -1
  322. package/dist/number/branded-types/positive-finite-number.mjs +167 -160
  323. package/dist/number/branded-types/positive-finite-number.mjs.map +1 -1
  324. package/dist/number/branded-types/positive-int.mjs +260 -224
  325. package/dist/number/branded-types/positive-int.mjs.map +1 -1
  326. package/dist/number/branded-types/positive-int16.mjs +134 -122
  327. package/dist/number/branded-types/positive-int16.mjs.map +1 -1
  328. package/dist/number/branded-types/positive-int32.mjs +134 -122
  329. package/dist/number/branded-types/positive-int32.mjs.map +1 -1
  330. package/dist/number/branded-types/positive-safe-int.mjs +292 -258
  331. package/dist/number/branded-types/positive-safe-int.mjs.map +1 -1
  332. package/dist/number/branded-types/positive-uint16.mjs +134 -122
  333. package/dist/number/branded-types/positive-uint16.mjs.map +1 -1
  334. package/dist/number/branded-types/positive-uint32.mjs +134 -122
  335. package/dist/number/branded-types/positive-uint32.mjs.map +1 -1
  336. package/dist/number/branded-types/safe-int.mjs +284 -255
  337. package/dist/number/branded-types/safe-int.mjs.map +1 -1
  338. package/dist/number/branded-types/safe-uint.mjs +135 -124
  339. package/dist/number/branded-types/safe-uint.mjs.map +1 -1
  340. package/dist/number/branded-types/uint.mjs +248 -211
  341. package/dist/number/branded-types/uint.mjs.map +1 -1
  342. package/dist/number/branded-types/uint16.mjs +132 -121
  343. package/dist/number/branded-types/uint16.mjs.map +1 -1
  344. package/dist/number/branded-types/uint32.mjs +132 -121
  345. package/dist/number/branded-types/uint32.mjs.map +1 -1
  346. package/dist/number/enum/index.mjs +3 -3
  347. package/dist/number/enum/index.mjs.map +1 -1
  348. package/dist/number/enum/int8.mjs +146 -131
  349. package/dist/number/enum/int8.mjs.map +1 -1
  350. package/dist/number/enum/uint8.mjs +133 -119
  351. package/dist/number/enum/uint8.mjs.map +1 -1
  352. package/dist/number/index.mjs +6 -37
  353. package/dist/number/index.mjs.map +1 -1
  354. package/dist/number/num-arithmetic-types.mjs +42 -1
  355. package/dist/number/num-arithmetic-types.mjs.map +1 -1
  356. package/dist/number/num.mjs +541 -83
  357. package/dist/number/num.mjs.map +1 -1
  358. package/dist/number/refined-number-utils.mjs +294 -133
  359. package/dist/number/refined-number-utils.mjs.map +1 -1
  360. package/dist/object/index.mjs +2 -2
  361. package/dist/object/index.mjs.map +1 -1
  362. package/dist/object/object.mjs +355 -202
  363. package/dist/object/object.mjs.map +1 -1
  364. package/dist/others/cast-mutable.mjs +38 -11
  365. package/dist/others/cast-mutable.mjs.map +1 -1
  366. package/dist/others/cast-readonly.mjs +37 -11
  367. package/dist/others/cast-readonly.mjs.map +1 -1
  368. package/dist/others/debounce-function.mjs +22 -11
  369. package/dist/others/debounce-function.mjs.map +1 -1
  370. package/dist/others/fast-deep-equal.mjs +70 -51
  371. package/dist/others/fast-deep-equal.mjs.map +1 -1
  372. package/dist/others/if-then.mjs +32 -5
  373. package/dist/others/if-then.mjs.map +1 -1
  374. package/dist/others/index.mjs +10 -10
  375. package/dist/others/index.mjs.map +1 -1
  376. package/dist/others/map-nullable.mjs +11 -13
  377. package/dist/others/map-nullable.mjs.map +1 -1
  378. package/dist/others/memoize-function.mjs +14 -16
  379. package/dist/others/memoize-function.mjs.map +1 -1
  380. package/dist/others/tuple.mjs +52 -4
  381. package/dist/others/tuple.mjs.map +1 -1
  382. package/dist/others/unknown-to-string.mjs +91 -47
  383. package/dist/others/unknown-to-string.mjs.map +1 -1
  384. package/dist/promise/index.mjs +2 -2
  385. package/dist/promise/index.mjs.map +1 -1
  386. package/dist/promise/promise.mjs +51 -10
  387. package/dist/promise/promise.mjs.map +1 -1
  388. package/dist/string/index.mjs +2 -2
  389. package/dist/string/index.mjs.map +1 -1
  390. package/dist/string/str.mjs +250 -83
  391. package/dist/string/str.mjs.map +1 -1
  392. package/dist/types.mjs +3 -2
  393. package/dist/types.mjs.map +1 -1
  394. package/package.json +5 -6
  395. package/src/array/impl/array-utils-length-constraint-preservation.test.mts +2 -2
  396. package/src/collections/imap-mapped.mts +4 -4
  397. package/src/collections/imap.mts +1 -1
  398. package/src/collections/imap.test.mts +1 -1
  399. package/src/collections/iset-mapped.mts +2 -1
  400. package/src/collections/iset.mts +1 -1
  401. package/src/functional/async-result.test.mts +3 -2
  402. package/src/functional/optional.test.mts +2 -1
  403. package/src/functional/result.test.mts +0 -2
  404. package/src/guard/is-non-empty-string.test.mts +2 -2
  405. package/src/guard/is-non-null-object.test.mts +3 -3
  406. package/src/guard/is-primitive.test.mts +3 -3
  407. package/src/guard/is-type.test.mts +3 -3
  408. package/src/json/json.test.mts +1 -1
  409. package/src/number/enum/int8.mts +1 -1
@@ -1,4 +1,52 @@
1
- const tp = (...args) => args;
2
-
3
- export { tp };
4
- //# sourceMappingURL=tuple.mjs.map
1
+ /**
2
+ * Creates a readonly tuple from the given arguments with precise literal type
3
+ * inference. It is a convenient shorthand for `[...args] as const`.
4
+ *
5
+ * @example
6
+ *
7
+ * ```ts
8
+ * // Create a tuple with literal types preserved
9
+ * const coordinates = tp(10, 20, 30);
10
+ *
11
+ * expectType<typeof coordinates, readonly [10, 20, 30]>('=');
12
+ *
13
+ * expectType<typeof coordinates, readonly number[]>('!=');
14
+ *
15
+ * assert.deepStrictEqual(coordinates, [10, 20, 30]);
16
+ *
17
+ * // The following two are equivalent
18
+ * const a = tp(1, 2);
19
+ *
20
+ * const b = [1, 2] as const;
21
+ *
22
+ * expectType<typeof a, typeof b>('=');
23
+ *
24
+ * assert.deepStrictEqual(a, b);
25
+ *
26
+ * // Without tp, type would be number[]
27
+ * const point = tp('x', 42, true);
28
+ *
29
+ * expectType<typeof point, readonly ['x', 42, true]>('=');
30
+ *
31
+ * assert.deepStrictEqual(point, ['x', 42, true]);
32
+ *
33
+ * // Useful for creating const tuples
34
+ * const rgb = tp(255, 128, 0);
35
+ *
36
+ * expectType<typeof rgb, readonly [255, 128, 0]>('=');
37
+ *
38
+ * assert.isTrue(rgb[0] === 255);
39
+ *
40
+ * assert.isTrue(rgb[1] === 128);
41
+ *
42
+ * assert.isTrue(rgb[2] === 0);
43
+ * ```
44
+ *
45
+ * @template T - A tuple type with literal types inferred from the arguments
46
+ * @param args - The elements to include in the tuple (variadic)
47
+ * @returns A readonly tuple containing the provided arguments with preserved
48
+ * literal types
49
+ * @see https://www.typescriptlang.org/docs/handbook/2/objects.html#tuple-types
50
+ */
51
+ export const tp = (...args) => args;
52
+ //# sourceMappingURL=tuple.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"tuple.mjs","sources":["../../src/others/tuple.mts"],"sourcesContent":["/**\n * Creates a readonly tuple from the given arguments with precise literal type\n * inference. It is a convenient shorthand for `[...args] as const`.\n *\n * @example\n *\n * ```ts\n * // Create a tuple with literal types preserved\n * const coordinates = tp(10, 20, 30);\n *\n * expectType<typeof coordinates, readonly [10, 20, 30]>('=');\n *\n * expectType<typeof coordinates, readonly number[]>('!=');\n *\n * assert.deepStrictEqual(coordinates, [10, 20, 30]);\n *\n * // The following two are equivalent\n * const a = tp(1, 2);\n *\n * const b = [1, 2] as const;\n *\n * expectType<typeof a, typeof b>('=');\n *\n * assert.deepStrictEqual(a, b);\n *\n * // Without tp, type would be number[]\n * const point = tp('x', 42, true);\n *\n * expectType<typeof point, readonly ['x', 42, true]>('=');\n *\n * assert.deepStrictEqual(point, ['x', 42, true]);\n *\n * // Useful for creating const tuples\n * const rgb = tp(255, 128, 0);\n *\n * expectType<typeof rgb, readonly [255, 128, 0]>('=');\n *\n * assert.isTrue(rgb[0] === 255);\n *\n * assert.isTrue(rgb[1] === 128);\n *\n * assert.isTrue(rgb[2] === 0);\n * ```\n *\n * @template T - A tuple type with literal types inferred from the arguments\n * @param args - The elements to include in the tuple (variadic)\n * @returns A readonly tuple containing the provided arguments with preserved\n * literal types\n * @see https://www.typescriptlang.org/docs/handbook/2/objects.html#tuple-types\n */\nexport const tp = <const T extends readonly unknown[]>(\n ...args: T\n): Readonly<T> => args;\n"],"names":[],"mappings":"AAkDO,MAAM,EAAA,GAAK,IACb,IAAA,KACa;;;;"}
1
+ {"version":3,"file":"tuple.mjs","sourceRoot":"","sources":["../../src/others/tuple.mts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiDG;AACH,MAAM,CAAC,MAAM,EAAE,GAAG,CAChB,GAAG,IAAO,EACG,EAAE,CAAC,IAAI,CAAC"}
@@ -1,50 +1,94 @@
1
- import { isDate, isRegExp, isError, isMap, isSet } from '@sindresorhus/is';
2
-
3
- const unknownToString = (value, options) => {
4
- switch (typeof value) {
5
- case "string":
6
- return value;
7
- case "bigint":
8
- return `${value.toString()}n`;
9
- case "number":
10
- case "boolean":
11
- case "symbol":
12
- case "function":
13
- return value.toString();
14
- case "undefined":
15
- return "undefined";
16
- case "object": {
17
- if (value === null) {
18
- return "null";
19
- }
20
- try {
21
- if (isDate(value)) {
22
- return value.toISOString();
1
+ import { isDate, isError, isMap, isRegExp, isSet } from '@sindresorhus/is';
2
+ /**
3
+ * Converts an unknown value to its string representation in a type-safe manner.
4
+ *
5
+ * This function handles all JavaScript types and provides consistent string
6
+ * conversion with proper error handling for edge cases like circular
7
+ * references. Unlike naive toString() calls, this function never throws and
8
+ * handles all value types gracefully.
9
+ *
10
+ * **Type conversion rules:**
11
+ *
12
+ * - Strings: returned as-is
13
+ * - Numbers, booleans, bigints: converted via toString()
14
+ * - Symbols: converted to their description string
15
+ * - Functions: converted to their string representation
16
+ * - null: returns "null" (not "null" from JSON)
17
+ * - undefined: returns "undefined"
18
+ * - Date: converted to ISO string
19
+ * - RegExp: converted to regex literal string
20
+ * - Map: converted to Map representation with entries
21
+ * - Set: converted to Set representation with values
22
+ * - Error: returns error message
23
+ * - Objects: JSON stringified (with optional pretty printing)
24
+ *
25
+ * @param value - The unknown value to convert to string
26
+ * @param options - Optional configuration for the conversion
27
+ * @param options.prettyPrintObject - If true, objects are formatted with
28
+ * 2-space indentation
29
+ * @returns The string representation of the value. For circular references or
30
+ * non-serializable objects, returns an error message string
31
+ *
32
+ * **Error Handling:** Circular references and non-serializable objects return
33
+ * descriptive error messages instead of throwing
34
+ * @see JSON.stringify - Underlying serialization for objects
35
+ */
36
+ export const unknownToString = (value, options) => {
37
+ switch (typeof value) {
38
+ case 'string':
39
+ return value;
40
+ case 'bigint':
41
+ return `${value.toString()}n`;
42
+ case 'number':
43
+ case 'boolean':
44
+ case 'symbol':
45
+ case 'function':
46
+ return value.toString();
47
+ case 'undefined':
48
+ return 'undefined';
49
+ case 'object': {
50
+ if (value === null) {
51
+ return 'null';
52
+ }
53
+ try {
54
+ // Special handling for Date
55
+ if (isDate(value)) {
56
+ return value.toISOString();
57
+ }
58
+ // Special handling for RegExp
59
+ if (isRegExp(value)) {
60
+ return value.toString();
61
+ }
62
+ if (isError(value)) {
63
+ return value.message;
64
+ }
65
+ const prettyPrintObject = options?.prettyPrintObject === true;
66
+ // Special handling for Map
67
+ if (isMap(value)) {
68
+ const entries = Array.from(value);
69
+ const entriesStr = prettyPrintObject
70
+ ? JSON.stringify(entries, undefined, 2)
71
+ : JSON.stringify(entries);
72
+ return `Map(${entriesStr})`;
73
+ }
74
+ // Special handling for Set
75
+ if (isSet(value)) {
76
+ const values = Array.from(value);
77
+ const valuesStr = prettyPrintObject
78
+ ? JSON.stringify(values, undefined, 2)
79
+ : JSON.stringify(values);
80
+ return `Set(${valuesStr})`;
81
+ }
82
+ return prettyPrintObject
83
+ ? JSON.stringify(value, undefined, 2)
84
+ : JSON.stringify(value);
85
+ }
86
+ catch (error) {
87
+ return isError(error)
88
+ ? error.message
89
+ : '[Circular or Non-serializable]';
90
+ }
23
91
  }
24
- if (isRegExp(value)) {
25
- return value.toString();
26
- }
27
- if (isError(value)) {
28
- return value.message;
29
- }
30
- const prettyPrintObject = options?.prettyPrintObject === true;
31
- if (isMap(value)) {
32
- const entries = Array.from(value);
33
- const entriesStr = prettyPrintObject ? JSON.stringify(entries, void 0, 2) : JSON.stringify(entries);
34
- return `Map(${entriesStr})`;
35
- }
36
- if (isSet(value)) {
37
- const values = Array.from(value);
38
- const valuesStr = prettyPrintObject ? JSON.stringify(values, void 0, 2) : JSON.stringify(values);
39
- return `Set(${valuesStr})`;
40
- }
41
- return prettyPrintObject ? JSON.stringify(value, void 0, 2) : JSON.stringify(value);
42
- } catch (error) {
43
- return isError(error) ? error.message : "[Circular or Non-serializable]";
44
- }
45
92
  }
46
- }
47
93
  };
48
-
49
- export { unknownToString };
50
- //# sourceMappingURL=unknown-to-string.mjs.map
94
+ //# sourceMappingURL=unknown-to-string.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"unknown-to-string.mjs","sources":["../../src/others/unknown-to-string.mts"],"sourcesContent":["import { isDate, isError, isMap, isRegExp, isSet } from '@sindresorhus/is';\n\n/**\n * Converts an unknown value to its string representation in a type-safe manner.\n *\n * This function handles all JavaScript types and provides consistent string\n * conversion with proper error handling for edge cases like circular\n * references. Unlike naive toString() calls, this function never throws and\n * handles all value types gracefully.\n *\n * **Type conversion rules:**\n *\n * - Strings: returned as-is\n * - Numbers, booleans, bigints: converted via toString()\n * - Symbols: converted to their description string\n * - Functions: converted to their string representation\n * - null: returns \"null\" (not \"null\" from JSON)\n * - undefined: returns \"undefined\"\n * - Date: converted to ISO string\n * - RegExp: converted to regex literal string\n * - Map: converted to Map representation with entries\n * - Set: converted to Set representation with values\n * - Error: returns error message\n * - Objects: JSON stringified (with optional pretty printing)\n *\n * @param value - The unknown value to convert to string\n * @param options - Optional configuration for the conversion\n * @param options.prettyPrintObject - If true, objects are formatted with\n * 2-space indentation\n * @returns The string representation of the value. For circular references or\n * non-serializable objects, returns an error message string\n *\n * **Error Handling:** Circular references and non-serializable objects return\n * descriptive error messages instead of throwing\n * @see JSON.stringify - Underlying serialization for objects\n */\nexport const unknownToString = (\n value: unknown,\n options?: Partial<Readonly<{ prettyPrintObject: boolean }>>,\n): string => {\n switch (typeof value) {\n case 'string':\n return value;\n\n case 'bigint':\n return `${value.toString()}n`;\n\n case 'number':\n case 'boolean':\n case 'symbol':\n case 'function':\n return value.toString();\n\n case 'undefined':\n return 'undefined';\n\n case 'object': {\n if (value === null) {\n return 'null';\n }\n\n try {\n // Special handling for Date\n if (isDate(value)) {\n return value.toISOString();\n }\n\n // Special handling for RegExp\n if (isRegExp(value)) {\n return value.toString();\n }\n\n if (isError(value)) {\n return value.message;\n }\n\n const prettyPrintObject = options?.prettyPrintObject === true;\n\n // Special handling for Map\n if (isMap(value)) {\n const entries = Array.from(value);\n\n const entriesStr = prettyPrintObject\n ? JSON.stringify(entries, undefined, 2)\n : JSON.stringify(entries);\n\n return `Map(${entriesStr})`;\n }\n\n // Special handling for Set\n if (isSet(value)) {\n const values = Array.from(value);\n\n const valuesStr = prettyPrintObject\n ? JSON.stringify(values, undefined, 2)\n : JSON.stringify(values);\n\n return `Set(${valuesStr})`;\n }\n\n return prettyPrintObject\n ? JSON.stringify(value, undefined, 2)\n : JSON.stringify(value);\n } catch (error) {\n return isError(error)\n ? error.message\n : '[Circular or Non-serializable]';\n }\n }\n }\n};\n"],"names":[],"mappings":";;AAoCO,MAAM,eAAA,GAAkB,CAC7B,KAAA,EACA,OAAA,KACW;AACX,EAAA,QAAQ,OAAO,KAAA;AAAO,IACpB,KAAK,QAAA;AACH,MAAA,OAAO,KAAA;AAAA,IAET,KAAK,QAAA;AACH,MAAA,OAAO,CAAA,EAAG,KAAA,CAAM,QAAA,EAAU,CAAA,CAAA,CAAA;AAAA,IAE5B,KAAK,QAAA;AAAA,IACL,KAAK,SAAA;AAAA,IACL,KAAK,QAAA;AAAA,IACL,KAAK,UAAA;AACH,MAAA,OAAO,MAAM,QAAA,EAAS;AAAA,IAExB,KAAK,WAAA;AACH,MAAA,OAAO,WAAA;AAAA,IAET,KAAK,QAAA,EAAU;AACb,MAAA,IAAI,UAAU,IAAA,EAAM;AAClB,QAAA,OAAO,MAAA;AAAA,MACT;AAEA,MAAA,IAAI;AAEF,QAAA,IAAI,MAAA,CAAO,KAAK,CAAA,EAAG;AACjB,UAAA,OAAO,MAAM,WAAA,EAAY;AAAA,QAC3B;AAGA,QAAA,IAAI,QAAA,CAAS,KAAK,CAAA,EAAG;AACnB,UAAA,OAAO,MAAM,QAAA,EAAS;AAAA,QACxB;AAEA,QAAA,IAAI,OAAA,CAAQ,KAAK,CAAA,EAAG;AAClB,UAAA,OAAO,KAAA,CAAM,OAAA;AAAA,QACf;AAEA,QAAA,MAAM,iBAAA,GAAoB,SAAS,iBAAA,KAAsB,IAAA;AAGzD,QAAA,IAAI,KAAA,CAAM,KAAK,CAAA,EAAG;AAChB,UAAA,MAAM,OAAA,GAAU,KAAA,CAAM,IAAA,CAAK,KAAK,CAAA;AAEhC,UAAA,MAAM,UAAA,GAAa,iBAAA,GACf,IAAA,CAAK,SAAA,CAAU,OAAA,EAAS,QAAW,CAAC,CAAA,GACpC,IAAA,CAAK,SAAA,CAAU,OAAO,CAAA;AAE1B,UAAA,OAAO,OAAO,UAAU,CAAA,CAAA,CAAA;AAAA,QAC1B;AAGA,QAAA,IAAI,KAAA,CAAM,KAAK,CAAA,EAAG;AAChB,UAAA,MAAM,MAAA,GAAS,KAAA,CAAM,IAAA,CAAK,KAAK,CAAA;AAE/B,UAAA,MAAM,SAAA,GAAY,iBAAA,GACd,IAAA,CAAK,SAAA,CAAU,MAAA,EAAQ,QAAW,CAAC,CAAA,GACnC,IAAA,CAAK,SAAA,CAAU,MAAM,CAAA;AAEzB,UAAA,OAAO,OAAO,SAAS,CAAA,CAAA,CAAA;AAAA,QACzB;AAEA,QAAA,OAAO,iBAAA,GACH,KAAK,SAAA,CAAU,KAAA,EAAO,QAAW,CAAC,CAAA,GAClC,IAAA,CAAK,SAAA,CAAU,KAAK,CAAA;AAAA,MAC1B,SAAS,KAAA,EAAO;AACd,QAAA,OAAO,OAAA,CAAQ,KAAK,CAAA,GAChB,KAAA,CAAM,OAAA,GACN,gCAAA;AAAA,MACN;AAAA,IACF;AAAA;AAEJ;;;;"}
1
+ {"version":3,"file":"unknown-to-string.mjs","sourceRoot":"","sources":["../../src/others/unknown-to-string.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAE3E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAC7B,KAAc,EACd,OAA2D,EACnD,EAAE;IACV,QAAQ,OAAO,KAAK,EAAE,CAAC;QACrB,KAAK,QAAQ;YACX,OAAO,KAAK,CAAC;QAEf,KAAK,QAAQ;YACX,OAAO,GAAG,KAAK,CAAC,QAAQ,EAAE,GAAG,CAAC;QAEhC,KAAK,QAAQ,CAAC;QACd,KAAK,SAAS,CAAC;QACf,KAAK,QAAQ,CAAC;QACd,KAAK,UAAU;YACb,OAAO,KAAK,CAAC,QAAQ,EAAE,CAAC;QAE1B,KAAK,WAAW;YACd,OAAO,WAAW,CAAC;QAErB,KAAK,QAAQ,EAAE,CAAC;YACd,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;gBACnB,OAAO,MAAM,CAAC;YAChB,CAAC;YAED,IAAI,CAAC;gBACH,4BAA4B;gBAC5B,IAAI,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;oBAClB,OAAO,KAAK,CAAC,WAAW,EAAE,CAAC;gBAC7B,CAAC;gBAED,8BAA8B;gBAC9B,IAAI,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;oBACpB,OAAO,KAAK,CAAC,QAAQ,EAAE,CAAC;gBAC1B,CAAC;gBAED,IAAI,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;oBACnB,OAAO,KAAK,CAAC,OAAO,CAAC;gBACvB,CAAC;gBAED,MAAM,iBAAiB,GAAG,OAAO,EAAE,iBAAiB,KAAK,IAAI,CAAC;gBAE9D,2BAA2B;gBAC3B,IAAI,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;oBACjB,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBAElC,MAAM,UAAU,GAAG,iBAAiB;wBAClC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;wBACvC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;oBAE5B,OAAO,OAAO,UAAU,GAAG,CAAC;gBAC9B,CAAC;gBAED,2BAA2B;gBAC3B,IAAI,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;oBACjB,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBAEjC,MAAM,SAAS,GAAG,iBAAiB;wBACjC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;wBACtC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;oBAE3B,OAAO,OAAO,SAAS,GAAG,CAAC;gBAC7B,CAAC;gBAED,OAAO,iBAAiB;oBACtB,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;oBACrC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;YAC5B,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,OAAO,CAAC,KAAK,CAAC;oBACnB,CAAC,CAAC,KAAK,CAAC,OAAO;oBACf,CAAC,CAAC,gCAAgC,CAAC;YACvC,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC,CAAC"}
@@ -1,2 +1,2 @@
1
- export { createPromise } from './promise.mjs';
2
- //# sourceMappingURL=index.mjs.map
1
+ export * from './promise.mjs';
2
+ //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
1
+ {"version":3,"file":"index.mjs","sourceRoot":"","sources":["../../src/promise/index.mts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC"}
@@ -1,10 +1,51 @@
1
- import { fromPromise } from '../functional/result/impl/result-from-promise.mjs';
2
- import '@sindresorhus/is';
3
-
4
- const createPromise = (executor) => (
5
- // eslint-disable-next-line total-functions/no-unsafe-type-assertion
6
- fromPromise(new Promise(executor))
7
- );
8
-
9
- export { createPromise };
10
- //# sourceMappingURL=promise.mjs.map
1
+ import { Result } from '../functional/index.mjs';
2
+ /**
3
+ * Creates a Promise that wraps the result in a Result type for type-safe error
4
+ * handling. This function is an alternative to `new Promise(executor)` that
5
+ * provides enhanced type safety by returning a Result type instead of throwing
6
+ * exceptions.
7
+ *
8
+ * @example
9
+ *
10
+ * ```ts
11
+ * // Create a promise that resolves successfully
12
+ * const successPromise = createPromise<number, string>((resolve) => {
13
+ * setTimeout(() => {
14
+ * resolve(42);
15
+ * }, 0);
16
+ * });
17
+ *
18
+ * const successResult = await successPromise;
19
+ *
20
+ * assert.isTrue(Result.isOk(successResult));
21
+ *
22
+ * if (Result.isOk(successResult)) {
23
+ * assert.isTrue(successResult.value === 42);
24
+ * }
25
+ *
26
+ * // Create a promise that rejects with an error
27
+ * const errorPromise = createPromise<number, string>((_, reject) => {
28
+ * setTimeout(() => {
29
+ * reject('Something went wrong');
30
+ * }, 0);
31
+ * });
32
+ *
33
+ * const errorResult = await errorPromise;
34
+ *
35
+ * assert.isTrue(Result.isErr(errorResult));
36
+ *
37
+ * if (Result.isErr(errorResult)) {
38
+ * assert.isTrue(errorResult.value === 'Something went wrong');
39
+ * }
40
+ * ```
41
+ *
42
+ * @template S - The type of successful value
43
+ * @template E - The type of error value
44
+ * @param executor - Function that takes resolve and reject callbacks
45
+ * @returns A Promise that resolves to a Result containing either success or
46
+ * error
47
+ */
48
+ export const createPromise = (executor) =>
49
+ // eslint-disable-next-line total-functions/no-unsafe-type-assertion
50
+ Result.fromPromise(new Promise(executor));
51
+ //# sourceMappingURL=promise.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"promise.mjs","sources":["../../src/promise/promise.mts"],"sourcesContent":["import { Result } from '../functional/index.mjs';\n\n/**\n * Creates a Promise that wraps the result in a Result type for type-safe error\n * handling. This function is an alternative to `new Promise(executor)` that\n * provides enhanced type safety by returning a Result type instead of throwing\n * exceptions.\n *\n * @example\n *\n * ```ts\n * // Create a promise that resolves successfully\n * const successPromise = createPromise<number, string>((resolve) => {\n * setTimeout(() => {\n * resolve(42);\n * }, 0);\n * });\n *\n * const successResult = await successPromise;\n *\n * assert.isTrue(Result.isOk(successResult));\n *\n * if (Result.isOk(successResult)) {\n * assert.isTrue(successResult.value === 42);\n * }\n *\n * // Create a promise that rejects with an error\n * const errorPromise = createPromise<number, string>((_, reject) => {\n * setTimeout(() => {\n * reject('Something went wrong');\n * }, 0);\n * });\n *\n * const errorResult = await errorPromise;\n *\n * assert.isTrue(Result.isErr(errorResult));\n *\n * if (Result.isErr(errorResult)) {\n * assert.isTrue(errorResult.value === 'Something went wrong');\n * }\n * ```\n *\n * @template S - The type of successful value\n * @template E - The type of error value\n * @param executor - Function that takes resolve and reject callbacks\n * @returns A Promise that resolves to a Result containing either success or\n * error\n */\nexport const createPromise = <S, E>(\n executor: (resolve: (value: S) => void, reject: (reason?: E) => void) => void,\n): Promise<Result<S, E>> =>\n // eslint-disable-next-line total-functions/no-unsafe-type-assertion\n Result.fromPromise(new Promise<S>(executor)) satisfies Promise<\n Result<S, unknown>\n > as Promise<Result<S, E>>;\n"],"names":["Result.fromPromise"],"mappings":";;;AAgDO,MAAM,gBAAgB,CAC3B,QAAA;AAAA;AAAA,EAGAA,WAAO,CAAY,IAAI,OAAA,CAAW,QAAQ,CAAC;AAAA;;;;"}
1
+ {"version":3,"file":"promise.mjs","sourceRoot":"","sources":["../../src/promise/promise.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAEjD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,CAC3B,QAA6E,EACtD,EAAE;AACzB,oEAAoE;AACpE,MAAM,CAAC,WAAW,CAAC,IAAI,OAAO,CAAI,QAAQ,CAAC,CAEjB,CAAC"}
@@ -1,2 +1,2 @@
1
- export { Str } from './str.mjs';
2
- //# sourceMappingURL=index.mjs.map
1
+ export * from './str.mjs';
2
+ //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
1
+ {"version":3,"file":"index.mjs","sourceRoot":"","sources":["../../src/string/index.mts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC"}