extra-utils 3.3.1 → 3.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +40 -0
- package/lib/index.d.ts +1 -0
- package/lib/index.js +1 -0
- package/lib/index.js.map +1 -1
- package/lib/json.d.ts +5 -0
- package/lib/json.js +34 -0
- package/lib/json.js.map +1 -0
- package/lib/object.d.ts +0 -3
- package/lib/object.js +1 -19
- package/lib/object.js.map +1 -1
- package/lib/pipe.d.ts +25 -0
- package/lib/pipe.js.map +1 -1
- package/package.json +16 -16
package/README.md
CHANGED
|
@@ -11,6 +11,40 @@ yarn add extra-utils
|
|
|
11
11
|
## API
|
|
12
12
|
### pipe
|
|
13
13
|
```ts
|
|
14
|
+
function pipe<A, B, C, D, E, F, G>(
|
|
15
|
+
value: A
|
|
16
|
+
, ...operators: [
|
|
17
|
+
(value: A) => B
|
|
18
|
+
, (value: B) => C
|
|
19
|
+
, (value: C) => D
|
|
20
|
+
, ...Array<(value: D) => D>
|
|
21
|
+
, (value: D) => E
|
|
22
|
+
, (value: E) => F
|
|
23
|
+
, (value: F) => G
|
|
24
|
+
]
|
|
25
|
+
): G
|
|
26
|
+
function pipe<A, B, C, D, E, F>(
|
|
27
|
+
value: A
|
|
28
|
+
, ...operators: [
|
|
29
|
+
(value: A) => B
|
|
30
|
+
, (value: B) => C
|
|
31
|
+
, ...Array<(value: C) => C>
|
|
32
|
+
, (value: C) => D
|
|
33
|
+
, (value: D) => E
|
|
34
|
+
, (value: E) => F
|
|
35
|
+
]
|
|
36
|
+
): F
|
|
37
|
+
function pipe<A, B, C, D, E, F>(
|
|
38
|
+
value: A
|
|
39
|
+
, ...operators: [
|
|
40
|
+
(value: A) => B
|
|
41
|
+
, (value: B) => C
|
|
42
|
+
, (value: C) => D
|
|
43
|
+
, ...Array<(value: D) => D>
|
|
44
|
+
, (value: D) => E
|
|
45
|
+
, (value: E) => F
|
|
46
|
+
]
|
|
47
|
+
): F
|
|
14
48
|
function pipe<A, B, C, D, E>(
|
|
15
49
|
value: A
|
|
16
50
|
, ...operators: [
|
|
@@ -162,9 +196,15 @@ function isntPlainObject<T>(
|
|
|
162
196
|
|
|
163
197
|
function isEmptyObject(val: object): boolean
|
|
164
198
|
function isntEmptyObject(val: object): boolean
|
|
199
|
+
```
|
|
165
200
|
|
|
201
|
+
### JSON
|
|
202
|
+
```ts
|
|
166
203
|
function isJson(val: unknown): Json
|
|
167
204
|
function isntJson<T>(val: T): val is Exclude<T, Json>
|
|
205
|
+
|
|
206
|
+
function isJsonable<T extends Json>(val: unknown): val is Jsonable<T>
|
|
207
|
+
function isntJsonable<T>(val: T): val is Exclude<T, Jsonable<Json>>
|
|
168
208
|
```
|
|
169
209
|
|
|
170
210
|
### RegExp
|
package/lib/index.d.ts
CHANGED
package/lib/index.js
CHANGED
|
@@ -23,6 +23,7 @@ __exportStar(require("./function"), exports);
|
|
|
23
23
|
__exportStar(require("./nullish"), exports);
|
|
24
24
|
__exportStar(require("./number"), exports);
|
|
25
25
|
__exportStar(require("./object"), exports);
|
|
26
|
+
__exportStar(require("./json"), exports);
|
|
26
27
|
__exportStar(require("./pipe"), exports);
|
|
27
28
|
__exportStar(require("./string"), exports);
|
|
28
29
|
__exportStar(require("./regexp"), exports);
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAuB;AACvB,2CAAwB;AACxB,4CAAyB;AACzB,yCAAsB;AACtB,yCAAsB;AACtB,6CAA0B;AAC1B,4CAAyB;AACzB,2CAAwB;AACxB,2CAAwB;AACxB,yCAAsB;AACtB,2CAAwB;AACxB,2CAAwB;AACxB,2CAAwB"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAuB;AACvB,2CAAwB;AACxB,4CAAyB;AACzB,yCAAsB;AACtB,yCAAsB;AACtB,6CAA0B;AAC1B,4CAAyB;AACzB,2CAAwB;AACxB,2CAAwB;AACxB,yCAAsB;AACtB,yCAAsB;AACtB,2CAAwB;AACxB,2CAAwB;AACxB,2CAAwB"}
|
package/lib/json.d.ts
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { Json, Jsonable } from 'justypes';
|
|
2
|
+
export declare function isJson(val: unknown): val is Json;
|
|
3
|
+
export declare function isntJson<T>(val: T): val is Exclude<T, Json>;
|
|
4
|
+
export declare function isJsonable<T extends Json>(val: unknown): val is Jsonable<T>;
|
|
5
|
+
export declare function isntJsonable<T>(val: T): val is Exclude<T, Jsonable<Json>>;
|
package/lib/json.js
ADDED
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isntJsonable = exports.isJsonable = exports.isntJson = exports.isJson = void 0;
|
|
4
|
+
const nullish_1 = require("./nullish");
|
|
5
|
+
const boolean_1 = require("./boolean");
|
|
6
|
+
const string_1 = require("./string");
|
|
7
|
+
const number_1 = require("./number");
|
|
8
|
+
const array_1 = require("./array");
|
|
9
|
+
const object_1 = require("./object");
|
|
10
|
+
const function_1 = require("./function");
|
|
11
|
+
function isJson(val) {
|
|
12
|
+
return (0, nullish_1.isNull)(val)
|
|
13
|
+
|| (0, boolean_1.isBoolean)(val)
|
|
14
|
+
|| (0, string_1.isString)(val)
|
|
15
|
+
|| (0, number_1.isNumber)(val)
|
|
16
|
+
|| ((0, array_1.isArray)(val) && val.every(isJson))
|
|
17
|
+
|| ((0, object_1.isPlainObject)(val) && Object.values(val).every(isJson));
|
|
18
|
+
}
|
|
19
|
+
exports.isJson = isJson;
|
|
20
|
+
function isntJson(val) {
|
|
21
|
+
return !isJson(val);
|
|
22
|
+
}
|
|
23
|
+
exports.isntJson = isntJson;
|
|
24
|
+
function isJsonable(val) {
|
|
25
|
+
return (0, object_1.isObject)(val)
|
|
26
|
+
&& 'toJSON' in val
|
|
27
|
+
&& (0, function_1.isFunction)(val.toJSON);
|
|
28
|
+
}
|
|
29
|
+
exports.isJsonable = isJsonable;
|
|
30
|
+
function isntJsonable(val) {
|
|
31
|
+
return !isJsonable(val);
|
|
32
|
+
}
|
|
33
|
+
exports.isntJsonable = isntJsonable;
|
|
34
|
+
//# sourceMappingURL=json.js.map
|
package/lib/json.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"json.js","sourceRoot":"","sources":["../src/json.ts"],"names":[],"mappings":";;;AACA,uCAAkC;AAClC,uCAAqC;AACrC,qCAAmC;AACnC,qCAAmC;AACnC,mCAAiC;AACjC,qCAAkD;AAClD,yCAAuC;AAEvC,SAAgB,MAAM,CAAC,GAAY;IACjC,OAAO,IAAA,gBAAM,EAAC,GAAG,CAAC;WACX,IAAA,mBAAS,EAAC,GAAG,CAAC;WACd,IAAA,iBAAQ,EAAC,GAAG,CAAC;WACb,IAAA,iBAAQ,EAAC,GAAG,CAAC;WACb,CAAC,IAAA,eAAO,EAAC,GAAG,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;WACnC,CAAC,IAAA,sBAAa,EAAC,GAAG,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAA;AACjE,CAAC;AAPD,wBAOC;AAED,SAAgB,QAAQ,CAAI,GAAM;IAChC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;AACrB,CAAC;AAFD,4BAEC;AAED,SAAgB,UAAU,CAAiB,GAAY;IACrD,OAAO,IAAA,iBAAQ,EAAC,GAAG,CAAC;WACb,QAAQ,IAAI,GAAG;WACf,IAAA,qBAAU,EAAC,GAAG,CAAC,MAAM,CAAC,CAAA;AAC/B,CAAC;AAJD,gCAIC;AAED,SAAgB,YAAY,CAAI,GAAM;IACpC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;AACzB,CAAC;AAFD,oCAEC"}
|
package/lib/object.d.ts
CHANGED
|
@@ -1,9 +1,6 @@
|
|
|
1
|
-
import { Json } from 'justypes';
|
|
2
1
|
export declare function isObject(val: unknown): val is object & Record<string | symbol | number, unknown>;
|
|
3
2
|
export declare function isntObject<T>(val: T): val is Exclude<T, object & Record<string | symbol | number, unknown>>;
|
|
4
3
|
export declare function isPlainObject(val: unknown): val is object & Record<string | symbol | number, unknown>;
|
|
5
4
|
export declare function isntPlainObject<T>(val: T): val is Exclude<T, object & Record<string | symbol | number, unknown>>;
|
|
6
5
|
export declare function isEmptyObject(val: object): boolean;
|
|
7
6
|
export declare function isntEmptyObject(val: object): boolean;
|
|
8
|
-
export declare function isJson(val: unknown): val is Json;
|
|
9
|
-
export declare function isntJson<T>(val: T): val is Exclude<T, Json>;
|
package/lib/object.js
CHANGED
|
@@ -3,13 +3,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.
|
|
6
|
+
exports.isntEmptyObject = exports.isEmptyObject = exports.isntPlainObject = exports.isPlainObject = exports.isntObject = exports.isObject = void 0;
|
|
7
7
|
const isPlainObject_1 = __importDefault(require("lodash/isPlainObject"));
|
|
8
|
-
const nullish_1 = require("./nullish");
|
|
9
|
-
const boolean_1 = require("./boolean");
|
|
10
|
-
const string_1 = require("./string");
|
|
11
|
-
const number_1 = require("./number");
|
|
12
|
-
const array_1 = require("./array");
|
|
13
8
|
function isObject(val) {
|
|
14
9
|
return val !== null
|
|
15
10
|
&& typeof val === 'object';
|
|
@@ -35,17 +30,4 @@ function isntEmptyObject(val) {
|
|
|
35
30
|
return Object.keys(val).length !== 0;
|
|
36
31
|
}
|
|
37
32
|
exports.isntEmptyObject = isntEmptyObject;
|
|
38
|
-
function isJson(val) {
|
|
39
|
-
return (0, nullish_1.isNull)(val)
|
|
40
|
-
|| (0, boolean_1.isBoolean)(val)
|
|
41
|
-
|| (0, string_1.isString)(val)
|
|
42
|
-
|| (0, number_1.isNumber)(val)
|
|
43
|
-
|| ((0, array_1.isArray)(val) && val.every(isJson))
|
|
44
|
-
|| (isPlainObject(val) && Object.values(val).every(isJson));
|
|
45
|
-
}
|
|
46
|
-
exports.isJson = isJson;
|
|
47
|
-
function isntJson(val) {
|
|
48
|
-
return !isJson(val);
|
|
49
|
-
}
|
|
50
|
-
exports.isntJson = isntJson;
|
|
51
33
|
//# sourceMappingURL=object.js.map
|
package/lib/object.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"object.js","sourceRoot":"","sources":["../src/object.ts"],"names":[],"mappings":";;;;;;AAAA,yEAAwD;AAExD,
|
|
1
|
+
{"version":3,"file":"object.js","sourceRoot":"","sources":["../src/object.ts"],"names":[],"mappings":";;;;;;AAAA,yEAAwD;AAExD,SAAgB,QAAQ,CACtB,GAAY;IAEZ,OAAO,GAAG,KAAK,IAAI;WACZ,OAAO,GAAG,KAAK,QAAQ,CAAA;AAChC,CAAC;AALD,4BAKC;AAED,SAAgB,UAAU,CACxB,GAAM;IAEN,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAA;AACvB,CAAC;AAJD,gCAIC;AAED,SAAgB,aAAa,CAC3B,GAAY;IAIZ,OAAO,IAAA,uBAAqB,EAAC,GAAG,CAAC,CAAA;AACnC,CAAC;AAND,sCAMC;AAED,SAAgB,eAAe,CAC7B,GAAM;IAEN,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,CAAA;AAC5B,CAAC;AAJD,0CAIC;AAED,SAAgB,aAAa,CAAC,GAAW;IACvC,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,CAAC,CAAA;AACtC,CAAC;AAFD,sCAEC;AAED,SAAgB,eAAe,CAAC,GAAW;IACzC,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,CAAC,CAAA;AACtC,CAAC;AAFD,0CAEC"}
|
package/lib/pipe.d.ts
CHANGED
|
@@ -1,3 +1,28 @@
|
|
|
1
|
+
export declare function pipe<A, B, C, D, E, F, G>(value: A, ...operators: [
|
|
2
|
+
(value: A) => B,
|
|
3
|
+
(value: B) => C,
|
|
4
|
+
(value: C) => D,
|
|
5
|
+
...Array<(value: D) => D>,
|
|
6
|
+
(value: D) => E,
|
|
7
|
+
(value: E) => F,
|
|
8
|
+
(value: F) => G
|
|
9
|
+
]): G;
|
|
10
|
+
export declare function pipe<A, B, C, D, E, F>(value: A, ...operators: [
|
|
11
|
+
(value: A) => B,
|
|
12
|
+
(value: B) => C,
|
|
13
|
+
...Array<(value: C) => C>,
|
|
14
|
+
(value: C) => D,
|
|
15
|
+
(value: D) => E,
|
|
16
|
+
(value: E) => F
|
|
17
|
+
]): F;
|
|
18
|
+
export declare function pipe<A, B, C, D, E, F>(value: A, ...operators: [
|
|
19
|
+
(value: A) => B,
|
|
20
|
+
(value: B) => C,
|
|
21
|
+
(value: C) => D,
|
|
22
|
+
...Array<(value: D) => D>,
|
|
23
|
+
(value: D) => E,
|
|
24
|
+
(value: E) => F
|
|
25
|
+
]): F;
|
|
1
26
|
export declare function pipe<A, B, C, D, E>(value: A, ...operators: [
|
|
2
27
|
(value: A) => B,
|
|
3
28
|
(value: B) => C,
|
package/lib/pipe.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipe.js","sourceRoot":"","sources":["../src/pipe.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"pipe.js","sourceRoot":"","sources":["../src/pipe.ts"],"names":[],"mappings":";;;AAwFA,SAAgB,IAAI,CAClB,KAAQ,EACR,GAAG,SAAyC;IAE5C,IAAI,MAAM,GAAU,KAAK,CAAA;IACzB,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE;QAChC,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAA;KAC1B;IACD,OAAO,MAAW,CAAA;AACpB,CAAC;AATD,oBASC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "extra-utils",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.5.0",
|
|
4
4
|
"description": "Utilities for JavaScript and Typescript",
|
|
5
5
|
"files": [
|
|
6
6
|
"lib"
|
|
@@ -34,28 +34,28 @@
|
|
|
34
34
|
},
|
|
35
35
|
"devDependencies": {
|
|
36
36
|
"@blackglory/pass": "^1.1.0",
|
|
37
|
-
"@commitlint/cli": "^17.
|
|
38
|
-
"@commitlint/config-conventional": "^17.
|
|
39
|
-
"@types/jest": "^
|
|
40
|
-
"@types/jsdom": "^
|
|
41
|
-
"@types/lodash": "^4.14.
|
|
42
|
-
"@typescript-eslint/eslint-plugin": "^5.
|
|
43
|
-
"@typescript-eslint/parser": "^5.
|
|
44
|
-
"eslint": "^8.
|
|
37
|
+
"@commitlint/cli": "^17.3.0",
|
|
38
|
+
"@commitlint/config-conventional": "^17.3.0",
|
|
39
|
+
"@types/jest": "^29.2.3",
|
|
40
|
+
"@types/jsdom": "^20.0.1",
|
|
41
|
+
"@types/lodash": "^4.14.190",
|
|
42
|
+
"@typescript-eslint/eslint-plugin": "^5.44.0",
|
|
43
|
+
"@typescript-eslint/parser": "^5.44.0",
|
|
44
|
+
"eslint": "^8.28.0",
|
|
45
45
|
"husky": "^4.3.8",
|
|
46
|
-
"jest": "^
|
|
47
|
-
"jest-extended": "^2.0
|
|
46
|
+
"jest": "^29.3.1",
|
|
47
|
+
"jest-extended": "^3.2.0",
|
|
48
48
|
"npm-run-all": "^4.1.5",
|
|
49
49
|
"rimraf": "^3.0.2",
|
|
50
50
|
"standard-version": "^9.5.0",
|
|
51
|
-
"ts-jest": "^
|
|
51
|
+
"ts-jest": "^29.0.3",
|
|
52
52
|
"tscpaths": "^0.0.9",
|
|
53
|
-
"tsd": "^0.
|
|
54
|
-
"tslib": "^2.4.
|
|
55
|
-
"typescript": "4.
|
|
53
|
+
"tsd": "^0.24.1",
|
|
54
|
+
"tslib": "^2.4.1",
|
|
55
|
+
"typescript": "4.9.3"
|
|
56
56
|
},
|
|
57
57
|
"dependencies": {
|
|
58
|
-
"justypes": "^3.
|
|
58
|
+
"justypes": "^3.1.2",
|
|
59
59
|
"lodash": "^4.17.21"
|
|
60
60
|
}
|
|
61
61
|
}
|