diff --git a/lodash/lodash-3.10-tests.ts b/lodash/lodash-3.10-tests.ts index c3871d381..2ce8057d8 100644 --- a/lodash/lodash-3.10-tests.ts +++ b/lodash/lodash-3.10-tests.ts @@ -3134,65 +3134,91 @@ namespace TestAll { // _.any namespace TestAny { - let array: TResult[]; - let list: _.List; - let dictionary: _.Dictionary; - let numericDictionary: _.NumericDictionary; + type SampleObject = {a: number; b: string; c: boolean;}; - let listIterator: (value: TResult, index: number, collection: _.List) => boolean; - let dictionaryIterator: (value: TResult, key: string, collection: _.Dictionary) => boolean; - let numericDictionaryIterator: (value: TResult, key: number, collection: _.NumericDictionary) => boolean; + let array: SampleObject[]; + let list: _.List; + let dictionary: _.Dictionary; + let numericDictionary: _.NumericDictionary; + let sampleObject: SampleObject; + + let listIterator: (value: SampleObject, index: number, collection: _.List) => boolean; + let dictionaryIterator: (value: SampleObject, key: string, collection: _.Dictionary) => boolean; + let numericDictionaryIterator: (value: SampleObject, key: number, collection: _.NumericDictionary) => boolean; + let objectIterator: (value: any, key: string, collection: any) => boolean; { let result: boolean; - result = _.any(array); - result = _.any(array, listIterator); - result = _.any(array, listIterator, any); - result = _.any(array, ''); - result = _.any<{a: number}, TResult>(array, {a: 42}); + result = _.any(array); + result = _.any(array, listIterator); + result = _.any(array, listIterator, any); + result = _.any(array, 'a'); + result = _.any(array, 'a', 42); + result = _.any<{a: number}, SampleObject>(array, {a: 42}); - result = _.any(list); - result = _.any(list, listIterator); - result = _.any(list, listIterator, any); - result = _.any(list, ''); - result = _.any<{a: number}, TResult>(list, {a: 42}); + result = _.any(list); + result = _.any(list, listIterator); + result = _.any(list, listIterator, any); + result = _.any(list, 'a'); + result = _.any(list, 'a', 42); + result = _.any<{a: number}, SampleObject>(list, {a: 42}); - result = _.any(dictionary); - result = _.any(dictionary, dictionaryIterator); - result = _.any(dictionary, dictionaryIterator, any); - result = _.any(dictionary, ''); - result = _.any<{a: number}, TResult>(dictionary, {a: 42}); + result = _.any(dictionary); + result = _.any(dictionary, dictionaryIterator); + result = _.any(dictionary, dictionaryIterator, any); + result = _.any(dictionary, 'a'); + result = _.any(dictionary, 'a', 42); + result = _.any<{a: number}, SampleObject>(dictionary, {a: 42}); - result = _.any(numericDictionary); - result = _.any(numericDictionary, numericDictionaryIterator); - result = _.any(numericDictionary, numericDictionaryIterator, any); - result = _.any(numericDictionary, ''); - result = _.any<{a: number}, TResult>(numericDictionary, {a: 42}); + result = _.any(numericDictionary); + result = _.any(numericDictionary, numericDictionaryIterator); + result = _.any(numericDictionary, numericDictionaryIterator, any); + result = _.any(numericDictionary, 'a'); + result = _.any(numericDictionary, 'a', 42); + result = _.any<{a: number}, SampleObject>(numericDictionary, {a: 42}); + + result = _.any(sampleObject); + result = _.any(sampleObject, objectIterator); + result = _.any(sampleObject, objectIterator, any); + result = _.any(sampleObject, 'a'); + result = _.any(sampleObject, 'a', 42); + result = _.any<{a: number}>(sampleObject, {a: 42}); result = _(array).any(); result = _(array).any(listIterator); result = _(array).any(listIterator, any); - result = _(array).any(''); + result = _(array).any('a'); + result = _(array).any('a', 42); result = _(array).any<{a: number}>({a: 42}); - result = _(list).any(); - result = _(list).any(listIterator); - result = _(list).any(listIterator, any); - result = _(list).any(''); + result = _(list).any(); + result = _(list).any(listIterator); + result = _(list).any(listIterator, any); + result = _(list).any('a'); + result = _(list).any('a', 42); result = _(list).any<{a: number}>({a: 42}); - result = _(dictionary).any(); - result = _(dictionary).any(dictionaryIterator); - result = _(dictionary).any(dictionaryIterator, any); - result = _(dictionary).any(''); + result = _(dictionary).any(); + result = _(dictionary).any(dictionaryIterator); + result = _(dictionary).any(dictionaryIterator, any); + result = _(dictionary).any('a'); + result = _(dictionary).any('a', 42); result = _(dictionary).any<{a: number}>({a: 42}); - result = _(numericDictionary).any(); - result = _(numericDictionary).any(numericDictionaryIterator); - result = _(numericDictionary).any(numericDictionaryIterator, any); - result = _(numericDictionary).any(''); + result = _(numericDictionary).any(); + result = _(numericDictionary).any(numericDictionaryIterator); + result = _(numericDictionary).any(numericDictionaryIterator, any); + result = _(numericDictionary).any('a'); + result = _(numericDictionary).any('a', 42); result = _(numericDictionary).any<{a: number}>({a: 42}); + + result = _(sampleObject).any(); + result = _(sampleObject).any(objectIterator); + result = _(sampleObject).any(objectIterator, any); + result = _(sampleObject).any('a'); + result = _(sampleObject).any('a', 42); + result = _(sampleObject).any<{a: number}>({a: 42}); } { @@ -3201,26 +3227,37 @@ namespace TestAny { result = _(array).chain().any(); result = _(array).chain().any(listIterator); result = _(array).chain().any(listIterator, any); - result = _(array).chain().any(''); + result = _(array).chain().any('a'); + result = _(array).chain().any('a', 42); result = _(array).chain().any<{a: number}>({a: 42}); - result = _(list).chain().any(); - result = _(list).chain().any(listIterator); - result = _(list).chain().any(listIterator, any); - result = _(list).chain().any(''); + result = _(list).chain().any(); + result = _(list).chain().any(listIterator); + result = _(list).chain().any(listIterator, any); + result = _(list).chain().any('a'); + result = _(list).chain().any('a', 42); result = _(list).chain().any<{a: number}>({a: 42}); - result = _(dictionary).chain().any(); - result = _(dictionary).chain().any(dictionaryIterator); - result = _(dictionary).chain().any(dictionaryIterator, any); - result = _(dictionary).chain().any(''); + result = _(dictionary).chain().any(); + result = _(dictionary).chain().any(dictionaryIterator); + result = _(dictionary).chain().any(dictionaryIterator, any); + result = _(dictionary).chain().any('a'); + result = _(dictionary).chain().any('a', 42); result = _(dictionary).chain().any<{a: number}>({a: 42}); - result = _(numericDictionary).chain().any(); - result = _(numericDictionary).chain().any(numericDictionaryIterator); - result = _(numericDictionary).chain().any(numericDictionaryIterator, any); - result = _(numericDictionary).chain().any(''); + result = _(numericDictionary).chain().any(); + result = _(numericDictionary).chain().any(numericDictionaryIterator); + result = _(numericDictionary).chain().any(numericDictionaryIterator, any); + result = _(numericDictionary).chain().any('a'); + result = _(numericDictionary).chain().any('a', 42); result = _(numericDictionary).chain().any<{a: number}>({a: 42}); + + result = _(sampleObject).chain().any(); + result = _(sampleObject).chain().any(objectIterator); + result = _(sampleObject).chain().any(objectIterator, any); + result = _(sampleObject).chain().any('a'); + result = _(sampleObject).chain().any('a', 42); + result = _(sampleObject).chain().any<{a: number}>({a: 42}); } } @@ -5104,65 +5141,91 @@ namespace TestSize { // _.some namespace TestSome { - let array: TResult[]; - let list: _.List; - let dictionary: _.Dictionary; - let numericDictionary: _.NumericDictionary; + type SampleObject = {a: number; b: string; c: boolean;}; - let listIterator: (value: TResult, index: number, collection: _.List) => boolean; - let dictionaryIterator: (value: TResult, key: string, collection: _.Dictionary) => boolean; - let numericDictionaryIterator: (value: TResult, key: number, collection: _.NumericDictionary) => boolean; + let array: SampleObject[]; + let list: _.List; + let dictionary: _.Dictionary; + let numericDictionary: _.NumericDictionary; + let sampleObject: SampleObject; + + let listIterator: (value: SampleObject, index: number, collection: _.List) => boolean; + let dictionaryIterator: (value: SampleObject, key: string, collection: _.Dictionary) => boolean; + let numericDictionaryIterator: (value: SampleObject, key: number, collection: _.NumericDictionary) => boolean; + let objectIterator: (value: any, key: string, collection: any) => boolean; { let result: boolean; - result = _.some(array); - result = _.some(array, listIterator); - result = _.some(array, listIterator, any); - result = _.some(array, ''); - result = _.some<{a: number}, TResult>(array, {a: 42}); + result = _.some(array); + result = _.some(array, listIterator); + result = _.some(array, listIterator, any); + result = _.some(array, 'a'); + result = _.some(array, 'a', 42); + result = _.some<{a: number}, SampleObject>(array, {a: 42}); - result = _.some(list); - result = _.some(list, listIterator); - result = _.some(list, listIterator, any); - result = _.some(list, ''); - result = _.some<{a: number}, TResult>(list, {a: 42}); + result = _.some(list); + result = _.some(list, listIterator); + result = _.some(list, listIterator, any); + result = _.some(list, 'a'); + result = _.some(list, 'a', 42); + result = _.some<{a: number}, SampleObject>(list, {a: 42}); - result = _.some(dictionary); - result = _.some(dictionary, dictionaryIterator); - result = _.some(dictionary, dictionaryIterator, any); - result = _.some(dictionary, ''); - result = _.some<{a: number}, TResult>(dictionary, {a: 42}); + result = _.some(dictionary); + result = _.some(dictionary, dictionaryIterator); + result = _.some(dictionary, dictionaryIterator, any); + result = _.some(dictionary, 'a'); + result = _.some(dictionary, 'a', 42); + result = _.some<{a: number}, SampleObject>(dictionary, {a: 42}); - result = _.some(numericDictionary); - result = _.some(numericDictionary, numericDictionaryIterator); - result = _.some(numericDictionary, numericDictionaryIterator, any); - result = _.some(numericDictionary, ''); - result = _.some<{a: number}, TResult>(numericDictionary, {a: 42}); + result = _.some(numericDictionary); + result = _.some(numericDictionary, numericDictionaryIterator); + result = _.some(numericDictionary, numericDictionaryIterator, any); + result = _.some(numericDictionary, 'a'); + result = _.some(numericDictionary, 'a', 42); + result = _.some<{a: number}, SampleObject>(numericDictionary, {a: 42}); + + result = _.some(sampleObject); + result = _.some(sampleObject, objectIterator); + result = _.some(sampleObject, objectIterator, any); + result = _.some(sampleObject, 'a'); + result = _.some(sampleObject, 'a', 42); + result = _.some<{a: number}>(sampleObject, {a: 42}); result = _(array).some(); result = _(array).some(listIterator); result = _(array).some(listIterator, any); - result = _(array).some(''); + result = _(array).some('a'); + result = _(array).some('a', 42); result = _(array).some<{a: number}>({a: 42}); - result = _(list).some(); - result = _(list).some(listIterator); - result = _(list).some(listIterator, any); - result = _(list).some(''); + result = _(list).some(); + result = _(list).some(listIterator); + result = _(list).some(listIterator, any); + result = _(list).some('a'); + result = _(list).some('a', 42); result = _(list).some<{a: number}>({a: 42}); - result = _(dictionary).some(); - result = _(dictionary).some(dictionaryIterator); - result = _(dictionary).some(dictionaryIterator, any); - result = _(dictionary).some(''); + result = _(dictionary).some(); + result = _(dictionary).some(dictionaryIterator); + result = _(dictionary).some(dictionaryIterator, any); + result = _(dictionary).some('a'); + result = _(dictionary).some('a', 42); result = _(dictionary).some<{a: number}>({a: 42}); - result = _(numericDictionary).some(); - result = _(numericDictionary).some(numericDictionaryIterator); - result = _(numericDictionary).some(numericDictionaryIterator, any); - result = _(numericDictionary).some(''); + result = _(numericDictionary).some(); + result = _(numericDictionary).some(numericDictionaryIterator); + result = _(numericDictionary).some(numericDictionaryIterator, any); + result = _(numericDictionary).some('a'); + result = _(numericDictionary).some('a', 42); result = _(numericDictionary).some<{a: number}>({a: 42}); + + result = _(sampleObject).some(); + result = _(sampleObject).some(objectIterator); + result = _(sampleObject).some(objectIterator, any); + result = _(sampleObject).some('a'); + result = _(sampleObject).some('a', 42); + result = _(sampleObject).some<{a: number}>({a: 42}); } { @@ -5171,26 +5234,37 @@ namespace TestSome { result = _(array).chain().some(); result = _(array).chain().some(listIterator); result = _(array).chain().some(listIterator, any); - result = _(array).chain().some(''); + result = _(array).chain().some('a'); + result = _(array).chain().some('a', 42); result = _(array).chain().some<{a: number}>({a: 42}); - result = _(list).chain().some(); - result = _(list).chain().some(listIterator); - result = _(list).chain().some(listIterator, any); - result = _(list).chain().some(''); + result = _(list).chain().some(); + result = _(list).chain().some(listIterator); + result = _(list).chain().some(listIterator, any); + result = _(list).chain().some('a'); + result = _(list).chain().some('a', 42); result = _(list).chain().some<{a: number}>({a: 42}); - result = _(dictionary).chain().some(); - result = _(dictionary).chain().some(dictionaryIterator); - result = _(dictionary).chain().some(dictionaryIterator, any); - result = _(dictionary).chain().some(''); + result = _(dictionary).chain().some(); + result = _(dictionary).chain().some(dictionaryIterator); + result = _(dictionary).chain().some(dictionaryIterator, any); + result = _(dictionary).chain().some('a'); + result = _(dictionary).chain().some('a', 42); result = _(dictionary).chain().some<{a: number}>({a: 42}); - result = _(numericDictionary).chain().some(); - result = _(numericDictionary).chain().some(numericDictionaryIterator); - result = _(numericDictionary).chain().some(numericDictionaryIterator, any); - result = _(numericDictionary).chain().some(''); + result = _(numericDictionary).chain().some(); + result = _(numericDictionary).chain().some(numericDictionaryIterator); + result = _(numericDictionary).chain().some(numericDictionaryIterator, any); + result = _(numericDictionary).chain().some('a'); + result = _(numericDictionary).chain().some('a', 42); result = _(numericDictionary).chain().some<{a: number}>({a: 42}); + + result = _(sampleObject).chain().some(); + result = _(sampleObject).chain().some(objectIterator); + result = _(sampleObject).chain().some(objectIterator, any); + result = _(sampleObject).chain().some('a'); + result = _(sampleObject).chain().some('a', 42); + result = _(sampleObject).chain().some<{a: number}>({a: 42}); } } diff --git a/lodash/lodash-3.10.d.ts b/lodash/lodash-3.10.d.ts index f4fcfb1d0..b2d05821d 100644 --- a/lodash/lodash-3.10.d.ts +++ b/lodash/lodash-3.10.d.ts @@ -4619,6 +4619,15 @@ declare module _ { thisArg?: any ): boolean; + /** + * @see _.some + */ + any( + collection: Object, + predicate?: ObjectIterator, + thisArg?: any + ): boolean; + /** * @see _.some */ @@ -4628,6 +4637,15 @@ declare module _ { thisArg?: any ): boolean; + /** + * @see _.some + */ + any( + collection: Object, + predicate?: string, + thisArg?: any + ): boolean; + /** * @see _.some */ @@ -4635,6 +4653,22 @@ declare module _ { collection: List|Dictionary|NumericDictionary, predicate?: TObject ): boolean; + + /** + * @see _.some + */ + any( + collection: List|Dictionary|NumericDictionary, + predicate?: Object + ): boolean; + + /** + * @see _.some + */ + any( + collection: Object, + predicate?: TObject + ): boolean; } interface LoDashImplicitArrayWrapper { @@ -4667,7 +4701,7 @@ declare module _ { * @see _.some */ any( - predicate?: ListIterator|DictionaryIterator|NumericDictionaryIterator, + predicate?: ListIterator|DictionaryIterator|NumericDictionaryIterator|ObjectIterator, thisArg?: any ): boolean; @@ -4717,7 +4751,7 @@ declare module _ { * @see _.some */ any( - predicate?: ListIterator|DictionaryIterator|NumericDictionaryIterator, + predicate?: ListIterator|DictionaryIterator|NumericDictionaryIterator|ObjectIterator, thisArg?: any ): LoDashExplicitWrapper; @@ -8291,6 +8325,15 @@ declare module _ { thisArg?: any ): boolean; + /** + * @see _.some + */ + some( + collection: Object, + predicate?: ObjectIterator, + thisArg?: any + ): boolean; + /** * @see _.some */ @@ -8300,6 +8343,15 @@ declare module _ { thisArg?: any ): boolean; + /** + * @see _.some + */ + some( + collection: Object, + predicate?: string, + thisArg?: any + ): boolean; + /** * @see _.some */ @@ -8307,6 +8359,22 @@ declare module _ { collection: List|Dictionary|NumericDictionary, predicate?: TObject ): boolean; + + /** + * @see _.some + */ + some( + collection: List|Dictionary|NumericDictionary, + predicate?: Object + ): boolean; + + /** + * @see _.some + */ + some( + collection: Object, + predicate?: TObject + ): boolean; } interface LoDashImplicitArrayWrapper { @@ -8339,7 +8407,7 @@ declare module _ { * @see _.some */ some( - predicate?: ListIterator|DictionaryIterator|NumericDictionaryIterator, + predicate?: ListIterator|DictionaryIterator|NumericDictionaryIterator|ObjectIterator, thisArg?: any ): boolean; @@ -8389,7 +8457,7 @@ declare module _ { * @see _.some */ some( - predicate?: ListIterator|DictionaryIterator|NumericDictionaryIterator, + predicate?: ListIterator|DictionaryIterator|NumericDictionaryIterator|ObjectIterator, thisArg?: any ): LoDashExplicitWrapper; diff --git a/lodash/lodash-tests.ts b/lodash/lodash-tests.ts index eb74bd0bb..c26dd55e9 100644 --- a/lodash/lodash-tests.ts +++ b/lodash/lodash-tests.ts @@ -4817,10 +4817,12 @@ namespace TestSome { let list: _.List; let dictionary: _.Dictionary; let numericDictionary: _.NumericDictionary; + let sampleObject: SampleObject; let listIterator: (value: SampleObject, index: number, collection: _.List) => boolean; let dictionaryIterator: (value: SampleObject, key: string, collection: _.Dictionary) => boolean; let numericDictionaryIterator: (value: SampleObject, key: number, collection: _.NumericDictionary) => boolean; + let objectIterator: (value: any, key: string, collection: any) => boolean; { let result: boolean; @@ -4849,6 +4851,12 @@ namespace TestSome { result = _.some(numericDictionary, ['a', 42]); result = _.some<{a: number}, SampleObject>(numericDictionary, {a: 42}); + result = _.some(sampleObject); + result = _.some(sampleObject, objectIterator); + result = _.some(sampleObject, 'a'); + result = _.some(sampleObject, ['a', 42]); + result = _.some<{a: number}>(sampleObject, {a: 42}); + result = _(array).some(); result = _(array).some(listIterator); result = _(array).some('a'); @@ -4872,6 +4880,12 @@ namespace TestSome { result = _(numericDictionary).some('a'); result = _(numericDictionary).some(['a', 42]); result = _(numericDictionary).some<{a: number}>({a: 42}); + + result = _(sampleObject).some(); + result = _(sampleObject).some(objectIterator); + result = _(sampleObject).some('a'); + result = _(sampleObject).some(['a', 42]); + result = _(sampleObject).some<{a: number}>({a: 42}); } { @@ -4900,6 +4914,12 @@ namespace TestSome { result = _(numericDictionary).chain().some('a'); result = _(numericDictionary).chain().some(['a', 42]); result = _(numericDictionary).chain().some<{a: number}>({a: 42}); + + result = _(sampleObject).chain().some(); + result = _(sampleObject).chain().some(objectIterator); + result = _(sampleObject).chain().some('a'); + result = _(sampleObject).chain().some(['a', 42]); + result = _(sampleObject).chain().some<{a: number}>({a: 42}); } } diff --git a/lodash/lodash.d.ts b/lodash/lodash.d.ts index 28c29ad9d..19f4732c4 100644 --- a/lodash/lodash.d.ts +++ b/lodash/lodash.d.ts @@ -8842,12 +8842,29 @@ declare module _ { predicate?: NumericDictionaryIterator ): boolean; + /** + * @see _.some + */ + some( + collection: Object, + predicate?: ObjectIterator + ): boolean; + /** * @see _.some */ some( collection: List|Dictionary|NumericDictionary, - predicate?: string|any[] + predicate?: string|[string, any] + ): boolean; + + + /** + * @see _.some + */ + some( + collection: Object, + predicate?: string|[string, any] ): boolean; /** @@ -8857,6 +8874,22 @@ declare module _ { collection: List|Dictionary|NumericDictionary, predicate?: TObject ): boolean; + + /** + * @see _.some + */ + some( + collection: List|Dictionary|NumericDictionary, + predicate?: Object + ): boolean; + + /** + * @see _.some + */ + some( + collection: Object, + predicate?: TObject + ): boolean; } interface LoDashImplicitArrayWrapper { @@ -8871,7 +8904,7 @@ declare module _ { * @see _.some */ some( - predicate?: string|any[] + predicate?: string|[string, any] ): boolean; /** @@ -8887,14 +8920,14 @@ declare module _ { * @see _.some */ some( - predicate?: ListIterator|DictionaryIterator|NumericDictionaryIterator + predicate?: ListIterator|DictionaryIterator|NumericDictionaryIterator|ObjectIterator ): boolean; /** * @see _.some */ some( - predicate?: string|any[] + predicate?: string|[string, any] ): boolean; /** @@ -8917,7 +8950,7 @@ declare module _ { * @see _.some */ some( - predicate?: string|any[] + predicate?: string|[string, any] ): LoDashExplicitWrapper; /** @@ -8933,14 +8966,14 @@ declare module _ { * @see _.some */ some( - predicate?: ListIterator|DictionaryIterator|NumericDictionaryIterator + predicate?: ListIterator|DictionaryIterator|NumericDictionaryIterator|ObjectIterator ): LoDashExplicitWrapper; /** * @see _.some */ some( - predicate?: string|any[] + predicate?: string|[string, any] ): LoDashExplicitWrapper; /**