type-plus 4.16.0 → 4.17.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 +5 -0
- package/cjs/function/ExtractFunction.d.ts +6 -0
- package/cjs/function/ExtractFunction.d.ts.map +1 -0
- package/cjs/function/ExtractFunction.js +3 -0
- package/cjs/function/ExtractFunction.js.map +1 -0
- package/cjs/function/ExtractFunction.spec.d.ts +2 -0
- package/cjs/function/ExtractFunction.spec.d.ts.map +1 -0
- package/cjs/function/ExtractFunction.spec.js +10 -0
- package/cjs/function/ExtractFunction.spec.js.map +1 -0
- package/cjs/function/index.d.ts +1 -0
- package/cjs/function/index.d.ts.map +1 -1
- package/cjs/index.d.ts +3 -3
- package/cjs/index.d.ts.map +1 -1
- package/cjs/index.js +0 -3
- package/cjs/index.js.map +1 -1
- package/esm/function/ExtractFunction.d.ts +6 -0
- package/esm/function/ExtractFunction.d.ts.map +1 -0
- package/esm/function/ExtractFunction.js +2 -0
- package/esm/function/ExtractFunction.js.map +1 -0
- package/esm/function/ExtractFunction.spec.d.ts +2 -0
- package/esm/function/ExtractFunction.spec.d.ts.map +1 -0
- package/esm/function/ExtractFunction.spec.js +8 -0
- package/esm/function/ExtractFunction.spec.js.map +1 -0
- package/esm/function/index.d.ts +1 -0
- package/esm/function/index.d.ts.map +1 -1
- package/esm/index.d.ts +3 -3
- package/esm/index.d.ts.map +1 -1
- package/esm/index.js +0 -3
- package/esm/index.js.map +1 -1
- package/package.json +5 -4
- package/ts/function/ExtractFunction.ts +7 -0
- package/ts/function/index.ts +1 -0
- package/ts/index.ts +3 -3
package/README.md
CHANGED
|
@@ -552,6 +552,11 @@ const b2 = brand('y', 1)
|
|
|
552
552
|
nominalMatch(b1, b2) // false
|
|
553
553
|
```
|
|
554
554
|
|
|
555
|
+
## Function Types
|
|
556
|
+
|
|
557
|
+
- `AnyFunction<P, R>`: a generic type for any function
|
|
558
|
+
- `ExtractFunction<F>`: extract the function signature from a type `F`.
|
|
559
|
+
|
|
555
560
|
## Functional Types
|
|
556
561
|
|
|
557
562
|
- `ChainFn<T>: T`: chain function that returns the input type.
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { AnyFunction } from './AnyFunction.js';
|
|
2
|
+
/**
|
|
3
|
+
* Extract the function signature from a composit type T.
|
|
4
|
+
*/
|
|
5
|
+
export declare type ExtractFunction<T extends AnyFunction> = T extends AnyFunction<infer P, infer R> ? (...args: P) => R : never;
|
|
6
|
+
//# sourceMappingURL=ExtractFunction.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ExtractFunction.d.ts","sourceRoot":"","sources":["../../ts/function/ExtractFunction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAE9C;;GAEG;AACH,oBAAY,eAAe,CAAC,CAAC,SAAS,WAAW,IAAI,CAAC,SAAS,WAAW,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC,GACxF,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,KAAK,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ExtractFunction.js","sourceRoot":"","sources":["../../ts/function/ExtractFunction.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ExtractFunction.spec.d.ts","sourceRoot":"","sources":["../../ts/function/ExtractFunction.spec.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
var index_js_1 = require("../index.js");
|
|
4
|
+
it('gets the function itself if it is not composite', function () {
|
|
5
|
+
index_js_1.isType.equal();
|
|
6
|
+
});
|
|
7
|
+
it('omits other props from the type', function () {
|
|
8
|
+
index_js_1.isType.equal();
|
|
9
|
+
});
|
|
10
|
+
//# sourceMappingURL=ExtractFunction.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ExtractFunction.spec.js","sourceRoot":"","sources":["../../ts/function/ExtractFunction.spec.ts"],"names":[],"mappings":";;AAAA,wCAAoC;AAGpC,EAAE,CAAC,iDAAiD,EAAE;IAIpD,iBAAM,CAAC,KAAK,EAAc,CAAA;AAC5B,CAAC,CAAC,CAAA;AAEF,EAAE,CAAC,iCAAiC,EAAE;IAIpC,iBAAM,CAAC,KAAK,EAAuB,CAAA;AACrC,CAAC,CAAC,CAAA"}
|
package/cjs/function/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../ts/function/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../ts/function/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AACnD,YAAY,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA"}
|
package/cjs/index.d.ts
CHANGED
|
@@ -3,10 +3,10 @@ export * from './array/index.js';
|
|
|
3
3
|
export * from './assertion/index.js';
|
|
4
4
|
export * from './class/index.js';
|
|
5
5
|
export type { ComposableTypes, NonComposableTypes } from './ComposableTypes.js';
|
|
6
|
-
export
|
|
6
|
+
export type { AnyFunction, ExtractFunction } from './function/index.js';
|
|
7
7
|
export * from './functional/index.js';
|
|
8
|
-
export
|
|
9
|
-
export
|
|
8
|
+
export type { JSONArray, JSONObject, JSONPrimitive, JSONTypes } from './JSONTypes.js';
|
|
9
|
+
export type { Abs, Add, Decrement, Digit, DigitArray, GreaterThan, Increment, IsPositive, IsWhole, Max, Subtract } from './math/index.js';
|
|
10
10
|
export * from './nodejs/index.js';
|
|
11
11
|
export * from './nominal-types/index.js';
|
|
12
12
|
export * from './object/index.js';
|
package/cjs/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../ts/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AAC7D,cAAc,kBAAkB,CAAA;AAChC,cAAc,sBAAsB,CAAA;AACpC,cAAc,kBAAkB,CAAA;AAChC,YAAY,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AAC/E,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../ts/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AAC7D,cAAc,kBAAkB,CAAA;AAChC,cAAc,sBAAsB,CAAA;AACpC,cAAc,kBAAkB,CAAA;AAChC,YAAY,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AAC/E,YAAY,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AACvE,cAAc,uBAAuB,CAAA;AACrC,YAAY,EAAE,SAAS,EAAE,UAAU,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AACrF,YAAY,EAAE,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AACzI,cAAc,mBAAmB,CAAA;AACjC,cAAc,0BAA0B,CAAA;AACxC,cAAc,mBAAmB,CAAA;AACjC,cAAc,uBAAuB,CAAA;AACrC,YAAY,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAClE,cAAc,oBAAoB,CAAA;AAClC,cAAc,oBAAoB,CAAA;AAGlC,YAAY,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC/C,cAAc,kBAAkB,CAAA"}
|
package/cjs/index.js
CHANGED
|
@@ -23,10 +23,7 @@ Object.defineProperty(exports, "unpartial", { enumerable: true, get: function ()
|
|
|
23
23
|
__exportStar(require("./array/index.js"), exports);
|
|
24
24
|
__exportStar(require("./assertion/index.js"), exports);
|
|
25
25
|
__exportStar(require("./class/index.js"), exports);
|
|
26
|
-
__exportStar(require("./function/index.js"), exports);
|
|
27
26
|
__exportStar(require("./functional/index.js"), exports);
|
|
28
|
-
__exportStar(require("./JSONTypes.js"), exports);
|
|
29
|
-
__exportStar(require("./math/index.js"), exports);
|
|
30
27
|
__exportStar(require("./nodejs/index.js"), exports);
|
|
31
28
|
__exportStar(require("./nominal-types/index.js"), exports);
|
|
32
29
|
__exportStar(require("./object/index.js"), exports);
|
package/cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../ts/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,4CAA4C;AAC5C,uCAA6D;AAApD,qGAAA,QAAQ,OAAA;AAAE,yGAAA,YAAY,OAAA;AAAE,sGAAA,SAAS,OAAA;AAC1C,mDAAgC;AAChC,uDAAoC;AACpC,mDAAgC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../ts/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,4CAA4C;AAC5C,uCAA6D;AAApD,qGAAA,QAAQ,OAAA;AAAE,yGAAA,YAAY,OAAA;AAAE,sGAAA,SAAS,OAAA;AAC1C,mDAAgC;AAChC,uDAAoC;AACpC,mDAAgC;AAGhC,wDAAqC;AAGrC,oDAAiC;AACjC,2DAAwC;AACxC,oDAAiC;AACjC,wDAAqC;AAErC,qDAAkC;AAClC,qDAAkC;AAIlC,mDAAgC;AAChC,+BAA+B"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { AnyFunction } from './AnyFunction.js';
|
|
2
|
+
/**
|
|
3
|
+
* Extract the function signature from a composit type T.
|
|
4
|
+
*/
|
|
5
|
+
export declare type ExtractFunction<T extends AnyFunction> = T extends AnyFunction<infer P, infer R> ? (...args: P) => R : never;
|
|
6
|
+
//# sourceMappingURL=ExtractFunction.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ExtractFunction.d.ts","sourceRoot":"","sources":["../../ts/function/ExtractFunction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAE9C;;GAEG;AACH,oBAAY,eAAe,CAAC,CAAC,SAAS,WAAW,IAAI,CAAC,SAAS,WAAW,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC,GACxF,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,KAAK,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ExtractFunction.js","sourceRoot":"","sources":["../../ts/function/ExtractFunction.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ExtractFunction.spec.d.ts","sourceRoot":"","sources":["../../ts/function/ExtractFunction.spec.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ExtractFunction.spec.js","sourceRoot":"","sources":["../../ts/function/ExtractFunction.spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAGpC,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;IAIzD,MAAM,CAAC,KAAK,EAAc,CAAA;AAC5B,CAAC,CAAC,CAAA;AAEF,EAAE,CAAC,iCAAiC,EAAE,GAAG,EAAE;IAIzC,MAAM,CAAC,KAAK,EAAuB,CAAA;AACrC,CAAC,CAAC,CAAA"}
|
package/esm/function/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../ts/function/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../ts/function/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AACnD,YAAY,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA"}
|
package/esm/index.d.ts
CHANGED
|
@@ -3,10 +3,10 @@ export * from './array/index.js';
|
|
|
3
3
|
export * from './assertion/index.js';
|
|
4
4
|
export * from './class/index.js';
|
|
5
5
|
export type { ComposableTypes, NonComposableTypes } from './ComposableTypes.js';
|
|
6
|
-
export
|
|
6
|
+
export type { AnyFunction, ExtractFunction } from './function/index.js';
|
|
7
7
|
export * from './functional/index.js';
|
|
8
|
-
export
|
|
9
|
-
export
|
|
8
|
+
export type { JSONArray, JSONObject, JSONPrimitive, JSONTypes } from './JSONTypes.js';
|
|
9
|
+
export type { Abs, Add, Decrement, Digit, DigitArray, GreaterThan, Increment, IsPositive, IsWhole, Max, Subtract } from './math/index.js';
|
|
10
10
|
export * from './nodejs/index.js';
|
|
11
11
|
export * from './nominal-types/index.js';
|
|
12
12
|
export * from './object/index.js';
|
package/esm/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../ts/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AAC7D,cAAc,kBAAkB,CAAA;AAChC,cAAc,sBAAsB,CAAA;AACpC,cAAc,kBAAkB,CAAA;AAChC,YAAY,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AAC/E,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../ts/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AAC7D,cAAc,kBAAkB,CAAA;AAChC,cAAc,sBAAsB,CAAA;AACpC,cAAc,kBAAkB,CAAA;AAChC,YAAY,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AAC/E,YAAY,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AACvE,cAAc,uBAAuB,CAAA;AACrC,YAAY,EAAE,SAAS,EAAE,UAAU,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AACrF,YAAY,EAAE,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AACzI,cAAc,mBAAmB,CAAA;AACjC,cAAc,0BAA0B,CAAA;AACxC,cAAc,mBAAmB,CAAA;AACjC,cAAc,uBAAuB,CAAA;AACrC,YAAY,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAClE,cAAc,oBAAoB,CAAA;AAClC,cAAc,oBAAoB,CAAA;AAGlC,YAAY,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC/C,cAAc,kBAAkB,CAAA"}
|
package/esm/index.js
CHANGED
|
@@ -3,10 +3,7 @@ export { required, requiredDeep, unpartial } from 'unpartial';
|
|
|
3
3
|
export * from './array/index.js';
|
|
4
4
|
export * from './assertion/index.js';
|
|
5
5
|
export * from './class/index.js';
|
|
6
|
-
export * from './function/index.js';
|
|
7
6
|
export * from './functional/index.js';
|
|
8
|
-
export * from './JSONTypes.js';
|
|
9
|
-
export * from './math/index.js';
|
|
10
7
|
export * from './nodejs/index.js';
|
|
11
8
|
export * from './nominal-types/index.js';
|
|
12
9
|
export * from './object/index.js';
|
package/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../ts/index.ts"],"names":[],"mappings":"AAAA,4CAA4C;AAC5C,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AAC7D,cAAc,kBAAkB,CAAA;AAChC,cAAc,sBAAsB,CAAA;AACpC,cAAc,kBAAkB,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../ts/index.ts"],"names":[],"mappings":"AAAA,4CAA4C;AAC5C,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AAC7D,cAAc,kBAAkB,CAAA;AAChC,cAAc,sBAAsB,CAAA;AACpC,cAAc,kBAAkB,CAAA;AAGhC,cAAc,uBAAuB,CAAA;AAGrC,cAAc,mBAAmB,CAAA;AACjC,cAAc,0BAA0B,CAAA;AACxC,cAAc,mBAAmB,CAAA;AACjC,cAAc,uBAAuB,CAAA;AAErC,cAAc,oBAAoB,CAAA;AAClC,cAAc,oBAAoB,CAAA;AAIlC,cAAc,kBAAkB,CAAA;AAChC,+BAA+B"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "type-plus",
|
|
3
|
-
"version": "4.
|
|
3
|
+
"version": "4.17.0",
|
|
4
4
|
"description": "Provides additional types for TypeScript.",
|
|
5
5
|
"homepage": "https://github.com/unional/type-plus",
|
|
6
6
|
"bugs": {
|
|
@@ -33,11 +33,11 @@
|
|
|
33
33
|
],
|
|
34
34
|
"scripts": {
|
|
35
35
|
"build": "run-p build:cjs build:esm build:tslib",
|
|
36
|
-
"build:cjs": "tsc -p tsconfig.cjs.json",
|
|
36
|
+
"build:cjs": "tsc -p tsconfig.cjs.json && ncp package.cjs.json cjs/package.json",
|
|
37
37
|
"build:esm": "tsc -p tsconfig.esm.json",
|
|
38
|
-
"build:tslib": "tsc -p tsconfig.tslib.json",
|
|
38
|
+
"build:tslib": "tsc -p tsconfig.tslib.json && ncp package.cjs.json tslib/package.json",
|
|
39
39
|
"build:doc": "typedoc",
|
|
40
|
-
"clean": "rimraf cjs coverage esm lib libm
|
|
40
|
+
"clean": "rimraf cjs coverage esm lib libm",
|
|
41
41
|
"coverage": "jest --coverage",
|
|
42
42
|
"depcheck": "depcheck",
|
|
43
43
|
"lint": "eslint --ext=ts,js .",
|
|
@@ -74,6 +74,7 @@
|
|
|
74
74
|
"jest-watch-suspend": "^1.1.2",
|
|
75
75
|
"jest-watch-toggle-config": "^2.0.1",
|
|
76
76
|
"jest-watch-typeahead": "^2.0.0",
|
|
77
|
+
"ncp": "^2.0.0",
|
|
77
78
|
"npm-run-all": "^4.1.5",
|
|
78
79
|
"pinst": "^3.0.0",
|
|
79
80
|
"rimraf": "^3.0.2",
|
package/ts/function/index.ts
CHANGED
package/ts/index.ts
CHANGED
|
@@ -4,10 +4,10 @@ export * from './array/index.js'
|
|
|
4
4
|
export * from './assertion/index.js'
|
|
5
5
|
export * from './class/index.js'
|
|
6
6
|
export type { ComposableTypes, NonComposableTypes } from './ComposableTypes.js'
|
|
7
|
-
export
|
|
7
|
+
export type { AnyFunction, ExtractFunction } from './function/index.js'
|
|
8
8
|
export * from './functional/index.js'
|
|
9
|
-
export
|
|
10
|
-
export
|
|
9
|
+
export type { JSONArray, JSONObject, JSONPrimitive, JSONTypes } from './JSONTypes.js'
|
|
10
|
+
export type { Abs, Add, Decrement, Digit, DigitArray, GreaterThan, Increment, IsPositive, IsWhole, Max, Subtract } from './math/index.js'
|
|
11
11
|
export * from './nodejs/index.js'
|
|
12
12
|
export * from './nominal-types/index.js'
|
|
13
13
|
export * from './object/index.js'
|