@ts-fns/stdlib 0.1.0 → 0.2.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 (135) hide show
  1. package/dist/array/index.cjs +230 -33
  2. package/dist/array/index.cjs.map +1 -1
  3. package/dist/array/index.d.cts +434 -32
  4. package/dist/array/index.d.cts.map +1 -1
  5. package/dist/array/index.d.mts +434 -32
  6. package/dist/array/index.d.mts.map +1 -1
  7. package/dist/array/index.mjs +216 -18
  8. package/dist/array/index.mjs.map +1 -1
  9. package/dist/function/index.cjs +4 -2
  10. package/dist/function/index.d.cts +128 -13
  11. package/dist/function/index.d.cts.map +1 -1
  12. package/dist/function/index.d.mts +128 -13
  13. package/dist/function/index.d.mts.map +1 -1
  14. package/dist/function/index.mjs +3 -3
  15. package/dist/{function-DnI2v0p3.mjs → function-CYHPhQCQ.mjs} +84 -6
  16. package/dist/function-CYHPhQCQ.mjs.map +1 -0
  17. package/dist/{function-CB82a2GS.cjs → function-DYPifnmg.cjs} +95 -5
  18. package/dist/function-DYPifnmg.cjs.map +1 -0
  19. package/dist/{get-yrs1Kqho.cjs → get-1kqkxPFX.cjs} +20 -8
  20. package/dist/get-1kqkxPFX.cjs.map +1 -0
  21. package/dist/{get-CWL_cu6G.mjs → get-Dv6ejLZg.mjs} +21 -3
  22. package/dist/get-Dv6ejLZg.mjs.map +1 -0
  23. package/dist/guard/index.cjs +5 -12
  24. package/dist/guard/index.cjs.map +1 -1
  25. package/dist/guard/index.d.cts +18 -17
  26. package/dist/guard/index.d.cts.map +1 -1
  27. package/dist/guard/index.d.mts +18 -17
  28. package/dist/guard/index.d.mts.map +1 -1
  29. package/dist/guard/index.mjs +4 -12
  30. package/dist/guard/index.mjs.map +1 -1
  31. package/dist/index-MbdqaUt1.d.cts +54 -0
  32. package/dist/index-MbdqaUt1.d.cts.map +1 -0
  33. package/dist/index-k-paNOu4.d.mts +54 -0
  34. package/dist/index-k-paNOu4.d.mts.map +1 -0
  35. package/dist/iterator/index.cjs +72 -26
  36. package/dist/iterator/index.cjs.map +1 -1
  37. package/dist/iterator/index.d.cts +157 -5
  38. package/dist/iterator/index.d.cts.map +1 -1
  39. package/dist/iterator/index.d.mts +157 -5
  40. package/dist/iterator/index.d.mts.map +1 -1
  41. package/dist/iterator/index.mjs +66 -24
  42. package/dist/iterator/index.mjs.map +1 -1
  43. package/dist/lens/index.cjs +3 -3
  44. package/dist/lens/index.cjs.map +1 -1
  45. package/dist/lens/index.mjs +3 -3
  46. package/dist/lens/index.mjs.map +1 -1
  47. package/dist/map/index.cjs +88 -1
  48. package/dist/map/index.cjs.map +1 -1
  49. package/dist/map/index.d.cts +130 -2
  50. package/dist/map/index.d.cts.map +1 -1
  51. package/dist/map/index.d.mts +130 -2
  52. package/dist/map/index.d.mts.map +1 -1
  53. package/dist/map/index.mjs +86 -2
  54. package/dist/map/index.mjs.map +1 -1
  55. package/dist/number/index.cjs +91 -18
  56. package/dist/number/index.cjs.map +1 -1
  57. package/dist/number/index.d.cts +134 -19
  58. package/dist/number/index.d.cts.map +1 -1
  59. package/dist/number/index.d.mts +134 -19
  60. package/dist/number/index.d.mts.map +1 -1
  61. package/dist/number/index.mjs +91 -18
  62. package/dist/number/index.mjs.map +1 -1
  63. package/dist/object/index.cjs +111 -7
  64. package/dist/object/index.cjs.map +1 -1
  65. package/dist/object/index.d.cts +186 -26
  66. package/dist/object/index.d.cts.map +1 -1
  67. package/dist/object/index.d.mts +186 -26
  68. package/dist/object/index.d.mts.map +1 -1
  69. package/dist/object/index.mjs +111 -7
  70. package/dist/object/index.mjs.map +1 -1
  71. package/dist/orNull-CJNrTjhQ.cjs +45 -0
  72. package/dist/orNull-CJNrTjhQ.cjs.map +1 -0
  73. package/dist/orNull-EeXiCxD4.mjs +34 -0
  74. package/dist/orNull-EeXiCxD4.mjs.map +1 -0
  75. package/dist/order/index.cjs +22 -1
  76. package/dist/order/index.cjs.map +1 -1
  77. package/dist/order/index.d.cts +2 -2
  78. package/dist/order/index.d.mts +2 -2
  79. package/dist/order/index.mjs +22 -1
  80. package/dist/order/index.mjs.map +1 -1
  81. package/dist/{order.constants-BWSCg3C7.d.cts → order.constants-DpGY-EDp.d.cts} +4 -1
  82. package/dist/order.constants-DpGY-EDp.d.cts.map +1 -0
  83. package/dist/{order.constants-BWSCg3C7.d.mts → order.constants-DpGY-EDp.d.mts} +4 -1
  84. package/dist/order.constants-DpGY-EDp.d.mts.map +1 -0
  85. package/dist/purry-DXnhXie9.mjs +22 -0
  86. package/dist/purry-DXnhXie9.mjs.map +1 -0
  87. package/dist/purry-Dqp_F64t.cjs +27 -0
  88. package/dist/purry-Dqp_F64t.cjs.map +1 -0
  89. package/dist/set/index.cjs +59 -1
  90. package/dist/set/index.cjs.map +1 -1
  91. package/dist/set/index.d.cts +151 -2
  92. package/dist/set/index.d.cts.map +1 -1
  93. package/dist/set/index.d.mts +151 -2
  94. package/dist/set/index.d.mts.map +1 -1
  95. package/dist/set/index.mjs +59 -2
  96. package/dist/set/index.mjs.map +1 -1
  97. package/dist/string/index.cjs +289 -15
  98. package/dist/string/index.cjs.map +1 -1
  99. package/dist/string/index.d.cts +406 -1
  100. package/dist/string/index.d.cts.map +1 -1
  101. package/dist/string/index.d.mts +406 -1
  102. package/dist/string/index.d.mts.map +1 -1
  103. package/dist/string/index.mjs +271 -4
  104. package/dist/string/index.mjs.map +1 -1
  105. package/dist/tuple/index.cjs +20 -21
  106. package/dist/tuple/index.cjs.map +1 -1
  107. package/dist/tuple/index.d.cts +27 -58
  108. package/dist/tuple/index.d.cts.map +1 -1
  109. package/dist/tuple/index.d.mts +27 -58
  110. package/dist/tuple/index.d.mts.map +1 -1
  111. package/dist/tuple/index.mjs +20 -22
  112. package/dist/tuple/index.mjs.map +1 -1
  113. package/package.json +5 -6
  114. package/dist/function-CB82a2GS.cjs.map +0 -1
  115. package/dist/function-DnI2v0p3.mjs.map +0 -1
  116. package/dist/get-CWL_cu6G.mjs.map +0 -1
  117. package/dist/get-yrs1Kqho.cjs.map +0 -1
  118. package/dist/index-BJlKyBJH.d.cts +0 -18
  119. package/dist/index-BJlKyBJH.d.cts.map +0 -1
  120. package/dist/index-DGrnGMDt.d.mts +0 -18
  121. package/dist/index-DGrnGMDt.d.mts.map +0 -1
  122. package/dist/isNotNil-DrF-ohem.cjs +0 -28
  123. package/dist/isNotNil-DrF-ohem.cjs.map +0 -1
  124. package/dist/isNotNil-R5f1hC53.mjs +0 -23
  125. package/dist/isNotNil-R5f1hC53.mjs.map +0 -1
  126. package/dist/orThrow-V91Jw2lF.mjs +0 -15
  127. package/dist/orThrow-V91Jw2lF.mjs.map +0 -1
  128. package/dist/orThrow-ejzcQYAI.cjs +0 -20
  129. package/dist/orThrow-ejzcQYAI.cjs.map +0 -1
  130. package/dist/order.constants-BWSCg3C7.d.cts.map +0 -1
  131. package/dist/order.constants-BWSCg3C7.d.mts.map +0 -1
  132. package/dist/purry-B2_0DGLV.cjs +0 -28
  133. package/dist/purry-B2_0DGLV.cjs.map +0 -1
  134. package/dist/purry-BOWmqwDB.mjs +0 -23
  135. package/dist/purry-BOWmqwDB.mjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","names":[],"sources":["../../src/map/clear.ts","../../src/map/entries.ts","../../src/map/forEach.ts","../../src/map/from.ts","../../src/map/get.ts","../../src/map/groupBy.ts","../../src/map/keys.ts","../../src/map/remove.ts","../../src/map/set.ts","../../src/map/values.ts"],"sourcesContent":["export function clear<K, V>(data: Map<K, V>): Map<K, V> {\n data.clear();\n return data;\n}\n","export function entries<K, V>(data: Map<K, V>): MapIterator<[K, V]> {\n return data.entries();\n}\n","import { purry } from '../function/purry';\n\nfunction forEachImplementation<K, V>(\n data: Map<K, V>,\n callbackfn: (value: V, key: K, map: Map<K, V>) => void,\n): Map<K, V> {\n data.forEach(callbackfn);\n return data;\n}\n\nexport function forEach<K, V>(callbackfn: (value: V, key: K, set: Map<K, V>) => void): (data: Map<K, V>) => Map<K, V>;\nexport function forEach<K, V>(data: Map<K, V>, callbackfn: (value: V, key: K, set: Map<K, V>) => void): Map<K, V>;\nexport function forEach(...args: readonly unknown[]): unknown {\n return purry(forEachImplementation, args);\n}\n","export function from<K, V>(iterable: Iterable<[K, V]> | readonly (readonly [K, V])[]): Map<K, V> {\n return new Map(iterable);\n}\n\nexport function empty<K, V>(): Map<K, V> {\n return new Map();\n}\n","import { purry } from '../function/purry';\n\nfunction getImplementation<K, V>(data: Map<K, V>, key: K): V | undefined {\n return data.get(key);\n}\n\nexport function get<K>(key: K): <V>(data: Map<K, V>) => V | undefined;\nexport function get<K, V>(data: Map<K, V>, key: K): V | undefined;\nexport function get(...args: readonly unknown[]): unknown {\n return purry(getImplementation, args);\n}\n","import { purry } from '../function/purry';\n\nfunction groupByImplementation<K, T>(items: Iterable<T>, keySelector: (item: T, index: number) => K): Map<K, T[]> {\n return Map.groupBy(items, keySelector);\n}\n\nexport function groupBy<K, T>(keySelector: (item: T, index: number) => K): (items: Iterable<T>) => Map<K, T[]>;\nexport function groupBy<K, T>(items: Iterable<T>, keySelector: (item: T, index: number) => K): Map<K, T[]>;\nexport function groupBy(...args: readonly unknown[]): unknown {\n return purry(groupByImplementation, args);\n}\n","export function keys<K, V>(data: Map<K, V>): MapIterator<K> {\n return data.keys();\n}\n","import { purry } from '../function/purry';\n\nfunction removeImplementation<K, V>(data: Map<K, V>, key: K): Map<K, V> {\n data.delete(key);\n return data;\n}\n\n/**\n * TODO: should this return a tuple?\n */\nexport function remove<K>(key: K): <V>(data: Map<K, V>) => Map<K, V>;\nexport function remove<K, V>(data: Map<K, V>, key: K): Map<K, V>;\nexport function remove(...args: readonly unknown[]): unknown {\n return purry(removeImplementation, args);\n}\n","import { purry } from '../function/purry';\n\nfunction setImplementation<K, V>(data: Map<K, V>, key: K, value: V): Map<K, V> {\n return data.set(key, value);\n}\n\nexport function set<K, V>(key: K, value: V): (data: Map<K, V>) => Map<K, V>;\nexport function set<K, V>(data: Map<K, V>, key: K, value: V): Map<K, V>;\nexport function set(...args: readonly unknown[]): unknown {\n return purry(setImplementation, args);\n}\n","export function values<K, V>(data: Map<K, V>): MapIterator<V> {\n return data.values();\n}\n"],"mappings":";;AAAA,SAAgB,MAAY,MAA4B;CACtD,KAAK,MAAM;CACX,OAAO;AACT;;;ACHA,SAAgB,QAAc,MAAsC;CAClE,OAAO,KAAK,QAAQ;AACtB;;;ACAA,SAAS,sBACP,MACA,YACW;CACX,KAAK,QAAQ,UAAU;CACvB,OAAO;AACT;AAIA,SAAgB,QAAQ,GAAG,MAAmC;CAC5D,OAAO,MAAM,uBAAuB,IAAI;AAC1C;;;ACdA,SAAgB,KAAW,UAAsE;CAC/F,OAAO,IAAI,IAAI,QAAQ;AACzB;AAEA,SAAgB,QAAyB;CACvC,uBAAO,IAAI,IAAI;AACjB;;;ACJA,SAAS,kBAAwB,MAAiB,KAAuB;CACvE,OAAO,KAAK,IAAI,GAAG;AACrB;AAIA,SAAgB,IAAI,GAAG,MAAmC;CACxD,OAAO,MAAM,mBAAmB,IAAI;AACtC;;;ACRA,SAAS,sBAA4B,OAAoB,aAAyD;CAChH,OAAO,IAAI,QAAQ,OAAO,WAAW;AACvC;AAIA,SAAgB,QAAQ,GAAG,MAAmC;CAC5D,OAAO,MAAM,uBAAuB,IAAI;AAC1C;;;ACVA,SAAgB,KAAW,MAAiC;CAC1D,OAAO,KAAK,KAAK;AACnB;;;ACAA,SAAS,qBAA2B,MAAiB,KAAmB;CACtE,KAAK,OAAO,GAAG;CACf,OAAO;AACT;AAOA,SAAgB,OAAO,GAAG,MAAmC;CAC3D,OAAO,MAAM,sBAAsB,IAAI;AACzC;;;ACZA,SAAS,kBAAwB,MAAiB,KAAQ,OAAqB;CAC7E,OAAO,KAAK,IAAI,KAAK,KAAK;AAC5B;AAIA,SAAgB,IAAI,GAAG,MAAmC;CACxD,OAAO,MAAM,mBAAmB,IAAI;AACtC;;;ACVA,SAAgB,OAAa,MAAiC;CAC5D,OAAO,KAAK,OAAO;AACrB"}
1
+ {"version":3,"file":"index.mjs","names":[],"sources":["../../src/map/_globalAliases.ts","../../src/map/clear.ts","../../src/map/entries.ts","../../src/map/forEach.ts","../../src/map/from.ts","../../src/map/get.ts","../../src/map/getOrInsert.ts","../../src/map/groupBy.ts","../../src/map/keys.ts","../../src/map/remove.ts","../../src/map/set.ts","../../src/map/values.ts"],"sourcesContent":["/**\n * Alias of the built-in map constructor. `new Map() === new Map.Ctor()`\n * @function\n */\nexport const Ctor = Map;\n","/**\n * Removes all entries from a map and returns the same map.\n *\n * @example\n * ```ts\n * clear(new Map([['a', 1], ['b', 2]])); // Map(0) {}\n * ```\n */\nexport function clear<K, V>(data: Map<K, V>): Map<K, V> {\n data.clear();\n return data;\n}\n","/**\n * Returns an iterator of a map's key-value pairs.\n *\n * @example\n * ```ts\n * [...entries(new Map([['a', 1], ['b', 2]]))]; // [['a', 1], ['b', 2]]\n * ```\n */\nexport function entries<K, V>(data: Map<K, V>): MapIterator<[K, V]> {\n return data.entries();\n}\n","import { purry } from '../function/purry';\n\nfunction forEachImplementation<K, V>(\n data: Map<K, V>,\n callbackfn: (value: V, key: K, map: Map<K, V>) => void,\n): Map<K, V> {\n data.forEach(callbackfn);\n return data;\n}\n\n/**\n * Runs a callback for each map entry and returns the same map.\n *\n * @example\n * ```ts\n * const map = new Map([['a', 1], ['b', 2]]);\n * forEach(map, (value, key) => console.log(key, value)); // map\n * forEach((value, key) => console.log(key, value))(map); // map\n * ```\n */\nexport function forEach<K, V>(callbackfn: (value: V, key: K, set: Map<K, V>) => void): (data: Map<K, V>) => Map<K, V>;\nexport function forEach<K, V>(data: Map<K, V>, callbackfn: (value: V, key: K, set: Map<K, V>) => void): Map<K, V>;\nexport function forEach(...args: readonly unknown[]): unknown {\n return purry(forEachImplementation, args);\n}\n","/**\n * Creates a map from an iterable of key-value pairs.\n *\n * @example\n * ```ts\n * from([['a', 1], ['b', 2]]); // Map { 'a' => 1, 'b' => 2 }\n * ```\n */\nexport function from<K, V>(iterable: Iterable<[K, V]> | readonly (readonly [K, V])[]): Map<K, V> {\n return new Map(iterable);\n}\n\n/**\n * Creates an empty map.\n *\n * @example\n * ```ts\n * empty(); // Map(0) {}\n * ```\n */\nexport function empty<K, V>(): Map<K, V> {\n return new Map();\n}\n","import { purry } from '../function/purry';\n\nfunction getImplementation<K, V>(data: Map<K, V>, key: K): V | undefined {\n return data.get(key);\n}\n\n/**\n * Returns the value associated with a key, or `undefined` when the key is absent.\n *\n * @example\n * ```ts\n * const map = new Map([['a', 1]]);\n * get(map, 'a'); // 1\n * get(map, 'b'); // undefined\n * get('a')(map); // 1\n * ```\n */\nexport function get<K>(key: K): <V>(data: Map<K, V>) => V | undefined;\nexport function get<K, V>(data: Map<K, V>, key: K): V | undefined;\nexport function get(...args: readonly unknown[]): unknown {\n return purry(getImplementation, args);\n}\n","import { NotYetImplementedError } from '../errors';\n\n/**\n * Inserts a default value when a key is absent and returns the same map.\n *\n * @example\n * ```ts\n * const map = new Map<string, number>();\n * getOrInsert(map, 'a', 1); // Map { 'a' => 1 }\n * getOrInsert(map, 'a', 2); // Map { 'a' => 1 }\n * ```\n */\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nexport function getOrInsert<K, V>(map: Map<K, V>, key: K, defaultValue: V): Map<K, V> {\n throw new NotYetImplementedError('M.getOrInsert not yet implemented');\n}\n\n/**\n * Inserts a computed value when a key is absent and returns the same map.\n *\n * @example\n * ```ts\n * const map = new Map<string, number>();\n * getOrInsertComputed(map, 'a', () => 1); // Map { 'a' => 1 }\n * getOrInsertComputed(map, 'a', () => 2); // Map { 'a' => 1 }\n * ```\n */\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nexport function getOrInsertComputed<K, V>(map: Map<K, V>, key: K, callback: (key: K) => V): Map<K, V> {\n throw new NotYetImplementedError('M.getOrInsertComputed not yet implemented');\n}\n","import { purry } from '../function/purry';\n\nfunction groupByImplementation<K, T>(items: Iterable<T>, keySelector: (item: T, index: number) => K): Map<K, T[]> {\n return Map.groupBy(items, keySelector);\n}\n\n/**\n * Groups iterable items into a map keyed by a selector function.\n *\n * @example\n * ```ts\n * groupBy(\n * [{ id: 1 }, { id: 2 }, { id: 1 }],\n * item => item.id,\n * ); // Map { 1 => [{ id: 1 }, { id: 1 }], 2 => [{ id: 2 }] }\n * groupBy(item => item.id)([{ id: 1 }, { id: 2 }]); // Map { 1 => [...], 2 => [...] }\n * ```\n */\nexport function groupBy<K, T>(keySelector: (item: T, index: number) => K): (items: Iterable<T>) => Map<K, T[]>;\nexport function groupBy<K, T>(items: Iterable<T>, keySelector: (item: T, index: number) => K): Map<K, T[]>;\nexport function groupBy(...args: readonly unknown[]): unknown {\n return purry(groupByImplementation, args);\n}\n","/**\n * Returns an iterator of a map's keys.\n *\n * @example\n * ```ts\n * [...keys(new Map([['a', 1], ['b', 2]]))]; // ['a', 'b']\n * ```\n */\nexport function keys<K, V>(data: Map<K, V>): MapIterator<K> {\n return data.keys();\n}\n","import { purry } from '../function/purry';\n\nfunction removeImplementation<K, V>(data: Map<K, V>, key: K): Map<K, V> {\n data.delete(key);\n return data;\n}\n\n/**\n * Removes an entry by key and returns the same map.\n *\n * @example\n * ```ts\n * const map = new Map([['a', 1], ['b', 2]]);\n * remove(map, 'a'); // Map { 'b' => 2 }\n * remove('b')(map); // Map(0) {}\n * ```\n */\nexport function remove<K>(key: K): <V>(data: Map<K, V>) => Map<K, V>;\nexport function remove<K, V>(data: Map<K, V>, key: K): Map<K, V>;\nexport function remove(...args: readonly unknown[]): unknown {\n return purry(removeImplementation, args);\n}\n","import { purry } from '../function/purry';\n\nfunction setImplementation<K, V>(data: Map<K, V>, key: K, value: V): Map<K, V> {\n return data.set(key, value);\n}\n\n/**\n * Sets a key-value pair and returns the same map.\n *\n * @example\n * ```ts\n * set(new Map(), 'a', 1); // Map { 'a' => 1 }\n * set('b', 2)(new Map([['a', 1]])); // Map { 'a' => 1, 'b' => 2 }\n * ```\n */\nexport function set<K, V>(key: K, value: V): (data: Map<K, V>) => Map<K, V>;\nexport function set<K, V>(data: Map<K, V>, key: K, value: V): Map<K, V>;\nexport function set(...args: readonly unknown[]): unknown {\n return purry(setImplementation, args);\n}\n","/**\n * Returns an iterator of a map's values.\n *\n * @example\n * ```ts\n * [...values(new Map([['a', 1], ['b', 2]]))]; // [1, 2]\n * ```\n */\nexport function values<K, V>(data: Map<K, V>): MapIterator<V> {\n return data.values();\n}\n"],"mappings":";;;;;;;AAIA,MAAa,OAAO;;;;;;;;;;;ACIpB,SAAgB,MAAY,MAA4B;CACtD,KAAK,MAAM;CACX,OAAO;AACT;;;;;;;;;;;ACHA,SAAgB,QAAc,MAAsC;CAClE,OAAO,KAAK,QAAQ;AACtB;;;ACRA,SAAS,sBACP,MACA,YACW;CACX,KAAK,QAAQ,UAAU;CACvB,OAAO;AACT;AAcA,SAAgB,QAAQ,GAAG,MAAmC;CAC5D,OAAO,MAAM,uBAAuB,IAAI;AAC1C;;;;;;;;;;;AChBA,SAAgB,KAAW,UAAsE;CAC/F,OAAO,IAAI,IAAI,QAAQ;AACzB;;;;;;;;;AAUA,SAAgB,QAAyB;CACvC,uBAAO,IAAI,IAAI;AACjB;;;ACpBA,SAAS,kBAAwB,MAAiB,KAAuB;CACvE,OAAO,KAAK,IAAI,GAAG;AACrB;AAeA,SAAgB,IAAI,GAAG,MAAmC;CACxD,OAAO,MAAM,mBAAmB,IAAI;AACtC;;;;;;;;;;;;;ACRA,SAAgB,YAAkB,KAAgB,KAAQ,cAA4B;CACpF,MAAM,IAAI,uBAAuB,mCAAmC;AACtE;;;;;;;;;;;AAaA,SAAgB,oBAA0B,KAAgB,KAAQ,UAAoC;CACpG,MAAM,IAAI,uBAAuB,2CAA2C;AAC9E;;;AC5BA,SAAS,sBAA4B,OAAoB,aAAyD;CAChH,OAAO,IAAI,QAAQ,OAAO,WAAW;AACvC;AAgBA,SAAgB,QAAQ,GAAG,MAAmC;CAC5D,OAAO,MAAM,uBAAuB,IAAI;AAC1C;;;;;;;;;;;ACdA,SAAgB,KAAW,MAAiC;CAC1D,OAAO,KAAK,KAAK;AACnB;;;ACRA,SAAS,qBAA2B,MAAiB,KAAmB;CACtE,KAAK,OAAO,GAAG;CACf,OAAO;AACT;AAcA,SAAgB,OAAO,GAAG,MAAmC;CAC3D,OAAO,MAAM,sBAAsB,IAAI;AACzC;;;ACnBA,SAAS,kBAAwB,MAAiB,KAAQ,OAAqB;CAC7E,OAAO,KAAK,IAAI,KAAK,KAAK;AAC5B;AAaA,SAAgB,IAAI,GAAG,MAAmC;CACxD,OAAO,MAAM,mBAAmB,IAAI;AACtC;;;;;;;;;;;ACXA,SAAgB,OAAa,MAAiC;CAC5D,OAAO,KAAK,OAAO;AACrB"}
@@ -1,10 +1,25 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_purry = require("../purry-B2_0DGLV.cjs");
2
+ const require_purry = require("../purry-Dqp_F64t.cjs");
3
3
  const require_errors = require("../errors-O-d_Vemi.cjs");
4
4
  require("../order/index.cjs");
5
5
  //#region src/number/_globalAliases.ts
6
+ /**
7
+ * Number predicates from the global `Number` object: `isFinite`, `isInteger`, and `isSafeInteger`.
8
+ * @function
9
+ *
10
+ * @example
11
+ * ```ts
12
+ * isFinite(42); // true
13
+ * isInteger(3.14); // false
14
+ * isSafeInteger(Number.MAX_SAFE_INTEGER); // true
15
+ * ```
16
+ */
6
17
  const { isFinite, isInteger, isSafeInteger } = Number;
7
- const numberConstructor = Number;
18
+ /**
19
+ * Alias of the built-in number constructor. `new Number() === new Number.Ctor()`
20
+ * @function
21
+ */
22
+ const Ctor = Number;
8
23
  //#endregion
9
24
  //#region src/number/add.ts
10
25
  function addImplementation(left, right) {
@@ -15,6 +30,16 @@ function add(...args) {
15
30
  }
16
31
  //#endregion
17
32
  //#region src/number/compare.ts
33
+ /**
34
+ * Compares two numbers and returns their ordering.
35
+ *
36
+ * @example
37
+ * ```ts
38
+ * compare(1, 2); // -1
39
+ * compare(2, 2); // 0
40
+ * compare(3, 2); // 1
41
+ * ```
42
+ */
18
43
  function compare(left, right) {
19
44
  if (left < right) return -1;
20
45
  if (left > right) return 1;
@@ -22,6 +47,14 @@ function compare(left, right) {
22
47
  }
23
48
  //#endregion
24
49
  //#region src/number/decrement.ts
50
+ /**
51
+ * Returns the number decremented by one.
52
+ *
53
+ * @example
54
+ * ```ts
55
+ * decrement(5); // 4
56
+ * ```
57
+ */
25
58
  function decrement(num) {
26
59
  return num - 1;
27
60
  }
@@ -35,15 +68,27 @@ function divide(...args) {
35
68
  }
36
69
  //#endregion
37
70
  //#region src/number/increment.ts
71
+ /**
72
+ * Returns the number incremented by one.
73
+ *
74
+ * @example
75
+ * ```ts
76
+ * increment(5); // 6
77
+ * ```
78
+ */
38
79
  function increment(num) {
39
80
  return num + 1;
40
81
  }
41
82
  //#endregion
42
83
  //#region src/number/isNaN.ts
43
84
  /**
85
+ * Checks whether a number is `NaN`.
44
86
  *
45
- * @param num
46
- * @returns
87
+ * @example
88
+ * ```ts
89
+ * isNaN(NaN); // true
90
+ * isNaN(0); // false
91
+ * ```
47
92
  */
48
93
  function isNaN(num) {
49
94
  return Number.isNaN(num);
@@ -51,11 +96,7 @@ function isNaN(num) {
51
96
  //#endregion
52
97
  //#region src/number/isNil.ts
53
98
  /**
54
- * Check whether a value is nullish (`null` or `undefined`)
55
- *
56
- * @category Guard
57
- * @param value - The value to check.
58
- * @returns `true` if `value` is `null` or `undefined`; otherwise `false`.
99
+ * Checks whether a value is nullish (`null` or `undefined`).
59
100
  *
60
101
  * @example
61
102
  * ```ts
@@ -70,9 +111,13 @@ function isNil(value) {
70
111
  //#endregion
71
112
  //#region src/number/isNotNaN.ts
72
113
  /**
114
+ * Checks whether a number is not `NaN`.
73
115
  *
74
- * @param num
75
- * @returns
116
+ * @example
117
+ * ```ts
118
+ * isNotNaN(0); // true
119
+ * isNotNaN(NaN); // false
120
+ * ```
76
121
  */
77
122
  function isNotNaN(num) {
78
123
  return !Number.isNaN(num);
@@ -80,11 +125,7 @@ function isNotNaN(num) {
80
125
  //#endregion
81
126
  //#region src/number/isNumber.ts
82
127
  /**
83
- * Check whether a value is a number (primitive `number`, not `NaN`).
84
- *
85
- * @category Guard
86
- * @param data - The value to check.
87
- * @returns `true` if `data` is a number; otherwise `false`.
128
+ * Checks whether a value is a primitive `number`.
88
129
  *
89
130
  * @example
90
131
  * ```ts
@@ -108,7 +149,14 @@ function multiply(...args) {
108
149
  //#endregion
109
150
  //#region src/number/parseFloat.ts
110
151
  /**
152
+ * Parses a floating-point number from a string.
153
+ * Returns a NaN error when the input is not a valid number.
111
154
  *
155
+ * @example
156
+ * ```ts
157
+ * parseFloat('3.14'); // 3.14
158
+ * parseFloat('abc'); // NaNError
159
+ * ```
112
160
  */
113
161
  function parseFloat(data) {
114
162
  const num = Number.parseFloat(data);
@@ -118,7 +166,14 @@ function parseFloat(data) {
118
166
  //#endregion
119
167
  //#region src/number/parseInt.ts
120
168
  /**
121
- * @throws {NanError}
169
+ * Parses a base-10 integer from a string.
170
+ * Returns a NaN error when the input is not a valid integer.
171
+ *
172
+ * @example
173
+ * ```ts
174
+ * parseInt('42'); // 42
175
+ * parseInt('abc'); // NaNError
176
+ * ```
122
177
  */
123
178
  function parseInt(data) {
124
179
  const num = Number.parseInt(data, 10);
@@ -138,6 +193,15 @@ function parseIntBase(...args) {
138
193
  }
139
194
  //#endregion
140
195
  //#region src/number/product.ts
196
+ /**
197
+ * Multiplies all numbers in an array.
198
+ *
199
+ * @example
200
+ * ```ts
201
+ * product([2, 3, 4]); // 24
202
+ * product([]); // 1
203
+ * ```
204
+ */
141
205
  function product(data) {
142
206
  return data.reduce((a, b) => a * b, 1);
143
207
  }
@@ -151,11 +215,20 @@ function subtract(...args) {
151
215
  }
152
216
  //#endregion
153
217
  //#region src/number/sum.ts
218
+ /**
219
+ * Sums all numbers in an array.
220
+ *
221
+ * @example
222
+ * ```ts
223
+ * sum([1, 2, 3]); // 6
224
+ * sum([]); // 0
225
+ * ```
226
+ */
154
227
  function sum(data) {
155
228
  return data.reduce((a, b) => a + b, 0);
156
229
  }
157
230
  //#endregion
158
- exports.Number = numberConstructor;
231
+ exports.Ctor = Ctor;
159
232
  exports.add = add;
160
233
  exports.compare = compare;
161
234
  exports.decrement = decrement;
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","names":["purry","purry","purry","NaNError","NaNError","NaNError","purry","purry"],"sources":["../../src/number/_globalAliases.ts","../../src/number/add.ts","../../src/number/compare.ts","../../src/number/decrement.ts","../../src/number/divide.ts","../../src/number/increment.ts","../../src/number/isNaN.ts","../../src/number/isNil.ts","../../src/number/isNotNaN.ts","../../src/number/isNumber.ts","../../src/number/multiply.ts","../../src/number/parseFloat.ts","../../src/number/parseInt.ts","../../src/number/parseIntBase.ts","../../src/number/product.ts","../../src/number/subtract.ts","../../src/number/sum.ts"],"sourcesContent":["export const { isFinite, isInteger, isSafeInteger } = Number;\n\nconst numberConstructor = Number;\nexport { numberConstructor as Number };\n","import { purry } from '../function/purry';\n\nfunction addImplementation(left: number, right: number): number {\n return left + right;\n}\n\nexport function add(right: number): (left: number) => number;\nexport function add(left: number, right: number): number;\nexport function add(...args: unknown[]): unknown {\n return purry(addImplementation, args);\n}\n","import type { Order } from '../order';\nimport { eq, gt, lt } from '../order';\n\nexport function compare(left: number, right: number): Order {\n if (left < right) return lt;\n if (left > right) return gt;\n return eq;\n}\n","export function decrement(num: number): number {\n return num - 1;\n}\n","import { purry } from '../function/purry';\n\nfunction divideImplementation(left: number, right: number): number {\n return left / right;\n}\n\nexport function divide(right: number): (left: number) => number;\nexport function divide(left: number, right: number): number;\nexport function divide(...args: unknown[]): unknown {\n return purry(divideImplementation, args);\n}\n","export function increment(num: number): number {\n return num + 1;\n}\n","/**\n *\n * @param num\n * @returns\n */\nexport function isNaN(num: number): boolean {\n return Number.isNaN(num);\n}\n","/**\n * Check whether a value is nullish (`null` or `undefined`)\n *\n * @category Guard\n * @param value - The value to check.\n * @returns `true` if `value` is `null` or `undefined`; otherwise `false`.\n *\n * @example\n * ```ts\n * isNil(null); // true\n * isNil(undefined); // true\n * isNil(0); // false\n * ```\n */\nexport function isNil<T>(value: T): value is T & (null | undefined) {\n return value == null;\n}\n","/**\n *\n * @param num\n * @returns\n */\nexport function isNotNaN(num: number): boolean {\n return !Number.isNaN(num);\n}\n","import type { NarrowedTo } from '../types';\n\n/**\n * Check whether a value is a number (primitive `number`, not `NaN`).\n *\n * @category Guard\n * @param data - The value to check.\n * @returns `true` if `data` is a number; otherwise `false`.\n *\n * @example\n * ```ts\n * isNumber(1); // true\n * isNumber(Infinity); // true\n * isNumber(NaN); // true\n * isNumber('1'); // false\n * ```\n */\nexport function isNumber<T>(data: T | number): data is NarrowedTo<T, number> {\n return typeof data === 'number';\n}\n","import { purry } from '../function/purry';\n\nfunction multiplyImplementation(left: number, right: number): number {\n return left * right;\n}\n\nexport function multiply(right: number): (left: number) => number;\nexport function multiply(left: number, right: number): number;\nexport function multiply(...args: unknown[]): unknown {\n return purry(multiplyImplementation, args);\n}\n","import { NaNError } from '../errors';\n\n/**\n *\n */\nexport function parseFloat(data: string): NaNError | number {\n const num = Number.parseFloat(data);\n\n if (Number.isNaN(num)) {\n return new NaNError(`Num.parseFloat() :: \"${data}\" is NaN`);\n }\n\n return num;\n}\n","import { NaNError } from '../errors';\n\n/**\n * @throws {NanError}\n */\nexport function parseInt(data: string): NaNError | number {\n const num = Number.parseInt(data, 10);\n\n if (Number.isNaN(num)) {\n return new NaNError(`Num.parseInt() :: \"${data}\" is NaN`);\n }\n\n return num;\n}\n","import { NaNError } from '../errors';\nimport { purry } from '../function/purry';\n\nfunction parseIntBaseImplementation(data: string, radix: number): number {\n if (typeof radix !== 'number') {\n throw new NaNError(`Num.parseFloat(_, radix) :: \"${data}\" must be number`);\n }\n\n const num = Number.parseInt(data, radix);\n\n if (Number.isNaN(num)) {\n throw new NaNError(`Num.parseFloat(data, _) :: \"${data}\" is NaN`);\n }\n\n return num;\n}\n\n/**\n *\n * @throws {NaNError}\n */\nexport function parseIntBase(radix: number): (data: string) => number;\nexport function parseIntBase(data: string, radix: number): number;\nexport function parseIntBase(...args: unknown[]): unknown {\n return purry(parseIntBaseImplementation, args);\n}\n","export function product(data: number[]): number {\n return data.reduce((a, b) => a * b, 1);\n}\n","import { purry } from '../function/purry';\n\nfunction subtractImplementation(left: number, right: number): number {\n return left - right;\n}\n\nexport function subtract(right: number): (left: number) => number;\nexport function subtract(left: number, right: number): number;\nexport function subtract(...args: unknown[]): unknown {\n return purry(subtractImplementation, args);\n}\n","export function sum(data: number[]): number {\n return data.reduce((a, b) => a + b, 0);\n}\n"],"mappings":";;;;;AAAA,MAAa,EAAE,UAAU,WAAW,kBAAkB;AAEtD,MAAM,oBAAoB;;;ACA1B,SAAS,kBAAkB,MAAc,OAAuB;CAC9D,OAAO,OAAO;AAChB;AAIA,SAAgB,IAAI,GAAG,MAA0B;CAC/C,OAAOA,cAAAA,MAAM,mBAAmB,IAAI;AACtC;;;ACPA,SAAgB,QAAQ,MAAc,OAAsB;CAC1D,IAAI,OAAO,OAAO,OAAA;CAClB,IAAI,OAAO,OAAO,OAAA;CAClB,OAAA;AACF;;;ACPA,SAAgB,UAAU,KAAqB;CAC7C,OAAO,MAAM;AACf;;;ACAA,SAAS,qBAAqB,MAAc,OAAuB;CACjE,OAAO,OAAO;AAChB;AAIA,SAAgB,OAAO,GAAG,MAA0B;CAClD,OAAOC,cAAAA,MAAM,sBAAsB,IAAI;AACzC;;;ACVA,SAAgB,UAAU,KAAqB;CAC7C,OAAO,MAAM;AACf;;;;;;;;ACGA,SAAgB,MAAM,KAAsB;CAC1C,OAAO,OAAO,MAAM,GAAG;AACzB;;;;;;;;;;;;;;;;;ACOA,SAAgB,MAAS,OAA2C;CAClE,OAAO,SAAS;AAClB;;;;;;;;ACXA,SAAgB,SAAS,KAAsB;CAC7C,OAAO,CAAC,OAAO,MAAM,GAAG;AAC1B;;;;;;;;;;;;;;;;;;ACUA,SAAgB,SAAY,MAAiD;CAC3E,OAAO,OAAO,SAAS;AACzB;;;ACjBA,SAAS,uBAAuB,MAAc,OAAuB;CACnE,OAAO,OAAO;AAChB;AAIA,SAAgB,SAAS,GAAG,MAA0B;CACpD,OAAOC,cAAAA,MAAM,wBAAwB,IAAI;AAC3C;;;;;;ACLA,SAAgB,WAAW,MAAiC;CAC1D,MAAM,MAAM,OAAO,WAAW,IAAI;CAElC,IAAI,OAAO,MAAM,GAAG,GAClB,OAAO,IAAIC,eAAAA,SAAS,wBAAwB,KAAK,SAAS;CAG5D,OAAO;AACT;;;;;;ACRA,SAAgB,SAAS,MAAiC;CACxD,MAAM,MAAM,OAAO,SAAS,MAAM,EAAE;CAEpC,IAAI,OAAO,MAAM,GAAG,GAClB,OAAO,IAAIC,eAAAA,SAAS,sBAAsB,KAAK,SAAS;CAG1D,OAAO;AACT;;;ACVA,SAAS,2BAA2B,MAAc,OAAuB;CACvE,IAAI,OAAO,UAAU,UACnB,MAAM,IAAIC,eAAAA,SAAS,gCAAgC,KAAK,iBAAiB;CAG3E,MAAM,MAAM,OAAO,SAAS,MAAM,KAAK;CAEvC,IAAI,OAAO,MAAM,GAAG,GAClB,MAAM,IAAIA,eAAAA,SAAS,+BAA+B,KAAK,SAAS;CAGlE,OAAO;AACT;AAQA,SAAgB,aAAa,GAAG,MAA0B;CACxD,OAAOC,cAAAA,MAAM,4BAA4B,IAAI;AAC/C;;;ACzBA,SAAgB,QAAQ,MAAwB;CAC9C,OAAO,KAAK,QAAQ,GAAG,MAAM,IAAI,GAAG,CAAC;AACvC;;;ACAA,SAAS,uBAAuB,MAAc,OAAuB;CACnE,OAAO,OAAO;AAChB;AAIA,SAAgB,SAAS,GAAG,MAA0B;CACpD,OAAOC,cAAAA,MAAM,wBAAwB,IAAI;AAC3C;;;ACVA,SAAgB,IAAI,MAAwB;CAC1C,OAAO,KAAK,QAAQ,GAAG,MAAM,IAAI,GAAG,CAAC;AACvC"}
1
+ {"version":3,"file":"index.cjs","names":["purry","purry","purry","NaNError","NaNError","NaNError","purry","purry"],"sources":["../../src/number/_globalAliases.ts","../../src/number/add.ts","../../src/number/compare.ts","../../src/number/decrement.ts","../../src/number/divide.ts","../../src/number/increment.ts","../../src/number/isNaN.ts","../../src/number/isNil.ts","../../src/number/isNotNaN.ts","../../src/number/isNumber.ts","../../src/number/multiply.ts","../../src/number/parseFloat.ts","../../src/number/parseInt.ts","../../src/number/parseIntBase.ts","../../src/number/product.ts","../../src/number/subtract.ts","../../src/number/sum.ts"],"sourcesContent":["/**\n * Number predicates from the global `Number` object: `isFinite`, `isInteger`, and `isSafeInteger`.\n * @function\n *\n * @example\n * ```ts\n * isFinite(42); // true\n * isInteger(3.14); // false\n * isSafeInteger(Number.MAX_SAFE_INTEGER); // true\n * ```\n */\nexport const { isFinite, isInteger, isSafeInteger } = Number;\n\n/**\n * Alias of the built-in number constructor. `new Number() === new Number.Ctor()`\n * @function\n */\nexport const Ctor = Number;\n","import { purry } from '../function/purry';\n\nfunction addImplementation(left: number, right: number): number {\n return left + right;\n}\n\n/**\n * Adds two numbers together.\n *\n * @example\n * ```ts\n * add(1, 2); // 3\n * add(2)(1); // 3\n * ```\n */\nexport function add(right: number): (left: number) => number;\nexport function add(left: number, right: number): number;\nexport function add(...args: unknown[]): unknown {\n return purry(addImplementation, args);\n}\n","import type { Order } from '../order';\nimport { eq, gt, lt } from '../order';\n\n/**\n * Compares two numbers and returns their ordering.\n *\n * @example\n * ```ts\n * compare(1, 2); // -1\n * compare(2, 2); // 0\n * compare(3, 2); // 1\n * ```\n */\nexport function compare(left: number, right: number): Order {\n if (left < right) return lt;\n if (left > right) return gt;\n return eq;\n}\n","/**\n * Returns the number decremented by one.\n *\n * @example\n * ```ts\n * decrement(5); // 4\n * ```\n */\nexport function decrement(num: number): number {\n return num - 1;\n}\n","import { purry } from '../function/purry';\n\nfunction divideImplementation(left: number, right: number): number {\n return left / right;\n}\n\n/**\n * Divides one number by another.\n *\n * @example\n * ```ts\n * divide(10, 2); // 5\n * divide(2)(10); // 5\n * ```\n */\nexport function divide(right: number): (left: number) => number;\nexport function divide(left: number, right: number): number;\nexport function divide(...args: unknown[]): unknown {\n return purry(divideImplementation, args);\n}\n","/**\n * Returns the number incremented by one.\n *\n * @example\n * ```ts\n * increment(5); // 6\n * ```\n */\nexport function increment(num: number): number {\n return num + 1;\n}\n","/**\n * Checks whether a number is `NaN`.\n *\n * @example\n * ```ts\n * isNaN(NaN); // true\n * isNaN(0); // false\n * ```\n */\nexport function isNaN(num: number): boolean {\n return Number.isNaN(num);\n}\n","/**\n * Checks whether a value is nullish (`null` or `undefined`).\n *\n * @example\n * ```ts\n * isNil(null); // true\n * isNil(undefined); // true\n * isNil(0); // false\n * ```\n */\nexport function isNil<T>(value: T): value is T & (null | undefined) {\n return value == null;\n}\n","/**\n * Checks whether a number is not `NaN`.\n *\n * @example\n * ```ts\n * isNotNaN(0); // true\n * isNotNaN(NaN); // false\n * ```\n */\nexport function isNotNaN(num: number): boolean {\n return !Number.isNaN(num);\n}\n","import type { NarrowedTo } from '../types';\n\n/**\n * Checks whether a value is a primitive `number`.\n *\n * @example\n * ```ts\n * isNumber(1); // true\n * isNumber(Infinity); // true\n * isNumber(NaN); // true\n * isNumber('1'); // false\n * ```\n */\nexport function isNumber<T>(data: T | number): data is NarrowedTo<T, number> {\n return typeof data === 'number';\n}\n","import { purry } from '../function/purry';\n\nfunction multiplyImplementation(left: number, right: number): number {\n return left * right;\n}\n\n/**\n * Multiplies two numbers together.\n *\n * @example\n * ```ts\n * multiply(3, 4); // 12\n * multiply(4)(3); // 12\n * ```\n */\nexport function multiply(right: number): (left: number) => number;\nexport function multiply(left: number, right: number): number;\nexport function multiply(...args: unknown[]): unknown {\n return purry(multiplyImplementation, args);\n}\n","import { NaNError } from '../errors';\n\n/**\n * Parses a floating-point number from a string.\n * Returns a NaN error when the input is not a valid number.\n *\n * @example\n * ```ts\n * parseFloat('3.14'); // 3.14\n * parseFloat('abc'); // NaNError\n * ```\n */\nexport function parseFloat(data: string): NaNError | number {\n const num = Number.parseFloat(data);\n\n if (Number.isNaN(num)) {\n return new NaNError(`Num.parseFloat() :: \"${data}\" is NaN`);\n }\n\n return num;\n}\n","import { NaNError } from '../errors';\n\n/**\n * Parses a base-10 integer from a string.\n * Returns a NaN error when the input is not a valid integer.\n *\n * @example\n * ```ts\n * parseInt('42'); // 42\n * parseInt('abc'); // NaNError\n * ```\n */\nexport function parseInt(data: string): NaNError | number {\n const num = Number.parseInt(data, 10);\n\n if (Number.isNaN(num)) {\n return new NaNError(`Num.parseInt() :: \"${data}\" is NaN`);\n }\n\n return num;\n}\n","import { NaNError } from '../errors';\nimport { purry } from '../function/purry';\n\nfunction parseIntBaseImplementation(data: string, radix: number): number {\n if (typeof radix !== 'number') {\n throw new NaNError(`Num.parseFloat(_, radix) :: \"${data}\" must be number`);\n }\n\n const num = Number.parseInt(data, radix);\n\n if (Number.isNaN(num)) {\n throw new NaNError(`Num.parseFloat(data, _) :: \"${data}\" is NaN`);\n }\n\n return num;\n}\n\n/**\n * Parses an integer from a string in the given radix.\n * Throws a NaN error when the radix is invalid or parsing fails.\n *\n * @example\n * ```ts\n * parseIntBase('ff', 16); // 255\n * parseIntBase(16)('ff'); // 255\n * ```\n */\nexport function parseIntBase(radix: number): (data: string) => number;\nexport function parseIntBase(data: string, radix: number): number;\nexport function parseIntBase(...args: unknown[]): unknown {\n return purry(parseIntBaseImplementation, args);\n}\n","/**\n * Multiplies all numbers in an array.\n *\n * @example\n * ```ts\n * product([2, 3, 4]); // 24\n * product([]); // 1\n * ```\n */\nexport function product(data: number[]): number {\n return data.reduce((a, b) => a * b, 1);\n}\n","import { purry } from '../function/purry';\n\nfunction subtractImplementation(left: number, right: number): number {\n return left - right;\n}\n\n/**\n * Subtracts one number from another.\n *\n * @example\n * ```ts\n * subtract(10, 3); // 7\n * subtract(3)(10); // 7\n * ```\n */\nexport function subtract(right: number): (left: number) => number;\nexport function subtract(left: number, right: number): number;\nexport function subtract(...args: unknown[]): unknown {\n return purry(subtractImplementation, args);\n}\n","/**\n * Sums all numbers in an array.\n *\n * @example\n * ```ts\n * sum([1, 2, 3]); // 6\n * sum([]); // 0\n * ```\n */\nexport function sum(data: number[]): number {\n return data.reduce((a, b) => a + b, 0);\n}\n"],"mappings":";;;;;;;;;;;;;;;;AAWA,MAAa,EAAE,UAAU,WAAW,kBAAkB;;;;;AAMtD,MAAa,OAAO;;;ACfpB,SAAS,kBAAkB,MAAc,OAAuB;CAC9D,OAAO,OAAO;AAChB;AAaA,SAAgB,IAAI,GAAG,MAA0B;CAC/C,OAAOA,cAAAA,MAAM,mBAAmB,IAAI;AACtC;;;;;;;;;;;;;ACNA,SAAgB,QAAQ,MAAc,OAAsB;CAC1D,IAAI,OAAO,OAAO,OAAA;CAClB,IAAI,OAAO,OAAO,OAAA;CAClB,OAAA;AACF;;;;;;;;;;;ACTA,SAAgB,UAAU,KAAqB;CAC7C,OAAO,MAAM;AACf;;;ACRA,SAAS,qBAAqB,MAAc,OAAuB;CACjE,OAAO,OAAO;AAChB;AAaA,SAAgB,OAAO,GAAG,MAA0B;CAClD,OAAOC,cAAAA,MAAM,sBAAsB,IAAI;AACzC;;;;;;;;;;;ACXA,SAAgB,UAAU,KAAqB;CAC7C,OAAO,MAAM;AACf;;;;;;;;;;;;ACDA,SAAgB,MAAM,KAAsB;CAC1C,OAAO,OAAO,MAAM,GAAG;AACzB;;;;;;;;;;;;;ACDA,SAAgB,MAAS,OAA2C;CAClE,OAAO,SAAS;AAClB;;;;;;;;;;;;ACHA,SAAgB,SAAS,KAAsB;CAC7C,OAAO,CAAC,OAAO,MAAM,GAAG;AAC1B;;;;;;;;;;;;;;ACEA,SAAgB,SAAY,MAAiD;CAC3E,OAAO,OAAO,SAAS;AACzB;;;ACbA,SAAS,uBAAuB,MAAc,OAAuB;CACnE,OAAO,OAAO;AAChB;AAaA,SAAgB,SAAS,GAAG,MAA0B;CACpD,OAAOC,cAAAA,MAAM,wBAAwB,IAAI;AAC3C;;;;;;;;;;;;;ACPA,SAAgB,WAAW,MAAiC;CAC1D,MAAM,MAAM,OAAO,WAAW,IAAI;CAElC,IAAI,OAAO,MAAM,GAAG,GAClB,OAAO,IAAIC,eAAAA,SAAS,wBAAwB,KAAK,SAAS;CAG5D,OAAO;AACT;;;;;;;;;;;;;ACRA,SAAgB,SAAS,MAAiC;CACxD,MAAM,MAAM,OAAO,SAAS,MAAM,EAAE;CAEpC,IAAI,OAAO,MAAM,GAAG,GAClB,OAAO,IAAIC,eAAAA,SAAS,sBAAsB,KAAK,SAAS;CAG1D,OAAO;AACT;;;ACjBA,SAAS,2BAA2B,MAAc,OAAuB;CACvE,IAAI,OAAO,UAAU,UACnB,MAAM,IAAIC,eAAAA,SAAS,gCAAgC,KAAK,iBAAiB;CAG3E,MAAM,MAAM,OAAO,SAAS,MAAM,KAAK;CAEvC,IAAI,OAAO,MAAM,GAAG,GAClB,MAAM,IAAIA,eAAAA,SAAS,+BAA+B,KAAK,SAAS;CAGlE,OAAO;AACT;AAcA,SAAgB,aAAa,GAAG,MAA0B;CACxD,OAAOC,cAAAA,MAAM,4BAA4B,IAAI;AAC/C;;;;;;;;;;;;ACtBA,SAAgB,QAAQ,MAAwB;CAC9C,OAAO,KAAK,QAAQ,GAAG,MAAM,IAAI,GAAG,CAAC;AACvC;;;ACTA,SAAS,uBAAuB,MAAc,OAAuB;CACnE,OAAO,OAAO;AAChB;AAaA,SAAgB,SAAS,GAAG,MAA0B;CACpD,OAAOC,cAAAA,MAAM,wBAAwB,IAAI;AAC3C;;;;;;;;;;;;ACVA,SAAgB,IAAI,MAAwB;CAC1C,OAAO,KAAK,QAAQ,GAAG,MAAM,IAAI,GAAG,CAAC;AACvC"}
@@ -1,43 +1,102 @@
1
1
  import { n as NaNError } from "../errors-CJsLpYo9.cjs";
2
2
  import { i as NarrowedTo } from "../types-D8f67ZCe.cjs";
3
- import { i as Order } from "../order.constants-BWSCg3C7.cjs";
3
+ import { i as Order } from "../order.constants-DpGY-EDp.cjs";
4
4
 
5
5
  //#region src/number/_globalAliases.d.ts
6
+ /**
7
+ * Number predicates from the global `Number` object: `isFinite`, `isInteger`, and `isSafeInteger`.
8
+ * @function
9
+ *
10
+ * @example
11
+ * ```ts
12
+ * isFinite(42); // true
13
+ * isInteger(3.14); // false
14
+ * isSafeInteger(Number.MAX_SAFE_INTEGER); // true
15
+ * ```
16
+ */
6
17
  declare const isFinite: (number: unknown) => boolean, isInteger: (number: unknown) => boolean, isSafeInteger: (number: unknown) => boolean;
7
- declare const numberConstructor: NumberConstructor;
18
+ /**
19
+ * Alias of the built-in number constructor. `new Number() === new Number.Ctor()`
20
+ * @function
21
+ */
22
+ declare const Ctor: NumberConstructor;
8
23
  //#endregion
9
24
  //#region src/number/add.d.ts
25
+ /**
26
+ * Adds two numbers together.
27
+ *
28
+ * @example
29
+ * ```ts
30
+ * add(1, 2); // 3
31
+ * add(2)(1); // 3
32
+ * ```
33
+ */
10
34
  declare function add(right: number): (left: number) => number;
11
35
  declare function add(left: number, right: number): number;
12
36
  //#endregion
13
37
  //#region src/number/compare.d.ts
38
+ /**
39
+ * Compares two numbers and returns their ordering.
40
+ *
41
+ * @example
42
+ * ```ts
43
+ * compare(1, 2); // -1
44
+ * compare(2, 2); // 0
45
+ * compare(3, 2); // 1
46
+ * ```
47
+ */
14
48
  declare function compare(left: number, right: number): Order;
15
49
  //#endregion
16
50
  //#region src/number/decrement.d.ts
51
+ /**
52
+ * Returns the number decremented by one.
53
+ *
54
+ * @example
55
+ * ```ts
56
+ * decrement(5); // 4
57
+ * ```
58
+ */
17
59
  declare function decrement(num: number): number;
18
60
  //#endregion
19
61
  //#region src/number/divide.d.ts
62
+ /**
63
+ * Divides one number by another.
64
+ *
65
+ * @example
66
+ * ```ts
67
+ * divide(10, 2); // 5
68
+ * divide(2)(10); // 5
69
+ * ```
70
+ */
20
71
  declare function divide(right: number): (left: number) => number;
21
72
  declare function divide(left: number, right: number): number;
22
73
  //#endregion
23
74
  //#region src/number/increment.d.ts
75
+ /**
76
+ * Returns the number incremented by one.
77
+ *
78
+ * @example
79
+ * ```ts
80
+ * increment(5); // 6
81
+ * ```
82
+ */
24
83
  declare function increment(num: number): number;
25
84
  //#endregion
26
85
  //#region src/number/isNaN.d.ts
27
86
  /**
87
+ * Checks whether a number is `NaN`.
28
88
  *
29
- * @param num
30
- * @returns
89
+ * @example
90
+ * ```ts
91
+ * isNaN(NaN); // true
92
+ * isNaN(0); // false
93
+ * ```
31
94
  */
32
95
  declare function isNaN(num: number): boolean;
33
96
  //#endregion
34
97
  //#region src/number/isNil.d.ts
35
98
  /**
36
- * Check whether a value is nullish (`null` or `undefined`)
37
- *
38
- * @category Guard
39
- * @param value - The value to check.
40
- * @returns `true` if `value` is `null` or `undefined`; otherwise `false`.
99
+ * Checks whether a value is nullish (`null` or `undefined`).
41
100
  *
42
101
  * @example
43
102
  * ```ts
@@ -50,19 +109,19 @@ declare function isNil<T>(value: T): value is T & (null | undefined);
50
109
  //#endregion
51
110
  //#region src/number/isNotNaN.d.ts
52
111
  /**
112
+ * Checks whether a number is not `NaN`.
53
113
  *
54
- * @param num
55
- * @returns
114
+ * @example
115
+ * ```ts
116
+ * isNotNaN(0); // true
117
+ * isNotNaN(NaN); // false
118
+ * ```
56
119
  */
57
120
  declare function isNotNaN(num: number): boolean;
58
121
  //#endregion
59
122
  //#region src/number/isNumber.d.ts
60
123
  /**
61
- * Check whether a value is a number (primitive `number`, not `NaN`).
62
- *
63
- * @category Guard
64
- * @param data - The value to check.
65
- * @returns `true` if `data` is a number; otherwise `false`.
124
+ * Checks whether a value is a primitive `number`.
66
125
  *
67
126
  * @example
68
127
  * ```ts
@@ -75,38 +134,94 @@ declare function isNotNaN(num: number): boolean;
75
134
  declare function isNumber<T>(data: T | number): data is NarrowedTo<T, number>;
76
135
  //#endregion
77
136
  //#region src/number/multiply.d.ts
137
+ /**
138
+ * Multiplies two numbers together.
139
+ *
140
+ * @example
141
+ * ```ts
142
+ * multiply(3, 4); // 12
143
+ * multiply(4)(3); // 12
144
+ * ```
145
+ */
78
146
  declare function multiply(right: number): (left: number) => number;
79
147
  declare function multiply(left: number, right: number): number;
80
148
  //#endregion
81
149
  //#region src/number/parseFloat.d.ts
82
150
  /**
151
+ * Parses a floating-point number from a string.
152
+ * Returns a NaN error when the input is not a valid number.
83
153
  *
154
+ * @example
155
+ * ```ts
156
+ * parseFloat('3.14'); // 3.14
157
+ * parseFloat('abc'); // NaNError
158
+ * ```
84
159
  */
85
160
  declare function parseFloat(data: string): NaNError | number;
86
161
  //#endregion
87
162
  //#region src/number/parseInt.d.ts
88
163
  /**
89
- * @throws {NanError}
164
+ * Parses a base-10 integer from a string.
165
+ * Returns a NaN error when the input is not a valid integer.
166
+ *
167
+ * @example
168
+ * ```ts
169
+ * parseInt('42'); // 42
170
+ * parseInt('abc'); // NaNError
171
+ * ```
90
172
  */
91
173
  declare function parseInt(data: string): NaNError | number;
92
174
  //#endregion
93
175
  //#region src/number/parseIntBase.d.ts
94
176
  /**
177
+ * Parses an integer from a string in the given radix.
178
+ * Throws a NaN error when the radix is invalid or parsing fails.
95
179
  *
96
- * @throws {NaNError}
180
+ * @example
181
+ * ```ts
182
+ * parseIntBase('ff', 16); // 255
183
+ * parseIntBase(16)('ff'); // 255
184
+ * ```
97
185
  */
98
186
  declare function parseIntBase(radix: number): (data: string) => number;
99
187
  declare function parseIntBase(data: string, radix: number): number;
100
188
  //#endregion
101
189
  //#region src/number/product.d.ts
190
+ /**
191
+ * Multiplies all numbers in an array.
192
+ *
193
+ * @example
194
+ * ```ts
195
+ * product([2, 3, 4]); // 24
196
+ * product([]); // 1
197
+ * ```
198
+ */
102
199
  declare function product(data: number[]): number;
103
200
  //#endregion
104
201
  //#region src/number/subtract.d.ts
202
+ /**
203
+ * Subtracts one number from another.
204
+ *
205
+ * @example
206
+ * ```ts
207
+ * subtract(10, 3); // 7
208
+ * subtract(3)(10); // 7
209
+ * ```
210
+ */
105
211
  declare function subtract(right: number): (left: number) => number;
106
212
  declare function subtract(left: number, right: number): number;
107
213
  //#endregion
108
214
  //#region src/number/sum.d.ts
215
+ /**
216
+ * Sums all numbers in an array.
217
+ *
218
+ * @example
219
+ * ```ts
220
+ * sum([1, 2, 3]); // 6
221
+ * sum([]); // 0
222
+ * ```
223
+ */
109
224
  declare function sum(data: number[]): number;
110
225
  //#endregion
111
- export { numberConstructor as Number, add, compare, decrement, divide, increment, isFinite, isInteger, isNaN, isNil, isNotNaN, isNumber, isSafeInteger, multiply, parseFloat, parseInt, parseIntBase, product, subtract, sum };
226
+ export { Ctor, add, compare, decrement, divide, increment, isFinite, isInteger, isNaN, isNil, isNotNaN, isNumber, isSafeInteger, multiply, parseFloat, parseInt, parseIntBase, product, subtract, sum };
112
227
  //# sourceMappingURL=index.d.cts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.cts","names":[],"sources":["../../src/number/_globalAliases.ts","../../src/number/add.ts","../../src/number/compare.ts","../../src/number/decrement.ts","../../src/number/divide.ts","../../src/number/increment.ts","../../src/number/isNaN.ts","../../src/number/isNil.ts","../../src/number/isNotNaN.ts","../../src/number/isNumber.ts","../../src/number/multiply.ts","../../src/number/parseFloat.ts","../../src/number/parseInt.ts","../../src/number/parseIntBase.ts","../../src/number/product.ts","../../src/number/subtract.ts","../../src/number/sum.ts"],"mappings":";;;;;cAAe,QAAA,GAAQ,MAAA,mCAAW,MAAA,uCAAe,MAAA;AAAA,cAE3C,iBAAA,EAAiB,iBAAS;;;iBCIhB,GAAA,CAAI,KAAA,YAAiB,IAAY;AAAA,iBACjC,GAAA,CAAI,IAAA,UAAc,KAAa;;;iBCJ/B,OAAA,CAAQ,IAAA,UAAc,KAAA,WAAgB,KAAK;;;iBCH3C,SAAA,CAAU,GAAW;;;iBCMrB,MAAA,CAAO,KAAA,YAAiB,IAAY;AAAA,iBACpC,MAAA,CAAO,IAAA,UAAc,KAAa;;;iBCPlC,SAAA,CAAU,GAAW;;;;;;;;iBCKrB,KAAA,CAAM,GAAW;;;;;;;;ANLjC;;;;;;;;AAAiD;iBOcjC,KAAA,IAAS,KAAA,EAAO,CAAA,GAAI,KAAA,IAAS,CAAC;;;;;;;;iBCT9B,QAAA,CAAS,GAAW;;;;;;;ARLpC;;;;;;;;AAAiD;;;iBSiBjC,QAAA,IAAY,IAAA,EAAM,CAAA,YAAa,IAAA,IAAQ,UAAA,CAAW,CAAA;;;iBCXlD,QAAA,CAAS,KAAA,YAAiB,IAAY;AAAA,iBACtC,QAAA,CAAS,IAAA,UAAc,KAAa;;;;;;iBCFpC,UAAA,CAAW,IAAA,WAAe,QAAQ;;;;;;iBCAlC,QAAA,CAAS,IAAA,WAAe,QAAQ;;;;;;;iBCgBhC,YAAA,CAAa,KAAA,YAAiB,IAAY;AAAA,iBAC1C,YAAA,CAAa,IAAA,UAAc,KAAa;;;iBCtBxC,OAAA,CAAQ,IAAc;;;iBCMtB,QAAA,CAAS,KAAA,YAAiB,IAAY;AAAA,iBACtC,QAAA,CAAS,IAAA,UAAc,KAAa;;;iBCPpC,GAAA,CAAI,IAAc"}
1
+ {"version":3,"file":"index.d.cts","names":[],"sources":["../../src/number/_globalAliases.ts","../../src/number/add.ts","../../src/number/compare.ts","../../src/number/decrement.ts","../../src/number/divide.ts","../../src/number/increment.ts","../../src/number/isNaN.ts","../../src/number/isNil.ts","../../src/number/isNotNaN.ts","../../src/number/isNumber.ts","../../src/number/multiply.ts","../../src/number/parseFloat.ts","../../src/number/parseInt.ts","../../src/number/parseIntBase.ts","../../src/number/product.ts","../../src/number/subtract.ts","../../src/number/sum.ts"],"mappings":";;;;;;;;;;AAWA;;;;;;cAAe,QAAA,GAAQ,MAAA,mCAAW,MAAA,uCAAe,MAAA;;AAAA;;;cAMpC,IAAA,EAAI,iBAAS;;;;;;;;AAN1B;;;;iBCIgB,GAAA,CAAI,KAAA,YAAiB,IAAY;AAAA,iBACjC,GAAA,CAAI,IAAA,UAAc,KAAa;;;;;;;ADL/C;;;;;;iBEEgB,OAAA,CAAQ,IAAA,UAAc,KAAA,WAAgB,KAAK;;;;;;;;AFF3D;;;iBGHgB,SAAA,CAAU,GAAW;;;;;;;;AHGrC;;;;iBIIgB,MAAA,CAAO,KAAA,YAAiB,IAAY;AAAA,iBACpC,MAAA,CAAO,IAAA,UAAc,KAAa;;;;;;;;AJLlD;;;iBKHgB,SAAA,CAAU,GAAW;;;;;;;;ALGrC;;;;iBMFgB,KAAA,CAAM,GAAW;;;;;;;;ANEjC;;;;;iBODgB,KAAA,IAAS,KAAA,EAAO,CAAA,GAAI,KAAA,IAAS,CAAC;;;;;;;;APC9C;;;;iBQFgB,QAAA,CAAS,GAAW;;;;;;;AREpC;;;;;;;iBSEgB,QAAA,IAAY,IAAA,EAAM,CAAA,YAAa,IAAA,IAAQ,UAAA,CAAW,CAAA;;;;;;;;ATFlE;;;;iBUIgB,QAAA,CAAS,KAAA,YAAiB,IAAY;AAAA,iBACtC,QAAA,CAAS,IAAA,UAAc,KAAa;;;;;;;AVLpD;;;;;;iBWCgB,UAAA,CAAW,IAAA,WAAe,QAAQ;;;;;;;AXDlD;;;;;;iBYCgB,QAAA,CAAS,IAAA,WAAe,QAAQ;;;;;;;;AZDhD;;;;;iBagBgB,YAAA,CAAa,KAAA,YAAiB,IAAY;AAAA,iBAC1C,YAAA,CAAa,IAAA,UAAc,KAAa;;;;;;;;AbjBxD;;;;iBcFgB,OAAA,CAAQ,IAAc;;;;;;;;AdEtC;;;;iBeIgB,QAAA,CAAS,KAAA,YAAiB,IAAY;AAAA,iBACtC,QAAA,CAAS,IAAA,UAAc,KAAa;;;;;;;;AfLpD;;;;iBgBFgB,GAAA,CAAI,IAAc"}