hotypes 0.5.0 → 0.6.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 CHANGED
@@ -18,6 +18,8 @@ yarn add hotypes
18
18
  - Head
19
19
  - Last
20
20
  - Tail
21
+ - Flatten
22
+ - FlattenDeep
21
23
  - FunctionKeys
22
24
  - NonNullableKeys
23
25
  - NullableKeys
@@ -32,7 +34,7 @@ yarn add hotypes
32
34
  - MapPropsByExactType
33
35
  - MapNullablePropsToOptionalNullable
34
36
  - MapNullablePropsToOptional
35
- - MapPropsToNonOptionalByKey
37
+ - MapPropsToRequiredByKey
36
38
  - MapPropsToOptionalByKey
37
39
  - MapPropsToNonNullable
38
40
  - Mixin
@@ -0,0 +1,4 @@
1
+ export declare type FlattenDeep<T extends unknown[]> = T extends [infer First, ...infer Rest] ? [
2
+ ...(First extends unknown[] ? FlattenDeep<First> : [First]),
3
+ ...FlattenDeep<Rest>
4
+ ] : T;
@@ -1,3 +1,3 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=map-props-to-non-optional-by-key.js.map
3
+ //# sourceMappingURL=flatten-deep.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"flatten-deep.js","sourceRoot":"","sources":["../src/flatten-deep.ts"],"names":[],"mappings":""}
@@ -0,0 +1,5 @@
1
+ import { UnpackedArray } from './unpacked-array';
2
+ export declare type Flatten<T extends unknown[]> = T extends [infer First, ...infer Rest] ? [
3
+ ...(First extends unknown[] ? [UnpackedArray<First>] : [First]),
4
+ ...Flatten<Rest>
5
+ ] : T;
package/lib/flatten.js ADDED
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=flatten.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"flatten.js","sourceRoot":"","sources":["../src/flatten.ts"],"names":[],"mappings":""}
package/lib/index.d.ts CHANGED
@@ -1,4 +1,6 @@
1
1
  export * from './equals';
2
+ export * from './flatten-deep';
3
+ export * from './flatten';
2
4
  export * from './function-keys';
3
5
  export * from './head';
4
6
  export * from './keys-by-type';
@@ -13,7 +15,7 @@ export * from './map-props-by-exact-type';
13
15
  export * from './map-nullable-props-to-optional-nullable';
14
16
  export * from './map-nullable-props-to-optional';
15
17
  export * from './map-props-to-optional-by-key';
16
- export * from './map-props-to-non-optional-by-key';
18
+ export * from './map-props-to-required-by-key';
17
19
  export * from './map-props-to-non-nullable';
18
20
  export * from './mixin';
19
21
  export * from './mixin-all';
package/lib/index.js CHANGED
@@ -15,6 +15,8 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./equals"), exports);
18
+ __exportStar(require("./flatten-deep"), exports);
19
+ __exportStar(require("./flatten"), exports);
18
20
  __exportStar(require("./function-keys"), exports);
19
21
  __exportStar(require("./head"), exports);
20
22
  __exportStar(require("./keys-by-type"), exports);
@@ -29,7 +31,7 @@ __exportStar(require("./map-props-by-exact-type"), exports);
29
31
  __exportStar(require("./map-nullable-props-to-optional-nullable"), exports);
30
32
  __exportStar(require("./map-nullable-props-to-optional"), exports);
31
33
  __exportStar(require("./map-props-to-optional-by-key"), exports);
32
- __exportStar(require("./map-props-to-non-optional-by-key"), exports);
34
+ __exportStar(require("./map-props-to-required-by-key"), exports);
33
35
  __exportStar(require("./map-props-to-non-nullable"), exports);
34
36
  __exportStar(require("./mixin"), exports);
35
37
  __exportStar(require("./mixin-all"), 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,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,qEAAkD;AAClD,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,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"}
@@ -0,0 +1,2 @@
1
+ import { OptionalKeys } from './optional-keys';
2
+ export declare type MapPropsToRequiredByKey<T, Keys extends keyof T> = Pick<T, Exclude<keyof T, OptionalKeys<T> | Keys>> & Partial<Pick<T, OptionalKeys<T>>> & Required<Pick<T, Keys>>;
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=map-props-to-required-by-key.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"map-props-to-required-by-key.js","sourceRoot":"","sources":["../src/map-props-to-required-by-key.ts"],"names":[],"mappings":""}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hotypes",
3
- "version": "0.5.0",
3
+ "version": "0.6.0",
4
4
  "description": "Higher order types for TypeScript",
5
5
  "keywords": [
6
6
  "higher-order",
@@ -38,20 +38,20 @@
38
38
  },
39
39
  "devDependencies": {
40
40
  "@blackglory/pass": "^1.1.0",
41
- "@commitlint/cli": "^17.1.2",
42
- "@commitlint/config-conventional": "^17.1.0",
43
- "@types/jest": "^27.4.1",
44
- "@typescript-eslint/eslint-plugin": "^5.37.0",
45
- "@typescript-eslint/parser": "^5.37.0",
46
- "eslint": "^8.23.1",
41
+ "@commitlint/cli": "^17.2.0",
42
+ "@commitlint/config-conventional": "^17.2.0",
43
+ "@types/jest": "^29.2.2",
44
+ "@typescript-eslint/eslint-plugin": "^5.42.1",
45
+ "@typescript-eslint/parser": "^5.42.1",
46
+ "eslint": "^8.27.0",
47
47
  "husky": "^4.3.8",
48
- "jest": "^27.5.1",
48
+ "jest": "^29.3.1",
49
49
  "npm-run-all": "^4.1.5",
50
50
  "rimraf": "^3.0.2",
51
51
  "standard-version": "^9.5.0",
52
- "ts-jest": "^27.1.3",
52
+ "ts-jest": "^29.0.3",
53
53
  "tscpaths": "^0.0.9",
54
- "tslib": "^2.4.0",
55
- "typescript": "^4.7.4"
54
+ "tslib": "^2.4.1",
55
+ "typescript": "^4.8.4"
56
56
  }
57
57
  }
@@ -1,2 +0,0 @@
1
- import { OptionalKeys } from './optional-keys';
2
- export declare type MapPropsToNonOptionalByKey<T, Keys extends keyof T> = Pick<T, Exclude<keyof T, OptionalKeys<T> | Keys>> & Partial<Pick<T, OptionalKeys<T>>> & Required<Pick<T, Keys>>;
@@ -1 +0,0 @@
1
- {"version":3,"file":"map-props-to-non-optional-by-key.js","sourceRoot":"","sources":["../src/map-props-to-non-optional-by-key.ts"],"names":[],"mappings":""}