@mongez/reinforcements 2.3.1 → 2.3.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -0
- package/cjs/Random/random.d.ts +35 -35
- package/cjs/Random/random.js +65 -67
- package/cjs/Random/random.test.d.ts +2 -0
- package/cjs/array/average.d.ts +6 -6
- package/cjs/array/average.js +12 -15
- package/cjs/array/average.test.d.ts +2 -0
- package/cjs/array/chunk.d.ts +4 -4
- package/cjs/array/chunk.js +13 -15
- package/cjs/array/chunk.test.d.ts +2 -0
- package/cjs/array/count.d.ts +4 -4
- package/cjs/array/count.js +14 -17
- package/cjs/array/count.test.d.ts +2 -0
- package/cjs/array/countBy.d.ts +6 -6
- package/cjs/array/countBy.js +20 -23
- package/cjs/array/countBy.test.d.ts +2 -0
- package/cjs/array/even.d.ts +6 -6
- package/cjs/array/even.js +15 -18
- package/cjs/array/even.test.d.ts +2 -0
- package/cjs/array/evenIndexes.d.ts +4 -4
- package/cjs/array/evenIndexes.js +9 -11
- package/cjs/array/evenIndexes.test.d.ts +2 -0
- package/cjs/array/groupBy.d.ts +7 -7
- package/cjs/array/groupBy.js +45 -48
- package/cjs/array/groupBy.test.d.ts +2 -0
- package/cjs/array/max.d.ts +6 -6
- package/cjs/array/max.js +20 -23
- package/cjs/array/max.test.d.ts +2 -0
- package/cjs/array/median.d.ts +6 -6
- package/cjs/array/median.js +25 -28
- package/cjs/array/median.test.d.ts +2 -0
- package/cjs/array/min.d.ts +6 -6
- package/cjs/array/min.js +20 -23
- package/cjs/array/min.test.d.ts +2 -0
- package/cjs/array/odd.d.ts +6 -6
- package/cjs/array/odd.js +15 -18
- package/cjs/array/odd.test.d.ts +2 -0
- package/cjs/array/oddIndexes.d.ts +4 -4
- package/cjs/array/oddIndexes.js +9 -11
- package/cjs/array/oddIndexes.test.d.ts +2 -0
- package/cjs/array/pluck.d.ts +8 -8
- package/cjs/array/pluck.js +23 -26
- package/cjs/array/pluck.test.d.ts +2 -0
- package/cjs/array/pushUnique.d.ts +5 -5
- package/cjs/array/pushUnique.js +14 -16
- package/cjs/array/pushUnique.test.d.ts +2 -0
- package/cjs/array/range.d.ts +4 -4
- package/cjs/array/range.js +21 -23
- package/cjs/array/range.test.d.ts +2 -0
- package/cjs/array/sum.d.ts +6 -6
- package/cjs/array/sum.js +28 -31
- package/cjs/array/sum.test.d.ts +2 -0
- package/cjs/array/unique.d.ts +4 -4
- package/cjs/array/unique.js +14 -17
- package/cjs/array/unique.test.d.ts +2 -0
- package/cjs/array/unshiftUnique.d.ts +5 -5
- package/cjs/array/unshiftUnique.js +14 -16
- package/cjs/array/unshiftUnique.test.d.ts +2 -0
- package/cjs/index.d.ts +56 -56
- package/cjs/index.js +56 -59
- package/cjs/mixed/areEqual/areEqual.d.ts +4 -4
- package/cjs/mixed/areEqual/areEqual.js +23 -25
- package/cjs/mixed/areEqual/areEqual.test.d.ts +2 -0
- package/cjs/mixed/clone/clone.d.ts +4 -4
- package/cjs/mixed/clone/clone.js +12 -18
- package/cjs/mixed/clone/clone.test.d.ts +2 -0
- package/cjs/mixed/shuffle/shuffle.d.ts +4 -4
- package/cjs/mixed/shuffle/shuffle.js +14 -16
- package/cjs/mixed/shuffle/shuffle.test.d.ts +2 -0
- package/cjs/number/round.d.ts +4 -4
- package/cjs/number/round.js +9 -11
- package/cjs/object/except.d.ts +4 -4
- package/cjs/object/except.js +12 -15
- package/cjs/object/except.test.d.ts +2 -0
- package/cjs/object/flatten.d.ts +4 -4
- package/cjs/object/flatten.js +38 -40
- package/cjs/object/flatten.test.d.ts +2 -0
- package/cjs/object/get.d.ts +4 -4
- package/cjs/object/get.js +24 -26
- package/cjs/object/get.test.d.ts +2 -0
- package/cjs/object/map.d.ts +4 -4
- package/cjs/object/map.js +10 -12
- package/cjs/object/merge.d.ts +1 -1
- package/cjs/object/merge.js +99 -104
- package/cjs/object/merge.test.d.ts +2 -0
- package/cjs/object/only.d.ts +4 -4
- package/cjs/object/only.js +17 -20
- package/cjs/object/only.test.d.ts +2 -0
- package/cjs/object/set.d.ts +5 -5
- package/cjs/object/set.js +28 -30
- package/cjs/object/set.test.d.ts +2 -0
- package/cjs/object/sort.d.ts +4 -4
- package/cjs/object/sort.js +15 -17
- package/cjs/object/unset.d.ts +4 -4
- package/cjs/object/unset.js +23 -26
- package/cjs/object/unset.test.d.ts +2 -0
- package/cjs/string/capitalize.d.ts +6 -6
- package/cjs/string/capitalize.js +15 -18
- package/cjs/string/extension.d.ts +4 -4
- package/cjs/string/extension.js +11 -13
- package/cjs/string/initials.d.ts +4 -4
- package/cjs/string/initials.js +15 -17
- package/cjs/string/initials.test.d.ts +2 -0
- package/cjs/string/ltrim.d.ts +7 -7
- package/cjs/string/ltrim.js +15 -18
- package/cjs/string/readMoreChars.d.ts +5 -5
- package/cjs/string/readMoreChars.js +11 -13
- package/cjs/string/readMoreWords.d.ts +5 -5
- package/cjs/string/readMoreWords.js +14 -16
- package/cjs/string/removeFirst.d.ts +7 -7
- package/cjs/string/removeFirst.js +13 -16
- package/cjs/string/removeLast.d.ts +7 -7
- package/cjs/string/removeLast.js +13 -16
- package/cjs/string/repeatsOf.d.ts +7 -7
- package/cjs/string/repeatsOf.js +17 -19
- package/cjs/string/replaceAll.d.ts +8 -8
- package/cjs/string/replaceAll.js +14 -17
- package/cjs/string/replaceFirst.d.ts +8 -8
- package/cjs/string/replaceFirst.js +14 -17
- package/cjs/string/replaceLast.d.ts +8 -8
- package/cjs/string/replaceLast.js +21 -23
- package/cjs/string/rtrim.d.ts +7 -7
- package/cjs/string/rtrim.js +15 -18
- package/cjs/string/startsWithArabic.d.ts +2 -2
- package/cjs/string/startsWithArabic.js +13 -17
- package/cjs/string/toCamelCase.d.ts +1 -1
- package/cjs/string/toCamelCase.js +11 -14
- package/cjs/string/toCamelCase.test.d.ts +2 -0
- package/cjs/string/toInputName.d.ts +5 -5
- package/cjs/string/toInputName.js +21 -24
- package/cjs/string/toKebabCase.d.ts +4 -4
- package/cjs/string/toKebabCase.js +10 -13
- package/cjs/string/toKebabCase.test.d.ts +2 -0
- package/cjs/string/toSnakeCase.d.ts +7 -7
- package/cjs/string/toSnakeCase.js +20 -22
- package/cjs/string/toSnakeCase.test.d.ts +2 -0
- package/cjs/string/toStudlyCase.d.ts +9 -9
- package/cjs/string/toStudlyCase.js +19 -22
- package/cjs/string/trim.d.ts +7 -7
- package/cjs/string/trim.js +19 -22
- package/cjs/string/ucfirst.d.ts +6 -6
- package/cjs/string/ucfirst.js +11 -13
- package/cjs/types.d.ts +1 -1
- package/cjs/utils/debounce.d.ts +8 -8
- package/cjs/utils/debounce.js +16 -18
- package/cjs/utils/escapeRegex.d.ts +4 -4
- package/cjs/utils/escapeRegex.js +8 -10
- package/cjs/utils/escapeRegex.test.d.ts +2 -0
- package/esm/Random/random.d.ts +35 -35
- package/esm/Random/random.js +64 -65
- package/esm/Random/random.test.d.ts +2 -0
- package/esm/array/average.d.ts +6 -6
- package/esm/array/average.js +11 -13
- package/esm/array/average.test.d.ts +2 -0
- package/esm/array/chunk.d.ts +4 -4
- package/esm/array/chunk.js +12 -13
- package/esm/array/chunk.test.d.ts +2 -0
- package/esm/array/count.d.ts +4 -4
- package/esm/array/count.js +13 -15
- package/esm/array/count.test.d.ts +2 -0
- package/esm/array/countBy.d.ts +6 -6
- package/esm/array/countBy.js +19 -21
- package/esm/array/countBy.test.d.ts +2 -0
- package/esm/array/even.d.ts +6 -6
- package/esm/array/even.js +14 -16
- package/esm/array/even.test.d.ts +2 -0
- package/esm/array/evenIndexes.d.ts +4 -4
- package/esm/array/evenIndexes.js +8 -9
- package/esm/array/evenIndexes.test.d.ts +2 -0
- package/esm/array/groupBy.d.ts +7 -7
- package/esm/array/groupBy.js +44 -46
- package/esm/array/groupBy.test.d.ts +2 -0
- package/esm/array/max.d.ts +6 -6
- package/esm/array/max.js +19 -21
- package/esm/array/max.test.d.ts +2 -0
- package/esm/array/median.d.ts +6 -6
- package/esm/array/median.js +24 -26
- package/esm/array/median.test.d.ts +2 -0
- package/esm/array/min.d.ts +6 -6
- package/esm/array/min.js +19 -21
- package/esm/array/min.test.d.ts +2 -0
- package/esm/array/odd.d.ts +6 -6
- package/esm/array/odd.js +14 -16
- package/esm/array/odd.test.d.ts +2 -0
- package/esm/array/oddIndexes.d.ts +4 -4
- package/esm/array/oddIndexes.js +8 -9
- package/esm/array/oddIndexes.test.d.ts +2 -0
- package/esm/array/pluck.d.ts +8 -8
- package/esm/array/pluck.js +22 -24
- package/esm/array/pluck.test.d.ts +2 -0
- package/esm/array/pushUnique.d.ts +5 -5
- package/esm/array/pushUnique.js +13 -14
- package/esm/array/pushUnique.test.d.ts +2 -0
- package/esm/array/range.d.ts +4 -4
- package/esm/array/range.js +20 -21
- package/esm/array/range.test.d.ts +2 -0
- package/esm/array/sum.d.ts +6 -6
- package/esm/array/sum.js +27 -29
- package/esm/array/sum.test.d.ts +2 -0
- package/esm/array/unique.d.ts +4 -4
- package/esm/array/unique.js +13 -15
- package/esm/array/unique.test.d.ts +2 -0
- package/esm/array/unshiftUnique.d.ts +5 -5
- package/esm/array/unshiftUnique.js +13 -14
- package/esm/array/unshiftUnique.test.d.ts +2 -0
- package/esm/index.d.ts +56 -56
- package/esm/mixed/areEqual/areEqual.d.ts +4 -4
- package/esm/mixed/areEqual/areEqual.js +22 -23
- package/esm/mixed/areEqual/areEqual.test.d.ts +2 -0
- package/esm/mixed/clone/clone.d.ts +4 -4
- package/esm/mixed/clone/clone.js +11 -16
- package/esm/mixed/clone/clone.test.d.ts +2 -0
- package/esm/mixed/shuffle/shuffle.d.ts +4 -4
- package/esm/mixed/shuffle/shuffle.js +13 -14
- package/esm/mixed/shuffle/shuffle.test.d.ts +2 -0
- package/esm/number/round.d.ts +4 -4
- package/esm/number/round.js +8 -9
- package/esm/object/except.d.ts +4 -4
- package/esm/object/except.js +11 -13
- package/esm/object/except.test.d.ts +2 -0
- package/esm/object/flatten.d.ts +4 -4
- package/esm/object/flatten.js +37 -38
- package/esm/object/flatten.test.d.ts +2 -0
- package/esm/object/get.d.ts +4 -4
- package/esm/object/get.js +23 -24
- package/esm/object/get.test.d.ts +2 -0
- package/esm/object/map.d.ts +4 -4
- package/esm/object/map.js +9 -10
- package/esm/object/merge.d.ts +1 -1
- package/esm/object/merge.js +94 -96
- package/esm/object/merge.test.d.ts +2 -0
- package/esm/object/only.d.ts +4 -4
- package/esm/object/only.js +16 -18
- package/esm/object/only.test.d.ts +2 -0
- package/esm/object/set.d.ts +5 -5
- package/esm/object/set.js +27 -28
- package/esm/object/set.test.d.ts +2 -0
- package/esm/object/sort.d.ts +4 -4
- package/esm/object/sort.js +14 -15
- package/esm/object/unset.d.ts +4 -4
- package/esm/object/unset.js +22 -24
- package/esm/object/unset.test.d.ts +2 -0
- package/esm/string/capitalize.d.ts +6 -6
- package/esm/string/capitalize.js +14 -16
- package/esm/string/extension.d.ts +4 -4
- package/esm/string/extension.js +10 -11
- package/esm/string/initials.d.ts +4 -4
- package/esm/string/initials.js +14 -15
- package/esm/string/initials.test.d.ts +2 -0
- package/esm/string/ltrim.d.ts +7 -7
- package/esm/string/ltrim.js +14 -16
- package/esm/string/readMoreChars.d.ts +5 -5
- package/esm/string/readMoreChars.js +10 -11
- package/esm/string/readMoreWords.d.ts +5 -5
- package/esm/string/readMoreWords.js +13 -14
- package/esm/string/removeFirst.d.ts +7 -7
- package/esm/string/removeFirst.js +12 -14
- package/esm/string/removeLast.d.ts +7 -7
- package/esm/string/removeLast.js +12 -14
- package/esm/string/repeatsOf.d.ts +7 -7
- package/esm/string/repeatsOf.js +16 -17
- package/esm/string/replaceAll.d.ts +8 -8
- package/esm/string/replaceAll.js +13 -15
- package/esm/string/replaceFirst.d.ts +8 -8
- package/esm/string/replaceFirst.js +13 -15
- package/esm/string/replaceLast.d.ts +8 -8
- package/esm/string/replaceLast.js +20 -21
- package/esm/string/rtrim.d.ts +7 -7
- package/esm/string/rtrim.js +14 -16
- package/esm/string/startsWithArabic.d.ts +2 -2
- package/esm/string/startsWithArabic.js +10 -12
- package/esm/string/toCamelCase.d.ts +1 -1
- package/esm/string/toCamelCase.js +10 -12
- package/esm/string/toCamelCase.test.d.ts +2 -0
- package/esm/string/toInputName.d.ts +5 -5
- package/esm/string/toInputName.js +20 -22
- package/esm/string/toKebabCase.d.ts +4 -4
- package/esm/string/toKebabCase.js +9 -11
- package/esm/string/toKebabCase.test.d.ts +2 -0
- package/esm/string/toSnakeCase.d.ts +7 -7
- package/esm/string/toSnakeCase.js +19 -20
- package/esm/string/toSnakeCase.test.d.ts +2 -0
- package/esm/string/toStudlyCase.d.ts +9 -9
- package/esm/string/toStudlyCase.js +18 -20
- package/esm/string/trim.d.ts +7 -7
- package/esm/string/trim.js +18 -20
- package/esm/string/ucfirst.d.ts +6 -6
- package/esm/string/ucfirst.js +10 -11
- package/esm/types.d.ts +1 -1
- package/esm/utils/debounce.d.ts +8 -8
- package/esm/utils/debounce.js +15 -16
- package/esm/utils/escapeRegex.d.ts +4 -4
- package/esm/utils/escapeRegex.js +7 -8
- package/esm/utils/escapeRegex.test.d.ts +2 -0
- package/package.json +1 -1
package/cjs/array/max.js
CHANGED
|
@@ -1,23 +1,20 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
*
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
module.exports = max;
|
|
1
|
+
"use strict";
|
|
2
|
+
var get = require("../object/get.js");
|
|
3
|
+
/**
|
|
4
|
+
* Get the max value of the given array or the given array of objects using the given key
|
|
5
|
+
*
|
|
6
|
+
* The key supports dot notation. syntax: "key1.key2.key3"
|
|
7
|
+
*/
|
|
8
|
+
function max(array, key) {
|
|
9
|
+
if (!Array.isArray(array)) return 0;
|
|
10
|
+
let maxValue = 0;
|
|
11
|
+
for (let i = 0; i < array.length; i++) {
|
|
12
|
+
const value = key ? Number(get(array[i], key)) : Number(array[i]);
|
|
13
|
+
if (isNaN(value)) continue;
|
|
14
|
+
if (maxValue === 0 || value > maxValue) {
|
|
15
|
+
maxValue = value;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
return maxValue;
|
|
19
|
+
}
|
|
20
|
+
module.exports = max;
|
package/cjs/array/median.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Get median value of the array
|
|
3
|
-
*
|
|
4
|
-
* The key supports dot notation. syntax: "key1.key2.key3"
|
|
5
|
-
*/
|
|
6
|
-
export default function median(array: any[], key?: string): number;
|
|
1
|
+
/**
|
|
2
|
+
* Get median value of the array
|
|
3
|
+
*
|
|
4
|
+
* The key supports dot notation. syntax: "key1.key2.key3"
|
|
5
|
+
*/
|
|
6
|
+
export default function median(array: any[], key?: string): number;
|
|
7
7
|
//# sourceMappingURL=median.d.ts.map
|
package/cjs/array/median.js
CHANGED
|
@@ -1,28 +1,25 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
*
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
if (
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
module.exports = median;
|
|
1
|
+
"use strict";
|
|
2
|
+
var pluck = require("./pluck.js");
|
|
3
|
+
/**
|
|
4
|
+
* Get median value of the array
|
|
5
|
+
*
|
|
6
|
+
* The key supports dot notation. syntax: "key1.key2.key3"
|
|
7
|
+
*/
|
|
8
|
+
function median(array, key) {
|
|
9
|
+
if (!Array.isArray(array)) return 0;
|
|
10
|
+
if (key) {
|
|
11
|
+
array = pluck(array, key);
|
|
12
|
+
if (!Array.isArray(array)) return 0;
|
|
13
|
+
}
|
|
14
|
+
// if array is not list of numbers then return 0
|
|
15
|
+
if (!array.every(item => typeof item === "number")) return 0;
|
|
16
|
+
const length = array.length;
|
|
17
|
+
if (length === 0) return 0;
|
|
18
|
+
array.sort((a, b) => a - b);
|
|
19
|
+
const middle = Math.floor(length / 2);
|
|
20
|
+
const value =
|
|
21
|
+
length % 2 ? array[middle] : (array[middle - 1] + array[middle]) / 2;
|
|
22
|
+
if (isNaN(value) || typeof value !== "number") return 0;
|
|
23
|
+
return value;
|
|
24
|
+
}
|
|
25
|
+
module.exports = median;
|
package/cjs/array/min.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Get the min value of the given array or the given array of objects using the given key
|
|
3
|
-
*
|
|
4
|
-
* The key supports dot notation. syntax: "key1.key2.key3"
|
|
5
|
-
*/
|
|
6
|
-
export default function min(array: any[], key?: string): number;
|
|
1
|
+
/**
|
|
2
|
+
* Get the min value of the given array or the given array of objects using the given key
|
|
3
|
+
*
|
|
4
|
+
* The key supports dot notation. syntax: "key1.key2.key3"
|
|
5
|
+
*/
|
|
6
|
+
export default function min(array: any[], key?: string): number;
|
|
7
7
|
//# sourceMappingURL=min.d.ts.map
|
package/cjs/array/min.js
CHANGED
|
@@ -1,23 +1,20 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
*
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
module.exports = min;
|
|
1
|
+
"use strict";
|
|
2
|
+
var get = require("../object/get.js");
|
|
3
|
+
/**
|
|
4
|
+
* Get the min value of the given array or the given array of objects using the given key
|
|
5
|
+
*
|
|
6
|
+
* The key supports dot notation. syntax: "key1.key2.key3"
|
|
7
|
+
*/
|
|
8
|
+
function min(array, key) {
|
|
9
|
+
if (!Array.isArray(array)) return 0;
|
|
10
|
+
let minValue = 0;
|
|
11
|
+
for (let i = 0; i < array.length; i++) {
|
|
12
|
+
const value = key ? Number(get(array[i], key)) : Number(array[i]);
|
|
13
|
+
if (isNaN(value)) continue;
|
|
14
|
+
if (minValue === 0 || value < minValue) {
|
|
15
|
+
minValue = value;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
return minValue;
|
|
19
|
+
}
|
|
20
|
+
module.exports = min;
|
package/cjs/array/odd.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Get the odd values of the given array or the given array of objects using the given key
|
|
3
|
-
*
|
|
4
|
-
* The key supports dot notation. syntax: "key1.key2.key3"
|
|
5
|
-
*/
|
|
6
|
-
export default function odd(array: any[], key?: string): any[];
|
|
1
|
+
/**
|
|
2
|
+
* Get the odd values of the given array or the given array of objects using the given key
|
|
3
|
+
*
|
|
4
|
+
* The key supports dot notation. syntax: "key1.key2.key3"
|
|
5
|
+
*/
|
|
6
|
+
export default function odd(array: any[], key?: string): any[];
|
|
7
7
|
//# sourceMappingURL=odd.d.ts.map
|
package/cjs/array/odd.js
CHANGED
|
@@ -1,18 +1,15 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
*
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
module.exports = odd;
|
|
1
|
+
"use strict";
|
|
2
|
+
var get = require("../object/get.js");
|
|
3
|
+
/**
|
|
4
|
+
* Get the odd values of the given array or the given array of objects using the given key
|
|
5
|
+
*
|
|
6
|
+
* The key supports dot notation. syntax: "key1.key2.key3"
|
|
7
|
+
*/
|
|
8
|
+
function odd(array, key) {
|
|
9
|
+
if (!Array.isArray(array)) return [];
|
|
10
|
+
return array.filter(item => {
|
|
11
|
+
const value = key ? Number(get(item, key)) : Number(item);
|
|
12
|
+
return isNaN(value) ? false : value % 2 !== 0;
|
|
13
|
+
});
|
|
14
|
+
}
|
|
15
|
+
module.exports = odd;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Get the values of the given array by the odd indexes or the given array of objects using the given key
|
|
3
|
-
*/
|
|
4
|
-
export default function oddIndexes(array: any[]): any[];
|
|
1
|
+
/**
|
|
2
|
+
* Get the values of the given array by the odd indexes or the given array of objects using the given key
|
|
3
|
+
*/
|
|
4
|
+
export default function oddIndexes(array: any[]): any[];
|
|
5
5
|
//# sourceMappingURL=oddIndexes.d.ts.map
|
package/cjs/array/oddIndexes.js
CHANGED
|
@@ -1,11 +1,9 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
module.exports = oddIndexes;
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Get the values of the given array by the odd indexes or the given array of objects using the given key
|
|
4
|
+
*/
|
|
5
|
+
function oddIndexes(array) {
|
|
6
|
+
if (!Array.isArray(array)) return [];
|
|
7
|
+
return array.filter((_item, index) => index % 2 !== 0);
|
|
8
|
+
}
|
|
9
|
+
module.exports = oddIndexes;
|
package/cjs/array/pluck.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Pluck the given array by the given key
|
|
3
|
-
* If the second argument is sent as object , it will return an array of objects
|
|
4
|
-
* otherwise, it will return an array of values
|
|
5
|
-
*
|
|
6
|
-
* The key supports dot notation. syntax: "key1.key2.key3"
|
|
7
|
-
*/
|
|
8
|
-
export default function pluck(array: any[], key?: string | string[]): any[];
|
|
1
|
+
/**
|
|
2
|
+
* Pluck the given array by the given key
|
|
3
|
+
* If the second argument is sent as object , it will return an array of objects
|
|
4
|
+
* otherwise, it will return an array of values
|
|
5
|
+
*
|
|
6
|
+
* The key supports dot notation. syntax: "key1.key2.key3"
|
|
7
|
+
*/
|
|
8
|
+
export default function pluck(array: any[], key?: string | string[]): any[];
|
|
9
9
|
//# sourceMappingURL=pluck.d.ts.map
|
package/cjs/array/pluck.js
CHANGED
|
@@ -1,26 +1,23 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
module.exports = pluck;
|
|
1
|
+
"use strict";
|
|
2
|
+
var get = require("../object/get.js"),
|
|
3
|
+
only = require("../object/only.js");
|
|
4
|
+
/**
|
|
5
|
+
* Pluck the given array by the given key
|
|
6
|
+
* If the second argument is sent as object , it will return an array of objects
|
|
7
|
+
* otherwise, it will return an array of values
|
|
8
|
+
*
|
|
9
|
+
* The key supports dot notation. syntax: "key1.key2.key3"
|
|
10
|
+
*/
|
|
11
|
+
function pluck(array, key) {
|
|
12
|
+
if (!Array.isArray(array)) return [];
|
|
13
|
+
if (key) {
|
|
14
|
+
if (typeof key === "string") {
|
|
15
|
+
return array.map(item => get(item, key));
|
|
16
|
+
}
|
|
17
|
+
if (Array.isArray(key)) {
|
|
18
|
+
return array.map(item => only(item, key));
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
return array;
|
|
22
|
+
}
|
|
23
|
+
module.exports = pluck;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Push once one or more values to the array if and
|
|
3
|
-
* only if the value doesn't exists in the array
|
|
4
|
-
*/
|
|
5
|
-
export default function pushUnique<T = any>(array: T[], ...items: T[]): T[];
|
|
1
|
+
/**
|
|
2
|
+
* Push once one or more values to the array if and
|
|
3
|
+
* only if the value doesn't exists in the array
|
|
4
|
+
*/
|
|
5
|
+
export default function pushUnique<T = any>(array: T[], ...items: T[]): T[];
|
|
6
6
|
//# sourceMappingURL=pushUnique.d.ts.map
|
package/cjs/array/pushUnique.js
CHANGED
|
@@ -1,16 +1,14 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
*
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
module.exports = pushUnique;
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Push once one or more values to the array if and
|
|
4
|
+
* only if the value doesn't exists in the array
|
|
5
|
+
*/
|
|
6
|
+
function pushUnique(array, ...items) {
|
|
7
|
+
items.forEach(item => {
|
|
8
|
+
if (!array.includes(item)) {
|
|
9
|
+
array.push(item);
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
return array;
|
|
13
|
+
}
|
|
14
|
+
module.exports = pushUnique;
|
package/cjs/array/range.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Generate array of numbers starting from the" given min value to the given max value
|
|
3
|
-
*/
|
|
4
|
-
export default function range(min: number, max: number): number[];
|
|
1
|
+
/**
|
|
2
|
+
* Generate array of numbers starting from the" given min value to the given max value
|
|
3
|
+
*/
|
|
4
|
+
export default function range(min: number, max: number): number[];
|
|
5
5
|
//# sourceMappingURL=range.d.ts.map
|
package/cjs/array/range.js
CHANGED
|
@@ -1,23 +1,21 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
module.exports = range;
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Generate array of numbers starting from the" given min value to the given max value
|
|
4
|
+
*/
|
|
5
|
+
function range(min, max) {
|
|
6
|
+
if (typeof min !== "number") {
|
|
7
|
+
throw new Error(`min parameter should be number, "${typeof min}" given.`);
|
|
8
|
+
}
|
|
9
|
+
if (typeof max !== "number") {
|
|
10
|
+
throw new Error(`max parameter should be number, "${typeof max}" given.`);
|
|
11
|
+
}
|
|
12
|
+
if (min >= max) {
|
|
13
|
+
throw new Error("max parameter should be higher than min parameter");
|
|
14
|
+
}
|
|
15
|
+
const array = [];
|
|
16
|
+
for (let i = min; i <= max; i++) {
|
|
17
|
+
array.push(i);
|
|
18
|
+
}
|
|
19
|
+
return array;
|
|
20
|
+
}
|
|
21
|
+
module.exports = range;
|
package/cjs/array/sum.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Sum the total value of the array
|
|
3
|
-
*
|
|
4
|
-
* The key supports dot notation. syntax: "key1.key2.key3"
|
|
5
|
-
*/
|
|
6
|
-
export default function sum(array: any[], key?: string): number;
|
|
1
|
+
/**
|
|
2
|
+
* Sum the total value of the array
|
|
3
|
+
*
|
|
4
|
+
* The key supports dot notation. syntax: "key1.key2.key3"
|
|
5
|
+
*/
|
|
6
|
+
export default function sum(array: any[], key?: string): number;
|
|
7
7
|
//# sourceMappingURL=sum.d.ts.map
|
package/cjs/array/sum.js
CHANGED
|
@@ -1,31 +1,28 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
*
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
module.exports = sum;
|
|
1
|
+
"use strict";
|
|
2
|
+
var get = require("../object/get.js");
|
|
3
|
+
/**
|
|
4
|
+
* Sum the total value of the array
|
|
5
|
+
*
|
|
6
|
+
* The key supports dot notation. syntax: "key1.key2.key3"
|
|
7
|
+
*/
|
|
8
|
+
function sum(array, key) {
|
|
9
|
+
if (!Array.isArray(array)) return 0;
|
|
10
|
+
if (key) {
|
|
11
|
+
return array.reduce((total, item) => {
|
|
12
|
+
const value = get(item, key, 0);
|
|
13
|
+
if (typeof value !== "number" || isNaN(value)) {
|
|
14
|
+
return total;
|
|
15
|
+
}
|
|
16
|
+
return total + value;
|
|
17
|
+
}, 0);
|
|
18
|
+
}
|
|
19
|
+
// if there is no key passed, then we'll sum array of numbers
|
|
20
|
+
// using reduce
|
|
21
|
+
return array.reduce((total, value) => {
|
|
22
|
+
if (typeof value !== "number" || isNaN(value)) {
|
|
23
|
+
return total;
|
|
24
|
+
}
|
|
25
|
+
return total + value;
|
|
26
|
+
}, 0);
|
|
27
|
+
}
|
|
28
|
+
module.exports = sum;
|
package/cjs/array/unique.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Get unique values of the array
|
|
3
|
-
*/
|
|
4
|
-
export default function unique(array: any[], key?: string): any[];
|
|
1
|
+
/**
|
|
2
|
+
* Get unique values of the array
|
|
3
|
+
*/
|
|
4
|
+
export default function unique(array: any[], key?: string): any[];
|
|
5
5
|
//# sourceMappingURL=unique.d.ts.map
|
package/cjs/array/unique.js
CHANGED
|
@@ -1,17 +1,14 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
module.exports = unique;
|
|
1
|
+
"use strict";
|
|
2
|
+
var pluck = require("./pluck.js");
|
|
3
|
+
/**
|
|
4
|
+
* Get unique values of the array
|
|
5
|
+
*/
|
|
6
|
+
function unique(array, key) {
|
|
7
|
+
if (!Array.isArray(array)) return [];
|
|
8
|
+
if (key) {
|
|
9
|
+
array = pluck(array, key);
|
|
10
|
+
if (!Array.isArray(array)) return [];
|
|
11
|
+
}
|
|
12
|
+
return [...new Set(array)];
|
|
13
|
+
}
|
|
14
|
+
module.exports = unique;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Prepend once one or more values to the array if and
|
|
3
|
-
* only if the value doesn't exists in the array
|
|
4
|
-
*/
|
|
5
|
-
export default function unshiftUnique<T = any>(array: T[], ...items: T[]): T[];
|
|
1
|
+
/**
|
|
2
|
+
* Prepend once one or more values to the array if and
|
|
3
|
+
* only if the value doesn't exists in the array
|
|
4
|
+
*/
|
|
5
|
+
export default function unshiftUnique<T = any>(array: T[], ...items: T[]): T[];
|
|
6
6
|
//# sourceMappingURL=unshiftUnique.d.ts.map
|
|
@@ -1,16 +1,14 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
*
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
module.exports = unshiftUnique;
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Prepend once one or more values to the array if and
|
|
4
|
+
* only if the value doesn't exists in the array
|
|
5
|
+
*/
|
|
6
|
+
function unshiftUnique(array, ...items) {
|
|
7
|
+
items.forEach(item => {
|
|
8
|
+
if (!array.includes(item)) {
|
|
9
|
+
array.unshift(item);
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
return array;
|
|
13
|
+
}
|
|
14
|
+
module.exports = unshiftUnique;
|