@serenity-js/protractor 3.0.0-rc.8 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +143 -2232
- package/README.md +39 -26
- package/lib/adapter/Config.d.ts +11 -9
- package/lib/adapter/Config.d.ts.map +1 -0
- package/lib/adapter/ProtractorFrameworkAdapter.d.ts +2 -3
- package/lib/adapter/ProtractorFrameworkAdapter.d.ts.map +1 -0
- package/lib/adapter/ProtractorFrameworkAdapter.js +14 -8
- package/lib/adapter/ProtractorFrameworkAdapter.js.map +1 -1
- package/lib/adapter/browser-detector/BrowserDetector.d.ts +1 -0
- package/lib/adapter/browser-detector/BrowserDetector.d.ts.map +1 -0
- package/lib/adapter/browser-detector/BrowserDetector.js +5 -5
- package/lib/adapter/browser-detector/BrowserDetector.js.map +1 -1
- package/lib/adapter/browser-detector/StandardisedCapabilities.d.ts +5 -4
- package/lib/adapter/browser-detector/StandardisedCapabilities.d.ts.map +1 -0
- package/lib/adapter/browser-detector/StandardisedCapabilities.js +17 -17
- package/lib/adapter/browser-detector/StandardisedCapabilities.js.map +1 -1
- package/lib/adapter/browser-detector/index.d.ts +1 -0
- package/lib/adapter/browser-detector/index.d.ts.map +1 -0
- package/lib/adapter/browser-detector/index.js +5 -1
- package/lib/adapter/browser-detector/index.js.map +1 -1
- package/lib/adapter/index.d.ts +2 -0
- package/lib/adapter/index.d.ts.map +1 -0
- package/lib/adapter/index.js +6 -1
- package/lib/adapter/index.js.map +1 -1
- package/lib/adapter/reporter/ProtractorReport.d.ts +5 -6
- package/lib/adapter/reporter/ProtractorReport.d.ts.map +1 -0
- package/lib/adapter/reporter/ProtractorReporter.d.ts +1 -0
- package/lib/adapter/reporter/ProtractorReporter.d.ts.map +1 -0
- package/lib/adapter/reporter/ProtractorReporter.js +10 -5
- package/lib/adapter/reporter/ProtractorReporter.js.map +1 -1
- package/lib/adapter/reporter/index.d.ts +1 -0
- package/lib/adapter/reporter/index.d.ts.map +1 -0
- package/lib/adapter/reporter/index.js +5 -1
- package/lib/adapter/reporter/index.js.map +1 -1
- package/lib/adapter/run.d.ts +7 -4
- package/lib/adapter/run.d.ts.map +1 -0
- package/lib/adapter/run.js +6 -4
- package/lib/adapter/run.js.map +1 -1
- package/lib/adapter/runner/CucumberAdapterConfig.d.ts +5 -10
- package/lib/adapter/runner/CucumberAdapterConfig.d.ts.map +1 -0
- package/lib/adapter/runner/TestRunnerDetector.d.ts +5 -12
- package/lib/adapter/runner/TestRunnerDetector.d.ts.map +1 -0
- package/lib/adapter/runner/TestRunnerDetector.js +7 -15
- package/lib/adapter/runner/TestRunnerDetector.js.map +1 -1
- package/lib/adapter/runner/TestRunnerLoader.d.ts +20 -17
- package/lib/adapter/runner/TestRunnerLoader.d.ts.map +1 -0
- package/lib/adapter/runner/TestRunnerLoader.js +18 -18
- package/lib/adapter/runner/TestRunnerLoader.js.map +1 -1
- package/lib/adapter/runner/index.d.ts +1 -0
- package/lib/adapter/runner/index.d.ts.map +1 -0
- package/lib/adapter/runner/index.js +5 -1
- package/lib/adapter/runner/index.js.map +1 -1
- package/lib/index.d.ts +1 -0
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +5 -1
- package/lib/index.js.map +1 -1
- package/lib/screenplay/abilities/BrowseTheWebWithProtractor.d.ts +62 -300
- package/lib/screenplay/abilities/BrowseTheWebWithProtractor.d.ts.map +1 -0
- package/lib/screenplay/abilities/BrowseTheWebWithProtractor.js +62 -418
- package/lib/screenplay/abilities/BrowseTheWebWithProtractor.js.map +1 -1
- package/lib/screenplay/abilities/index.d.ts +1 -0
- package/lib/screenplay/abilities/index.d.ts.map +1 -0
- package/lib/screenplay/abilities/index.js +5 -1
- package/lib/screenplay/abilities/index.js.map +1 -1
- package/lib/screenplay/index.d.ts +1 -0
- package/lib/screenplay/index.d.ts.map +1 -0
- package/lib/screenplay/index.js +5 -1
- package/lib/screenplay/index.js.map +1 -1
- package/lib/screenplay/interactions/UseAngular.d.ts +53 -48
- package/lib/screenplay/interactions/UseAngular.d.ts.map +1 -0
- package/lib/screenplay/interactions/UseAngular.js +52 -42
- package/lib/screenplay/interactions/UseAngular.js.map +1 -1
- package/lib/screenplay/interactions/index.d.ts +1 -0
- package/lib/screenplay/interactions/index.d.ts.map +1 -0
- package/lib/screenplay/interactions/index.js +5 -1
- package/lib/screenplay/interactions/index.js.map +1 -1
- package/lib/screenplay/models/ProtractorBrowsingSession.d.ts +22 -0
- package/lib/screenplay/models/ProtractorBrowsingSession.d.ts.map +1 -0
- package/lib/screenplay/models/ProtractorBrowsingSession.js +99 -0
- package/lib/screenplay/models/ProtractorBrowsingSession.js.map +1 -0
- package/lib/screenplay/models/ProtractorCookie.d.ts +6 -0
- package/lib/screenplay/models/ProtractorCookie.d.ts.map +1 -0
- package/lib/screenplay/models/ProtractorCookie.js +8 -3
- package/lib/screenplay/models/ProtractorCookie.js.map +1 -1
- package/lib/screenplay/models/ProtractorErrorHandler.d.ts +8 -0
- package/lib/screenplay/models/ProtractorErrorHandler.d.ts.map +1 -0
- package/lib/screenplay/models/ProtractorErrorHandler.js +23 -0
- package/lib/screenplay/models/ProtractorErrorHandler.js.map +1 -0
- package/lib/screenplay/models/ProtractorModalDialogHandler.d.ts +25 -0
- package/lib/screenplay/models/ProtractorModalDialogHandler.d.ts.map +1 -0
- package/lib/screenplay/models/ProtractorModalDialogHandler.js +74 -0
- package/lib/screenplay/models/ProtractorModalDialogHandler.js.map +1 -0
- package/lib/screenplay/models/ProtractorPage.d.ts +58 -6
- package/lib/screenplay/models/ProtractorPage.d.ts.map +1 -0
- package/lib/screenplay/models/ProtractorPage.js +221 -44
- package/lib/screenplay/models/ProtractorPage.js.map +1 -1
- package/lib/screenplay/models/ProtractorPageElement.d.ts +10 -1
- package/lib/screenplay/models/ProtractorPageElement.d.ts.map +1 -0
- package/lib/screenplay/models/ProtractorPageElement.js +140 -45
- package/lib/screenplay/models/ProtractorPageElement.js.map +1 -1
- package/lib/screenplay/models/index.d.ts +2 -1
- package/lib/screenplay/models/index.d.ts.map +1 -0
- package/lib/screenplay/models/index.js +6 -2
- package/lib/screenplay/models/index.js.map +1 -1
- package/lib/screenplay/models/locators/ProtractorLocator.d.ts +21 -8
- package/lib/screenplay/models/locators/ProtractorLocator.d.ts.map +1 -0
- package/lib/screenplay/models/locators/ProtractorLocator.js +107 -10
- package/lib/screenplay/models/locators/ProtractorLocator.js.map +1 -1
- package/lib/screenplay/models/locators/ProtractorRootLocator.d.ts +17 -0
- package/lib/screenplay/models/locators/ProtractorRootLocator.d.ts.map +1 -0
- package/lib/screenplay/models/locators/ProtractorRootLocator.js +38 -0
- package/lib/screenplay/models/locators/ProtractorRootLocator.js.map +1 -0
- package/lib/screenplay/models/locators/index.d.ts +2 -1
- package/lib/screenplay/models/locators/index.d.ts.map +1 -0
- package/lib/screenplay/models/locators/index.js +6 -2
- package/lib/screenplay/models/locators/index.js.map +1 -1
- package/lib/screenplay/promised.d.ts +3 -3
- package/lib/screenplay/promised.d.ts.map +1 -0
- package/lib/screenplay/promised.js +2 -3
- package/lib/screenplay/promised.js.map +1 -1
- package/lib/screenplay/questions/ProtractorParam.d.ts +64 -51
- package/lib/screenplay/questions/ProtractorParam.d.ts.map +1 -0
- package/lib/screenplay/questions/ProtractorParam.js +59 -47
- package/lib/screenplay/questions/ProtractorParam.js.map +1 -1
- package/lib/screenplay/questions/index.d.ts +1 -0
- package/lib/screenplay/questions/index.d.ts.map +1 -0
- package/lib/screenplay/questions/index.js +5 -1
- package/lib/screenplay/questions/index.js.map +1 -1
- package/lib/screenplay/unpromisedWebElement.d.ts +6 -4
- package/lib/screenplay/unpromisedWebElement.d.ts.map +1 -0
- package/lib/screenplay/unpromisedWebElement.js +5 -4
- package/lib/screenplay/unpromisedWebElement.js.map +1 -1
- package/package.json +36 -59
- package/src/adapter/Config.ts +10 -9
- package/src/adapter/ProtractorFrameworkAdapter.ts +20 -9
- package/src/adapter/browser-detector/BrowserDetector.ts +3 -3
- package/src/adapter/browser-detector/StandardisedCapabilities.ts +24 -24
- package/src/adapter/index.ts +1 -0
- package/src/adapter/reporter/ProtractorReport.ts +4 -6
- package/src/adapter/reporter/ProtractorReporter.ts +16 -16
- package/src/adapter/run.ts +6 -4
- package/src/adapter/runner/CucumberAdapterConfig.ts +5 -10
- package/src/adapter/runner/TestRunnerDetector.ts +5 -13
- package/src/adapter/runner/TestRunnerLoader.ts +21 -19
- package/src/screenplay/abilities/BrowseTheWebWithProtractor.ts +63 -474
- package/src/screenplay/interactions/UseAngular.ts +55 -44
- package/src/screenplay/models/ProtractorBrowsingSession.ts +133 -0
- package/src/screenplay/models/ProtractorCookie.ts +8 -3
- package/src/screenplay/models/ProtractorErrorHandler.ts +23 -0
- package/src/screenplay/models/ProtractorModalDialogHandler.ts +97 -0
- package/src/screenplay/models/ProtractorPage.ts +282 -54
- package/src/screenplay/models/ProtractorPageElement.ts +162 -66
- package/src/screenplay/models/index.ts +1 -1
- package/src/screenplay/models/locators/ProtractorLocator.ts +121 -31
- package/src/screenplay/models/locators/ProtractorRootLocator.ts +41 -0
- package/src/screenplay/models/locators/index.ts +1 -1
- package/src/screenplay/promised.ts +2 -3
- package/src/screenplay/questions/ProtractorParam.ts +62 -49
- package/src/screenplay/unpromisedWebElement.ts +5 -4
- package/tsconfig.build.json +14 -0
- package/lib/screenplay/models/ProtractorModalDialog.d.ts +0 -11
- package/lib/screenplay/models/ProtractorModalDialog.js +0 -43
- package/lib/screenplay/models/ProtractorModalDialog.js.map +0 -1
- package/lib/screenplay/models/locators/ProtractorNativeElementRoot.d.ts +0 -5
- package/lib/screenplay/models/locators/ProtractorNativeElementRoot.js +0 -3
- package/lib/screenplay/models/locators/ProtractorNativeElementRoot.js.map +0 -1
- package/src/screenplay/models/ProtractorModalDialog.ts +0 -49
- package/src/screenplay/models/locators/ProtractorNativeElementRoot.ts +0 -6
- package/tsconfig.eslint.json +0 -10
|
@@ -1,128 +1,223 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
2
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
26
|
exports.ProtractorPageElement = void 0;
|
|
27
|
+
const core_1 = require("@serenity-js/core");
|
|
4
28
|
const web_1 = require("@serenity-js/web");
|
|
29
|
+
const scripts = __importStar(require("@serenity-js/web/lib/scripts"));
|
|
5
30
|
const protractor_1 = require("protractor");
|
|
6
31
|
const promised_1 = require("../promised");
|
|
32
|
+
/**
|
|
33
|
+
* Protractor-specific implementation of {@apilink PageElement}.
|
|
34
|
+
*
|
|
35
|
+
* @group Models
|
|
36
|
+
*/
|
|
7
37
|
class ProtractorPageElement extends web_1.PageElement {
|
|
8
38
|
of(parent) {
|
|
9
39
|
return new ProtractorPageElement(this.locator.of(parent.locator));
|
|
10
40
|
}
|
|
11
41
|
async clearValue() {
|
|
12
|
-
function removeCharactersFrom(elf, numberOfCharacters) {
|
|
13
|
-
return numberOfCharacters === 0
|
|
14
|
-
? Promise.resolve(void 0)
|
|
15
|
-
: elf.sendKeys(protractor_1.protractor.Key.END, ...times(numberOfCharacters, protractor_1.protractor.Key.BACK_SPACE));
|
|
16
|
-
}
|
|
17
42
|
// eslint-disable-next-line unicorn/consistent-function-scoping
|
|
18
43
|
function times(length, key) {
|
|
19
44
|
return Array.from({ length }).map(() => key);
|
|
20
45
|
}
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
const
|
|
24
|
-
|
|
46
|
+
// eslint-disable-next-line unicorn/consistent-function-scoping
|
|
47
|
+
async function focusOn(element) {
|
|
48
|
+
const webElement = await element.getWebElement();
|
|
49
|
+
await (0, promised_1.promised)(webElement.getDriver().executeScript(`arguments[0].focus()`, webElement));
|
|
50
|
+
}
|
|
51
|
+
// eslint-disable-next-line unicorn/consistent-function-scoping
|
|
52
|
+
async function removeCharactersFrom(elf, numberOfCharacters) {
|
|
53
|
+
if (numberOfCharacters > 0) {
|
|
54
|
+
await focusOn(elf);
|
|
55
|
+
await elf.sendKeys(protractor_1.protractor.Key.HOME, ...times(numberOfCharacters, protractor_1.protractor.Key.DELETE));
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
const value = await this.value();
|
|
59
|
+
const hasValue = value !== null && value !== undefined;
|
|
60
|
+
const element = await this.nativeElement();
|
|
61
|
+
if (hasValue) {
|
|
62
|
+
return removeCharactersFrom(element, value.length);
|
|
63
|
+
}
|
|
64
|
+
const contentEditable = await (0, promised_1.promised)(element.getAttribute('contenteditable'));
|
|
65
|
+
const hasContentEditable = contentEditable !== null && contentEditable !== undefined && contentEditable !== 'false';
|
|
66
|
+
if (hasContentEditable) {
|
|
67
|
+
const text = await this.text();
|
|
68
|
+
return removeCharactersFrom(element, text.length);
|
|
25
69
|
}
|
|
26
70
|
}
|
|
27
71
|
async click() {
|
|
28
72
|
const element = await this.nativeElement();
|
|
29
|
-
|
|
73
|
+
await (0, promised_1.promised)(element.click());
|
|
30
74
|
}
|
|
31
75
|
async doubleClick() {
|
|
32
76
|
const element = await this.nativeElement();
|
|
33
77
|
const webElement = await element.getWebElement();
|
|
34
|
-
|
|
78
|
+
await (0, promised_1.promised)(webElement.getDriver().actions()
|
|
35
79
|
.mouseMove(webElement)
|
|
36
80
|
.doubleClick()
|
|
37
81
|
.perform());
|
|
38
82
|
}
|
|
39
83
|
async enterValue(value) {
|
|
40
84
|
const element = await this.nativeElement();
|
|
41
|
-
|
|
85
|
+
await (0, promised_1.promised)(element.sendKeys([].concat(value).join('')));
|
|
42
86
|
}
|
|
43
87
|
async scrollIntoView() {
|
|
44
88
|
const element = await this.nativeElement();
|
|
45
89
|
const webElement = await element.getWebElement();
|
|
46
|
-
|
|
90
|
+
await (0, promised_1.promised)(webElement.getDriver().executeScript('arguments[0].scrollIntoView(true);', webElement));
|
|
47
91
|
}
|
|
48
92
|
async hoverOver() {
|
|
49
93
|
const element = await this.nativeElement();
|
|
50
94
|
const webElement = await element.getWebElement();
|
|
51
|
-
|
|
95
|
+
await (0, promised_1.promised)(webElement.getDriver().actions()
|
|
52
96
|
.mouseMove(webElement)
|
|
53
97
|
.perform());
|
|
54
98
|
}
|
|
55
99
|
async rightClick() {
|
|
56
100
|
const element = await this.nativeElement();
|
|
57
101
|
const webElement = await element.getWebElement();
|
|
58
|
-
|
|
102
|
+
await (0, promised_1.promised)(webElement.getDriver().actions()
|
|
59
103
|
.mouseMove(webElement)
|
|
60
104
|
.click(protractor_1.protractor.Button.RIGHT)
|
|
61
105
|
.perform());
|
|
62
106
|
}
|
|
107
|
+
async selectOptions(...options) {
|
|
108
|
+
const element = await this.nativeElement();
|
|
109
|
+
for (const option of options) {
|
|
110
|
+
if (option.value) {
|
|
111
|
+
await (0, promised_1.promised)(element.element(protractor_1.by.xpath(`//option[@value='${option.value}']`)).click());
|
|
112
|
+
}
|
|
113
|
+
else if (option.label) {
|
|
114
|
+
await (0, promised_1.promised)(element.element(protractor_1.by.cssContainingText('option', option.label)).click());
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
async selectedOptions() {
|
|
119
|
+
const element = await this.locator.nativeElement();
|
|
120
|
+
const webElement = await element.getWebElement();
|
|
121
|
+
const browser = element.browser_;
|
|
122
|
+
const options = await browser.executeScript(
|
|
123
|
+
/* istanbul ignore next */
|
|
124
|
+
(select) => {
|
|
125
|
+
const options = [];
|
|
126
|
+
select.querySelectorAll('option').forEach((option) => {
|
|
127
|
+
options.push({
|
|
128
|
+
selected: option.selected,
|
|
129
|
+
disabled: option.disabled,
|
|
130
|
+
label: option.label,
|
|
131
|
+
value: option.value,
|
|
132
|
+
});
|
|
133
|
+
});
|
|
134
|
+
return options;
|
|
135
|
+
}, webElement);
|
|
136
|
+
return options.map(option => new web_1.SelectOption(option.label, option.value, option.selected, option.disabled));
|
|
137
|
+
}
|
|
63
138
|
async attribute(name) {
|
|
64
139
|
const element = await this.nativeElement();
|
|
65
|
-
return element.getAttribute(name);
|
|
140
|
+
return await (0, promised_1.promised)(element.getAttribute(name));
|
|
66
141
|
}
|
|
67
142
|
async text() {
|
|
68
143
|
const element = await this.nativeElement();
|
|
69
|
-
return element.getText();
|
|
144
|
+
return await (0, promised_1.promised)(element.getText());
|
|
70
145
|
}
|
|
71
146
|
async value() {
|
|
72
147
|
const element = await this.nativeElement();
|
|
73
148
|
const webElement = await element.getWebElement();
|
|
74
|
-
return (0, promised_1.promised)(webElement.getDriver().executeScript(
|
|
149
|
+
return await (0, promised_1.promised)(webElement.getDriver().executeScript(
|
|
75
150
|
/* istanbul ignore next */
|
|
76
151
|
function getValue(webElement) {
|
|
77
152
|
return webElement.value;
|
|
78
153
|
}, webElement));
|
|
79
154
|
}
|
|
155
|
+
async switchTo() {
|
|
156
|
+
const element = await this.locator.nativeElement();
|
|
157
|
+
try {
|
|
158
|
+
const tagName = await element.getTagName();
|
|
159
|
+
if (['iframe', 'frame'].includes(tagName)) {
|
|
160
|
+
const locator = this.locator;
|
|
161
|
+
await locator.switchToFrame(element);
|
|
162
|
+
return {
|
|
163
|
+
switchBack: async () => {
|
|
164
|
+
await locator.switchToParentFrame();
|
|
165
|
+
},
|
|
166
|
+
};
|
|
167
|
+
}
|
|
168
|
+
else {
|
|
169
|
+
// https://github.com/angular/protractor/issues/1846#issuecomment-82634739;
|
|
170
|
+
const webElement = await element.getWebElement();
|
|
171
|
+
// focus on element
|
|
172
|
+
const previouslyFocusedElement = await (0, promised_1.promised)(webElement.getDriver().switchTo().activeElement());
|
|
173
|
+
await (0, promised_1.promised)(webElement.getDriver().executeScript(`arguments[0].focus()`, webElement));
|
|
174
|
+
return {
|
|
175
|
+
switchBack: async () => {
|
|
176
|
+
await (0, promised_1.promised)(webElement.getDriver().executeScript(`arguments[0].focus()`, previouslyFocusedElement));
|
|
177
|
+
},
|
|
178
|
+
};
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
catch (error) {
|
|
182
|
+
throw new core_1.LogicError(`Couldn't switch to page element located ${this.locator}`, error);
|
|
183
|
+
}
|
|
184
|
+
}
|
|
80
185
|
async isActive() {
|
|
81
186
|
const element = await this.nativeElement();
|
|
82
187
|
const webElement = await element.getWebElement();
|
|
83
|
-
return webElement.getDriver().switchTo().activeElement().then((active) => element.equals(active));
|
|
188
|
+
return await (0, promised_1.promised)(webElement.getDriver().switchTo().activeElement().then((active) => element.equals(active)));
|
|
84
189
|
}
|
|
85
190
|
async isClickable() {
|
|
86
|
-
return this.isEnabled();
|
|
191
|
+
return await this.isEnabled();
|
|
87
192
|
}
|
|
88
193
|
async isEnabled() {
|
|
89
194
|
const element = await this.nativeElement();
|
|
90
|
-
return element.isEnabled();
|
|
195
|
+
return await (0, promised_1.promised)(element.isEnabled());
|
|
91
196
|
}
|
|
92
197
|
async isPresent() {
|
|
93
198
|
const element = await this.nativeElement();
|
|
94
|
-
return element.isPresent();
|
|
199
|
+
return await (0, promised_1.promised)(element.isPresent());
|
|
95
200
|
}
|
|
96
201
|
async isSelected() {
|
|
97
202
|
const element = await this.nativeElement();
|
|
98
|
-
return element.isSelected();
|
|
203
|
+
return await (0, promised_1.promised)(element.isSelected());
|
|
99
204
|
}
|
|
100
205
|
async isVisible() {
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
}
|
|
105
|
-
const webElement = await element.getWebElement();
|
|
106
|
-
// get element at cx/cy and see if the element we found is our element, and therefore it's visible.
|
|
107
|
-
return (0, promised_1.promised)(webElement.getDriver().executeScript(`
|
|
108
|
-
var elem = arguments[0];
|
|
109
|
-
|
|
110
|
-
if (! elem.getBoundingClientRect) {
|
|
206
|
+
try {
|
|
207
|
+
const element = await this.nativeElement();
|
|
208
|
+
if (!await element.isDisplayed()) {
|
|
111
209
|
return false;
|
|
112
210
|
}
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
for (; e; e = e.parentElement) {
|
|
121
|
-
if (e === elem)
|
|
122
|
-
return true;
|
|
211
|
+
const webElement = await element.getWebElement();
|
|
212
|
+
// get element at cx/cy and see if the element we found is our element, and therefore it's visible.
|
|
213
|
+
return await (0, promised_1.promised)(webElement.getDriver().executeScript(scripts.isVisible, webElement));
|
|
214
|
+
}
|
|
215
|
+
catch (error) {
|
|
216
|
+
if (error.name === 'NoSuchElementError') {
|
|
217
|
+
return false;
|
|
123
218
|
}
|
|
124
|
-
|
|
125
|
-
|
|
219
|
+
throw error;
|
|
220
|
+
}
|
|
126
221
|
}
|
|
127
222
|
}
|
|
128
223
|
exports.ProtractorPageElement = ProtractorPageElement;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProtractorPageElement.js","sourceRoot":"","sources":["../../../src/screenplay/models/ProtractorPageElement.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ProtractorPageElement.js","sourceRoot":"","sources":["../../../src/screenplay/models/ProtractorPageElement.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/screenplay/models/index.ts"],"names":[],"mappings":"AAAA,cAAc,6BAA6B,CAAC;AAC5C,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,yBAAyB,CAAC"}
|
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
3
|
if (k2 === undefined) k2 = k;
|
|
4
|
-
Object.
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
5
9
|
}) : (function(o, m, k, k2) {
|
|
6
10
|
if (k2 === undefined) k2 = k;
|
|
7
11
|
o[k2] = m[k];
|
|
@@ -10,8 +14,8 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
10
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
11
15
|
};
|
|
12
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./ProtractorBrowsingSession"), exports);
|
|
13
18
|
__exportStar(require("./ProtractorCookie"), exports);
|
|
14
|
-
__exportStar(require("./ProtractorModalDialog"), exports);
|
|
15
19
|
__exportStar(require("./ProtractorPage"), exports);
|
|
16
20
|
__exportStar(require("./ProtractorPageElement"), exports);
|
|
17
21
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/screenplay/models/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/screenplay/models/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8DAA4C;AAC5C,qDAAmC;AACnC,mDAAiC;AACjC,0DAAwC"}
|
|
@@ -1,9 +1,22 @@
|
|
|
1
|
-
import { Locator, PageElement, Selector } from '@serenity-js/web';
|
|
2
|
-
import
|
|
3
|
-
import {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
1
|
+
import { Locator, PageElement, RootLocator, Selector } from '@serenity-js/web';
|
|
2
|
+
import * as protractor from 'protractor';
|
|
3
|
+
import { ProtractorErrorHandler } from '../ProtractorErrorHandler';
|
|
4
|
+
/**
|
|
5
|
+
* Protractor-specific implementation of {@apilink Locator}.
|
|
6
|
+
*
|
|
7
|
+
* @group Models
|
|
8
|
+
*/
|
|
9
|
+
export declare class ProtractorLocator extends Locator<protractor.ElementFinder, protractor.Locator> {
|
|
10
|
+
private readonly errorHandler;
|
|
11
|
+
constructor(parent: RootLocator<protractor.ElementFinder>, selector: Selector, errorHandler: ProtractorErrorHandler);
|
|
12
|
+
protected nativeSelector(): protractor.Locator;
|
|
13
|
+
isPresent(): Promise<boolean>;
|
|
14
|
+
nativeElement(): Promise<protractor.ElementFinder>;
|
|
15
|
+
private resolveNativeElement;
|
|
16
|
+
allNativeElements(): Promise<Array<protractor.ElementFinder>>;
|
|
17
|
+
of(parent: ProtractorLocator): Locator<protractor.ElementFinder, protractor.Locator>;
|
|
18
|
+
locate(child: ProtractorLocator): Locator<protractor.ElementFinder, any>;
|
|
19
|
+
element(): PageElement<protractor.ElementFinder>;
|
|
20
|
+
allElements(): Promise<Array<PageElement<protractor.ElementFinder>>>;
|
|
9
21
|
}
|
|
22
|
+
//# sourceMappingURL=ProtractorLocator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ProtractorLocator.d.ts","sourceRoot":"","sources":["../../../../src/screenplay/models/locators/ProtractorLocator.ts"],"names":[],"mappings":"AACA,OAAO,EAAmE,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAChJ,OAAO,KAAK,UAAU,MAAM,YAAY,CAAC;AAGzC,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAInE;;;;GAIG;AACH,qBAAa,iBAAkB,SAAQ,OAAO,CAAC,UAAU,CAAC,aAAa,EAAE,UAAU,CAAC,OAAO,CAAC;IAKpF,OAAO,CAAC,QAAQ,CAAC,YAAY;gBAF7B,MAAM,EAAE,WAAW,CAAC,UAAU,CAAC,aAAa,CAAC,EAC7C,QAAQ,EAAE,QAAQ,EACD,YAAY,EAAE,sBAAsB;IAMzD,SAAS,CAAC,cAAc,IAAI,UAAU,CAAC,OAAO;IAgCxC,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC;IAU7B,aAAa,IAAI,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC;YAS1C,oBAAoB;IAU5B,iBAAiB,IAAI,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;IAKnE,EAAE,CAAC,MAAM,EAAE,iBAAiB,GAAG,OAAO,CAAC,UAAU,CAAC,aAAa,EAAE,UAAU,CAAC,OAAO,CAAC;IAIpF,MAAM,CAAC,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,UAAU,CAAC,aAAa,EAAE,GAAG,CAAC;IAIxE,OAAO,IAAI,WAAW,CAAC,UAAU,CAAC,aAAa,CAAC;IAI1C,WAAW,IAAI,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC;CAc7E"}
|
|
@@ -1,28 +1,125 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
2
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
26
|
exports.ProtractorLocator = void 0;
|
|
27
|
+
const core_1 = require("@serenity-js/core");
|
|
4
28
|
const web_1 = require("@serenity-js/web");
|
|
29
|
+
const protractor = __importStar(require("protractor"));
|
|
5
30
|
const unpromisedWebElement_1 = require("../../unpromisedWebElement");
|
|
6
31
|
const ProtractorPageElement_1 = require("../ProtractorPageElement");
|
|
32
|
+
/**
|
|
33
|
+
* Protractor-specific implementation of {@apilink Locator}.
|
|
34
|
+
*
|
|
35
|
+
* @group Models
|
|
36
|
+
*/
|
|
7
37
|
class ProtractorLocator extends web_1.Locator {
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
38
|
+
constructor(parent, selector, errorHandler) {
|
|
39
|
+
super(parent, selector);
|
|
40
|
+
this.errorHandler = errorHandler;
|
|
41
|
+
}
|
|
42
|
+
// todo: refactor; replace with a map and some more generic lookup mechanism
|
|
43
|
+
nativeSelector() {
|
|
44
|
+
if (this.selector instanceof web_1.ByCss) {
|
|
45
|
+
return protractor.by.css(this.selector.value);
|
|
46
|
+
}
|
|
47
|
+
if (this.selector instanceof web_1.ByDeepCss) {
|
|
48
|
+
if (!protractor.by.shadowDomCss) {
|
|
49
|
+
throw new core_1.LogicError(`By.deepCss() requires query-selector-shadow-dom plugin, which Serenity/JS ProtractorFrameworkAdapter registers by default. If you're using Serenity/JS without ProtractorFrameworkAdapter, please register the plugin yourself.`);
|
|
50
|
+
}
|
|
51
|
+
return protractor.by.shadowDomCss(this.selector.value.replace('>>>', '').trim());
|
|
52
|
+
}
|
|
53
|
+
if (this.selector instanceof web_1.ByCssContainingText) {
|
|
54
|
+
return protractor.by.cssContainingText(this.selector.value, this.selector.text);
|
|
55
|
+
}
|
|
56
|
+
if (this.selector instanceof web_1.ById) {
|
|
57
|
+
return protractor.by.id(this.selector.value);
|
|
58
|
+
}
|
|
59
|
+
if (this.selector instanceof web_1.ByTagName) {
|
|
60
|
+
return protractor.by.tagName(this.selector.value);
|
|
61
|
+
}
|
|
62
|
+
if (this.selector instanceof web_1.ByXPath) {
|
|
63
|
+
return protractor.by.xpath(this.selector.value);
|
|
64
|
+
}
|
|
65
|
+
throw new core_1.LogicError((0, core_1.f) `${this.selector} is not supported by ${this.constructor.name}`);
|
|
66
|
+
}
|
|
67
|
+
async isPresent() {
|
|
68
|
+
try {
|
|
69
|
+
const element = await this.resolveNativeElement();
|
|
70
|
+
return Boolean(element);
|
|
71
|
+
}
|
|
72
|
+
catch {
|
|
73
|
+
return false;
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
async nativeElement() {
|
|
77
|
+
try {
|
|
78
|
+
return await this.resolveNativeElement();
|
|
79
|
+
}
|
|
80
|
+
catch (error) {
|
|
81
|
+
return await this.errorHandler.executeIfHandled(error, () => this.resolveNativeElement());
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
async resolveNativeElement() {
|
|
85
|
+
const parent = await this.parent.nativeElement();
|
|
86
|
+
const result = await (0, unpromisedWebElement_1.unpromisedWebElement)(parent.element(this.nativeSelector()));
|
|
87
|
+
// checks if the element can be interacted with; in particular, throws unexpected alert present if there is one
|
|
88
|
+
await result.isPresent();
|
|
89
|
+
return result;
|
|
90
|
+
}
|
|
91
|
+
async allNativeElements() {
|
|
92
|
+
const parent = await this.parent.nativeElement();
|
|
93
|
+
return parent.all(this.nativeSelector());
|
|
14
94
|
}
|
|
15
95
|
of(parent) {
|
|
16
|
-
return new ProtractorLocator(
|
|
96
|
+
return new ProtractorLocator(parent, this.selector, this.errorHandler);
|
|
97
|
+
}
|
|
98
|
+
locate(child) {
|
|
99
|
+
return new ProtractorLocator(this, child.selector, this.errorHandler);
|
|
17
100
|
}
|
|
18
101
|
element() {
|
|
19
102
|
return new ProtractorPageElement_1.ProtractorPageElement(this);
|
|
20
103
|
}
|
|
21
104
|
async allElements() {
|
|
22
|
-
const
|
|
23
|
-
|
|
24
|
-
return Promise.all(elements.map(childElement => new ProtractorPageElement_1.ProtractorPageElement(new ProtractorLocator(this.parentRoot, this.selector, () => (0, unpromisedWebElement_1.unpromisedWebElement)(childElement), () => [(0, unpromisedWebElement_1.unpromisedWebElement)(childElement)]))));
|
|
105
|
+
const elements = await this.allNativeElements();
|
|
106
|
+
return Promise.all(elements.map(childElement => new ProtractorPageElement_1.ProtractorPageElement(new ExistingElementLocator(this.parent, this.selector, this.errorHandler, (0, unpromisedWebElement_1.unpromisedWebElement)(childElement)))));
|
|
25
107
|
}
|
|
26
108
|
}
|
|
27
109
|
exports.ProtractorLocator = ProtractorLocator;
|
|
110
|
+
/**
|
|
111
|
+
* @private
|
|
112
|
+
*/
|
|
113
|
+
class ExistingElementLocator extends ProtractorLocator {
|
|
114
|
+
constructor(parent, selector, errorHandler, existingNativeElement) {
|
|
115
|
+
super(parent, selector, errorHandler);
|
|
116
|
+
this.existingNativeElement = existingNativeElement;
|
|
117
|
+
}
|
|
118
|
+
async nativeElement() {
|
|
119
|
+
return this.existingNativeElement;
|
|
120
|
+
}
|
|
121
|
+
async allNativeElements() {
|
|
122
|
+
return [this.existingNativeElement];
|
|
123
|
+
}
|
|
124
|
+
}
|
|
28
125
|
//# sourceMappingURL=ProtractorLocator.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProtractorLocator.js","sourceRoot":"","sources":["../../../../src/screenplay/models/locators/ProtractorLocator.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ProtractorLocator.js","sourceRoot":"","sources":["../../../../src/screenplay/models/locators/ProtractorLocator.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { RootLocator } from '@serenity-js/web';
|
|
2
|
+
import * as protractor from 'protractor';
|
|
3
|
+
/**
|
|
4
|
+
* Protractor-specific implementation of {@apilink RootLocator}.
|
|
5
|
+
*
|
|
6
|
+
* @group Models
|
|
7
|
+
*/
|
|
8
|
+
export declare class ProtractorRootLocator extends RootLocator<protractor.ElementFinder> {
|
|
9
|
+
private readonly browser;
|
|
10
|
+
constructor(browser: protractor.ProtractorBrowser);
|
|
11
|
+
isPresent(): Promise<boolean>;
|
|
12
|
+
nativeElement(): Promise<Pick<protractor.ElementFinder, 'element' | 'all'>>;
|
|
13
|
+
switchToFrame(element: protractor.ElementFinder): Promise<void>;
|
|
14
|
+
switchToParentFrame(): Promise<void>;
|
|
15
|
+
switchToMainFrame(): Promise<void>;
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=ProtractorRootLocator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ProtractorRootLocator.d.ts","sourceRoot":"","sources":["../../../../src/screenplay/models/locators/ProtractorRootLocator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,KAAK,UAAU,MAAM,YAAY,CAAC;AAIzC;;;;GAIG;AACH,qBAAa,qBAAsB,SAAQ,WAAW,CAAC,UAAU,CAAC,aAAa,CAAC;IAChE,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAAP,OAAO,EAAE,UAAU,CAAC,iBAAiB;IAI5D,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC;IAI7B,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,SAAS,GAAG,KAAK,CAAC,CAAC;IAO3E,aAAa,CAAC,OAAO,EAAE,UAAU,CAAC,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAO/D,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;IAIpC,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC;CAG3C"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ProtractorRootLocator = void 0;
|
|
4
|
+
const web_1 = require("@serenity-js/web");
|
|
5
|
+
const promised_1 = require("../../promised");
|
|
6
|
+
/**
|
|
7
|
+
* Protractor-specific implementation of {@apilink RootLocator}.
|
|
8
|
+
*
|
|
9
|
+
* @group Models
|
|
10
|
+
*/
|
|
11
|
+
class ProtractorRootLocator extends web_1.RootLocator {
|
|
12
|
+
constructor(browser) {
|
|
13
|
+
super();
|
|
14
|
+
this.browser = browser;
|
|
15
|
+
}
|
|
16
|
+
async isPresent() {
|
|
17
|
+
return true;
|
|
18
|
+
}
|
|
19
|
+
async nativeElement() {
|
|
20
|
+
return {
|
|
21
|
+
element: this.browser.element.bind(this.browser),
|
|
22
|
+
all: this.browser.element.all.bind(this.browser),
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
async switchToFrame(element) {
|
|
26
|
+
// https://github.com/angular/protractor/issues/1846#issuecomment-82634739;
|
|
27
|
+
const webElement = await element.getWebElement();
|
|
28
|
+
await (0, promised_1.promised)(this.browser.switchTo().frame(webElement));
|
|
29
|
+
}
|
|
30
|
+
async switchToParentFrame() {
|
|
31
|
+
await (0, promised_1.promised)(this.browser.driver.switchToParentFrame());
|
|
32
|
+
}
|
|
33
|
+
async switchToMainFrame() {
|
|
34
|
+
await (0, promised_1.promised)(this.browser.driver.switchTo().defaultContent());
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
exports.ProtractorRootLocator = ProtractorRootLocator;
|
|
38
|
+
//# sourceMappingURL=ProtractorRootLocator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ProtractorRootLocator.js","sourceRoot":"","sources":["../../../../src/screenplay/models/locators/ProtractorRootLocator.ts"],"names":[],"mappings":";;;AAAA,0CAA+C;AAG/C,6CAA0C;AAE1C;;;;GAIG;AACH,MAAa,qBAAsB,SAAQ,iBAAqC;IAC5E,YAA6B,OAAqC;QAC9D,KAAK,EAAE,CAAC;QADiB,YAAO,GAAP,OAAO,CAA8B;IAElE,CAAC;IAED,KAAK,CAAC,SAAS;QACX,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,aAAa;QACf,OAAO;YACH,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;YAChD,GAAG,EAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;SACvD,CAAC;IACN,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,OAAiC;QACjD,2EAA2E;QAC3E,MAAM,UAAU,GAAG,MAAM,OAAO,CAAC,aAAa,EAAE,CAAC;QAEjD,MAAM,IAAA,mBAAQ,EAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,KAAK,CAAC,mBAAmB;QACrB,MAAM,IAAA,mBAAQ,EAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,mBAAmB,EAAE,CAAC,CAAC;IAC9D,CAAC;IAED,KAAK,CAAC,iBAAiB;QACnB,MAAM,IAAA,mBAAQ,EAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,cAAc,EAAE,CAAC,CAAC;IACpE,CAAC;CACJ;AA9BD,sDA8BC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/screenplay/models/locators/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC"}
|
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
3
|
if (k2 === undefined) k2 = k;
|
|
4
|
-
Object.
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
5
9
|
}) : (function(o, m, k, k2) {
|
|
6
10
|
if (k2 === undefined) k2 = k;
|
|
7
11
|
o[k2] = m[k];
|
|
@@ -11,5 +15,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
11
15
|
};
|
|
12
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
17
|
__exportStar(require("./ProtractorLocator"), exports);
|
|
14
|
-
__exportStar(require("./
|
|
18
|
+
__exportStar(require("./ProtractorRootLocator"), exports);
|
|
15
19
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/screenplay/models/locators/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/screenplay/models/locators/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,sDAAoC;AACpC,0DAAwC"}
|