From c699b8074f6fbecf39e2e020808d4882d619b9f9 Mon Sep 17 00:00:00 2001 From: Ilya Mochalov Date: Fri, 13 Nov 2015 10:20:35 +0500 Subject: [PATCH] lodash: signatures of the method _.zipObject have been changed --- lodash/lodash-tests.ts | 202 +++++++++++++++++++++++++++++++++-------- lodash/lodash.d.ts | 104 +++++++++++++++++++-- 2 files changed, 264 insertions(+), 42 deletions(-) diff --git a/lodash/lodash-tests.ts b/lodash/lodash-tests.ts index 4c587b57b..f20eeb798 100644 --- a/lodash/lodash-tests.ts +++ b/lodash/lodash-tests.ts @@ -811,18 +811,17 @@ module TestLastIndexOf { module TestObject { let arrayOfKeys: string[]; let arrayOfValues: number[]; + let arrayOfKeyValuePairs: (string|number)[][] let listOfKeys: _.List; let listOfValues: _.List; + let listOfKeyValuePairs: _.List<_.List>; { let result: _.Dictionary; result = _.object<_.Dictionary>(arrayOfKeys); result = _.object<_.Dictionary>(listOfKeys); - - result = _(arrayOfKeys).object<_.Dictionary>().value(); - result = _(listOfKeys).object<_.Dictionary>().value(); } { @@ -838,15 +837,8 @@ module TestObject { result = _.object>(listOfKeys, listOfValues); result = _.object>(listOfKeys, arrayOfValues); - result = _(arrayOfKeys).object<_.Dictionary>(arrayOfValues).value(); - result = _(arrayOfKeys).object<_.Dictionary>(listOfValues).value(); - result = _(listOfKeys).object<_.Dictionary>(listOfValues).value(); - result = _(listOfKeys).object<_.Dictionary>(arrayOfValues).value(); - - result = _(arrayOfKeys).object>(arrayOfValues).value(); - result = _(arrayOfKeys).object>(listOfValues).value(); - result = _(listOfKeys).object>(listOfValues).value(); - result = _(listOfKeys).object>(arrayOfValues).value(); + result = _.object<_.Dictionary>(arrayOfKeyValuePairs); + result = _.object<_.Dictionary>(listOfKeyValuePairs); } { @@ -860,13 +852,86 @@ module TestObject { result = _.object(listOfKeys, listOfValues); result = _.object(listOfKeys, arrayOfValues); - result = _(arrayOfKeys).object().value(); - result = _(arrayOfKeys).object(arrayOfValues).value(); - result = _(arrayOfKeys).object(listOfValues).value(); + result = _.object<_.Dictionary>(arrayOfKeyValuePairs); + result = _.object<_.Dictionary>(listOfKeyValuePairs); + } - result = _(listOfKeys).object().value(); - result = _(listOfKeys).object(listOfValues).value(); - result = _(listOfKeys).object(arrayOfValues).value(); + { + let result: _.LoDashImplicitObjectWrapper<_.Dictionary>; + + result = _(arrayOfKeys).object<_.Dictionary>(); + result = _(listOfKeys).object<_.Dictionary>(); + } + + { + let result: _.LoDashImplicitObjectWrapper<_.Dictionary>; + + result = _(arrayOfKeys).object<_.Dictionary>(arrayOfValues); + result = _(arrayOfKeys).object<_.Dictionary>(listOfValues); + result = _(listOfKeys).object<_.Dictionary>(listOfValues); + result = _(listOfKeys).object<_.Dictionary>(arrayOfValues); + + result = _(arrayOfKeys).object>(arrayOfValues); + result = _(arrayOfKeys).object>(listOfValues); + result = _(listOfKeys).object>(listOfValues); + result = _(listOfKeys).object>(arrayOfValues); + + result = _(listOfKeys).object<_.Dictionary>(arrayOfKeyValuePairs); + result = _(listOfKeys).object<_.Dictionary>(listOfKeyValuePairs); + } + + { + let result: _.LoDashImplicitObjectWrapper<_.Dictionary>; + + result = _(arrayOfKeys).object(); + result = _(arrayOfKeys).object(arrayOfValues); + result = _(arrayOfKeys).object(listOfValues); + + result = _(listOfKeys).object(); + result = _(listOfKeys).object(listOfValues); + result = _(listOfKeys).object(arrayOfValues); + + result = _(listOfKeys).object(arrayOfKeyValuePairs); + result = _(listOfKeys).object(listOfKeyValuePairs); + } + + { + let result: _.LoDashExplicitObjectWrapper<_.Dictionary>; + + result = _(arrayOfKeys).chain().object<_.Dictionary>(); + result = _(listOfKeys).chain().object<_.Dictionary>(); + } + + { + let result: _.LoDashExplicitObjectWrapper<_.Dictionary>; + + result = _(arrayOfKeys).chain().object<_.Dictionary>(arrayOfValues); + result = _(arrayOfKeys).chain().object<_.Dictionary>(listOfValues); + result = _(listOfKeys).chain().object<_.Dictionary>(listOfValues); + result = _(listOfKeys).chain().object<_.Dictionary>(arrayOfValues); + + result = _(arrayOfKeys).chain().object>(arrayOfValues); + result = _(arrayOfKeys).chain().object>(listOfValues); + result = _(listOfKeys).chain().object>(listOfValues); + result = _(listOfKeys).chain().object>(arrayOfValues); + + result = _(listOfKeys).chain().object<_.Dictionary>(arrayOfKeyValuePairs); + result = _(listOfKeys).chain().object<_.Dictionary>(listOfKeyValuePairs); + } + + { + let result: _.LoDashExplicitObjectWrapper<_.Dictionary>; + + result = _(arrayOfKeys).chain().object(); + result = _(arrayOfKeys).chain().object(arrayOfValues); + result = _(arrayOfKeys).chain().object(listOfValues); + + result = _(listOfKeys).chain().object(); + result = _(listOfKeys).chain().object(listOfValues); + result = _(listOfKeys).chain().object(arrayOfValues); + + result = _(listOfKeys).chain().object(arrayOfKeyValuePairs); + result = _(listOfKeys).chain().object(listOfKeyValuePairs); } } @@ -1483,18 +1548,17 @@ result = _(['moe', 'larry']).unzip([30, 40], [true, false]).value(); module TestZipObject { let arrayOfKeys: string[]; let arrayOfValues: number[]; + let arrayOfKeyValuePairs: (string|number)[][] let listOfKeys: _.List; let listOfValues: _.List; + let listOfKeyValuePairs: _.List<_.List>; { let result: _.Dictionary; result = _.zipObject<_.Dictionary>(arrayOfKeys); result = _.zipObject<_.Dictionary>(listOfKeys); - - result = _(arrayOfKeys).zipObject<_.Dictionary>().value(); - result = _(listOfKeys).zipObject<_.Dictionary>().value(); } { @@ -1510,15 +1574,8 @@ module TestZipObject { result = _.zipObject>(listOfKeys, listOfValues); result = _.zipObject>(listOfKeys, arrayOfValues); - result = _(arrayOfKeys).zipObject<_.Dictionary>(arrayOfValues).value(); - result = _(arrayOfKeys).zipObject<_.Dictionary>(listOfValues).value(); - result = _(listOfKeys).zipObject<_.Dictionary>(listOfValues).value(); - result = _(listOfKeys).zipObject<_.Dictionary>(arrayOfValues).value(); - - result = _(arrayOfKeys).zipObject>(arrayOfValues).value(); - result = _(arrayOfKeys).zipObject>(listOfValues).value(); - result = _(listOfKeys).zipObject>(listOfValues).value(); - result = _(listOfKeys).zipObject>(arrayOfValues).value(); + result = _.zipObject<_.Dictionary>(arrayOfKeyValuePairs); + result = _.zipObject<_.Dictionary>(listOfKeyValuePairs); } { @@ -1532,13 +1589,86 @@ module TestZipObject { result = _.zipObject(listOfKeys, listOfValues); result = _.zipObject(listOfKeys, arrayOfValues); - result = _(arrayOfKeys).zipObject().value(); - result = _(arrayOfKeys).zipObject(arrayOfValues).value(); - result = _(arrayOfKeys).zipObject(listOfValues).value(); + result = _.zipObject<_.Dictionary>(arrayOfKeyValuePairs); + result = _.zipObject<_.Dictionary>(listOfKeyValuePairs); + } - result = _(listOfKeys).zipObject().value(); - result = _(listOfKeys).zipObject(listOfValues).value(); - result = _(listOfKeys).zipObject(arrayOfValues).value(); + { + let result: _.LoDashImplicitObjectWrapper<_.Dictionary>; + + result = _(arrayOfKeys).zipObject<_.Dictionary>(); + result = _(listOfKeys).zipObject<_.Dictionary>(); + } + + { + let result: _.LoDashImplicitObjectWrapper<_.Dictionary>; + + result = _(arrayOfKeys).zipObject<_.Dictionary>(arrayOfValues); + result = _(arrayOfKeys).zipObject<_.Dictionary>(listOfValues); + result = _(listOfKeys).zipObject<_.Dictionary>(listOfValues); + result = _(listOfKeys).zipObject<_.Dictionary>(arrayOfValues); + + result = _(arrayOfKeys).zipObject>(arrayOfValues); + result = _(arrayOfKeys).zipObject>(listOfValues); + result = _(listOfKeys).zipObject>(listOfValues); + result = _(listOfKeys).zipObject>(arrayOfValues); + + result = _(listOfKeys).zipObject<_.Dictionary>(arrayOfKeyValuePairs); + result = _(listOfKeys).zipObject<_.Dictionary>(listOfKeyValuePairs); + } + + { + let result: _.LoDashImplicitObjectWrapper<_.Dictionary>; + + result = _(arrayOfKeys).zipObject(); + result = _(arrayOfKeys).zipObject(arrayOfValues); + result = _(arrayOfKeys).zipObject(listOfValues); + + result = _(listOfKeys).zipObject(); + result = _(listOfKeys).zipObject(listOfValues); + result = _(listOfKeys).zipObject(arrayOfValues); + + result = _(listOfKeys).zipObject(arrayOfKeyValuePairs); + result = _(listOfKeys).zipObject(listOfKeyValuePairs); + } + + { + let result: _.LoDashExplicitObjectWrapper<_.Dictionary>; + + result = _(arrayOfKeys).chain().zipObject<_.Dictionary>(); + result = _(listOfKeys).chain().zipObject<_.Dictionary>(); + } + + { + let result: _.LoDashExplicitObjectWrapper<_.Dictionary>; + + result = _(arrayOfKeys).chain().zipObject<_.Dictionary>(arrayOfValues); + result = _(arrayOfKeys).chain().zipObject<_.Dictionary>(listOfValues); + result = _(listOfKeys).chain().zipObject<_.Dictionary>(listOfValues); + result = _(listOfKeys).chain().zipObject<_.Dictionary>(arrayOfValues); + + result = _(arrayOfKeys).chain().zipObject>(arrayOfValues); + result = _(arrayOfKeys).chain().zipObject>(listOfValues); + result = _(listOfKeys).chain().zipObject>(listOfValues); + result = _(listOfKeys).chain().zipObject>(arrayOfValues); + + result = _(listOfKeys).chain().zipObject<_.Dictionary>(arrayOfKeyValuePairs); + result = _(listOfKeys).chain().zipObject<_.Dictionary>(listOfKeyValuePairs); + } + + { + let result: _.LoDashExplicitObjectWrapper<_.Dictionary>; + + result = _(arrayOfKeys).chain().zipObject(); + result = _(arrayOfKeys).chain().zipObject(arrayOfValues); + result = _(arrayOfKeys).chain().zipObject(listOfValues); + + result = _(listOfKeys).chain().zipObject(); + result = _(listOfKeys).chain().zipObject(listOfValues); + result = _(listOfKeys).chain().zipObject(arrayOfValues); + + result = _(listOfKeys).chain().zipObject(arrayOfKeyValuePairs); + result = _(listOfKeys).chain().zipObject(listOfKeyValuePairs); } } diff --git a/lodash/lodash.d.ts b/lodash/lodash.d.ts index 98d8bf55d..73152fd63 100644 --- a/lodash/lodash.d.ts +++ b/lodash/lodash.d.ts @@ -1403,7 +1403,7 @@ declare module _ { * @see _.zipObject */ object( - props: List, + props: List|List>, values?: List ): TResult; @@ -1411,7 +1411,7 @@ declare module _ { * @see _.zipObject */ object( - props: List, + props: List|List>, values?: List ): TResult; @@ -1419,7 +1419,7 @@ declare module _ { * @see _.zipObject */ object( - props: List, + props: List|List>, values?: List ): _.Dictionary; } @@ -1470,6 +1470,52 @@ declare module _ { ): _.LoDashImplicitObjectWrapper<_.Dictionary>; } + interface LoDashExplicitArrayWrapper { + /** + * @see _.zipObject + */ + object( + values?: List + ): _.LoDashExplicitObjectWrapper; + + /** + * @see _.zipObject + */ + object( + values?: List + ): _.LoDashExplicitObjectWrapper; + + /** + * @see _.zipObject + */ + object( + values?: List + ): _.LoDashExplicitObjectWrapper<_.Dictionary>; + } + + interface LoDashExplicitObjectWrapper { + /** + * @see _.zipObject + */ + object( + values?: List + ): _.LoDashExplicitObjectWrapper; + + /** + * @see _.zipObject + */ + object( + values?: List + ): _.LoDashExplicitObjectWrapper; + + /** + * @see _.zipObject + */ + object( + values?: List + ): _.LoDashExplicitObjectWrapper<_.Dictionary>; + } + //_.pull interface LoDashStatic { /** @@ -2867,7 +2913,7 @@ declare module _ { * @return Returns the new object. */ zipObject( - props: List, + props: List|List>, values?: List ): TResult; @@ -2875,7 +2921,7 @@ declare module _ { * @see _.zipObject */ zipObject( - props: List, + props: List|List>, values?: List ): TResult; @@ -2883,7 +2929,7 @@ declare module _ { * @see _.zipObject */ zipObject( - props: List, + props: List|List>, values?: List ): _.Dictionary; } @@ -2934,6 +2980,52 @@ declare module _ { ): _.LoDashImplicitObjectWrapper<_.Dictionary>; } + interface LoDashExplicitArrayWrapper { + /** + * @see _.zipObject + */ + zipObject( + values?: List + ): _.LoDashExplicitObjectWrapper; + + /** + * @see _.zipObject + */ + zipObject( + values?: List + ): _.LoDashExplicitObjectWrapper; + + /** + * @see _.zipObject + */ + zipObject( + values?: List + ): _.LoDashExplicitObjectWrapper<_.Dictionary>; + } + + interface LoDashExplicitObjectWrapper { + /** + * @see _.zipObject + */ + zipObject( + values?: List + ): _.LoDashExplicitObjectWrapper; + + /** + * @see _.zipObject + */ + zipObject( + values?: List + ): _.LoDashExplicitObjectWrapper; + + /** + * @see _.zipObject + */ + zipObject( + values?: List + ): _.LoDashExplicitObjectWrapper<_.Dictionary>; + } + //_.zipWith interface LoDashStatic { /**