type-plus 5.1.0 → 5.3.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.
Files changed (167) hide show
  1. package/README.md +4 -4
  2. package/cjs/array/PadLeft.spec.js.map +1 -1
  3. package/cjs/array/UnionOfValues.d.ts +1 -1
  4. package/cjs/array/UnionOfValues.d.ts.map +1 -1
  5. package/cjs/array/UnionOfValues.spec.js +10 -0
  6. package/cjs/array/UnionOfValues.spec.js.map +1 -1
  7. package/cjs/array/index.d.ts +3 -3
  8. package/cjs/array/index.d.ts.map +1 -1
  9. package/cjs/array/index.js.map +1 -1
  10. package/cjs/assertion/assertType.d.ts +3 -3
  11. package/cjs/assertion/assertType.spec.js +226 -131
  12. package/cjs/assertion/assertType.spec.js.map +1 -1
  13. package/cjs/function/ExtractFunction.d.ts +8 -2
  14. package/cjs/function/ExtractFunction.d.ts.map +1 -1
  15. package/cjs/function/ExtractFunction.js +5 -0
  16. package/cjs/function/ExtractFunction.js.map +1 -1
  17. package/cjs/function/ExtractFunction.spec.js +18 -6
  18. package/cjs/function/ExtractFunction.spec.js.map +1 -1
  19. package/cjs/functional/compose.d.ts +5 -1
  20. package/cjs/functional/compose.d.ts.map +1 -1
  21. package/cjs/functional/compose.js +5 -1
  22. package/cjs/functional/compose.js.map +1 -1
  23. package/cjs/object/filterKey.d.ts +2 -2
  24. package/cjs/object/filterKey.d.ts.map +1 -1
  25. package/cjs/object/filterKey.js +3 -1
  26. package/cjs/object/filterKey.js.map +1 -1
  27. package/cjs/object/filterKey.spec.js +5 -0
  28. package/cjs/object/filterKey.spec.js.map +1 -1
  29. package/cjs/object/findKey.d.ts +1 -1
  30. package/cjs/object/findKey.d.ts.map +1 -1
  31. package/cjs/object/findKey.js +3 -1
  32. package/cjs/object/findKey.js.map +1 -1
  33. package/cjs/object/findKey.spec.js +5 -0
  34. package/cjs/object/findKey.spec.js.map +1 -1
  35. package/cjs/object/mapKey.d.ts +1 -1
  36. package/cjs/object/mapKey.d.ts.map +1 -1
  37. package/cjs/object/mapKey.js +3 -1
  38. package/cjs/object/mapKey.js.map +1 -1
  39. package/cjs/object/mapKey.spec.js +5 -0
  40. package/cjs/object/mapKey.spec.js.map +1 -1
  41. package/cjs/object/reduceKey.d.ts +1 -1
  42. package/cjs/object/reduceKey.d.ts.map +1 -1
  43. package/cjs/object/reduceKey.js +1 -1
  44. package/cjs/object/reduceKey.js.map +1 -1
  45. package/cjs/object/reduceKey.spec.js +5 -0
  46. package/cjs/object/reduceKey.spec.js.map +1 -1
  47. package/cjs/object/someKey.d.ts +1 -1
  48. package/cjs/object/someKey.d.ts.map +1 -1
  49. package/cjs/object/someKey.js +3 -1
  50. package/cjs/object/someKey.js.map +1 -1
  51. package/cjs/object/someKey.spec.js +10 -0
  52. package/cjs/object/someKey.spec.js.map +1 -1
  53. package/cjs/predicates/CanAssign.spec.js +4 -3
  54. package/cjs/predicates/CanAssign.spec.js.map +1 -1
  55. package/cjs/predicates/Equal.d.ts +14 -18
  56. package/cjs/predicates/Equal.d.ts.map +1 -1
  57. package/cjs/predicates/Equal.js +0 -8
  58. package/cjs/predicates/Equal.js.map +1 -1
  59. package/cjs/predicates/Equal.spec.js +18 -0
  60. package/cjs/predicates/Equal.spec.js.map +1 -1
  61. package/cjs/predicates/IsAny.d.ts +3 -0
  62. package/cjs/predicates/IsAny.d.ts.map +1 -0
  63. package/cjs/predicates/IsAny.js +3 -0
  64. package/cjs/predicates/IsAny.js.map +1 -0
  65. package/cjs/predicates/index.d.ts +2 -3
  66. package/cjs/predicates/index.d.ts.map +1 -1
  67. package/cjs/predicates/index.js.map +1 -1
  68. package/cjs/predicates/isType.d.ts +1 -1
  69. package/cjs/predicates/isType.js +1 -1
  70. package/cjs/predicates/isType.spec.js +16 -12
  71. package/cjs/predicates/isType.spec.js.map +1 -1
  72. package/cjs/predicates/logical.d.ts +4 -4
  73. package/cjs/predicates/logical.d.ts.map +1 -1
  74. package/cjs/utils/inspect.d.ts +1 -1
  75. package/cjs/utils/inspect.d.ts.map +1 -1
  76. package/cjs/utils/inspect.js.map +1 -1
  77. package/esm/array/PadLeft.spec.js.map +1 -1
  78. package/esm/array/UnionOfValues.d.ts +1 -1
  79. package/esm/array/UnionOfValues.d.ts.map +1 -1
  80. package/esm/array/UnionOfValues.spec.js +11 -1
  81. package/esm/array/UnionOfValues.spec.js.map +1 -1
  82. package/esm/array/index.d.ts +3 -3
  83. package/esm/array/index.d.ts.map +1 -1
  84. package/esm/array/index.js.map +1 -1
  85. package/esm/assertion/assertType.d.ts +3 -3
  86. package/esm/assertion/assertType.spec.js +226 -131
  87. package/esm/assertion/assertType.spec.js.map +1 -1
  88. package/esm/function/ExtractFunction.d.ts +8 -2
  89. package/esm/function/ExtractFunction.d.ts.map +1 -1
  90. package/esm/function/ExtractFunction.js +5 -0
  91. package/esm/function/ExtractFunction.js.map +1 -1
  92. package/esm/function/ExtractFunction.spec.js +18 -6
  93. package/esm/function/ExtractFunction.spec.js.map +1 -1
  94. package/esm/functional/compose.d.ts +5 -1
  95. package/esm/functional/compose.d.ts.map +1 -1
  96. package/esm/functional/compose.js +5 -1
  97. package/esm/functional/compose.js.map +1 -1
  98. package/esm/object/filterKey.d.ts +2 -2
  99. package/esm/object/filterKey.d.ts.map +1 -1
  100. package/esm/object/filterKey.js +3 -1
  101. package/esm/object/filterKey.js.map +1 -1
  102. package/esm/object/filterKey.spec.js +5 -0
  103. package/esm/object/filterKey.spec.js.map +1 -1
  104. package/esm/object/findKey.d.ts +1 -1
  105. package/esm/object/findKey.d.ts.map +1 -1
  106. package/esm/object/findKey.js +3 -1
  107. package/esm/object/findKey.js.map +1 -1
  108. package/esm/object/findKey.spec.js +5 -0
  109. package/esm/object/findKey.spec.js.map +1 -1
  110. package/esm/object/mapKey.d.ts +1 -1
  111. package/esm/object/mapKey.d.ts.map +1 -1
  112. package/esm/object/mapKey.js +3 -1
  113. package/esm/object/mapKey.js.map +1 -1
  114. package/esm/object/mapKey.spec.js +5 -0
  115. package/esm/object/mapKey.spec.js.map +1 -1
  116. package/esm/object/reduceKey.d.ts +1 -1
  117. package/esm/object/reduceKey.d.ts.map +1 -1
  118. package/esm/object/reduceKey.js +1 -1
  119. package/esm/object/reduceKey.js.map +1 -1
  120. package/esm/object/reduceKey.spec.js +6 -1
  121. package/esm/object/reduceKey.spec.js.map +1 -1
  122. package/esm/object/someKey.d.ts +1 -1
  123. package/esm/object/someKey.d.ts.map +1 -1
  124. package/esm/object/someKey.js +3 -1
  125. package/esm/object/someKey.js.map +1 -1
  126. package/esm/object/someKey.spec.js +8 -1
  127. package/esm/object/someKey.spec.js.map +1 -1
  128. package/esm/predicates/CanAssign.spec.js +4 -3
  129. package/esm/predicates/CanAssign.spec.js.map +1 -1
  130. package/esm/predicates/Equal.d.ts +14 -18
  131. package/esm/predicates/Equal.d.ts.map +1 -1
  132. package/esm/predicates/Equal.js +0 -8
  133. package/esm/predicates/Equal.js.map +1 -1
  134. package/esm/predicates/Equal.spec.js +18 -0
  135. package/esm/predicates/Equal.spec.js.map +1 -1
  136. package/esm/predicates/IsAny.d.ts +3 -0
  137. package/esm/predicates/IsAny.d.ts.map +1 -0
  138. package/esm/predicates/IsAny.js +2 -0
  139. package/esm/predicates/IsAny.js.map +1 -0
  140. package/esm/predicates/index.d.ts +2 -3
  141. package/esm/predicates/index.d.ts.map +1 -1
  142. package/esm/predicates/index.js.map +1 -1
  143. package/esm/predicates/isType.d.ts +1 -1
  144. package/esm/predicates/isType.js +1 -1
  145. package/esm/predicates/isType.spec.js +16 -12
  146. package/esm/predicates/isType.spec.js.map +1 -1
  147. package/esm/predicates/logical.d.ts +4 -4
  148. package/esm/predicates/logical.d.ts.map +1 -1
  149. package/esm/utils/inspect.d.ts +1 -1
  150. package/esm/utils/inspect.d.ts.map +1 -1
  151. package/esm/utils/inspect.js.map +1 -1
  152. package/package.json +3 -3
  153. package/ts/array/UnionOfValues.ts +14 -10
  154. package/ts/array/index.ts +3 -4
  155. package/ts/function/ExtractFunction.ts +8 -2
  156. package/ts/functional/compose.ts +5 -1
  157. package/ts/object/filterKey.ts +5 -3
  158. package/ts/object/findKey.ts +4 -2
  159. package/ts/object/mapKey.ts +4 -2
  160. package/ts/object/reduceKey.ts +2 -2
  161. package/ts/object/someKey.ts +4 -2
  162. package/ts/predicates/Equal.ts +19 -23
  163. package/ts/predicates/IsAny.ts +3 -0
  164. package/ts/predicates/index.ts +2 -5
  165. package/ts/predicates/isType.ts +1 -1
  166. package/ts/predicates/logical.ts +26 -4
  167. package/ts/utils/inspect.ts +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"assertType.spec.js","sourceRoot":"","sources":["../../ts/assertion/assertType.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"assertType.spec.js","sourceRoot":"","sources":["../../ts/assertion/assertType.spec.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,15 @@
1
- import { AnyFunction } from './AnyFunction.js';
1
+ import type { AnyFunction } from './AnyFunction.js';
2
2
  /**
3
- * Extract the function signature from a composit type T.
3
+ * Extract the function signature from a composite type T.
4
4
  *
5
+ * It works with interact of functions, but not on function overloads and union.
5
6
  * @note does not work with function overloads.
6
7
  */
7
8
  export type ExtractFunction<T extends AnyFunction> = T extends AnyFunction<infer P, infer R> ? (...args: P) => R : never;
9
+ /**
10
+ * Extract the function signature from a composite function.
11
+ *
12
+ * @note does not work with function overloads.
13
+ */
8
14
  export declare function extractFunction<T extends AnyFunction>(fn: T): ExtractFunction<T>;
9
15
  //# sourceMappingURL=ExtractFunction.d.ts.map
@@ -1 +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;;;;GAIG;AACH,MAAM,MAAM,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;AAE7B,wBAAgB,eAAe,CAAC,CAAC,SAAS,WAAW,EAAE,EAAE,EAAE,CAAC,sBAE3D"}
1
+ {"version":3,"file":"ExtractFunction.d.ts","sourceRoot":"","sources":["../../ts/function/ExtractFunction.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAEnD;;;;;GAKG;AACH,MAAM,MAAM,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;AAE7B;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,CAAC,SAAS,WAAW,EAAE,EAAE,EAAE,CAAC,sBAE3D"}
@@ -1,6 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.extractFunction = void 0;
4
+ /**
5
+ * Extract the function signature from a composite function.
6
+ *
7
+ * @note does not work with function overloads.
8
+ */
4
9
  function extractFunction(fn) {
5
10
  return fn;
6
11
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ExtractFunction.js","sourceRoot":"","sources":["../../ts/function/ExtractFunction.ts"],"names":[],"mappings":";;;AAUA,SAAgB,eAAe,CAAwB,EAAK;IAC1D,OAAO,EAA+B,CAAA;AACxC,CAAC;AAFD,0CAEC"}
1
+ {"version":3,"file":"ExtractFunction.js","sourceRoot":"","sources":["../../ts/function/ExtractFunction.ts"],"names":[],"mappings":";;;AAWA;;;;GAIG;AACH,SAAgB,eAAe,CAAwB,EAAK;IAC1D,OAAO,EAA+B,CAAA;AACxC,CAAC;AAFD,0CAEC"}
@@ -1,17 +1,29 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
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();
4
+ describe("ExtraceFunction<T>", function () {
5
+ it('gets the function itself if it is not composite', function () {
6
+ index_js_1.isType.equal();
7
+ });
8
+ it('omits other props from the type', function () {
9
+ index_js_1.isType.equal();
10
+ });
11
+ it('works with intersact functions', function () {
12
+ index_js_1.isType.equal();
13
+ });
9
14
  });
10
15
  describe("".concat(index_js_1.extractFunction.name, "()"), function () {
11
- it('adjust type to its function type', function () {
16
+ it('adjusts type to its function type', function () {
12
17
  var fn = Object.assign(function () { }, { a: 1 });
13
18
  var r = (0, index_js_1.extractFunction)(fn);
14
19
  index_js_1.isType.equal();
15
20
  });
21
+ it('function overload', function () {
22
+ function foo(v) { return v; }
23
+ var fn = Object.assign(foo, { a: 1 });
24
+ var r = (0, index_js_1.extractFunction)(fn);
25
+ // @ts-expect-error
26
+ index_js_1.isType.equal();
27
+ });
16
28
  });
17
29
  //# sourceMappingURL=ExtractFunction.spec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ExtractFunction.spec.js","sourceRoot":"","sources":["../../ts/function/ExtractFunction.spec.ts"],"names":[],"mappings":";;AAAA,wCAAsE;AAEtE,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;AAEF,QAAQ,CAAC,UAAG,0BAAe,CAAC,IAAI,OAAI,EAAE;IACpC,EAAE,CAAC,kCAAkC,EAAE;QACrC,IAAM,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,cAAQ,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;QAE7C,IAAM,CAAC,GAAG,IAAA,0BAAe,EAAC,EAAE,CAAC,CAAA;QAE7B,iBAAM,CAAC,KAAK,EAAuB,CAAA;IACrC,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"ExtractFunction.spec.js","sourceRoot":"","sources":["../../ts/function/ExtractFunction.spec.ts"],"names":[],"mappings":";;AAAA,wCAAsE;AAEtE,QAAQ,CAAC,oBAAoB,EAAE;IAC7B,EAAE,CAAC,iDAAiD,EAAE;QAIpD,iBAAM,CAAC,KAAK,EAAc,CAAA;IAC5B,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,iCAAiC,EAAE;QAIpC,iBAAM,CAAC,KAAK,EAAuB,CAAA;IACrC,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,gCAAgC,EAAE;QAKnC,iBAAM,CAAC,KAAK,EAAc,CAAA;IAC5B,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA;AAEF,QAAQ,CAAC,UAAG,0BAAe,CAAC,IAAI,OAAI,EAAE;IACpC,EAAE,CAAC,mCAAmC,EAAE;QACtC,IAAM,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,cAAQ,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;QAE7C,IAAM,CAAC,GAAG,IAAA,0BAAe,EAAC,EAAE,CAAC,CAAA;QAE7B,iBAAM,CAAC,KAAK,EAAuB,CAAA;IACrC,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,mBAAmB,EAAE;QAGtB,SAAS,GAAG,CAAC,CAAU,IAAI,OAAO,CAAC,CAAA,CAAC,CAAC;QAErC,IAAM,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;QACvC,IAAM,CAAC,GAAG,IAAA,0BAAe,EAAC,EAAE,CAAC,CAAA;QAG7B,mBAAmB;QACnB,iBAAM,CAAC,KAAK,EAA8D,CAAA;IAC5E,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -1,7 +1,11 @@
1
1
  import type { Head, Last } from '../array/index.js';
2
2
  import type { AnyFunction } from '../function/AnyFunction.js';
3
3
  /**
4
- * compose functions
4
+ * Compose functions to produce a new function.
5
+ * @params args functions to be composed.
6
+ * Each function will receive the return value of the previous function as its parameters.
7
+ * @return The composed function will expect the parameters of the first function,
8
+ * and return the result of the last function.
5
9
  */
6
10
  export declare function compose<FS extends AnyFunction[]>(...fns: FS): (...args: Parameters<Head<FS>>) => ReturnType<Last<FS>>;
7
11
  //# sourceMappingURL=compose.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"compose.d.ts","sourceRoot":"","sources":["../../ts/functional/compose.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;AAE7D;;GAEG;AACH,wBAAgB,OAAO,CAAC,EAAE,SAAS,WAAW,EAAE,EAAE,GAAG,GAAG,EAAE,EAAE,GAAG,CAAC,GAAG,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,KAAK,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAGrH"}
1
+ {"version":3,"file":"compose.d.ts","sourceRoot":"","sources":["../../ts/functional/compose.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;AAE7D;;;;;;GAMG;AACH,wBAAgB,OAAO,CAAC,EAAE,SAAS,WAAW,EAAE,EAAE,GAAG,GAAG,EAAE,EAAE,GAAG,CAAC,GAAG,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,KAAK,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAGrH"}
@@ -2,7 +2,11 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.compose = void 0;
4
4
  /**
5
- * compose functions
5
+ * Compose functions to produce a new function.
6
+ * @params args functions to be composed.
7
+ * Each function will receive the return value of the previous function as its parameters.
8
+ * @return The composed function will expect the parameters of the first function,
9
+ * and return the result of the last function.
6
10
  */
7
11
  function compose() {
8
12
  var fns = [];
@@ -1 +1 @@
1
- {"version":3,"file":"compose.js","sourceRoot":"","sources":["../../ts/functional/compose.ts"],"names":[],"mappings":";;;AAGA;;GAEG;AACH,SAAgB,OAAO;IAA2B,aAAU;SAAV,UAAU,EAAV,qBAAU,EAAV,IAAU;QAAV,wBAAU;;IAC1D,+DAA+D;IAC/D,OAAO;QAAC,cAAc;aAAd,UAAc,EAAd,qBAAc,EAAd,IAAc;YAAd,yBAAc;;QAAK,OAAA,GAAG,CAAC,MAAM,CAAC,UAAC,IAAI,EAAE,EAAE,IAAK,OAAA,CAAC,EAAE,eAAI,IAAI,EAAE,EAAb,CAAa,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IAAhD,CAAgD,CAAA;AAC7E,CAAC;AAHD,0BAGC"}
1
+ {"version":3,"file":"compose.js","sourceRoot":"","sources":["../../ts/functional/compose.ts"],"names":[],"mappings":";;;AAGA;;;;;;GAMG;AACH,SAAgB,OAAO;IAA2B,aAAU;SAAV,UAAU,EAAV,qBAAU,EAAV,IAAU;QAAV,wBAAU;;IAC1D,+DAA+D;IAC/D,OAAO;QAAC,cAAc;aAAd,UAAc,EAAd,qBAAc,EAAd,IAAc;YAAd,yBAAc;;QAAK,OAAA,GAAG,CAAC,MAAM,CAAC,UAAC,IAAI,EAAE,EAAE,IAAK,OAAA,CAAC,EAAE,eAAI,IAAI,EAAE,EAAb,CAAa,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IAAhD,CAAgD,CAAA;AAC7E,CAAC;AAHD,0BAGC"}
@@ -1,3 +1,3 @@
1
- import { KeyTypes } from './KeyTypes.js';
2
- export declare function filterKey<S extends Record<KeyTypes, any>, T = any>(subject: S, predicate: (this: T, key: keyof S, index: number, obj: Array<keyof S>) => boolean, thisArg?: T): Array<keyof S>;
1
+ import type { KeyTypes } from './KeyTypes.js';
2
+ export declare function filterKey<S extends Record<KeyTypes, any>, T = any>(subject: S, predicate: (this: T, key: keyof S, index: number, obj: Array<keyof S>, subject: S) => boolean, thisArg?: T): Array<keyof S>;
3
3
  //# sourceMappingURL=filterKey.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"filterKey.d.ts","sourceRoot":"","sources":["../../ts/object/filterKey.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAExC,wBAAgB,SAAS,CAAC,CAAC,SAAS,MAAM,CAAC,QAAQ,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAChE,OAAO,EAAE,CAAC,EACV,SAAS,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,KAAK,OAAO,EACjF,OAAO,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAE7B"}
1
+ {"version":3,"file":"filterKey.d.ts","sourceRoot":"","sources":["../../ts/object/filterKey.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAE7C,wBAAgB,SAAS,CAAC,CAAC,SAAS,MAAM,CAAC,QAAQ,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAChE,OAAO,EAAE,CAAC,EACV,SAAS,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,KAAK,OAAO,EAC7F,OAAO,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAI7B"}
@@ -2,7 +2,9 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.filterKey = void 0;
4
4
  function filterKey(subject, predicate, thisArg) {
5
- return Object.keys(subject).filter(predicate, thisArg);
5
+ return Object.keys(subject).filter(function (k, i, a) {
6
+ return predicate.apply(this, [k, i, a, subject]);
7
+ }, thisArg);
6
8
  }
7
9
  exports.filterKey = filterKey;
8
10
  //# sourceMappingURL=filterKey.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"filterKey.js","sourceRoot":"","sources":["../../ts/object/filterKey.ts"],"names":[],"mappings":";;;AAEA,SAAgB,SAAS,CACvB,OAAU,EACV,SAAiF,EACjF,OAAW;IACX,OAAO,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;AACxD,CAAC;AALD,8BAKC"}
1
+ {"version":3,"file":"filterKey.js","sourceRoot":"","sources":["../../ts/object/filterKey.ts"],"names":[],"mappings":";;;AAEA,SAAgB,SAAS,CACvB,OAAU,EACV,SAA6F,EAC7F,OAAW;IACX,OAAO,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,UAAmB,CAAC,EAAE,CAAC,EAAE,CAAC;QAC3D,OAAO,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC,CAAA;IAClD,CAAC,EAAE,OAAO,CAAC,CAAA;AACb,CAAC;AAPD,8BAOC"}
@@ -10,4 +10,9 @@ test("return type is 'keyof subject'", function () {
10
10
  var actual = (0, index_js_1.filterKey)(subject, function (key) { return subject[key] > 1; });
11
11
  assert_1.default.deepStrictEqual(actual, ['b', 'c']);
12
12
  });
13
+ it('includes subject in callback', function () {
14
+ var subject = { a: 1, b: 2, c: 3 };
15
+ var actual = (0, index_js_1.filterKey)(subject, function (key, i, a, s) { return s[key] > 1; });
16
+ assert_1.default.deepStrictEqual(actual, ['b', 'c']);
17
+ });
13
18
  //# sourceMappingURL=filterKey.spec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"filterKey.spec.js","sourceRoot":"","sources":["../../ts/object/filterKey.spec.ts"],"names":[],"mappings":";;;;;AAAA,kDAAsB;AACtB,wCAAuC;AAEvC,IAAI,CAAC,gCAAgC,EAAE;IACrC,IAAM,OAAO,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAA;IACpC,IAAM,MAAM,GAAG,IAAA,oBAAS,EAAC,OAAO,EAAE,UAAA,GAAG,IAAI,OAAA,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAhB,CAAgB,CAAC,CAAA;IAC1D,gBAAC,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAA;AACvC,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"filterKey.spec.js","sourceRoot":"","sources":["../../ts/object/filterKey.spec.ts"],"names":[],"mappings":";;;;;AAAA,kDAAsB;AACtB,wCAAuC;AAEvC,IAAI,CAAC,gCAAgC,EAAE;IACrC,IAAM,OAAO,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAA;IACpC,IAAM,MAAM,GAAG,IAAA,oBAAS,EAAC,OAAO,EAAE,UAAA,GAAG,IAAI,OAAA,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAhB,CAAgB,CAAC,CAAA;IAC1D,gBAAC,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAA;AACvC,CAAC,CAAC,CAAA;AAEF,EAAE,CAAC,8BAA8B,EAAE;IACjC,IAAM,OAAO,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAA;IACpC,IAAM,MAAM,GAAG,IAAA,oBAAS,EAAC,OAAO,EAAE,UAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAK,OAAA,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAV,CAAU,CAAC,CAAA;IAC/D,gBAAC,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAA;AACvC,CAAC,CAAC,CAAA"}
@@ -1,3 +1,3 @@
1
1
  import { KeyTypes } from './KeyTypes.js';
2
- export declare function findKey<S extends Record<KeyTypes, any>, T = any>(subject: S, predicate: (this: T, key: keyof S, index: number, obj: Array<keyof S>) => boolean, thisArg?: T): keyof S | undefined;
2
+ export declare function findKey<S extends Record<KeyTypes, any>, T = any>(subject: S, predicate: (this: T, key: keyof S, index: number, obj: Array<keyof S>, subject: S) => boolean, thisArg?: T): keyof S | undefined;
3
3
  //# sourceMappingURL=findKey.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"findKey.d.ts","sourceRoot":"","sources":["../../ts/object/findKey.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAExC,wBAAgB,OAAO,CAAC,CAAC,SAAS,MAAM,CAAC,QAAQ,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAC9D,OAAO,EAAE,CAAC,EACV,SAAS,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,KAAK,OAAO,EACjF,OAAO,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,GAAG,SAAS,CAElC"}
1
+ {"version":3,"file":"findKey.d.ts","sourceRoot":"","sources":["../../ts/object/findKey.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAExC,wBAAgB,OAAO,CAAC,CAAC,SAAS,MAAM,CAAC,QAAQ,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAC9D,OAAO,EAAE,CAAC,EACV,SAAS,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,KAAK,OAAO,EAC7F,OAAO,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,GAAG,SAAS,CAIlC"}
@@ -2,7 +2,9 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.findKey = void 0;
4
4
  function findKey(subject, predicate, thisArg) {
5
- return Object.keys(subject).find(predicate, thisArg);
5
+ return Object.keys(subject).find(function (k, i, a) {
6
+ return predicate.apply(this, [k, i, a, subject]);
7
+ }, thisArg);
6
8
  }
7
9
  exports.findKey = findKey;
8
10
  //# sourceMappingURL=findKey.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"findKey.js","sourceRoot":"","sources":["../../ts/object/findKey.ts"],"names":[],"mappings":";;;AAEA,SAAgB,OAAO,CACrB,OAAU,EACV,SAAiF,EACjF,OAAW;IACX,OAAO,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;AACtD,CAAC;AALD,0BAKC"}
1
+ {"version":3,"file":"findKey.js","sourceRoot":"","sources":["../../ts/object/findKey.ts"],"names":[],"mappings":";;;AAEA,SAAgB,OAAO,CACrB,OAAU,EACV,SAA6F,EAC7F,OAAW;IACX,OAAO,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,UAAmB,CAAC,EAAE,CAAC,EAAE,CAAC;QACzD,OAAO,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC,CAAA;IAClD,CAAC,EAAE,OAAO,CAAC,CAAA;AACb,CAAC;AAPD,0BAOC"}
@@ -10,4 +10,9 @@ test('predicate key can be used as indexer of the subject', function () {
10
10
  var actual = (0, index_js_1.findKey)(subject, function (key) { return subject[key] === 2; });
11
11
  assert_1.default.strictEqual(actual, 'b');
12
12
  });
13
+ it('includes subject in callback', function () {
14
+ var subject = { a: 1, b: 2, c: 3 };
15
+ var actual = (0, index_js_1.findKey)(subject, function (key, i, a, s) { return s[key] === 2; });
16
+ assert_1.default.strictEqual(actual, 'b');
17
+ });
13
18
  //# sourceMappingURL=findKey.spec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"findKey.spec.js","sourceRoot":"","sources":["../../ts/object/findKey.spec.ts"],"names":[],"mappings":";;;;;AAAA,kDAAsB;AACtB,wCAAqC;AAErC,IAAI,CAAC,qDAAqD,EAAE;IAC1D,IAAM,OAAO,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAA;IACpC,IAAM,MAAM,GAAG,IAAA,kBAAO,EAAC,OAAO,EAAE,UAAA,GAAG,IAAI,OAAA,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAlB,CAAkB,CAAC,CAAA;IAC1D,gBAAC,CAAC,WAAW,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;AAC5B,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"findKey.spec.js","sourceRoot":"","sources":["../../ts/object/findKey.spec.ts"],"names":[],"mappings":";;;;;AAAA,kDAAsB;AACtB,wCAAqC;AAErC,IAAI,CAAC,qDAAqD,EAAE;IAC1D,IAAM,OAAO,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAA;IACpC,IAAM,MAAM,GAAG,IAAA,kBAAO,EAAC,OAAO,EAAE,UAAA,GAAG,IAAI,OAAA,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAlB,CAAkB,CAAC,CAAA;IAC1D,gBAAC,CAAC,WAAW,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;AAC5B,CAAC,CAAC,CAAA;AAEF,EAAE,CAAC,8BAA8B,EAAE;IACjC,IAAM,OAAO,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAA;IACpC,IAAM,MAAM,GAAG,IAAA,kBAAO,EAAC,OAAO,EAAE,UAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAK,OAAA,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,EAAZ,CAAY,CAAC,CAAA;IAC/D,gBAAC,CAAC,WAAW,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;AAC5B,CAAC,CAAC,CAAA"}
@@ -1,3 +1,3 @@
1
1
  import { KeyTypes } from './KeyTypes.js';
2
- export declare function mapKey<R, S extends Record<KeyTypes, any>, T = any>(subject: S, predicate: (this: T, key: keyof S, index: number, obj: Array<keyof S>) => R, thisArg?: T): R[];
2
+ export declare function mapKey<R, S extends Record<KeyTypes, any>, T = any>(subject: S, predicate: (this: T, key: keyof S, index: number, obj: Array<keyof S>, subject: S) => R, thisArg?: T): R[];
3
3
  //# sourceMappingURL=mapKey.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"mapKey.d.ts","sourceRoot":"","sources":["../../ts/object/mapKey.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAExC,wBAAgB,MAAM,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,QAAQ,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAChE,OAAO,EAAE,CAAC,EACV,SAAS,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,EAC3E,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAElB"}
1
+ {"version":3,"file":"mapKey.d.ts","sourceRoot":"","sources":["../../ts/object/mapKey.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAExC,wBAAgB,MAAM,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,QAAQ,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAChE,OAAO,EAAE,CAAC,EACV,SAAS,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,KAAK,CAAC,EACvF,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAIlB"}
@@ -2,7 +2,9 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.mapKey = void 0;
4
4
  function mapKey(subject, predicate, thisArg) {
5
- return Object.keys(subject).map(predicate, thisArg);
5
+ return Object.keys(subject).map(function (k, i, a) {
6
+ return predicate.apply(this, [k, i, a, subject]);
7
+ }, thisArg);
6
8
  }
7
9
  exports.mapKey = mapKey;
8
10
  //# sourceMappingURL=mapKey.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mapKey.js","sourceRoot":"","sources":["../../ts/object/mapKey.ts"],"names":[],"mappings":";;;AAEA,SAAgB,MAAM,CACpB,OAAU,EACV,SAA2E,EAC3E,OAAW;IACX,OAAO,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;AACrD,CAAC;AALD,wBAKC"}
1
+ {"version":3,"file":"mapKey.js","sourceRoot":"","sources":["../../ts/object/mapKey.ts"],"names":[],"mappings":";;;AAEA,SAAgB,MAAM,CACpB,OAAU,EACV,SAAuF,EACvF,OAAW;IACX,OAAO,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,UAAmB,CAAC,EAAE,CAAC,EAAE,CAAC;QACxD,OAAO,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC,CAAA;IAClD,CAAC,EAAE,OAAO,CAAC,CAAA;AACb,CAAC;AAPD,wBAOC"}
@@ -7,4 +7,9 @@ test('predicate key can be used as indexer of the subject', function () {
7
7
  var actual = (0, index_js_1.mapKey)(subject, function (key) { return subject[key] + 1; });
8
8
  assertron_1.a.satisfies(actual, [2, 3, 4]);
9
9
  });
10
+ it('includes subject in callback', function () {
11
+ var subject = { a: 1, b: 2, c: 3 };
12
+ var actual = (0, index_js_1.mapKey)(subject, function (key, i, a, s) { return s[key] + 1; });
13
+ assertron_1.a.satisfies(actual, [2, 3, 4]);
14
+ });
10
15
  //# sourceMappingURL=mapKey.spec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mapKey.spec.js","sourceRoot":"","sources":["../../ts/object/mapKey.spec.ts"],"names":[],"mappings":";;AAAA,uCAA6B;AAC7B,wCAAoC;AAEpC,IAAI,CAAC,qDAAqD,EAAE;IAC1D,IAAM,OAAO,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAA;IACpC,IAAM,MAAM,GAAG,IAAA,iBAAM,EAAC,OAAO,EAAE,UAAA,GAAG,IAAI,OAAA,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAhB,CAAgB,CAAC,CAAA;IACvD,aAAC,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;AAChC,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"mapKey.spec.js","sourceRoot":"","sources":["../../ts/object/mapKey.spec.ts"],"names":[],"mappings":";;AAAA,uCAA6B;AAC7B,wCAAoC;AAEpC,IAAI,CAAC,qDAAqD,EAAE;IAC1D,IAAM,OAAO,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAA;IACpC,IAAM,MAAM,GAAG,IAAA,iBAAM,EAAC,OAAO,EAAE,UAAA,GAAG,IAAI,OAAA,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAhB,CAAgB,CAAC,CAAA;IACvD,aAAC,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;AAChC,CAAC,CAAC,CAAA;AAEF,EAAE,CAAC,8BAA8B,EAAE;IACjC,IAAM,OAAO,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAA;IACpC,IAAM,MAAM,GAAG,IAAA,iBAAM,EAAC,OAAO,EAAE,UAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAK,OAAA,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAV,CAAU,CAAC,CAAA;IAC5D,aAAC,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;AAChC,CAAC,CAAC,CAAA"}
@@ -1,5 +1,5 @@
1
1
  import type { KeyTypes } from './KeyTypes.js';
2
- export declare function reduceByKey<S extends Record<KeyTypes, any>, T>(subject: S, callbackfn: (previousValue: T, key: keyof S, currentIndex: number, array: string[]) => T, initialValue: T): T;
2
+ export declare function reduceByKey<S extends Record<KeyTypes, any>, T>(subject: S, callbackfn: (previousValue: T, key: keyof S, currentIndex: number, array: string[], subject: S) => T, initialValue: T): T;
3
3
  /**
4
4
  * @deprecated renamed to reduceByKey
5
5
  */
@@ -1 +1 @@
1
- {"version":3,"file":"reduceKey.d.ts","sourceRoot":"","sources":["../../ts/object/reduceKey.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAE7C,wBAAgB,WAAW,CAAC,CAAC,SAAS,MAAM,CAAC,QAAQ,EAAE,GAAG,CAAC,EAAE,CAAC,EAC5D,OAAO,EAAE,CAAC,EACV,UAAU,EAAE,CAAC,aAAa,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,EACxF,YAAY,EAAE,CAAC,GAAG,CAAC,CAEpB;AAED;;GAEG;AACH,eAAO,MAAM,SAAS,oBAAc,CAAA"}
1
+ {"version":3,"file":"reduceKey.d.ts","sourceRoot":"","sources":["../../ts/object/reduceKey.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAE7C,wBAAgB,WAAW,CAAC,CAAC,SAAS,MAAM,CAAC,QAAQ,EAAE,GAAG,CAAC,EAAE,CAAC,EAC5D,OAAO,EAAE,CAAC,EACV,UAAU,EAAE,CAAC,aAAa,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,CAAC,KAAK,CAAC,EACpG,YAAY,EAAE,CAAC,GAAG,CAAC,CAEpB;AAED;;GAEG;AACH,eAAO,MAAM,SAAS,oBAAc,CAAA"}
@@ -2,7 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.reduceKey = exports.reduceByKey = void 0;
4
4
  function reduceByKey(subject, callbackfn, initialValue) {
5
- return Object.keys(subject).reduce(callbackfn, initialValue);
5
+ return Object.keys(subject).reduce(function (p, k, i, a) { return callbackfn(p, k, i, a, subject); }, initialValue);
6
6
  }
7
7
  exports.reduceByKey = reduceByKey;
8
8
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"reduceKey.js","sourceRoot":"","sources":["../../ts/object/reduceKey.ts"],"names":[],"mappings":";;;AAEA,SAAgB,WAAW,CACzB,OAAU,EACV,UAAwF,EACxF,YAAe;IACf,OAAO,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,UAAiB,EAAE,YAAY,CAAC,CAAA;AACrE,CAAC;AALD,kCAKC;AAED;;GAEG;AACU,QAAA,SAAS,GAAG,WAAW,CAAA"}
1
+ {"version":3,"file":"reduceKey.js","sourceRoot":"","sources":["../../ts/object/reduceKey.ts"],"names":[],"mappings":";;;AAEA,SAAgB,WAAW,CACzB,OAAU,EACV,UAAoG,EACpG,YAAe;IACf,OAAO,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,UAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAK,OAAA,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,EAA/B,CAA+B,EAAE,YAAY,CAAC,CAAA;AACnG,CAAC;AALD,kCAKC;AAED;;GAEG;AACU,QAAA,SAAS,GAAG,WAAW,CAAA"}
@@ -19,4 +19,9 @@ test('key type is string if subject type is plain object', function () {
19
19
  var actual = (0, index_js_1.reduceKey)(subject, function (p, k) { return p += subject[k]; }, 'a');
20
20
  assert_1.default.strictEqual(actual, 'a1');
21
21
  });
22
+ it('includes subject in callback', function () {
23
+ var subject = { a: 1, b: 2, c: 3 };
24
+ var actual = (0, index_js_1.reduceByKey)(subject, function (p, k, i, a, s) { return p += s[k]; }, 'a');
25
+ assert_1.default.strictEqual(actual, 'a123');
26
+ });
22
27
  //# sourceMappingURL=reduceKey.spec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"reduceKey.spec.js","sourceRoot":"","sources":["../../ts/object/reduceKey.spec.ts"],"names":[],"mappings":";;;;;AAAA,kDAAsB;AACtB,wCAAuC;AAEvC,IAAI,CAAC,qDAAqD,EAAE;IAC1D,IAAM,OAAO,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAA;IACpC,IAAM,MAAM,GAAG,IAAA,oBAAS,EAAC,OAAO,EAAE,UAAC,CAAC,EAAE,CAAC,IAAK,OAAA,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,EAAf,CAAe,EAAE,GAAG,CAAC,CAAA;IACjE,gBAAC,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;AAC/B,CAAC,CAAC,CAAA;AAEF,2CAA2C;AAC3C,sFAAsF;AACtF,+BAA+B;AAC/B,IAAI,CAAC,oDAAoD,EAAE;IACzD,wDAAwD;IACxD,IAAM,OAAO,GAAO,EAAE,CAAC,EAAE,CAAC,EAAE,CAAA;IAC5B,IAAM,MAAM,GAAG,IAAA,oBAAS,EAAC,OAAO,EAAE,UAAC,CAAC,EAAE,CAAC,IAAK,OAAA,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,EAAf,CAAe,EAAE,GAAG,CAAC,CAAA;IACjE,gBAAC,CAAC,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;AAC7B,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"reduceKey.spec.js","sourceRoot":"","sources":["../../ts/object/reduceKey.spec.ts"],"names":[],"mappings":";;;;;AAAA,kDAAsB;AACtB,wCAAoD;AAEpD,IAAI,CAAC,qDAAqD,EAAE;IAC1D,IAAM,OAAO,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAA;IACpC,IAAM,MAAM,GAAG,IAAA,oBAAS,EAAC,OAAO,EAAE,UAAC,CAAC,EAAE,CAAC,IAAK,OAAA,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,EAAf,CAAe,EAAE,GAAG,CAAC,CAAA;IACjE,gBAAC,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;AAC/B,CAAC,CAAC,CAAA;AAEF,2CAA2C;AAC3C,sFAAsF;AACtF,+BAA+B;AAC/B,IAAI,CAAC,oDAAoD,EAAE;IACzD,wDAAwD;IACxD,IAAM,OAAO,GAAO,EAAE,CAAC,EAAE,CAAC,EAAE,CAAA;IAC5B,IAAM,MAAM,GAAG,IAAA,oBAAS,EAAC,OAAO,EAAE,UAAC,CAAC,EAAE,CAAC,IAAK,OAAA,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,EAAf,CAAe,EAAE,GAAG,CAAC,CAAA;IACjE,gBAAC,CAAC,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;AAC7B,CAAC,CAAC,CAAA;AAEF,EAAE,CAAC,8BAA8B,EAAE;IACjC,IAAM,OAAO,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAA;IACpC,IAAM,MAAM,GAAG,IAAA,sBAAW,EAAC,OAAO,EAAE,UAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAK,OAAA,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAT,CAAS,EAAE,GAAG,CAAC,CAAA;IACtE,gBAAC,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;AAC/B,CAAC,CAAC,CAAA"}
@@ -1,3 +1,3 @@
1
1
  import type { KeyTypes } from './KeyTypes.js';
2
- export declare function someKey<S extends Record<KeyTypes, any>, T = any>(subject: S, predicate: (this: T, key: keyof S, index: number, array: string[]) => unknown, thisArg?: T): boolean;
2
+ export declare function someKey<S extends Record<KeyTypes, any>, T = any>(subject: S, predicate: (this: T, key: keyof S, index: number, array: string[], subject: S) => unknown, thisArg?: T): boolean;
3
3
  //# sourceMappingURL=someKey.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"someKey.d.ts","sourceRoot":"","sources":["../../ts/object/someKey.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAE7C,wBAAgB,OAAO,CAAC,CAAC,SAAS,MAAM,CAAC,QAAQ,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAC9D,OAAO,EAAE,CAAC,EACV,SAAS,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,OAAO,EAC7E,OAAO,CAAC,EAAE,CAAC,GACV,OAAO,CAET"}
1
+ {"version":3,"file":"someKey.d.ts","sourceRoot":"","sources":["../../ts/object/someKey.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAE7C,wBAAgB,OAAO,CAAC,CAAC,SAAS,MAAM,CAAC,QAAQ,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAC9D,OAAO,EAAE,CAAC,EACV,SAAS,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,CAAC,KAAK,OAAO,EACzF,OAAO,CAAC,EAAE,CAAC,GACV,OAAO,CAIT"}
@@ -2,7 +2,9 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.someKey = void 0;
4
4
  function someKey(subject, predicate, thisArg) {
5
- return Object.keys(subject).some(predicate, thisArg);
5
+ return Object.keys(subject).some(function (k, i, a) {
6
+ return predicate.apply(this, [k, i, a, subject]);
7
+ }, thisArg);
6
8
  }
7
9
  exports.someKey = someKey;
8
10
  //# sourceMappingURL=someKey.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"someKey.js","sourceRoot":"","sources":["../../ts/object/someKey.ts"],"names":[],"mappings":";;;AAEA,SAAgB,OAAO,CACrB,OAAU,EACV,SAA6E,EAC7E,OAAW;IAEX,OAAO,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;AACtD,CAAC;AAND,0BAMC"}
1
+ {"version":3,"file":"someKey.js","sourceRoot":"","sources":["../../ts/object/someKey.ts"],"names":[],"mappings":";;;AAEA,SAAgB,OAAO,CACrB,OAAU,EACV,SAAyF,EACzF,OAAW;IAEX,OAAO,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,UAAmB,CAAC,EAAE,CAAC,EAAE,CAAC;QACzD,OAAO,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC,CAAA;IAClD,CAAC,EAAE,OAAO,CAAC,CAAA;AACb,CAAC;AARD,0BAQC"}
@@ -1,8 +1,18 @@
1
1
  "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
2
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
+ var assert_1 = __importDefault(require("assert"));
3
7
  var index_js_1 = require("../index.js");
4
8
  test('predicate key can be used as indexer of the subject', function () {
5
9
  var subject = { a: 1, b: 2, c: 3 };
6
10
  expect((0, index_js_1.someKey)(subject, function (key) { return subject[key] === 2; })).toBe(true);
7
11
  });
12
+ it('includes subject in callback', function () {
13
+ var subject = { a: 1, b: 2, c: 3 };
14
+ var actual = (0, index_js_1.someKey)(subject, function (k, i, a, s) { return s[k] === 2; });
15
+ index_js_1.isType.equal();
16
+ assert_1.default.strictEqual(actual, true);
17
+ });
8
18
  //# sourceMappingURL=someKey.spec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"someKey.spec.js","sourceRoot":"","sources":["../../ts/object/someKey.spec.ts"],"names":[],"mappings":";;AAAA,wCAAqC;AAErC,IAAI,CAAC,qDAAqD,EAAE;IAC1D,IAAM,OAAO,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAA;IACpC,MAAM,CAAC,IAAA,kBAAO,EAAC,OAAO,EAAE,UAAA,GAAG,IAAI,OAAA,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAlB,CAAkB,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AAChE,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"someKey.spec.js","sourceRoot":"","sources":["../../ts/object/someKey.spec.ts"],"names":[],"mappings":";;;;;AAAA,kDAAsB;AACtB,wCAA6C;AAE7C,IAAI,CAAC,qDAAqD,EAAE;IAC1D,IAAM,OAAO,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAA;IACpC,MAAM,CAAC,IAAA,kBAAO,EAAC,OAAO,EAAE,UAAA,GAAG,IAAI,OAAA,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAlB,CAAkB,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AAChE,CAAC,CAAC,CAAA;AAEF,EAAE,CAAC,8BAA8B,EAAE;IACjC,IAAM,OAAO,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAA;IACpC,IAAM,MAAM,GAAG,IAAA,kBAAO,EAAC,OAAO,EAAE,UAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAK,OAAA,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EAAV,CAAU,CAAC,CAAA;IAC3D,iBAAM,CAAC,KAAK,EAAgC,CAAA;IAC5C,gBAAC,CAAC,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;AAC7B,CAAC,CAAC,CAAA"}
@@ -47,9 +47,10 @@ describe('canAssign()', function () {
47
47
  var t = (0, index_js_1.canAssign)(false);
48
48
  index_js_1.assertType.isTrue(t(undefined));
49
49
  index_js_1.assertType.isTrue(t({ a: 1 }));
50
- // these fails
51
- // t({ a: '' })
52
- // t({ a: '', b: '' })
50
+ // @ts-expect-error
51
+ t({ a: '' });
52
+ // @ts-expect-error
53
+ t({ a: '', b: '' });
53
54
  });
54
55
  });
55
56
  });
@@ -1 +1 @@
1
- {"version":3,"file":"CanAssign.spec.js","sourceRoot":"","sources":["../../ts/predicates/CanAssign.spec.ts"],"names":[],"mappings":";;AAAA,wCAA8D;AAE9D,QAAQ,CAAC,iBAAiB,EAAE;IAC1B,IAAI,CAAC,uBAAuB,EAAE;QAC5B,qBAAU,CAAC,MAAM,CAAC,IAA4B,CAAC,CAAA;QAC/C,qBAAU,CAAC,MAAM,CAAC,IAAuB,CAAC,CAAA;QAC1C,qBAAU,CAAC,MAAM,CAAC,IAAiC,CAAC,CAAA;QACpD,qBAAU,CAAC,MAAM,CAAC,IAA8B,CAAC,CAAA;QACjD,qBAAU,CAAC,MAAM,CAAC,IAA2B,CAAC,CAAA;QAC9C,qBAAU,CAAC,MAAM,CAAC,IAAiC,CAAC,CAAA;QACpD,qBAAU,CAAC,MAAM,CAAC,IAAiC,CAAC,CAAA;QACpD,qBAAU,CAAC,MAAM,CAAC,IAAgC,CAAC,CAAA;QACnD,qBAAU,CAAC,MAAM,CAAC,IAAmC,CAAC,CAAA;IACxD,CAAC,CAAC,CAAA;IACF,IAAI,CAAC,iCAAiC,EAAE;QACtC,qBAAU,CAAC,OAAO,CAAC,KAA6B,CAAC,CAAA;QACjD,qBAAU,CAAC,OAAO,CAAC,KAA+B,CAAC,CAAA;QACnD,qBAAU,CAAC,OAAO,CAAC,KAA+B,CAAC,CAAA;QACnD,qBAAU,CAAC,OAAO,CAAC,KAA+B,CAAC,CAAA;QACnD,qBAAU,CAAC,OAAO,CAAC,KAAkC,CAAC,CAAA;QACtD,qBAAU,CAAC,OAAO,CAAC,KAAiC,CAAC,CAAA;IACvD,CAAC,CAAC,CAAA;IACF,IAAI,CAAC,sBAAsB,EAAE;QAC3B,qBAAU,CAAC,MAAM,CAAC,IAA0D,CAAC,CAAA;IAC/E,CAAC,CAAC,CAAA;IACF,IAAI,CAAC,2BAA2B,EAAE;QAChC,qBAAU,CAAC,OAAO,CAAC,KAA2D,CAAC,CAAA;IACjF,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA;AAEF,QAAQ,CAAC,aAAa,EAAE;IACtB,QAAQ,CAAC,iBAAiB,EAAE;QAC1B,IAAI,CAAC,oDAAoD,EAAE;YACzD,qBAAU,CAAC,MAAM,CAAC,IAAA,oBAAS,GAAiB,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAA;YACzD,qBAAU,CAAC,MAAM,CAAC,IAAA,oBAAS,GAAiB,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAA;YAEjE,wBAAwB;YACxB,uCAAuC;QACzC,CAAC,CAAC,CAAA;QACF,IAAI,CAAC,4CAA4C,EAAE;YACjD,IAAM,CAAC,GAAG,EAAE,CAAA;YACZ,qBAAU,CAAC,MAAM,CAAC,IAAA,oBAAS,GAAM,CAAC,CAAC,CAAC,CAAC,CAAA;QACvC,CAAC,CAAC,CAAA;QACF,IAAI,CAAC,qBAAqB,EAAE;YAC1B,qBAAU,CAAC,MAAM,CAAC,IAAA,oBAAS,GAAsB,CAAC,SAAS,CAAC,CAAC,CAAA;QAC/D,CAAC,CAAC,CAAA;QACF,IAAI,CAAC,iBAAiB,EAAE;YACtB,IAAM,CAAC,GAAG,IAAA,oBAAS,EAAgB,KAAK,CAAC,CAAA;YACzC,qBAAU,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAA;YAC/B,qBAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;YAE9B,cAAc;YACd,eAAe;YACf,sBAAsB;QACxB,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"CanAssign.spec.js","sourceRoot":"","sources":["../../ts/predicates/CanAssign.spec.ts"],"names":[],"mappings":";;AAAA,wCAA8D;AAE9D,QAAQ,CAAC,iBAAiB,EAAE;IAC1B,IAAI,CAAC,uBAAuB,EAAE;QAC5B,qBAAU,CAAC,MAAM,CAAC,IAA4B,CAAC,CAAA;QAC/C,qBAAU,CAAC,MAAM,CAAC,IAAuB,CAAC,CAAA;QAC1C,qBAAU,CAAC,MAAM,CAAC,IAAiC,CAAC,CAAA;QACpD,qBAAU,CAAC,MAAM,CAAC,IAA8B,CAAC,CAAA;QACjD,qBAAU,CAAC,MAAM,CAAC,IAA2B,CAAC,CAAA;QAC9C,qBAAU,CAAC,MAAM,CAAC,IAAiC,CAAC,CAAA;QACpD,qBAAU,CAAC,MAAM,CAAC,IAAiC,CAAC,CAAA;QACpD,qBAAU,CAAC,MAAM,CAAC,IAAgC,CAAC,CAAA;QACnD,qBAAU,CAAC,MAAM,CAAC,IAAmC,CAAC,CAAA;IACxD,CAAC,CAAC,CAAA;IACF,IAAI,CAAC,iCAAiC,EAAE;QACtC,qBAAU,CAAC,OAAO,CAAC,KAA6B,CAAC,CAAA;QACjD,qBAAU,CAAC,OAAO,CAAC,KAA+B,CAAC,CAAA;QACnD,qBAAU,CAAC,OAAO,CAAC,KAA+B,CAAC,CAAA;QACnD,qBAAU,CAAC,OAAO,CAAC,KAA+B,CAAC,CAAA;QACnD,qBAAU,CAAC,OAAO,CAAC,KAAkC,CAAC,CAAA;QACtD,qBAAU,CAAC,OAAO,CAAC,KAAiC,CAAC,CAAA;IACvD,CAAC,CAAC,CAAA;IACF,IAAI,CAAC,sBAAsB,EAAE;QAC3B,qBAAU,CAAC,MAAM,CAAC,IAA0D,CAAC,CAAA;IAC/E,CAAC,CAAC,CAAA;IACF,IAAI,CAAC,2BAA2B,EAAE;QAChC,qBAAU,CAAC,OAAO,CAAC,KAA2D,CAAC,CAAA;IACjF,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA;AAEF,QAAQ,CAAC,aAAa,EAAE;IACtB,QAAQ,CAAC,iBAAiB,EAAE;QAC1B,IAAI,CAAC,oDAAoD,EAAE;YACzD,qBAAU,CAAC,MAAM,CAAC,IAAA,oBAAS,GAAiB,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAA;YACzD,qBAAU,CAAC,MAAM,CAAC,IAAA,oBAAS,GAAiB,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAA;YAEjE,wBAAwB;YACxB,uCAAuC;QACzC,CAAC,CAAC,CAAA;QACF,IAAI,CAAC,4CAA4C,EAAE;YACjD,IAAM,CAAC,GAAG,EAAE,CAAA;YACZ,qBAAU,CAAC,MAAM,CAAC,IAAA,oBAAS,GAAM,CAAC,CAAC,CAAC,CAAC,CAAA;QACvC,CAAC,CAAC,CAAA;QACF,IAAI,CAAC,qBAAqB,EAAE;YAC1B,qBAAU,CAAC,MAAM,CAAC,IAAA,oBAAS,GAAsB,CAAC,SAAS,CAAC,CAAC,CAAA;QAC/D,CAAC,CAAC,CAAA;QACF,IAAI,CAAC,iBAAiB,EAAE;YACtB,IAAM,CAAC,GAAG,IAAA,oBAAS,EAAgB,KAAK,CAAC,CAAA;YACzC,qBAAU,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAA;YAC/B,qBAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;YAE9B,mBAAmB;YACnB,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;YACZ,mBAAmB;YACnB,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;QACrB,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -1,23 +1,19 @@
1
+ import type { IsAny } from './IsAny.js';
2
+ import type { And, Or } from './logical.js';
1
3
  /**
2
- * `<T>() => T extends A ? 1 : 2` idea originate from `typepark`
3
- * But it does not work with union types.
4
- *
5
- * `<T>() => T extends A` is a trick to create an inferred type `T`.
6
- * This is needed for `boolean`, `string`, and `number`,
7
- * as they supports literal types.
4
+ * Checks if the two types are equal.
8
5
  */
9
- import { IsNever } from '../PrimitiveTypes.js';
6
+ export type Equal<A, B, Then = true, Else = false> = [A, B] extends [B, A] ? And<IsAny<A>, IsAny<B>, Then, Or<IsAny<A>, IsAny<B>, Else, Then>> : Else;
10
7
  /**
11
- * Checks if two types are equal.
8
+ * Checks if the two types are equal.
12
9
  */
13
- export type Equal<A, B, Then = true, Else = false> = [
14
- A,
15
- B
16
- ] extends [object, object] ? (IsNever<A> extends true ? (IsNever<B> extends true ? Then : Else) : (A extends B ? B extends A ? Then : Else : Else)) : (<T>() => T extends A ? 1 : 2) extends (<T>() => T extends B ? 1 : 2) ? Then : Else;
17
- export type IsEqual<A, B> = Equal<A, B>;
18
- export type NotEqual<A, B, Then = true, Else = false> = [
19
- A,
20
- B
21
- ] extends [object, object] ? (IsNever<A> extends true ? (IsNever<B> extends true ? Else : Then) : (A extends B ? B extends A ? Else : Then : Then)) : (<T>() => T extends A ? 1 : 2) extends (<T>() => T extends B ? 1 : 2) ? Else : Then;
22
- export type IsNotEqual<A, B> = NotEqual<A, B>;
10
+ export type IsEqual<A, B, Then = true, Else = false> = Equal<A, B, Then, Else>;
11
+ /**
12
+ * Check if the two types are not equal
13
+ */
14
+ export type NotEqual<A, B, Then = true, Else = false> = Equal<A, B, Else, Then>;
15
+ /**
16
+ * Check if the two types are not equal
17
+ */
18
+ export type IsNotEqual<A, B, Then = true, Else = false> = NotEqual<A, B, Then, Else>;
23
19
  //# sourceMappingURL=Equal.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Equal.d.ts","sourceRoot":"","sources":["../../ts/predicates/Equal.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AAE9C;;GAEG;AACH,MAAM,MAAM,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAC/C;IAAC,CAAC;IAAE,CAAC;CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,GAC7B,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,IAAI,GACtB,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC,GACvC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,GACnD,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,GAAG,IAAI,CAAA;AACvF,MAAM,MAAM,OAAO,CAAC,CAAC,EAAE,CAAC,IAAI,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;AAEvC,MAAM,MAAM,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAClD;IAAC,CAAC;IAAE,CAAC;CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,GAC7B,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,IAAI,GACtB,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC,GACvC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,GACnD,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,GAAG,IAAI,CAAA;AAEvF,MAAM,MAAM,UAAU,CAAC,CAAC,EAAE,CAAC,IAAI,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"Equal.d.ts","sourceRoot":"","sources":["../../ts/predicates/Equal.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AACvC,OAAO,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,MAAM,cAAc,CAAA;AAE3C;;GAEG;AACH,MAAM,MAAM,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,GACtE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,EACtB,IAAI,EACJ,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,GACnC,IAAI,CAAA;AAER;;GAEG;AACH,MAAM,MAAM,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAE9E;;GAEG;AACH,MAAM,MAAM,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAE/E;;GAEG;AACH,MAAM,MAAM,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA"}
@@ -1,11 +1,3 @@
1
1
  "use strict";
2
- /**
3
- * `<T>() => T extends A ? 1 : 2` idea originate from `typepark`
4
- * But it does not work with union types.
5
- *
6
- * `<T>() => T extends A` is a trick to create an inferred type `T`.
7
- * This is needed for `boolean`, `string`, and `number`,
8
- * as they supports literal types.
9
- */
10
2
  Object.defineProperty(exports, "__esModule", { value: true });
11
3
  //# sourceMappingURL=Equal.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Equal.js","sourceRoot":"","sources":["../../ts/predicates/Equal.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG"}
1
+ {"version":3,"file":"Equal.js","sourceRoot":"","sources":["../../ts/predicates/Equal.ts"],"names":[],"mappings":""}
@@ -80,6 +80,24 @@ describe('Equal<A, B>', function () {
80
80
  it('works with union types containing symbol', function () {
81
81
  index_js_1.assertType.isFalse(false);
82
82
  });
83
+ it('works with intersect objects', function () {
84
+ index_js_1.assertType.isTrue(true);
85
+ index_js_1.assertType.isFalse(false);
86
+ });
87
+ it('works with union of functions', function () {
88
+ index_js_1.assertType.isTrue(true);
89
+ index_js_1.assertType.isFalse(false);
90
+ index_js_1.assertType.isFalse(false);
91
+ });
92
+ it('works against any', function () {
93
+ index_js_1.assertType.isTrue(true);
94
+ index_js_1.assertType.isFalse(false);
95
+ index_js_1.assertType.isFalse(false);
96
+ });
97
+ it('works against function overload', function () {
98
+ function foo(v) { return v; }
99
+ index_js_1.assertType.isTrue(true);
100
+ });
83
101
  });
84
102
  describe('NotEqual<A, B>', function () {
85
103
  test('boolean', function () {