all files / DEV/lib/protocol/ elementIdLocationInView.js

100% Statements 8/8
50% Branches 2/4
0% Functions 0/1
100% Lines 2/2
3 statements, 2 branches Ignored     
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34                                                                 
/**
 *
 * Determine an element's location on the screen once it has been scrolled into view.
 *
 * *Note:* This is considered an internal command and should only be used to determine
 * an element's location for correctly generating native events.
 *
 * @param {String} ID ID of a WebElement JSON object to route the command to
 * @returns {Object} The X and Y coordinates for the element (`{x:number, y:number}`)
 *
 * @see  https://code.google.com/p/selenium/wiki/JsonWireProtocol#/session/:sessionId/element/:id/location_in_view
 * @type protocol
 *
 */
 
'use strict';
 
Object.defineProperty(exports, '__esModule', {
    value: true
});
 
var _utilsErrorHandler = require('../utils/ErrorHandler');
 
var elementIdLocationInView = function elementIdLocationInView(id) {
    if (typeof id !== 'string' && typeof id !== 'number') {
        throw new _utilsErrorHandler.ProtocolError('number or type of arguments don\'t agree with elementIdLocationInView protocol command');
    }
 
    return this.requestHandler.create('/session/:sessionId/element/' + id + '/location_in_view');
};
 
exports['default'] = elementIdLocationInView;
module.exports = exports['default'];
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9jaHJpc3RpYW5icm9tYW5uL1NpdGVzL1dlYnByb2pla3RlL3dlYmRyaXZlcmpzL0RFVi9saWIvcHJvdG9jb2wvZWxlbWVudElkTG9jYXRpb25JblZpZXcuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O2lDQWU4Qix1QkFBdUI7O0FBRXJELElBQUksdUJBQXVCLEdBQUcsU0FBMUIsdUJBQXVCLENBQWEsRUFBRSxFQUFFO0FBQ3hDLFFBQUksT0FBTyxFQUFFLEtBQUssUUFBUSxJQUFJLE9BQU8sRUFBRSxLQUFLLFFBQVEsRUFBRTtBQUNsRCxjQUFNLHFDQUFrQix3RkFBd0YsQ0FBQyxDQUFBO0tBQ3BIOztBQUVELFdBQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLGtDQUFnQyxFQUFFLHVCQUFvQixDQUFBO0NBQzFGLENBQUE7O3FCQUVjLHVCQUF1QiIsImZpbGUiOiIvVXNlcnMvY2hyaXN0aWFuYnJvbWFubi9TaXRlcy9XZWJwcm9qZWt0ZS93ZWJkcml2ZXJqcy9ERVYvbGliL3Byb3RvY29sL2VsZW1lbnRJZExvY2F0aW9uSW5WaWV3LmpzIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKlxuICogRGV0ZXJtaW5lIGFuIGVsZW1lbnQncyBsb2NhdGlvbiBvbiB0aGUgc2NyZWVuIG9uY2UgaXQgaGFzIGJlZW4gc2Nyb2xsZWQgaW50byB2aWV3LlxuICpcbiAqICpOb3RlOiogVGhpcyBpcyBjb25zaWRlcmVkIGFuIGludGVybmFsIGNvbW1hbmQgYW5kIHNob3VsZCBvbmx5IGJlIHVzZWQgdG8gZGV0ZXJtaW5lXG4gKiBhbiBlbGVtZW50J3MgbG9jYXRpb24gZm9yIGNvcnJlY3RseSBnZW5lcmF0aW5nIG5hdGl2ZSBldmVudHMuXG4gKlxuICogQHBhcmFtIHtTdHJpbmd9IElEIElEIG9mIGEgV2ViRWxlbWVudCBKU09OIG9iamVjdCB0byByb3V0ZSB0aGUgY29tbWFuZCB0b1xuICogQHJldHVybnMge09iamVjdH0gVGhlIFggYW5kIFkgY29vcmRpbmF0ZXMgZm9yIHRoZSBlbGVtZW50IChge3g6bnVtYmVyLCB5Om51bWJlcn1gKVxuICpcbiAqIEBzZWUgIGh0dHBzOi8vY29kZS5nb29nbGUuY29tL3Avc2VsZW5pdW0vd2lraS9Kc29uV2lyZVByb3RvY29sIy9zZXNzaW9uLzpzZXNzaW9uSWQvZWxlbWVudC86aWQvbG9jYXRpb25faW5fdmlld1xuICogQHR5cGUgcHJvdG9jb2xcbiAqXG4gKi9cblxuaW1wb3J0IHsgUHJvdG9jb2xFcnJvciB9IGZyb20gJy4uL3V0aWxzL0Vycm9ySGFuZGxlcidcblxubGV0IGVsZW1lbnRJZExvY2F0aW9uSW5WaWV3ID0gZnVuY3Rpb24gKGlkKSB7XG4gICAgaWYgKHR5cGVvZiBpZCAhPT0gJ3N0cmluZycgJiYgdHlwZW9mIGlkICE9PSAnbnVtYmVyJykge1xuICAgICAgICB0aHJvdyBuZXcgUHJvdG9jb2xFcnJvcignbnVtYmVyIG9yIHR5cGUgb2YgYXJndW1lbnRzIGRvblxcJ3QgYWdyZWUgd2l0aCBlbGVtZW50SWRMb2NhdGlvbkluVmlldyBwcm90b2NvbCBjb21tYW5kJylcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5yZXF1ZXN0SGFuZGxlci5jcmVhdGUoYC9zZXNzaW9uLzpzZXNzaW9uSWQvZWxlbWVudC8ke2lkfS9sb2NhdGlvbl9pbl92aWV3YClcbn1cblxuZXhwb3J0IGRlZmF1bHQgZWxlbWVudElkTG9jYXRpb25JblZpZXdcbiJdfQ==