@clipboard-health/util-ts 3.11.0 → 3.12.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/package.json +1 -1
- package/src/lib/arrays/chunk.d.ts +9 -0
- package/src/lib/arrays/chunk.js +21 -0
- package/src/lib/arrays/chunk.js.map +1 -0
- package/src/lib/arrays/index.d.ts +1 -0
- package/src/lib/arrays/index.js +1 -0
- package/src/lib/arrays/index.js.map +1 -1
- package/src/lib/errors/toError.js +17 -0
- package/src/lib/errors/toError.js.map +1 -1
package/package.json
CHANGED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Creates an `array` of elements split into groups the length of `size`. If `array` can't be split
|
|
3
|
+
* evenly, the final chunk will be the remaining elements.
|
|
4
|
+
*
|
|
5
|
+
* @param array - The array to chunk.
|
|
6
|
+
* @param size - The length of each chunk.
|
|
7
|
+
* @returns the new 2D array of chunks.
|
|
8
|
+
*/
|
|
9
|
+
export declare function chunk<T>(array: T[], size: number): T[][];
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.chunk = chunk;
|
|
4
|
+
/**
|
|
5
|
+
* Creates an `array` of elements split into groups the length of `size`. If `array` can't be split
|
|
6
|
+
* evenly, the final chunk will be the remaining elements.
|
|
7
|
+
*
|
|
8
|
+
* @param array - The array to chunk.
|
|
9
|
+
* @param size - The length of each chunk.
|
|
10
|
+
* @returns the new 2D array of chunks.
|
|
11
|
+
*/
|
|
12
|
+
function chunk(array, size) {
|
|
13
|
+
if (!Number.isInteger(size) || size <= 0) {
|
|
14
|
+
throw new RangeError("size must be a positive integer");
|
|
15
|
+
}
|
|
16
|
+
if (array.length === 0) {
|
|
17
|
+
return [];
|
|
18
|
+
}
|
|
19
|
+
return Array.from({ length: Math.ceil(array.length / size) }, (_, index) => array.slice(index * size, (index + 1) * size));
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=chunk.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chunk.js","sourceRoot":"","sources":["../../../../../../packages/util-ts/src/lib/arrays/chunk.ts"],"names":[],"mappings":";;AAQA,sBAYC;AApBD;;;;;;;GAOG;AACH,SAAgB,KAAK,CAAI,KAAU,EAAE,IAAY;IAC/C,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,EAAE,CAAC;QACzC,MAAM,IAAI,UAAU,CAAC,iCAAiC,CAAC,CAAC;IAC1D,CAAC;IAED,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CACzE,KAAK,CAAC,KAAK,CAAC,KAAK,GAAG,IAAI,EAAE,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,CAC9C,CAAC;AACJ,CAAC"}
|
package/src/lib/arrays/index.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
const tslib_1 = require("tslib");
|
|
4
|
+
tslib_1.__exportStar(require("./chunk"), exports);
|
|
4
5
|
tslib_1.__exportStar(require("./head"), exports);
|
|
5
6
|
tslib_1.__exportStar(require("./nonEmptyArray"), exports);
|
|
6
7
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/util-ts/src/lib/arrays/index.ts"],"names":[],"mappings":";;;AAAA,iDAAuB;AACvB,0DAAgC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/util-ts/src/lib/arrays/index.ts"],"names":[],"mappings":";;;AAAA,kDAAwB;AACxB,iDAAuB;AACvB,0DAAgC"}
|
|
@@ -4,6 +4,14 @@ exports.toError = toError;
|
|
|
4
4
|
const isString_1 = require("../strings/isString");
|
|
5
5
|
const stringify_1 = require("../strings/stringify");
|
|
6
6
|
const isError_1 = require("./isError");
|
|
7
|
+
const IGNORED_PROPERTIES = new Set([
|
|
8
|
+
"message",
|
|
9
|
+
"stack",
|
|
10
|
+
"name",
|
|
11
|
+
"__proto__",
|
|
12
|
+
"prototype",
|
|
13
|
+
"constructor",
|
|
14
|
+
]);
|
|
7
15
|
/**
|
|
8
16
|
* Converts an error-like value to an Error instance. If the input is already an Error, returns it
|
|
9
17
|
* directly. Otherwise, creates a new Error with an appropriate string representation of the input.
|
|
@@ -20,6 +28,15 @@ function toError(value) {
|
|
|
20
28
|
if ("stack" in value) {
|
|
21
29
|
error.stack = String(value.stack);
|
|
22
30
|
}
|
|
31
|
+
if ("name" in value && typeof value.name === "string") {
|
|
32
|
+
error.name = String(value.name);
|
|
33
|
+
}
|
|
34
|
+
// Preserve original properties without clobbering.
|
|
35
|
+
Reflect.ownKeys(value)
|
|
36
|
+
.filter((key) => !IGNORED_PROPERTIES.has(String(key)))
|
|
37
|
+
.forEach((key) => {
|
|
38
|
+
error[key] = value[key];
|
|
39
|
+
});
|
|
23
40
|
return error;
|
|
24
41
|
}
|
|
25
42
|
if (typeof value === "symbol") {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toError.js","sourceRoot":"","sources":["../../../../../../packages/util-ts/src/lib/errors/toError.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"toError.js","sourceRoot":"","sources":["../../../../../../packages/util-ts/src/lib/errors/toError.ts"],"names":[],"mappings":";;AAsBA,0BAkCC;AAxDD,kDAA+C;AAC/C,oDAAiD;AACjD,uCAAoC;AAEpC,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAC;IACjC,SAAS;IACT,OAAO;IACP,MAAM;IACN,WAAW;IACX,WAAW;IACX,aAAa;CACd,CAAC,CAAC;AAIH;;;;;;GAMG;AACH,SAAgB,OAAO,CAAC,KAAc;IACpC,IAAI,IAAA,iBAAO,EAAC,KAAK,CAAC,EAAE,CAAC;QACnB,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,SAAS,IAAI,KAAK,EAAE,CAAC;QAC7D,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;QAC/C,IAAI,OAAO,IAAI,KAAK,EAAE,CAAC;YACrB,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACpC,CAAC;QAED,IAAI,MAAM,IAAI,KAAK,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACtD,KAAK,CAAC,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAClC,CAAC;QAED,mDAAmD;QACnD,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC;aACnB,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,kBAAkB,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;aACrD,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;YACd,KAAmC,CAAC,GAAG,CAAC,GAAI,KAAwB,CAAC,GAAG,CAAC,CAAC;QAC7E,CAAC,CAAC,CAAC;QAEL,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IAClC,CAAC;IAED,IAAI,CAAC;QACH,OAAO,IAAI,KAAK,CAAC,IAAA,mBAAQ,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAA,qBAAS,EAAC,KAAK,CAAC,CAAC,CAAC;IAC/D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IAClC,CAAC;AACH,CAAC"}
|