hotypes 0.6.0 → 0.6.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 +1 -0
- package/lib/index.d.ts +1 -0
- package/lib/index.js +1 -0
- package/lib/index.js.map +1 -1
- package/lib/pop.d.ts +1 -0
- package/lib/pop.js +3 -0
- package/lib/pop.js.map +1 -0
- package/package.json +12 -11
- package/src/equals.ts +5 -0
- package/src/flatten-deep.ts +11 -0
- package/src/flatten.ts +13 -0
- package/src/function-keys.ts +4 -0
- package/src/head.ts +4 -0
- package/src/index.ts +41 -0
- package/src/keys-by-exact-type.ts +8 -0
- package/src/keys-by-type.ts +8 -0
- package/src/keys-exclude-by-exact-type.ts +4 -0
- package/src/keys-exclude-by-type.ts +4 -0
- package/src/last.ts +4 -0
- package/src/map-all-props.ts +3 -0
- package/src/map-nullable-props-to-optional-nullable.ts +6 -0
- package/src/map-nullable-props-to-optional.ts +13 -0
- package/src/map-props-by-exact-type.ts +8 -0
- package/src/map-props-by-key.ts +6 -0
- package/src/map-props-by-type.ts +8 -0
- package/src/map-props-to-non-nullable.ts +6 -0
- package/src/map-props-to-optional-by-key.ts +5 -0
- package/src/map-props-to-required-by-key.ts +6 -0
- package/src/mixin-all.ts +6 -0
- package/src/mixin.ts +6 -0
- package/src/non-callable.ts +3 -0
- package/src/non-nullable-keys.ts +4 -0
- package/src/nullable-keys.ts +3 -0
- package/src/omit-props-by-exact-type.ts +4 -0
- package/src/omit-props-by-type.ts +4 -0
- package/src/optional-keys.ts +7 -0
- package/src/pick-non-never.ts +3 -0
- package/src/pop.ts +4 -0
- package/src/replace-props-by-key.ts +8 -0
- package/src/replace-props-by-type.ts +9 -0
- package/src/replace.ts +3 -0
- package/src/return-type-of-constructor.ts +4 -0
- package/src/tail.ts +4 -0
- package/src/unpacked-array-like.ts +4 -0
- package/src/unpacked-array.ts +4 -0
- package/src/unpacked-async-iterable.ts +4 -0
- package/src/unpacked-iterable.ts +1 -0
- package/src/unpacked-promise-like.ts +1 -0
- package/src/unpacked-promise.ts +1 -0
- package/src/with-default.ts +4 -0
package/README.md
CHANGED
package/lib/index.d.ts
CHANGED
@@ -25,6 +25,7 @@ export * from './omit-props-by-type';
|
|
25
25
|
export * from './omit-props-by-exact-type';
|
26
26
|
export * from './optional-keys';
|
27
27
|
export * from './pick-non-never';
|
28
|
+
export * from './pop';
|
28
29
|
export * from './replace';
|
29
30
|
export * from './replace-props-by-key';
|
30
31
|
export * from './replace-props-by-type';
|
package/lib/index.js
CHANGED
@@ -41,6 +41,7 @@ __exportStar(require("./omit-props-by-type"), exports);
|
|
41
41
|
__exportStar(require("./omit-props-by-exact-type"), exports);
|
42
42
|
__exportStar(require("./optional-keys"), exports);
|
43
43
|
__exportStar(require("./pick-non-never"), exports);
|
44
|
+
__exportStar(require("./pop"), exports);
|
44
45
|
__exportStar(require("./replace"), exports);
|
45
46
|
__exportStar(require("./replace-props-by-key"), exports);
|
46
47
|
__exportStar(require("./replace-props-by-type"), exports);
|
package/lib/index.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAwB;AACxB,iDAA8B;AAC9B,4CAAyB;AACzB,kDAA+B;AAC/B,yCAAsB;AACtB,iDAA8B;AAC9B,uDAAoC;AACpC,yDAAsC;AACtC,+DAA4C;AAC5C,yCAAsB;AACtB,kDAA+B;AAC/B,qDAAkC;AAClC,sDAAmC;AACnC,4DAAyC;AACzC,4EAAyD;AACzD,mEAAgD;AAChD,iEAA8C;AAC9C,iEAA8C;AAC9C,8DAA2C;AAC3C,0CAAuB;AACvB,8CAA2B;AAC3B,sDAAmC;AACnC,kDAA+B;AAC/B,uDAAoC;AACpC,6DAA0C;AAC1C,kDAA+B;AAC/B,mDAAgC;AAChC,4CAAyB;AACzB,yDAAsC;AACtC,0DAAuC;AACvC,yCAAsB;AACtB,iDAA8B;AAC9B,iDAA8B;AAC9B,+DAA4C;AAC5C,mDAAgC;AAChC,wDAAqC;AACrC,sDAAmC;AACnC,4DAAyC;AACzC,0DAAuC;AACvC,qDAAkC"}
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAwB;AACxB,iDAA8B;AAC9B,4CAAyB;AACzB,kDAA+B;AAC/B,yCAAsB;AACtB,iDAA8B;AAC9B,uDAAoC;AACpC,yDAAsC;AACtC,+DAA4C;AAC5C,yCAAsB;AACtB,kDAA+B;AAC/B,qDAAkC;AAClC,sDAAmC;AACnC,4DAAyC;AACzC,4EAAyD;AACzD,mEAAgD;AAChD,iEAA8C;AAC9C,iEAA8C;AAC9C,8DAA2C;AAC3C,0CAAuB;AACvB,8CAA2B;AAC3B,sDAAmC;AACnC,kDAA+B;AAC/B,uDAAoC;AACpC,6DAA0C;AAC1C,kDAA+B;AAC/B,mDAAgC;AAChC,wCAAqB;AACrB,4CAAyB;AACzB,yDAAsC;AACtC,0DAAuC;AACvC,yCAAsB;AACtB,iDAA8B;AAC9B,iDAA8B;AAC9B,+DAA4C;AAC5C,mDAAgC;AAChC,wDAAqC;AACrC,sDAAmC;AACnC,4DAAyC;AACzC,0DAAuC;AACvC,qDAAkC"}
|
package/lib/pop.d.ts
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
export declare type Pop<T extends unknown[]> = T extends [...infer U, unknown] ? U : never;
|
package/lib/pop.js
ADDED
package/lib/pop.js.map
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"pop.js","sourceRoot":"","sources":["../src/pop.ts"],"names":[],"mappings":""}
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "hotypes",
|
3
|
-
"version": "0.6.
|
3
|
+
"version": "0.6.2",
|
4
4
|
"description": "Higher order types for TypeScript",
|
5
5
|
"keywords": [
|
6
6
|
"higher-order",
|
@@ -9,7 +9,8 @@
|
|
9
9
|
"hot"
|
10
10
|
],
|
11
11
|
"files": [
|
12
|
-
"lib"
|
12
|
+
"lib",
|
13
|
+
"src"
|
13
14
|
],
|
14
15
|
"main": "lib/index.js",
|
15
16
|
"types": "lib/index.d.ts",
|
@@ -38,20 +39,20 @@
|
|
38
39
|
},
|
39
40
|
"devDependencies": {
|
40
41
|
"@blackglory/pass": "^1.1.0",
|
41
|
-
"@commitlint/cli": "^17.
|
42
|
-
"@commitlint/config-conventional": "^17.
|
43
|
-
"@types/jest": "^29.
|
44
|
-
"@typescript-eslint/eslint-plugin": "^5.
|
45
|
-
"@typescript-eslint/parser": "^5.
|
46
|
-
"eslint": "^8.
|
42
|
+
"@commitlint/cli": "^17.4.4",
|
43
|
+
"@commitlint/config-conventional": "^17.4.4",
|
44
|
+
"@types/jest": "^29.5.0",
|
45
|
+
"@typescript-eslint/eslint-plugin": "^5.55.0",
|
46
|
+
"@typescript-eslint/parser": "^5.55.0",
|
47
|
+
"eslint": "^8.36.0",
|
47
48
|
"husky": "^4.3.8",
|
48
|
-
"jest": "^29.
|
49
|
+
"jest": "^29.5.0",
|
49
50
|
"npm-run-all": "^4.1.5",
|
50
51
|
"rimraf": "^3.0.2",
|
51
52
|
"standard-version": "^9.5.0",
|
52
|
-
"ts-jest": "^29.0.
|
53
|
+
"ts-jest": "^29.0.5",
|
53
54
|
"tscpaths": "^0.0.9",
|
54
|
-
"tslib": "^2.
|
55
|
+
"tslib": "^2.5.0",
|
55
56
|
"typescript": "^4.8.4"
|
56
57
|
}
|
57
58
|
}
|
package/src/equals.ts
ADDED
package/src/flatten.ts
ADDED
package/src/head.ts
ADDED
package/src/index.ts
ADDED
@@ -0,0 +1,41 @@
|
|
1
|
+
export * from './equals'
|
2
|
+
export * from './flatten-deep'
|
3
|
+
export * from './flatten'
|
4
|
+
export * from './function-keys'
|
5
|
+
export * from './head'
|
6
|
+
export * from './keys-by-type'
|
7
|
+
export * from './keys-by-exact-type'
|
8
|
+
export * from './keys-exclude-by-type'
|
9
|
+
export * from './keys-exclude-by-exact-type'
|
10
|
+
export * from './last'
|
11
|
+
export * from './map-all-props'
|
12
|
+
export * from './map-props-by-key'
|
13
|
+
export * from './map-props-by-type'
|
14
|
+
export * from './map-props-by-exact-type'
|
15
|
+
export * from './map-nullable-props-to-optional-nullable'
|
16
|
+
export * from './map-nullable-props-to-optional'
|
17
|
+
export * from './map-props-to-optional-by-key'
|
18
|
+
export * from './map-props-to-required-by-key'
|
19
|
+
export * from './map-props-to-non-nullable'
|
20
|
+
export * from './mixin'
|
21
|
+
export * from './mixin-all'
|
22
|
+
export * from './non-nullable-keys'
|
23
|
+
export * from './nullable-keys'
|
24
|
+
export * from './omit-props-by-type'
|
25
|
+
export * from './omit-props-by-exact-type'
|
26
|
+
export * from './optional-keys'
|
27
|
+
export * from './pick-non-never'
|
28
|
+
export * from './pop'
|
29
|
+
export * from './replace'
|
30
|
+
export * from './replace-props-by-key'
|
31
|
+
export * from './replace-props-by-type'
|
32
|
+
export * from './tail'
|
33
|
+
export * from './with-default'
|
34
|
+
export * from './non-callable'
|
35
|
+
export * from './return-type-of-constructor'
|
36
|
+
export * from './unpacked-array'
|
37
|
+
export * from './unpacked-array-like'
|
38
|
+
export * from './unpacked-iterable'
|
39
|
+
export * from './unpacked-async-iterable'
|
40
|
+
export * from './unpacked-promise-like'
|
41
|
+
export * from './unpacked-promise'
|
package/src/last.ts
ADDED
@@ -0,0 +1,13 @@
|
|
1
|
+
import { MapPropsByType } from './map-props-by-type'
|
2
|
+
import { NonNullableKeys } from './non-nullable-keys'
|
3
|
+
import { NullableKeys } from './nullable-keys'
|
4
|
+
|
5
|
+
export type MapNullablePropsToOptional<T> =
|
6
|
+
Pick<T, NonNullableKeys<T>>
|
7
|
+
& Partial<
|
8
|
+
MapPropsByType<
|
9
|
+
Pick<T, NullableKeys<T>>
|
10
|
+
, null
|
11
|
+
, undefined
|
12
|
+
>
|
13
|
+
>
|
package/src/mixin-all.ts
ADDED
package/src/mixin.ts
ADDED
package/src/pop.ts
ADDED
package/src/replace.ts
ADDED
package/src/tail.ts
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
export type UnpackedIterable<T> = T extends Iterable<infer U> ? U : never
|
@@ -0,0 +1 @@
|
|
1
|
+
export type UnpackedPromiseLike<T> = T extends PromiseLike<infer U> ? U : never
|
@@ -0,0 +1 @@
|
|
1
|
+
export type UnpackedPromise<T> = T extends Promise<infer U> ? U : never
|