@@ -131,9 +131,8 @@ export class ElementArrayFinder extends WebdriverWebElement {
131
131
/**
132
132
* Calls to ElementArrayFinder may be chained to find an array of elements
133
133
* using the current elements in this ElementArrayFinder as the starting
134
- * point.
135
- * This function returns a new ElementArrayFinder which would contain the
136
- * children elements found (and could also be empty).
134
+ * point. This function returns a new ElementArrayFinder which would contain
135
+ * the children elements found (and could also be empty).
137
136
*
138
137
* @alias element.all(locator).all(locator)
139
138
* @view
@@ -167,13 +166,15 @@ export class ElementArrayFinder extends WebdriverWebElement {
167
166
let getWebElements = ( ) => {
168
167
if ( this . getWebElements === null ) {
169
168
// This is the first time we are looking for an element
170
- return ptor . waitForAngular ( 'Locator: ' + locator ) . then ( ( ) => {
171
- if ( locator . findElementsOverride ) {
172
- return locator . findElementsOverride ( ptor . driver , null , ptor . rootEl ) ;
173
- } else {
174
- return ptor . driver . findElements ( locator ) ;
175
- }
176
- } ) ;
169
+ return ptor . waitForAngular ( 'Locator: ' + locator )
170
+ . then ( ( ) : webdriver . promise . Promise < webdriver . WebElement [ ] > => {
171
+ if ( locator . findElementsOverride ) {
172
+ return locator . findElementsOverride (
173
+ ptor . driver , null , ptor . rootEl ) ;
174
+ } else {
175
+ return ptor . driver . findElements ( locator ) ;
176
+ }
177
+ } ) ;
177
178
} else {
178
179
return this . getWebElements ( ) . then (
179
180
( parentWebElements : webdriver . WebElement [ ] ) => {
@@ -208,13 +209,10 @@ export class ElementArrayFinder extends WebdriverWebElement {
208
209
209
210
/**
210
211
* Apply a filter function to each element within the ElementArrayFinder.
211
- * Returns
212
- * a new ElementArrayFinder with all elements that pass the filter function.
213
- * The
214
- * filter function receives the ElementFinder as the first argument
215
- * and the index as a second arg.
216
- * This does not actually retrieve the underlying list of elements, so it can
217
- * be used in page objects.
212
+ * Returns a new ElementArrayFinder with all elements that pass the filter
213
+ * function. The filter function receives the ElementFinder as the first
214
+ * argument and the index as a second arg. This does not actually retrieve
215
+ * the underlying list of elements, so it can be used in page objects.
218
216
*
219
217
* @alias element.all(locator).filter(filterFn)
220
218
* @view
@@ -263,8 +261,7 @@ export class ElementArrayFinder extends WebdriverWebElement {
263
261
264
262
/**
265
263
* Get an element within the ElementArrayFinder by index. The index starts at
266
- * 0.
267
- * Negative indices are wrapped (i.e. -i means ith element from last)
264
+ * 0. Negative indices are wrapped (i.e. -i means ith element from last)
268
265
* This does not actually retrieve the underlying element.
269
266
*
270
267
* @alias element.all(locator).get(index)
@@ -751,7 +748,7 @@ export class ElementFinder extends WebdriverWebElement {
751
748
// This filter verifies that there is only 1 element returned by the
752
749
// elementArrayFinder. It will warn if there are more than 1 element and
753
750
// throw an error if there are no elements.
754
- let getWebElements = ( ) => {
751
+ let getWebElements = ( ) : webdriver . WebElement [ ] => {
755
752
return elementArrayFinder . getWebElements ( ) . then (
756
753
( webElements : webdriver . WebElement [ ] ) => {
757
754
if ( webElements . length === 0 ) {
@@ -961,12 +958,12 @@ export class ElementFinder extends WebdriverWebElement {
961
958
* // Element not present.
962
959
* expect(element(by.binding('notPresent')).isPresent()).toBe(false);
963
960
*
964
- * @returns {ElementFinder } which resolves to whether
961
+ * @returns {webdriver.promise.Promise<boolean> } which resolves to whether
965
962
* the element is present on the page.
966
963
*/
967
- isPresent ( ) : ElementFinder {
964
+ isPresent ( ) : webdriver . promise . Promise < boolean > {
968
965
return this . parentElementArrayFinder . getWebElements ( ) . then (
969
- ( arr : webdriver . WebElement [ ] ) => {
966
+ ( arr : any ) => {
970
967
if ( arr . length === 0 ) {
971
968
return false ;
972
969
}
@@ -995,16 +992,16 @@ export class ElementFinder extends WebdriverWebElement {
995
992
/**
996
993
* Same as ElementFinder.isPresent(), except this checks whether the element
997
994
* identified by the subLocator is present, rather than the current element
998
- * finder. i.e. `element(by.css('#abc')).element(by.css('#def')).isPresent()` is
999
- * identical to `element(by.css('#abc')).isElementPresent(by.css('#def'))`.
995
+ * finder. i.e. `element(by.css('#abc')).element(by.css('#def')).isPresent()`
996
+ * is identical to `element(by.css('#abc')).isElementPresent(by.css('#def'))`.
1000
997
*
1001
998
* @see ElementFinder.isPresent
1002
999
*
1003
1000
* @param {webdriver.Locator } subLocator Locator for element to look for.
1004
- * @returns {ElementFinder } which resolves to whether
1001
+ * @returns {webdriver.promise.Promise<boolean> } which resolves to whether
1005
1002
* the subelement is present on the page.
1006
1003
*/
1007
- isElementPresent ( subLocator : any ) : ElementFinder {
1004
+ isElementPresent ( subLocator : any ) : webdriver . promise . Promise < boolean > {
1008
1005
if ( ! subLocator ) {
1009
1006
throw new Error (
1010
1007
'SubLocator is not supplied as a parameter to ' +
0 commit comments