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,126 +1,138 @@
1
- import { TsDataForgeInternals } from '../refined-number-utils.mjs';
2
1
 
3
- const typeNameInMessage = "a positive integer in [1, 2^16)";
4
- const {
5
- MAX_VALUE,
6
- MIN_VALUE,
7
- add,
8
- castType,
9
- div,
10
- fromNumber,
11
- is,
12
- max: max_,
13
- min: min_,
14
- mul,
15
- pow,
16
- random,
17
- sub
18
- } = TsDataForgeInternals.RefinedNumberUtils.operatorsForInteger({
19
- integerOrSafeInteger: "SafeInteger",
20
- MIN_VALUE: 1,
21
- MAX_VALUE: 2 ** 16 - 1,
22
- typeNameInMessage
2
+ import { TsDataForgeInternals } from '../refined-number-utils.mjs';
3
+ const typeNameInMessage = 'a positive integer in [1, 2^16)';
4
+ const { MAX_VALUE, MIN_VALUE, add, castType, div, fromNumber, is, max: max_, min: min_, mul, pow, random, sub, } = TsDataForgeInternals.RefinedNumberUtils.operatorsForInteger({
5
+ integerOrSafeInteger: 'SafeInteger',
6
+ MIN_VALUE: 1,
7
+ MAX_VALUE: 2 ** 16 - 1,
8
+ typeNameInMessage,
23
9
  });
24
- const isPositiveUint16 = is;
25
- const asPositiveUint16 = castType;
26
- const PositiveUint16 = {
27
- /**
28
- * Type guard that checks if a value is a positive integer in [1, 2^16).
29
- *
30
- * @param value - The value to check
31
- * @returns `true` if the value is a positive integer in [1, 2^16), `false` otherwise
32
- * @see {@link isPositiveUint16} for usage examples
33
- */
34
- is,
35
- /**
36
- * The smallest value representable as `PositiveUint16` (the lower saturation
37
- * target of `fromNumber`).
38
- */
39
- MIN_VALUE,
40
- /**
41
- * The largest value representable as `PositiveUint16` (the upper saturation
42
- * target of `fromNumber`).
43
- */
44
- MAX_VALUE,
45
- /**
46
- * Returns the smallest of the given positive integers.
47
- *
48
- * @param values - The positive integers to compare (at least one required)
49
- * @returns The smallest value as a `PositiveUint16`
50
- */
51
- min: min_,
52
- /**
53
- * Returns the largest of the given positive integers.
54
- *
55
- * @param values - The positive integers to compare (at least one required)
56
- * @returns The largest value as a `PositiveUint16`
57
- */
58
- max: max_,
59
- /**
60
- * Converts an arbitrary `number` into a `PositiveUint16`, rounding to the
61
- * nearest integer and saturating the result into the range `[MIN_VALUE,
62
- * MAX_VALUE]`.
63
- *
64
- * Unlike `asPositiveUint16`, this is total: out-of-range inputs are clamped
65
- * to the nearest representable `PositiveUint16` instead of throwing.
66
- *
67
- * @param value - The value to convert
68
- * @returns The value as a `PositiveUint16`
69
- */
70
- fromNumber,
71
- /**
72
- * Generates a random `PositiveUint16` within the given range.
73
- *
74
- * The range is inclusive on both ends.
75
- *
76
- * @param min - The minimum value (inclusive)
77
- * @param max - The maximum value (inclusive)
78
- * @returns A random `PositiveUint16` in `[min, max]`
79
- */
80
- random,
81
- /**
82
- * Raises `a` to the power `b`, returning `a ** b` as a `PositiveUint16`
83
- * (floored to an integer).
84
- *
85
- * @param a - The base positive integer
86
- * @param b - The exponent positive integer
87
- * @returns `a ** b` as a `PositiveUint16`
88
- */
89
- pow,
90
- /**
91
- * Adds two positive integers, returning `a + b` as a `PositiveUint16`.
92
- *
93
- * @param a - The first positive integer
94
- * @param b - The second positive integer
95
- * @returns The sum of `a` and `b` as a `PositiveUint16`
96
- */
97
- add,
98
- /**
99
- * Subtracts two positive integers, returning `a - b` as a `PositiveUint16`.
100
- *
101
- * @param a - The first positive integer
102
- * @param b - The second positive integer
103
- * @returns The difference of `a` and `b` as a `PositiveUint16`
104
- */
105
- sub,
106
- /**
107
- * Multiplies two positive integers, returning `a * b` as a `PositiveUint16`.
108
- *
109
- * @param a - The first positive integer
110
- * @param b - The second positive integer
111
- * @returns The product of `a` and `b` as a `PositiveUint16`
112
- */
113
- mul,
114
- /**
115
- * Divides two positive integers using floor division (`⌊a / b⌋`): the result
116
- * is `a / b` rounded toward negative infinity, as a `PositiveUint16`.
117
- *
118
- * @param a - The dividend
119
- * @param b - The divisor (must be non-zero)
120
- * @returns The floored quotient as a `PositiveUint16`
121
- */
122
- div
10
+ /**
11
+ * Type guard that checks if a value is a positive integer in [1, 2^16).
12
+ *
13
+ * Returns `true` for a positive integer in [1, 2^16) — a value with no
14
+ * fractional component.
15
+ *
16
+ * @param value - The value to check
17
+ * @returns `true` if the value is a positive integer in [1, 2^16), `false` otherwise
18
+ */
19
+ export const isPositiveUint16 = is;
20
+ /**
21
+ * Casts a `number` to the `PositiveUint16` branded type.
22
+ *
23
+ * Validates that the value is a positive integer in [1, 2^16) and returns it
24
+ * with the `PositiveUint16` brand. Throws a `TypeError` otherwise.
25
+ *
26
+ * @param value - The value to cast
27
+ * @returns The value as a `PositiveUint16`
28
+ * @throws {TypeError} If the value is not a positive integer in [1, 2^16)
29
+ */
30
+ export const asPositiveUint16 = castType;
31
+ /**
32
+ * Namespace providing type-safe operations for the `PositiveUint16` branded
33
+ * type.
34
+ *
35
+ * The `PositiveUint16` type represents a positive integer in [1, 2^16).
36
+ * Division (`div`) uses floor division.
37
+ */
38
+ export const PositiveUint16 = {
39
+ /**
40
+ * Type guard that checks if a value is a positive integer in [1, 2^16).
41
+ *
42
+ * @param value - The value to check
43
+ * @returns `true` if the value is a positive integer in [1, 2^16), `false` otherwise
44
+ * @see {@link isPositiveUint16} for usage examples
45
+ */
46
+ is,
47
+ /**
48
+ * The smallest value representable as `PositiveUint16` (the lower saturation
49
+ * target of `fromNumber`).
50
+ */
51
+ MIN_VALUE,
52
+ /**
53
+ * The largest value representable as `PositiveUint16` (the upper saturation
54
+ * target of `fromNumber`).
55
+ */
56
+ MAX_VALUE,
57
+ /**
58
+ * Returns the smallest of the given positive integers.
59
+ *
60
+ * @param values - The positive integers to compare (at least one required)
61
+ * @returns The smallest value as a `PositiveUint16`
62
+ */
63
+ min: min_,
64
+ /**
65
+ * Returns the largest of the given positive integers.
66
+ *
67
+ * @param values - The positive integers to compare (at least one required)
68
+ * @returns The largest value as a `PositiveUint16`
69
+ */
70
+ max: max_,
71
+ /**
72
+ * Converts an arbitrary `number` into a `PositiveUint16`, rounding to the
73
+ * nearest integer and saturating the result into the range `[MIN_VALUE,
74
+ * MAX_VALUE]`.
75
+ *
76
+ * Unlike `asPositiveUint16`, this is total: out-of-range inputs are clamped
77
+ * to the nearest representable `PositiveUint16` instead of throwing.
78
+ *
79
+ * @param value - The value to convert
80
+ * @returns The value as a `PositiveUint16`
81
+ */
82
+ fromNumber,
83
+ /**
84
+ * Generates a random `PositiveUint16` within the given range.
85
+ *
86
+ * The range is inclusive on both ends.
87
+ *
88
+ * @param min - The minimum value (inclusive)
89
+ * @param max - The maximum value (inclusive)
90
+ * @returns A random `PositiveUint16` in `[min, max]`
91
+ */
92
+ random,
93
+ /**
94
+ * Raises `a` to the power `b`, returning `a ** b` as a `PositiveUint16`
95
+ * (floored to an integer).
96
+ *
97
+ * @param a - The base positive integer
98
+ * @param b - The exponent positive integer
99
+ * @returns `a ** b` as a `PositiveUint16`
100
+ */
101
+ pow,
102
+ /**
103
+ * Adds two positive integers, returning `a + b` as a `PositiveUint16`.
104
+ *
105
+ * @param a - The first positive integer
106
+ * @param b - The second positive integer
107
+ * @returns The sum of `a` and `b` as a `PositiveUint16`
108
+ */
109
+ add,
110
+ /**
111
+ * Subtracts two positive integers, returning `a - b` as a `PositiveUint16`.
112
+ *
113
+ * @param a - The first positive integer
114
+ * @param b - The second positive integer
115
+ * @returns The difference of `a` and `b` as a `PositiveUint16`
116
+ */
117
+ sub,
118
+ /**
119
+ * Multiplies two positive integers, returning `a * b` as a `PositiveUint16`.
120
+ *
121
+ * @param a - The first positive integer
122
+ * @param b - The second positive integer
123
+ * @returns The product of `a` and `b` as a `PositiveUint16`
124
+ */
125
+ mul,
126
+ /**
127
+ * Divides two positive integers using floor division (`⌊a / b⌋`): the result
128
+ * is `a / b` rounded toward negative infinity, as a `PositiveUint16`.
129
+ *
130
+ * @param a - The dividend
131
+ * @param b - The divisor (must be non-zero)
132
+ * @returns The floored quotient as a `PositiveUint16`
133
+ */
134
+ div,
123
135
  };
124
136
 
125
- export { PositiveUint16, asPositiveUint16, isPositiveUint16 };
126
- //# sourceMappingURL=positive-uint16.mjs.map
137
+
138
+ //# sourceMappingURL=positive-uint16.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"positive-uint16.mjs","sources":["../../../src/number/branded-types/positive-uint16.mts"],"sourcesContent":["import { type PositiveUint16 as TtfImported_PositiveUint16 } from 'ts-type-forge';\nimport { expectType } from '../../expect-type.mjs';\nimport { TsDataForgeInternals } from '../refined-number-utils.mjs';\n\nexport type PositiveUint16 = TtfImported_PositiveUint16;\n\ntype ElementType = PositiveUint16;\n\nconst typeNameInMessage = 'a positive integer in [1, 2^16)';\n\nconst {\n MAX_VALUE,\n MIN_VALUE,\n add,\n castType,\n div,\n fromNumber,\n is,\n max: max_,\n min: min_,\n mul,\n pow,\n random,\n sub,\n} = TsDataForgeInternals.RefinedNumberUtils.operatorsForInteger<\n ElementType,\n 1,\n number\n>({\n integerOrSafeInteger: 'SafeInteger',\n MIN_VALUE: 1,\n MAX_VALUE: 2 ** 16 - 1,\n typeNameInMessage,\n} as const);\n\n/**\n * Type guard that checks if a value is a positive integer in [1, 2^16).\n *\n * Returns `true` for a positive integer in [1, 2^16) — a value with no\n * fractional component.\n *\n * @param value - The value to check\n * @returns `true` if the value is a positive integer in [1, 2^16), `false` otherwise\n */\nexport const isPositiveUint16 = is;\n\n/**\n * Casts a `number` to the `PositiveUint16` branded type.\n *\n * Validates that the value is a positive integer in [1, 2^16) and returns it\n * with the `PositiveUint16` brand. Throws a `TypeError` otherwise.\n *\n * @param value - The value to cast\n * @returns The value as a `PositiveUint16`\n * @throws {TypeError} If the value is not a positive integer in [1, 2^16)\n */\nexport const asPositiveUint16 = castType;\n\n/**\n * Namespace providing type-safe operations for the `PositiveUint16` branded\n * type.\n *\n * The `PositiveUint16` type represents a positive integer in [1, 2^16).\n * Division (`div`) uses floor division.\n */\nexport const PositiveUint16 = {\n /**\n * Type guard that checks if a value is a positive integer in [1, 2^16).\n *\n * @param value - The value to check\n * @returns `true` if the value is a positive integer in [1, 2^16), `false` otherwise\n * @see {@link isPositiveUint16} for usage examples\n */\n is,\n\n /**\n * The smallest value representable as `PositiveUint16` (the lower saturation\n * target of `fromNumber`).\n */\n MIN_VALUE,\n\n /**\n * The largest value representable as `PositiveUint16` (the upper saturation\n * target of `fromNumber`).\n */\n MAX_VALUE,\n\n /**\n * Returns the smallest of the given positive integers.\n *\n * @param values - The positive integers to compare (at least one required)\n * @returns The smallest value as a `PositiveUint16`\n */\n min: min_,\n\n /**\n * Returns the largest of the given positive integers.\n *\n * @param values - The positive integers to compare (at least one required)\n * @returns The largest value as a `PositiveUint16`\n */\n max: max_,\n\n /**\n * Converts an arbitrary `number` into a `PositiveUint16`, rounding to the\n * nearest integer and saturating the result into the range `[MIN_VALUE,\n * MAX_VALUE]`.\n *\n * Unlike `asPositiveUint16`, this is total: out-of-range inputs are clamped\n * to the nearest representable `PositiveUint16` instead of throwing.\n *\n * @param value - The value to convert\n * @returns The value as a `PositiveUint16`\n */\n fromNumber,\n\n /**\n * Generates a random `PositiveUint16` within the given range.\n *\n * The range is inclusive on both ends.\n *\n * @param min - The minimum value (inclusive)\n * @param max - The maximum value (inclusive)\n * @returns A random `PositiveUint16` in `[min, max]`\n */\n random,\n\n /**\n * Raises `a` to the power `b`, returning `a ** b` as a `PositiveUint16`\n * (floored to an integer).\n *\n * @param a - The base positive integer\n * @param b - The exponent positive integer\n * @returns `a ** b` as a `PositiveUint16`\n */\n pow,\n\n /**\n * Adds two positive integers, returning `a + b` as a `PositiveUint16`.\n *\n * @param a - The first positive integer\n * @param b - The second positive integer\n * @returns The sum of `a` and `b` as a `PositiveUint16`\n */\n add,\n\n /**\n * Subtracts two positive integers, returning `a - b` as a `PositiveUint16`.\n *\n * @param a - The first positive integer\n * @param b - The second positive integer\n * @returns The difference of `a` and `b` as a `PositiveUint16`\n */\n sub,\n\n /**\n * Multiplies two positive integers, returning `a * b` as a `PositiveUint16`.\n *\n * @param a - The first positive integer\n * @param b - The second positive integer\n * @returns The product of `a` and `b` as a `PositiveUint16`\n */\n mul,\n\n /**\n * Divides two positive integers using floor division (`⌊a / b⌋`): the result\n * is `a / b` rounded toward negative infinity, as a `PositiveUint16`.\n *\n * @param a - The dividend\n * @param b - The divisor (must be non-zero)\n * @returns The floored quotient as a `PositiveUint16`\n */\n div,\n} as const;\n\nexpectType<\n keyof typeof PositiveUint16,\n keyof TsDataForgeInternals.RefinedNumberUtils.NumberClass<\n ElementType,\n 'int' | 'positive' | 'range'\n >\n>('=');\n\nexpectType<\n typeof PositiveUint16,\n TsDataForgeInternals.RefinedNumberUtils.NumberClass<\n ElementType,\n 'int' | 'positive' | 'range'\n >\n>('<=');\n"],"names":[],"mappings":";;AAQA,MAAM,iBAAA,GAAoB,iCAAA;AAE1B,MAAM;AAAA,EACJ,SAAA;AAAA,EACA,SAAA;AAAA,EACA,GAAA;AAAA,EACA,QAAA;AAAA,EACA,GAAA;AAAA,EACA,UAAA;AAAA,EACA,EAAA;AAAA,EACA,GAAA,EAAK,IAAA;AAAA,EACL,GAAA,EAAK,IAAA;AAAA,EACL,GAAA;AAAA,EACA,GAAA;AAAA,EACA,MAAA;AAAA,EACA;AACF,CAAA,GAAI,oBAAA,CAAqB,mBAAmB,mBAAA,CAI1C;AAAA,EACA,oBAAA,EAAsB,aAAA;AAAA,EACtB,SAAA,EAAW,CAAA;AAAA,EACX,SAAA,EAAW,KAAK,EAAA,GAAK,CAAA;AAAA,EACrB;AACF,CAAU,CAAA;AAWH,MAAM,gBAAA,GAAmB;AAYzB,MAAM,gBAAA,GAAmB;AASzB,MAAM,cAAA,GAAiB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQ5B,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,SAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,SAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,GAAA,EAAK,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQL,GAAA,EAAK,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAaL,UAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAWA,MAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUA,GAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,GAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,GAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,GAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUA;AACF;;;;"}
1
+ {"version":3,"file":"positive-uint16.mjs","sourceRoot":"","sources":["../../../src/number/branded-types/positive-uint16.mts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAMnE,MAAM,iBAAiB,GAAG,iCAAiC,CAAC;AAE5D,MAAM,EACJ,SAAS,EACT,SAAS,EACT,GAAG,EACH,QAAQ,EACR,GAAG,EACH,UAAU,EACV,EAAE,EACF,GAAG,EAAE,IAAI,EACT,GAAG,EAAE,IAAI,EACT,GAAG,EACH,GAAG,EACH,MAAM,EACN,GAAG,GACJ,GAAG,oBAAoB,CAAC,kBAAkB,CAAC,mBAAmB,CAI7D;IACA,oBAAoB,EAAE,aAAa;IACnC,SAAS,EAAE,CAAC;IACZ,SAAS,EAAE,CAAC,IAAI,EAAE,GAAG,CAAC;IACtB,iBAAiB;CACT,CAAC,CAAC;AAEZ;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,EAAE,CAAC;AAEnC;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,QAAQ,CAAC;AAEzC;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B;;;;;;OAMG;IACH,EAAE;IAEF;;;OAGG;IACH,SAAS;IAET;;;OAGG;IACH,SAAS;IAET;;;;;OAKG;IACH,GAAG,EAAE,IAAI;IAET;;;;;OAKG;IACH,GAAG,EAAE,IAAI;IAET;;;;;;;;;;OAUG;IACH,UAAU;IAEV;;;;;;;;OAQG;IACH,MAAM;IAEN;;;;;;;OAOG;IACH,GAAG;IAEH;;;;;;OAMG;IACH,GAAG;IAEH;;;;;;OAMG;IACH,GAAG;IAEH;;;;;;OAMG;IACH,GAAG;IAEH;;;;;;;OAOG;IACH,GAAG;CACK,CAAC;AAEX,UAAU,CAMR,GAAG,CAAC,CAAC;AAEP,UAAU,CAMR,IAAI,CAAC,CAAC"}
@@ -1,126 +1,138 @@
1
- import { TsDataForgeInternals } from '../refined-number-utils.mjs';
2
1
 
3
- const typeNameInMessage = "a positive integer in [1, 2^32)";
4
- const {
5
- MAX_VALUE,
6
- MIN_VALUE,
7
- add,
8
- castType,
9
- div,
10
- fromNumber,
11
- is,
12
- max: max_,
13
- min: min_,
14
- mul,
15
- pow,
16
- random,
17
- sub
18
- } = TsDataForgeInternals.RefinedNumberUtils.operatorsForInteger({
19
- integerOrSafeInteger: "SafeInteger",
20
- MIN_VALUE: 1,
21
- MAX_VALUE: 2 ** 32 - 1,
22
- typeNameInMessage
2
+ import { TsDataForgeInternals } from '../refined-number-utils.mjs';
3
+ const typeNameInMessage = 'a positive integer in [1, 2^32)';
4
+ const { MAX_VALUE, MIN_VALUE, add, castType, div, fromNumber, is, max: max_, min: min_, mul, pow, random, sub, } = TsDataForgeInternals.RefinedNumberUtils.operatorsForInteger({
5
+ integerOrSafeInteger: 'SafeInteger',
6
+ MIN_VALUE: 1,
7
+ MAX_VALUE: 2 ** 32 - 1,
8
+ typeNameInMessage,
23
9
  });
24
- const isPositiveUint32 = is;
25
- const asPositiveUint32 = castType;
26
- const PositiveUint32 = {
27
- /**
28
- * Type guard that checks if a value is a positive integer in [1, 2^32).
29
- *
30
- * @param value - The value to check
31
- * @returns `true` if the value is a positive integer in [1, 2^32), `false` otherwise
32
- * @see {@link isPositiveUint32} for usage examples
33
- */
34
- is,
35
- /**
36
- * The smallest value representable as `PositiveUint32` (the lower saturation
37
- * target of `fromNumber`).
38
- */
39
- MIN_VALUE,
40
- /**
41
- * The largest value representable as `PositiveUint32` (the upper saturation
42
- * target of `fromNumber`).
43
- */
44
- MAX_VALUE,
45
- /**
46
- * Returns the smallest of the given positive integers.
47
- *
48
- * @param values - The positive integers to compare (at least one required)
49
- * @returns The smallest value as a `PositiveUint32`
50
- */
51
- min: min_,
52
- /**
53
- * Returns the largest of the given positive integers.
54
- *
55
- * @param values - The positive integers to compare (at least one required)
56
- * @returns The largest value as a `PositiveUint32`
57
- */
58
- max: max_,
59
- /**
60
- * Converts an arbitrary `number` into a `PositiveUint32`, rounding to the
61
- * nearest integer and saturating the result into the range `[MIN_VALUE,
62
- * MAX_VALUE]`.
63
- *
64
- * Unlike `asPositiveUint32`, this is total: out-of-range inputs are clamped
65
- * to the nearest representable `PositiveUint32` instead of throwing.
66
- *
67
- * @param value - The value to convert
68
- * @returns The value as a `PositiveUint32`
69
- */
70
- fromNumber,
71
- /**
72
- * Generates a random `PositiveUint32` within the given range.
73
- *
74
- * The range is inclusive on both ends.
75
- *
76
- * @param min - The minimum value (inclusive)
77
- * @param max - The maximum value (inclusive)
78
- * @returns A random `PositiveUint32` in `[min, max]`
79
- */
80
- random,
81
- /**
82
- * Raises `a` to the power `b`, returning `a ** b` as a `PositiveUint32`
83
- * (floored to an integer).
84
- *
85
- * @param a - The base positive integer
86
- * @param b - The exponent positive integer
87
- * @returns `a ** b` as a `PositiveUint32`
88
- */
89
- pow,
90
- /**
91
- * Adds two positive integers, returning `a + b` as a `PositiveUint32`.
92
- *
93
- * @param a - The first positive integer
94
- * @param b - The second positive integer
95
- * @returns The sum of `a` and `b` as a `PositiveUint32`
96
- */
97
- add,
98
- /**
99
- * Subtracts two positive integers, returning `a - b` as a `PositiveUint32`.
100
- *
101
- * @param a - The first positive integer
102
- * @param b - The second positive integer
103
- * @returns The difference of `a` and `b` as a `PositiveUint32`
104
- */
105
- sub,
106
- /**
107
- * Multiplies two positive integers, returning `a * b` as a `PositiveUint32`.
108
- *
109
- * @param a - The first positive integer
110
- * @param b - The second positive integer
111
- * @returns The product of `a` and `b` as a `PositiveUint32`
112
- */
113
- mul,
114
- /**
115
- * Divides two positive integers using floor division (`⌊a / b⌋`): the result
116
- * is `a / b` rounded toward negative infinity, as a `PositiveUint32`.
117
- *
118
- * @param a - The dividend
119
- * @param b - The divisor (must be non-zero)
120
- * @returns The floored quotient as a `PositiveUint32`
121
- */
122
- div
10
+ /**
11
+ * Type guard that checks if a value is a positive integer in [1, 2^32).
12
+ *
13
+ * Returns `true` for a positive integer in [1, 2^32) — a value with no
14
+ * fractional component.
15
+ *
16
+ * @param value - The value to check
17
+ * @returns `true` if the value is a positive integer in [1, 2^32), `false` otherwise
18
+ */
19
+ export const isPositiveUint32 = is;
20
+ /**
21
+ * Casts a `number` to the `PositiveUint32` branded type.
22
+ *
23
+ * Validates that the value is a positive integer in [1, 2^32) and returns it
24
+ * with the `PositiveUint32` brand. Throws a `TypeError` otherwise.
25
+ *
26
+ * @param value - The value to cast
27
+ * @returns The value as a `PositiveUint32`
28
+ * @throws {TypeError} If the value is not a positive integer in [1, 2^32)
29
+ */
30
+ export const asPositiveUint32 = castType;
31
+ /**
32
+ * Namespace providing type-safe operations for the `PositiveUint32` branded
33
+ * type.
34
+ *
35
+ * The `PositiveUint32` type represents a positive integer in [1, 2^32).
36
+ * Division (`div`) uses floor division.
37
+ */
38
+ export const PositiveUint32 = {
39
+ /**
40
+ * Type guard that checks if a value is a positive integer in [1, 2^32).
41
+ *
42
+ * @param value - The value to check
43
+ * @returns `true` if the value is a positive integer in [1, 2^32), `false` otherwise
44
+ * @see {@link isPositiveUint32} for usage examples
45
+ */
46
+ is,
47
+ /**
48
+ * The smallest value representable as `PositiveUint32` (the lower saturation
49
+ * target of `fromNumber`).
50
+ */
51
+ MIN_VALUE,
52
+ /**
53
+ * The largest value representable as `PositiveUint32` (the upper saturation
54
+ * target of `fromNumber`).
55
+ */
56
+ MAX_VALUE,
57
+ /**
58
+ * Returns the smallest of the given positive integers.
59
+ *
60
+ * @param values - The positive integers to compare (at least one required)
61
+ * @returns The smallest value as a `PositiveUint32`
62
+ */
63
+ min: min_,
64
+ /**
65
+ * Returns the largest of the given positive integers.
66
+ *
67
+ * @param values - The positive integers to compare (at least one required)
68
+ * @returns The largest value as a `PositiveUint32`
69
+ */
70
+ max: max_,
71
+ /**
72
+ * Converts an arbitrary `number` into a `PositiveUint32`, rounding to the
73
+ * nearest integer and saturating the result into the range `[MIN_VALUE,
74
+ * MAX_VALUE]`.
75
+ *
76
+ * Unlike `asPositiveUint32`, this is total: out-of-range inputs are clamped
77
+ * to the nearest representable `PositiveUint32` instead of throwing.
78
+ *
79
+ * @param value - The value to convert
80
+ * @returns The value as a `PositiveUint32`
81
+ */
82
+ fromNumber,
83
+ /**
84
+ * Generates a random `PositiveUint32` within the given range.
85
+ *
86
+ * The range is inclusive on both ends.
87
+ *
88
+ * @param min - The minimum value (inclusive)
89
+ * @param max - The maximum value (inclusive)
90
+ * @returns A random `PositiveUint32` in `[min, max]`
91
+ */
92
+ random,
93
+ /**
94
+ * Raises `a` to the power `b`, returning `a ** b` as a `PositiveUint32`
95
+ * (floored to an integer).
96
+ *
97
+ * @param a - The base positive integer
98
+ * @param b - The exponent positive integer
99
+ * @returns `a ** b` as a `PositiveUint32`
100
+ */
101
+ pow,
102
+ /**
103
+ * Adds two positive integers, returning `a + b` as a `PositiveUint32`.
104
+ *
105
+ * @param a - The first positive integer
106
+ * @param b - The second positive integer
107
+ * @returns The sum of `a` and `b` as a `PositiveUint32`
108
+ */
109
+ add,
110
+ /**
111
+ * Subtracts two positive integers, returning `a - b` as a `PositiveUint32`.
112
+ *
113
+ * @param a - The first positive integer
114
+ * @param b - The second positive integer
115
+ * @returns The difference of `a` and `b` as a `PositiveUint32`
116
+ */
117
+ sub,
118
+ /**
119
+ * Multiplies two positive integers, returning `a * b` as a `PositiveUint32`.
120
+ *
121
+ * @param a - The first positive integer
122
+ * @param b - The second positive integer
123
+ * @returns The product of `a` and `b` as a `PositiveUint32`
124
+ */
125
+ mul,
126
+ /**
127
+ * Divides two positive integers using floor division (`⌊a / b⌋`): the result
128
+ * is `a / b` rounded toward negative infinity, as a `PositiveUint32`.
129
+ *
130
+ * @param a - The dividend
131
+ * @param b - The divisor (must be non-zero)
132
+ * @returns The floored quotient as a `PositiveUint32`
133
+ */
134
+ div,
123
135
  };
124
136
 
125
- export { PositiveUint32, asPositiveUint32, isPositiveUint32 };
126
- //# sourceMappingURL=positive-uint32.mjs.map
137
+
138
+ //# sourceMappingURL=positive-uint32.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"positive-uint32.mjs","sources":["../../../src/number/branded-types/positive-uint32.mts"],"sourcesContent":["import { type PositiveUint32 as TtfImported_PositiveUint32 } from 'ts-type-forge';\nimport { expectType } from '../../expect-type.mjs';\nimport { TsDataForgeInternals } from '../refined-number-utils.mjs';\n\nexport type PositiveUint32 = TtfImported_PositiveUint32;\n\ntype ElementType = PositiveUint32;\n\nconst typeNameInMessage = 'a positive integer in [1, 2^32)';\n\nconst {\n MAX_VALUE,\n MIN_VALUE,\n add,\n castType,\n div,\n fromNumber,\n is,\n max: max_,\n min: min_,\n mul,\n pow,\n random,\n sub,\n} = TsDataForgeInternals.RefinedNumberUtils.operatorsForInteger<\n ElementType,\n 1,\n number\n>({\n integerOrSafeInteger: 'SafeInteger',\n MIN_VALUE: 1,\n MAX_VALUE: 2 ** 32 - 1,\n typeNameInMessage,\n} as const);\n\n/**\n * Type guard that checks if a value is a positive integer in [1, 2^32).\n *\n * Returns `true` for a positive integer in [1, 2^32) — a value with no\n * fractional component.\n *\n * @param value - The value to check\n * @returns `true` if the value is a positive integer in [1, 2^32), `false` otherwise\n */\nexport const isPositiveUint32 = is;\n\n/**\n * Casts a `number` to the `PositiveUint32` branded type.\n *\n * Validates that the value is a positive integer in [1, 2^32) and returns it\n * with the `PositiveUint32` brand. Throws a `TypeError` otherwise.\n *\n * @param value - The value to cast\n * @returns The value as a `PositiveUint32`\n * @throws {TypeError} If the value is not a positive integer in [1, 2^32)\n */\nexport const asPositiveUint32 = castType;\n\n/**\n * Namespace providing type-safe operations for the `PositiveUint32` branded\n * type.\n *\n * The `PositiveUint32` type represents a positive integer in [1, 2^32).\n * Division (`div`) uses floor division.\n */\nexport const PositiveUint32 = {\n /**\n * Type guard that checks if a value is a positive integer in [1, 2^32).\n *\n * @param value - The value to check\n * @returns `true` if the value is a positive integer in [1, 2^32), `false` otherwise\n * @see {@link isPositiveUint32} for usage examples\n */\n is,\n\n /**\n * The smallest value representable as `PositiveUint32` (the lower saturation\n * target of `fromNumber`).\n */\n MIN_VALUE,\n\n /**\n * The largest value representable as `PositiveUint32` (the upper saturation\n * target of `fromNumber`).\n */\n MAX_VALUE,\n\n /**\n * Returns the smallest of the given positive integers.\n *\n * @param values - The positive integers to compare (at least one required)\n * @returns The smallest value as a `PositiveUint32`\n */\n min: min_,\n\n /**\n * Returns the largest of the given positive integers.\n *\n * @param values - The positive integers to compare (at least one required)\n * @returns The largest value as a `PositiveUint32`\n */\n max: max_,\n\n /**\n * Converts an arbitrary `number` into a `PositiveUint32`, rounding to the\n * nearest integer and saturating the result into the range `[MIN_VALUE,\n * MAX_VALUE]`.\n *\n * Unlike `asPositiveUint32`, this is total: out-of-range inputs are clamped\n * to the nearest representable `PositiveUint32` instead of throwing.\n *\n * @param value - The value to convert\n * @returns The value as a `PositiveUint32`\n */\n fromNumber,\n\n /**\n * Generates a random `PositiveUint32` within the given range.\n *\n * The range is inclusive on both ends.\n *\n * @param min - The minimum value (inclusive)\n * @param max - The maximum value (inclusive)\n * @returns A random `PositiveUint32` in `[min, max]`\n */\n random,\n\n /**\n * Raises `a` to the power `b`, returning `a ** b` as a `PositiveUint32`\n * (floored to an integer).\n *\n * @param a - The base positive integer\n * @param b - The exponent positive integer\n * @returns `a ** b` as a `PositiveUint32`\n */\n pow,\n\n /**\n * Adds two positive integers, returning `a + b` as a `PositiveUint32`.\n *\n * @param a - The first positive integer\n * @param b - The second positive integer\n * @returns The sum of `a` and `b` as a `PositiveUint32`\n */\n add,\n\n /**\n * Subtracts two positive integers, returning `a - b` as a `PositiveUint32`.\n *\n * @param a - The first positive integer\n * @param b - The second positive integer\n * @returns The difference of `a` and `b` as a `PositiveUint32`\n */\n sub,\n\n /**\n * Multiplies two positive integers, returning `a * b` as a `PositiveUint32`.\n *\n * @param a - The first positive integer\n * @param b - The second positive integer\n * @returns The product of `a` and `b` as a `PositiveUint32`\n */\n mul,\n\n /**\n * Divides two positive integers using floor division (`⌊a / b⌋`): the result\n * is `a / b` rounded toward negative infinity, as a `PositiveUint32`.\n *\n * @param a - The dividend\n * @param b - The divisor (must be non-zero)\n * @returns The floored quotient as a `PositiveUint32`\n */\n div,\n} as const;\n\nexpectType<\n keyof typeof PositiveUint32,\n keyof TsDataForgeInternals.RefinedNumberUtils.NumberClass<\n ElementType,\n 'int' | 'positive' | 'range'\n >\n>('=');\n\nexpectType<\n typeof PositiveUint32,\n TsDataForgeInternals.RefinedNumberUtils.NumberClass<\n ElementType,\n 'int' | 'positive' | 'range'\n >\n>('<=');\n"],"names":[],"mappings":";;AAQA,MAAM,iBAAA,GAAoB,iCAAA;AAE1B,MAAM;AAAA,EACJ,SAAA;AAAA,EACA,SAAA;AAAA,EACA,GAAA;AAAA,EACA,QAAA;AAAA,EACA,GAAA;AAAA,EACA,UAAA;AAAA,EACA,EAAA;AAAA,EACA,GAAA,EAAK,IAAA;AAAA,EACL,GAAA,EAAK,IAAA;AAAA,EACL,GAAA;AAAA,EACA,GAAA;AAAA,EACA,MAAA;AAAA,EACA;AACF,CAAA,GAAI,oBAAA,CAAqB,mBAAmB,mBAAA,CAI1C;AAAA,EACA,oBAAA,EAAsB,aAAA;AAAA,EACtB,SAAA,EAAW,CAAA;AAAA,EACX,SAAA,EAAW,KAAK,EAAA,GAAK,CAAA;AAAA,EACrB;AACF,CAAU,CAAA;AAWH,MAAM,gBAAA,GAAmB;AAYzB,MAAM,gBAAA,GAAmB;AASzB,MAAM,cAAA,GAAiB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQ5B,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,SAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,SAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,GAAA,EAAK,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQL,GAAA,EAAK,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAaL,UAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAWA,MAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUA,GAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,GAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,GAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,GAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUA;AACF;;;;"}
1
+ {"version":3,"file":"positive-uint32.mjs","sourceRoot":"","sources":["../../../src/number/branded-types/positive-uint32.mts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAMnE,MAAM,iBAAiB,GAAG,iCAAiC,CAAC;AAE5D,MAAM,EACJ,SAAS,EACT,SAAS,EACT,GAAG,EACH,QAAQ,EACR,GAAG,EACH,UAAU,EACV,EAAE,EACF,GAAG,EAAE,IAAI,EACT,GAAG,EAAE,IAAI,EACT,GAAG,EACH,GAAG,EACH,MAAM,EACN,GAAG,GACJ,GAAG,oBAAoB,CAAC,kBAAkB,CAAC,mBAAmB,CAI7D;IACA,oBAAoB,EAAE,aAAa;IACnC,SAAS,EAAE,CAAC;IACZ,SAAS,EAAE,CAAC,IAAI,EAAE,GAAG,CAAC;IACtB,iBAAiB;CACT,CAAC,CAAC;AAEZ;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,EAAE,CAAC;AAEnC;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,QAAQ,CAAC;AAEzC;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B;;;;;;OAMG;IACH,EAAE;IAEF;;;OAGG;IACH,SAAS;IAET;;;OAGG;IACH,SAAS;IAET;;;;;OAKG;IACH,GAAG,EAAE,IAAI;IAET;;;;;OAKG;IACH,GAAG,EAAE,IAAI;IAET;;;;;;;;;;OAUG;IACH,UAAU;IAEV;;;;;;;;OAQG;IACH,MAAM;IAEN;;;;;;;OAOG;IACH,GAAG;IAEH;;;;;;OAMG;IACH,GAAG;IAEH;;;;;;OAMG;IACH,GAAG;IAEH;;;;;;OAMG;IACH,GAAG;IAEH;;;;;;;OAOG;IACH,GAAG;CACK,CAAC;AAEX,UAAU,CAMR,GAAG,CAAC,CAAC;AAEP,UAAU,CAMR,IAAI,CAAC,CAAC"}