oxygen-cli 1.25.0-beta.2 → 1.25.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/.husky/pre-commit +4 -0
- package/CHANGELOG.md +65 -0
- package/build/core/OxygenCore.js +36 -257
- package/build/core/OxygenEvents.js +1 -11
- package/build/core/OxygenModule.js +1 -14
- package/build/core/OxygenService.js +1 -12
- package/build/core/OxygenSubModule.js +1 -10
- package/build/core/WebDriverModule.js +1 -30
- package/build/core/utils.js +1 -17
- package/build/errors/HookError.js +1 -7
- package/build/errors/ModuleError.js +1 -7
- package/build/errors/ModuleUnavailableError.js +1 -3
- package/build/errors/OxygenError.js +1 -33
- package/build/errors/ScriptNotFound.js +1 -7
- package/build/errors/helper.js +46 -77
- package/build/index.js +6 -18
- package/build/lib/cli-util.js +28 -90
- package/build/lib/cli.js +1 -23
- package/build/lib/debugger.js +1 -144
- package/build/lib/img-merge.js +1 -15
- package/build/lib/launcher.js +1 -28
- package/build/lib/moduleRequire.js +1 -4
- package/build/lib/param-manager.js +1 -28
- package/build/lib/param-reader-csv.js +1 -15
- package/build/lib/param-reader-excel.js +1 -14
- package/build/lib/param-reader-json.js +1 -10
- package/build/lib/util.js +3 -58
- package/build/model/case-result.js +1 -2
- package/build/model/failure.js +1 -2
- package/build/model/status.js +1 -2
- package/build/model/step-result.js +1 -2
- package/build/model/suite-result.js +1 -2
- package/build/model/test-result.js +1 -2
- package/build/model/testcase.js +1 -2
- package/build/model/testsuite.js +1 -2
- package/build/ox_modules/index.js +13 -33
- package/build/ox_modules/module-assert.js +8 -24
- package/build/ox_modules/module-date.js +3 -8
- package/build/ox_modules/module-db.js +7 -28
- package/build/ox_modules/module-email.js +10 -36
- package/build/ox_modules/module-eyes.js +5 -46
- package/build/ox_modules/module-http.js +42 -104
- package/build/ox_modules/module-log.js +5 -22
- package/build/ox_modules/module-mailinator.js +10 -32
- package/build/ox_modules/module-mob/commands/alertAccept.js +1 -2
- package/build/ox_modules/module-mob/commands/alertDismiss.js +1 -2
- package/build/ox_modules/module-mob/commands/assertAlert.js +1 -6
- package/build/ox_modules/module-mob/commands/assertText.js +1 -3
- package/build/ox_modules/module-mob/commands/assertTitle.js +1 -4
- package/build/ox_modules/module-mob/commands/assertValue.js +9 -15
- package/build/ox_modules/module-mob/commands/back.js +1 -2
- package/build/ox_modules/module-mob/commands/clear.js +1 -4
- package/build/ox_modules/module-mob/commands/click.js +3 -4
- package/build/ox_modules/module-mob/commands/clickHidden.js +3 -9
- package/build/ox_modules/module-mob/commands/clickLong.js +1 -2
- package/build/ox_modules/module-mob/commands/clickMultipleTimes.js +1 -4
- package/build/ox_modules/module-mob/commands/closeApp.js +1 -2
- package/build/ox_modules/module-mob/commands/debug.js +2 -2
- package/build/ox_modules/module-mob/commands/dragAndDrop.js +1 -2
- package/build/ox_modules/module-mob/commands/enableNetwork.js +4 -12
- package/build/ox_modules/module-mob/commands/execute.js +1 -2
- package/build/ox_modules/module-mob/commands/findElement.js +1 -3
- package/build/ox_modules/module-mob/commands/findElements.js +1 -4
- package/build/ox_modules/module-mob/commands/getAlertText.js +1 -2
- package/build/ox_modules/module-mob/commands/getAppiumLogs.js +1 -2
- package/build/ox_modules/module-mob/commands/getBrowserLogs.js +1 -10
- package/build/ox_modules/module-mob/commands/getCurrentActivity.js +1 -2
- package/build/ox_modules/module-mob/commands/getCurrentPackage.js +1 -2
- package/build/ox_modules/module-mob/commands/getDeviceLogs.js +1 -9
- package/build/ox_modules/module-mob/commands/getDeviceTime.js +1 -2
- package/build/ox_modules/module-mob/commands/getLocation.js +1 -2
- package/build/ox_modules/module-mob/commands/getSource.js +1 -2
- package/build/ox_modules/module-mob/commands/getText.js +1 -4
- package/build/ox_modules/module-mob/commands/getTitle.js +1 -2
- package/build/ox_modules/module-mob/commands/getUrl.js +1 -2
- package/build/ox_modules/module-mob/commands/getValue.js +5 -9
- package/build/ox_modules/module-mob/commands/getWindowHandles.js +1 -2
- package/build/ox_modules/module-mob/commands/hideKeyboard.js +1 -2
- package/build/ox_modules/module-mob/commands/index.js +19 -94
- package/build/ox_modules/module-mob/commands/installApp.js +1 -2
- package/build/ox_modules/module-mob/commands/isAppInstalled.js +1 -2
- package/build/ox_modules/module-mob/commands/isCheckable.js +1 -2
- package/build/ox_modules/module-mob/commands/isChecked.js +1 -2
- package/build/ox_modules/module-mob/commands/isClickable.js +1 -2
- package/build/ox_modules/module-mob/commands/isExist.js +1 -3
- package/build/ox_modules/module-mob/commands/isSelected.js +1 -2
- package/build/ox_modules/module-mob/commands/isVisible.js +1 -3
- package/build/ox_modules/module-mob/commands/isWebViewContext.js +1 -2
- package/build/ox_modules/module-mob/commands/launchApp.js +1 -2
- package/build/ox_modules/module-mob/commands/longPressKeyCode.js +1 -2
- package/build/ox_modules/module-mob/commands/open.js +1 -3
- package/build/ox_modules/module-mob/commands/pause.js +1 -2
- package/build/ox_modules/module-mob/commands/removeApp.js +1 -2
- package/build/ox_modules/module-mob/commands/resetApp.js +1 -2
- package/build/ox_modules/module-mob/commands/scrollIntoElement.js +1 -6
- package/build/ox_modules/module-mob/commands/scrollIntoView.js +1 -2
- package/build/ox_modules/module-mob/commands/select.js +1 -4
- package/build/ox_modules/module-mob/commands/selectFrame.js +1 -4
- package/build/ox_modules/module-mob/commands/selectWindow.js +5 -26
- package/build/ox_modules/module-mob/commands/sendKeys.js +6 -9
- package/build/ox_modules/module-mob/commands/setContext.js +1 -2
- package/build/ox_modules/module-mob/commands/setNativeContext.js +1 -2
- package/build/ox_modules/module-mob/commands/setTimeout.js +1 -2
- package/build/ox_modules/module-mob/commands/setWebViewContext.js +3 -6
- package/build/ox_modules/module-mob/commands/shake.js +1 -2
- package/build/ox_modules/module-mob/commands/smsClickLink.js +1 -2
- package/build/ox_modules/module-mob/commands/smsGetText.js +3 -6
- package/build/ox_modules/module-mob/commands/swipe.js +1 -2
- package/build/ox_modules/module-mob/commands/swipeElement.js +1 -2
- package/build/ox_modules/module-mob/commands/swipeScreen.js +1 -2
- package/build/ox_modules/module-mob/commands/takeScreenshot.js +1 -2
- package/build/ox_modules/module-mob/commands/tap.js +1 -2
- package/build/ox_modules/module-mob/commands/type.js +3 -7
- package/build/ox_modules/module-mob/commands/unlockPattern.js +9 -10
- package/build/ox_modules/module-mob/commands/waitForExist.js +1 -2
- package/build/ox_modules/module-mob/commands/waitForInteractable.js +1 -3
- package/build/ox_modules/module-mob/commands/waitForVisible.js +1 -2
- package/build/ox_modules/module-mob.js +72 -142
- package/build/ox_modules/module-pdf.js +23 -62
- package/build/ox_modules/module-proxy.js +8 -68
- package/build/ox_modules/module-serial.js +7 -32
- package/build/ox_modules/module-shell.js +8 -27
- package/build/ox_modules/module-soap.js +14 -47
- package/build/ox_modules/module-twilio.js +10 -53
- package/build/ox_modules/module-utils.js +16 -51
- package/build/ox_modules/module-web/commands/alertAccept.js +1 -2
- package/build/ox_modules/module-web/commands/alertDismiss.js +1 -2
- package/build/ox_modules/module-web/commands/assertAlert.js +1 -6
- package/build/ox_modules/module-web/commands/assertExist.js +1 -2
- package/build/ox_modules/module-web/commands/assertSelectedLabel.js +1 -4
- package/build/ox_modules/module-web/commands/assertSelectedValue.js +1 -3
- package/build/ox_modules/module-web/commands/assertText.js +1 -3
- package/build/ox_modules/module-web/commands/assertTextNotPresent.js +1 -6
- package/build/ox_modules/module-web/commands/assertTextPresent.js +1 -6
- package/build/ox_modules/module-web/commands/assertTitle.js +1 -3
- package/build/ox_modules/module-web/commands/assertValue.js +1 -3
- package/build/ox_modules/module-web/commands/back.js +1 -2
- package/build/ox_modules/module-web/commands/clear.js +1 -5
- package/build/ox_modules/module-web/commands/click.js +4 -13
- package/build/ox_modules/module-web/commands/clickHidden.js +2 -7
- package/build/ox_modules/module-web/commands/closeWindow.js +1 -2
- package/build/ox_modules/module-web/commands/debug.js +2 -2
- package/build/ox_modules/module-web/commands/deleteCookies.js +1 -2
- package/build/ox_modules/module-web/commands/deselect.js +1 -2
- package/build/ox_modules/module-web/commands/doubleClick.js +3 -9
- package/build/ox_modules/module-web/commands/dragAndDrop.js +1 -2
- package/build/ox_modules/module-web/commands/execute.js +1 -2
- package/build/ox_modules/module-web/commands/fileBrowse.js +4 -10
- package/build/ox_modules/module-web/commands/findElement.js +1 -3
- package/build/ox_modules/module-web/commands/findElements.js +1 -4
- package/build/ox_modules/module-web/commands/fullscreenWindow.js +1 -2
- package/build/ox_modules/module-web/commands/getAlertText.js +1 -2
- package/build/ox_modules/module-web/commands/getAttribute.js +1 -4
- package/build/ox_modules/module-web/commands/getBrowserLogs.js +1 -3
- package/build/ox_modules/module-web/commands/getCookies.js +1 -2
- package/build/ox_modules/module-web/commands/getCssValue.js +1 -4
- package/build/ox_modules/module-web/commands/getElementCount.js +1 -2
- package/build/ox_modules/module-web/commands/getHTML.js +1 -2
- package/build/ox_modules/module-web/commands/getSource.js +1 -2
- package/build/ox_modules/module-web/commands/getText.js +1 -4
- package/build/ox_modules/module-web/commands/getTitle.js +1 -2
- package/build/ox_modules/module-web/commands/getUrl.js +1 -2
- package/build/ox_modules/module-web/commands/getValue.js +1 -5
- package/build/ox_modules/module-web/commands/getWindowHandles.js +1 -2
- package/build/ox_modules/module-web/commands/getWindowSize.js +1 -2
- package/build/ox_modules/module-web/commands/getXMLPageSource.js +1 -5
- package/build/ox_modules/module-web/commands/index.js +26 -99
- package/build/ox_modules/module-web/commands/isAlertPresent.js +1 -2
- package/build/ox_modules/module-web/commands/isChecked.js +1 -2
- package/build/ox_modules/module-web/commands/isExist.js +1 -3
- package/build/ox_modules/module-web/commands/isInteractable.js +33 -0
- package/build/ox_modules/module-web/commands/isSelected.js +1 -2
- package/build/ox_modules/module-web/commands/isVisible.js +1 -3
- package/build/ox_modules/module-web/commands/makeVisible.js +2 -10
- package/build/ox_modules/module-web/commands/maximizeWindow.js +1 -2
- package/build/ox_modules/module-web/commands/minimizeWindow.js +1 -2
- package/build/ox_modules/module-web/commands/newWindow.js +1 -2
- package/build/ox_modules/module-web/commands/open.js +1 -4
- package/build/ox_modules/module-web/commands/pause.js +1 -2
- package/build/ox_modules/module-web/commands/point.js +1 -2
- package/build/ox_modules/module-web/commands/pointJS.js +2 -8
- package/build/ox_modules/module-web/commands/refresh.js +1 -2
- package/build/ox_modules/module-web/commands/rightClick.js +3 -8
- package/build/ox_modules/module-web/commands/rightClickActions.js +1 -2
- package/build/ox_modules/module-web/commands/scrollToElement.js +1 -2
- package/build/ox_modules/module-web/commands/select.js +1 -5
- package/build/ox_modules/module-web/commands/selectFrame.js +1 -3
- package/build/ox_modules/module-web/commands/selectWindow.js +5 -26
- package/build/ox_modules/module-web/commands/sendKeys.js +3 -6
- package/build/ox_modules/module-web/commands/setAutoWaitForAngular.js +2 -2
- package/build/ox_modules/module-web/commands/setTimeout.js +1 -2
- package/build/ox_modules/module-web/commands/setWindowSize.js +1 -2
- package/build/ox_modules/module-web/commands/takeScreenshot.js +3 -5
- package/build/ox_modules/module-web/commands/type.js +1 -5
- package/build/ox_modules/module-web/commands/waitForAngular.js +6 -11
- package/build/ox_modules/module-web/commands/waitForExist.js +1 -2
- package/build/ox_modules/module-web/commands/waitForInteractable.js +1 -2
- package/build/ox_modules/module-web/commands/waitForNotExist.js +1 -8
- package/build/ox_modules/module-web/commands/waitForNotText.js +3 -5
- package/build/ox_modules/module-web/commands/waitForNotValue.js +3 -5
- package/build/ox_modules/module-web/commands/waitForText.js +3 -5
- package/build/ox_modules/module-web/commands/waitForValue.js +3 -5
- package/build/ox_modules/module-web/commands/waitForVisible.js +1 -2
- package/build/ox_modules/module-web/commands/waitForWindow.js +4 -21
- package/build/ox_modules/module-web.js +86 -192
- package/build/ox_modules/module-win/commands/assertText.js +1 -3
- package/build/ox_modules/module-win/commands/assertTitle.js +1 -4
- package/build/ox_modules/module-win/commands/assertValue.js +9 -15
- package/build/ox_modules/module-win/commands/back.js +1 -2
- package/build/ox_modules/module-win/commands/clear.js +1 -4
- package/build/ox_modules/module-win/commands/click.js +1 -2
- package/build/ox_modules/module-win/commands/clickLong.js +1 -2
- package/build/ox_modules/module-win/commands/clickMultipleTimes.js +1 -4
- package/build/ox_modules/module-win/commands/findElement.js +1 -3
- package/build/ox_modules/module-win/commands/findElements.js +1 -4
- package/build/ox_modules/module-win/commands/getAppiumLogs.js +1 -2
- package/build/ox_modules/module-win/commands/getCurrentWindowHandle.js +1 -2
- package/build/ox_modules/module-win/commands/getLocation.js +1 -2
- package/build/ox_modules/module-win/commands/getSource.js +1 -2
- package/build/ox_modules/module-win/commands/getText.js +1 -4
- package/build/ox_modules/module-win/commands/getValue.js +5 -9
- package/build/ox_modules/module-win/commands/getWindowHandles.js +1 -2
- package/build/ox_modules/module-win/commands/index.js +5 -43
- package/build/ox_modules/module-win/commands/isCheckable.js +1 -2
- package/build/ox_modules/module-win/commands/isChecked.js +1 -2
- package/build/ox_modules/module-win/commands/isClickable.js +1 -2
- package/build/ox_modules/module-win/commands/isExist.js +1 -3
- package/build/ox_modules/module-win/commands/isSelected.js +1 -2
- package/build/ox_modules/module-win/commands/isVisible.js +1 -3
- package/build/ox_modules/module-win/commands/open.js +1 -2
- package/build/ox_modules/module-win/commands/pause.js +1 -2
- package/build/ox_modules/module-win/commands/rightClick.js +1 -2
- package/build/ox_modules/module-win/commands/selectWindow.js +1 -15
- package/build/ox_modules/module-win/commands/sendKeys.js +1 -4
- package/build/ox_modules/module-win/commands/setTimeout.js +1 -2
- package/build/ox_modules/module-win/commands/takeScreenshot.js +1 -2
- package/build/ox_modules/module-win/commands/tap.js +1 -2
- package/build/ox_modules/module-win/commands/type.js +1 -4
- package/build/ox_modules/module-win/commands/waitForExist.js +1 -2
- package/build/ox_modules/module-win/commands/waitForInteractable.js +1 -4
- package/build/ox_modules/module-win/commands/waitForVisible.js +1 -2
- package/build/ox_modules/module-win.js +48 -87
- package/build/ox_modules/utils.js +22 -76
- package/build/ox_reporters/reporter-excel.js +1 -58
- package/build/ox_reporters/reporter-html.js +1 -28
- package/build/ox_reporters/reporter-json.js +1 -14
- package/build/ox_reporters/reporter-junit.js +1 -24
- package/build/ox_reporters/reporter-pdf.js +1 -19
- package/build/ox_reporters/reporter-xml.js +1 -17
- package/build/ox_services/service-devtools/submodule-network.js +3 -84
- package/build/ox_services/service-devtools.js +1 -23
- package/build/reporter/FileReporterBase.js +5 -44
- package/build/reporter/ReportAggregator.js +1 -65
- package/build/reporter/ReporterBase.js +1 -6
- package/build/runners/WorkerProcess.js +1 -99
- package/build/runners/cucumber/CucumberEventListener.js +4 -29
- package/build/runners/cucumber/CucumberReporter.js +1 -56
- package/build/runners/cucumber/CucumberWorker.js +1 -66
- package/build/runners/cucumber/index.js +1 -30
- package/build/runners/cucumber/worker.js +1 -18
- package/build/runners/index.js +1 -6
- package/build/runners/oxygen/OxygenWorker.js +20 -54
- package/build/runners/oxygen/index.js +17 -177
- package/build/runners/oxygen/worker.js +2 -25
- package/package.json +28 -29
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
require("source-map-support/register");
|
|
4
|
-
|
|
5
4
|
/*
|
|
6
5
|
* Copyright (C) 2015-present CloudBeat Limited
|
|
7
6
|
*
|
|
@@ -24,19 +23,16 @@ require("source-map-support/register");
|
|
|
24
23
|
module.exports = async function (locator, timeout) {
|
|
25
24
|
this.helpers.assertArgumentTimeout(timeout, 'timeout');
|
|
26
25
|
var el;
|
|
27
|
-
|
|
28
26
|
if (locator && locator.constructor && locator.constructor.name === 'Element') {
|
|
29
27
|
el = locator;
|
|
30
28
|
} else {
|
|
31
29
|
locator = await this.helpers.getWdioLocator(locator);
|
|
32
30
|
el = await this.helpers.getElement(locator, false, timeout);
|
|
33
31
|
}
|
|
34
|
-
|
|
35
32
|
if (el.error && el.error.error === 'no such element') {
|
|
36
33
|
await this.helpers.restoreTimeoutImplicit();
|
|
37
34
|
return;
|
|
38
35
|
}
|
|
39
|
-
|
|
40
36
|
try {
|
|
41
37
|
await el.waitForExist({
|
|
42
38
|
timeout: !timeout ? this.waitForTimeout : timeout,
|
|
@@ -44,14 +40,11 @@ module.exports = async function (locator, timeout) {
|
|
|
44
40
|
});
|
|
45
41
|
} catch (e) {
|
|
46
42
|
await this.helpers.restoreTimeoutImplicit();
|
|
47
|
-
|
|
48
43
|
if (e.message && e.message.includes('still existing')) {
|
|
49
44
|
throw new this.OxError(this.errHelper.errorCode.ELEMENT_STILL_EXISTS);
|
|
50
45
|
}
|
|
51
|
-
|
|
52
46
|
throw e;
|
|
53
47
|
}
|
|
54
|
-
|
|
55
48
|
await this.helpers.restoreTimeoutImplicit();
|
|
56
49
|
};
|
|
57
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
50
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJtb2R1bGUiLCJleHBvcnRzIiwibG9jYXRvciIsInRpbWVvdXQiLCJoZWxwZXJzIiwiYXNzZXJ0QXJndW1lbnRUaW1lb3V0IiwiZWwiLCJjb25zdHJ1Y3RvciIsIm5hbWUiLCJnZXRXZGlvTG9jYXRvciIsImdldEVsZW1lbnQiLCJlcnJvciIsInJlc3RvcmVUaW1lb3V0SW1wbGljaXQiLCJ3YWl0Rm9yRXhpc3QiLCJ3YWl0Rm9yVGltZW91dCIsInJldmVyc2UiLCJlIiwibWVzc2FnZSIsImluY2x1ZGVzIiwiT3hFcnJvciIsImVyckhlbHBlciIsImVycm9yQ29kZSIsIkVMRU1FTlRfU1RJTExfRVhJU1RTIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL294X21vZHVsZXMvbW9kdWxlLXdlYi9jb21tYW5kcy93YWl0Rm9yTm90RXhpc3QuanMiXSwic291cmNlc0NvbnRlbnQiOlsiLypcclxuICogQ29weXJpZ2h0IChDKSAyMDE1LXByZXNlbnQgQ2xvdWRCZWF0IExpbWl0ZWRcclxuICpcclxuICogVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnlcclxuICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnlcclxuICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3JcclxuICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi5cclxuICovXHJcblxyXG4vKipcclxuICogQHN1bW1hcnkgV2FpdHMgZm9yIGVsZW1lbnQgdG8gYmVjb21lIHVuYXZhaWxhYmxlIGluIHRoZSBET00uXHJcbiAqIEBmdW5jdGlvbiB3YWl0Rm9yTm90RXhpc3RcclxuICogQHBhcmFtIHtTdHJpbmd8RWxlbWVudH0gbG9jYXRvciAtIEFuIGVsZW1lbnQgbG9jYXRvci5cclxuICogQHBhcmFtIHtOdW1iZXI9fSB0aW1lb3V0IC0gVGltZW91dCBpbiBtaWxsaXNlY29uZHMuIERlZmF1bHQgaXMgNjAgc2Vjb25kcy5cclxuICogQGV4YW1wbGUgPGNhcHRpb24+W2phdmFzY3JpcHRdIFVzYWdlIGV4YW1wbGU8L2NhcHRpb24+XHJcbiAqIHdlYi5pbml0KCk7Ly9PcGVucyBicm93c2VyIHNlc3Npb24uXHJcbiAqIHdlYi5vcGVuKFwid3d3LnlvdXJ3ZWJzaXRlLmNvbVwiKTsvLyBPcGVucyBhIHdlYnNpdGUuXHJcbiAqIHdlYi53YWl0Rm9yTm90RXhpc3QoXCJpZD1Vc2VyTmFtZVwiKTsvL1dhaXRzIGZvciBhbiBlbGVtZW50IHRvIG5vdCBleGlzdCBpbiBET00uXHJcbiAqL1xyXG5tb2R1bGUuZXhwb3J0cyA9IGFzeW5jIGZ1bmN0aW9uKGxvY2F0b3IsIHRpbWVvdXQpIHtcclxuICAgIHRoaXMuaGVscGVycy5hc3NlcnRBcmd1bWVudFRpbWVvdXQodGltZW91dCwgJ3RpbWVvdXQnKTtcclxuXHJcbiAgICB2YXIgZWw7XHJcbiAgICBpZiAobG9jYXRvciAmJiBsb2NhdG9yLmNvbnN0cnVjdG9yICYmIGxvY2F0b3IuY29uc3RydWN0b3IubmFtZSA9PT0gJ0VsZW1lbnQnKSB7XHJcbiAgICAgICAgZWwgPSBsb2NhdG9yO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgICBsb2NhdG9yID0gYXdhaXQgdGhpcy5oZWxwZXJzLmdldFdkaW9Mb2NhdG9yKGxvY2F0b3IpO1xyXG4gICAgICAgIGVsID0gYXdhaXQgdGhpcy5oZWxwZXJzLmdldEVsZW1lbnQobG9jYXRvciwgZmFsc2UsIHRpbWVvdXQpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChlbC5lcnJvciAmJiBlbC5lcnJvci5lcnJvciA9PT0gJ25vIHN1Y2ggZWxlbWVudCcpIHtcclxuICAgICAgICBhd2FpdCB0aGlzLmhlbHBlcnMucmVzdG9yZVRpbWVvdXRJbXBsaWNpdCgpO1xyXG4gICAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICB0cnkge1xyXG4gICAgICAgIGF3YWl0IGVsLndhaXRGb3JFeGlzdCh7dGltZW91dDogKCF0aW1lb3V0ID8gdGhpcy53YWl0Rm9yVGltZW91dCA6IHRpbWVvdXQpLCByZXZlcnNlOiB0cnVlfSk7XHJcbiAgICB9IGNhdGNoIChlKSB7XHJcbiAgICAgICAgYXdhaXQgdGhpcy5oZWxwZXJzLnJlc3RvcmVUaW1lb3V0SW1wbGljaXQoKTtcclxuICAgICAgICBpZiAoZS5tZXNzYWdlICYmIGUubWVzc2FnZS5pbmNsdWRlcygnc3RpbGwgZXhpc3RpbmcnKSkge1xyXG4gICAgICAgICAgICB0aHJvdyBuZXcgdGhpcy5PeEVycm9yKHRoaXMuZXJySGVscGVyLmVycm9yQ29kZS5FTEVNRU5UX1NUSUxMX0VYSVNUUyk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRocm93IGU7XHJcbiAgICB9XHJcblxyXG4gICAgYXdhaXQgdGhpcy5oZWxwZXJzLnJlc3RvcmVUaW1lb3V0SW1wbGljaXQoKTtcclxufTtcclxuIl0sIm1hcHBpbmdzIjoiOzs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0FBLE1BQU0sQ0FBQ0MsT0FBTyxHQUFHLGdCQUFlQyxPQUFPLEVBQUVDLE9BQU8sRUFBRTtFQUM5QyxJQUFJLENBQUNDLE9BQU8sQ0FBQ0MscUJBQXFCLENBQUNGLE9BQU8sRUFBRSxTQUFTLENBQUM7RUFFdEQsSUFBSUcsRUFBRTtFQUNOLElBQUlKLE9BQU8sSUFBSUEsT0FBTyxDQUFDSyxXQUFXLElBQUlMLE9BQU8sQ0FBQ0ssV0FBVyxDQUFDQyxJQUFJLEtBQUssU0FBUyxFQUFFO0lBQzFFRixFQUFFLEdBQUdKLE9BQU87RUFDaEIsQ0FBQyxNQUFNO0lBQ0hBLE9BQU8sR0FBRyxNQUFNLElBQUksQ0FBQ0UsT0FBTyxDQUFDSyxjQUFjLENBQUNQLE9BQU8sQ0FBQztJQUNwREksRUFBRSxHQUFHLE1BQU0sSUFBSSxDQUFDRixPQUFPLENBQUNNLFVBQVUsQ0FBQ1IsT0FBTyxFQUFFLEtBQUssRUFBRUMsT0FBTyxDQUFDO0VBQy9EO0VBRUEsSUFBSUcsRUFBRSxDQUFDSyxLQUFLLElBQUlMLEVBQUUsQ0FBQ0ssS0FBSyxDQUFDQSxLQUFLLEtBQUssaUJBQWlCLEVBQUU7SUFDbEQsTUFBTSxJQUFJLENBQUNQLE9BQU8sQ0FBQ1Esc0JBQXNCLEVBQUU7SUFDM0M7RUFDSjtFQUVBLElBQUk7SUFDQSxNQUFNTixFQUFFLENBQUNPLFlBQVksQ0FBQztNQUFDVixPQUFPLEVBQUcsQ0FBQ0EsT0FBTyxHQUFHLElBQUksQ0FBQ1csY0FBYyxHQUFHWCxPQUFRO01BQUVZLE9BQU8sRUFBRTtJQUFJLENBQUMsQ0FBQztFQUMvRixDQUFDLENBQUMsT0FBT0MsQ0FBQyxFQUFFO0lBQ1IsTUFBTSxJQUFJLENBQUNaLE9BQU8sQ0FBQ1Esc0JBQXNCLEVBQUU7SUFDM0MsSUFBSUksQ0FBQyxDQUFDQyxPQUFPLElBQUlELENBQUMsQ0FBQ0MsT0FBTyxDQUFDQyxRQUFRLENBQUMsZ0JBQWdCLENBQUMsRUFBRTtNQUNuRCxNQUFNLElBQUksSUFBSSxDQUFDQyxPQUFPLENBQUMsSUFBSSxDQUFDQyxTQUFTLENBQUNDLFNBQVMsQ0FBQ0Msb0JBQW9CLENBQUM7SUFDekU7SUFDQSxNQUFNTixDQUFDO0VBQ1g7RUFFQSxNQUFNLElBQUksQ0FBQ1osT0FBTyxDQUFDUSxzQkFBc0IsRUFBRTtBQUMvQyxDQUFDIn0=
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
require("source-map-support/register");
|
|
4
|
-
|
|
5
4
|
/*
|
|
6
5
|
* Copyright (C) 2015-present CloudBeat Limited
|
|
7
6
|
*
|
|
@@ -13,7 +12,7 @@ require("source-map-support/register");
|
|
|
13
12
|
|
|
14
13
|
/**
|
|
15
14
|
* @summary Waits for inner text of the given element to stop matching the specified pattern.
|
|
16
|
-
* @description Text pattern can be any of the supported
|
|
15
|
+
* @description Text pattern can be any of the supported
|
|
17
16
|
* string matching patterns(on the top of page).
|
|
18
17
|
* @function waitForNotText
|
|
19
18
|
* @param {String|Element} locator - An element locator.
|
|
@@ -29,7 +28,6 @@ module.exports = async function (locator, pattern, timeout) {
|
|
|
29
28
|
this.helpers.assertArgumentTimeout(timeout, 'timeout');
|
|
30
29
|
var el = await this.helpers.getElement(locator, false, timeout);
|
|
31
30
|
var text;
|
|
32
|
-
|
|
33
31
|
try {
|
|
34
32
|
await this.driver.waitUntil(async () => {
|
|
35
33
|
text = await el.getText();
|
|
@@ -38,8 +36,8 @@ module.exports = async function (locator, pattern, timeout) {
|
|
|
38
36
|
timeout: timeout ? timeout : this.waitForTimeout
|
|
39
37
|
});
|
|
40
38
|
} catch (e) {
|
|
41
|
-
text = text.replace(/\n/g, '\\n');
|
|
39
|
+
if (text) text = text.replace(/\n/g, '\\n');
|
|
42
40
|
throw new this.OxError(this.errHelper.errorCode.TIMEOUT, `Expected not: "${pattern}". Got: "${text}"`);
|
|
43
41
|
}
|
|
44
42
|
};
|
|
45
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
43
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJtb2R1bGUiLCJleHBvcnRzIiwibG9jYXRvciIsInBhdHRlcm4iLCJ0aW1lb3V0IiwiaGVscGVycyIsImFzc2VydEFyZ3VtZW50IiwiYXNzZXJ0QXJndW1lbnRUaW1lb3V0IiwiZWwiLCJnZXRFbGVtZW50IiwidGV4dCIsImRyaXZlciIsIndhaXRVbnRpbCIsImdldFRleHQiLCJtYXRjaFBhdHRlcm4iLCJ3YWl0Rm9yVGltZW91dCIsImUiLCJyZXBsYWNlIiwiT3hFcnJvciIsImVyckhlbHBlciIsImVycm9yQ29kZSIsIlRJTUVPVVQiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvb3hfbW9kdWxlcy9tb2R1bGUtd2ViL2NvbW1hbmRzL3dhaXRGb3JOb3RUZXh0LmpzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbiAqIENvcHlyaWdodCAoQykgMjAxNS1wcmVzZW50IENsb3VkQmVhdCBMaW1pdGVkXHJcbiAqXHJcbiAqIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5XHJcbiAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5XHJcbiAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yXHJcbiAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uXHJcbiAqL1xyXG5cclxuLyoqXHJcbiAqIEBzdW1tYXJ5IFdhaXRzIGZvciBpbm5lciB0ZXh0IG9mIHRoZSBnaXZlbiBlbGVtZW50IHRvIHN0b3AgbWF0Y2hpbmcgdGhlIHNwZWNpZmllZCBwYXR0ZXJuLlxyXG4gKiBAZGVzY3JpcHRpb24gVGV4dCBwYXR0ZXJuIGNhbiBiZSBhbnkgb2YgdGhlIHN1cHBvcnRlZFxyXG4gKiAgc3RyaW5nIG1hdGNoaW5nIHBhdHRlcm5zKG9uIHRoZSB0b3Agb2YgcGFnZSkuXHJcbiAqIEBmdW5jdGlvbiB3YWl0Rm9yTm90VGV4dFxyXG4gKiBAcGFyYW0ge1N0cmluZ3xFbGVtZW50fSBsb2NhdG9yIC0gQW4gZWxlbWVudCBsb2NhdG9yLlxyXG4gKiBAcGFyYW0ge1N0cmluZ30gcGF0dGVybiAtIFRleHQgcGF0dGVybi5cclxuICogQHBhcmFtIHtOdW1iZXI9fSB0aW1lb3V0IC0gVGltZW91dCBpbiBtaWxsaXNlY29uZHMuIERlZmF1bHQgaXMgNjAgc2Vjb25kcy5cclxuICogQGV4YW1wbGUgPGNhcHRpb24+W2phdmFzY3JpcHRdIFVzYWdlIGV4YW1wbGU8L2NhcHRpb24+XHJcbiAqIHdlYi5pbml0KCk7Ly9PcGVucyBicm93c2VyIHNlc3Npb24uXHJcbiAqIHdlYi5vcGVuKFwid3d3LnlvdXJ3ZWJzaXRlLmNvbVwiKTsvLyBPcGVucyBhIHdlYnNpdGUuXHJcbiAqIHdlYi53YWl0Rm9yTm90VGV4dChcImlkPVRpdGxlXCIsXCJXZWJzaXRlXCIpOy8vV2FpdHMgZm9yIGFuIGVsZW1lbnTigJlzIHRleHQgdG8gbm90IG1hdGNoIHRvIGV4cGVjdGVkIHN0cmluZy5cclxuICovXHJcbm1vZHVsZS5leHBvcnRzID0gYXN5bmMgZnVuY3Rpb24obG9jYXRvciwgcGF0dGVybiwgdGltZW91dCkge1xyXG4gICAgdGhpcy5oZWxwZXJzLmFzc2VydEFyZ3VtZW50KHBhdHRlcm4sICdwYXR0ZXJuJyk7XHJcbiAgICB0aGlzLmhlbHBlcnMuYXNzZXJ0QXJndW1lbnRUaW1lb3V0KHRpbWVvdXQsICd0aW1lb3V0Jyk7XHJcblxyXG4gICAgdmFyIGVsID0gYXdhaXQgdGhpcy5oZWxwZXJzLmdldEVsZW1lbnQobG9jYXRvciwgZmFsc2UsIHRpbWVvdXQpO1xyXG5cclxuICAgIHZhciB0ZXh0O1xyXG4gICAgdHJ5IHtcclxuICAgICAgICBhd2FpdCB0aGlzLmRyaXZlci53YWl0VW50aWwoYXN5bmMoKSA9PiB7XHJcbiAgICAgICAgICAgIHRleHQgPSBhd2FpdCBlbC5nZXRUZXh0KCk7XHJcbiAgICAgICAgICAgIHJldHVybiAhdGhpcy5oZWxwZXJzLm1hdGNoUGF0dGVybih0ZXh0LCBwYXR0ZXJuKTtcclxuICAgICAgICB9LFxyXG4gICAgICAgIHsgdGltZW91dDogKHRpbWVvdXQgPyB0aW1lb3V0IDogdGhpcy53YWl0Rm9yVGltZW91dCkgfSk7XHJcbiAgICB9IGNhdGNoIChlKSB7XHJcbiAgICAgICAgaWYgKHRleHQpXHJcbiAgICAgICAgICAgIHRleHQgPSB0ZXh0LnJlcGxhY2UoL1xcbi9nLCAnXFxcXG4nKTtcclxuICAgICAgICB0aHJvdyBuZXcgdGhpcy5PeEVycm9yKHRoaXMuZXJySGVscGVyLmVycm9yQ29kZS5USU1FT1VULCBgRXhwZWN0ZWQgbm90OiBcIiR7cGF0dGVybn1cIi4gR290OiBcIiR7dGV4dH1cImApO1xyXG4gICAgfVxyXG59O1xyXG4iXSwibWFwcGluZ3MiOiI7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQUEsTUFBTSxDQUFDQyxPQUFPLEdBQUcsZ0JBQWVDLE9BQU8sRUFBRUMsT0FBTyxFQUFFQyxPQUFPLEVBQUU7RUFDdkQsSUFBSSxDQUFDQyxPQUFPLENBQUNDLGNBQWMsQ0FBQ0gsT0FBTyxFQUFFLFNBQVMsQ0FBQztFQUMvQyxJQUFJLENBQUNFLE9BQU8sQ0FBQ0UscUJBQXFCLENBQUNILE9BQU8sRUFBRSxTQUFTLENBQUM7RUFFdEQsSUFBSUksRUFBRSxHQUFHLE1BQU0sSUFBSSxDQUFDSCxPQUFPLENBQUNJLFVBQVUsQ0FBQ1AsT0FBTyxFQUFFLEtBQUssRUFBRUUsT0FBTyxDQUFDO0VBRS9ELElBQUlNLElBQUk7RUFDUixJQUFJO0lBQ0EsTUFBTSxJQUFJLENBQUNDLE1BQU0sQ0FBQ0MsU0FBUyxDQUFDLFlBQVc7TUFDbkNGLElBQUksR0FBRyxNQUFNRixFQUFFLENBQUNLLE9BQU8sRUFBRTtNQUN6QixPQUFPLENBQUMsSUFBSSxDQUFDUixPQUFPLENBQUNTLFlBQVksQ0FBQ0osSUFBSSxFQUFFUCxPQUFPLENBQUM7SUFDcEQsQ0FBQyxFQUNEO01BQUVDLE9BQU8sRUFBR0EsT0FBTyxHQUFHQSxPQUFPLEdBQUcsSUFBSSxDQUFDVztJQUFnQixDQUFDLENBQUM7RUFDM0QsQ0FBQyxDQUFDLE9BQU9DLENBQUMsRUFBRTtJQUNSLElBQUlOLElBQUksRUFDSkEsSUFBSSxHQUFHQSxJQUFJLENBQUNPLE9BQU8sQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDO0lBQ3JDLE1BQU0sSUFBSSxJQUFJLENBQUNDLE9BQU8sQ0FBQyxJQUFJLENBQUNDLFNBQVMsQ0FBQ0MsU0FBUyxDQUFDQyxPQUFPLEVBQUcsa0JBQWlCbEIsT0FBUSxZQUFXTyxJQUFLLEdBQUUsQ0FBQztFQUMxRztBQUNKLENBQUMifQ==
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
require("source-map-support/register");
|
|
4
|
-
|
|
5
4
|
/*
|
|
6
5
|
* Copyright (C) 2015-present CloudBeat Limited
|
|
7
6
|
*
|
|
@@ -13,7 +12,7 @@ require("source-map-support/register");
|
|
|
13
12
|
|
|
14
13
|
/**
|
|
15
14
|
* @summary Waits for input element's value to stop matching the specified pattern.
|
|
16
|
-
* @description Value pattern can be any of the supported
|
|
15
|
+
* @description Value pattern can be any of the supported
|
|
17
16
|
* string matching patterns(on the top of page).
|
|
18
17
|
* @function waitForNotValue
|
|
19
18
|
* @param {String|Element} locator - An element locator.
|
|
@@ -29,7 +28,6 @@ module.exports = async function (locator, pattern, timeout) {
|
|
|
29
28
|
this.helpers.assertArgumentTimeout(timeout, 'timeout');
|
|
30
29
|
var el = await this.helpers.getElement(locator, false, timeout);
|
|
31
30
|
var text;
|
|
32
|
-
|
|
33
31
|
try {
|
|
34
32
|
await this.driver.waitUntil(async () => {
|
|
35
33
|
text = await el.getValue();
|
|
@@ -38,8 +36,8 @@ module.exports = async function (locator, pattern, timeout) {
|
|
|
38
36
|
timeout: timeout ? timeout : this.waitForTimeout
|
|
39
37
|
});
|
|
40
38
|
} catch (e) {
|
|
41
|
-
text = text.replace(/\n/g, '\\n');
|
|
39
|
+
if (text) text = text.replace(/\n/g, '\\n');
|
|
42
40
|
throw new this.OxError(this.errHelper.errorCode.TIMEOUT, `Expected not: "${pattern}". Got: "${text}"`);
|
|
43
41
|
}
|
|
44
42
|
};
|
|
45
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
43
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJtb2R1bGUiLCJleHBvcnRzIiwibG9jYXRvciIsInBhdHRlcm4iLCJ0aW1lb3V0IiwiaGVscGVycyIsImFzc2VydEFyZ3VtZW50IiwiYXNzZXJ0QXJndW1lbnRUaW1lb3V0IiwiZWwiLCJnZXRFbGVtZW50IiwidGV4dCIsImRyaXZlciIsIndhaXRVbnRpbCIsImdldFZhbHVlIiwibWF0Y2hQYXR0ZXJuIiwid2FpdEZvclRpbWVvdXQiLCJlIiwicmVwbGFjZSIsIk94RXJyb3IiLCJlcnJIZWxwZXIiLCJlcnJvckNvZGUiLCJUSU1FT1VUIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL294X21vZHVsZXMvbW9kdWxlLXdlYi9jb21tYW5kcy93YWl0Rm9yTm90VmFsdWUuanMiXSwic291cmNlc0NvbnRlbnQiOlsiLypcclxuICogQ29weXJpZ2h0IChDKSAyMDE1LXByZXNlbnQgQ2xvdWRCZWF0IExpbWl0ZWRcclxuICpcclxuICogVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnlcclxuICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnlcclxuICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3JcclxuICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi5cclxuICovXHJcblxyXG4vKipcclxuICogQHN1bW1hcnkgV2FpdHMgZm9yIGlucHV0IGVsZW1lbnQncyB2YWx1ZSB0byBzdG9wIG1hdGNoaW5nIHRoZSBzcGVjaWZpZWQgcGF0dGVybi5cclxuICogQGRlc2NyaXB0aW9uIFZhbHVlIHBhdHRlcm4gY2FuIGJlIGFueSBvZiB0aGUgc3VwcG9ydGVkXHJcbiAqICBzdHJpbmcgbWF0Y2hpbmcgcGF0dGVybnMob24gdGhlIHRvcCBvZiBwYWdlKS5cclxuICogQGZ1bmN0aW9uIHdhaXRGb3JOb3RWYWx1ZVxyXG4gKiBAcGFyYW0ge1N0cmluZ3xFbGVtZW50fSBsb2NhdG9yIC0gQW4gZWxlbWVudCBsb2NhdG9yLlxyXG4gKiBAcGFyYW0ge1N0cmluZ30gcGF0dGVybiAtIFZhbHVlIHBhdHRlcm4uXHJcbiAqIEBwYXJhbSB7TnVtYmVyPX0gdGltZW91dCAtIFRpbWVvdXQgaW4gbWlsbGlzZWNvbmRzLiBEZWZhdWx0IGlzIDYwIHNlY29uZHMuXHJcbiAqIEBleGFtcGxlIDxjYXB0aW9uPltqYXZhc2NyaXB0XSBVc2FnZSBleGFtcGxlPC9jYXB0aW9uPlxyXG4gKiB3ZWIuaW5pdCgpOy8vT3BlbnMgYnJvd3NlciBzZXNzaW9uLlxyXG4gKiB3ZWIub3BlbihcInd3dy55b3Vyd2Vic2l0ZS5jb21cIik7Ly8gT3BlbnMgYSB3ZWJzaXRlLlxyXG4gKiB3ZWIud2FpdEZvck5vdFZhbHVlKFwiaWQ9VXNlck5hbWVcIixcIlVzZXJcIik7Ly9XYWl0cyBmb3IgYW4gZWxlbWVudOKAmXMgdmFsdWUgdG8gbm90IG1hdGNoIHRvIGV4cGVjdGVkIHN0cmluZy5cclxuICovXHJcbm1vZHVsZS5leHBvcnRzID0gYXN5bmMgZnVuY3Rpb24obG9jYXRvciwgcGF0dGVybiwgdGltZW91dCkge1xyXG4gICAgdGhpcy5oZWxwZXJzLmFzc2VydEFyZ3VtZW50KHBhdHRlcm4sICdwYXR0ZXJuJyk7XHJcbiAgICB0aGlzLmhlbHBlcnMuYXNzZXJ0QXJndW1lbnRUaW1lb3V0KHRpbWVvdXQsICd0aW1lb3V0Jyk7XHJcblxyXG4gICAgdmFyIGVsID0gYXdhaXQgdGhpcy5oZWxwZXJzLmdldEVsZW1lbnQobG9jYXRvciwgZmFsc2UsIHRpbWVvdXQpO1xyXG5cclxuICAgIHZhciB0ZXh0O1xyXG4gICAgdHJ5IHtcclxuICAgICAgICBhd2FpdCB0aGlzLmRyaXZlci53YWl0VW50aWwoYXN5bmMoKSA9PiB7XHJcbiAgICAgICAgICAgIHRleHQgPSBhd2FpdCBlbC5nZXRWYWx1ZSgpO1xyXG4gICAgICAgICAgICByZXR1cm4gIXRoaXMuaGVscGVycy5tYXRjaFBhdHRlcm4odGV4dCwgcGF0dGVybik7XHJcbiAgICAgICAgfSxcclxuICAgICAgICB7IHRpbWVvdXQ6ICh0aW1lb3V0ID8gdGltZW91dCA6IHRoaXMud2FpdEZvclRpbWVvdXQpIH0pO1xyXG4gICAgfSBjYXRjaCAoZSkge1xyXG4gICAgICAgIGlmICh0ZXh0KVxyXG4gICAgICAgICAgICB0ZXh0ID0gdGV4dC5yZXBsYWNlKC9cXG4vZywgJ1xcXFxuJyk7XHJcbiAgICAgICAgdGhyb3cgbmV3IHRoaXMuT3hFcnJvcih0aGlzLmVyckhlbHBlci5lcnJvckNvZGUuVElNRU9VVCwgYEV4cGVjdGVkIG5vdDogXCIke3BhdHRlcm59XCIuIEdvdDogXCIke3RleHR9XCJgKTtcclxuICAgIH1cclxufTtcclxuIl0sIm1hcHBpbmdzIjoiOzs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0FBLE1BQU0sQ0FBQ0MsT0FBTyxHQUFHLGdCQUFlQyxPQUFPLEVBQUVDLE9BQU8sRUFBRUMsT0FBTyxFQUFFO0VBQ3ZELElBQUksQ0FBQ0MsT0FBTyxDQUFDQyxjQUFjLENBQUNILE9BQU8sRUFBRSxTQUFTLENBQUM7RUFDL0MsSUFBSSxDQUFDRSxPQUFPLENBQUNFLHFCQUFxQixDQUFDSCxPQUFPLEVBQUUsU0FBUyxDQUFDO0VBRXRELElBQUlJLEVBQUUsR0FBRyxNQUFNLElBQUksQ0FBQ0gsT0FBTyxDQUFDSSxVQUFVLENBQUNQLE9BQU8sRUFBRSxLQUFLLEVBQUVFLE9BQU8sQ0FBQztFQUUvRCxJQUFJTSxJQUFJO0VBQ1IsSUFBSTtJQUNBLE1BQU0sSUFBSSxDQUFDQyxNQUFNLENBQUNDLFNBQVMsQ0FBQyxZQUFXO01BQ25DRixJQUFJLEdBQUcsTUFBTUYsRUFBRSxDQUFDSyxRQUFRLEVBQUU7TUFDMUIsT0FBTyxDQUFDLElBQUksQ0FBQ1IsT0FBTyxDQUFDUyxZQUFZLENBQUNKLElBQUksRUFBRVAsT0FBTyxDQUFDO0lBQ3BELENBQUMsRUFDRDtNQUFFQyxPQUFPLEVBQUdBLE9BQU8sR0FBR0EsT0FBTyxHQUFHLElBQUksQ0FBQ1c7SUFBZ0IsQ0FBQyxDQUFDO0VBQzNELENBQUMsQ0FBQyxPQUFPQyxDQUFDLEVBQUU7SUFDUixJQUFJTixJQUFJLEVBQ0pBLElBQUksR0FBR0EsSUFBSSxDQUFDTyxPQUFPLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQztJQUNyQyxNQUFNLElBQUksSUFBSSxDQUFDQyxPQUFPLENBQUMsSUFBSSxDQUFDQyxTQUFTLENBQUNDLFNBQVMsQ0FBQ0MsT0FBTyxFQUFHLGtCQUFpQmxCLE9BQVEsWUFBV08sSUFBSyxHQUFFLENBQUM7RUFDMUc7QUFDSixDQUFDIn0=
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
require("source-map-support/register");
|
|
4
|
-
|
|
5
4
|
/*
|
|
6
5
|
* Copyright (C) 2015-present CloudBeat Limited
|
|
7
6
|
*
|
|
@@ -13,7 +12,7 @@ require("source-map-support/register");
|
|
|
13
12
|
|
|
14
13
|
/**
|
|
15
14
|
* @summary Waits for inner text of the given element to match the specified pattern.
|
|
16
|
-
* @description Text pattern can be any of the supported
|
|
15
|
+
* @description Text pattern can be any of the supported
|
|
17
16
|
* string matching patterns(on the top of page).
|
|
18
17
|
* @function waitForText
|
|
19
18
|
* @param {String|Element} locator - An element locator.
|
|
@@ -29,7 +28,6 @@ module.exports = async function (locator, pattern, timeout) {
|
|
|
29
28
|
this.helpers.assertArgumentTimeout(timeout, 'timeout');
|
|
30
29
|
var el = await this.helpers.getElement(locator, false, timeout);
|
|
31
30
|
var text;
|
|
32
|
-
|
|
33
31
|
try {
|
|
34
32
|
await this.driver.waitUntil(async () => {
|
|
35
33
|
text = await el.getText();
|
|
@@ -38,8 +36,8 @@ module.exports = async function (locator, pattern, timeout) {
|
|
|
38
36
|
timeout: timeout ? timeout : this.waitForTimeout
|
|
39
37
|
});
|
|
40
38
|
} catch (e) {
|
|
41
|
-
text = text.replace(/\n/g, '\\n');
|
|
39
|
+
if (text) text = text.replace(/\n/g, '\\n');
|
|
42
40
|
throw new this.OxError(this.errHelper.errorCode.TIMEOUT, `Expected: "${pattern}". Got: "${text}"`);
|
|
43
41
|
}
|
|
44
42
|
};
|
|
45
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
43
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJtb2R1bGUiLCJleHBvcnRzIiwibG9jYXRvciIsInBhdHRlcm4iLCJ0aW1lb3V0IiwiaGVscGVycyIsImFzc2VydEFyZ3VtZW50IiwiYXNzZXJ0QXJndW1lbnRUaW1lb3V0IiwiZWwiLCJnZXRFbGVtZW50IiwidGV4dCIsImRyaXZlciIsIndhaXRVbnRpbCIsImdldFRleHQiLCJtYXRjaFBhdHRlcm4iLCJ3YWl0Rm9yVGltZW91dCIsImUiLCJyZXBsYWNlIiwiT3hFcnJvciIsImVyckhlbHBlciIsImVycm9yQ29kZSIsIlRJTUVPVVQiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvb3hfbW9kdWxlcy9tb2R1bGUtd2ViL2NvbW1hbmRzL3dhaXRGb3JUZXh0LmpzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbiAqIENvcHlyaWdodCAoQykgMjAxNS1wcmVzZW50IENsb3VkQmVhdCBMaW1pdGVkXHJcbiAqXHJcbiAqIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5XHJcbiAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5XHJcbiAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yXHJcbiAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uXHJcbiAqL1xyXG5cclxuLyoqXHJcbiAqIEBzdW1tYXJ5IFdhaXRzIGZvciBpbm5lciB0ZXh0IG9mIHRoZSBnaXZlbiBlbGVtZW50IHRvIG1hdGNoIHRoZSBzcGVjaWZpZWQgcGF0dGVybi5cclxuICogQGRlc2NyaXB0aW9uIFRleHQgcGF0dGVybiBjYW4gYmUgYW55IG9mIHRoZSBzdXBwb3J0ZWRcclxuICogIHN0cmluZyBtYXRjaGluZyBwYXR0ZXJucyhvbiB0aGUgdG9wIG9mIHBhZ2UpLlxyXG4gKiBAZnVuY3Rpb24gd2FpdEZvclRleHRcclxuICogQHBhcmFtIHtTdHJpbmd8RWxlbWVudH0gbG9jYXRvciAtIEFuIGVsZW1lbnQgbG9jYXRvci5cclxuICogQHBhcmFtIHtTdHJpbmd9IHBhdHRlcm4gLSBUZXh0IHBhdHRlcm4uXHJcbiAqIEBwYXJhbSB7TnVtYmVyPX0gdGltZW91dCAtIFRpbWVvdXQgaW4gbWlsbGlzZWNvbmRzLiBEZWZhdWx0IGlzIDYwIHNlY29uZHMuXHJcbiAqIEBleGFtcGxlIDxjYXB0aW9uPltqYXZhc2NyaXB0XSBVc2FnZSBleGFtcGxlPC9jYXB0aW9uPlxyXG4gKiB3ZWIuaW5pdCgpOy8vT3BlbnMgYnJvd3NlciBzZXNzaW9uLlxyXG4gKiB3ZWIub3BlbihcInd3dy55b3Vyd2Vic2l0ZS5jb21cIik7Ly8gT3BlbnMgYSB3ZWJzaXRlLlxyXG4gKiB3ZWIud2FpdEZvclRleHQoXCJpZD1UaXRsZVwiLFwiV2Vic2l0ZVwiKTsvL1dhaXRzIGZvciBhbiBlbGVtZW504oCZcyB0ZXh0IHRvICBtYXRjaCB0byBleHBlY3RlZCBzdHJpbmcuXHJcbiAqL1xyXG5tb2R1bGUuZXhwb3J0cyA9IGFzeW5jIGZ1bmN0aW9uKGxvY2F0b3IsIHBhdHRlcm4sIHRpbWVvdXQpIHtcclxuICAgIHRoaXMuaGVscGVycy5hc3NlcnRBcmd1bWVudChwYXR0ZXJuLCAncGF0dGVybicpO1xyXG4gICAgdGhpcy5oZWxwZXJzLmFzc2VydEFyZ3VtZW50VGltZW91dCh0aW1lb3V0LCAndGltZW91dCcpO1xyXG5cclxuICAgIHZhciBlbCA9IGF3YWl0IHRoaXMuaGVscGVycy5nZXRFbGVtZW50KGxvY2F0b3IsIGZhbHNlLCB0aW1lb3V0KTtcclxuXHJcbiAgICB2YXIgdGV4dDtcclxuICAgIHRyeSB7XHJcbiAgICAgICAgYXdhaXQgdGhpcy5kcml2ZXIud2FpdFVudGlsKGFzeW5jKCkgPT4ge1xyXG4gICAgICAgICAgICB0ZXh0ID0gYXdhaXQgZWwuZ2V0VGV4dCgpO1xyXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5oZWxwZXJzLm1hdGNoUGF0dGVybih0ZXh0LCBwYXR0ZXJuKTtcclxuICAgICAgICB9LFxyXG4gICAgICAgIHsgdGltZW91dDogKHRpbWVvdXQgPyB0aW1lb3V0IDogdGhpcy53YWl0Rm9yVGltZW91dCkgfSk7XHJcbiAgICB9IGNhdGNoIChlKSB7XHJcbiAgICAgICAgaWYgKHRleHQpXHJcbiAgICAgICAgICAgIHRleHQgPSB0ZXh0LnJlcGxhY2UoL1xcbi9nLCAnXFxcXG4nKTtcclxuICAgICAgICB0aHJvdyBuZXcgdGhpcy5PeEVycm9yKHRoaXMuZXJySGVscGVyLmVycm9yQ29kZS5USU1FT1VULCBgRXhwZWN0ZWQ6IFwiJHtwYXR0ZXJufVwiLiBHb3Q6IFwiJHt0ZXh0fVwiYCk7XHJcbiAgICB9XHJcbn07XHJcbiJdLCJtYXBwaW5ncyI6Ijs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBQSxNQUFNLENBQUNDLE9BQU8sR0FBRyxnQkFBZUMsT0FBTyxFQUFFQyxPQUFPLEVBQUVDLE9BQU8sRUFBRTtFQUN2RCxJQUFJLENBQUNDLE9BQU8sQ0FBQ0MsY0FBYyxDQUFDSCxPQUFPLEVBQUUsU0FBUyxDQUFDO0VBQy9DLElBQUksQ0FBQ0UsT0FBTyxDQUFDRSxxQkFBcUIsQ0FBQ0gsT0FBTyxFQUFFLFNBQVMsQ0FBQztFQUV0RCxJQUFJSSxFQUFFLEdBQUcsTUFBTSxJQUFJLENBQUNILE9BQU8sQ0FBQ0ksVUFBVSxDQUFDUCxPQUFPLEVBQUUsS0FBSyxFQUFFRSxPQUFPLENBQUM7RUFFL0QsSUFBSU0sSUFBSTtFQUNSLElBQUk7SUFDQSxNQUFNLElBQUksQ0FBQ0MsTUFBTSxDQUFDQyxTQUFTLENBQUMsWUFBVztNQUNuQ0YsSUFBSSxHQUFHLE1BQU1GLEVBQUUsQ0FBQ0ssT0FBTyxFQUFFO01BQ3pCLE9BQU8sSUFBSSxDQUFDUixPQUFPLENBQUNTLFlBQVksQ0FBQ0osSUFBSSxFQUFFUCxPQUFPLENBQUM7SUFDbkQsQ0FBQyxFQUNEO01BQUVDLE9BQU8sRUFBR0EsT0FBTyxHQUFHQSxPQUFPLEdBQUcsSUFBSSxDQUFDVztJQUFnQixDQUFDLENBQUM7RUFDM0QsQ0FBQyxDQUFDLE9BQU9DLENBQUMsRUFBRTtJQUNSLElBQUlOLElBQUksRUFDSkEsSUFBSSxHQUFHQSxJQUFJLENBQUNPLE9BQU8sQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDO0lBQ3JDLE1BQU0sSUFBSSxJQUFJLENBQUNDLE9BQU8sQ0FBQyxJQUFJLENBQUNDLFNBQVMsQ0FBQ0MsU0FBUyxDQUFDQyxPQUFPLEVBQUcsY0FBYWxCLE9BQVEsWUFBV08sSUFBSyxHQUFFLENBQUM7RUFDdEc7QUFDSixDQUFDIn0=
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
require("source-map-support/register");
|
|
4
|
-
|
|
5
4
|
/*
|
|
6
5
|
* Copyright (C) 2015-present CloudBeat Limited
|
|
7
6
|
*
|
|
@@ -13,7 +12,7 @@ require("source-map-support/register");
|
|
|
13
12
|
|
|
14
13
|
/**
|
|
15
14
|
* @summary Waits for input element's value to match the specified pattern.
|
|
16
|
-
* @description Value pattern can be any of the supported
|
|
15
|
+
* @description Value pattern can be any of the supported
|
|
17
16
|
* string matching patterns(on the top of page).
|
|
18
17
|
* @function waitForValue
|
|
19
18
|
* @param {String|Element} locator - An element locator.
|
|
@@ -29,7 +28,6 @@ module.exports = async function (locator, pattern, timeout) {
|
|
|
29
28
|
this.helpers.assertArgumentTimeout(timeout, 'timeout');
|
|
30
29
|
var el = await this.helpers.getElement(locator, false, timeout);
|
|
31
30
|
var text;
|
|
32
|
-
|
|
33
31
|
try {
|
|
34
32
|
await this.driver.waitUntil(async () => {
|
|
35
33
|
text = await el.getValue();
|
|
@@ -38,8 +36,8 @@ module.exports = async function (locator, pattern, timeout) {
|
|
|
38
36
|
timeout: timeout ? timeout : this.waitForTimeout
|
|
39
37
|
});
|
|
40
38
|
} catch (e) {
|
|
41
|
-
text = text.replace(/\n/g, '\\n');
|
|
39
|
+
if (text) text = text.replace(/\n/g, '\\n');
|
|
42
40
|
throw new this.OxError(this.errHelper.errorCode.TIMEOUT, `Expected: "${pattern}". Got: "${text}"`);
|
|
43
41
|
}
|
|
44
42
|
};
|
|
45
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
43
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJtb2R1bGUiLCJleHBvcnRzIiwibG9jYXRvciIsInBhdHRlcm4iLCJ0aW1lb3V0IiwiaGVscGVycyIsImFzc2VydEFyZ3VtZW50IiwiYXNzZXJ0QXJndW1lbnRUaW1lb3V0IiwiZWwiLCJnZXRFbGVtZW50IiwidGV4dCIsImRyaXZlciIsIndhaXRVbnRpbCIsImdldFZhbHVlIiwibWF0Y2hQYXR0ZXJuIiwid2FpdEZvclRpbWVvdXQiLCJlIiwicmVwbGFjZSIsIk94RXJyb3IiLCJlcnJIZWxwZXIiLCJlcnJvckNvZGUiLCJUSU1FT1VUIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL294X21vZHVsZXMvbW9kdWxlLXdlYi9jb21tYW5kcy93YWl0Rm9yVmFsdWUuanMiXSwic291cmNlc0NvbnRlbnQiOlsiLypcclxuICogQ29weXJpZ2h0IChDKSAyMDE1LXByZXNlbnQgQ2xvdWRCZWF0IExpbWl0ZWRcclxuICpcclxuICogVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnlcclxuICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnlcclxuICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3JcclxuICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi5cclxuICovXHJcblxyXG4vKipcclxuICogQHN1bW1hcnkgV2FpdHMgZm9yIGlucHV0IGVsZW1lbnQncyB2YWx1ZSB0byBtYXRjaCB0aGUgc3BlY2lmaWVkIHBhdHRlcm4uXHJcbiAqIEBkZXNjcmlwdGlvbiBWYWx1ZSBwYXR0ZXJuIGNhbiBiZSBhbnkgb2YgdGhlIHN1cHBvcnRlZFxyXG4gKiAgc3RyaW5nIG1hdGNoaW5nIHBhdHRlcm5zKG9uIHRoZSB0b3Agb2YgcGFnZSkuXHJcbiAqIEBmdW5jdGlvbiB3YWl0Rm9yVmFsdWVcclxuICogQHBhcmFtIHtTdHJpbmd8RWxlbWVudH0gbG9jYXRvciAtIEFuIGVsZW1lbnQgbG9jYXRvci5cclxuICogQHBhcmFtIHtTdHJpbmd9IHBhdHRlcm4gLSBWYWx1ZSBwYXR0ZXJuLlxyXG4gKiBAcGFyYW0ge051bWJlcj19IHRpbWVvdXQgLSBUaW1lb3V0IGluIG1pbGxpc2Vjb25kcy4gRGVmYXVsdCBpcyA2MCBzZWNvbmRzLlxyXG4gKiBAZXhhbXBsZSA8Y2FwdGlvbj5bamF2YXNjcmlwdF0gVXNhZ2UgZXhhbXBsZTwvY2FwdGlvbj5cclxuICogd2ViLmluaXQoKTsvL09wZW5zIGJyb3dzZXIgc2Vzc2lvbi5cclxuICogd2ViLm9wZW4oXCJ3d3cueW91cndlYnNpdGUuY29tXCIpOy8vIE9wZW5zIGEgd2Vic2l0ZS5cclxuICogd2ViLndhaXRGb3JWYWx1ZShcImlkPVRpdGxlXCIsXCJXZWJzaXRlXCIpOy8vV2FpdHMgZm9yIGFuIGVsZW1lbnTigJlzIHZhbHVlIHRvICBtYXRjaCB0byBleHBlY3RlZCBzdHJpbmcuXHJcbiAqL1xyXG5tb2R1bGUuZXhwb3J0cyA9IGFzeW5jIGZ1bmN0aW9uKGxvY2F0b3IsIHBhdHRlcm4sIHRpbWVvdXQpIHtcclxuICAgIHRoaXMuaGVscGVycy5hc3NlcnRBcmd1bWVudChwYXR0ZXJuLCAncGF0dGVybicpO1xyXG4gICAgdGhpcy5oZWxwZXJzLmFzc2VydEFyZ3VtZW50VGltZW91dCh0aW1lb3V0LCAndGltZW91dCcpO1xyXG5cclxuICAgIHZhciBlbCA9IGF3YWl0IHRoaXMuaGVscGVycy5nZXRFbGVtZW50KGxvY2F0b3IsIGZhbHNlLCB0aW1lb3V0KTtcclxuXHJcbiAgICB2YXIgdGV4dDtcclxuICAgIHRyeSB7XHJcbiAgICAgICAgYXdhaXQgdGhpcy5kcml2ZXIud2FpdFVudGlsKGFzeW5jKCkgPT4ge1xyXG4gICAgICAgICAgICB0ZXh0ID0gYXdhaXQgZWwuZ2V0VmFsdWUoKTtcclxuICAgICAgICAgICAgcmV0dXJuIHRoaXMuaGVscGVycy5tYXRjaFBhdHRlcm4odGV4dCwgcGF0dGVybik7XHJcbiAgICAgICAgfSxcclxuICAgICAgICB7IHRpbWVvdXQ6ICh0aW1lb3V0ID8gdGltZW91dCA6IHRoaXMud2FpdEZvclRpbWVvdXQpIH0pO1xyXG4gICAgfSBjYXRjaCAoZSkge1xyXG4gICAgICAgIGlmICh0ZXh0KVxyXG4gICAgICAgICAgICB0ZXh0ID0gdGV4dC5yZXBsYWNlKC9cXG4vZywgJ1xcXFxuJyk7XHJcbiAgICAgICAgdGhyb3cgbmV3IHRoaXMuT3hFcnJvcih0aGlzLmVyckhlbHBlci5lcnJvckNvZGUuVElNRU9VVCwgYEV4cGVjdGVkOiBcIiR7cGF0dGVybn1cIi4gR290OiBcIiR7dGV4dH1cImApO1xyXG4gICAgfVxyXG59O1xyXG4iXSwibWFwcGluZ3MiOiI7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQUEsTUFBTSxDQUFDQyxPQUFPLEdBQUcsZ0JBQWVDLE9BQU8sRUFBRUMsT0FBTyxFQUFFQyxPQUFPLEVBQUU7RUFDdkQsSUFBSSxDQUFDQyxPQUFPLENBQUNDLGNBQWMsQ0FBQ0gsT0FBTyxFQUFFLFNBQVMsQ0FBQztFQUMvQyxJQUFJLENBQUNFLE9BQU8sQ0FBQ0UscUJBQXFCLENBQUNILE9BQU8sRUFBRSxTQUFTLENBQUM7RUFFdEQsSUFBSUksRUFBRSxHQUFHLE1BQU0sSUFBSSxDQUFDSCxPQUFPLENBQUNJLFVBQVUsQ0FBQ1AsT0FBTyxFQUFFLEtBQUssRUFBRUUsT0FBTyxDQUFDO0VBRS9ELElBQUlNLElBQUk7RUFDUixJQUFJO0lBQ0EsTUFBTSxJQUFJLENBQUNDLE1BQU0sQ0FBQ0MsU0FBUyxDQUFDLFlBQVc7TUFDbkNGLElBQUksR0FBRyxNQUFNRixFQUFFLENBQUNLLFFBQVEsRUFBRTtNQUMxQixPQUFPLElBQUksQ0FBQ1IsT0FBTyxDQUFDUyxZQUFZLENBQUNKLElBQUksRUFBRVAsT0FBTyxDQUFDO0lBQ25ELENBQUMsRUFDRDtNQUFFQyxPQUFPLEVBQUdBLE9BQU8sR0FBR0EsT0FBTyxHQUFHLElBQUksQ0FBQ1c7SUFBZ0IsQ0FBQyxDQUFDO0VBQzNELENBQUMsQ0FBQyxPQUFPQyxDQUFDLEVBQUU7SUFDUixJQUFJTixJQUFJLEVBQ0pBLElBQUksR0FBR0EsSUFBSSxDQUFDTyxPQUFPLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQztJQUNyQyxNQUFNLElBQUksSUFBSSxDQUFDQyxPQUFPLENBQUMsSUFBSSxDQUFDQyxTQUFTLENBQUNDLFNBQVMsQ0FBQ0MsT0FBTyxFQUFHLGNBQWFsQixPQUFRLFlBQVdPLElBQUssR0FBRSxDQUFDO0VBQ3RHO0FBQ0osQ0FBQyJ9
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
require("source-map-support/register");
|
|
4
|
-
|
|
5
4
|
/*
|
|
6
5
|
* Copyright (C) 2015-present CloudBeat Limited
|
|
7
6
|
*
|
|
@@ -25,4 +24,4 @@ module.exports = async function (locator, timeout) {
|
|
|
25
24
|
this.helpers.assertArgumentTimeout(timeout, 'timeout');
|
|
26
25
|
await this.helpers.getElement(locator, true, timeout);
|
|
27
26
|
};
|
|
28
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
27
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJtb2R1bGUiLCJleHBvcnRzIiwibG9jYXRvciIsInRpbWVvdXQiLCJoZWxwZXJzIiwiYXNzZXJ0QXJndW1lbnRUaW1lb3V0IiwiZ2V0RWxlbWVudCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9veF9tb2R1bGVzL21vZHVsZS13ZWIvY29tbWFuZHMvd2FpdEZvclZpc2libGUuanMiXSwic291cmNlc0NvbnRlbnQiOlsiLypcclxuICogQ29weXJpZ2h0IChDKSAyMDE1LXByZXNlbnQgQ2xvdWRCZWF0IExpbWl0ZWRcclxuICpcclxuICogVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnlcclxuICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnlcclxuICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3JcclxuICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi5cclxuICovXHJcblxyXG4vKipcclxuICogQHN1bW1hcnkgV2FpdHMgZm9yIGVsZW1lbnQgdG8gYmVjb21lIHZpc2libGUuXHJcbiAqIEBmdW5jdGlvbiB3YWl0Rm9yVmlzaWJsZVxyXG4gKiBAcGFyYW0ge1N0cmluZ3xFbGVtZW50fSBsb2NhdG9yIC0gQW4gZWxlbWVudCBsb2NhdG9yLlxyXG4gKiBAcGFyYW0ge051bWJlcj19IHRpbWVvdXQgLSBUaW1lb3V0IGluIG1pbGxpc2Vjb25kcy4gRGVmYXVsdCBpcyA2MCBzZWNvbmRzLlxyXG4gKiBAZXhhbXBsZSA8Y2FwdGlvbj5bamF2YXNjcmlwdF0gVXNhZ2UgZXhhbXBsZTwvY2FwdGlvbj5cclxuICogd2ViLmluaXQoKTsvL09wZW5zIGJyb3dzZXIgc2Vzc2lvbi5cclxuICogd2ViLm9wZW4oXCJ3d3cueW91cndlYnNpdGUuY29tXCIpOy8vIE9wZW5zIGEgd2Vic2l0ZS5cclxuICogd2ViLndhaXRGb3JWaXNpYmxlKFwiaWQ9VGl0bGVcIiwgNDUqMTAwMCk7Ly9XYWl0cyBmb3IgYW4gZWxlbWVudCB0byAgYmUgdmlzaWJsZS5cclxuICovXHJcbm1vZHVsZS5leHBvcnRzID0gYXN5bmMgZnVuY3Rpb24obG9jYXRvciwgdGltZW91dCkge1xyXG4gICAgdGhpcy5oZWxwZXJzLmFzc2VydEFyZ3VtZW50VGltZW91dCh0aW1lb3V0LCAndGltZW91dCcpO1xyXG4gICAgYXdhaXQgdGhpcy5oZWxwZXJzLmdldEVsZW1lbnQobG9jYXRvciwgdHJ1ZSwgdGltZW91dCk7XHJcbn07XHJcbiJdLCJtYXBwaW5ncyI6Ijs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBQSxNQUFNLENBQUNDLE9BQU8sR0FBRyxnQkFBZUMsT0FBTyxFQUFFQyxPQUFPLEVBQUU7RUFDOUMsSUFBSSxDQUFDQyxPQUFPLENBQUNDLHFCQUFxQixDQUFDRixPQUFPLEVBQUUsU0FBUyxDQUFDO0VBQ3RELE1BQU0sSUFBSSxDQUFDQyxPQUFPLENBQUNFLFVBQVUsQ0FBQ0osT0FBTyxFQUFFLElBQUksRUFBRUMsT0FBTyxDQUFDO0FBQ3pELENBQUMifQ==
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
require("source-map-support/register");
|
|
4
|
-
|
|
5
4
|
/*
|
|
6
5
|
* Copyright (C) 2015-present CloudBeat Limited
|
|
7
6
|
*
|
|
@@ -28,9 +27,10 @@ require("source-map-support/register");
|
|
|
28
27
|
*/
|
|
29
28
|
module.exports = async function (windowLocator, timeout) {
|
|
30
29
|
this.helpers.assertArgumentTimeout(timeout, 'timeout');
|
|
31
|
-
var currentHandle;
|
|
32
|
-
// so we select the last opened one in such case
|
|
30
|
+
var currentHandle;
|
|
33
31
|
|
|
32
|
+
// getWindowHandle() could possibly fail if there is no active window,
|
|
33
|
+
// so we select the last opened one in such case
|
|
34
34
|
try {
|
|
35
35
|
currentHandle = await this.driver.getWindowHandle();
|
|
36
36
|
} catch (err) {
|
|
@@ -38,27 +38,21 @@ module.exports = async function (windowLocator, timeout) {
|
|
|
38
38
|
await this.driver.switchToWindow(wnds[wnds.length - 1]);
|
|
39
39
|
currentHandle = await this.driver.getWindowHandle();
|
|
40
40
|
}
|
|
41
|
-
|
|
42
41
|
if (windowLocator.indexOf('title=') === 0) {
|
|
43
42
|
let pattern = windowLocator.substring('title='.length);
|
|
44
43
|
timeout = !timeout ? this.waitForTimeout : timeout;
|
|
45
44
|
let start = new Date().getTime();
|
|
46
|
-
|
|
47
45
|
while (new Date().getTime() - start < timeout) {
|
|
48
46
|
let windowHandles = await this.driver.getWindowHandles();
|
|
49
|
-
|
|
50
47
|
for (let i = 0; i < windowHandles.length; i++) {
|
|
51
48
|
let handle = windowHandles[i];
|
|
52
|
-
|
|
53
49
|
try {
|
|
54
50
|
await this.driver.switchToWindow(handle);
|
|
55
51
|
} catch (err) {
|
|
56
52
|
// in case window was closed
|
|
57
53
|
continue;
|
|
58
54
|
}
|
|
59
|
-
|
|
60
55
|
let title = await this.driver.getTitle();
|
|
61
|
-
|
|
62
56
|
if (this.helpers.matchPattern(title, pattern)) {
|
|
63
57
|
try {
|
|
64
58
|
await this.driver.switchToWindow(currentHandle); // return to original window
|
|
@@ -66,35 +60,27 @@ module.exports = async function (windowLocator, timeout) {
|
|
|
66
60
|
windowHandles = await this.driver.getWindowHandles();
|
|
67
61
|
await this.driver.switchToWindow(windowHandles[windowHandles.length - 1]);
|
|
68
62
|
}
|
|
69
|
-
|
|
70
63
|
return;
|
|
71
64
|
}
|
|
72
65
|
}
|
|
73
|
-
|
|
74
66
|
this.pause(1000);
|
|
75
67
|
}
|
|
76
|
-
|
|
77
68
|
throw new this.OxError(this.errHelper.errorCode.WINDOW_NOT_FOUND, `Unable to find window: ${windowLocator}`);
|
|
78
69
|
} else if (windowLocator.indexOf('url=') === 0) {
|
|
79
70
|
let pattern = windowLocator.substring('url='.length);
|
|
80
71
|
timeout = !timeout ? this.waitForTimeout : timeout;
|
|
81
72
|
let start = new Date().getTime();
|
|
82
|
-
|
|
83
73
|
while (new Date().getTime() - start < timeout) {
|
|
84
74
|
let windowHandles = await this.driver.getWindowHandles();
|
|
85
|
-
|
|
86
75
|
for (let i = 0; i < windowHandles.length; i++) {
|
|
87
76
|
let handle = windowHandles[i];
|
|
88
|
-
|
|
89
77
|
try {
|
|
90
78
|
await this.driver.switchToWindow(handle);
|
|
91
79
|
} catch (err) {
|
|
92
80
|
// in case window was closed
|
|
93
81
|
continue;
|
|
94
82
|
}
|
|
95
|
-
|
|
96
83
|
let url = await this.driver.getUrl();
|
|
97
|
-
|
|
98
84
|
if (this.helpers.matchPattern(url, pattern)) {
|
|
99
85
|
try {
|
|
100
86
|
await this.driver.switchToWindow(currentHandle); // return to original window
|
|
@@ -102,17 +88,14 @@ module.exports = async function (windowLocator, timeout) {
|
|
|
102
88
|
windowHandles = await this.driver.getWindowHandles();
|
|
103
89
|
await this.driver.switchToWindow(windowHandles[windowHandles.length - 1]);
|
|
104
90
|
}
|
|
105
|
-
|
|
106
91
|
return;
|
|
107
92
|
}
|
|
108
93
|
}
|
|
109
|
-
|
|
110
94
|
await this.pause(1000);
|
|
111
95
|
}
|
|
112
|
-
|
|
113
96
|
throw new this.OxError(this.errHelper.errorCode.WINDOW_NOT_FOUND, `Unable to find window: ${windowLocator}`);
|
|
114
97
|
} else {
|
|
115
98
|
throw new this.OxError(this.errHelper.errorCode.SCRIPT_ERROR, 'Invalid argument - windowLocator.');
|
|
116
99
|
}
|
|
117
100
|
};
|
|
118
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9veF9tb2R1bGVzL21vZHVsZS13ZWIvY29tbWFuZHMvd2FpdEZvcldpbmRvdy5qcyJdLCJuYW1lcyI6WyJtb2R1bGUiLCJleHBvcnRzIiwid2luZG93TG9jYXRvciIsInRpbWVvdXQiLCJoZWxwZXJzIiwiYXNzZXJ0QXJndW1lbnRUaW1lb3V0IiwiY3VycmVudEhhbmRsZSIsImRyaXZlciIsImdldFdpbmRvd0hhbmRsZSIsImVyciIsInduZHMiLCJnZXRXaW5kb3dIYW5kbGVzIiwic3dpdGNoVG9XaW5kb3ciLCJsZW5ndGgiLCJpbmRleE9mIiwicGF0dGVybiIsInN1YnN0cmluZyIsIndhaXRGb3JUaW1lb3V0Iiwic3RhcnQiLCJEYXRlIiwiZ2V0VGltZSIsIndpbmRvd0hhbmRsZXMiLCJpIiwiaGFuZGxlIiwidGl0bGUiLCJnZXRUaXRsZSIsIm1hdGNoUGF0dGVybiIsInBhdXNlIiwiT3hFcnJvciIsImVyckhlbHBlciIsImVycm9yQ29kZSIsIldJTkRPV19OT1RfRk9VTkQiLCJ1cmwiLCJnZXRVcmwiLCJTQ1JJUFRfRVJST1IiXSwibWFwcGluZ3MiOiI7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVDO0FBQ0Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBQSxNQUFNLENBQUNDLE9BQVAsR0FBaUIsZ0JBQWVDLGFBQWYsRUFBOEJDLE9BQTlCLEVBQXVDO0FBQ3BELE9BQUtDLE9BQUwsQ0FBYUMscUJBQWIsQ0FBbUNGLE9BQW5DLEVBQTRDLFNBQTVDO0FBQ0EsTUFBSUcsYUFBSixDQUZvRCxDQUlwRDtBQUNBOztBQUNBLE1BQUk7QUFDQUEsSUFBQUEsYUFBYSxHQUFHLE1BQU0sS0FBS0MsTUFBTCxDQUFZQyxlQUFaLEVBQXRCO0FBQ0gsR0FGRCxDQUVFLE9BQU9DLEdBQVAsRUFBWTtBQUNWLFFBQUlDLElBQUks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SUMsTUFBTSxHQUFHRixhQUFhLENBQUNDLENBQUQsQ0FBMUI7O0FBQ0EsWUFBSTtBQUNBLGdCQUFNLEtBQUtmLE1BQUwsQ0FBWUssY0FBWixDQUEyQlcsTUFBM0IsQ0FBTjtBQUNILFNBRkQsQ0FFRSxPQUFPZCxHQUFQLEVBQVk7QUFBRTtBQUNaO0FBQ0g7O0FBQ0QsWUFBSXVCLEdBQUcsR0FBRyxNQUFNLEtBQUt6QixNQUFMLENBQVkwQixNQUFaLEVBQWhCOztBQUNBLFlBQUksS0FBSzdCLE9BQUwsQ0FBYXNCLFlBQWIsQ0FBMEJNLEdBQTFCLEVBQStCakIsT0FBL0IsQ0FBSixFQUE2QztBQUN6QyxjQUFJO0FBQ0Esa0JBQU0sS0FBS1IsTUFBTCxDQUFZSyxjQUFaLENBQTJCTixhQUEzQixDQUFOLENBREEsQ0FDa0Q7QUFDckQsV0FGRCxDQUVFLE9BQU9HLEdBQVAsRUFBWTtBQUNWWSxZQUFBQSxhQUFhLEdBQUcsTUFBTSxLQUFLZCxNQUFMLENBQVlJLGdCQUFaLEVBQXRCO0FBQ0Esa0JBQU0sS0FBS0osTUFBTCxDQUFZSyxjQUFaLENBQTJCUyxhQUFhLENBQUNBLGFBQWEsQ0FBQ1IsTUFBZCxHQUF1QixDQUF4QixDQUF4QyxDQUFOO0FBQ0g7O0FBQ0Q7QUFDSDtBQUNKOztBQUNELFlBQU0sS0FBS2MsS0FBTCxDQUFXLElBQVgsQ0FBTjtBQUNIOztBQUNELFVBQU0sSUFBSSxLQUFLQyxPQUFULENBQWlCLEtBQUtDLFNBQUwsQ0FBZUMsU0FBZixDQUF5QkMsZ0JBQTFDLEVBQTZELDBCQUF5QjdCLGFBQWMsRUFBcEcsQ0FBTjtBQUNILEdBM0JNLE1BMkJBO0FBQ0gsVUFBTSxJQUFJLEtBQUswQixPQUFULENBQWlCLEtBQUtDLFNBQUwsQ0FBZUMsU0FBZixDQUF5QkksWUFBMUMsRUFBd0QsbUNBQXhELENBQU47QUFDSDtBQUNKLENBdkVEIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuICogQ29weXJpZ2h0IChDKSAyMDE1LXByZXNlbnQgQ2xvdWRCZWF0IExpbWl0ZWRcclxuICpcclxuICogVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnlcclxuICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnlcclxuICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3JcclxuICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi5cclxuICovXHJcblxyXG4gLyoqXHJcbiAgKiBAc3VtbWFyeSBXYWl0cyBmb3IgYSB3aW5kb3cgdG8gYXBwZWFyLCBidXQgZG9lc24ndCBhY3R1YWxseSBzd2l0Y2hlcyB0byBpdC5cclxuICAqIEBkZXNjcmlwdGlvbiBgd2luZG93TG9jYXRvcmAgY2FuIGJlOiAgXHJcbiAgKiAtIGB0aXRsZT1USVRMRWAgV2FpdCBmb3IgdGhlIGZpcnN0IHdpbmRvdyB3aGljaCBtYXRjaGVzIHRoZSBzcGVjaWZpZWQgdGl0bGUuIGBUSVRMRWAgY2FuIGJlIFxyXG4gICogYW55IG9mIHRoZSBzdXBwb3J0ZWQgIHN0cmluZyBtYXRjaGluZyBwYXR0ZXJucyhzZWUgdG9wIG9mIHRoZSBwYWdlKS4gIFxyXG4gICogLSBgdXJsPVVSTGAgV2FpdCBmb3IgdGhlIGZpcnN0IHdpbmRvdyB3aGljaCBtYXRjaGVzIHRoZSBzcGVjaWZpZWQgVVJMLiBgVVJMYCBjYW4gYmUgXHJcbiAgKiBhbnkgb2YgdGhlIHN1cHBvcnRlZCBzdHJpbmcgbWF0Y2hpbmcgcGF0dGVybnMoc2VlIHRvcCBvZiB0aGUgcGFnZSkuXHJcbiAgKiBAZnVuY3Rpb24gd2FpdEZvcldpbmRvd1xyXG4gICogQHBhcmFtIHtTdHJpbmd9IHdpbmRvd0xvY2F0b3IgLSBBIHdpbmRvdyBsb2NhdG9yLlxyXG4gICogQHBhcmFtIHtOdW1iZXI9fSB0aW1lb3V0IC0gVGltZW91dCBpbiBtaWxsaXNlY29uZHMuIERlZmF1bHQgaXMgNjAgc2Vjb25kcy5cclxuICAqIEBleGFtcGxlIDxjYXB0aW9uPltqYXZhc2NyaXB0XSBVc2FnZSBleGFtcGxlPC9jYXB0aW9uPlxyXG4gKiB3ZWIuaW5pdCgpOy8vT3BlbnMgYnJvd3NlciBzZXNzaW9uLlxyXG4gKiB3ZWIub3BlbihcInd3dy55b3Vyd2Vic2l0ZS5jb21cIik7Ly8gT3BlbnMgYSB3ZWJzaXRlLlxyXG4gKiB3ZWIud2FpdEZvcldpbmRvdyhcInRpdGxlPVdlYnNpdGVcIik7Ly9XYWl0cyBmb3IgYSB3aW5kb3cgdG8gYXBwZWFyLlxyXG4gICovXHJcbm1vZHVsZS5leHBvcnRzID0gYXN5bmMgZnVuY3Rpb24od2luZG93TG9jYXRvciwgdGltZW91dCkge1xyXG4gICAgdGhpcy5oZWxwZXJzLmFzc2VydEFyZ3VtZW50VGltZW91dCh0aW1lb3V0LCAndGltZW91dCcpO1xyXG4gICAgdmFyIGN1cnJlbnRIYW5kbGU7XHJcblxyXG4gICAgLy8gZ2V0V2luZG93SGFuZGxlKCkgY291bGQgcG9zc2libHkgZmFpbCBpZiB0aGVyZSBpcyBubyBhY3RpdmUgd2luZG93LFxyXG4gICAgLy8gc28gd2Ugc2VsZWN0IHRoZSBsYXN0IG9wZW5lZCBvbmUgaW4gc3VjaCBjYXNlXHJcbiAgICB0cnkge1xyXG4gICAgICAgIGN1cnJlbnRIYW5kbGUgPSBhd2FpdCB0aGlzLmRyaXZlci5nZXRXaW5kb3dIYW5kbGUoKTtcclxuICAgIH0gY2F0Y2ggKGVycikge1xyXG4gICAgICAgIHZhciB3bmRzID0gYXdhaXQgdGhpcy5kcml2ZXIuZ2V0V2luZG93SGFuZGxlcygpO1xyXG4gICAgICAgIGF3YWl0IHRoaXMuZHJpdmVyLnN3aXRjaFRvV2luZG93KHduZHNbd25kcy5sZW5ndGggLSAxXSk7XHJcbiAgICAgICAgY3VycmVudEhhbmRsZSA9IGF3YWl0IHRoaXMuZHJpdmVyLmdldFdpbmRvd0hhbmRsZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh3aW5kb3dMb2NhdG9yLmluZGV4T2YoJ3RpdGxlPScpID09PSAwKSB7XHJcbiAgICAgICAgbGV0IHBhdHRlcm4gPSB3aW5kb3dMb2NhdG9yLnN1YnN0cmluZygndGl0bGU9Jy5sZW5ndGgpO1xyXG4gICAgICAgIHRpbWVvdXQgPSAhdGltZW91dCA/IHRoaXMud2FpdEZvclRpbWVvdXQgOiB0aW1lb3V0O1xyXG4gICAgICAgIGxldCBzdGFydCA9IChuZXcgRGF0ZSgpKS5nZXRUaW1lKCk7XHJcbiAgICAgICAgd2hpbGUgKChuZXcgRGF0ZSgpKS5nZXRUaW1lKCkgLSBzdGFydCA8IHRpbWVvdXQpIHtcclxuICAgICAgICAgICAgbGV0IHdpbmRvd0hhbmRsZXMgPSBhd2FpdCB0aGlzLmRyaXZlci5nZXRXaW5kb3dIYW5kbGVzKCk7XHJcbiAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgd2luZG93SGFuZGxlcy5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgICAgICAgICAgbGV0IGhhbmRsZSA9IHdpbmRvd0hhbmRsZXNbaV07XHJcbiAgICAgICAgICAgICAgICB0cnkge1xyXG4gICAgICAgICAgICAgICAgICAgIGF3YWl0IHRoaXMuZHJpdmVyLnN3aXRjaFRvV2luZG93KGhhbmRsZSk7XHJcbiAgICAgICAgICAgICAgICB9IGNhdGNoIChlcnIpIHsgLy8gaW4gY2FzZSB3aW5kb3cgd2FzIGNsb3NlZFxyXG4gICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgbGV0IHRpdGxlID0gYXdhaXQgdGhpcy5kcml2ZXIuZ2V0VGl0bGUoKTtcclxuICAgICAgICAgICAgICAgIGlmICh0aGlzLmhlbHBlcnMubWF0Y2hQYXR0ZXJuKHRpdGxlLCBwYXR0ZXJuKSkge1xyXG4gICAgICAgICAgICAgICAgICAgIHRyeSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGF3YWl0IHRoaXMuZHJpdmVyLnN3aXRjaFRvV2luZG93KGN1cnJlbnRIYW5kbGUpOyAgLy8gcmV0dXJuIHRvIG9yaWdpbmFsIHdpbmRvd1xyXG4gICAgICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGVycikge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB3aW5kb3dIYW5kbGVzID0gYXdhaXQgdGhpcy5kcml2ZXIuZ2V0V2luZG93SGFuZGxlcygpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBhd2FpdCB0aGlzLmRyaXZlci5zd2l0Y2hUb1dpbmRvdyh3aW5kb3dIYW5kbGVzW3dpbmRvd0hhbmRsZXMubGVuZ3RoIC0gMV0pO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgdGhpcy5wYXVzZSgxMDAwKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhyb3cgbmV3IHRoaXMuT3hFcnJvcih0aGlzLmVyckhlbHBlci5lcnJvckNvZGUuV0lORE9XX05PVF9GT1VORCwgYFVuYWJsZSB0byBmaW5kIHdpbmRvdzogJHt3aW5kb3dMb2NhdG9yfWApO1xyXG4gICAgfSBlbHNlIGlmICh3aW5kb3dMb2NhdG9yLmluZGV4T2YoJ3VybD0nKSA9PT0gMCkge1xyXG4gICAgICAgIGxldCBwYXR0ZXJuID0gd2luZG93TG9jYXRvci5zdWJzdHJpbmcoJ3VybD0nLmxlbmd0aCk7XHJcbiAgICAgICAgdGltZW91dCA9ICF0aW1lb3V0ID8gdGhpcy53YWl0Rm9yVGltZW91dCA6IHRpbWVvdXQ7XHJcbiAgICAgICAgbGV0IHN0YXJ0ID0gKG5ldyBEYXRlKCkpLmdldFRpbWUoKTtcclxuICAgICAgICB3aGlsZSAoKG5ldyBEYXRlKCkpLmdldFRpbWUoKSAtIHN0YXJ0IDwgdGltZW91dCkge1xyXG4gICAgICAgICAgICBsZXQgd2luZG93SGFuZGxlcyA9IGF3YWl0IHRoaXMuZHJpdmVyLmdldFdpbmRvd0hhbmRsZXMoKTtcclxuICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB3aW5kb3dIYW5kbGVzLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgICAgICAgICBsZXQgaGFuZGxlID0gd2luZG93SGFuZGxlc1tpXTtcclxuICAgICAgICAgICAgICAgIHRyeSB7XHJcbiAgICAgICAgICAgICAgICAgICAgYXdhaXQgdGhpcy5kcml2ZXIuc3dpdGNoVG9XaW5kb3coaGFuZGxlKTtcclxuICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGVycikgeyAvLyBpbiBjYXNlIHdpbmRvdyB3YXMgY2xvc2VkXHJcbiAgICAgICAgICAgICAgICAgICAgY29udGludWU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBsZXQgdXJsID0gYXdhaXQgdGhpcy5kcml2ZXIuZ2V0VXJsKCk7XHJcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5oZWxwZXJzLm1hdGNoUGF0dGVybih1cmwsIHBhdHRlcm4pKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJ5IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYXdhaXQgdGhpcy5kcml2ZXIuc3dpdGNoVG9XaW5kb3coY3VycmVudEhhbmRsZSk7ICAvLyByZXR1cm4gdG8gb3JpZ2luYWwgd2luZG93XHJcbiAgICAgICAgICAgICAgICAgICAgfSBjYXRjaCAoZXJyKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpbmRvd0hhbmRsZXMgPSBhd2FpdCB0aGlzLmRyaXZlci5nZXRXaW5kb3dIYW5kbGVzKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGF3YWl0IHRoaXMuZHJpdmVyLnN3aXRjaFRvV2luZG93KHdpbmRvd0hhbmRsZXNbd2luZG93SGFuZGxlcy5sZW5ndGggLSAxXSk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBhd2FpdCB0aGlzLnBhdXNlKDEwMDApO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aHJvdyBuZXcgdGhpcy5PeEVycm9yKHRoaXMuZXJySGVscGVyLmVycm9yQ29kZS5XSU5ET1dfTk9UX0ZPVU5ELCBgVW5hYmxlIHRvIGZpbmQgd2luZG93OiAke3dpbmRvd0xvY2F0b3J9YCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRocm93IG5ldyB0aGlzLk94RXJyb3IodGhpcy5lcnJIZWxwZXIuZXJyb3JDb2RlLlNDUklQVF9FUlJPUiwgJ0ludmFsaWQgYXJndW1lbnQgLSB3aW5kb3dMb2NhdG9yLicpO1xyXG4gICAgfVxyXG59OyJdfQ==
|
|
101
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJtb2R1bGUiLCJleHBvcnRzIiwid2luZG93TG9jYXRvciIsInRpbWVvdXQiLCJoZWxwZXJzIiwiYXNzZXJ0QXJndW1lbnRUaW1lb3V0IiwiY3VycmVudEhhbmRsZSIsImRyaXZlciIsImdldFdpbmRvd0hhbmRsZSIsImVyciIsInduZHMiLCJnZXRXaW5kb3dIYW5kbGVzIiwic3dpdGNoVG9XaW5kb3ciLCJsZW5ndGgiLCJpbmRleE9mIiwicGF0dGVybiIsInN1YnN0cmluZyIsIndhaXRGb3JUaW1lb3V0Iiwic3RhcnQiLCJEYXRlIiwiZ2V0VGltZSIsIndpbmRvd0hhbmRsZXMiLCJpIiwiaGFuZGxlIiwidGl0bGUiLCJnZXRUaXRsZSIsIm1hdGNoUGF0dGVybiIsInBhdXNlIiwiT3hFcnJvciIsImVyckhlbHBlciIsImVycm9yQ29kZSIsIldJTkRPV19OT1RfRk9VTkQiLCJ1cmwiLCJnZXRVcmwiLCJTQ1JJUFRfRVJST1IiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvb3hfbW9kdWxlcy9tb2R1bGUtd2ViL2NvbW1hbmRzL3dhaXRGb3JXaW5kb3cuanMiXSwic291cmNlc0NvbnRlbnQiOlsiLypcclxuICogQ29weXJpZ2h0IChDKSAyMDE1LXByZXNlbnQgQ2xvdWRCZWF0IExpbWl0ZWRcclxuICpcclxuICogVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnlcclxuICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnlcclxuICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3JcclxuICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi5cclxuICovXHJcblxyXG4gLyoqXHJcbiAgKiBAc3VtbWFyeSBXYWl0cyBmb3IgYSB3aW5kb3cgdG8gYXBwZWFyLCBidXQgZG9lc24ndCBhY3R1YWxseSBzd2l0Y2hlcyB0byBpdC5cclxuICAqIEBkZXNjcmlwdGlvbiBgd2luZG93TG9jYXRvcmAgY2FuIGJlOiAgXHJcbiAgKiAtIGB0aXRsZT1USVRMRWAgV2FpdCBmb3IgdGhlIGZpcnN0IHdpbmRvdyB3aGljaCBtYXRjaGVzIHRoZSBzcGVjaWZpZWQgdGl0bGUuIGBUSVRMRWAgY2FuIGJlIFxyXG4gICogYW55IG9mIHRoZSBzdXBwb3J0ZWQgIHN0cmluZyBtYXRjaGluZyBwYXR0ZXJucyhzZWUgdG9wIG9mIHRoZSBwYWdlKS4gIFxyXG4gICogLSBgdXJsPVVSTGAgV2FpdCBmb3IgdGhlIGZpcnN0IHdpbmRvdyB3aGljaCBtYXRjaGVzIHRoZSBzcGVjaWZpZWQgVVJMLiBgVVJMYCBjYW4gYmUgXHJcbiAgKiBhbnkgb2YgdGhlIHN1cHBvcnRlZCBzdHJpbmcgbWF0Y2hpbmcgcGF0dGVybnMoc2VlIHRvcCBvZiB0aGUgcGFnZSkuXHJcbiAgKiBAZnVuY3Rpb24gd2FpdEZvcldpbmRvd1xyXG4gICogQHBhcmFtIHtTdHJpbmd9IHdpbmRvd0xvY2F0b3IgLSBBIHdpbmRvdyBsb2NhdG9yLlxyXG4gICogQHBhcmFtIHtOdW1iZXI9fSB0aW1lb3V0IC0gVGltZW91dCBpbiBtaWxsaXNlY29uZHMuIERlZmF1bHQgaXMgNjAgc2Vjb25kcy5cclxuICAqIEBleGFtcGxlIDxjYXB0aW9uPltqYXZhc2NyaXB0XSBVc2FnZSBleGFtcGxlPC9jYXB0aW9uPlxyXG4gKiB3ZWIuaW5pdCgpOy8vT3BlbnMgYnJvd3NlciBzZXNzaW9uLlxyXG4gKiB3ZWIub3BlbihcInd3dy55b3Vyd2Vic2l0ZS5jb21cIik7Ly8gT3BlbnMgYSB3ZWJzaXRlLlxyXG4gKiB3ZWIud2FpdEZvcldpbmRvdyhcInRpdGxlPVdlYnNpdGVcIik7Ly9XYWl0cyBmb3IgYSB3aW5kb3cgdG8gYXBwZWFyLlxyXG4gICovXHJcbm1vZHVsZS5leHBvcnRzID0gYXN5bmMgZnVuY3Rpb24od2luZG93TG9jYXRvciwgdGltZW91dCkge1xyXG4gICAgdGhpcy5oZWxwZXJzLmFzc2VydEFyZ3VtZW50VGltZW91dCh0aW1lb3V0LCAndGltZW91dCcpO1xyXG4gICAgdmFyIGN1cnJlbnRIYW5kbGU7XHJcblxyXG4gICAgLy8gZ2V0V2luZG93SGFuZGxlKCkgY291bGQgcG9zc2libHkgZmFpbCBpZiB0aGVyZSBpcyBubyBhY3RpdmUgd2luZG93LFxyXG4gICAgLy8gc28gd2Ugc2VsZWN0IHRoZSBsYXN0IG9wZW5lZCBvbmUgaW4gc3VjaCBjYXNlXHJcbiAgICB0cnkge1xyXG4gICAgICAgIGN1cnJlbnRIYW5kbGUgPSBhd2FpdCB0aGlzLmRyaXZlci5nZXRXaW5kb3dIYW5kbGUoKTtcclxuICAgIH0gY2F0Y2ggKGVycikge1xyXG4gICAgICAgIHZhciB3bmRzID0gYXdhaXQgdGhpcy5kcml2ZXIuZ2V0V2luZG93SGFuZGxlcygpO1xyXG4gICAgICAgIGF3YWl0IHRoaXMuZHJpdmVyLnN3aXRjaFRvV2luZG93KHduZHNbd25kcy5sZW5ndGggLSAxXSk7XHJcbiAgICAgICAgY3VycmVudEhhbmRsZSA9IGF3YWl0IHRoaXMuZHJpdmVyLmdldFdpbmRvd0hhbmRsZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh3aW5kb3dMb2NhdG9yLmluZGV4T2YoJ3RpdGxlPScpID09PSAwKSB7XHJcbiAgICAgICAgbGV0IHBhdHRlcm4gPSB3aW5kb3dMb2NhdG9yLnN1YnN0cmluZygndGl0bGU9Jy5sZW5ndGgpO1xyXG4gICAgICAgIHRpbWVvdXQgPSAhdGltZW91dCA/IHRoaXMud2FpdEZvclRpbWVvdXQgOiB0aW1lb3V0O1xyXG4gICAgICAgIGxldCBzdGFydCA9IChuZXcgRGF0ZSgpKS5nZXRUaW1lKCk7XHJcbiAgICAgICAgd2hpbGUgKChuZXcgRGF0ZSgpKS5nZXRUaW1lKCkgLSBzdGFydCA8IHRpbWVvdXQpIHtcclxuICAgICAgICAgICAgbGV0IHdpbmRvd0hhbmRsZXMgPSBhd2FpdCB0aGlzLmRyaXZlci5nZXRXaW5kb3dIYW5kbGVzKCk7XHJcbiAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgd2luZG93SGFuZGxlcy5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgICAgICAgICAgbGV0IGhhbmRsZSA9IHdpbmRvd0hhbmRsZXNbaV07XHJcbiAgICAgICAgICAgICAgICB0cnkge1xyXG4gICAgICAgICAgICAgICAgICAgIGF3YWl0IHRoaXMuZHJpdmVyLnN3aXRjaFRvV2luZG93KGhhbmRsZSk7XHJcbiAgICAgICAgICAgICAgICB9IGNhdGNoIChlcnIpIHsgLy8gaW4gY2FzZSB3aW5kb3cgd2FzIGNsb3NlZFxyXG4gICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgbGV0IHRpdGxlID0gYXdhaXQgdGhpcy5kcml2ZXIuZ2V0VGl0bGUoKTtcclxuICAgICAgICAgICAgICAgIGlmICh0aGlzLmhlbHBlcnMubWF0Y2hQYXR0ZXJuKHRpdGxlLCBwYXR0ZXJuKSkge1xyXG4gICAgICAgICAgICAgICAgICAgIHRyeSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGF3YWl0IHRoaXMuZHJpdmVyLnN3aXRjaFRvV2luZG93KGN1cnJlbnRIYW5kbGUpOyAgLy8gcmV0dXJuIHRvIG9yaWdpbmFsIHdpbmRvd1xyXG4gICAgICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGVycikge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB3aW5kb3dIYW5kbGVzID0gYXdhaXQgdGhpcy5kcml2ZXIuZ2V0V2luZG93SGFuZGxlcygpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBhd2FpdCB0aGlzLmRyaXZlci5zd2l0Y2hUb1dpbmRvdyh3aW5kb3dIYW5kbGVzW3dpbmRvd0hhbmRsZXMubGVuZ3RoIC0gMV0pO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgdGhpcy5wYXVzZSgxMDAwKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhyb3cgbmV3IHRoaXMuT3hFcnJvcih0aGlzLmVyckhlbHBlci5lcnJvckNvZGUuV0lORE9XX05PVF9GT1VORCwgYFVuYWJsZSB0byBmaW5kIHdpbmRvdzogJHt3aW5kb3dMb2NhdG9yfWApO1xyXG4gICAgfSBlbHNlIGlmICh3aW5kb3dMb2NhdG9yLmluZGV4T2YoJ3VybD0nKSA9PT0gMCkge1xyXG4gICAgICAgIGxldCBwYXR0ZXJuID0gd2luZG93TG9jYXRvci5zdWJzdHJpbmcoJ3VybD0nLmxlbmd0aCk7XHJcbiAgICAgICAgdGltZW91dCA9ICF0aW1lb3V0ID8gdGhpcy53YWl0Rm9yVGltZW91dCA6IHRpbWVvdXQ7XHJcbiAgICAgICAgbGV0IHN0YXJ0ID0gKG5ldyBEYXRlKCkpLmdldFRpbWUoKTtcclxuICAgICAgICB3aGlsZSAoKG5ldyBEYXRlKCkpLmdldFRpbWUoKSAtIHN0YXJ0IDwgdGltZW91dCkge1xyXG4gICAgICAgICAgICBsZXQgd2luZG93SGFuZGxlcyA9IGF3YWl0IHRoaXMuZHJpdmVyLmdldFdpbmRvd0hhbmRsZXMoKTtcclxuICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB3aW5kb3dIYW5kbGVzLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgICAgICAgICBsZXQgaGFuZGxlID0gd2luZG93SGFuZGxlc1tpXTtcclxuICAgICAgICAgICAgICAgIHRyeSB7XHJcbiAgICAgICAgICAgICAgICAgICAgYXdhaXQgdGhpcy5kcml2ZXIuc3dpdGNoVG9XaW5kb3coaGFuZGxlKTtcclxuICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGVycikgeyAvLyBpbiBjYXNlIHdpbmRvdyB3YXMgY2xvc2VkXHJcbiAgICAgICAgICAgICAgICAgICAgY29udGludWU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBsZXQgdXJsID0gYXdhaXQgdGhpcy5kcml2ZXIuZ2V0VXJsKCk7XHJcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5oZWxwZXJzLm1hdGNoUGF0dGVybih1cmwsIHBhdHRlcm4pKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJ5IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYXdhaXQgdGhpcy5kcml2ZXIuc3dpdGNoVG9XaW5kb3coY3VycmVudEhhbmRsZSk7ICAvLyByZXR1cm4gdG8gb3JpZ2luYWwgd2luZG93XHJcbiAgICAgICAgICAgICAgICAgICAgfSBjYXRjaCAoZXJyKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpbmRvd0hhbmRsZXMgPSBhd2FpdCB0aGlzLmRyaXZlci5nZXRXaW5kb3dIYW5kbGVzKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGF3YWl0IHRoaXMuZHJpdmVyLnN3aXRjaFRvV2luZG93KHdpbmRvd0hhbmRsZXNbd2luZG93SGFuZGxlcy5sZW5ndGggLSAxXSk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBhd2FpdCB0aGlzLnBhdXNlKDEwMDApO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aHJvdyBuZXcgdGhpcy5PeEVycm9yKHRoaXMuZXJySGVscGVyLmVycm9yQ29kZS5XSU5ET1dfTk9UX0ZPVU5ELCBgVW5hYmxlIHRvIGZpbmQgd2luZG93OiAke3dpbmRvd0xvY2F0b3J9YCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRocm93IG5ldyB0aGlzLk94RXJyb3IodGhpcy5lcnJIZWxwZXIuZXJyb3JDb2RlLlNDUklQVF9FUlJPUiwgJ0ludmFsaWQgYXJndW1lbnQgLSB3aW5kb3dMb2NhdG9yLicpO1xyXG4gICAgfVxyXG59OyJdLCJtYXBwaW5ncyI6Ijs7O0FBQUE7QUFDQTtBQUNBO0FB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
|