@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/README.md
CHANGED
|
@@ -2057,6 +2057,8 @@ To run tests run `npm run test` or `yarn test`
|
|
|
2057
2057
|
|
|
2058
2058
|
## Change Log
|
|
2059
2059
|
|
|
2060
|
+
- 2.3.2 (06 May 2023)
|
|
2061
|
+
- Fixed clone function array cloning does not lose reference for nested objects.
|
|
2060
2062
|
- 2.3.0 (25 Mar 2023)
|
|
2061
2063
|
- Added [Range](#range) function.
|
|
2062
2064
|
- Exposed typings.
|
package/cjs/Random/random.d.ts
CHANGED
|
@@ -1,36 +1,36 @@
|
|
|
1
|
-
declare const Random: {
|
|
2
|
-
/**
|
|
3
|
-
* Get a random integer
|
|
4
|
-
*/
|
|
5
|
-
int(min?: number, max?: number): number;
|
|
6
|
-
/**
|
|
7
|
-
* @alias Random.int
|
|
8
|
-
*/
|
|
9
|
-
integer(min?: number, max?: number): number;
|
|
10
|
-
/**
|
|
11
|
-
* Generate random string
|
|
12
|
-
*/
|
|
13
|
-
string(length?: number): string;
|
|
14
|
-
/**
|
|
15
|
-
* Generate random id
|
|
16
|
-
*/
|
|
17
|
-
id(length?: number, startsWith?: string): string;
|
|
18
|
-
/**
|
|
19
|
-
* Generate random boolean value
|
|
20
|
-
*/
|
|
21
|
-
bool(): boolean;
|
|
22
|
-
/**
|
|
23
|
-
* Alias to bool method
|
|
24
|
-
*/
|
|
25
|
-
boolean(): boolean;
|
|
26
|
-
/**
|
|
27
|
-
* Get random date
|
|
28
|
-
*/
|
|
29
|
-
date(minDate?: Date, maxDate?: Date): Date;
|
|
30
|
-
/**
|
|
31
|
-
* Get random color
|
|
32
|
-
*/
|
|
33
|
-
color(): string;
|
|
34
|
-
};
|
|
35
|
-
export default Random;
|
|
1
|
+
declare const Random: {
|
|
2
|
+
/**
|
|
3
|
+
* Get a random integer
|
|
4
|
+
*/
|
|
5
|
+
int(min?: number, max?: number): number;
|
|
6
|
+
/**
|
|
7
|
+
* @alias Random.int
|
|
8
|
+
*/
|
|
9
|
+
integer(min?: number, max?: number): number;
|
|
10
|
+
/**
|
|
11
|
+
* Generate random string
|
|
12
|
+
*/
|
|
13
|
+
string(length?: number): string;
|
|
14
|
+
/**
|
|
15
|
+
* Generate random id
|
|
16
|
+
*/
|
|
17
|
+
id(length?: number, startsWith?: string): string;
|
|
18
|
+
/**
|
|
19
|
+
* Generate random boolean value
|
|
20
|
+
*/
|
|
21
|
+
bool(): boolean;
|
|
22
|
+
/**
|
|
23
|
+
* Alias to bool method
|
|
24
|
+
*/
|
|
25
|
+
boolean(): boolean;
|
|
26
|
+
/**
|
|
27
|
+
* Get random date
|
|
28
|
+
*/
|
|
29
|
+
date(minDate?: Date, maxDate?: Date): Date;
|
|
30
|
+
/**
|
|
31
|
+
* Get random color
|
|
32
|
+
*/
|
|
33
|
+
color(): string;
|
|
34
|
+
};
|
|
35
|
+
export default Random;
|
|
36
36
|
//# sourceMappingURL=random.d.ts.map
|
package/cjs/Random/random.js
CHANGED
|
@@ -1,67 +1,65 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
let
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
module.exports = Random;
|
|
1
|
+
"use strict";
|
|
2
|
+
const possible =
|
|
3
|
+
"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
|
|
4
|
+
const Random = {
|
|
5
|
+
/**
|
|
6
|
+
* Get a random integer
|
|
7
|
+
*/
|
|
8
|
+
int(min = 1, max = 9999999) {
|
|
9
|
+
return Math.floor(Math.random() * (max - min + 1)) + min;
|
|
10
|
+
},
|
|
11
|
+
/**
|
|
12
|
+
* @alias Random.int
|
|
13
|
+
*/
|
|
14
|
+
integer(min = 1, max = 9999999) {
|
|
15
|
+
return this.int(min, max);
|
|
16
|
+
},
|
|
17
|
+
/**
|
|
18
|
+
* Generate random string
|
|
19
|
+
*/
|
|
20
|
+
string(length = 32) {
|
|
21
|
+
let text = "";
|
|
22
|
+
for (let i = 0; i < length; i++) {
|
|
23
|
+
text += possible.charAt(Math.floor(Math.random() * possible.length));
|
|
24
|
+
}
|
|
25
|
+
return text;
|
|
26
|
+
},
|
|
27
|
+
/**
|
|
28
|
+
* Generate random id
|
|
29
|
+
*/
|
|
30
|
+
id(length = 6, startsWith = "el-") {
|
|
31
|
+
return startsWith + Random.string(length);
|
|
32
|
+
},
|
|
33
|
+
/**
|
|
34
|
+
* Generate random boolean value
|
|
35
|
+
*/
|
|
36
|
+
bool() {
|
|
37
|
+
return Random.int(0, 1) === 1;
|
|
38
|
+
},
|
|
39
|
+
/**
|
|
40
|
+
* Alias to bool method
|
|
41
|
+
*/
|
|
42
|
+
boolean() {
|
|
43
|
+
return Random.int(0, 1) === 1;
|
|
44
|
+
},
|
|
45
|
+
/**
|
|
46
|
+
* Get random date
|
|
47
|
+
*/
|
|
48
|
+
date(minDate, maxDate) {
|
|
49
|
+
if (minDate && !maxDate) {
|
|
50
|
+
return new Date(Random.int(minDate.getTime(), Date.now()));
|
|
51
|
+
}
|
|
52
|
+
if (!minDate && maxDate) {
|
|
53
|
+
return new Date(Random.int(0, maxDate.getTime()));
|
|
54
|
+
}
|
|
55
|
+
const now = Date.now();
|
|
56
|
+
return new Date(Random.int(now - 100000000000, now));
|
|
57
|
+
},
|
|
58
|
+
/**
|
|
59
|
+
* Get random color
|
|
60
|
+
*/
|
|
61
|
+
color() {
|
|
62
|
+
return "#" + Math.floor(Math.random() * 16777215).toString(16);
|
|
63
|
+
},
|
|
64
|
+
};
|
|
65
|
+
module.exports = Random;
|
package/cjs/array/average.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Get the average 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 average(array: any[], key?: string): number;
|
|
1
|
+
/**
|
|
2
|
+
* Get the average 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 average(array: any[], key?: string): number;
|
|
7
7
|
//# sourceMappingURL=average.d.ts.map
|
package/cjs/array/average.js
CHANGED
|
@@ -1,15 +1,12 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
*
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
module.exports = average;
|
|
1
|
+
"use strict";
|
|
2
|
+
var sum = require("./sum.js");
|
|
3
|
+
/**
|
|
4
|
+
* Get the average 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 average(array, key) {
|
|
9
|
+
if (!Array.isArray(array)) return 0;
|
|
10
|
+
return sum(array, key) / array.length;
|
|
11
|
+
}
|
|
12
|
+
module.exports = average;
|
package/cjs/array/chunk.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Chunk array|string by the given size
|
|
3
|
-
*/
|
|
4
|
-
export default function chunk(array: any[] | string, size: number): any[];
|
|
1
|
+
/**
|
|
2
|
+
* Chunk array|string by the given size
|
|
3
|
+
*/
|
|
4
|
+
export default function chunk(array: any[] | string, size: number): any[];
|
|
5
5
|
//# sourceMappingURL=chunk.d.ts.map
|
package/cjs/array/chunk.js
CHANGED
|
@@ -1,15 +1,13 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
module.exports = chunk;
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Chunk array|string by the given size
|
|
4
|
+
*/
|
|
5
|
+
function chunk(array, size) {
|
|
6
|
+
if (!Array.isArray(array) && typeof array !== "string") return [];
|
|
7
|
+
const result = [];
|
|
8
|
+
for (let i = 0; i < array.length; i += size) {
|
|
9
|
+
result.push(array.slice(i, i + size));
|
|
10
|
+
}
|
|
11
|
+
return result;
|
|
12
|
+
}
|
|
13
|
+
module.exports = chunk;
|
package/cjs/array/count.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Count data by the given key or callback
|
|
3
|
-
*/
|
|
4
|
-
export default function count(data: any[], key: string | Parameters<typeof Array.prototype.filter>[0]): number;
|
|
1
|
+
/**
|
|
2
|
+
* Count data by the given key or callback
|
|
3
|
+
*/
|
|
4
|
+
export default function count(data: any[], key: string | Parameters<typeof Array.prototype.filter>[0]): number;
|
|
5
5
|
//# sourceMappingURL=count.d.ts.map
|
package/cjs/array/count.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 = count;
|
|
1
|
+
"use strict";
|
|
2
|
+
var get = require("../object/get.js");
|
|
3
|
+
const notFound = Symbol("notFound");
|
|
4
|
+
/**
|
|
5
|
+
* Count data by the given key or callback
|
|
6
|
+
*/
|
|
7
|
+
function count(data, key) {
|
|
8
|
+
if (!Array.isArray(data)) return 0;
|
|
9
|
+
if (typeof key === "string") {
|
|
10
|
+
return data.filter(item => get(item, key, notFound) !== notFound).length;
|
|
11
|
+
}
|
|
12
|
+
return data.filter(key).length;
|
|
13
|
+
}
|
|
14
|
+
module.exports = count;
|
package/cjs/array/countBy.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Count the occurrences of values in an array for the given key
|
|
3
|
-
*/
|
|
4
|
-
export default function countBy(array: any[], key: string): {
|
|
5
|
-
[key: string]: number;
|
|
6
|
-
};
|
|
1
|
+
/**
|
|
2
|
+
* Count the occurrences of values in an array for the given key
|
|
3
|
+
*/
|
|
4
|
+
export default function countBy(array: any[], key: string): {
|
|
5
|
+
[key: string]: number;
|
|
6
|
+
};
|
|
7
7
|
//# sourceMappingURL=countBy.d.ts.map
|
package/cjs/array/countBy.js
CHANGED
|
@@ -1,23 +1,20 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
result[value]
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
module.exports = countBy;
|
|
1
|
+
"use strict";
|
|
2
|
+
var get = require("../object/get.js");
|
|
3
|
+
/**
|
|
4
|
+
* Count the occurrences of values in an array for the given key
|
|
5
|
+
*/
|
|
6
|
+
function countBy(array, key) {
|
|
7
|
+
if (!Array.isArray(array)) {
|
|
8
|
+
return {};
|
|
9
|
+
}
|
|
10
|
+
return array.reduce((result, item) => {
|
|
11
|
+
const value = get(item, key);
|
|
12
|
+
if (result[value]) {
|
|
13
|
+
result[value]++;
|
|
14
|
+
} else {
|
|
15
|
+
result[value] = 1;
|
|
16
|
+
}
|
|
17
|
+
return result;
|
|
18
|
+
}, {});
|
|
19
|
+
}
|
|
20
|
+
module.exports = countBy;
|
package/cjs/array/even.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Get the even 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 even(array: any[], key?: string): any[];
|
|
1
|
+
/**
|
|
2
|
+
* Get the even 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 even(array: any[], key?: string): any[];
|
|
7
7
|
//# sourceMappingURL=even.d.ts.map
|
package/cjs/array/even.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 = even;
|
|
1
|
+
"use strict";
|
|
2
|
+
var get = require("../object/get.js");
|
|
3
|
+
/**
|
|
4
|
+
* Get the even 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 even(array, key) {
|
|
9
|
+
if (!Array.isArray(array)) return [];
|
|
10
|
+
return array.filter(item => {
|
|
11
|
+
const value = key ? get(item, key) : item;
|
|
12
|
+
return typeof value !== "number" ? false : value % 2 === 0;
|
|
13
|
+
});
|
|
14
|
+
}
|
|
15
|
+
module.exports = even;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Get the values of the given array by the even indexes or the given array of objects using the given key
|
|
3
|
-
*/
|
|
4
|
-
export default function evenIndexes(array: any[]): any[];
|
|
1
|
+
/**
|
|
2
|
+
* Get the values of the given array by the even indexes or the given array of objects using the given key
|
|
3
|
+
*/
|
|
4
|
+
export default function evenIndexes(array: any[]): any[];
|
|
5
5
|
//# sourceMappingURL=evenIndexes.d.ts.map
|
package/cjs/array/evenIndexes.js
CHANGED
|
@@ -1,11 +1,9 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
module.exports = evenIndexes;
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Get the values of the given array by the even indexes or the given array of objects using the given key
|
|
4
|
+
*/
|
|
5
|
+
function evenIndexes(array) {
|
|
6
|
+
if (!Array.isArray(array)) return [];
|
|
7
|
+
return array.filter((_item, index) => index % 2 === 0);
|
|
8
|
+
}
|
|
9
|
+
module.exports = evenIndexes;
|
package/cjs/array/groupBy.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { GenericObject } from "../types";
|
|
2
|
-
/**
|
|
3
|
-
* Group the given array by the given key(s).
|
|
4
|
-
*
|
|
5
|
-
* The key(s) support dot notation.
|
|
6
|
-
*/
|
|
7
|
-
export default function groupBy(array: GenericObject[], groupByKey: string | string[], listAs?: string): GenericObject[];
|
|
1
|
+
import { GenericObject } from "../types";
|
|
2
|
+
/**
|
|
3
|
+
* Group the given array by the given key(s).
|
|
4
|
+
*
|
|
5
|
+
* The key(s) support dot notation.
|
|
6
|
+
*/
|
|
7
|
+
export default function groupBy(array: GenericObject[], groupByKey: string | string[], listAs?: string): GenericObject[];
|
|
8
8
|
//# sourceMappingURL=groupBy.d.ts.map
|
package/cjs/array/groupBy.js
CHANGED
|
@@ -1,48 +1,45 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
*
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
const
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
module.exports = groupBy;
|
|
1
|
+
"use strict";
|
|
2
|
+
var get = require("../object/get.js");
|
|
3
|
+
require("../object/merge.js");
|
|
4
|
+
/**
|
|
5
|
+
* Group the given array by the given key(s).
|
|
6
|
+
*
|
|
7
|
+
* The key(s) support dot notation.
|
|
8
|
+
*/
|
|
9
|
+
function groupBy(array, groupByKey, listAs = "data") {
|
|
10
|
+
const groupedData = {};
|
|
11
|
+
const groupByKeys =
|
|
12
|
+
typeof groupByKey === "string" ? [groupByKey] : groupByKey;
|
|
13
|
+
for (const item of array) {
|
|
14
|
+
const baseKeys = [];
|
|
15
|
+
for (const groupByKey of groupByKeys) {
|
|
16
|
+
const value = get(item, groupByKey);
|
|
17
|
+
if (!value) break;
|
|
18
|
+
baseKeys.push({
|
|
19
|
+
key: groupByKey,
|
|
20
|
+
value,
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
const dataKey = JSON.stringify(baseKeys);
|
|
24
|
+
if (!groupedData[dataKey]) {
|
|
25
|
+
const groupedDataList = {
|
|
26
|
+
data: [],
|
|
27
|
+
};
|
|
28
|
+
for (const groupByKeyData of baseKeys) {
|
|
29
|
+
groupedDataList[groupByKeyData.key] = groupByKeyData.value;
|
|
30
|
+
}
|
|
31
|
+
groupedData[dataKey] = groupedDataList;
|
|
32
|
+
}
|
|
33
|
+
groupedData[dataKey]?.data?.push(item);
|
|
34
|
+
}
|
|
35
|
+
const finalData = [];
|
|
36
|
+
for (const groupedKeyWithValue in groupedData) {
|
|
37
|
+
const { data, ...otherGroupedKeys } = groupedData[groupedKeyWithValue];
|
|
38
|
+
finalData.push({
|
|
39
|
+
...otherGroupedKeys,
|
|
40
|
+
[listAs]: data,
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
return finalData;
|
|
44
|
+
}
|
|
45
|
+
module.exports = groupBy;
|
package/cjs/array/max.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Get the max 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 max(array: any[], key?: string): number;
|
|
1
|
+
/**
|
|
2
|
+
* Get the max 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 max(array: any[], key?: string): number;
|
|
7
7
|
//# sourceMappingURL=max.d.ts.map
|