@bemoje/array 1.0.0 → 1.0.1
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/{dist/index.d.ts → index.d.ts} +25 -25
- package/{dist/index.mjs → index.mjs} +92 -75
- package/package.json +11 -14
- package/README.md +0 -3
- package/dist/index.mjs.map +0 -7
- /package/{dist → lib}/arrAverage.d.ts +0 -0
- /package/{dist → lib}/arrEachToString.d.ts +0 -0
- /package/{dist → lib}/arrFindIndicesOf.d.ts +0 -0
- /package/{dist → lib}/arrGetOrDefault.d.ts +0 -0
- /package/{dist → lib}/arrHasDuplicates.d.ts +0 -0
- /package/{dist → lib}/arrIndicesOf.d.ts +0 -0
- /package/{dist → lib}/arrLast.d.ts +0 -0
- /package/{dist → lib}/arrMapMutable.d.ts +0 -0
- /package/{dist → lib}/arrObjectsToTable.d.ts +0 -0
- /package/{dist → lib}/arrObjectsUniqueKeys.d.ts +0 -0
- /package/{dist → lib}/arrRemove.d.ts +0 -0
- /package/{dist → lib}/arrRemoveDuplicates.d.ts +0 -0
- /package/{dist → lib}/arrRemoveMutable.d.ts +0 -0
- /package/{dist → lib}/arrShuffle.d.ts +0 -0
- /package/{dist → lib}/arrSortNumeric.d.ts +0 -0
- /package/{dist → lib}/arrSortedInsertionIndex.d.ts +0 -0
- /package/{dist → lib}/arrSum.d.ts +0 -0
- /package/{dist → lib}/arrSwap.d.ts +0 -0
- /package/{dist → lib}/arrTableAssertRowsSameLength.d.ts +0 -0
- /package/{dist → lib}/arrTableEachToString.d.ts +0 -0
- /package/{dist → lib}/arrTableIterateAsObjects.d.ts +0 -0
- /package/{dist → lib}/arrTableRemoveColumns.d.ts +0 -0
- /package/{dist → lib}/arrTableToCsv.d.ts +0 -0
- /package/{dist → lib}/arrTableToObjects.d.ts +0 -0
- /package/{dist → lib}/arrayToString.d.ts +0 -0
|
@@ -1,28 +1,28 @@
|
|
|
1
|
-
export * from './arrAverage';
|
|
2
|
-
export * from './arrEachToString';
|
|
3
|
-
export * from './arrFindIndicesOf';
|
|
4
|
-
export * from './arrGetOrDefault';
|
|
5
|
-
export * from './arrHasDuplicates';
|
|
6
|
-
export * from './arrIndicesOf';
|
|
7
|
-
export * from './arrLast';
|
|
8
|
-
export * from './arrMapMutable';
|
|
9
|
-
export * from './arrObjectsToTable';
|
|
10
|
-
export * from './arrObjectsUniqueKeys';
|
|
11
|
-
export * from './arrRemove';
|
|
12
|
-
export * from './arrRemoveDuplicates';
|
|
13
|
-
export * from './arrRemoveMutable';
|
|
14
|
-
export * from './arrShuffle';
|
|
15
|
-
export * from './arrSortNumeric';
|
|
16
|
-
export * from './arrSortedInsertionIndex';
|
|
17
|
-
export * from './arrSum';
|
|
18
|
-
export * from './arrSwap';
|
|
19
|
-
export * from './arrTableAssertRowsSameLength';
|
|
20
|
-
export * from './arrTableEachToString';
|
|
21
|
-
export * from './arrTableIterateAsObjects';
|
|
22
|
-
export * from './arrTableRemoveColumns';
|
|
23
|
-
export * from './arrTableToCsv';
|
|
24
|
-
export * from './arrTableToObjects';
|
|
25
|
-
export * from './arrayToString';
|
|
1
|
+
export * from './lib/arrAverage';
|
|
2
|
+
export * from './lib/arrEachToString';
|
|
3
|
+
export * from './lib/arrFindIndicesOf';
|
|
4
|
+
export * from './lib/arrGetOrDefault';
|
|
5
|
+
export * from './lib/arrHasDuplicates';
|
|
6
|
+
export * from './lib/arrIndicesOf';
|
|
7
|
+
export * from './lib/arrLast';
|
|
8
|
+
export * from './lib/arrMapMutable';
|
|
9
|
+
export * from './lib/arrObjectsToTable';
|
|
10
|
+
export * from './lib/arrObjectsUniqueKeys';
|
|
11
|
+
export * from './lib/arrRemove';
|
|
12
|
+
export * from './lib/arrRemoveDuplicates';
|
|
13
|
+
export * from './lib/arrRemoveMutable';
|
|
14
|
+
export * from './lib/arrShuffle';
|
|
15
|
+
export * from './lib/arrSortNumeric';
|
|
16
|
+
export * from './lib/arrSortedInsertionIndex';
|
|
17
|
+
export * from './lib/arrSum';
|
|
18
|
+
export * from './lib/arrSwap';
|
|
19
|
+
export * from './lib/arrTableAssertRowsSameLength';
|
|
20
|
+
export * from './lib/arrTableEachToString';
|
|
21
|
+
export * from './lib/arrTableIterateAsObjects';
|
|
22
|
+
export * from './lib/arrTableRemoveColumns';
|
|
23
|
+
export * from './lib/arrTableToCsv';
|
|
24
|
+
export * from './lib/arrTableToObjects';
|
|
25
|
+
export * from './lib/arrayToString';
|
|
26
26
|
declare const _default: {
|
|
27
27
|
arrayToString<T>(array: T[]): string;
|
|
28
28
|
arrTableToObjects<T>(rows: T[][], headers?: string[], ignoreKeys?: Set<string>): Record<string, T>[];
|
|
@@ -1,44 +1,46 @@
|
|
|
1
1
|
var __defProp = Object.defineProperty;
|
|
2
|
-
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
3
2
|
var __export = (target, all) => {
|
|
4
3
|
for (var name in all)
|
|
5
4
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
6
5
|
};
|
|
7
6
|
|
|
8
|
-
// src/arrAverage.ts
|
|
7
|
+
// src/lib/arrAverage.ts
|
|
9
8
|
var arrAverage_exports = {};
|
|
10
9
|
__export(arrAverage_exports, {
|
|
11
10
|
arrAverage: () => arrAverage
|
|
12
11
|
});
|
|
13
12
|
|
|
14
|
-
// src/arrSum.ts
|
|
13
|
+
// src/lib/arrSum.ts
|
|
15
14
|
var arrSum_exports = {};
|
|
16
15
|
__export(arrSum_exports, {
|
|
17
16
|
arrSum: () => arrSum
|
|
18
17
|
});
|
|
19
18
|
function arrSum(array) {
|
|
20
|
-
return array.reduce((acc, cur) =>
|
|
19
|
+
return array.reduce((acc, cur) => {
|
|
20
|
+
return acc + cur;
|
|
21
|
+
}, 0);
|
|
21
22
|
}
|
|
22
|
-
__name(arrSum, "arrSum");
|
|
23
23
|
|
|
24
|
-
// src/arrAverage.ts
|
|
24
|
+
// src/lib/arrAverage.ts
|
|
25
25
|
function arrAverage(array) {
|
|
26
|
-
if (!array.length)
|
|
26
|
+
if (!array.length) {
|
|
27
|
+
throw new Error("Cannot take an average of zero values.");
|
|
28
|
+
}
|
|
27
29
|
return arrSum(array) / array.length;
|
|
28
30
|
}
|
|
29
|
-
__name(arrAverage, "arrAverage");
|
|
30
31
|
|
|
31
|
-
// src/arrEachToString.ts
|
|
32
|
+
// src/lib/arrEachToString.ts
|
|
32
33
|
var arrEachToString_exports = {};
|
|
33
34
|
__export(arrEachToString_exports, {
|
|
34
35
|
arrEachToString: () => arrEachToString
|
|
35
36
|
});
|
|
36
37
|
function arrEachToString(array) {
|
|
37
|
-
return array.map((element) =>
|
|
38
|
+
return array.map((element) => {
|
|
39
|
+
return `${element}`;
|
|
40
|
+
});
|
|
38
41
|
}
|
|
39
|
-
__name(arrEachToString, "arrEachToString");
|
|
40
42
|
|
|
41
|
-
// src/arrFindIndicesOf.ts
|
|
43
|
+
// src/lib/arrFindIndicesOf.ts
|
|
42
44
|
var arrFindIndicesOf_exports = {};
|
|
43
45
|
__export(arrFindIndicesOf_exports, {
|
|
44
46
|
arrFindIndicesOf: () => arrFindIndicesOf
|
|
@@ -52,21 +54,21 @@ function arrFindIndicesOf(input, predicate) {
|
|
|
52
54
|
}
|
|
53
55
|
return result;
|
|
54
56
|
}
|
|
55
|
-
__name(arrFindIndicesOf, "arrFindIndicesOf");
|
|
56
57
|
|
|
57
|
-
// src/arrGetOrDefault.ts
|
|
58
|
+
// src/lib/arrGetOrDefault.ts
|
|
58
59
|
var arrGetOrDefault_exports = {};
|
|
59
60
|
__export(arrGetOrDefault_exports, {
|
|
60
61
|
arrGetOrDefault: () => arrGetOrDefault
|
|
61
62
|
});
|
|
62
63
|
function arrGetOrDefault(array, index, factory) {
|
|
63
64
|
const value = array[index];
|
|
64
|
-
if (value !== void 0 || Object.hasOwn(array, index))
|
|
65
|
+
if (value !== void 0 || Object.hasOwn(array, index)) {
|
|
66
|
+
return value;
|
|
67
|
+
}
|
|
65
68
|
return array[index] = factory(index);
|
|
66
69
|
}
|
|
67
|
-
__name(arrGetOrDefault, "arrGetOrDefault");
|
|
68
70
|
|
|
69
|
-
// src/arrHasDuplicates.ts
|
|
71
|
+
// src/lib/arrHasDuplicates.ts
|
|
70
72
|
var arrHasDuplicates_exports = {};
|
|
71
73
|
__export(arrHasDuplicates_exports, {
|
|
72
74
|
arrHasDuplicates: () => arrHasDuplicates
|
|
@@ -74,14 +76,15 @@ __export(arrHasDuplicates_exports, {
|
|
|
74
76
|
function arrHasDuplicates(arr) {
|
|
75
77
|
const seen = /* @__PURE__ */ new Set();
|
|
76
78
|
for (const e of arr) {
|
|
77
|
-
if (seen.has(e))
|
|
79
|
+
if (seen.has(e)) {
|
|
80
|
+
return true;
|
|
81
|
+
}
|
|
78
82
|
seen.add(e);
|
|
79
83
|
}
|
|
80
84
|
return false;
|
|
81
85
|
}
|
|
82
|
-
__name(arrHasDuplicates, "arrHasDuplicates");
|
|
83
86
|
|
|
84
|
-
// src/arrIndicesOf.ts
|
|
87
|
+
// src/lib/arrIndicesOf.ts
|
|
85
88
|
var arrIndicesOf_exports = {};
|
|
86
89
|
__export(arrIndicesOf_exports, {
|
|
87
90
|
arrIndicesOf: () => arrIndicesOf
|
|
@@ -95,20 +98,20 @@ function arrIndicesOf(input, element) {
|
|
|
95
98
|
}
|
|
96
99
|
return result;
|
|
97
100
|
}
|
|
98
|
-
__name(arrIndicesOf, "arrIndicesOf");
|
|
99
101
|
|
|
100
|
-
// src/arrLast.ts
|
|
102
|
+
// src/lib/arrLast.ts
|
|
101
103
|
var arrLast_exports = {};
|
|
102
104
|
__export(arrLast_exports, {
|
|
103
105
|
arrLast: () => arrLast
|
|
104
106
|
});
|
|
105
107
|
function arrLast(array) {
|
|
106
|
-
if (!array.length)
|
|
108
|
+
if (!array.length) {
|
|
109
|
+
throw new Error("Cannot get last element of empty array.");
|
|
110
|
+
}
|
|
107
111
|
return array[array.length - 1];
|
|
108
112
|
}
|
|
109
|
-
__name(arrLast, "arrLast");
|
|
110
113
|
|
|
111
|
-
// src/arrMapMutable.ts
|
|
114
|
+
// src/lib/arrMapMutable.ts
|
|
112
115
|
var arrMapMutable_exports = {};
|
|
113
116
|
__export(arrMapMutable_exports, {
|
|
114
117
|
arrMapMutable: () => arrMapMutable
|
|
@@ -119,15 +122,14 @@ function arrMapMutable(input, f) {
|
|
|
119
122
|
}
|
|
120
123
|
return input;
|
|
121
124
|
}
|
|
122
|
-
__name(arrMapMutable, "arrMapMutable");
|
|
123
125
|
|
|
124
|
-
// src/arrObjectsToTable.ts
|
|
126
|
+
// src/lib/arrObjectsToTable.ts
|
|
125
127
|
var arrObjectsToTable_exports = {};
|
|
126
128
|
__export(arrObjectsToTable_exports, {
|
|
127
129
|
arrObjectsToTable: () => arrObjectsToTable
|
|
128
130
|
});
|
|
129
131
|
|
|
130
|
-
// src/arrObjectsUniqueKeys.ts
|
|
132
|
+
// src/lib/arrObjectsUniqueKeys.ts
|
|
131
133
|
var arrObjectsUniqueKeys_exports = {};
|
|
132
134
|
__export(arrObjectsUniqueKeys_exports, {
|
|
133
135
|
arrObjectsUniqueKeys: () => arrObjectsUniqueKeys
|
|
@@ -141,9 +143,8 @@ function arrObjectsUniqueKeys(objects) {
|
|
|
141
143
|
}
|
|
142
144
|
return Array.from(keys);
|
|
143
145
|
}
|
|
144
|
-
__name(arrObjectsUniqueKeys, "arrObjectsUniqueKeys");
|
|
145
146
|
|
|
146
|
-
// src/arrObjectsToTable.ts
|
|
147
|
+
// src/lib/arrObjectsToTable.ts
|
|
147
148
|
function arrObjectsToTable(objects, options = {}) {
|
|
148
149
|
const headers = options?.headers?.slice() || arrObjectsUniqueKeys(objects);
|
|
149
150
|
const table = [headers];
|
|
@@ -156,19 +157,19 @@ function arrObjectsToTable(objects, options = {}) {
|
|
|
156
157
|
}
|
|
157
158
|
return table;
|
|
158
159
|
}
|
|
159
|
-
__name(arrObjectsToTable, "arrObjectsToTable");
|
|
160
160
|
|
|
161
|
-
// src/arrRemove.ts
|
|
161
|
+
// src/lib/arrRemove.ts
|
|
162
162
|
var arrRemove_exports = {};
|
|
163
163
|
__export(arrRemove_exports, {
|
|
164
164
|
arrRemove: () => arrRemove
|
|
165
165
|
});
|
|
166
166
|
function arrRemove(arr, elementToRemove) {
|
|
167
|
-
return arr.filter((element) =>
|
|
167
|
+
return arr.filter((element) => {
|
|
168
|
+
return element !== elementToRemove;
|
|
169
|
+
});
|
|
168
170
|
}
|
|
169
|
-
__name(arrRemove, "arrRemove");
|
|
170
171
|
|
|
171
|
-
// src/arrRemoveDuplicates.ts
|
|
172
|
+
// src/lib/arrRemoveDuplicates.ts
|
|
172
173
|
var arrRemoveDuplicates_exports = {};
|
|
173
174
|
__export(arrRemoveDuplicates_exports, {
|
|
174
175
|
arrRemoveDuplicates: () => arrRemoveDuplicates
|
|
@@ -176,9 +177,8 @@ __export(arrRemoveDuplicates_exports, {
|
|
|
176
177
|
function arrRemoveDuplicates(array) {
|
|
177
178
|
return Array.from(new Set(array));
|
|
178
179
|
}
|
|
179
|
-
__name(arrRemoveDuplicates, "arrRemoveDuplicates");
|
|
180
180
|
|
|
181
|
-
// src/arrRemoveMutable.ts
|
|
181
|
+
// src/lib/arrRemoveMutable.ts
|
|
182
182
|
var arrRemoveMutable_exports = {};
|
|
183
183
|
__export(arrRemoveMutable_exports, {
|
|
184
184
|
arrRemoveMutable: () => arrRemoveMutable
|
|
@@ -190,29 +190,32 @@ function arrRemoveMutable(arr, elementToRemove) {
|
|
|
190
190
|
index = arr.indexOf(elementToRemove);
|
|
191
191
|
}
|
|
192
192
|
}
|
|
193
|
-
__name(arrRemoveMutable, "arrRemoveMutable");
|
|
194
193
|
|
|
195
|
-
// src/arrShuffle.ts
|
|
194
|
+
// src/lib/arrShuffle.ts
|
|
196
195
|
var arrShuffle_exports = {};
|
|
197
196
|
__export(arrShuffle_exports, {
|
|
198
197
|
arrShuffle: () => arrShuffle
|
|
199
198
|
});
|
|
200
199
|
|
|
201
|
-
// src/arrSwap.ts
|
|
200
|
+
// src/lib/arrSwap.ts
|
|
202
201
|
var arrSwap_exports = {};
|
|
203
202
|
__export(arrSwap_exports, {
|
|
204
203
|
arrSwap: () => arrSwap
|
|
205
204
|
});
|
|
206
205
|
function arrSwap(input, from, to) {
|
|
207
|
-
if (from === to)
|
|
206
|
+
if (from === to) {
|
|
207
|
+
return input;
|
|
208
|
+
}
|
|
209
|
+
;
|
|
208
210
|
[input[from], input[to]] = [input[to], input[from]];
|
|
209
211
|
return input;
|
|
210
212
|
}
|
|
211
|
-
__name(arrSwap, "arrSwap");
|
|
212
213
|
|
|
213
|
-
// src/arrShuffle.ts
|
|
214
|
+
// src/lib/arrShuffle.ts
|
|
214
215
|
function arrShuffle(input) {
|
|
215
|
-
if (input.length <= 1)
|
|
216
|
+
if (input.length <= 1) {
|
|
217
|
+
return input;
|
|
218
|
+
}
|
|
216
219
|
const original = input.slice();
|
|
217
220
|
let equal = true;
|
|
218
221
|
while (equal) {
|
|
@@ -224,23 +227,25 @@ function arrShuffle(input) {
|
|
|
224
227
|
}
|
|
225
228
|
return input;
|
|
226
229
|
}
|
|
227
|
-
__name(arrShuffle, "arrShuffle");
|
|
228
230
|
|
|
229
|
-
// src/arrSortNumeric.ts
|
|
231
|
+
// src/lib/arrSortNumeric.ts
|
|
230
232
|
var arrSortNumeric_exports = {};
|
|
231
233
|
__export(arrSortNumeric_exports, {
|
|
232
234
|
arrSortNumeric: () => arrSortNumeric
|
|
233
235
|
});
|
|
234
236
|
function arrSortNumeric(input) {
|
|
235
237
|
return input.sort((a, b) => {
|
|
236
|
-
if (a < b)
|
|
237
|
-
|
|
238
|
+
if (a < b) {
|
|
239
|
+
return -1;
|
|
240
|
+
}
|
|
241
|
+
if (a > b) {
|
|
242
|
+
return 1;
|
|
243
|
+
}
|
|
238
244
|
return 0;
|
|
239
245
|
});
|
|
240
246
|
}
|
|
241
|
-
__name(arrSortNumeric, "arrSortNumeric");
|
|
242
247
|
|
|
243
|
-
// src/arrSortedInsertionIndex.ts
|
|
248
|
+
// src/lib/arrSortedInsertionIndex.ts
|
|
244
249
|
var arrSortedInsertionIndex_exports = {};
|
|
245
250
|
__export(arrSortedInsertionIndex_exports, {
|
|
246
251
|
arrSortedInsertionIndex: () => arrSortedInsertionIndex
|
|
@@ -252,7 +257,8 @@ function arrSortedInsertionIndex(array, value, comparator) {
|
|
|
252
257
|
const step = Math.trunc(count / 2);
|
|
253
258
|
let it = first + step;
|
|
254
259
|
if (comparator(array[it], value) <= 0) {
|
|
255
|
-
|
|
260
|
+
it++;
|
|
261
|
+
first = it;
|
|
256
262
|
count -= step + 1;
|
|
257
263
|
} else {
|
|
258
264
|
count = step;
|
|
@@ -260,9 +266,8 @@ function arrSortedInsertionIndex(array, value, comparator) {
|
|
|
260
266
|
}
|
|
261
267
|
return first;
|
|
262
268
|
}
|
|
263
|
-
__name(arrSortedInsertionIndex, "arrSortedInsertionIndex");
|
|
264
269
|
|
|
265
|
-
// src/arrTableAssertRowsSameLength.ts
|
|
270
|
+
// src/lib/arrTableAssertRowsSameLength.ts
|
|
266
271
|
var arrTableAssertRowsSameLength_exports = {};
|
|
267
272
|
__export(arrTableAssertRowsSameLength_exports, {
|
|
268
273
|
arrTableAssertRowsSameLength: () => arrTableAssertRowsSameLength
|
|
@@ -275,9 +280,8 @@ function arrTableAssertRowsSameLength(rows, headers) {
|
|
|
275
280
|
}
|
|
276
281
|
}
|
|
277
282
|
}
|
|
278
|
-
__name(arrTableAssertRowsSameLength, "arrTableAssertRowsSameLength");
|
|
279
283
|
|
|
280
|
-
// src/arrTableEachToString.ts
|
|
284
|
+
// src/lib/arrTableEachToString.ts
|
|
281
285
|
var arrTableEachToString_exports = {};
|
|
282
286
|
__export(arrTableEachToString_exports, {
|
|
283
287
|
arrTableEachToString: () => arrTableEachToString
|
|
@@ -285,9 +289,8 @@ __export(arrTableEachToString_exports, {
|
|
|
285
289
|
function arrTableEachToString(table) {
|
|
286
290
|
return table.map(arrEachToString);
|
|
287
291
|
}
|
|
288
|
-
__name(arrTableEachToString, "arrTableEachToString");
|
|
289
292
|
|
|
290
|
-
// src/arrTableIterateAsObjects.ts
|
|
293
|
+
// src/lib/arrTableIterateAsObjects.ts
|
|
291
294
|
var arrTableIterateAsObjects_exports = {};
|
|
292
295
|
__export(arrTableIterateAsObjects_exports, {
|
|
293
296
|
arrTableIterateAsObjects: () => arrTableIterateAsObjects
|
|
@@ -310,48 +313,63 @@ function* arrTableIterateAsObjects(rows, headers, ignoreHeaders = /* @__PURE__ *
|
|
|
310
313
|
}
|
|
311
314
|
const o = {};
|
|
312
315
|
for (let c = 0; c < headers.length; c++) {
|
|
313
|
-
if (ignoreHeaders.has(headers[c]))
|
|
316
|
+
if (ignoreHeaders.has(headers[c])) {
|
|
317
|
+
continue;
|
|
318
|
+
}
|
|
314
319
|
o[headers[c]] = rows[r][c];
|
|
315
320
|
}
|
|
316
321
|
yield o;
|
|
317
322
|
}
|
|
318
323
|
}
|
|
319
|
-
__name(arrTableIterateAsObjects, "arrTableIterateAsObjects");
|
|
320
324
|
|
|
321
|
-
// src/arrTableRemoveColumns.ts
|
|
325
|
+
// src/lib/arrTableRemoveColumns.ts
|
|
322
326
|
var arrTableRemoveColumns_exports = {};
|
|
323
327
|
__export(arrTableRemoveColumns_exports, {
|
|
324
328
|
arrTableRemoveColumns: () => arrTableRemoveColumns
|
|
325
329
|
});
|
|
326
330
|
function arrTableRemoveColumns(table, ...removeColumnNames) {
|
|
327
|
-
if (!removeColumnNames.length || !table.length)
|
|
328
|
-
|
|
329
|
-
|
|
331
|
+
if (!removeColumnNames.length || !table.length) {
|
|
332
|
+
return table;
|
|
333
|
+
}
|
|
334
|
+
const set = new Set(
|
|
335
|
+
removeColumnNames.map((col) => {
|
|
336
|
+
return arrIndicesOf(table[0], col);
|
|
337
|
+
}).flat()
|
|
338
|
+
);
|
|
339
|
+
return table.map((row) => {
|
|
340
|
+
return row.filter((_, i) => {
|
|
341
|
+
return !set.has(i);
|
|
342
|
+
});
|
|
343
|
+
});
|
|
330
344
|
}
|
|
331
|
-
__name(arrTableRemoveColumns, "arrTableRemoveColumns");
|
|
332
345
|
|
|
333
|
-
// src/arrTableToCsv.ts
|
|
346
|
+
// src/lib/arrTableToCsv.ts
|
|
334
347
|
var arrTableToCsv_exports = {};
|
|
335
348
|
__export(arrTableToCsv_exports, {
|
|
336
349
|
arrTableToCsv: () => arrTableToCsv
|
|
337
350
|
});
|
|
338
351
|
function arrTableToCsv(input, delimiter = ";", replaceLinebreakWith = "<br>") {
|
|
339
352
|
return input.map((row) => {
|
|
340
|
-
return row.map((item) =>
|
|
353
|
+
return row.map((item) => {
|
|
354
|
+
return String(item).replace(new RegExp(";", "g"), "").replace(/\r*\n/g, replaceLinebreakWith);
|
|
355
|
+
}).join(delimiter);
|
|
341
356
|
}).join("\n");
|
|
342
357
|
}
|
|
343
|
-
__name(arrTableToCsv, "arrTableToCsv");
|
|
344
358
|
|
|
345
|
-
// src/arrTableToObjects.ts
|
|
359
|
+
// src/lib/arrTableToObjects.ts
|
|
346
360
|
var arrTableToObjects_exports = {};
|
|
347
361
|
__export(arrTableToObjects_exports, {
|
|
348
362
|
arrTableToObjects: () => arrTableToObjects
|
|
349
363
|
});
|
|
350
364
|
function arrTableToObjects(rows, headers, ignoreKeys) {
|
|
351
365
|
if (headers) {
|
|
352
|
-
if (!rows.length)
|
|
366
|
+
if (!rows.length) {
|
|
367
|
+
return [];
|
|
368
|
+
}
|
|
353
369
|
} else {
|
|
354
|
-
if (rows.length <= 1)
|
|
370
|
+
if (rows.length <= 1) {
|
|
371
|
+
return [];
|
|
372
|
+
}
|
|
355
373
|
headers = rows[0].map((header) => {
|
|
356
374
|
return header === null || header === void 0 ? "" : String(header);
|
|
357
375
|
});
|
|
@@ -362,15 +380,16 @@ function arrTableToObjects(rows, headers, ignoreKeys) {
|
|
|
362
380
|
const o = {};
|
|
363
381
|
for (let i = 0; i < _headers.length; i++) {
|
|
364
382
|
const header = _headers[i];
|
|
365
|
-
if (ignoreKeys && ignoreKeys.has(header))
|
|
383
|
+
if (ignoreKeys && ignoreKeys.has(header)) {
|
|
384
|
+
continue;
|
|
385
|
+
}
|
|
366
386
|
o[header] = row[i];
|
|
367
387
|
}
|
|
368
388
|
return o;
|
|
369
389
|
});
|
|
370
390
|
}
|
|
371
|
-
__name(arrTableToObjects, "arrTableToObjects");
|
|
372
391
|
|
|
373
|
-
// src/arrayToString.ts
|
|
392
|
+
// src/lib/arrayToString.ts
|
|
374
393
|
var arrayToString_exports = {};
|
|
375
394
|
__export(arrayToString_exports, {
|
|
376
395
|
arrayToString: () => arrayToString
|
|
@@ -380,7 +399,6 @@ function arrayToString(array) {
|
|
|
380
399
|
return item == null ? String(item) : Array.isArray(item) ? arrayToString(item) : item.toString();
|
|
381
400
|
}).join(",")}]`;
|
|
382
401
|
}
|
|
383
|
-
__name(arrayToString, "arrayToString");
|
|
384
402
|
|
|
385
403
|
// src/index.ts
|
|
386
404
|
var src_default = {
|
|
@@ -439,4 +457,3 @@ export {
|
|
|
439
457
|
arrayToString,
|
|
440
458
|
src_default as default
|
|
441
459
|
};
|
|
442
|
-
//# sourceMappingURL=index.mjs.map
|
package/package.json
CHANGED
|
@@ -1,35 +1,32 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bemoje/array",
|
|
3
|
-
"version": "1.0.
|
|
4
|
-
"
|
|
3
|
+
"version": "1.0.1",
|
|
4
|
+
"description": "Array utils",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"sideEffects": false,
|
|
7
|
-
"
|
|
7
|
+
"keywords": [
|
|
8
|
+
"array"
|
|
9
|
+
],
|
|
8
10
|
"exports": {
|
|
9
11
|
".": {
|
|
10
|
-
"types": "./
|
|
11
|
-
"import": "./
|
|
12
|
-
"default": "./
|
|
12
|
+
"types": "./index.d.ts",
|
|
13
|
+
"import": "./index.mjs",
|
|
14
|
+
"default": "./index.mjs"
|
|
13
15
|
}
|
|
14
16
|
},
|
|
15
|
-
"
|
|
16
|
-
"dist/"
|
|
17
|
-
],
|
|
17
|
+
"dependencies": {},
|
|
18
18
|
"publishConfig": {
|
|
19
19
|
"access": "public"
|
|
20
20
|
},
|
|
21
|
-
"scripts": {
|
|
22
|
-
"build": "node esbuild.mjs"
|
|
23
|
-
},
|
|
24
21
|
"license": "MIT",
|
|
25
22
|
"author": {
|
|
26
|
-
"name": "Benjamin
|
|
23
|
+
"name": "Benjamin Møller Jensen",
|
|
27
24
|
"email": "bemoje@bemoje.net",
|
|
28
25
|
"url": "https://github.com/bemoje/"
|
|
29
26
|
},
|
|
30
27
|
"repository": {
|
|
31
28
|
"type": "git",
|
|
32
|
-
"url": "https://github.com/bemoje/mono.git",
|
|
29
|
+
"url": "git+https://github.com/bemoje/mono.git",
|
|
33
30
|
"directory": "libs/array"
|
|
34
31
|
}
|
|
35
32
|
}
|
package/README.md
DELETED
package/dist/index.mjs.map
DELETED
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../src/arrAverage.ts", "../src/arrSum.ts", "../src/arrEachToString.ts", "../src/arrFindIndicesOf.ts", "../src/arrGetOrDefault.ts", "../src/arrHasDuplicates.ts", "../src/arrIndicesOf.ts", "../src/arrLast.ts", "../src/arrMapMutable.ts", "../src/arrObjectsToTable.ts", "../src/arrObjectsUniqueKeys.ts", "../src/arrRemove.ts", "../src/arrRemoveDuplicates.ts", "../src/arrRemoveMutable.ts", "../src/arrShuffle.ts", "../src/arrSwap.ts", "../src/arrSortNumeric.ts", "../src/arrSortedInsertionIndex.ts", "../src/arrTableAssertRowsSameLength.ts", "../src/arrTableEachToString.ts", "../src/arrTableIterateAsObjects.ts", "../src/arrTableRemoveColumns.ts", "../src/arrTableToCsv.ts", "../src/arrTableToObjects.ts", "../src/arrayToString.ts", "../src/index.ts"],
|
|
4
|
-
"sourcesContent": ["import { arrSum } from './arrSum'\n\n/**\n * Calculates the average of an array of numbers.\n * @returns The average of all numbers in the array.\n * @throws an error if the input array is empty.\n * @param array The array of numbers.\n * @example ```ts\n * const numbers = [1, 2, 3, 4, 5];\n * arrAverage(numbers);\n * //=> 3\n * ```\n */\nexport function arrAverage(array: number[]): number {\n if (!array.length) throw new Error('Cannot take an average of zero values.')\n return arrSum(array) / array.length\n}\n", "/**\n * Calculates the sum of an array of numbers.\n * @returns The sum of all numbers in the array.\n * @param array The array of numbers to sum.\n * @example ```ts\n * const numbers = [1, 2, 3, 4, 5];\n * arrSum(numbers);\n * //=> 15\n * ```\n */\nexport function arrSum(array: number[]): number {\n return array.reduce((acc, cur) => acc + cur, 0)\n}\n", "/**\n * Coerce each element of an array to string.\n * @template T - The type of elements in the input array.\n * @returns A new array where each element is the string representation of the corresponding element in the input array.\n * @param array The array to iterate over.\n * @example ```ts\n * const numbers = [1, 2, 3];\n * arrEachToString(numbers);\n * //=> ['1', '2', '3']\n * ```\n */\nexport function arrEachToString<T>(array: T[]): string[] {\n return array.map((element) => '' + element)\n}\n", "/**\n * Returns an array of indices where the predicate function returns true for the corresponding element in the input array.\n * @param input - The array to search.\n * @param predicate - The function to test each element of the array.\n * @returns An array of indices where the predicate function returns true.\n */\nexport function arrFindIndicesOf<T>(input: Array<T>, predicate: (value: T) => boolean): number[] {\n const result: number[] = []\n for (let i = 0; i < input.length; i++) {\n if (predicate(input[i])) {\n result.push(i)\n }\n }\n return result\n}\n", "/**\n * Get array element at index or create it using factory function if it doesn't exist.\n */\nexport function arrGetOrDefault<V>(array: V[], index: number, factory: (index: number) => V): V {\n const value = array[index]\n if (value !== undefined || Object.hasOwn(array, index)) return value\n return (array[index] = factory(index))\n}\n", "/**\n * Checks if an array has any duplicate elements.\n * @param arr - The array to check for duplicates.\n * @returns A boolean indicating whether the array has duplicates.\n * @typeParam T - The type of elements in the array.\n */\nexport function arrHasDuplicates<T>(arr: T[]): boolean {\n const seen = new Set<T>()\n for (const e of arr) {\n if (seen.has(e)) return true\n seen.add(e)\n }\n return false\n}\n", "/**\n * Returns all indexes at which an element is found.\n * @param input The array to search\n * @template T - The type of elements in the input array.\n * @returns An array of indices where the specified element can be found.\n * @param element The element to find\n * @example ```ts\n * const inputArray = [1, 2, 3, 2, 4, 2, 5];\n * const elementToFind = 2;\n * arrIndicesOf(inputArray, elementToFind);\n * //=> [1, 3, 5]\n * ```\n */\nexport function arrIndicesOf<T>(input: Array<T>, element: T): number[] {\n const result: number[] = []\n for (let i = 0; i < input.length; i++) {\n if (element === input[i]) {\n result.push(i)\n }\n }\n return result\n}\n", "/**\n * Returns the last element of an array.\n * Throws an error if the array is empty.\n * @template T The type of elements in the array.\n * @param array The array to get the last element from.\n * @returns The last element of the array.\n * @throws If the array is empty.\n * @example const numbers = [1, 2, 3, 4, 5];\n * const lastNumber = arrLast(numbers);\n * //=> 5\n */\nexport function arrLast<T>(array: T[]): T {\n if (!array.length) throw new Error('Cannot get last element of empty array.')\n return array[array.length - 1]\n}\n", "/**\n * This function takes an array and a callback function as arguments. It applies the callback function to each element of the array, mutating the original array in the process.\n * @template T The type of elements in the input array.\n * @param input The array to be mapped over.\n * @param f The callback function to be applied to each element of the array. This function takes three arguments: the current element, its index, and the original array.\n * @returns The original array, mutated by the callback function.\n * @example ```ts\n * arrMapMutable([1, 2, 3], (value: number) => value * 2);\n * //=> [2, 4, 6]\n * ```\n */\nexport function arrMapMutable<T>(input: Array<T>, f: (value: T, index: number, array: T[]) => T): Array<T> {\n for (let i = 0; i < input.length; i++) {\n input[i] = f(input[i], i, input)\n }\n return input\n}\n", "import { arrObjectsUniqueKeys } from './arrObjectsUniqueKeys'\n\n/**\n * Convert an array of objects to a two-dimensional table.\n * @param objects The array of objects to convert to a table.\n * @template T - The type of the values in the objects.\n * @param options.headers An optional array of strings specifying the headers (property names) to use. If not provided, the function will use all unique keys found in the objects.\n * @param options.emptyCell An optional value to use for empty cells. If not provided, the function will use `undefined`.\n * @returns A 2D array (table) where each row represents an object and each column represents a property of the object.\n * @param options The options for converting the objects to a table.\n * @example ```ts\n * arrObjectsToTable(\n * [\n * { a: 1, b: 2 },\n * { a: 3, b: 4, c: 5 },\n * ],\n * { emptyCell:1 },\n * ) //=> [ [ 'a', 'b', 'c' ], [ 1, 2,1 ], [ 3, 4, 5 ] ]\n * ```\n */\nexport function arrObjectsToTable<T, E>(\n objects: Record<string, T | undefined>[],\n options: {\n headers?: string[]\n emptyCell?: E\n } = {},\n): Array<Array<string | T | E>> {\n const headers = options?.headers?.slice() || arrObjectsUniqueKeys(objects)\n const table: Array<Array<string | T | E>> = [headers]\n for (const o of objects) {\n const row = headers.map((header) => {\n const value = o[header]\n return value !== undefined ? value : (options.emptyCell as E)\n })\n table.push(row)\n }\n return table\n}\n", "/**\n * Returns an array of all unique object keys found in an array of objects.\n * @template T - The type of values in the input objects.\n * @returns An array of unique keys present in the input objects.\n * @param objects The array of objects.\n * @example ```ts\n * const objects = [\n * { name: 'John', age: 25 },\n * { name: 'Jane', gender: 'female' },\n * { name: 'Bob', age: 30, gender: 'male' },\n * ];\n * arrObjectsUniqueKeys(objects);\n * //=> ['name', 'age', 'gender']\n * ```\n */\nexport function arrObjectsUniqueKeys<T>(objects: Record<string, T>[]): string[] {\n const keys = new Set<string>()\n for (const o of objects) {\n for (const key of Object.keys(o)) {\n keys.add(key)\n }\n }\n return Array.from(keys)\n}\n", "/**\n * Remove a given element from a copy of a given array and return the resulting array.\n */\nexport function arrRemove<T>(arr: T[], elementToRemove: T): T[] {\n return arr.filter((element) => element !== elementToRemove)\n}\n", "/**\n * Remove duplicates from an array\n * @remarks This function uses the JavaScript Set object to remove duplicate values from an array.\n * @typeparam T - The type of elements in the array.\n * @returns The new array with duplicates removed.\n * @param array The array from which to remove duplicates.\n * @example ```ts\n * const array = [1, 2, 2, 3, 4, 4, 5];\n * arrRemoveDuplicates(array);\n * //=> [1, 2, 3, 4, 5]\n * ```\n */\nexport function arrRemoveDuplicates<T>(array: T[]): T[] {\n return Array.from(new Set(array))\n}\n", "/**\n * Remove elements in-place from an array.\n */\nexport function arrRemoveMutable<T>(arr: T[], elementToRemove: T): void {\n let index = arr.indexOf(elementToRemove)\n while (index !== -1) {\n arr.splice(index, 1)\n index = arr.indexOf(elementToRemove)\n }\n}\n", "import { arrSwap } from './arrSwap'\n\n/**\n * Shuffle items in an array in-place. Guarantees changes.\n * @remarks This function does not guarantee that the order of the elements will be different after shuffling.\n * @typeparam T - The type of the elements in the input array.\n * @returns The same array, but shuffled.\n * @param input The array to shuffle.\n * @example ```ts\n * const input = [1, 2, 3, 4, 5];\n * arrShuffle(input);\n * //=> [3, 1, 5, 2, 4]\n * ```\n */\nexport function arrShuffle<T>(input: Array<T>): Array<T> {\n if (input.length <= 1) return input\n const original = input.slice()\n let equal = true\n while (equal) {\n for (let i = 0; i < input.length; i++) {\n const newIndex = Math.floor(Math.random() * input.length)\n arrSwap(input, i, newIndex)\n }\n equal = input.join(',') === original.join(',')\n }\n return input\n}\n", "/**\n * Swaps two elements in an array. This function takes an input array and swaps the elements at the specified indices.\n * @param to The index of the element to swap to.\n * @param from The index of the element to swap from.\n * @template T - The type of elements in the array.\n * @returns The modified array with swapped elements.\n * @throws Will throw an error if 'from' or 'to' is not a valid index in the array.\n * @param input The input array.\n * @example ```ts\n * const arr = [1, 2, 3, 4, 5]\n * arrSwap(arr, 1, 3) //=> [1, 4, 3, 2, 5]\n * ```\n */\nexport function arrSwap<T>(input: Array<T>, from: number, to: number): Array<T> {\n if (from === to) return input\n ;[input[from], input[to]] = [input[to], input[from]]\n return input\n}\n", "/**\n * Sorts an array of numbers, bigints, or booleans in ascending order.\n * @returns The sorted array.\n * @remarks This function uses the JavaScript `Array.prototype.sort()` method, which sorts elements in place.\n * Therefore, the original array will be modified.\n * @throws If any element in the input array is not a number, bigint, or boolean.\n * @param input The array to be sorted.\n * @example ```ts\n * const input = [5, 2n, true, 10, false];\n * arrSortNumeric(input);\n * //=> [false, true, 2n, 5, 10]\n * ```\n */\nexport function arrSortNumeric(input: Array<number | bigint | boolean>): Array<number | bigint | boolean> {\n return input.sort((a: number | bigint | boolean, b: number | bigint | boolean) => {\n if (a < b) return -1\n if (a > b) return 1\n return 0\n })\n}\n", "/**\n * Returns an index in the sorted array where the specified value could be inserted while maintaining the sorted order of the array.\n * If the element is already in the array, returns the index after the last instance of the element.\n * @param array - The sorted array to search.\n * @param value - The value to locate in the array.\n * @param comparator - A function that defines the sort order. If omitted, the array elements are converted to strings, then sorted according to each character's Unicode code point value.\n * @returns The index at which the value could be inserted into array to maintain the array's sorted order.\n * @example ```ts\n * const array = [1, 2, 3, 5, 6];\n * const value = 4;\n * const comparator = (a, b) => a - b;\n * const index = arrSortedLowerBound(array, value, comparator);\n * console.log(index); // Output: 3\n * ```\n */\nexport function arrSortedInsertionIndex<T>(\n array: readonly T[],\n value: T,\n comparator: (a: T, b: T) => number,\n): number {\n let first = 0\n let count = array.length\n while (count > 0) {\n const step = Math.trunc(count / 2)\n let it = first + step\n if (comparator(array[it]!, value) <= 0) {\n first = ++it\n count -= step + 1\n } else {\n count = step\n }\n }\n return first\n}\n", "/**\n * Asserts that all rows in a 2D array have the same length.\n * @param - Optional array of headers to compare the row length against.\n * @throws If any row in the array has a different length than the others.\n * @param headers Optional. An array of headers. If provided, each row must have the same length as this array.\n * @typeparam T - The type of elements in the rows.\n * @param rows The 2D array to check.\n * @example ```ts\n * const rows = [\n * [1, 2, 3],\n * [4, 5, 6],\n * [7, 8, 9],\n * ];\n * arrTableAssertRowsSameLength(rows);\n * //=> undefined\n * const rowsWithDifferentLength = [\n * [1, 2, 3],\n * [4, 5],\n * [7, 8, 9],\n * ];\n * arrTableAssertRowsSameLength(rowsWithDifferentLength);\n * //=> Error: Expected 3 columns, got 2\n * ```\n */\nexport function arrTableAssertRowsSameLength<T>(rows: T[][], headers?: string[]): void {\n const numHeaders = (headers || rows[0]).length\n for (const row of rows) {\n if (row.length !== numHeaders) {\n throw new Error(`Expected ${numHeaders} columns, got ${row.length}`)\n }\n }\n}\n", "import { arrEachToString } from './arrEachToString'\n\n/**\n * Coerce each value of a 2D array table to string.\n * @template T - The type of the elements in the input array.\n * @returns The converted 2D array where each element is a string.\n * @param table The 2D array to convert.\n * @example ```ts\n * const input: number[][] = [[1, 2, 3], [4, 5, 6], [7, 8, 9]];\n * arrTableEachToString(input);\n * //=> [['1', '2', '3'], ['4', '5', '6'], ['7', '8', '9']]\n * ```\n */\nexport function arrTableEachToString<T>(table: T[][]): string[][] {\n return table.map(arrEachToString)\n}\n", "/**\n * Generator that iterates through a 2D array table, yielding objects with header keys and row values.\n */\nexport function* arrTableIterateAsObjects<T>(\n rows: T[][],\n headers: string[],\n ignoreHeaders: Set<string> = new Set(),\n) {\n if (!headers.length) {\n throw new Error('No headers provided')\n }\n\n ignoreHeaders.forEach((h) => {\n if (!headers.includes(h)) {\n throw new Error(`Header \"${h}\" not found in headers: ${headers}`)\n }\n })\n\n if (new Set(headers).size === ignoreHeaders.size) {\n throw new Error('All headers are ignored')\n }\n\n for (let r = 0; r < rows.length; r++) {\n if (rows[r].length !== headers.length) {\n throw new Error(`Row ${r} has ${rows[r].length} columns, but expected ${headers.length}`)\n }\n\n const o: Record<string, T> = {}\n for (let c = 0; c < headers.length; c++) {\n if (ignoreHeaders.has(headers[c])) continue\n o[headers[c]] = rows[r][c]\n }\n yield o\n }\n}\n", "import { arrIndicesOf } from './arrIndicesOf'\n\n/**\n * Removes specified columns from a 2D array table.\n * @param table - The 2D array (table) from which columns will be removed. The first row of the table is assumed to contain column names.\n * @param removeColumnNames - The names of the columns to be removed. These should match the entries in the first row of the table.\n * @returns A new 2D array (table) with the specified columns removed.\n */\nexport function arrTableRemoveColumns(table: string[][], ...removeColumnNames: string[]): string[][] {\n if (!removeColumnNames.length || !table.length) return table\n const set = new Set(removeColumnNames.map((col) => arrIndicesOf(table[0], col)).flat())\n return table.map((row) => row.filter((_, i) => !set.has(i)))\n}\n", "/**\n * Converts a 2D array to a CSV string.\n * @param input The input 2D array.\n * @remarks This function is useful for exporting data to CSV format.\n * @param replaceLinebreakWith The character used to replace line breaks in the CSV string. Defaults to '|'.\n * @typeparam T - The type of the elements in the input array.\n * @returns The CSV string representation of the input array.\n * @param delimiter The delimiter to use for separating values in the CSV string.\n * @example ```ts\n * const input = [\n * ['Name', 'Age', 'Country'],\n * ['John', '25', 'USA'],\n * ['Alice', '30', 'Canada'],\n * ['Bob', '35', 'UK'],\n * ];\n * arrTableToCsv(input);\n * //=> \"Name;Age;Country\\nJohn;25;USA\\nAlice;30;Canada\\nBob;35;UK\"\n * ```\n */\nexport function arrTableToCsv<T>(input: T[][], delimiter = ';', replaceLinebreakWith = '<br>'): string {\n return input\n .map((row) => {\n return row\n .map((item) => String(item).replace(new RegExp(';', 'g'), '').replace(/\\r*\\n/g, replaceLinebreakWith))\n .join(delimiter)\n })\n .join('\\n')\n}\n", "/**\n * Converts a 2D array representing a table into an array of objects.\n * @param rows The 2D array representing the table.\n * @template T - The type of the elements in the rows.\n * @param headers The headers to use as keys for the objects. If not provided, the first row of the table is used as headers.\n * @returns An array of objects, where each object represents a row in the table.\n * @throws Throws an error if the headers are not provided and the table is empty or only contains one row.\n * @param headers Optional array of headers for the table.\n * @example ```ts\n * const table = [\n * ['Name', 'Age', 'Country'],\n * ['John', 25, 'USA'],\n * ['Jane', 30, 'Canada'],\n * ];\n * const headers = ['Name', 'Age', 'Country'];\n * arrTableToObjects(table, headers) //=> [\n * // { Name: 'John', Age: 25, Country: 'USA' },\n * // { Name: 'Jane', Age: 30, Country: 'Canada' },\n * // ]\n * ```\n */\nexport function arrTableToObjects<T>(\n rows: T[][],\n headers?: string[],\n ignoreKeys?: Set<string>,\n): Record<string, T>[] {\n if (headers) {\n if (!rows.length) return []\n } else {\n if (rows.length <= 1) return []\n headers = rows[0].map((header) => {\n return header === null || header === undefined ? '' : String(header)\n })\n rows = rows.slice(1)\n }\n const _headers = headers\n return rows.map((row: T[]) => {\n const o: Record<string, T> = {}\n for (let i = 0; i < _headers.length; i++) {\n const header = _headers[i]\n if (ignoreKeys && ignoreKeys.has(header)) continue\n o[header] = row[i]\n }\n return o\n })\n}\n", "/**\n * Short and condensed string representation of an array, easy to read for error outputs or similar.\n */\nexport function arrayToString<T>(array: T[]): string {\n return `[${array\n .map((item: T) => {\n return item == null ? String(item) : Array.isArray(item) ? arrayToString(item) : item.toString()\n })\n .join(',')}]`\n}\n", "export * from './arrAverage'\nexport * from './arrEachToString'\nexport * from './arrFindIndicesOf'\nexport * from './arrGetOrDefault'\nexport * from './arrHasDuplicates'\nexport * from './arrIndicesOf'\nexport * from './arrLast'\nexport * from './arrMapMutable'\nexport * from './arrObjectsToTable'\nexport * from './arrObjectsUniqueKeys'\nexport * from './arrRemove'\nexport * from './arrRemoveDuplicates'\nexport * from './arrRemoveMutable'\nexport * from './arrShuffle'\nexport * from './arrSortNumeric'\nexport * from './arrSortedInsertionIndex'\nexport * from './arrSum'\nexport * from './arrSwap'\nexport * from './arrTableAssertRowsSameLength'\nexport * from './arrTableEachToString'\nexport * from './arrTableIterateAsObjects'\nexport * from './arrTableRemoveColumns'\nexport * from './arrTableToCsv'\nexport * from './arrTableToObjects'\nexport * from './arrayToString'\n\nimport * as MODULE_01 from './arrAverage'\nimport * as MODULE_02 from './arrEachToString'\nimport * as MODULE_03 from './arrFindIndicesOf'\nimport * as MODULE_04 from './arrGetOrDefault'\nimport * as MODULE_05 from './arrHasDuplicates'\nimport * as MODULE_06 from './arrIndicesOf'\nimport * as MODULE_07 from './arrLast'\nimport * as MODULE_08 from './arrMapMutable'\nimport * as MODULE_09 from './arrObjectsToTable'\nimport * as MODULE_10 from './arrObjectsUniqueKeys'\nimport * as MODULE_11 from './arrRemove'\nimport * as MODULE_12 from './arrRemoveDuplicates'\nimport * as MODULE_13 from './arrRemoveMutable'\nimport * as MODULE_14 from './arrShuffle'\nimport * as MODULE_15 from './arrSortNumeric'\nimport * as MODULE_16 from './arrSortedInsertionIndex'\nimport * as MODULE_17 from './arrSum'\nimport * as MODULE_18 from './arrSwap'\nimport * as MODULE_19 from './arrTableAssertRowsSameLength'\nimport * as MODULE_20 from './arrTableEachToString'\nimport * as MODULE_21 from './arrTableIterateAsObjects'\nimport * as MODULE_22 from './arrTableRemoveColumns'\nimport * as MODULE_23 from './arrTableToCsv'\nimport * as MODULE_24 from './arrTableToObjects'\nimport * as MODULE_25 from './arrayToString'\n\nexport default {\n ...MODULE_01, //\n ...MODULE_02,\n ...MODULE_03,\n ...MODULE_04,\n ...MODULE_05,\n ...MODULE_06,\n ...MODULE_07,\n ...MODULE_08,\n ...MODULE_09,\n ...MODULE_10,\n ...MODULE_11,\n ...MODULE_12,\n ...MODULE_13,\n ...MODULE_14,\n ...MODULE_15,\n ...MODULE_16,\n ...MODULE_17,\n ...MODULE_18,\n ...MODULE_19,\n ...MODULE_20,\n ...MODULE_21,\n ...MODULE_22,\n ...MODULE_23,\n ...MODULE_24,\n ...MODULE_25,\n}\n"],
|
|
5
|
-
"mappings": "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",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|