@@ -229,7 +229,9 @@ export class ElementArrayFinder extends WebdriverWebElement {
229
229
* array
230
230
* of element that satisfy the filter function.
231
231
*/
232
- filter ( filterFn : ( element : ElementFinder , index ?: number ) => any ) : ElementArrayFinder {
232
+ filter (
233
+ filterFn : ( element : ElementFinder , index ?: number ) => boolean |
234
+ wdpromise . Promise < boolean > ) : ElementArrayFinder {
233
235
let getWebElements = ( ) : wdpromise . Promise < WebElement [ ] > => {
234
236
return this . getWebElements ( ) . then ( ( parentWebElements : WebElement [ ] ) => {
235
237
let list = parentWebElements . map ( ( parentWebElement : WebElement , index : number ) => {
@@ -539,7 +541,7 @@ export class ElementArrayFinder extends WebdriverWebElement {
539
541
* an array of ElementFinders represented by the ElementArrayFinder.
540
542
*/
541
543
then < T > (
542
- fn ?: ( value : ElementFinder [ ] ) => T | wdpromise . IThenable < T > ,
544
+ fn ?: ( value : ElementFinder [ ] | any [ ] ) => T | wdpromise . IThenable < T > ,
543
545
errorFn ?: ( error : any ) => any ) : wdpromise . Promise < T > {
544
546
if ( this . actionResults_ ) {
545
547
return this . actionResults_ . then ( fn , errorFn ) ;
@@ -636,8 +638,9 @@ export class ElementArrayFinder extends WebdriverWebElement {
636
638
* @returns {!webdriver.promise.Promise } A promise that resolves to an array
637
639
* of values returned by the map function.
638
640
*/
639
- map < T > ( mapFn : ( elementFinder ?: ElementFinder , index ?: number ) => T ) : wdpromise . Promise < T > {
640
- return this . asElementFinders_ ( ) . then ( ( arr : ElementFinder [ ] ) => {
641
+ map < T > ( mapFn : ( elementFinder ?: ElementFinder , index ?: number ) => T | any ) :
642
+ wdpromise . Promise < T [ ] > {
643
+ return this . asElementFinders_ ( ) . then < T [ ] > ( ( arr : ElementFinder [ ] ) => {
641
644
let list = arr . map ( ( elementFinder ?: ElementFinder , index ?: number ) => {
642
645
let mapResult = mapFn ( elementFinder , index ) ;
643
646
// All nested arrays and objects will also be fully resolved.
0 commit comments