type-plus 5.0.0 → 5.2.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 +1 -0
- package/cjs/object/filterKey.d.ts +2 -2
- package/cjs/object/filterKey.d.ts.map +1 -1
- package/cjs/object/filterKey.js +3 -1
- package/cjs/object/filterKey.js.map +1 -1
- package/cjs/object/filterKey.spec.js +5 -0
- package/cjs/object/filterKey.spec.js.map +1 -1
- package/cjs/object/findKey.d.ts +1 -1
- package/cjs/object/findKey.d.ts.map +1 -1
- package/cjs/object/findKey.js +3 -1
- package/cjs/object/findKey.js.map +1 -1
- package/cjs/object/findKey.spec.js +5 -0
- package/cjs/object/findKey.spec.js.map +1 -1
- package/cjs/object/mapKey.d.ts +1 -1
- package/cjs/object/mapKey.d.ts.map +1 -1
- package/cjs/object/mapKey.js +3 -1
- package/cjs/object/mapKey.js.map +1 -1
- package/cjs/object/mapKey.spec.js +5 -0
- package/cjs/object/mapKey.spec.js.map +1 -1
- package/cjs/object/reduceKey.d.ts +1 -1
- package/cjs/object/reduceKey.d.ts.map +1 -1
- package/cjs/object/reduceKey.js +1 -1
- package/cjs/object/reduceKey.js.map +1 -1
- package/cjs/object/reduceKey.spec.js +5 -0
- package/cjs/object/reduceKey.spec.js.map +1 -1
- package/cjs/object/someKey.d.ts +1 -1
- package/cjs/object/someKey.d.ts.map +1 -1
- package/cjs/object/someKey.js +3 -1
- package/cjs/object/someKey.js.map +1 -1
- package/cjs/object/someKey.spec.js +10 -0
- package/cjs/object/someKey.spec.js.map +1 -1
- package/cjs/promise/PromiseValue.d.ts +1 -0
- package/cjs/promise/PromiseValue.d.ts.map +1 -1
- package/cjs/utils/index.d.ts +1 -0
- package/cjs/utils/index.d.ts.map +1 -1
- package/cjs/utils/index.js +1 -0
- package/cjs/utils/index.js.map +1 -1
- package/cjs/utils/inspect.d.ts +5 -0
- package/cjs/utils/inspect.d.ts.map +1 -0
- package/cjs/utils/inspect.js +12 -0
- package/cjs/utils/inspect.js.map +1 -0
- package/cjs/utils/inspect.spec.d.ts +2 -0
- package/cjs/utils/inspect.spec.d.ts.map +1 -0
- package/cjs/utils/inspect.spec.js +17 -0
- package/cjs/utils/inspect.spec.js.map +1 -0
- package/esm/object/filterKey.d.ts +2 -2
- package/esm/object/filterKey.d.ts.map +1 -1
- package/esm/object/filterKey.js +3 -1
- package/esm/object/filterKey.js.map +1 -1
- package/esm/object/filterKey.spec.js +5 -0
- package/esm/object/filterKey.spec.js.map +1 -1
- package/esm/object/findKey.d.ts +1 -1
- package/esm/object/findKey.d.ts.map +1 -1
- package/esm/object/findKey.js +3 -1
- package/esm/object/findKey.js.map +1 -1
- package/esm/object/findKey.spec.js +5 -0
- package/esm/object/findKey.spec.js.map +1 -1
- package/esm/object/mapKey.d.ts +1 -1
- package/esm/object/mapKey.d.ts.map +1 -1
- package/esm/object/mapKey.js +3 -1
- package/esm/object/mapKey.js.map +1 -1
- package/esm/object/mapKey.spec.js +5 -0
- package/esm/object/mapKey.spec.js.map +1 -1
- package/esm/object/reduceKey.d.ts +1 -1
- package/esm/object/reduceKey.d.ts.map +1 -1
- package/esm/object/reduceKey.js +1 -1
- package/esm/object/reduceKey.js.map +1 -1
- package/esm/object/reduceKey.spec.js +6 -1
- package/esm/object/reduceKey.spec.js.map +1 -1
- package/esm/object/someKey.d.ts +1 -1
- package/esm/object/someKey.d.ts.map +1 -1
- package/esm/object/someKey.js +3 -1
- package/esm/object/someKey.js.map +1 -1
- package/esm/object/someKey.spec.js +8 -1
- package/esm/object/someKey.spec.js.map +1 -1
- package/esm/promise/PromiseValue.d.ts +1 -0
- package/esm/promise/PromiseValue.d.ts.map +1 -1
- package/esm/utils/index.d.ts +1 -0
- package/esm/utils/index.d.ts.map +1 -1
- package/esm/utils/index.js +1 -0
- package/esm/utils/index.js.map +1 -1
- package/esm/utils/inspect.d.ts +5 -0
- package/esm/utils/inspect.d.ts.map +1 -0
- package/esm/utils/inspect.js +8 -0
- package/esm/utils/inspect.js.map +1 -0
- package/esm/utils/inspect.spec.d.ts +2 -0
- package/esm/utils/inspect.spec.d.ts.map +1 -0
- package/esm/utils/inspect.spec.js +15 -0
- package/esm/utils/inspect.spec.js.map +1 -0
- package/package.json +5 -3
- package/ts/object/filterKey.ts +5 -3
- package/ts/object/findKey.ts +4 -2
- package/ts/object/mapKey.ts +4 -2
- package/ts/object/reduceKey.ts +2 -2
- package/ts/object/someKey.ts +4 -2
- package/ts/promise/PromiseValue.ts +1 -0
- package/ts/utils/index.ts +1 -0
- package/ts/utils/inspect.ts +7 -0
package/README.md
CHANGED
|
@@ -557,6 +557,7 @@ nominalMatch(b1, b2) // false
|
|
|
557
557
|
- `AnyFunction<P, R>`: a generic type for any function
|
|
558
558
|
- `ExtractFunction<F>`: extract the function signature from a type `F`.
|
|
559
559
|
- `extractFunction(fn: F)`: adjust type of `fn` to its function signature only.
|
|
560
|
+
- `inspect<T>(value: T, inspector: (v: T) => void)`: inspect a value and return it.
|
|
560
561
|
|
|
561
562
|
## Functional Types
|
|
562
563
|
|
|
@@ -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
|
|
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;
|
|
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"}
|
package/cjs/object/filterKey.js
CHANGED
|
@@ -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(
|
|
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,
|
|
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"}
|
package/cjs/object/findKey.d.ts
CHANGED
|
@@ -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
|
|
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,
|
|
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"}
|
package/cjs/object/findKey.js
CHANGED
|
@@ -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(
|
|
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,
|
|
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"}
|
package/cjs/object/mapKey.d.ts
CHANGED
|
@@ -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
|
|
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,
|
|
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"}
|
package/cjs/object/mapKey.js
CHANGED
|
@@ -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(
|
|
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
|
package/cjs/object/mapKey.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mapKey.js","sourceRoot":"","sources":["../../ts/object/mapKey.ts"],"names":[],"mappings":";;;AAEA,SAAgB,MAAM,CACpB,OAAU,EACV,
|
|
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,
|
|
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"}
|
package/cjs/object/reduceKey.js
CHANGED
|
@@ -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,
|
|
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,
|
|
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"}
|
package/cjs/object/someKey.d.ts
CHANGED
|
@@ -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,
|
|
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"}
|
package/cjs/object/someKey.js
CHANGED
|
@@ -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(
|
|
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,
|
|
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":"
|
|
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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PromiseValue.d.ts","sourceRoot":"","sources":["../../ts/promise/PromiseValue.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"PromiseValue.d.ts","sourceRoot":"","sources":["../../ts/promise/PromiseValue.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,SAAS,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA"}
|
package/cjs/utils/index.d.ts
CHANGED
package/cjs/utils/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../ts/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAA;AACvB,YAAY,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAC3C,YAAY,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AACrD,YAAY,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAEvC;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,IAAI,CAAC,SAAS,IAAI,GAC/D,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GACb,CAAC,CAAC,SAAS,IAAI,GACb,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAC7C,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GACf,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAC7C,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAC7C,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CACd,CAAA;AAEH;;;;;;;;;;;;;;;;;GAiBG;AACF,MAAM,MAAM,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,IAAI,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../ts/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAA;AACvB,cAAc,cAAc,CAAA;AAC5B,YAAY,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAC3C,YAAY,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AACrD,YAAY,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAEvC;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,IAAI,CAAC,SAAS,IAAI,GAC/D,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GACb,CAAC,CAAC,SAAS,IAAI,GACb,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAC7C,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GACf,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAC7C,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAC7C,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CACd,CAAA;AAEH;;;;;;;;;;;;;;;;;GAiBG;AACF,MAAM,MAAM,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,IAAI,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA"}
|
package/cjs/utils/index.js
CHANGED
|
@@ -15,4 +15,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
__exportStar(require("./as.js"), exports);
|
|
18
|
+
__exportStar(require("./inspect.js"), exports);
|
|
18
19
|
//# sourceMappingURL=index.js.map
|
package/cjs/utils/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../ts/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAuB"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../ts/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAuB;AACvB,+CAA4B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"inspect.d.ts","sourceRoot":"","sources":["../../ts/utils/inspect.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,wBAAgB,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,IAAI,GAAG,CAAC,CAG/E"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.inspect = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Inspects the value and returns it.
|
|
6
|
+
*/
|
|
7
|
+
function inspect(value, inspector) {
|
|
8
|
+
inspector(value);
|
|
9
|
+
return value;
|
|
10
|
+
}
|
|
11
|
+
exports.inspect = inspect;
|
|
12
|
+
//# sourceMappingURL=inspect.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"inspect.js","sourceRoot":"","sources":["../../ts/utils/inspect.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACH,SAAgB,OAAO,CAAI,KAAQ,EAAE,SAAuC;IAC1E,SAAS,CAAC,KAAK,CAAC,CAAA;IAChB,OAAO,KAAK,CAAA;AACd,CAAC;AAHD,0BAGC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"inspect.spec.d.ts","sourceRoot":"","sources":["../../ts/utils/inspect.spec.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
var globals_1 = require("@jest/globals");
|
|
4
|
+
var index_js_1 = require("./index.js");
|
|
5
|
+
describe("".concat(index_js_1.inspect.name, "()"), function () {
|
|
6
|
+
it('should return the same value', function () {
|
|
7
|
+
var value = { a: 1, b: 2 };
|
|
8
|
+
expect((0, index_js_1.inspect)(value, function () { })).toBe(value);
|
|
9
|
+
});
|
|
10
|
+
it('should call the inspector', function () {
|
|
11
|
+
var value = { a: 1, b: 2 };
|
|
12
|
+
var spy = globals_1.jest.fn();
|
|
13
|
+
(0, index_js_1.inspect)(value, spy);
|
|
14
|
+
expect(spy).toBeCalledWith(value);
|
|
15
|
+
});
|
|
16
|
+
});
|
|
17
|
+
//# sourceMappingURL=inspect.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"inspect.spec.js","sourceRoot":"","sources":["../../ts/utils/inspect.spec.ts"],"names":[],"mappings":";;AAAA,yCAAoC;AACpC,uCAAoC;AAEpC,QAAQ,CAAC,UAAG,kBAAO,CAAC,IAAI,OAAI,EAAE;IAC5B,EAAE,CAAC,8BAA8B,EAAE;QACjC,IAAM,KAAK,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAA;QAC5B,MAAM,CAAC,IAAA,kBAAO,EAAC,KAAK,EAAE,cAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IAC/C,CAAC,CAAC,CAAA;IACF,EAAE,CAAC,2BAA2B,EAAE;QAC9B,IAAM,KAAK,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAA;QAC5B,IAAM,GAAG,GAAG,cAAI,CAAC,EAAE,EAAE,CAAA;QACrB,IAAA,kBAAO,EAAC,KAAK,EAAE,GAAG,CAAC,CAAA;QACnB,MAAM,CAAC,GAAG,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,CAAA;IACnC,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
|
|
@@ -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
|
|
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;
|
|
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"}
|
package/esm/object/filterKey.js
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
export function filterKey(subject, predicate, thisArg) {
|
|
2
|
-
return Object.keys(subject).filter(
|
|
2
|
+
return Object.keys(subject).filter(function (k, i, a) {
|
|
3
|
+
return predicate.apply(this, [k, i, a, subject]);
|
|
4
|
+
}, thisArg);
|
|
3
5
|
}
|
|
4
6
|
//# sourceMappingURL=filterKey.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filterKey.js","sourceRoot":"","sources":["../../ts/object/filterKey.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,SAAS,CACvB,OAAU,EACV,
|
|
1
|
+
{"version":3,"file":"filterKey.js","sourceRoot":"","sources":["../../ts/object/filterKey.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,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"}
|
|
@@ -5,4 +5,9 @@ test(`return type is 'keyof subject'`, () => {
|
|
|
5
5
|
const actual = filterKey(subject, key => subject[key] > 1);
|
|
6
6
|
t.deepStrictEqual(actual, ['b', 'c']);
|
|
7
7
|
});
|
|
8
|
+
it('includes subject in callback', () => {
|
|
9
|
+
const subject = { a: 1, b: 2, c: 3 };
|
|
10
|
+
const actual = filterKey(subject, (key, i, a, s) => s[key] > 1);
|
|
11
|
+
t.deepStrictEqual(actual, ['b', 'c']);
|
|
12
|
+
});
|
|
8
13
|
//# sourceMappingURL=filterKey.spec.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filterKey.spec.js","sourceRoot":"","sources":["../../ts/object/filterKey.spec.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,QAAQ,CAAA;AACtB,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAEvC,IAAI,CAAC,gCAAgC,EAAE,GAAG,EAAE;IAC1C,MAAM,OAAO,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAA;IACpC,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,EAAE,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAA;IAC1D,CAAC,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,OAAO,CAAC,MAAM,QAAQ,CAAA;AACtB,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAEvC,IAAI,CAAC,gCAAgC,EAAE,GAAG,EAAE;IAC1C,MAAM,OAAO,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAA;IACpC,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,EAAE,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAA;IAC1D,CAAC,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAA;AACvC,CAAC,CAAC,CAAA;AAEF,EAAE,CAAC,8BAA8B,EAAE,GAAG,EAAE;IACtC,MAAM,OAAO,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAA;IACpC,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAA;IAC/D,CAAC,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAA;AACvC,CAAC,CAAC,CAAA"}
|
package/esm/object/findKey.d.ts
CHANGED
|
@@ -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
|
|
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,
|
|
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"}
|
package/esm/object/findKey.js
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
export function findKey(subject, predicate, thisArg) {
|
|
2
|
-
return Object.keys(subject).find(
|
|
2
|
+
return Object.keys(subject).find(function (k, i, a) {
|
|
3
|
+
return predicate.apply(this, [k, i, a, subject]);
|
|
4
|
+
}, thisArg);
|
|
3
5
|
}
|
|
4
6
|
//# sourceMappingURL=findKey.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"findKey.js","sourceRoot":"","sources":["../../ts/object/findKey.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,OAAO,CACrB,OAAU,EACV,
|
|
1
|
+
{"version":3,"file":"findKey.js","sourceRoot":"","sources":["../../ts/object/findKey.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,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"}
|
|
@@ -5,4 +5,9 @@ test('predicate key can be used as indexer of the subject', () => {
|
|
|
5
5
|
const actual = findKey(subject, key => subject[key] === 2);
|
|
6
6
|
t.strictEqual(actual, 'b');
|
|
7
7
|
});
|
|
8
|
+
it('includes subject in callback', () => {
|
|
9
|
+
const subject = { a: 1, b: 2, c: 3 };
|
|
10
|
+
const actual = findKey(subject, (key, i, a, s) => s[key] === 2);
|
|
11
|
+
t.strictEqual(actual, 'b');
|
|
12
|
+
});
|
|
8
13
|
//# sourceMappingURL=findKey.spec.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"findKey.spec.js","sourceRoot":"","sources":["../../ts/object/findKey.spec.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,QAAQ,CAAA;AACtB,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAErC,IAAI,CAAC,qDAAqD,EAAE,GAAG,EAAE;IAC/D,MAAM,OAAO,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAA;IACpC,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAA;IAC1D,CAAC,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,OAAO,CAAC,MAAM,QAAQ,CAAA;AACtB,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAErC,IAAI,CAAC,qDAAqD,EAAE,GAAG,EAAE;IAC/D,MAAM,OAAO,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAA;IACpC,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAA;IAC1D,CAAC,CAAC,WAAW,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;AAC5B,CAAC,CAAC,CAAA;AAEF,EAAE,CAAC,8BAA8B,EAAE,GAAG,EAAE;IACtC,MAAM,OAAO,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAA;IACpC,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAA;IAC/D,CAAC,CAAC,WAAW,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;AAC5B,CAAC,CAAC,CAAA"}
|
package/esm/object/mapKey.d.ts
CHANGED
|
@@ -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
|
|
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,
|
|
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"}
|
package/esm/object/mapKey.js
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
export function mapKey(subject, predicate, thisArg) {
|
|
2
|
-
return Object.keys(subject).map(
|
|
2
|
+
return Object.keys(subject).map(function (k, i, a) {
|
|
3
|
+
return predicate.apply(this, [k, i, a, subject]);
|
|
4
|
+
}, thisArg);
|
|
3
5
|
}
|
|
4
6
|
//# sourceMappingURL=mapKey.js.map
|
package/esm/object/mapKey.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mapKey.js","sourceRoot":"","sources":["../../ts/object/mapKey.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,MAAM,CACpB,OAAU,EACV,
|
|
1
|
+
{"version":3,"file":"mapKey.js","sourceRoot":"","sources":["../../ts/object/mapKey.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,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"}
|
|
@@ -5,4 +5,9 @@ test('predicate key can be used as indexer of the subject', () => {
|
|
|
5
5
|
const actual = mapKey(subject, key => subject[key] + 1);
|
|
6
6
|
a.satisfies(actual, [2, 3, 4]);
|
|
7
7
|
});
|
|
8
|
+
it('includes subject in callback', () => {
|
|
9
|
+
const subject = { a: 1, b: 2, c: 3 };
|
|
10
|
+
const actual = mapKey(subject, (key, i, a, s) => s[key] + 1);
|
|
11
|
+
a.satisfies(actual, [2, 3, 4]);
|
|
12
|
+
});
|
|
8
13
|
//# sourceMappingURL=mapKey.spec.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mapKey.spec.js","sourceRoot":"","sources":["../../ts/object/mapKey.spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,WAAW,CAAA;AAC7B,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEpC,IAAI,CAAC,qDAAqD,EAAE,GAAG,EAAE;IAC/D,MAAM,OAAO,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAA;IACpC,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAA;IACvD,CAAC,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,OAAO,EAAE,CAAC,EAAE,MAAM,WAAW,CAAA;AAC7B,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEpC,IAAI,CAAC,qDAAqD,EAAE,GAAG,EAAE;IAC/D,MAAM,OAAO,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAA;IACpC,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAA;IACvD,CAAC,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;AAChC,CAAC,CAAC,CAAA;AAEF,EAAE,CAAC,8BAA8B,EAAE,GAAG,EAAE;IACtC,MAAM,OAAO,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAA;IACpC,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAA;IAC5D,CAAC,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,
|
|
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"}
|
package/esm/object/reduceKey.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export function reduceByKey(subject, callbackfn, initialValue) {
|
|
2
|
-
return Object.keys(subject).reduce(callbackfn, initialValue);
|
|
2
|
+
return Object.keys(subject).reduce((p, k, i, a) => callbackfn(p, k, i, a, subject), initialValue);
|
|
3
3
|
}
|
|
4
4
|
/**
|
|
5
5
|
* @deprecated renamed to reduceByKey
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reduceKey.js","sourceRoot":"","sources":["../../ts/object/reduceKey.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,WAAW,CACzB,OAAU,EACV,
|
|
1
|
+
{"version":3,"file":"reduceKey.js","sourceRoot":"","sources":["../../ts/object/reduceKey.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,WAAW,CACzB,OAAU,EACV,UAAoG,EACpG,YAAe;IACf,OAAO,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,YAAY,CAAC,CAAA;AACnG,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,WAAW,CAAA"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import t from 'assert';
|
|
2
|
-
import { reduceKey } from '../index.js';
|
|
2
|
+
import { reduceByKey, reduceKey } from '../index.js';
|
|
3
3
|
test('predicate key can be used as indexer of the subject', () => {
|
|
4
4
|
const subject = { a: 1, b: 2, c: 3 };
|
|
5
5
|
const actual = reduceKey(subject, (p, k) => p += subject[k], 'a');
|
|
@@ -14,4 +14,9 @@ test('key type is string if subject type is plain object', () => {
|
|
|
14
14
|
const actual = reduceKey(subject, (p, k) => p += subject[k], 'a');
|
|
15
15
|
t.strictEqual(actual, 'a1');
|
|
16
16
|
});
|
|
17
|
+
it('includes subject in callback', () => {
|
|
18
|
+
const subject = { a: 1, b: 2, c: 3 };
|
|
19
|
+
const actual = reduceByKey(subject, (p, k, i, a, s) => p += s[k], 'a');
|
|
20
|
+
t.strictEqual(actual, 'a123');
|
|
21
|
+
});
|
|
17
22
|
//# sourceMappingURL=reduceKey.spec.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reduceKey.spec.js","sourceRoot":"","sources":["../../ts/object/reduceKey.spec.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,QAAQ,CAAA;AACtB,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"reduceKey.spec.js","sourceRoot":"","sources":["../../ts/object/reduceKey.spec.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,QAAQ,CAAA;AACtB,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAEpD,IAAI,CAAC,qDAAqD,EAAE,GAAG,EAAE;IAC/D,MAAM,OAAO,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAA;IACpC,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;IACjE,CAAC,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,GAAG,EAAE;IAC9D,wDAAwD;IACxD,MAAM,OAAO,GAAO,EAAE,CAAC,EAAE,CAAC,EAAE,CAAA;IAC5B,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;IACjE,CAAC,CAAC,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;AAC7B,CAAC,CAAC,CAAA;AAEF,EAAE,CAAC,8BAA8B,EAAE,GAAG,EAAE;IACtC,MAAM,OAAO,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAA;IACpC,MAAM,MAAM,GAAG,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;IACtE,CAAC,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;AAC/B,CAAC,CAAC,CAAA"}
|
package/esm/object/someKey.d.ts
CHANGED
|
@@ -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,
|
|
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"}
|
package/esm/object/someKey.js
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
export function someKey(subject, predicate, thisArg) {
|
|
2
|
-
return Object.keys(subject).some(
|
|
2
|
+
return Object.keys(subject).some(function (k, i, a) {
|
|
3
|
+
return predicate.apply(this, [k, i, a, subject]);
|
|
4
|
+
}, thisArg);
|
|
3
5
|
}
|
|
4
6
|
//# sourceMappingURL=someKey.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"someKey.js","sourceRoot":"","sources":["../../ts/object/someKey.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,OAAO,CACrB,OAAU,EACV,
|
|
1
|
+
{"version":3,"file":"someKey.js","sourceRoot":"","sources":["../../ts/object/someKey.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,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"}
|
|
@@ -1,6 +1,13 @@
|
|
|
1
|
-
import
|
|
1
|
+
import t from 'assert';
|
|
2
|
+
import { isType, someKey } from '../index.js';
|
|
2
3
|
test('predicate key can be used as indexer of the subject', () => {
|
|
3
4
|
const subject = { a: 1, b: 2, c: 3 };
|
|
4
5
|
expect(someKey(subject, key => subject[key] === 2)).toBe(true);
|
|
5
6
|
});
|
|
7
|
+
it('includes subject in callback', () => {
|
|
8
|
+
const subject = { a: 1, b: 2, c: 3 };
|
|
9
|
+
const actual = someKey(subject, (k, i, a, s) => s[k] === 2);
|
|
10
|
+
isType.equal();
|
|
11
|
+
t.strictEqual(actual, true);
|
|
12
|
+
});
|
|
6
13
|
//# sourceMappingURL=someKey.spec.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"someKey.spec.js","sourceRoot":"","sources":["../../ts/object/someKey.spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"someKey.spec.js","sourceRoot":"","sources":["../../ts/object/someKey.spec.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,QAAQ,CAAA;AACtB,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAE7C,IAAI,CAAC,qDAAqD,EAAE,GAAG,EAAE;IAC/D,MAAM,OAAO,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAA;IACpC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AAChE,CAAC,CAAC,CAAA;AAEF,EAAE,CAAC,8BAA8B,EAAE,GAAG,EAAE;IACtC,MAAM,OAAO,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAA;IACpC,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAA;IAC3D,MAAM,CAAC,KAAK,EAAgC,CAAA;IAC5C,CAAC,CAAC,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;AAC7B,CAAC,CAAC,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PromiseValue.d.ts","sourceRoot":"","sources":["../../ts/promise/PromiseValue.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"PromiseValue.d.ts","sourceRoot":"","sources":["../../ts/promise/PromiseValue.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,SAAS,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA"}
|
package/esm/utils/index.d.ts
CHANGED
package/esm/utils/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../ts/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAA;AACvB,YAAY,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAC3C,YAAY,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AACrD,YAAY,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAEvC;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,IAAI,CAAC,SAAS,IAAI,GAC/D,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GACb,CAAC,CAAC,SAAS,IAAI,GACb,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAC7C,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GACf,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAC7C,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAC7C,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CACd,CAAA;AAEH;;;;;;;;;;;;;;;;;GAiBG;AACF,MAAM,MAAM,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,IAAI,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../ts/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAA;AACvB,cAAc,cAAc,CAAA;AAC5B,YAAY,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAC3C,YAAY,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AACrD,YAAY,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAEvC;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,IAAI,CAAC,SAAS,IAAI,GAC/D,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GACb,CAAC,CAAC,SAAS,IAAI,GACb,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAC7C,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GACf,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAC7C,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAC7C,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CACd,CAAA;AAEH;;;;;;;;;;;;;;;;;GAiBG;AACF,MAAM,MAAM,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,IAAI,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA"}
|
package/esm/utils/index.js
CHANGED
package/esm/utils/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../ts/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../ts/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAA;AACvB,cAAc,cAAc,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"inspect.d.ts","sourceRoot":"","sources":["../../ts/utils/inspect.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,wBAAgB,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,IAAI,GAAG,CAAC,CAG/E"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"inspect.js","sourceRoot":"","sources":["../../ts/utils/inspect.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,UAAU,OAAO,CAAI,KAAQ,EAAE,SAAuC;IAC1E,SAAS,CAAC,KAAK,CAAC,CAAA;IAChB,OAAO,KAAK,CAAA;AACd,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"inspect.spec.d.ts","sourceRoot":"","sources":["../../ts/utils/inspect.spec.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { jest } from '@jest/globals';
|
|
2
|
+
import { inspect } from './index.js';
|
|
3
|
+
describe(`${inspect.name}()`, () => {
|
|
4
|
+
it('should return the same value', () => {
|
|
5
|
+
const value = { a: 1, b: 2 };
|
|
6
|
+
expect(inspect(value, () => { })).toBe(value);
|
|
7
|
+
});
|
|
8
|
+
it('should call the inspector', () => {
|
|
9
|
+
const value = { a: 1, b: 2 };
|
|
10
|
+
const spy = jest.fn();
|
|
11
|
+
inspect(value, spy);
|
|
12
|
+
expect(spy).toBeCalledWith(value);
|
|
13
|
+
});
|
|
14
|
+
});
|
|
15
|
+
//# sourceMappingURL=inspect.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"inspect.spec.js","sourceRoot":"","sources":["../../ts/utils/inspect.spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAA;AACpC,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AAEpC,QAAQ,CAAC,GAAG,OAAO,CAAC,IAAI,IAAI,EAAE,GAAG,EAAE;IACjC,EAAE,CAAC,8BAA8B,EAAE,GAAG,EAAE;QACtC,MAAM,KAAK,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAA;QAC5B,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IAC/C,CAAC,CAAC,CAAA;IACF,EAAE,CAAC,2BAA2B,EAAE,GAAG,EAAE;QACnC,MAAM,KAAK,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAA;QAC5B,MAAM,GAAG,GAAG,IAAI,CAAC,EAAE,EAAE,CAAA;QACrB,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;QACnB,MAAM,CAAC,GAAG,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,CAAA;IACnC,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "type-plus",
|
|
3
|
-
"version": "5.
|
|
3
|
+
"version": "5.2.0",
|
|
4
4
|
"description": "Provides additional types for TypeScript.",
|
|
5
5
|
"homepage": "https://github.com/unional/type-plus",
|
|
6
6
|
"bugs": {
|
|
@@ -39,11 +39,13 @@
|
|
|
39
39
|
"@changesets/cli": "^2.25.2",
|
|
40
40
|
"@commitlint/cli": "^17.0.2",
|
|
41
41
|
"@commitlint/config-conventional": "^17.0.2",
|
|
42
|
+
"@jest/globals": "^29.3.1",
|
|
42
43
|
"@repobuddy/jest": "^2.1.0",
|
|
43
44
|
"@size-limit/preset-small-lib": "^8.0.0",
|
|
44
45
|
"@types/jest": "^29.0.0",
|
|
45
|
-
"@types/node": "^
|
|
46
|
+
"@types/node": "^18.0.0",
|
|
46
47
|
"@typescript-eslint/eslint-plugin": "^5.28.0",
|
|
48
|
+
"@typescript-eslint/parser": "^5.48.0",
|
|
47
49
|
"@unional/fixture": "^3.0.0",
|
|
48
50
|
"assertron": "^11.0.1",
|
|
49
51
|
"cross-env": "^7.0.3",
|
|
@@ -67,7 +69,7 @@
|
|
|
67
69
|
"typedoc-plugin-extras": "^2.2.3",
|
|
68
70
|
"typescript": "4.9.4"
|
|
69
71
|
},
|
|
70
|
-
"packageManager": "pnpm@7.
|
|
72
|
+
"packageManager": "pnpm@7.25.0",
|
|
71
73
|
"size-limit": [
|
|
72
74
|
{
|
|
73
75
|
"path": "./cjs/index.js",
|
package/ts/object/filterKey.ts
CHANGED
|
@@ -1,8 +1,10 @@
|
|
|
1
|
-
import { KeyTypes } from './KeyTypes.js'
|
|
1
|
+
import type { KeyTypes } from './KeyTypes.js'
|
|
2
2
|
|
|
3
3
|
export function filterKey<S extends Record<KeyTypes, any>, T = any>(
|
|
4
4
|
subject: S,
|
|
5
|
-
predicate: (this: T, key: keyof S, index: number, obj: Array<keyof S
|
|
5
|
+
predicate: (this: T, key: keyof S, index: number, obj: Array<keyof S>, subject: S) => boolean,
|
|
6
6
|
thisArg?: T): Array<keyof S> {
|
|
7
|
-
return Object.keys(subject).filter(
|
|
7
|
+
return Object.keys(subject).filter(function (this: T, k, i, a) {
|
|
8
|
+
return predicate.apply(this, [k, i, a, subject])
|
|
9
|
+
}, thisArg)
|
|
8
10
|
}
|
package/ts/object/findKey.ts
CHANGED
|
@@ -2,7 +2,9 @@ import { KeyTypes } from './KeyTypes.js'
|
|
|
2
2
|
|
|
3
3
|
export function findKey<S extends Record<KeyTypes, any>, T = any>(
|
|
4
4
|
subject: S,
|
|
5
|
-
predicate: (this: T, key: keyof S, index: number, obj: Array<keyof S
|
|
5
|
+
predicate: (this: T, key: keyof S, index: number, obj: Array<keyof S>, subject: S) => boolean,
|
|
6
6
|
thisArg?: T): keyof S | undefined {
|
|
7
|
-
return Object.keys(subject).find(
|
|
7
|
+
return Object.keys(subject).find(function (this: T, k, i, a) {
|
|
8
|
+
return predicate.apply(this, [k, i, a, subject])
|
|
9
|
+
}, thisArg)
|
|
8
10
|
}
|
package/ts/object/mapKey.ts
CHANGED
|
@@ -2,7 +2,9 @@ import { KeyTypes } from './KeyTypes.js'
|
|
|
2
2
|
|
|
3
3
|
export function mapKey<R, S extends Record<KeyTypes, any>, T = any>(
|
|
4
4
|
subject: S,
|
|
5
|
-
predicate: (this: T, key: keyof S, index: number, obj: Array<keyof S
|
|
5
|
+
predicate: (this: T, key: keyof S, index: number, obj: Array<keyof S>, subject: S) => R,
|
|
6
6
|
thisArg?: T): R[] {
|
|
7
|
-
return Object.keys(subject).map(
|
|
7
|
+
return Object.keys(subject).map(function (this: T, k, i, a) {
|
|
8
|
+
return predicate.apply(this, [k, i, a, subject])
|
|
9
|
+
}, thisArg)
|
|
8
10
|
}
|
package/ts/object/reduceKey.ts
CHANGED
|
@@ -2,9 +2,9 @@ import type { KeyTypes } from './KeyTypes.js'
|
|
|
2
2
|
|
|
3
3
|
export function reduceByKey<S extends Record<KeyTypes, any>, T>(
|
|
4
4
|
subject: S,
|
|
5
|
-
callbackfn: (previousValue: T, key: keyof S, currentIndex: number, array: string[]) => T,
|
|
5
|
+
callbackfn: (previousValue: T, key: keyof S, currentIndex: number, array: string[], subject: S) => T,
|
|
6
6
|
initialValue: T): T {
|
|
7
|
-
return Object.keys(subject).reduce(callbackfn
|
|
7
|
+
return Object.keys(subject).reduce((p, k, i, a) => callbackfn(p, k, i, a, subject), initialValue)
|
|
8
8
|
}
|
|
9
9
|
|
|
10
10
|
/**
|
package/ts/object/someKey.ts
CHANGED
|
@@ -2,8 +2,10 @@ import type { KeyTypes } from './KeyTypes.js'
|
|
|
2
2
|
|
|
3
3
|
export function someKey<S extends Record<KeyTypes, any>, T = any>(
|
|
4
4
|
subject: S,
|
|
5
|
-
predicate: (this: T, key: keyof S, index: number, array: string[]) => unknown,
|
|
5
|
+
predicate: (this: T, key: keyof S, index: number, array: string[], subject: S) => unknown,
|
|
6
6
|
thisArg?: T
|
|
7
7
|
): boolean {
|
|
8
|
-
return Object.keys(subject).some(
|
|
8
|
+
return Object.keys(subject).some(function (this: T, k, i, a) {
|
|
9
|
+
return predicate.apply(this, [k, i, a, subject])
|
|
10
|
+
}, thisArg)
|
|
9
11
|
}
|
package/ts/utils/index.ts
CHANGED