ts-fortress 7.3.0 → 8.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (189) hide show
  1. package/dist/array/array-at-least-length.d.mts +6 -2
  2. package/dist/array/array-at-least-length.d.mts.map +1 -1
  3. package/dist/array/array-at-least-length.mjs +6 -8
  4. package/dist/array/array-at-least-length.mjs.map +1 -1
  5. package/dist/array/array-at-most-length.d.mts +6 -2
  6. package/dist/array/array-at-most-length.d.mts.map +1 -1
  7. package/dist/array/array-at-most-length.mjs +4 -7
  8. package/dist/array/array-at-most-length.mjs.map +1 -1
  9. package/dist/array/array-bounded-length.d.mts +15 -3
  10. package/dist/array/array-bounded-length.d.mts.map +1 -1
  11. package/dist/array/array-bounded-length.mjs +7 -9
  12. package/dist/array/array-bounded-length.mjs.map +1 -1
  13. package/dist/compose/intersection.d.mts.map +1 -1
  14. package/dist/entry-point.mjs +6 -0
  15. package/dist/entry-point.mjs.map +1 -1
  16. package/dist/enum/int-range.d.mts.map +1 -1
  17. package/dist/enum/int-range.mjs +1 -1
  18. package/dist/enum/int-range.mjs.map +1 -1
  19. package/dist/enum/uint-range.d.mts.map +1 -1
  20. package/dist/enum/uint-range.mjs +1 -1
  21. package/dist/enum/uint-range.mjs.map +1 -1
  22. package/dist/index.mjs +6 -0
  23. package/dist/index.mjs.map +1 -1
  24. package/dist/other-types/map.d.mts.map +1 -1
  25. package/dist/other-types/map.mjs +2 -2
  26. package/dist/other-types/map.mjs.map +1 -1
  27. package/dist/other-types/set.mjs +2 -2
  28. package/dist/other-types/set.mjs.map +1 -1
  29. package/dist/predefined/brand/index.mjs +6 -0
  30. package/dist/predefined/brand/index.mjs.map +1 -1
  31. package/dist/predefined/brand/number/finite-number.d.mts +2 -1
  32. package/dist/predefined/brand/number/finite-number.d.mts.map +1 -1
  33. package/dist/predefined/brand/number/finite-number.mjs +2 -2
  34. package/dist/predefined/brand/number/finite-number.mjs.map +1 -1
  35. package/dist/predefined/brand/number/index.d.mts +6 -0
  36. package/dist/predefined/brand/number/index.d.mts.map +1 -1
  37. package/dist/predefined/brand/number/index.mjs +6 -0
  38. package/dist/predefined/brand/number/index.mjs.map +1 -1
  39. package/dist/predefined/brand/number/int.d.mts +2 -1
  40. package/dist/predefined/brand/number/int.d.mts.map +1 -1
  41. package/dist/predefined/brand/number/int.mjs +2 -2
  42. package/dist/predefined/brand/number/int.mjs.map +1 -1
  43. package/dist/predefined/brand/number/int16.d.mts +2 -1
  44. package/dist/predefined/brand/number/int16.d.mts.map +1 -1
  45. package/dist/predefined/brand/number/int16.mjs +2 -2
  46. package/dist/predefined/brand/number/int16.mjs.map +1 -1
  47. package/dist/predefined/brand/number/int32.d.mts +2 -1
  48. package/dist/predefined/brand/number/int32.d.mts.map +1 -1
  49. package/dist/predefined/brand/number/int32.mjs +2 -2
  50. package/dist/predefined/brand/number/int32.mjs.map +1 -1
  51. package/dist/predefined/brand/number/negative-finite-number.d.mts +5 -0
  52. package/dist/predefined/brand/number/negative-finite-number.d.mts.map +1 -0
  53. package/dist/predefined/brand/number/negative-finite-number.mjs +17 -0
  54. package/dist/predefined/brand/number/negative-finite-number.mjs.map +1 -0
  55. package/dist/predefined/brand/number/negative-int.d.mts +5 -0
  56. package/dist/predefined/brand/number/negative-int.d.mts.map +1 -0
  57. package/dist/predefined/brand/number/negative-int.mjs +26 -0
  58. package/dist/predefined/brand/number/negative-int.mjs.map +1 -0
  59. package/dist/predefined/brand/number/negative-safe-int.d.mts +5 -0
  60. package/dist/predefined/brand/number/negative-safe-int.d.mts.map +1 -0
  61. package/dist/predefined/brand/number/negative-safe-int.mjs +27 -0
  62. package/dist/predefined/brand/number/negative-safe-int.mjs.map +1 -0
  63. package/dist/predefined/brand/number/non-negative-finite-number.d.mts +2 -1
  64. package/dist/predefined/brand/number/non-negative-finite-number.d.mts.map +1 -1
  65. package/dist/predefined/brand/number/non-negative-finite-number.mjs +2 -2
  66. package/dist/predefined/brand/number/non-negative-finite-number.mjs.map +1 -1
  67. package/dist/predefined/brand/number/non-positive-finite-number.d.mts +5 -0
  68. package/dist/predefined/brand/number/non-positive-finite-number.d.mts.map +1 -0
  69. package/dist/predefined/brand/number/non-positive-finite-number.mjs +17 -0
  70. package/dist/predefined/brand/number/non-positive-finite-number.mjs.map +1 -0
  71. package/dist/predefined/brand/number/non-positive-int.d.mts +5 -0
  72. package/dist/predefined/brand/number/non-positive-int.d.mts.map +1 -0
  73. package/dist/predefined/brand/number/non-positive-int.mjs +17 -0
  74. package/dist/predefined/brand/number/non-positive-int.mjs.map +1 -0
  75. package/dist/predefined/brand/number/non-positive-safe-int.d.mts +5 -0
  76. package/dist/predefined/brand/number/non-positive-safe-int.d.mts.map +1 -0
  77. package/dist/predefined/brand/number/non-positive-safe-int.mjs +26 -0
  78. package/dist/predefined/brand/number/non-positive-safe-int.mjs.map +1 -0
  79. package/dist/predefined/brand/number/non-zero-finite-number.d.mts +2 -1
  80. package/dist/predefined/brand/number/non-zero-finite-number.d.mts.map +1 -1
  81. package/dist/predefined/brand/number/non-zero-finite-number.mjs +2 -2
  82. package/dist/predefined/brand/number/non-zero-finite-number.mjs.map +1 -1
  83. package/dist/predefined/brand/number/non-zero-int.d.mts +2 -1
  84. package/dist/predefined/brand/number/non-zero-int.d.mts.map +1 -1
  85. package/dist/predefined/brand/number/non-zero-int.mjs +2 -2
  86. package/dist/predefined/brand/number/non-zero-int.mjs.map +1 -1
  87. package/dist/predefined/brand/number/non-zero-safe-int.d.mts +2 -1
  88. package/dist/predefined/brand/number/non-zero-safe-int.d.mts.map +1 -1
  89. package/dist/predefined/brand/number/non-zero-safe-int.mjs +2 -2
  90. package/dist/predefined/brand/number/non-zero-safe-int.mjs.map +1 -1
  91. package/dist/predefined/brand/number/positive-finite-number.d.mts +2 -1
  92. package/dist/predefined/brand/number/positive-finite-number.d.mts.map +1 -1
  93. package/dist/predefined/brand/number/positive-finite-number.mjs +3 -3
  94. package/dist/predefined/brand/number/positive-finite-number.mjs.map +1 -1
  95. package/dist/predefined/brand/number/positive-int.d.mts +2 -1
  96. package/dist/predefined/brand/number/positive-int.d.mts.map +1 -1
  97. package/dist/predefined/brand/number/positive-int.mjs +3 -3
  98. package/dist/predefined/brand/number/positive-int.mjs.map +1 -1
  99. package/dist/predefined/brand/number/positive-safe-int.d.mts +2 -1
  100. package/dist/predefined/brand/number/positive-safe-int.d.mts.map +1 -1
  101. package/dist/predefined/brand/number/positive-safe-int.mjs +3 -3
  102. package/dist/predefined/brand/number/positive-safe-int.mjs.map +1 -1
  103. package/dist/predefined/brand/number/safe-int.d.mts +2 -1
  104. package/dist/predefined/brand/number/safe-int.d.mts.map +1 -1
  105. package/dist/predefined/brand/number/safe-int.mjs +2 -2
  106. package/dist/predefined/brand/number/safe-int.mjs.map +1 -1
  107. package/dist/predefined/brand/number/safe-uint.d.mts +2 -1
  108. package/dist/predefined/brand/number/safe-uint.d.mts.map +1 -1
  109. package/dist/predefined/brand/number/safe-uint.mjs +2 -2
  110. package/dist/predefined/brand/number/safe-uint.mjs.map +1 -1
  111. package/dist/predefined/brand/number/uint.d.mts +2 -1
  112. package/dist/predefined/brand/number/uint.d.mts.map +1 -1
  113. package/dist/predefined/brand/number/uint.mjs +2 -2
  114. package/dist/predefined/brand/number/uint.mjs.map +1 -1
  115. package/dist/predefined/brand/number/uint16.d.mts +2 -1
  116. package/dist/predefined/brand/number/uint16.d.mts.map +1 -1
  117. package/dist/predefined/brand/number/uint16.mjs +2 -2
  118. package/dist/predefined/brand/number/uint16.mjs.map +1 -1
  119. package/dist/predefined/brand/number/uint32.d.mts +2 -1
  120. package/dist/predefined/brand/number/uint32.d.mts.map +1 -1
  121. package/dist/predefined/brand/number/uint32.mjs +2 -2
  122. package/dist/predefined/brand/number/uint32.mjs.map +1 -1
  123. package/dist/predefined/brand/string/iso-8601.d.mts.map +1 -1
  124. package/dist/predefined/brand/string/iso-8601.mjs +1 -0
  125. package/dist/predefined/brand/string/iso-8601.mjs.map +1 -1
  126. package/dist/predefined/index.mjs +6 -0
  127. package/dist/predefined/index.mjs.map +1 -1
  128. package/dist/primitives/bigint.d.mts +40 -32
  129. package/dist/primitives/bigint.d.mts.map +1 -1
  130. package/dist/primitives/bigint.mjs +45 -87
  131. package/dist/primitives/bigint.mjs.map +1 -1
  132. package/dist/primitives/number.d.mts +65 -44
  133. package/dist/primitives/number.d.mts.map +1 -1
  134. package/dist/primitives/number.mjs +47 -27
  135. package/dist/primitives/number.mjs.map +1 -1
  136. package/dist/primitives/string.d.mts +5 -5
  137. package/dist/primitives/string.d.mts.map +1 -1
  138. package/dist/primitives/string.mjs +10 -10
  139. package/dist/primitives/string.mjs.map +1 -1
  140. package/package.json +7 -7
  141. package/src/array/array-at-least-length.mts +35 -10
  142. package/src/array/array-at-least-length.test.mts +27 -0
  143. package/src/array/array-at-most-length.mts +33 -12
  144. package/src/array/array-at-most-length.test.mts +27 -0
  145. package/src/array/array-bounded-length.mts +72 -15
  146. package/src/array/array-bounded-length.test.mts +41 -1
  147. package/src/compose/intersection.mts +0 -1
  148. package/src/enum/int-range.mts +3 -1
  149. package/src/enum/uint-range.mts +3 -1
  150. package/src/other-types/literal.test.mts +1 -0
  151. package/src/other-types/map.mts +2 -4
  152. package/src/other-types/recursion.test.mts +2 -1
  153. package/src/other-types/set.mts +2 -2
  154. package/src/other-types/set.test.mts +1 -0
  155. package/src/predefined/brand/number/finite-number.mts +9 -3
  156. package/src/predefined/brand/number/index.mts +6 -0
  157. package/src/predefined/brand/number/int.mts +9 -3
  158. package/src/predefined/brand/number/int16.mts +9 -3
  159. package/src/predefined/brand/number/int32.mts +9 -3
  160. package/src/predefined/brand/number/negative-finite-number.mts +21 -0
  161. package/src/predefined/brand/number/negative-int.mts +30 -0
  162. package/src/predefined/brand/number/negative-safe-int.mts +31 -0
  163. package/src/predefined/brand/number/non-negative-finite-number.mts +6 -2
  164. package/src/predefined/brand/number/non-positive-finite-number.mts +21 -0
  165. package/src/predefined/brand/number/non-positive-int.mts +21 -0
  166. package/src/predefined/brand/number/non-positive-safe-int.mts +30 -0
  167. package/src/predefined/brand/number/non-zero-finite-number.mts +6 -2
  168. package/src/predefined/brand/number/non-zero-int.mts +9 -3
  169. package/src/predefined/brand/number/non-zero-safe-int.mts +9 -3
  170. package/src/predefined/brand/number/positive-finite-number.mts +7 -3
  171. package/src/predefined/brand/number/positive-int.mts +10 -4
  172. package/src/predefined/brand/number/positive-safe-int.mts +7 -3
  173. package/src/predefined/brand/number/safe-int.mts +9 -3
  174. package/src/predefined/brand/number/safe-uint.mts +9 -3
  175. package/src/predefined/brand/number/uint.mts +9 -3
  176. package/src/predefined/brand/number/uint16.mts +9 -3
  177. package/src/predefined/brand/number/uint32.mts +9 -3
  178. package/src/predefined/brand/number/with-constraints.test.mts +227 -0
  179. package/src/predefined/brand/string/iso-8601.mts +1 -0
  180. package/src/predefined/brand/string/non-empty-string.mts +1 -0
  181. package/src/primitives/bigint.mts +154 -189
  182. package/src/primitives/bigint.test.mts +169 -110
  183. package/src/primitives/null.test.mts +3 -3
  184. package/src/primitives/number.mts +231 -153
  185. package/src/primitives/number.test.mts +147 -109
  186. package/src/primitives/string.mts +27 -27
  187. package/src/primitives/string.test.mts +1 -1
  188. package/src/primitives/undefined.test.mts +3 -3
  189. package/src/record/merge-records.test.mts +1 -1
@@ -1,8 +1,12 @@
1
1
  import { type ArrayAtLeastLen, type SmallUint } from 'ts-type-forge';
2
2
  import { type Type } from '../type.mjs';
3
3
  export type { ArrayAtLeastLen } from 'ts-type-forge';
4
- export declare const arrayAtLeastLength: <A, N extends SmallUint>(size: N, elementType: Type<A>, options?: Partial<Readonly<{
4
+ export declare function arrayAtLeastLength<A, N extends SmallUint>(size: N, elementType: Type<A>, options?: Partial<Readonly<{
5
5
  typeName: string;
6
6
  defaultValue: ArrayAtLeastLen<N, A>;
7
- }>>) => Type<ArrayAtLeastLen<N, A>>;
7
+ }>>): Type<ArrayAtLeastLen<N, A>>;
8
+ export declare function arrayAtLeastLength<A>(size: number, elementType: Type<A>, options?: Partial<Readonly<{
9
+ typeName: string;
10
+ defaultValue: readonly A[];
11
+ }>>): Type<readonly A[]>;
8
12
  //# sourceMappingURL=array-at-least-length.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"array-at-least-length.d.mts","sourceRoot":"","sources":["../../src/array/array-at-least-length.mts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,eAAe,EAAE,KAAK,SAAS,EAAE,MAAM,eAAe,CAAC;AACrE,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,aAAa,CAAC;AAUxC,YAAY,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAErD,eAAO,MAAM,kBAAkB,GAAI,CAAC,EAAE,CAAC,SAAS,SAAS,EACvD,MAAM,CAAC,EACP,aAAa,IAAI,CAAC,CAAC,CAAC,EACpB,UAAU,OAAO,CACf,QAAQ,CAAC;IACP,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,eAAe,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;CACrC,CAAC,CACH,KACA,IAAI,CAAC,eAAe,CAAC,CAAC,EAAE,CAAC,CAAC,CA6E5B,CAAC"}
1
+ {"version":3,"file":"array-at-least-length.d.mts","sourceRoot":"","sources":["../../src/array/array-at-least-length.mts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,eAAe,EAAE,KAAK,SAAS,EAAE,MAAM,eAAe,CAAC;AACrE,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,aAAa,CAAC;AAUxC,YAAY,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAErD,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,CAAC,SAAS,SAAS,EACvD,IAAI,EAAE,CAAC,EACP,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,EACpB,OAAO,CAAC,EAAE,OAAO,CACf,QAAQ,CAAC;IACP,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,eAAe,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;CACrC,CAAC,CACH,GACA,IAAI,CAAC,eAAe,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAI/B,wBAAgB,kBAAkB,CAAC,CAAC,EAClC,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,EACpB,OAAO,CAAC,EAAE,OAAO,CACf,QAAQ,CAAC;IACP,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,SAAS,CAAC,EAAE,CAAC;CAC5B,CAAC,CACH,GACA,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC"}
@@ -1,14 +1,14 @@
1
- import { memoizeFunction, Arr, Result } from 'ts-data-forge';
1
+ import { memoizeFunction, Arr, asUint32, Result } from 'ts-data-forge';
2
2
  import { createAssertFn } from '../utils/create-assert-fn.mjs';
3
3
  import { createCastFn } from '../utils/create-cast-fn.mjs';
4
4
  import { createIsFn } from '../utils/create-is-fn.mjs';
5
5
  import { createPrimitiveValidationError, prependIndexToValidationErrors } from '../utils/validation-error.mjs';
6
6
 
7
- const arrayAtLeastLength = (size, elementType, options) => {
7
+ function arrayAtLeastLength(size, elementType, options) {
8
8
  const typeName = options?.typeName ?? `ArrayAtLeastLen<${size}, ${elementType.typeName}>`;
9
9
  const getDefaultValue = memoizeFunction(() => options?.defaultValue ??
10
- // eslint-disable-next-line total-functions/no-unsafe-type-assertion
11
- Arr.create(size, elementType.defaultValue));
10
+ // An array of `size` elements is the shortest value satisfying the bound.
11
+ Arr.create(asUint32(size), elementType.defaultValue));
12
12
  const validate = (a) => {
13
13
  if (!Arr.isArray(a)) {
14
14
  return Result.err([
@@ -50,9 +50,7 @@ const arrayAtLeastLength = (size, elementType, options) => {
50
50
  return Result.ok(a);
51
51
  };
52
52
  const fill = (a) => Arr.isArray(a)
53
- ? // TODO: remove as
54
- // eslint-disable-next-line total-functions/no-unsafe-type-assertion
55
- Arr.map(Arr.seq(size), (i) => elementType.fill(a[i]))
53
+ ? Arr.map(Arr.seq(asUint32(size)), (i) => elementType.fill(a[i]))
56
54
  : getDefaultValue();
57
55
  return {
58
56
  typeName,
@@ -65,7 +63,7 @@ const arrayAtLeastLength = (size, elementType, options) => {
65
63
  cast: createCastFn(validate),
66
64
  assertIs: createAssertFn(validate),
67
65
  };
68
- };
66
+ }
69
67
 
70
68
  export { arrayAtLeastLength };
71
69
  //# sourceMappingURL=array-at-least-length.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"array-at-least-length.mjs","sources":["../../src/array/array-at-least-length.mts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;AAcO,MAAM,kBAAkB,GAAG,CAChC,IAAO,EACP,WAAoB,EACpB,OAKC,KAC8B;AAG/B,IAAA,MAAM,QAAQ,GACZ,OAAO,EAAE,QAAQ,IAAI,CAAA,gBAAA,EAAmB,IAAI,CAAA,EAAA,EAAK,WAAW,CAAC,QAAQ,GAAG;IAE1E,MAAM,eAAe,GAAG,eAAe,CACrC,MACE,OAAO,EAAE,YAAY;;QAEpB,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,WAAW,CAAC,YAAY,CAAO,CACpD;AAED,IAAA,MAAM,QAAQ,GAAwB,CAAC,CAAC,KAAI;QAC1C,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;YACnB,OAAO,MAAM,CAAC,GAAG,CAAC;AAChB,gBAAA,8BAA8B,CAAC;AAC7B,oBAAA,WAAW,EAAE,CAAC;AACd,oBAAA,YAAY,EAAE,OAAO;oBACrB,QAAQ;AACR,oBAAA,OAAO,EAAE,SAAS;iBACnB,CAAC;AACH,aAAA,CAAC;QACJ;AAEA,QAAA,IAAI,CAAC,CAAC,MAAM,GAAG,IAAI,EAAE;YACnB,OAAO,MAAM,CAAC,GAAG,CAAC;AAChB,gBAAA;AACE,oBAAA,IAAI,EAAE,EAAE;AACR,oBAAA,WAAW,EAAE,CAAC;AACd,oBAAA,YAAY,EAAE,QAAQ;oBACtB,QAAQ;AACR,oBAAA,OAAO,EAAE;AACP,wBAAA,IAAI,EAAE,kBAAkB;AACxB,wBAAA,SAAS,EAAE,IAAI;wBACf,YAAY,EAAE,CAAC,CAAC,MAAM;AACvB,qBAAA;AACwB,iBAAA;AAC5B,aAAA,CAAC;QACJ;AAEA,QAAA,MAAM,MAAM,GAA+B,GAAG,CAAC,QAAQ,CAAC,aAAS;AAC/D,YAAA,KAAK,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE;gBACrC,MAAM,GAAG,GAAG,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAC;AAEpC,gBAAA,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;oBACrB,OAAO,8BAA8B,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC;gBACzD;YACF;AACF,QAAA,CAAC,CAAC;AAEF,QAAA,IAAI,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE;AAC1B,YAAA,OAAO,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC;QAC3B;;AAGA,QAAA,OAAO,MAAM,CAAC,EAAE,CAAC,CAAiB,CAAC;AACrC,IAAA,CAAC;AAED,IAAA,MAAM,IAAI,GAAoB,CAAC,CAAC,KAC9B,GAAG,CAAC,OAAO,CAAC,CAAC;AACX;;YAEG,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,KAAK,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAa;UACjE,eAAe,EAAE;IAEvB,OAAO;QACL,QAAQ;AACR,QAAA,IAAI,YAAY,GAAA;YACd,OAAO,eAAe,EAAE;QAC1B,CAAC;QACD,IAAI;QACJ,QAAQ;AACR,QAAA,EAAE,EAAE,UAAU,CAAC,QAAQ,CAAC;AACxB,QAAA,IAAI,EAAE,YAAY,CAAC,QAAQ,CAAC;AAC5B,QAAA,QAAQ,EAAE,cAAc,CAAC,QAAQ,CAAC;KACnC;AACH;;;;"}
1
+ {"version":3,"file":"array-at-least-length.mjs","sources":["../../src/array/array-at-least-length.mts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;SAsCgB,kBAAkB,CAChC,IAAY,EACZ,WAAoB,EACpB,OAKC,EAAA;AAID,IAAA,MAAM,QAAQ,GACZ,OAAO,EAAE,QAAQ,IAAI,CAAA,gBAAA,EAAmB,IAAI,CAAA,EAAA,EAAK,WAAW,CAAC,QAAQ,GAAG;IAE1E,MAAM,eAAe,GAAG,eAAe,CACrC,MACE,OAAO,EAAE,YAAY;;AAErB,QAAA,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,WAAW,CAAC,YAAY,CAAC,CACvD;AAED,IAAA,MAAM,QAAQ,GAAwB,CAAC,CAAC,KAAI;QAC1C,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;YACnB,OAAO,MAAM,CAAC,GAAG,CAAC;AAChB,gBAAA,8BAA8B,CAAC;AAC7B,oBAAA,WAAW,EAAE,CAAC;AACd,oBAAA,YAAY,EAAE,OAAO;oBACrB,QAAQ;AACR,oBAAA,OAAO,EAAE,SAAS;iBACnB,CAAC;AACH,aAAA,CAAC;QACJ;AAEA,QAAA,IAAI,CAAC,CAAC,MAAM,GAAG,IAAI,EAAE;YACnB,OAAO,MAAM,CAAC,GAAG,CAAC;AAChB,gBAAA;AACE,oBAAA,IAAI,EAAE,EAAE;AACR,oBAAA,WAAW,EAAE,CAAC;AACd,oBAAA,YAAY,EAAE,QAAQ;oBACtB,QAAQ;AACR,oBAAA,OAAO,EAAE;AACP,wBAAA,IAAI,EAAE,kBAAkB;AACxB,wBAAA,SAAS,EAAE,IAAI;wBACf,YAAY,EAAE,CAAC,CAAC,MAAM;AACvB,qBAAA;AACwB,iBAAA;AAC5B,aAAA,CAAC;QACJ;AAEA,QAAA,MAAM,MAAM,GAA+B,GAAG,CAAC,QAAQ,CAAC,aAAS;AAC/D,YAAA,KAAK,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE;gBACrC,MAAM,GAAG,GAAG,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAC;AAEpC,gBAAA,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;oBACrB,OAAO,8BAA8B,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC;gBACzD;YACF;AACF,QAAA,CAAC,CAAC;AAEF,QAAA,IAAI,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE;AAC1B,YAAA,OAAO,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC;QAC3B;;AAGA,QAAA,OAAO,MAAM,CAAC,EAAE,CAAC,CAAiB,CAAC;AACrC,IAAA,CAAC;AAED,IAAA,MAAM,IAAI,GAAoB,CAAC,CAAC,KAC9B,GAAG,CAAC,OAAO,CAAC,CAAC;AACX,UAAE,GAAG,CAAC,GAAG,CACL,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,EACvB,CAAC,CAAC,KAAK,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAa;UAE3C,eAAe,EAAE;IAEvB,OAAO;QACL,QAAQ;AACR,QAAA,IAAI,YAAY,GAAA;YACd,OAAO,eAAe,EAAE;QAC1B,CAAC;QACD,IAAI;QACJ,QAAQ;AACR,QAAA,EAAE,EAAE,UAAU,CAAC,QAAQ,CAAC;AACxB,QAAA,IAAI,EAAE,YAAY,CAAC,QAAQ,CAAC;AAC5B,QAAA,QAAQ,EAAE,cAAc,CAAC,QAAQ,CAAC;KACnC;AACH;;;;"}
@@ -1,8 +1,12 @@
1
1
  import { type ArrayAtMostLen, type SmallUint } from 'ts-type-forge';
2
2
  import { type Type } from '../type.mjs';
3
3
  export type { ArrayAtMostLen } from 'ts-type-forge';
4
- export declare const arrayAtMostLength: <A, N extends SmallUint>(size: N, elementType: Type<A>, options?: Partial<Readonly<{
4
+ export declare function arrayAtMostLength<A, N extends SmallUint>(size: N, elementType: Type<A>, options?: Partial<Readonly<{
5
5
  typeName: string;
6
6
  defaultValue: ArrayAtMostLen<N, A>;
7
- }>>) => Type<ArrayAtMostLen<N, A>>;
7
+ }>>): Type<ArrayAtMostLen<N, A>>;
8
+ export declare function arrayAtMostLength<A>(size: number, elementType: Type<A>, options?: Partial<Readonly<{
9
+ typeName: string;
10
+ defaultValue: readonly A[];
11
+ }>>): Type<readonly A[]>;
8
12
  //# sourceMappingURL=array-at-most-length.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"array-at-most-length.d.mts","sourceRoot":"","sources":["../../src/array/array-at-most-length.mts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,cAAc,EAAE,KAAK,SAAS,EAAE,MAAM,eAAe,CAAC;AACpE,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,aAAa,CAAC;AAUxC,YAAY,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAEpD,eAAO,MAAM,iBAAiB,GAAI,CAAC,EAAE,CAAC,SAAS,SAAS,EACtD,MAAM,CAAC,EACP,aAAa,IAAI,CAAC,CAAC,CAAC,EACpB,UAAU,OAAO,CACf,QAAQ,CAAC;IACP,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;CACpC,CAAC,CACH,KACA,IAAI,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAkF3B,CAAC"}
1
+ {"version":3,"file":"array-at-most-length.d.mts","sourceRoot":"","sources":["../../src/array/array-at-most-length.mts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,cAAc,EAAE,KAAK,SAAS,EAAE,MAAM,eAAe,CAAC;AACpE,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,aAAa,CAAC;AAUxC,YAAY,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAEpD,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,CAAC,SAAS,SAAS,EACtD,IAAI,EAAE,CAAC,EACP,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,EACpB,OAAO,CAAC,EAAE,OAAO,CACf,QAAQ,CAAC;IACP,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;CACpC,CAAC,CACH,GACA,IAAI,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAI9B,wBAAgB,iBAAiB,CAAC,CAAC,EACjC,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,EACpB,OAAO,CAAC,EAAE,OAAO,CACf,QAAQ,CAAC;IACP,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,SAAS,CAAC,EAAE,CAAC;CAC5B,CAAC,CACH,GACA,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC"}
@@ -1,14 +1,13 @@
1
- import { memoizeFunction, Arr, Result } from 'ts-data-forge';
1
+ import { memoizeFunction, Arr, Result, asUint32 } from 'ts-data-forge';
2
2
  import { createAssertFn } from '../utils/create-assert-fn.mjs';
3
3
  import { createCastFn } from '../utils/create-cast-fn.mjs';
4
4
  import { createIsFn } from '../utils/create-is-fn.mjs';
5
5
  import { createPrimitiveValidationError, prependIndexToValidationErrors } from '../utils/validation-error.mjs';
6
6
 
7
- const arrayAtMostLength = (size, elementType, options) => {
7
+ function arrayAtMostLength(size, elementType, options) {
8
8
  const typeName = options?.typeName ?? `ArrayAtMostLen<${size}, ${elementType.typeName}>`;
9
9
  const getDefaultValue = memoizeFunction(() => options?.defaultValue ??
10
10
  // The empty array is the shortest value satisfying `length <= size`.
11
- // eslint-disable-next-line total-functions/no-unsafe-type-assertion
12
11
  Arr.create(0, elementType.defaultValue));
13
12
  const validate = (a) => {
14
13
  if (!Arr.isArray(a)) {
@@ -52,9 +51,7 @@ const arrayAtMostLength = (size, elementType, options) => {
52
51
  };
53
52
  const fill = (a) => Arr.isArray(a)
54
53
  ? // Keep the input but trim down to at most `size` elements.
55
- // TODO: remove as
56
- // eslint-disable-next-line total-functions/no-unsafe-type-assertion
57
- Arr.map(Arr.take(a, size), (el) => elementType.fill(el))
54
+ Arr.map(Arr.take(a, asUint32(size)), (el) => elementType.fill(el))
58
55
  : getDefaultValue();
59
56
  return {
60
57
  typeName,
@@ -67,7 +64,7 @@ const arrayAtMostLength = (size, elementType, options) => {
67
64
  cast: createCastFn(validate),
68
65
  assertIs: createAssertFn(validate),
69
66
  };
70
- };
67
+ }
71
68
 
72
69
  export { arrayAtMostLength };
73
70
  //# sourceMappingURL=array-at-most-length.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"array-at-most-length.mjs","sources":["../../src/array/array-at-most-length.mts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;AAcO,MAAM,iBAAiB,GAAG,CAC/B,IAAO,EACP,WAAoB,EACpB,OAKC,KAC6B;AAG9B,IAAA,MAAM,QAAQ,GACZ,OAAO,EAAE,QAAQ,IAAI,CAAA,eAAA,EAAkB,IAAI,CAAA,EAAA,EAAK,WAAW,CAAC,QAAQ,GAAG;IAEzE,MAAM,eAAe,GAAG,eAAe,CACrC,MACE,OAAO,EAAE,YAAY;;;QAGpB,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,WAAW,CAAC,YAAY,CAAO,CACjD;AAED,IAAA,MAAM,QAAQ,GAAwB,CAAC,CAAC,KAAI;QAC1C,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;YACnB,OAAO,MAAM,CAAC,GAAG,CAAC;AAChB,gBAAA,8BAA8B,CAAC;AAC7B,oBAAA,WAAW,EAAE,CAAC;AACd,oBAAA,YAAY,EAAE,OAAO;oBACrB,QAAQ;AACR,oBAAA,OAAO,EAAE,SAAS;iBACnB,CAAC;AACH,aAAA,CAAC;QACJ;AAEA,QAAA,IAAI,CAAC,CAAC,MAAM,GAAG,IAAI,EAAE;YACnB,OAAO,MAAM,CAAC,GAAG,CAAC;AAChB,gBAAA;AACE,oBAAA,IAAI,EAAE,EAAE;AACR,oBAAA,WAAW,EAAE,CAAC;AACd,oBAAA,YAAY,EAAE,QAAQ;oBACtB,QAAQ;AACR,oBAAA,OAAO,EAAE;AACP,wBAAA,IAAI,EAAE,kBAAkB;AACxB,wBAAA,SAAS,EAAE,IAAI;wBACf,YAAY,EAAE,CAAC,CAAC,MAAM;AACvB,qBAAA;AACwB,iBAAA;AAC5B,aAAA,CAAC;QACJ;AAEA,QAAA,MAAM,MAAM,GAA+B,GAAG,CAAC,QAAQ,CAAC,aAAS;AAC/D,YAAA,KAAK,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE;gBACrC,MAAM,GAAG,GAAG,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAC;AAEpC,gBAAA,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;oBACrB,OAAO,8BAA8B,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC;gBACzD;YACF;AACF,QAAA,CAAC,CAAC;AAEF,QAAA,IAAI,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE;AAC1B,YAAA,OAAO,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC;QAC3B;;AAGA,QAAA,OAAO,MAAM,CAAC,EAAE,CAAC,CAAiB,CAAC;AACrC,IAAA,CAAC;AAED,IAAA,MAAM,IAAI,GAAoB,CAAC,CAAC,KAC9B,GAAG,CAAC,OAAO,CAAC,CAAC;AACX;;;YAGG,GAAG,CAAC,GAAG,CACN,GAAG,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,EACjB,CAAC,EAAE,KAAK,WAAW,CAAC,IAAI,CAAC,EAAE,CAAa;UAE1C,eAAe,EAAE;IAEvB,OAAO;QACL,QAAQ;AACR,QAAA,IAAI,YAAY,GAAA;YACd,OAAO,eAAe,EAAE;QAC1B,CAAC;QACD,IAAI;QACJ,QAAQ;AACR,QAAA,EAAE,EAAE,UAAU,CAAC,QAAQ,CAAC;AACxB,QAAA,IAAI,EAAE,YAAY,CAAC,QAAQ,CAAC;AAC5B,QAAA,QAAQ,EAAE,cAAc,CAAC,QAAQ,CAAC;KACnC;AACH;;;;"}
1
+ {"version":3,"file":"array-at-most-length.mjs","sources":["../../src/array/array-at-most-length.mts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;SAsCgB,iBAAiB,CAC/B,IAAY,EACZ,WAAoB,EACpB,OAKC,EAAA;AAID,IAAA,MAAM,QAAQ,GACZ,OAAO,EAAE,QAAQ,IAAI,CAAA,eAAA,EAAkB,IAAI,CAAA,EAAA,EAAK,WAAW,CAAC,QAAQ,GAAG;IAEzE,MAAM,eAAe,GAAG,eAAe,CACrC,MACE,OAAO,EAAE,YAAY;;QAErB,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,WAAW,CAAC,YAAY,CAAC,CAC1C;AAED,IAAA,MAAM,QAAQ,GAAwB,CAAC,CAAC,KAAI;QAC1C,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;YACnB,OAAO,MAAM,CAAC,GAAG,CAAC;AAChB,gBAAA,8BAA8B,CAAC;AAC7B,oBAAA,WAAW,EAAE,CAAC;AACd,oBAAA,YAAY,EAAE,OAAO;oBACrB,QAAQ;AACR,oBAAA,OAAO,EAAE,SAAS;iBACnB,CAAC;AACH,aAAA,CAAC;QACJ;AAEA,QAAA,IAAI,CAAC,CAAC,MAAM,GAAG,IAAI,EAAE;YACnB,OAAO,MAAM,CAAC,GAAG,CAAC;AAChB,gBAAA;AACE,oBAAA,IAAI,EAAE,EAAE;AACR,oBAAA,WAAW,EAAE,CAAC;AACd,oBAAA,YAAY,EAAE,QAAQ;oBACtB,QAAQ;AACR,oBAAA,OAAO,EAAE;AACP,wBAAA,IAAI,EAAE,kBAAkB;AACxB,wBAAA,SAAS,EAAE,IAAI;wBACf,YAAY,EAAE,CAAC,CAAC,MAAM;AACvB,qBAAA;AACwB,iBAAA;AAC5B,aAAA,CAAC;QACJ;AAEA,QAAA,MAAM,MAAM,GAA+B,GAAG,CAAC,QAAQ,CAAC,aAAS;AAC/D,YAAA,KAAK,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE;gBACrC,MAAM,GAAG,GAAG,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAC;AAEpC,gBAAA,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;oBACrB,OAAO,8BAA8B,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC;gBACzD;YACF;AACF,QAAA,CAAC,CAAC;AAEF,QAAA,IAAI,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE;AAC1B,YAAA,OAAO,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC;QAC3B;;AAGA,QAAA,OAAO,MAAM,CAAC,EAAE,CAAC,CAAiB,CAAC;AACrC,IAAA,CAAC;AAED,IAAA,MAAM,IAAI,GAAoB,CAAC,CAAC,KAC9B,GAAG,CAAC,OAAO,CAAC,CAAC;AACX;YACE,GAAG,CAAC,GAAG,CACL,GAAG,CAAC,IAAI,CAAC,CAAC,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,EAC3B,CAAC,EAAE,KAAK,WAAW,CAAC,IAAI,CAAC,EAAE,CAAa;UAE1C,eAAe,EAAE;IAEvB,OAAO;QACL,QAAQ;AACR,QAAA,IAAI,YAAY,GAAA;YACd,OAAO,eAAe,EAAE;QAC1B,CAAC;QACD,IAAI;QACJ,QAAQ;AACR,QAAA,EAAE,EAAE,UAAU,CAAC,QAAQ,CAAC;AACxB,QAAA,IAAI,EAAE,YAAY,CAAC,QAAQ,CAAC;AAC5B,QAAA,QAAQ,EAAE,cAAc,CAAC,QAAQ,CAAC;KACnC;AACH;;;;"}
@@ -1,8 +1,20 @@
1
- import { type ArrayBoundedLen, type SmallUint } from 'ts-type-forge';
1
+ import { type ArrayAtLeastLen, type ArrayAtMostLen, type ArrayBoundedLen, type SmallUint } from 'ts-type-forge';
2
2
  import { type Type } from '../type.mjs';
3
3
  export type { ArrayBoundedLen } from 'ts-type-forge';
4
- export declare const arrayBoundedLength: <A, Min extends SmallUint, Max extends SmallUint>(min: Min, max: Max, elementType: Type<A>, options?: Partial<Readonly<{
4
+ export declare function arrayBoundedLength<A, Min extends SmallUint, Max extends SmallUint>(min: Min, max: Max, elementType: Type<A>, options?: Partial<Readonly<{
5
5
  typeName: string;
6
6
  defaultValue: ArrayBoundedLen<Min, Max, A>;
7
- }>>) => Type<ArrayBoundedLen<Min, Max, A>>;
7
+ }>>): Type<ArrayBoundedLen<Min, Max, A>>;
8
+ export declare function arrayBoundedLength<A, Min extends SmallUint>(min: Min, max: number, elementType: Type<A>, options?: Partial<Readonly<{
9
+ typeName: string;
10
+ defaultValue: ArrayAtLeastLen<Min, A>;
11
+ }>>): Type<ArrayAtLeastLen<Min, A>>;
12
+ export declare function arrayBoundedLength<A, Max extends SmallUint>(min: number, max: Max, elementType: Type<A>, options?: Partial<Readonly<{
13
+ typeName: string;
14
+ defaultValue: ArrayAtMostLen<Max, A>;
15
+ }>>): Type<ArrayAtMostLen<Max, A>>;
16
+ export declare function arrayBoundedLength<A>(min: number, max: number, elementType: Type<A>, options?: Partial<Readonly<{
17
+ typeName: string;
18
+ defaultValue: readonly A[];
19
+ }>>): Type<readonly A[]>;
8
20
  //# sourceMappingURL=array-bounded-length.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"array-bounded-length.d.mts","sourceRoot":"","sources":["../../src/array/array-bounded-length.mts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,eAAe,EAAE,KAAK,SAAS,EAAE,MAAM,eAAe,CAAC;AACrE,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,aAAa,CAAC;AAUxC,YAAY,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAErD,eAAO,MAAM,kBAAkB,GAC7B,CAAC,EACD,GAAG,SAAS,SAAS,EACrB,GAAG,SAAS,SAAS,EAErB,KAAK,GAAG,EACR,KAAK,GAAG,EACR,aAAa,IAAI,CAAC,CAAC,CAAC,EACpB,UAAU,OAAO,CACf,QAAQ,CAAC;IACP,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;CAC5C,CAAC,CACH,KACA,IAAI,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,CAyFnC,CAAC"}
1
+ {"version":3,"file":"array-bounded-length.d.mts","sourceRoot":"","sources":["../../src/array/array-bounded-length.mts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,KAAK,SAAS,EACf,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,aAAa,CAAC;AAUxC,YAAY,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAErD,wBAAgB,kBAAkB,CAChC,CAAC,EACD,GAAG,SAAS,SAAS,EACrB,GAAG,SAAS,SAAS,EAErB,GAAG,EAAE,GAAG,EACR,GAAG,EAAE,GAAG,EACR,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,EACpB,OAAO,CAAC,EAAE,OAAO,CACf,QAAQ,CAAC;IACP,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;CAC5C,CAAC,CACH,GACA,IAAI,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;AAItC,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,GAAG,SAAS,SAAS,EACzD,GAAG,EAAE,GAAG,EACR,GAAG,EAAE,MAAM,EACX,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,EACpB,OAAO,CAAC,EAAE,OAAO,CACf,QAAQ,CAAC;IACP,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,eAAe,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;CACvC,CAAC,CACH,GACA,IAAI,CAAC,eAAe,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;AAIjC,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,GAAG,SAAS,SAAS,EACzD,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,GAAG,EACR,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,EACpB,OAAO,CAAC,EAAE,OAAO,CACf,QAAQ,CAAC;IACP,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,cAAc,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;CACtC,CAAC,CACH,GACA,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;AAGhC,wBAAgB,kBAAkB,CAAC,CAAC,EAClC,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,EACpB,OAAO,CAAC,EAAE,OAAO,CACf,QAAQ,CAAC;IACP,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,SAAS,CAAC,EAAE,CAAC;CAC5B,CAAC,CACH,GACA,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC"}
@@ -1,16 +1,15 @@
1
- import { memoizeFunction, Arr, Result } from 'ts-data-forge';
1
+ import { memoizeFunction, Arr, asUint32, Result } from 'ts-data-forge';
2
2
  import { createAssertFn } from '../utils/create-assert-fn.mjs';
3
3
  import { createCastFn } from '../utils/create-cast-fn.mjs';
4
4
  import { createIsFn } from '../utils/create-is-fn.mjs';
5
5
  import { createPrimitiveValidationError, prependIndexToValidationErrors } from '../utils/validation-error.mjs';
6
6
 
7
- const arrayBoundedLength = (min, max, elementType, options) => {
7
+ function arrayBoundedLength(min, max, elementType, options) {
8
8
  const typeName = options?.typeName ??
9
9
  `ArrayBoundedLen<${min}, ${max}, ${elementType.typeName}>`;
10
10
  const getDefaultValue = memoizeFunction(() => options?.defaultValue ??
11
11
  // An array of the minimum length is the shortest value within the range.
12
- // eslint-disable-next-line total-functions/no-unsafe-type-assertion
13
- Arr.create(min, elementType.defaultValue));
12
+ Arr.create(asUint32(min), elementType.defaultValue));
14
13
  const validate = (a) => {
15
14
  if (!Arr.isArray(a)) {
16
15
  return Result.err([
@@ -57,11 +56,10 @@ const arrayBoundedLength = (min, max, elementType, options) => {
57
56
  return getDefaultValue();
58
57
  }
59
58
  // Trim down to at most `max`, then pad up to at least `min`.
60
- const capped = Arr.take(a, max);
61
- // eslint-disable-next-line total-functions/no-unsafe-type-assertion
62
- return (capped.length >= min
59
+ const capped = Arr.take(a, asUint32(max));
60
+ return capped.length >= min
63
61
  ? Arr.map(capped, (el) => elementType.fill(el))
64
- : Arr.map(Arr.seq(min), (i) => elementType.fill(capped[i])));
62
+ : Arr.map(Arr.seq(asUint32(min)), (i) => elementType.fill(capped[i]));
65
63
  };
66
64
  return {
67
65
  typeName,
@@ -74,7 +72,7 @@ const arrayBoundedLength = (min, max, elementType, options) => {
74
72
  cast: createCastFn(validate),
75
73
  assertIs: createAssertFn(validate),
76
74
  };
77
- };
75
+ }
78
76
 
79
77
  export { arrayBoundedLength };
80
78
  //# sourceMappingURL=array-bounded-length.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"array-bounded-length.mjs","sources":["../../src/array/array-bounded-length.mts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"array-bounded-length.mjs","sources":["../../src/array/array-bounded-length.mts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"intersection.d.mts","sourceRoot":"","sources":["../../src/compose/intersection.mts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,YAAY,EAAE,KAAK,aAAa,EAAE,MAAM,eAAe,CAAC;AACtE,OAAO,EAGL,KAAK,IAAI,EACT,KAAK,MAAM,EACZ,MAAM,aAAa,CAAC;AASrB,eAAO,MAAM,YAAY,GAAI,KAAK,CAAC,KAAK,SAAS,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,EAC3E,OAAO,KAAK,EACZ,aAAa,gBAAgB,CAAC,KAAK,CAAC,EACpC,UAAU,OAAO,CACf,QAAQ,CAAC;IACP,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC,CACH,KACA,gBAAgB,CAAC,KAAK,CAyExB,CAAC;AAEF,KAAK,gBAAgB,CAAC,KAAK,SAAS,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,IAAI,CACtE,qBAAqB,CAAC,KAAK,CAAC,CAC7B,CAAC;AAEF,KAAK,qBAAqB,CAAC,KAAK,SAAS,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IACnE,kBAAkB,CAAC,yBAAyB,CAAC,KAAK,CAAC,CAAC;AAEtD,kBAAU,kBAAkB,CAAC;IAC3B,MAAM,MAAM,yBAAyB,CACnC,KAAK,SAAS,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IACxC,YAAY,CAAC,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAE/C,KAAK,KAAK,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,SAAS,SAAS,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,GAClE,CAAC,GACD,KAAK,CAAC;;CACX;AA4BD,KAAK,cAAc,CAAC,KAAK,SAAS,SAAS,IAAI,CAAC,OAAO,CAAC,EAAE,IACxD,kBAAkB,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;AAE3C,kBAAU,kBAAkB,CAAC;IAC3B,MAAM,MAAM,cAAc,CAAC,KAAK,SAAS,SAAS,OAAO,EAAE,IACzD,KAAK,SAAS,SAAS,EAAE,GACrB,SAAS,EAAE,GACX,KAAK,SAAS,SAAS,CAAC,MAAM,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,GAChD,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,GACvD,KAAK,CAAC;IAGd,KAAK,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;;CACzD"}
1
+ {"version":3,"file":"intersection.d.mts","sourceRoot":"","sources":["../../src/compose/intersection.mts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,YAAY,EAAE,KAAK,aAAa,EAAE,MAAM,eAAe,CAAC;AACtE,OAAO,EAGL,KAAK,IAAI,EACT,KAAK,MAAM,EACZ,MAAM,aAAa,CAAC;AASrB,eAAO,MAAM,YAAY,GAAI,KAAK,CAAC,KAAK,SAAS,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,EAC3E,OAAO,KAAK,EACZ,aAAa,gBAAgB,CAAC,KAAK,CAAC,EACpC,UAAU,OAAO,CACf,QAAQ,CAAC;IACP,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC,CACH,KACA,gBAAgB,CAAC,KAAK,CAyExB,CAAC;AAEF,KAAK,gBAAgB,CAAC,KAAK,SAAS,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,IAAI,CACtE,qBAAqB,CAAC,KAAK,CAAC,CAC7B,CAAC;AAEF,KAAK,qBAAqB,CAAC,KAAK,SAAS,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IACnE,kBAAkB,CAAC,yBAAyB,CAAC,KAAK,CAAC,CAAC;AAEtD,kBAAU,kBAAkB,CAAC;IAC3B,MAAM,MAAM,yBAAyB,CACnC,KAAK,SAAS,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IACxC,YAAY,CAAC,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAE/C,KAAK,KAAK,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,SAAS,SAAS,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,GAClE,CAAC,GACD,KAAK,CAAC;;CACX;AA4BD,KAAK,cAAc,CAAC,KAAK,SAAS,SAAS,IAAI,CAAC,OAAO,CAAC,EAAE,IACxD,kBAAkB,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;AAE3C,kBAAU,kBAAkB,CAAC;IAC3B,MAAM,MAAM,cAAc,CAAC,KAAK,SAAS,SAAS,OAAO,EAAE,IACzD,KAAK,SAAS,SAAS,EAAE,GACrB,SAAS,EAAE,GACX,KAAK,SAAS,SAAS,CAAC,MAAM,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,GAChD,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,GACvD,KAAK,CAAC;IAEd,KAAK,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;;CACzD"}
@@ -25,7 +25,13 @@ export { finiteNumber } from './predefined/brand/number/finite-number.mjs';
25
25
  export { int } from './predefined/brand/number/int.mjs';
26
26
  export { int16 } from './predefined/brand/number/int16.mjs';
27
27
  export { int32 } from './predefined/brand/number/int32.mjs';
28
+ export { negativeFiniteNumber } from './predefined/brand/number/negative-finite-number.mjs';
29
+ export { negativeInt } from './predefined/brand/number/negative-int.mjs';
30
+ export { negativeSafeInt } from './predefined/brand/number/negative-safe-int.mjs';
28
31
  export { nonNegativeFiniteNumber } from './predefined/brand/number/non-negative-finite-number.mjs';
32
+ export { nonPositiveFiniteNumber } from './predefined/brand/number/non-positive-finite-number.mjs';
33
+ export { nonPositiveInt } from './predefined/brand/number/non-positive-int.mjs';
34
+ export { nonPositiveSafeInt } from './predefined/brand/number/non-positive-safe-int.mjs';
29
35
  export { nonZeroFiniteNumber } from './predefined/brand/number/non-zero-finite-number.mjs';
30
36
  export { nonZeroInt } from './predefined/brand/number/non-zero-int.mjs';
31
37
  export { nonZeroSafeInt } from './predefined/brand/number/non-zero-safe-int.mjs';
@@ -1 +1 @@
1
- {"version":3,"file":"entry-point.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"entry-point.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"int-range.d.mts","sourceRoot":"","sources":["../../src/enum/int-range.mts"],"names":[],"mappings":"AAOA,OAAO,EACL,KAAK,OAAO,EACZ,KAAK,KAAK,EACV,KAAK,cAAc,EACnB,KAAK,IAAI,EACT,KAAK,aAAa,EAClB,KAAK,WAAW,EAChB,KAAK,SAAS,EACf,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,aAAa,CAAC;AAQxC,eAAO,MAAM,QAAQ,GAAI,KAAK,SAAS,IAAI,EAAE,GAAG,SAAS,IAAI,GAAG,GAAG,EAAE,4BAIlE,QAAQ,CAAC;IACV,KAAK,EAAE,KAAK,CAAC;IACb,GAAG,EAAE,GAAG,CAAC;IACT,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;CACrC,CAAC,KAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,CA8C7B,CAAC;AAEF,KAAK,aAAa,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;AAExC,KAAK,aAAa,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;AAEzC,MAAM,MAAM,QAAQ,CAAC,KAAK,SAAS,IAAI,EAAE,GAAG,SAAS,IAAI,GAAG,GAAG,IAC7D,OAAO,CACL,WAAW,CAAC,KAAK,EAAE,aAAa,CAAC,EACjC,WAAW,CAAC,GAAG,EAAE,aAAa,CAAC,CAChC,SAAS,IAAI,GACV,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC,GACrB,OAAO,CACH,WAAW,CAAC,KAAK,EAAE,aAAa,CAAC,EACjC,WAAW,CAAC,GAAG,EAAE,aAAa,CAAC,CAChC,SAAS,IAAI,GACd,aAAa,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,GACrD,OAAO,CACH,WAAW,CAAC,KAAK,EAAE,aAAa,CAAC,EACjC,WAAW,CAAC,GAAG,EAAE,aAAa,CAAC,CAChC,SAAS,IAAI,GACd,KAAK,GACL,OAAO,CACH,WAAW,CAAC,KAAK,EAAE,aAAa,CAAC,EACjC,WAAW,CAAC,GAAG,EAAE,aAAa,CAAC,CAChC,SAAS,IAAI,GACd,OAAO,CACL,aAAa,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,EACxC,aAAa,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,CACvC,GACD,KAAK,CAAC;AAElB,KAAK,kBAAkB,CAAC,CAAC,SAAS,MAAM,IACtC,GAAG,CAAC,EAAE,SAAS,IAAI,MAAM,CAAC,SAAS,MAAM,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC"}
1
+ {"version":3,"file":"int-range.d.mts","sourceRoot":"","sources":["../../src/enum/int-range.mts"],"names":[],"mappings":"AAOA,OAAO,EACL,KAAK,OAAO,EACZ,KAAK,KAAK,EACV,KAAK,cAAc,EACnB,KAAK,IAAI,EACT,KAAK,aAAa,EAClB,KAAK,WAAW,EAChB,KAAK,SAAS,EACf,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,aAAa,CAAC;AAQxC,eAAO,MAAM,QAAQ,GAAI,KAAK,SAAS,IAAI,EAAE,GAAG,SAAS,IAAI,GAAG,GAAG,EAAE,4BAIlE,QAAQ,CAAC;IACV,KAAK,EAAE,KAAK,CAAC;IACb,GAAG,EAAE,GAAG,CAAC;IACT,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;CACrC,CAAC,KAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,CAgD7B,CAAC;AAEF,KAAK,aAAa,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;AAExC,KAAK,aAAa,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;AAEzC,MAAM,MAAM,QAAQ,CAAC,KAAK,SAAS,IAAI,EAAE,GAAG,SAAS,IAAI,GAAG,GAAG,IAC7D,OAAO,CACL,WAAW,CAAC,KAAK,EAAE,aAAa,CAAC,EACjC,WAAW,CAAC,GAAG,EAAE,aAAa,CAAC,CAChC,SAAS,IAAI,GACV,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC,GACrB,OAAO,CACH,WAAW,CAAC,KAAK,EAAE,aAAa,CAAC,EACjC,WAAW,CAAC,GAAG,EAAE,aAAa,CAAC,CAChC,SAAS,IAAI,GACd,aAAa,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,GACrD,OAAO,CACH,WAAW,CAAC,KAAK,EAAE,aAAa,CAAC,EACjC,WAAW,CAAC,GAAG,EAAE,aAAa,CAAC,CAChC,SAAS,IAAI,GACd,KAAK,GACL,OAAO,CACH,WAAW,CAAC,KAAK,EAAE,aAAa,CAAC,EACjC,WAAW,CAAC,GAAG,EAAE,aAAa,CAAC,CAChC,SAAS,IAAI,GACd,OAAO,CACL,aAAa,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,EACxC,aAAa,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,CACvC,GACD,KAAK,CAAC;AAElB,KAAK,kBAAkB,CAAC,CAAC,SAAS,MAAM,IACtC,GAAG,CAAC,EAAE,SAAS,IAAI,MAAM,CAAC,SAAS,MAAM,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC"}
@@ -9,7 +9,7 @@ const intRange = ({ end, start, ...options }) => {
9
9
  // eslint-disable-next-line total-functions/no-unsafe-type-assertion
10
10
  () => options.defaultValue ?? start);
11
11
  const validate = (a) => {
12
- if (!(isNumber(a) && Number.isInteger(a) && Num.isInRange(start, end)(a))) {
12
+ if (!(isNumber(a) && Number.isSafeInteger(a) && Num.isInRange(start, end)(a))) {
13
13
  return Result.err([
14
14
  {
15
15
  path: [],
@@ -1 +1 @@
1
- {"version":3,"file":"int-range.mjs","sources":["../../src/enum/int-range.mts"],"sourcesContent":[null],"names":[],"mappings":";;;;;AAwBO,MAAM,QAAQ,GAAG,CAA6C,EACnE,GAAG,EACH,KAAK,EACL,GAAG,OAAO,EAMV,KAAgC;IAGhC,MAAM,cAAc,GAAG,OAAO,CAAC,QAAQ,IAAI,CAAA,SAAA,EAAY,KAAK,CAAA,EAAA,EAAK,GAAG,CAAA,CAAA,CAAG;IAEvE,MAAM,eAAe,GAAG,eAAe;;IAErC,MAAS,OAAO,CAAC,YAAY,IAAK,KAAW,CAC9C;AAED,IAAA,MAAM,QAAQ,GAAwB,CAAC,CAAC,KAAI;QAC1C,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;YACzE,OAAO,MAAM,CAAC,GAAG,CAAC;AAChB,gBAAA;AACE,oBAAA,IAAI,EAAE,EAAE;AACR,oBAAA,WAAW,EAAE,CAAC;AACd,oBAAA,YAAY,EAAE,cAAc;AAC5B,oBAAA,QAAQ,EAAE,cAAc;AACxB,oBAAA,OAAO,EAAE;AACP,wBAAA,IAAI,EAAE,eAAe;wBACrB,KAAK;AACL,wBAAA,YAAY,EAAE,GAAG;AAClB,qBAAA;AACwB,iBAAA;AAC5B,aAAA,CAAC;;;AAIJ,QAAA,OAAO,MAAM,CAAC,EAAE,CAAC,CAAM,CAAC;AAC1B,IAAA,CAAC;AAED,IAAA,MAAM,EAAE,GAAG,UAAU,CAAI,QAAQ,CAAC;IAElC,MAAM,IAAI,GAAoB,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,eAAe,EAAE,CAAC;IAEpE,OAAO;AACL,QAAA,QAAQ,EAAE,cAAc;AACxB,QAAA,IAAI,YAAY,GAAA;YACd,OAAO,eAAe,EAAE;SACzB;QACD,IAAI;QACJ,QAAQ;QACR,EAAE;AACF,QAAA,QAAQ,EAAE,cAAc,CAAC,QAAQ,CAAC;AAClC,QAAA,IAAI,EAAE,YAAY,CAAC,QAAQ,CAAC;KAC7B;AACH;;;;"}
1
+ {"version":3,"file":"int-range.mjs","sources":["../../src/enum/int-range.mts"],"sourcesContent":[null],"names":[],"mappings":";;;;;AAwBO,MAAM,QAAQ,GAAG,CAA6C,EACnE,GAAG,EACH,KAAK,EACL,GAAG,OAAO,EAMV,KAAgC;IAGhC,MAAM,cAAc,GAAG,OAAO,CAAC,QAAQ,IAAI,CAAA,SAAA,EAAY,KAAK,CAAA,EAAA,EAAK,GAAG,CAAA,CAAA,CAAG;IAEvE,MAAM,eAAe,GAAG,eAAe;;IAErC,MAAS,OAAO,CAAC,YAAY,IAAK,KAAW,CAC9C;AAED,IAAA,MAAM,QAAQ,GAAwB,CAAC,CAAC,KAAI;QAC1C,IACE,EAAE,QAAQ,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EACzE;YACA,OAAO,MAAM,CAAC,GAAG,CAAC;AAChB,gBAAA;AACE,oBAAA,IAAI,EAAE,EAAE;AACR,oBAAA,WAAW,EAAE,CAAC;AACd,oBAAA,YAAY,EAAE,cAAc;AAC5B,oBAAA,QAAQ,EAAE,cAAc;AACxB,oBAAA,OAAO,EAAE;AACP,wBAAA,IAAI,EAAE,eAAe;wBACrB,KAAK;AACL,wBAAA,YAAY,EAAE,GAAG;AAClB,qBAAA;AACwB,iBAAA;AAC5B,aAAA,CAAC;;;AAIJ,QAAA,OAAO,MAAM,CAAC,EAAE,CAAC,CAAM,CAAC;AAC1B,IAAA,CAAC;AAED,IAAA,MAAM,EAAE,GAAG,UAAU,CAAI,QAAQ,CAAC;IAElC,MAAM,IAAI,GAAoB,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,eAAe,EAAE,CAAC;IAEpE,OAAO;AACL,QAAA,QAAQ,EAAE,cAAc;AACxB,QAAA,IAAI,YAAY,GAAA;YACd,OAAO,eAAe,EAAE;SACzB;QACD,IAAI;QACJ,QAAQ;QACR,EAAE;AACF,QAAA,QAAQ,EAAE,cAAc,CAAC,QAAQ,CAAC;AAClC,QAAA,IAAI,EAAE,YAAY,CAAC,QAAQ,CAAC;KAC7B;AACH;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"uint-range.d.mts","sourceRoot":"","sources":["../../src/enum/uint-range.mts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,KAAK,EAAE,KAAK,SAAS,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,aAAa,CAAC;AAQxC,YAAY,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE/C,eAAO,MAAM,SAAS,GACpB,KAAK,SAAS,KAAK,EACnB,GAAG,SAAS,OAAO,CAAC,KAAK,GAAG,GAAG,EAAE,KAAK,CAAC,EACvC,4BAIC,QAAQ,CAAC;IACV,KAAK,EAAE,KAAK,CAAC;IACb,GAAG,EAAE,GAAG,CAAC;IACT,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;CACtC,CAAC,KAAG,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC,CA8C9B,CAAC"}
1
+ {"version":3,"file":"uint-range.d.mts","sourceRoot":"","sources":["../../src/enum/uint-range.mts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,KAAK,EAAE,KAAK,SAAS,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,aAAa,CAAC;AAQxC,YAAY,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE/C,eAAO,MAAM,SAAS,GACpB,KAAK,SAAS,KAAK,EACnB,GAAG,SAAS,OAAO,CAAC,KAAK,GAAG,GAAG,EAAE,KAAK,CAAC,EACvC,4BAIC,QAAQ,CAAC;IACV,KAAK,EAAE,KAAK,CAAC;IACb,GAAG,EAAE,GAAG,CAAC;IACT,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;CACtC,CAAC,KAAG,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC,CAgD9B,CAAC"}
@@ -9,7 +9,7 @@ const uintRange = ({ end, start, ...options }) => {
9
9
  // eslint-disable-next-line total-functions/no-unsafe-type-assertion
10
10
  () => options.defaultValue ?? start);
11
11
  const validate = (a) => {
12
- if (!(isNumber(a) && Number.isInteger(a) && Num.isInRange(start, end)(a))) {
12
+ if (!(isNumber(a) && Number.isSafeInteger(a) && Num.isInRange(start, end)(a))) {
13
13
  return Result.err([
14
14
  {
15
15
  path: [],
@@ -1 +1 @@
1
- {"version":3,"file":"uint-range.mjs","sources":["../../src/enum/uint-range.mts"],"sourcesContent":[null],"names":[],"mappings":";;;;;AAYO,MAAM,SAAS,GAAG,CAGvB,EACA,GAAG,EACH,KAAK,EACL,GAAG,OAAO,EAMV,KAAiC;IAGjC,MAAM,cAAc,GAAG,OAAO,CAAC,QAAQ,IAAI,CAAA,UAAA,EAAa,KAAK,CAAA,EAAA,EAAK,GAAG,CAAA,CAAA,CAAG;IAExE,MAAM,eAAe,GAAG,eAAe;;IAErC,MAAS,OAAO,CAAC,YAAY,IAAK,KAAW,CAC9C;AAED,IAAA,MAAM,QAAQ,GAAwB,CAAC,CAAC,KAAI;QAC1C,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;YACzE,OAAO,MAAM,CAAC,GAAG,CAAC;AAChB,gBAAA;AACE,oBAAA,IAAI,EAAE,EAAE;AACR,oBAAA,WAAW,EAAE,CAAC;AACd,oBAAA,YAAY,EAAE,cAAc;AAC5B,oBAAA,QAAQ,EAAE,cAAc;AACxB,oBAAA,OAAO,EAAE;AACP,wBAAA,IAAI,EAAE,eAAe;wBACrB,KAAK;AACL,wBAAA,YAAY,EAAE,GAAG;AAClB,qBAAA;AACwB,iBAAA;AAC5B,aAAA,CAAC;QACJ;;AAGA,QAAA,OAAO,MAAM,CAAC,EAAE,CAAC,CAAM,CAAC;AAC1B,IAAA,CAAC;AAED,IAAA,MAAM,EAAE,GAAG,UAAU,CAAI,QAAQ,CAAC;IAElC,MAAM,IAAI,GAAoB,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,eAAe,EAAE,CAAC;IAEpE,OAAO;AACL,QAAA,QAAQ,EAAE,cAAc;AACxB,QAAA,IAAI,YAAY,GAAA;YACd,OAAO,eAAe,EAAE;QAC1B,CAAC;QACD,IAAI;QACJ,QAAQ;QACR,EAAE;AACF,QAAA,QAAQ,EAAE,cAAc,CAAC,QAAQ,CAAC;AAClC,QAAA,IAAI,EAAE,YAAY,CAAC,QAAQ,CAAC;KAC7B;AACH;;;;"}
1
+ {"version":3,"file":"uint-range.mjs","sources":["../../src/enum/uint-range.mts"],"sourcesContent":[null],"names":[],"mappings":";;;;;AAYO,MAAM,SAAS,GAAG,CAGvB,EACA,GAAG,EACH,KAAK,EACL,GAAG,OAAO,EAMV,KAAiC;IAGjC,MAAM,cAAc,GAAG,OAAO,CAAC,QAAQ,IAAI,CAAA,UAAA,EAAa,KAAK,CAAA,EAAA,EAAK,GAAG,CAAA,CAAA,CAAG;IAExE,MAAM,eAAe,GAAG,eAAe;;IAErC,MAAS,OAAO,CAAC,YAAY,IAAK,KAAW,CAC9C;AAED,IAAA,MAAM,QAAQ,GAAwB,CAAC,CAAC,KAAI;QAC1C,IACE,EAAE,QAAQ,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EACzE;YACA,OAAO,MAAM,CAAC,GAAG,CAAC;AAChB,gBAAA;AACE,oBAAA,IAAI,EAAE,EAAE;AACR,oBAAA,WAAW,EAAE,CAAC;AACd,oBAAA,YAAY,EAAE,cAAc;AAC5B,oBAAA,QAAQ,EAAE,cAAc;AACxB,oBAAA,OAAO,EAAE;AACP,wBAAA,IAAI,EAAE,eAAe;wBACrB,KAAK;AACL,wBAAA,YAAY,EAAE,GAAG;AAClB,qBAAA;AACwB,iBAAA;AAC5B,aAAA,CAAC;QACJ;;AAGA,QAAA,OAAO,MAAM,CAAC,EAAE,CAAC,CAAM,CAAC;AAC1B,IAAA,CAAC;AAED,IAAA,MAAM,EAAE,GAAG,UAAU,CAAI,QAAQ,CAAC;IAElC,MAAM,IAAI,GAAoB,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,eAAe,EAAE,CAAC;IAEpE,OAAO;AACL,QAAA,QAAQ,EAAE,cAAc;AACxB,QAAA,IAAI,YAAY,GAAA;YACd,OAAO,eAAe,EAAE;QAC1B,CAAC;QACD,IAAI;QACJ,QAAQ;QACR,EAAE;AACF,QAAA,QAAQ,EAAE,cAAc,CAAC,QAAQ,CAAC;AAClC,QAAA,IAAI,EAAE,YAAY,CAAC,QAAQ,CAAC;KAC7B;AACH;;;;"}
package/dist/index.mjs CHANGED
@@ -24,7 +24,13 @@ export { finiteNumber } from './predefined/brand/number/finite-number.mjs';
24
24
  export { int } from './predefined/brand/number/int.mjs';
25
25
  export { int16 } from './predefined/brand/number/int16.mjs';
26
26
  export { int32 } from './predefined/brand/number/int32.mjs';
27
+ export { negativeFiniteNumber } from './predefined/brand/number/negative-finite-number.mjs';
28
+ export { negativeInt } from './predefined/brand/number/negative-int.mjs';
29
+ export { negativeSafeInt } from './predefined/brand/number/negative-safe-int.mjs';
27
30
  export { nonNegativeFiniteNumber } from './predefined/brand/number/non-negative-finite-number.mjs';
31
+ export { nonPositiveFiniteNumber } from './predefined/brand/number/non-positive-finite-number.mjs';
32
+ export { nonPositiveInt } from './predefined/brand/number/non-positive-int.mjs';
33
+ export { nonPositiveSafeInt } from './predefined/brand/number/non-positive-safe-int.mjs';
28
34
  export { nonZeroFiniteNumber } from './predefined/brand/number/non-zero-finite-number.mjs';
29
35
  export { nonZeroInt } from './predefined/brand/number/non-zero-int.mjs';
30
36
  export { nonZeroSafeInt } from './predefined/brand/number/non-zero-safe-int.mjs';
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"map.d.mts","sourceRoot":"","sources":["../../src/other-types/map.mts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,IAAI,EAAE,KAAK,MAAM,EAAE,MAAM,aAAa,CAAC;AAUrD,KAAK,aAAa,CAChB,CAAC,SAAS,IAAI,CAAC,OAAO,CAAC,EACvB,CAAC,SAAS,IAAI,CAAC,OAAO,CAAC,IACrB,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;AAEtC,eAAO,MAAM,OAAO,GAAI,CAAC,SAAS,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,SAAS,IAAI,CAAC,OAAO,CAAC,EACtE,SAAS,CAAC,EACV,WAAW,CAAC,EACZ,UAAU,OAAO,CACf,QAAQ,CAAC;IACP,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC,CACH,KACA,IAAI,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CA0F1B,CAAC"}
1
+ {"version":3,"file":"map.d.mts","sourceRoot":"","sources":["../../src/other-types/map.mts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,IAAI,EAAE,KAAK,MAAM,EAAE,MAAM,aAAa,CAAC;AAUrD,KAAK,aAAa,CAChB,CAAC,SAAS,IAAI,CAAC,OAAO,CAAC,EACvB,CAAC,SAAS,IAAI,CAAC,OAAO,CAAC,IACrB,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;AAEtC,eAAO,MAAM,OAAO,GAAI,CAAC,SAAS,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,SAAS,IAAI,CAAC,OAAO,CAAC,EACtE,SAAS,CAAC,EACV,WAAW,CAAC,EACZ,UAAU,OAAO,CACf,QAAQ,CAAC;IACP,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC,CACH,KACA,IAAI,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAwF1B,CAAC"}
@@ -20,7 +20,7 @@ const MapType = (keyType, valueType, options) => {
20
20
  ]);
21
21
  }
22
22
  const errors = Arr.generate(function* () {
23
- for (const [k, v] of a.entries()) {
23
+ for (const [k, v] of a) {
24
24
  {
25
25
  const res = keyType.validate(k);
26
26
  if (Result.isErr(res)) {
@@ -64,7 +64,7 @@ const MapType = (keyType, valueType, options) => {
64
64
  };
65
65
  const fill = (a) => !isMap(a)
66
66
  ? getDefaultValue()
67
- : new Map(Array.from(a.entries()).filter(([k, v]) => keyType.is(k) && valueType.is(v)));
67
+ : new Map(Array.from(a).filter(([k, v]) => keyType.is(k) && valueType.is(v)));
68
68
  return {
69
69
  typeName,
70
70
  get defaultValue() {
@@ -1 +1 @@
1
- {"version":3,"file":"map.mjs","sources":["../../src/other-types/map.mts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"map.mjs","sources":["../../src/other-types/map.mts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -20,7 +20,7 @@ const SetType = (elementType, options) => {
20
20
  ]);
21
21
  }
22
22
  const errors = Arr.generate(function* () {
23
- for (const element of a.values()) {
23
+ for (const element of a) {
24
24
  const res = elementType.validate(element);
25
25
  if (Result.isErr(res)) {
26
26
  yield {
@@ -44,7 +44,7 @@ const SetType = (elementType, options) => {
44
44
  };
45
45
  const fill = (a) => !isSet(a)
46
46
  ? getDefaultValue()
47
- : new Set(Array.from(a.values()).filter((v) => elementType.is(v)));
47
+ : new Set(Array.from(a).filter((v) => elementType.is(v)));
48
48
  return {
49
49
  typeName,
50
50
  get defaultValue() {
@@ -1 +1 @@
1
- {"version":3,"file":"set.mjs","sources":["../../src/other-types/set.mts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;;MAaa,OAAO,GAAG,CACrB,WAAc,EACd,OAIC,KACyB;AAG1B,IAAA,MAAM,QAAQ,GAAG,OAAO,EAAE,QAAQ,IAAI,KAAK;IAE3C,MAAM,eAAe,GAAG,eAAe,CAAC,MAAS,IAAI,GAAG,EAAE,CAAC;AAE3D,IAAA,MAAM,QAAQ,GAAwB,CAAC,CAAC,KAAI;AAC1C,QAAA,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;YACb,OAAO,MAAM,CAAC,GAAG,CAAC;AAChB,gBAAA,8BAA8B,CAAC;AAC7B,oBAAA,WAAW,EAAE,CAAC;AACd,oBAAA,YAAY,EAAE,KAAK;oBACnB,QAAQ;AACR,oBAAA,OAAO,EAAE,SAAS;iBACnB,CAAC;AACH,aAAA,CAAC;QACJ;AAEA,QAAA,MAAM,MAAM,GAA+B,GAAG,CAAC,QAAQ,CAAC,aAAS;YAC/D,KAAK,MAAM,OAAO,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;gBAChC,MAAM,GAAG,GAAG,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC;AAEzC,gBAAA,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;oBACrB,MAAM;AACJ,wBAAA,IAAI,EAAE,EAAE;AACR,wBAAA,WAAW,EAAE,OAAO;AACpB,wBAAA,YAAY,EAAE,QAAQ;wBACtB,QAAQ;AACR,wBAAA,OAAO,EAAE;AACP,4BAAA,IAAI,EAAE,aAAa;4BACnB,YAAY,EAAE,WAAW,CAAC,QAAQ;AACnC,yBAAA;qBACwB;AAE3B,oBAAA,OAAO,GAAG,CAAC,KAAK;gBAClB;YACF;AACF,QAAA,CAAC,CAAC;AAEF,QAAA,IAAI,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE;AAC1B,YAAA,OAAO,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC;QAC3B;AAEA,QAAA,OAAO,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;AACrB,IAAA,CAAC;IAED,MAAM,IAAI,GAAoB,CAAC,CAAC,KAC9B,CAAC,KAAK,CAAC,CAAC;UACJ,eAAe;AACjB,UAAE,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAEtE,OAAO;QACL,QAAQ;AACR,QAAA,IAAI,YAAY,GAAA;YACd,OAAO,eAAe,EAAE;QAC1B,CAAC;QACD,IAAI;QACJ,QAAQ;AACR,QAAA,EAAE,EAAE,UAAU,CAAC,QAAQ,CAAC;AACxB,QAAA,QAAQ,EAAE,cAAc,CAAC,QAAQ,CAAC;AAClC,QAAA,IAAI,EAAE,YAAY,CAAC,QAAQ,CAAC;KAC7B;AACH;;;;"}
1
+ {"version":3,"file":"set.mjs","sources":["../../src/other-types/set.mts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;;MAaa,OAAO,GAAG,CACrB,WAAc,EACd,OAIC,KACyB;AAG1B,IAAA,MAAM,QAAQ,GAAG,OAAO,EAAE,QAAQ,IAAI,KAAK;IAE3C,MAAM,eAAe,GAAG,eAAe,CAAC,MAAS,IAAI,GAAG,EAAE,CAAC;AAE3D,IAAA,MAAM,QAAQ,GAAwB,CAAC,CAAC,KAAI;AAC1C,QAAA,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;YACb,OAAO,MAAM,CAAC,GAAG,CAAC;AAChB,gBAAA,8BAA8B,CAAC;AAC7B,oBAAA,WAAW,EAAE,CAAC;AACd,oBAAA,YAAY,EAAE,KAAK;oBACnB,QAAQ;AACR,oBAAA,OAAO,EAAE,SAAS;iBACnB,CAAC;AACH,aAAA,CAAC;QACJ;AAEA,QAAA,MAAM,MAAM,GAA+B,GAAG,CAAC,QAAQ,CAAC,aAAS;AAC/D,YAAA,KAAK,MAAM,OAAO,IAAI,CAAC,EAAE;gBACvB,MAAM,GAAG,GAAG,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC;AAEzC,gBAAA,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;oBACrB,MAAM;AACJ,wBAAA,IAAI,EAAE,EAAE;AACR,wBAAA,WAAW,EAAE,OAAO;AACpB,wBAAA,YAAY,EAAE,QAAQ;wBACtB,QAAQ;AACR,wBAAA,OAAO,EAAE;AACP,4BAAA,IAAI,EAAE,aAAa;4BACnB,YAAY,EAAE,WAAW,CAAC,QAAQ;AACnC,yBAAA;qBACwB;AAE3B,oBAAA,OAAO,GAAG,CAAC,KAAK;gBAClB;YACF;AACF,QAAA,CAAC,CAAC;AAEF,QAAA,IAAI,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE;AAC1B,YAAA,OAAO,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC;QAC3B;AAEA,QAAA,OAAO,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;AACrB,IAAA,CAAC;IAED,MAAM,IAAI,GAAoB,CAAC,CAAC,KAC9B,CAAC,KAAK,CAAC,CAAC;UACJ,eAAe;UACf,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAE7D,OAAO;QACL,QAAQ;AACR,QAAA,IAAI,YAAY,GAAA;YACd,OAAO,eAAe,EAAE;QAC1B,CAAC;QACD,IAAI;QACJ,QAAQ;AACR,QAAA,EAAE,EAAE,UAAU,CAAC,QAAQ,CAAC;AACxB,QAAA,QAAQ,EAAE,cAAc,CAAC,QAAQ,CAAC;AAClC,QAAA,IAAI,EAAE,YAAY,CAAC,QAAQ,CAAC;KAC7B;AACH;;;;"}
@@ -2,7 +2,13 @@ export { finiteNumber } from './number/finite-number.mjs';
2
2
  export { int } from './number/int.mjs';
3
3
  export { int16 } from './number/int16.mjs';
4
4
  export { int32 } from './number/int32.mjs';
5
+ export { negativeFiniteNumber } from './number/negative-finite-number.mjs';
6
+ export { negativeInt } from './number/negative-int.mjs';
7
+ export { negativeSafeInt } from './number/negative-safe-int.mjs';
5
8
  export { nonNegativeFiniteNumber } from './number/non-negative-finite-number.mjs';
9
+ export { nonPositiveFiniteNumber } from './number/non-positive-finite-number.mjs';
10
+ export { nonPositiveInt } from './number/non-positive-int.mjs';
11
+ export { nonPositiveSafeInt } from './number/non-positive-safe-int.mjs';
6
12
  export { nonZeroFiniteNumber } from './number/non-zero-finite-number.mjs';
7
13
  export { nonZeroInt } from './number/non-zero-int.mjs';
8
14
  export { nonZeroSafeInt } from './number/non-zero-safe-int.mjs';
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,4 +1,5 @@
1
1
  import { FiniteNumber } from 'ts-data-forge';
2
+ import { type NumberRangeConstraints } from '../../../primitives/index.mjs';
2
3
  import { type Type } from '../../../type.mjs';
3
- export declare const finiteNumber: (defaultValue?: number) => Type<FiniteNumber>;
4
+ export declare const finiteNumber: (defaultValue?: number, constraints?: NumberRangeConstraints) => Type<FiniteNumber>;
4
5
  //# sourceMappingURL=finite-number.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"finite-number.d.mts","sourceRoot":"","sources":["../../../../src/predefined/brand/number/finite-number.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAG7C,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAE9C,eAAO,MAAM,YAAY,GAAI,eAAc,MAAU,KAAG,IAAI,CAAC,YAAY,CAQrE,CAAC"}
1
+ {"version":3,"file":"finite-number.d.mts","sourceRoot":"","sources":["../../../../src/predefined/brand/number/finite-number.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE7C,OAAO,EAEL,KAAK,sBAAsB,EAC5B,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAE9C,eAAO,MAAM,YAAY,GACvB,eAAc,MAAU,EACxB,cAAc,sBAAsB,KACnC,IAAI,CAAC,YAAY,CAQhB,CAAC"}
@@ -4,8 +4,8 @@ import '@sindresorhus/is';
4
4
  import '../../../other-types/unknown.mjs';
5
5
  import { number } from '../../../primitives/number.mjs';
6
6
 
7
- const finiteNumber = (defaultValue = 0) => brand({
8
- baseType: number(defaultValue),
7
+ const finiteNumber = (defaultValue = 0, constraints) => brand({
8
+ baseType: number(defaultValue, constraints ?? {}),
9
9
  is: FiniteNumber.is,
10
10
  defaultValue,
11
11
  brandKeys: ['Finite'],
@@ -1 +1 @@
1
- {"version":3,"file":"finite-number.mjs","sources":["../../../../src/predefined/brand/number/finite-number.mts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;AAKO,MAAM,YAAY,GAAG,CAAC,YAAA,GAAuB,CAAC,KACnD,KAAK,CAAC;AACJ,IAAA,QAAQ,EAAE,MAAM,CAAC,YAAY,CAAC;IAC9B,EAAE,EAAE,YAAY,CAAC,EAAE;IACnB,YAAY;IACZ,SAAS,EAAE,CAAC,QAAQ,CAAC;IACrB,cAAc,EAAE,CAAC,UAAU,CAAC;AAC5B,IAAA,QAAQ,EAAE,cAAc;AACzB,CAAA;;;;"}
1
+ {"version":3,"file":"finite-number.mjs","sources":["../../../../src/predefined/brand/number/finite-number.mts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;AAQO,MAAM,YAAY,GAAG,CAC1B,YAAA,GAAuB,CAAC,EACxB,WAAoC,KAEpC,KAAK,CAAC;IACJ,QAAQ,EAAE,MAAM,CAAC,YAAY,EAAE,WAAW,IAAI,EAAE,CAAC;IACjD,EAAE,EAAE,YAAY,CAAC,EAAE;IACnB,YAAY;IACZ,SAAS,EAAE,CAAC,QAAQ,CAAC;IACrB,cAAc,EAAE,CAAC,UAAU,CAAC;AAC5B,IAAA,QAAQ,EAAE,cAAc;AACzB,CAAA;;;;"}
@@ -2,7 +2,13 @@ export * from './finite-number.mjs';
2
2
  export * from './int.mjs';
3
3
  export * from './int16.mjs';
4
4
  export * from './int32.mjs';
5
+ export * from './negative-finite-number.mjs';
6
+ export * from './negative-int.mjs';
7
+ export * from './negative-safe-int.mjs';
5
8
  export * from './non-negative-finite-number.mjs';
9
+ export * from './non-positive-finite-number.mjs';
10
+ export * from './non-positive-int.mjs';
11
+ export * from './non-positive-safe-int.mjs';
6
12
  export * from './non-zero-finite-number.mjs';
7
13
  export * from './non-zero-int.mjs';
8
14
  export * from './non-zero-safe-int.mjs';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.mts","sourceRoot":"","sources":["../../../../src/predefined/brand/number/index.mts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,kCAAkC,CAAC;AACjD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,oBAAoB,CAAC;AACnC,cAAc,yBAAyB,CAAC;AACxC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,oBAAoB,CAAC;AACnC,cAAc,yBAAyB,CAAC;AACxC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.mts","sourceRoot":"","sources":["../../../../src/predefined/brand/number/index.mts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,8BAA8B,CAAC;AAC7C,cAAc,oBAAoB,CAAC;AACnC,cAAc,yBAAyB,CAAC;AACxC,cAAc,kCAAkC,CAAC;AACjD,cAAc,kCAAkC,CAAC;AACjD,cAAc,wBAAwB,CAAC;AACvC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,oBAAoB,CAAC;AACnC,cAAc,yBAAyB,CAAC;AACxC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,oBAAoB,CAAC;AACnC,cAAc,yBAAyB,CAAC;AACxC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC"}
@@ -2,7 +2,13 @@ export { finiteNumber } from './finite-number.mjs';
2
2
  export { int } from './int.mjs';
3
3
  export { int16 } from './int16.mjs';
4
4
  export { int32 } from './int32.mjs';
5
+ export { negativeFiniteNumber } from './negative-finite-number.mjs';
6
+ export { negativeInt } from './negative-int.mjs';
7
+ export { negativeSafeInt } from './negative-safe-int.mjs';
5
8
  export { nonNegativeFiniteNumber } from './non-negative-finite-number.mjs';
9
+ export { nonPositiveFiniteNumber } from './non-positive-finite-number.mjs';
10
+ export { nonPositiveInt } from './non-positive-int.mjs';
11
+ export { nonPositiveSafeInt } from './non-positive-safe-int.mjs';
6
12
  export { nonZeroFiniteNumber } from './non-zero-finite-number.mjs';
7
13
  export { nonZeroInt } from './non-zero-int.mjs';
8
14
  export { nonZeroSafeInt } from './non-zero-safe-int.mjs';
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;"}
@@ -1,4 +1,5 @@
1
1
  import { Int } from 'ts-data-forge';
2
+ import { type NumberRangeConstraints } from '../../../primitives/index.mjs';
2
3
  import { type Type } from '../../../type.mjs';
3
- export declare const int: (defaultValue?: number) => Type<Int>;
4
+ export declare const int: (defaultValue?: number, constraints?: NumberRangeConstraints) => Type<Int>;
4
5
  //# sourceMappingURL=int.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"int.d.mts","sourceRoot":"","sources":["../../../../src/predefined/brand/number/int.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;AAGpC,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAE9C,eAAO,MAAM,GAAG,GAAI,eAAc,MAAU,KAAG,IAAI,CAAC,GAAG,CAQnD,CAAC"}
1
+ {"version":3,"file":"int.d.mts","sourceRoot":"","sources":["../../../../src/predefined/brand/number/int.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;AAEpC,OAAO,EAEL,KAAK,sBAAsB,EAC5B,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAE9C,eAAO,MAAM,GAAG,GACd,eAAc,MAAU,EACxB,cAAc,sBAAsB,KACnC,IAAI,CAAC,GAAG,CAQP,CAAC"}
@@ -4,8 +4,8 @@ import '@sindresorhus/is';
4
4
  import '../../../other-types/unknown.mjs';
5
5
  import { number } from '../../../primitives/number.mjs';
6
6
 
7
- const int = (defaultValue = 0) => brand({
8
- baseType: number(defaultValue),
7
+ const int = (defaultValue = 0, constraints) => brand({
8
+ baseType: number(defaultValue, constraints ?? {}),
9
9
  is: Int.is,
10
10
  defaultValue,
11
11
  brandKeys: ['Finite', 'Int'],
@@ -1 +1 @@
1
- {"version":3,"file":"int.mjs","sources":["../../../../src/predefined/brand/number/int.mts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;AAKO,MAAM,GAAG,GAAG,CAAC,YAAA,GAAuB,CAAC,KAC1C,KAAK,CAAC;AACJ,IAAA,QAAQ,EAAE,MAAM,CAAC,YAAY,CAAC;IAC9B,EAAE,EAAE,GAAG,CAAC,EAAE;IACV,YAAY;AACZ,IAAA,SAAS,EAAE,CAAC,QAAQ,EAAE,KAAK,CAAC;IAC5B,cAAc,EAAE,CAAC,UAAU,CAAC;AAC5B,IAAA,QAAQ,EAAE,KAAK;AAChB,CAAA;;;;"}
1
+ {"version":3,"file":"int.mjs","sources":["../../../../src/predefined/brand/number/int.mts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;AAQO,MAAM,GAAG,GAAG,CACjB,YAAA,GAAuB,CAAC,EACxB,WAAoC,KAEpC,KAAK,CAAC;IACJ,QAAQ,EAAE,MAAM,CAAC,YAAY,EAAE,WAAW,IAAI,EAAE,CAAC;IACjD,EAAE,EAAE,GAAG,CAAC,EAAE;IACV,YAAY;AACZ,IAAA,SAAS,EAAE,CAAC,QAAQ,EAAE,KAAK,CAAC;IAC5B,cAAc,EAAE,CAAC,UAAU,CAAC;AAC5B,IAAA,QAAQ,EAAE,KAAK;AAChB,CAAA;;;;"}
@@ -1,4 +1,5 @@
1
1
  import { type Int16 } from 'ts-type-forge';
2
+ import { type NumberRangeConstraints } from '../../../primitives/index.mjs';
2
3
  import { type Type } from '../../../type.mjs';
3
- export declare const int16: (defaultValue?: number) => Type<Int16>;
4
+ export declare const int16: (defaultValue?: number, constraints?: NumberRangeConstraints) => Type<Int16>;
4
5
  //# sourceMappingURL=int16.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"int16.d.mts","sourceRoot":"","sources":["../../../../src/predefined/brand/number/int16.mts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,eAAe,CAAC;AAG3C,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAE9C,eAAO,MAAM,KAAK,GAAI,eAAc,MAAU,KAAG,IAAI,CAAC,KAAK,CAoBvD,CAAC"}
1
+ {"version":3,"file":"int16.d.mts","sourceRoot":"","sources":["../../../../src/predefined/brand/number/int16.mts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,eAAe,CAAC;AAE3C,OAAO,EAEL,KAAK,sBAAsB,EAC5B,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAE9C,eAAO,MAAM,KAAK,GAChB,eAAc,MAAU,EACxB,cAAc,sBAAsB,KACnC,IAAI,CAAC,KAAK,CAoBT,CAAC"}
@@ -4,8 +4,8 @@ import '@sindresorhus/is';
4
4
  import '../../../other-types/unknown.mjs';
5
5
  import { number } from '../../../primitives/number.mjs';
6
6
 
7
- const int16 = (defaultValue = 0) => brand({
8
- baseType: number(defaultValue),
7
+ const int16 = (defaultValue = 0, constraints) => brand({
8
+ baseType: number(defaultValue, constraints ?? {}),
9
9
  is: isInt16,
10
10
  defaultValue,
11
11
  brandKeys: [
@@ -1 +1 @@
1
- {"version":3,"file":"int16.mjs","sources":["../../../../src/predefined/brand/number/int16.mts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;AAMO,MAAM,KAAK,GAAG,CAAC,YAAA,GAAuB,CAAC,KAC5C,KAAK,CAAC;AACJ,IAAA,QAAQ,EAAE,MAAM,CAAC,YAAY,CAAC;AAC9B,IAAA,EAAE,EAAE,OAAO;IACX,YAAY;AACZ,IAAA,SAAS,EAAE;QACT,QAAQ;QACR,KAAK;QACL,SAAS;QACT,SAAS;QACT,UAAU;QACV,QAAQ;QACR,QAAQ;QACR,QAAQ;QACR,QAAQ;QACR,SAAS;QACT,UAAU;AACX,KAAA;IACD,cAAc,EAAE,CAAC,UAAU,CAAC;AAC5B,IAAA,QAAQ,EAAE,OAAO;AAClB,CAAA;;;;"}
1
+ {"version":3,"file":"int16.mjs","sources":["../../../../src/predefined/brand/number/int16.mts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;AASO,MAAM,KAAK,GAAG,CACnB,YAAA,GAAuB,CAAC,EACxB,WAAoC,KAEpC,KAAK,CAAC;IACJ,QAAQ,EAAE,MAAM,CAAC,YAAY,EAAE,WAAW,IAAI,EAAE,CAAC;AACjD,IAAA,EAAE,EAAE,OAAO;IACX,YAAY;AACZ,IAAA,SAAS,EAAE;QACT,QAAQ;QACR,KAAK;QACL,SAAS;QACT,SAAS;QACT,UAAU;QACV,QAAQ;QACR,QAAQ;QACR,QAAQ;QACR,QAAQ;QACR,SAAS;QACT,UAAU;AACX,KAAA;IACD,cAAc,EAAE,CAAC,UAAU,CAAC;AAC5B,IAAA,QAAQ,EAAE,OAAO;AAClB,CAAA;;;;"}
@@ -1,4 +1,5 @@
1
1
  import { type Int32 } from 'ts-type-forge';
2
+ import { type NumberRangeConstraints } from '../../../primitives/index.mjs';
2
3
  import { type Type } from '../../../type.mjs';
3
- export declare const int32: (defaultValue?: number) => Type<Int32>;
4
+ export declare const int32: (defaultValue?: number, constraints?: NumberRangeConstraints) => Type<Int32>;
4
5
  //# sourceMappingURL=int32.d.mts.map