appium-espresso-driver 1.46.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 +23 -0
- package/LICENSE +201 -0
- package/README.md +864 -0
- package/build/index.js +48 -0
- package/build/lib/commands/execute.js +67 -0
- package/build/lib/commands/general.js +337 -0
- package/build/lib/commands/idling-resources.js +31 -0
- package/build/lib/commands/index.js +26 -0
- package/build/lib/commands/services.js +27 -0
- package/build/lib/desired-caps.js +65 -0
- package/build/lib/driver.js +475 -0
- package/build/lib/espresso-runner.js +381 -0
- package/build/lib/logger.js +18 -0
- package/build/lib/server-builder.js +213 -0
- package/build/lib/server.js +39 -0
- package/build/lib/utils.js +85 -0
- package/espresso-server/app/build/outputs/apk/androidTest/debug/app-debug-androidTest.apk +0 -0
- package/espresso-server/app/build/outputs/apk/androidTest/debug/output-metadata.json +18 -0
- package/espresso-server/app/build.gradle.kts +153 -0
- package/espresso-server/app/proguard-rules.pro +25 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/EspressoServerRunnerTest.kt +93 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/drivers/AppDriver.kt +29 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/drivers/ComposeDriver.kt +73 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/drivers/DriverContext.kt +35 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/drivers/EspressoDriver.kt +70 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/AcceptAlert.kt +32 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/Back.kt +31 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/Clear.kt +40 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/Click.kt +27 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/CreateSession.kt +58 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/DeleteSession.kt +33 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/DismissAlert.kt +32 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/DrawerActionHandler.kt +45 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/ElementEquals.kt +19 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/ElementScreenshot.kt +31 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/ElementValue.kt +85 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/FindActive.kt +32 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/FindElement.kt +29 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/FindElements.kt +43 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/GetAlertText.kt +31 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/GetAttribute.kt +101 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/GetClipboard.kt +65 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/GetDeviceInfo.kt +44 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/GetDisplayed.kt +28 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/GetEnabled.kt +30 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/GetLocation.kt +32 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/GetLocationInView.kt +33 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/GetName.kt +31 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/GetOrientation.kt +44 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/GetRect.kt +38 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/GetRotation.kt +33 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/GetSelected.kt +30 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/GetSession.kt +34 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/GetSessions.kt +41 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/GetSettings.kt +25 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/GetSize.kt +32 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/GetToastVisibility.kt +34 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/GetWindowRect.kt +43 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/GetWindowSize.kt +42 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/HideKeyboard.kt +29 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/Keys.kt +82 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/ListIdlingResources.kt +30 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/MobileBackdoor.kt +42 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/MobileClickAction.kt +49 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/MobileSwipe.kt +71 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/MobileViewFlash.kt +50 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/MoveTo.kt +50 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/MultiTouchAction.kt +50 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/NavigateTo.kt +42 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/NoSessionCommandHandler.kt +4 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/NotYetImplemented.kt +28 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/OpenNotifications.kt +28 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/PerformAction.kt +42 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/PerformAutofillDismissal.kt +31 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/PerformEditorAction.kt +30 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/PointerEventHandler.kt +281 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/PressKeyCode.kt +90 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/RegisterIdlingResources.kt +33 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/ReleaseActions.kt +41 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/RequestHandler.kt +43 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/ScreenshotHandler.kt +29 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/ScrollToPage.kt +60 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/SetClipboard.kt +64 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/SetDate.kt +41 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/SetOrientation.kt +61 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/SetRotation.kt +46 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/SetTime.kt +41 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/Source.kt +29 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/StartActivity.kt +30 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/StartService.kt +40 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/Status.kt +26 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/StopService.kt +37 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/Text.kt +28 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/TouchAction.kt +49 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/Uiautomator.kt +68 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/UiautomatorPageSource.kt +35 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/UnregisterIdlingResources.kt +33 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/UpdateSettings.kt +35 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/WebAtoms.kt +69 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/exceptions/AppiumException.kt +40 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/exceptions/DuplicateRouteException.kt +22 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/exceptions/ElementNotVisibleException.kt +30 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/exceptions/InvalidArgumentException.kt +35 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/exceptions/InvalidElementStateException.kt +41 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/exceptions/InvalidSelectorException.kt +35 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/exceptions/MoveTargetOutOfBoundsException.kt +39 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/exceptions/NoAlertOpenException.kt +33 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/exceptions/NoSuchDriverException.kt +31 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/exceptions/NoSuchElementException.kt +34 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/exceptions/NotYetImplementedException.kt +33 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/exceptions/ScreenCaptureException.kt +30 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/exceptions/SessionNotCreatedException.kt +34 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/exceptions/StaleElementException.kt +30 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/handlers/exceptions/XPathLookupException.kt +31 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/AccessibilityServiceState.kt +15 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/ActivityHelpers.kt +125 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/ActivityOptionsHelpers.kt +60 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/AlertHelpers.kt +170 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/AndroidLogger.kt +45 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/AssertHelpers.kt +17 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/AutofillHelpers.kt +44 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/BackdoorUtils.java +49 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/ClipboardHelper.kt +51 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/ComposeNodeFinder.kt +59 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/DeviceInfoHelper.kt +148 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/EspressoViewsCache.kt +57 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/GsonParserHelpers.kt +72 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/IMEHelpers.kt +88 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/IntentHelpers.kt +336 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/InteractionHelper.kt +40 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/InvocationOperation.java +80 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/LocaleHelpers.kt +46 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/Logger.kt +25 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/NotificationListener.kt +87 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/Rect.kt +22 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/ReflectionUtils.kt +64 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/ScreenshotsHelper.kt +59 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/StringHelpers.kt +42 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/ThreadHelpers.kt +15 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/UiAutomationWrapper.kt +48 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/ViewFinder.kt +316 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/XMLHelpers.kt +56 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/extensions/Semaphore.kt +22 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/reflection/ArrayUtils.java +110 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/reflection/ClassUtils.java +180 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/reflection/MethodUtils.java +155 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/reflection/Validate.java +34 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/w3c/adapter/BaseW3CActionAdapter.kt +71 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/w3c/adapter/DummyW3CActionAdapter.kt +133 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/w3c/adapter/W3CActionAdapter.kt +71 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/w3c/adapter/espresso/AndroidKeyEvent.kt +271 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/w3c/adapter/espresso/AndroidMotionEvent.kt +90 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/w3c/adapter/espresso/EspressoW3CActionAdapter.kt +147 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/w3c/adapter/espresso/Helpers.kt +71 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/w3c/adapter/espresso/MotionEventBuilder.kt +153 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/w3c/adapter/espresso/MultiTouchState.kt +132 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/w3c/adapter/espresso/TouchState.kt +7 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/w3c/caps/CapsUtils.kt +96 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/w3c/dispatcher/BaseDispatchResult.kt +14 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/w3c/dispatcher/DispatchPointerMoveResult.kt +22 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/w3c/dispatcher/KeyDispatch.kt +151 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/w3c/dispatcher/PointerDispatch.kt +286 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/w3c/dispatcher/W3CKeyEvent.kt +21 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/w3c/dispatcher/constants/KeyCodeMapper.kt +169 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/w3c/dispatcher/constants/KeyLocationMapper.kt +50 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/w3c/dispatcher/constants/KeyNormalizer.kt +84 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/w3c/dispatcher/constants/NormalizedKeys.kt +60 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/w3c/models/ActionObject.kt +138 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/w3c/models/ActionSequence.kt +112 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/w3c/models/Actions.kt +89 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/w3c/models/InputSource.kt +173 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/w3c/models/Origin.kt +24 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/w3c/models/OriginDeserializer.kt +25 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/w3c/models/Tick.kt +62 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/w3c/processor/ActionsProcessor.kt +93 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/w3c/processor/KeyProcessor.kt +57 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/w3c/processor/PauseProcessor.kt +59 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/w3c/processor/PointerProcessor.kt +115 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/w3c/processor/ProcessorHelpers.kt +35 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/w3c/state/ActiveInputSources.kt +62 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/w3c/state/InputState.kt +6 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/w3c/state/InputStateTable.kt +95 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/w3c/state/KeyInputState.kt +82 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/helpers/w3c/state/PointerInputState.kt +45 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/http/RouteDefinition.kt +67 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/http/RouteMap.kt +51 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/http/Router.kt +250 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/http/Server.kt +109 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/http/response/AppiumResponse.kt +61 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/http/response/BaseResponse.kt +25 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/AlertParams.kt +21 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/AppiumParams.kt +55 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/BackdoorMethodArg.kt +3 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/ClipboardDataType.kt +18 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/DrawerActionParams.kt +21 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/EditorActionParams.kt +21 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/Element.kt +169 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/GetClipboardParams.kt +27 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/GlobalSession.kt +64 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/HamcrestMatcher.kt +144 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/IdlingResourcesParams.kt +66 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/KeyEventParams.kt +23 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/LocaleParams.kt +34 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/Location.kt +19 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/Locator.kt +22 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/MatcherJson.kt +37 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/MobileBackdoorMethod.kt +22 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/MobileBackdoorParams.kt +20 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/MobileClickActionParams.kt +81 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/MobileSwipeParams.kt +106 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/MotionEventParams.kt +37 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/MoveToParams.kt +26 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/MultiTouchActionsParams.kt +5 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/NavigateToParams.kt +21 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/OrientationParams.kt +21 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/OrientationType.kt +6 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/Rect.kt +24 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/RotationParams.kt +38 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/ScrollToPageParams.kt +36 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/SessionParams.kt +23 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/SetClipboardParams.kt +29 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/SetDateParams.kt +23 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/SetTimeParams.kt +22 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/SettingsParams.kt +19 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/Size.kt +22 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/SourceDocument.kt +286 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/StartActivityParams.kt +9 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/StartServiceParams.kt +22 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/StopServiceParams.kt +21 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/Strategy.kt +49 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/TextValueParams.kt +6 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/ToastLookupParams.kt +22 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/TouchAction.kt +178 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/TouchActionsParams.kt +5 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/UiautomatorParams.kt +123 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/ViewAttributesEnum.kt +51 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/ViewElement.kt +204 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/ViewFlashParams.kt +9 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/ViewText.kt +12 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/WindowRect.kt +24 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/WindowSize.kt +22 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/settings/AbstractSetting.kt +23 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/settings/DriverSetting.kt +40 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/settings/SettingType.kt +21 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/web/WebAtom.kt +26 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/web/WebAtomDeserializer.kt +99 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/web/WebAtomsMethods.kt +4 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/model/web/WebAtomsParams.kt +9 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/viewaction/OrientationChange.kt +47 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/viewaction/ScrollTo.kt +48 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/viewaction/UiControllerPerformer.kt +67 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/viewaction/UiControllerRunnable.kt +25 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/viewaction/ViewGetter.kt +79 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/viewaction/ViewTextGetter.kt +31 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/viewmatcher/RegexpTextMatcher.kt +38 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/viewmatcher/WithView.kt +33 -0
- package/espresso-server/app/src/androidTest/java/io/appium/espressoserver/lib/viewmatcher/WithXPath.kt +55 -0
- package/espresso-server/app/src/main/AndroidManifest.xml +7 -0
- package/espresso-server/app/src/test/java/io/appium/espressoserver/test/assets/Helpers.kt +20 -0
- package/espresso-server/app/src/test/java/io/appium/espressoserver/test/assets/backdoor-methods.json +51 -0
- package/espresso-server/app/src/test/java/io/appium/espressoserver/test/assets/key-actions.json +15 -0
- package/espresso-server/app/src/test/java/io/appium/espressoserver/test/assets/multi-touch-actions.json +28 -0
- package/espresso-server/app/src/test/java/io/appium/espressoserver/test/helpers/GsonParserHelpersTest.kt +41 -0
- package/espresso-server/app/src/test/java/io/appium/espressoserver/test/helpers/IntentCreationTests.kt +115 -0
- package/espresso-server/app/src/test/java/io/appium/espressoserver/test/helpers/InvocationOperationTest.java +97 -0
- package/espresso-server/app/src/test/java/io/appium/espressoserver/test/helpers/KReflectionUtilsTest.kt +108 -0
- package/espresso-server/app/src/test/java/io/appium/espressoserver/test/helpers/XpathQueryParserTests.kt +42 -0
- package/espresso-server/app/src/test/java/io/appium/espressoserver/test/helpers/w3c/ActionSequenceTest.kt +220 -0
- package/espresso-server/app/src/test/java/io/appium/espressoserver/test/helpers/w3c/ActionsTest.kt +76 -0
- package/espresso-server/app/src/test/java/io/appium/espressoserver/test/helpers/w3c/CapsUtilsTest.kt +76 -0
- package/espresso-server/app/src/test/java/io/appium/espressoserver/test/helpers/w3c/Helpers.kt +7 -0
- package/espresso-server/app/src/test/java/io/appium/espressoserver/test/helpers/w3c/InputSourceTest.kt +153 -0
- package/espresso-server/app/src/test/java/io/appium/espressoserver/test/helpers/w3c/InputStateTableTest.kt +72 -0
- package/espresso-server/app/src/test/java/io/appium/espressoserver/test/helpers/w3c/KeyDispatchTest.kt +133 -0
- package/espresso-server/app/src/test/java/io/appium/espressoserver/test/helpers/w3c/KeyInputStateTest.kt +74 -0
- package/espresso-server/app/src/test/java/io/appium/espressoserver/test/helpers/w3c/PointerDispatchTest.kt +370 -0
- package/espresso-server/app/src/test/java/io/appium/espressoserver/test/helpers/w3c/ProcessorTest.kt +320 -0
- package/espresso-server/app/src/test/java/io/appium/espressoserver/test/helpers/w3c/TickTest.kt +265 -0
- package/espresso-server/app/src/test/java/io/appium/espressoserver/test/helpers/w3c/adapter/AndroidKeyEventTest.kt +114 -0
- package/espresso-server/app/src/test/java/io/appium/espressoserver/test/helpers/w3c/adapter/HelpersTest.kt +31 -0
- package/espresso-server/app/src/test/java/io/appium/espressoserver/test/http/RouteDefinitionTest.kt +74 -0
- package/espresso-server/app/src/test/java/io/appium/espressoserver/test/model/HamcrestMatcherTest.kt +112 -0
- package/espresso-server/app/src/test/java/io/appium/espressoserver/test/model/MatcherJsonTest.kt +20 -0
- package/espresso-server/app/src/test/java/io/appium/espressoserver/test/model/MobileBackdoorMethodTest.java +110 -0
- package/espresso-server/app/src/test/java/io/appium/espressoserver/test/model/MobileClickTest.kt +46 -0
- package/espresso-server/app/src/test/java/io/appium/espressoserver/test/model/MobileSwipeTest.kt +68 -0
- package/espresso-server/app/src/test/java/io/appium/espressoserver/test/model/TouchActionTest.kt +56 -0
- package/espresso-server/app/src/test/java/io/appium/espressoserver/test/model/web/WebAtomTest.kt +68 -0
- package/espresso-server/app/src/test/java/io/appium/espressoserver/test/model/web/WebAtomsTest.kt +96 -0
- package/espresso-server/build.gradle.kts +33 -0
- package/espresso-server/gradle/wrapper/gradle-wrapper.jar +0 -0
- package/espresso-server/gradle/wrapper/gradle-wrapper.properties +5 -0
- package/espresso-server/gradle.properties +26 -0
- package/espresso-server/gradlew +185 -0
- package/espresso-server/gradlew.bat +89 -0
- package/espresso-server/lint.xml +4 -0
- package/espresso-server/settings.gradle.kts +1 -0
- package/index.js +29 -0
- package/lib/commands/execute.js +72 -0
- package/lib/commands/general.js +321 -0
- package/lib/commands/idling-resources.js +52 -0
- package/lib/commands/index.js +16 -0
- package/lib/commands/services.js +50 -0
- package/lib/desired-caps.js +55 -0
- package/lib/driver.js +566 -0
- package/lib/espresso-runner.js +340 -0
- package/lib/logger.js +6 -0
- package/lib/server-builder.js +194 -0
- package/lib/server.js +18 -0
- package/lib/utils.js +74 -0
- package/package.json +105 -0
package/build/index.js
ADDED
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.default = exports.startServer = exports.EspressoDriver = void 0;
|
|
9
|
+
|
|
10
|
+
require("source-map-support/register");
|
|
11
|
+
|
|
12
|
+
var _asyncbox = require("asyncbox");
|
|
13
|
+
|
|
14
|
+
var driver = _interopRequireWildcard(require("./lib/driver"));
|
|
15
|
+
|
|
16
|
+
var server = _interopRequireWildcard(require("./lib/server"));
|
|
17
|
+
|
|
18
|
+
const {
|
|
19
|
+
EspressoDriver
|
|
20
|
+
} = driver;
|
|
21
|
+
exports.EspressoDriver = EspressoDriver;
|
|
22
|
+
const {
|
|
23
|
+
startServer
|
|
24
|
+
} = server;
|
|
25
|
+
exports.startServer = startServer;
|
|
26
|
+
const DEFAULT_HOST = 'localhost';
|
|
27
|
+
const DEFAULT_PORT = 4884;
|
|
28
|
+
|
|
29
|
+
async function main() {
|
|
30
|
+
const getArgValue = argName => {
|
|
31
|
+
const argIndex = process.argv.indexOf(argName);
|
|
32
|
+
return argIndex > 0 ? process.argv[argIndex + 1] : null;
|
|
33
|
+
};
|
|
34
|
+
|
|
35
|
+
const port = parseInt(getArgValue('--port'), 10) || DEFAULT_PORT;
|
|
36
|
+
const host = getArgValue('--host') || DEFAULT_HOST;
|
|
37
|
+
return await startServer(port, host);
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
if (require.main === module) {
|
|
41
|
+
(0, _asyncbox.asyncify)(main);
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
var _default = EspressoDriver;
|
|
45
|
+
exports.default = _default;require('source-map-support').install();
|
|
46
|
+
|
|
47
|
+
|
|
48
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LmpzIl0sIm5hbWVzIjpbIkVzcHJlc3NvRHJpdmVyIiwiZHJpdmVyIiwic3RhcnRTZXJ2ZXIiLCJzZXJ2ZXIiLCJERUZBVUxUX0hPU1QiLCJERUZBVUxUX1BPUlQiLCJtYWluIiwiZ2V0QXJnVmFsdWUiLCJhcmdOYW1lIiwiYXJnSW5kZXgiLCJwcm9jZXNzIiwiYXJndiIsImluZGV4T2YiLCJwb3J0IiwicGFyc2VJbnQiLCJob3N0IiwicmVxdWlyZSIsIm1vZHVsZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFFQTs7QUFDQTs7QUFDQTs7QUFHQSxNQUFNO0FBQUVBLEVBQUFBO0FBQUYsSUFBcUJDLE1BQTNCOztBQUNBLE1BQU07QUFBRUMsRUFBQUE7QUFBRixJQUFrQkMsTUFBeEI7O0FBRUEsTUFBTUMsWUFBWSxHQUFHLFdBQXJCO0FBQ0EsTUFBTUMsWUFBWSxHQUFHLElBQXJCOztBQUVBLGVBQWVDLElBQWYsR0FBdUI7QUFDckIsUUFBTUMsV0FBVyxHQUFJQyxPQUFELElBQWE7QUFDL0IsVUFBTUMsUUFBUSxHQUFHQyxPQUFPLENBQUNDLElBQVIsQ0FBYUMsT0FBYixDQUFxQkosT0FBckIsQ0FBakI7QUFDQSxXQUFPQyxRQUFRLEdBQUcsQ0FBWCxHQUFlQyxPQUFPLENBQUNDLElBQVIsQ0FBYUYsUUFBUSxHQUFHLENBQXhCLENBQWYsR0FBNEMsSUFBbkQ7QUFDRCxHQUhEOztBQUlBLFFBQU1JLElBQUksR0FBR0MsUUFBUSxDQUFDUCxXQUFXLENBQUMsUUFBRCxDQUFaLEVBQXdCLEVBQXhCLENBQVIsSUFBdUNGLFlBQXBEO0FBQ0EsUUFBTVUsSUFBSSxHQUFHUixXQUFXLENBQUMsUUFBRCxDQUFYLElBQXlCSCxZQUF0QztBQUNBLFNBQU8sTUFBTUYsV0FBVyxDQUFDVyxJQUFELEVBQU9FLElBQVAsQ0FBeEI7QUFDRDs7QUFFRCxJQUFJQyxPQUFPLENBQUNWLElBQVIsS0FBaUJXLE1BQXJCLEVBQTZCO0FBQzNCLDBCQUFTWCxJQUFUO0FBQ0Q7O2VBR2NOLGMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyB0cmFuc3BpbGU6bWFpblxuXG5pbXBvcnQgeyBhc3luY2lmeSB9IGZyb20gJ2FzeW5jYm94JztcbmltcG9ydCAqIGFzIGRyaXZlciBmcm9tICcuL2xpYi9kcml2ZXInO1xuaW1wb3J0ICogYXMgc2VydmVyIGZyb20gJy4vbGliL3NlcnZlcic7XG5cblxuY29uc3QgeyBFc3ByZXNzb0RyaXZlciB9ID0gZHJpdmVyO1xuY29uc3QgeyBzdGFydFNlcnZlciB9ID0gc2VydmVyO1xuXG5jb25zdCBERUZBVUxUX0hPU1QgPSAnbG9jYWxob3N0JztcbmNvbnN0IERFRkFVTFRfUE9SVCA9IDQ4ODQ7XG5cbmFzeW5jIGZ1bmN0aW9uIG1haW4gKCkge1xuICBjb25zdCBnZXRBcmdWYWx1ZSA9IChhcmdOYW1lKSA9PiB7XG4gICAgY29uc3QgYXJnSW5kZXggPSBwcm9jZXNzLmFyZ3YuaW5kZXhPZihhcmdOYW1lKTtcbiAgICByZXR1cm4gYXJnSW5kZXggPiAwID8gcHJvY2Vzcy5hcmd2W2FyZ0luZGV4ICsgMV0gOiBudWxsO1xuICB9O1xuICBjb25zdCBwb3J0ID0gcGFyc2VJbnQoZ2V0QXJnVmFsdWUoJy0tcG9ydCcpLCAxMCkgfHwgREVGQVVMVF9QT1JUO1xuICBjb25zdCBob3N0ID0gZ2V0QXJnVmFsdWUoJy0taG9zdCcpIHx8IERFRkFVTFRfSE9TVDtcbiAgcmV0dXJuIGF3YWl0IHN0YXJ0U2VydmVyKHBvcnQsIGhvc3QpO1xufVxuXG5pZiAocmVxdWlyZS5tYWluID09PSBtb2R1bGUpIHtcbiAgYXN5bmNpZnkobWFpbik7XG59XG5cbmV4cG9ydCB7IEVzcHJlc3NvRHJpdmVyLCBzdGFydFNlcnZlciB9O1xuZXhwb3J0IGRlZmF1bHQgRXNwcmVzc29Ecml2ZXI7XG4iXSwiZmlsZSI6ImluZGV4LmpzIiwic291cmNlUm9vdCI6Ii4uIn0=
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.default = void 0;
|
|
9
|
+
|
|
10
|
+
require("source-map-support/register");
|
|
11
|
+
|
|
12
|
+
var _lodash = _interopRequireDefault(require("lodash"));
|
|
13
|
+
|
|
14
|
+
var _appiumBaseDriver = require("appium-base-driver");
|
|
15
|
+
|
|
16
|
+
let extensions = {};
|
|
17
|
+
|
|
18
|
+
extensions.executeMobile = async function executeMobile(mobileCommand, opts = {}) {
|
|
19
|
+
const mobileCommandsMapping = {
|
|
20
|
+
shell: 'mobileShell',
|
|
21
|
+
execEmuConsoleCommand: 'mobileExecEmuConsoleCommand',
|
|
22
|
+
performEditorAction: 'mobilePerformEditorAction',
|
|
23
|
+
changePermissions: 'mobileChangePermissions',
|
|
24
|
+
getPermissions: 'mobileGetPermissions',
|
|
25
|
+
startScreenStreaming: 'mobileStartScreenStreaming',
|
|
26
|
+
stopScreenStreaming: 'mobileStopScreenStreaming',
|
|
27
|
+
swipe: 'mobileSwipe',
|
|
28
|
+
scrollToPage: 'mobileScrollToPage',
|
|
29
|
+
navigateTo: 'mobileNavigateTo',
|
|
30
|
+
clickAction: 'mobileClickAction',
|
|
31
|
+
deviceInfo: 'mobileGetDeviceInfo',
|
|
32
|
+
isToastVisible: 'mobileIsToastVisible',
|
|
33
|
+
openDrawer: 'mobileOpenDrawer',
|
|
34
|
+
closeDrawer: 'mobileCloseDrawer',
|
|
35
|
+
setDate: 'mobileSetDate',
|
|
36
|
+
setTime: 'mobileSetTime',
|
|
37
|
+
getDeviceTime: 'mobileGetDeviceTime',
|
|
38
|
+
backdoor: 'mobileBackdoor',
|
|
39
|
+
flashElement: 'mobileFlashElement',
|
|
40
|
+
uiautomator: 'mobileUiautomator',
|
|
41
|
+
uiautomatorPageSource: 'mobileUiautomatorPageSource',
|
|
42
|
+
webAtoms: 'mobileWebAtoms',
|
|
43
|
+
getContexts: 'mobileGetContexts',
|
|
44
|
+
dismissAutofill: 'mobileDismissAutofill',
|
|
45
|
+
getNotifications: 'mobileGetNotifications',
|
|
46
|
+
listSms: 'mobileListSms',
|
|
47
|
+
sensorSet: 'sensorSet',
|
|
48
|
+
deleteFile: 'mobileDeleteFile',
|
|
49
|
+
startService: 'mobileStartService',
|
|
50
|
+
stopService: 'mobileStopService',
|
|
51
|
+
registerIdlingResources: 'mobileRegisterIdlingResources',
|
|
52
|
+
unregisterIdlingResources: 'mobileUnregisterIdlingResources',
|
|
53
|
+
listIdlingResources: 'mobileListIdlingResources'
|
|
54
|
+
};
|
|
55
|
+
|
|
56
|
+
if (!_lodash.default.has(mobileCommandsMapping, mobileCommand)) {
|
|
57
|
+
throw new _appiumBaseDriver.errors.UnknownCommandError(`Unknown mobile command "${mobileCommand}". ` + `Only ${_lodash.default.keys(mobileCommandsMapping)} commands are supported.`);
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
return await this[mobileCommandsMapping[mobileCommand]](opts);
|
|
61
|
+
};
|
|
62
|
+
|
|
63
|
+
var _default = extensions;
|
|
64
|
+
exports.default = _default;require('source-map-support').install();
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImxpYi9jb21tYW5kcy9leGVjdXRlLmpzIl0sIm5hbWVzIjpbImV4dGVuc2lvbnMiLCJleGVjdXRlTW9iaWxlIiwibW9iaWxlQ29tbWFuZCIsIm9wdHMiLCJtb2JpbGVDb21tYW5kc01hcHBpbmciLCJzaGVsbCIsImV4ZWNFbXVDb25zb2xlQ29tbWFuZCIsInBlcmZvcm1FZGl0b3JBY3Rpb24iLCJjaGFuZ2VQZXJtaXNzaW9ucyIsImdldFBlcm1pc3Npb25zIiwic3RhcnRTY3JlZW5TdHJlYW1pbmciLCJzdG9wU2NyZWVuU3RyZWFtaW5nIiwic3dpcGUiLCJzY3JvbGxUb1BhZ2UiLCJuYXZpZ2F0ZVRvIiwiY2xpY2tBY3Rpb24iLCJkZXZpY2VJbmZvIiwiaXNUb2FzdFZpc2libGUiLCJvcGVuRHJhd2VyIiwiY2xvc2VEcmF3ZXIiLCJzZXREYXRlIiwic2V0VGltZSIsImdldERldmljZVRpbWUiLCJiYWNrZG9vciIsImZsYXNoRWxlbWVudCIsInVpYXV0b21hdG9yIiwidWlhdXRvbWF0b3JQYWdlU291cmNlIiwid2ViQXRvbXMiLCJnZXRDb250ZXh0cyIsImRpc21pc3NBdXRvZmlsbCIsImdldE5vdGlmaWNhdGlvbnMiLCJsaXN0U21zIiwic2Vuc29yU2V0IiwiZGVsZXRlRmlsZSIsInN0YXJ0U2VydmljZSIsInN0b3BTZXJ2aWNlIiwicmVnaXN0ZXJJZGxpbmdSZXNvdXJjZXMiLCJ1bnJlZ2lzdGVySWRsaW5nUmVzb3VyY2VzIiwibGlzdElkbGluZ1Jlc291cmNlcyIsIl8iLCJoYXMiLCJlcnJvcnMiLCJVbmtub3duQ29tbWFuZEVycm9yIiwia2V5cyJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFFQSxJQUFJQSxVQUFVLEdBQUcsRUFBakI7O0FBRUFBLFVBQVUsQ0FBQ0MsYUFBWCxHQUEyQixlQUFlQSxhQUFmLENBQThCQyxhQUE5QixFQUE2Q0MsSUFBSSxHQUFHLEVBQXBELEVBQXdEO0FBQ2pGLFFBQU1DLHFCQUFxQixHQUFHO0FBQzVCQyxJQUFBQSxLQUFLLEVBQUUsYUFEcUI7QUFHNUJDLElBQUFBLHFCQUFxQixFQUFFLDZCQUhLO0FBSzVCQyxJQUFBQSxtQkFBbUIsRUFBRSwyQkFMTztBQU81QkMsSUFBQUEsaUJBQWlCLEVBQUUseUJBUFM7QUFRNUJDLElBQUFBLGNBQWMsRUFBRSxzQkFSWTtBQVU1QkMsSUFBQUEsb0JBQW9CLEVBQUUsNEJBVk07QUFXNUJDLElBQUFBLG1CQUFtQixFQUFFLDJCQVhPO0FBYTVCQyxJQUFBQSxLQUFLLEVBQUUsYUFicUI7QUFjNUJDLElBQUFBLFlBQVksRUFBRSxvQkFkYztBQWU1QkMsSUFBQUEsVUFBVSxFQUFFLGtCQWZnQjtBQWdCNUJDLElBQUFBLFdBQVcsRUFBRSxtQkFoQmU7QUFrQjVCQyxJQUFBQSxVQUFVLEVBQUUscUJBbEJnQjtBQW9CNUJDLElBQUFBLGNBQWMsRUFBRSxzQkFwQlk7QUFzQjVCQyxJQUFBQSxVQUFVLEVBQUUsa0JBdEJnQjtBQXVCNUJDLElBQUFBLFdBQVcsRUFBRSxtQkF2QmU7QUF5QjVCQyxJQUFBQSxPQUFPLEVBQUUsZUF6Qm1CO0FBMEI1QkMsSUFBQUEsT0FBTyxFQUFFLGVBMUJtQjtBQTRCNUJDLElBQUFBLGFBQWEsRUFBRSxxQkE1QmE7QUE4QjVCQyxJQUFBQSxRQUFRLEVBQUUsZ0JBOUJrQjtBQWdDNUJDLElBQUFBLFlBQVksRUFBRSxvQkFoQ2M7QUFrQzVCQyxJQUFBQSxXQUFXLEVBQUUsbUJBbENlO0FBbUM1QkMsSUFBQUEscUJBQXFCLEVBQUUsNkJBbkNLO0FBcUM1QkMsSUFBQUEsUUFBUSxFQUFFLGdCQXJDa0I7QUFzQzVCQyxJQUFBQSxXQUFXLEVBQUUsbUJBdENlO0FBd0M1QkMsSUFBQUEsZUFBZSxFQUFFLHVCQXhDVztBQTBDNUJDLElBQUFBLGdCQUFnQixFQUFFLHdCQTFDVTtBQTRDNUJDLElBQUFBLE9BQU8sRUFBRSxlQTVDbUI7QUE4QzVCQyxJQUFBQSxTQUFTLEVBQUUsV0E5Q2lCO0FBZ0Q1QkMsSUFBQUEsVUFBVSxFQUFFLGtCQWhEZ0I7QUFrRDVCQyxJQUFBQSxZQUFZLEVBQUUsb0JBbERjO0FBbUQ1QkMsSUFBQUEsV0FBVyxFQUFFLG1CQW5EZTtBQXFENUJDLElBQUFBLHVCQUF1QixFQUFFLCtCQXJERztBQXNENUJDLElBQUFBLHlCQUF5QixFQUFFLGlDQXREQztBQXVENUJDLElBQUFBLG1CQUFtQixFQUFFO0FBdkRPLEdBQTlCOztBQTBEQSxNQUFJLENBQUNDLGdCQUFFQyxHQUFGLENBQU1wQyxxQkFBTixFQUE2QkYsYUFBN0IsQ0FBTCxFQUFrRDtBQUNoRCxVQUFNLElBQUl1Qyx5QkFBT0MsbUJBQVgsQ0FBZ0MsMkJBQTBCeEMsYUFBYyxLQUF6QyxHQUNsQyxRQUFPcUMsZ0JBQUVJLElBQUYsQ0FBT3ZDLHFCQUFQLENBQThCLDBCQURsQyxDQUFOO0FBRUQ7O0FBQ0QsU0FBTyxNQUFNLEtBQUtBLHFCQUFxQixDQUFDRixhQUFELENBQTFCLEVBQTJDQyxJQUEzQyxDQUFiO0FBQ0QsQ0FoRUQ7O2VBa0VlSCxVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IF8gZnJvbSAnbG9kYXNoJztcbmltcG9ydCB7IGVycm9ycyB9IGZyb20gJ2FwcGl1bS1iYXNlLWRyaXZlcic7XG5cbmxldCBleHRlbnNpb25zID0ge307XG5cbmV4dGVuc2lvbnMuZXhlY3V0ZU1vYmlsZSA9IGFzeW5jIGZ1bmN0aW9uIGV4ZWN1dGVNb2JpbGUgKG1vYmlsZUNvbW1hbmQsIG9wdHMgPSB7fSkge1xuICBjb25zdCBtb2JpbGVDb21tYW5kc01hcHBpbmcgPSB7XG4gICAgc2hlbGw6ICdtb2JpbGVTaGVsbCcsXG5cbiAgICBleGVjRW11Q29uc29sZUNvbW1hbmQ6ICdtb2JpbGVFeGVjRW11Q29uc29sZUNvbW1hbmQnLFxuXG4gICAgcGVyZm9ybUVkaXRvckFjdGlvbjogJ21vYmlsZVBlcmZvcm1FZGl0b3JBY3Rpb24nLFxuXG4gICAgY2hhbmdlUGVybWlzc2lvbnM6ICdtb2JpbGVDaGFuZ2VQZXJtaXNzaW9ucycsXG4gICAgZ2V0UGVybWlzc2lvbnM6ICdtb2JpbGVHZXRQZXJtaXNzaW9ucycsXG5cbiAgICBzdGFydFNjcmVlblN0cmVhbWluZzogJ21vYmlsZVN0YXJ0U2NyZWVuU3RyZWFtaW5nJyxcbiAgICBzdG9wU2NyZWVuU3RyZWFtaW5nOiAnbW9iaWxlU3RvcFNjcmVlblN0cmVhbWluZycsXG5cbiAgICBzd2lwZTogJ21vYmlsZVN3aXBlJyxcbiAgICBzY3JvbGxUb1BhZ2U6ICdtb2JpbGVTY3JvbGxUb1BhZ2UnLFxuICAgIG5hdmlnYXRlVG86ICdtb2JpbGVOYXZpZ2F0ZVRvJyxcbiAgICBjbGlja0FjdGlvbjogJ21vYmlsZUNsaWNrQWN0aW9uJyxcblxuICAgIGRldmljZUluZm86ICdtb2JpbGVHZXREZXZpY2VJbmZvJyxcblxuICAgIGlzVG9hc3RWaXNpYmxlOiAnbW9iaWxlSXNUb2FzdFZpc2libGUnLFxuXG4gICAgb3BlbkRyYXdlcjogJ21vYmlsZU9wZW5EcmF3ZXInLFxuICAgIGNsb3NlRHJhd2VyOiAnbW9iaWxlQ2xvc2VEcmF3ZXInLFxuXG4gICAgc2V0RGF0ZTogJ21vYmlsZVNldERhdGUnLFxuICAgIHNldFRpbWU6ICdtb2JpbGVTZXRUaW1lJyxcblxuICAgIGdldERldmljZVRpbWU6ICdtb2JpbGVHZXREZXZpY2VUaW1lJyxcblxuICAgIGJhY2tkb29yOiAnbW9iaWxlQmFja2Rvb3InLFxuXG4gICAgZmxhc2hFbGVtZW50OiAnbW9iaWxlRmxhc2hFbGVtZW50JyxcblxuICAgIHVpYXV0b21hdG9yOiAnbW9iaWxlVWlhdXRvbWF0b3InLFxuICAgIHVpYXV0b21hdG9yUGFnZVNvdXJjZTogJ21vYmlsZVVpYXV0b21hdG9yUGFnZVNvdXJjZScsXG5cbiAgICB3ZWJBdG9tczogJ21vYmlsZVdlYkF0b21zJyxcbiAgICBnZXRDb250ZXh0czogJ21vYmlsZUdldENvbnRleHRzJyxcblxuICAgIGRpc21pc3NBdXRvZmlsbDogJ21vYmlsZURpc21pc3NBdXRvZmlsbCcsXG5cbiAgICBnZXROb3RpZmljYXRpb25zOiAnbW9iaWxlR2V0Tm90aWZpY2F0aW9ucycsXG5cbiAgICBsaXN0U21zOiAnbW9iaWxlTGlzdFNtcycsXG5cbiAgICBzZW5zb3JTZXQ6ICdzZW5zb3JTZXQnLFxuXG4gICAgZGVsZXRlRmlsZTogJ21vYmlsZURlbGV0ZUZpbGUnLFxuXG4gICAgc3RhcnRTZXJ2aWNlOiAnbW9iaWxlU3RhcnRTZXJ2aWNlJyxcbiAgICBzdG9wU2VydmljZTogJ21vYmlsZVN0b3BTZXJ2aWNlJyxcblxuICAgIHJlZ2lzdGVySWRsaW5nUmVzb3VyY2VzOiAnbW9iaWxlUmVnaXN0ZXJJZGxpbmdSZXNvdXJjZXMnLFxuICAgIHVucmVnaXN0ZXJJZGxpbmdSZXNvdXJjZXM6ICdtb2JpbGVVbnJlZ2lzdGVySWRsaW5nUmVzb3VyY2VzJyxcbiAgICBsaXN0SWRsaW5nUmVzb3VyY2VzOiAnbW9iaWxlTGlzdElkbGluZ1Jlc291cmNlcycsXG4gIH07XG5cbiAgaWYgKCFfLmhhcyhtb2JpbGVDb21tYW5kc01hcHBpbmcsIG1vYmlsZUNvbW1hbmQpKSB7XG4gICAgdGhyb3cgbmV3IGVycm9ycy5Vbmtub3duQ29tbWFuZEVycm9yKGBVbmtub3duIG1vYmlsZSBjb21tYW5kIFwiJHttb2JpbGVDb21tYW5kfVwiLiBgICtcbiAgICAgIGBPbmx5ICR7Xy5rZXlzKG1vYmlsZUNvbW1hbmRzTWFwcGluZyl9IGNvbW1hbmRzIGFyZSBzdXBwb3J0ZWQuYCk7XG4gIH1cbiAgcmV0dXJuIGF3YWl0IHRoaXNbbW9iaWxlQ29tbWFuZHNNYXBwaW5nW21vYmlsZUNvbW1hbmRdXShvcHRzKTtcbn07XG5cbmV4cG9ydCBkZWZhdWx0IGV4dGVuc2lvbnM7XG4iXSwiZmlsZSI6ImxpYi9jb21tYW5kcy9leGVjdXRlLmpzIiwic291cmNlUm9vdCI6Ii4uLy4uLy4uIn0=
|
|
@@ -0,0 +1,337 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.default = exports.helpers = exports.commands = void 0;
|
|
9
|
+
|
|
10
|
+
require("source-map-support/register");
|
|
11
|
+
|
|
12
|
+
var _lodash = _interopRequireDefault(require("lodash"));
|
|
13
|
+
|
|
14
|
+
var _appiumSupport = require("appium-support");
|
|
15
|
+
|
|
16
|
+
var _logger = _interopRequireDefault(require("../logger"));
|
|
17
|
+
|
|
18
|
+
var _validate = _interopRequireDefault(require("validate.js"));
|
|
19
|
+
|
|
20
|
+
var _appiumBaseDriver = require("appium-base-driver");
|
|
21
|
+
|
|
22
|
+
var _utils = require("../utils");
|
|
23
|
+
|
|
24
|
+
let commands = {},
|
|
25
|
+
helpers = {},
|
|
26
|
+
extensions = {};
|
|
27
|
+
exports.helpers = helpers;
|
|
28
|
+
exports.commands = commands;
|
|
29
|
+
|
|
30
|
+
function assertRequiredOptions(options, requiredOptionNames) {
|
|
31
|
+
if (!_lodash.default.isArray(requiredOptionNames)) {
|
|
32
|
+
requiredOptionNames = [requiredOptionNames];
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
const presentOptionNames = _lodash.default.keys(options);
|
|
36
|
+
|
|
37
|
+
const missingOptionNames = _lodash.default.difference(requiredOptionNames, presentOptionNames);
|
|
38
|
+
|
|
39
|
+
if (_lodash.default.isEmpty(missingOptionNames)) {
|
|
40
|
+
return options;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
throw new Error(`The following options are required: ${JSON.stringify(missingOptionNames)}. ` + `You have only provided: ${JSON.stringify(presentOptionNames)}`);
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
commands.launchApp = async function launchApp() {
|
|
47
|
+
throw new _appiumBaseDriver.errors.UnsupportedOperationError('Please create a new session in order to launch the application under test');
|
|
48
|
+
};
|
|
49
|
+
|
|
50
|
+
commands.closeApp = async function closeApp() {
|
|
51
|
+
throw new _appiumBaseDriver.errors.UnsupportedOperationError('Please quit the session in order to close the application under test');
|
|
52
|
+
};
|
|
53
|
+
|
|
54
|
+
commands.reset = async function reset() {
|
|
55
|
+
throw new _appiumBaseDriver.errors.UnsupportedOperationError('Please quit the session and create a new one ' + 'in order to close and launch the application under test');
|
|
56
|
+
};
|
|
57
|
+
|
|
58
|
+
commands.getClipboard = async function getClipboard() {
|
|
59
|
+
return (await this.adb.getApiLevel()) < 29 ? await this.espresso.jwproxy.command('/appium/device/get_clipboard', 'POST', {}) : await this.adb.getClipboard();
|
|
60
|
+
};
|
|
61
|
+
|
|
62
|
+
commands.mobilePerformEditorAction = async function mobilePerformEditorAction(opts = {}) {
|
|
63
|
+
const {
|
|
64
|
+
action
|
|
65
|
+
} = assertRequiredOptions(opts, ['action']);
|
|
66
|
+
return await this.espresso.jwproxy.command('/appium/device/perform_editor_action', 'POST', {
|
|
67
|
+
action
|
|
68
|
+
});
|
|
69
|
+
};
|
|
70
|
+
|
|
71
|
+
commands.mobileSwipe = async function mobileSwipe(opts = {}) {
|
|
72
|
+
const {
|
|
73
|
+
direction,
|
|
74
|
+
element,
|
|
75
|
+
swiper,
|
|
76
|
+
startCoordinates,
|
|
77
|
+
endCoordinates,
|
|
78
|
+
precisionDescriber
|
|
79
|
+
} = assertRequiredOptions(opts, ['element']);
|
|
80
|
+
return await this.espresso.jwproxy.command(`/appium/execute_mobile/${_appiumSupport.util.unwrapElement(element)}/swipe`, 'POST', {
|
|
81
|
+
direction,
|
|
82
|
+
element,
|
|
83
|
+
swiper,
|
|
84
|
+
startCoordinates,
|
|
85
|
+
endCoordinates,
|
|
86
|
+
precisionDescriber
|
|
87
|
+
});
|
|
88
|
+
};
|
|
89
|
+
|
|
90
|
+
commands.mobileGetDeviceInfo = async function mobileGetDeviceInfo() {
|
|
91
|
+
return await this.espresso.jwproxy.command('/appium/device/info', 'GET');
|
|
92
|
+
};
|
|
93
|
+
|
|
94
|
+
commands.mobileIsToastVisible = async function mobileIsToastVisible(opts = {}) {
|
|
95
|
+
const {
|
|
96
|
+
text,
|
|
97
|
+
isRegexp
|
|
98
|
+
} = opts;
|
|
99
|
+
|
|
100
|
+
if (!_appiumSupport.util.hasValue(text)) {
|
|
101
|
+
_logger.default.errorAndThrow(`'text' argument is mandatory`);
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
return await this.espresso.jwproxy.command('/appium/execute_mobile/is_toast_displayed', 'POST', {
|
|
105
|
+
text,
|
|
106
|
+
isRegexp
|
|
107
|
+
});
|
|
108
|
+
};
|
|
109
|
+
|
|
110
|
+
commands.mobileOpenDrawer = async function mobileOpenDrawer(opts = {}) {
|
|
111
|
+
const {
|
|
112
|
+
element,
|
|
113
|
+
gravity
|
|
114
|
+
} = assertRequiredOptions(opts, ['element']);
|
|
115
|
+
return await this.espresso.jwproxy.command(`/appium/execute_mobile/${_appiumSupport.util.unwrapElement(element)}/open_drawer`, 'POST', {
|
|
116
|
+
gravity
|
|
117
|
+
});
|
|
118
|
+
};
|
|
119
|
+
|
|
120
|
+
commands.mobileCloseDrawer = async function mobileCloseDrawer(opts = {}) {
|
|
121
|
+
const {
|
|
122
|
+
element,
|
|
123
|
+
gravity
|
|
124
|
+
} = assertRequiredOptions(opts, ['element']);
|
|
125
|
+
return await this.espresso.jwproxy.command(`/appium/execute_mobile/${_appiumSupport.util.unwrapElement(element)}/close_drawer`, 'POST', {
|
|
126
|
+
gravity
|
|
127
|
+
});
|
|
128
|
+
};
|
|
129
|
+
|
|
130
|
+
commands.mobileSetDate = async function mobileSetDate(opts = {}) {
|
|
131
|
+
const {
|
|
132
|
+
element,
|
|
133
|
+
year,
|
|
134
|
+
monthOfYear,
|
|
135
|
+
dayOfMonth
|
|
136
|
+
} = assertRequiredOptions(opts, ['element', 'year', 'monthOfYear', 'dayOfMonth']);
|
|
137
|
+
return await this.espresso.jwproxy.command(`/appium/execute_mobile/${_appiumSupport.util.unwrapElement(element)}/set_date`, 'POST', {
|
|
138
|
+
year,
|
|
139
|
+
monthOfYear,
|
|
140
|
+
dayOfMonth
|
|
141
|
+
});
|
|
142
|
+
};
|
|
143
|
+
|
|
144
|
+
commands.mobileSetTime = async function mobileSetTime(opts = {}) {
|
|
145
|
+
const {
|
|
146
|
+
element,
|
|
147
|
+
hours,
|
|
148
|
+
minutes
|
|
149
|
+
} = assertRequiredOptions(opts, ['element', 'hours', 'minutes']);
|
|
150
|
+
return await this.espresso.jwproxy.command(`/appium/execute_mobile/${_appiumSupport.util.unwrapElement(element)}/set_time`, 'POST', {
|
|
151
|
+
hours,
|
|
152
|
+
minutes
|
|
153
|
+
});
|
|
154
|
+
};
|
|
155
|
+
|
|
156
|
+
commands.mobileNavigateTo = async function mobileNavigateTo(opts = {}) {
|
|
157
|
+
let {
|
|
158
|
+
element,
|
|
159
|
+
menuItemId
|
|
160
|
+
} = assertRequiredOptions(opts, ['menuItemId', 'element']);
|
|
161
|
+
let menuItemIdAsNumber = parseInt(menuItemId, 10);
|
|
162
|
+
|
|
163
|
+
if (_lodash.default.isNaN(menuItemIdAsNumber) || menuItemIdAsNumber < 0) {
|
|
164
|
+
_logger.default.errorAndThrow(`'menuItemId' must be a non-negative number. Found ${menuItemId}`);
|
|
165
|
+
|
|
166
|
+
menuItemId = menuItemIdAsNumber;
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
return await this.espresso.jwproxy.command(`/appium/execute_mobile/${_appiumSupport.util.unwrapElement(element)}/navigate_to`, 'POST', {
|
|
170
|
+
menuItemId
|
|
171
|
+
});
|
|
172
|
+
};
|
|
173
|
+
|
|
174
|
+
commands.mobileWebAtoms = async function mobileWebAtoms(opts = {}) {
|
|
175
|
+
opts = assertRequiredOptions(opts, ['methodChain']);
|
|
176
|
+
return await this.espresso.jwproxy.command(`/appium/execute_mobile/web_atoms`, 'POST', opts);
|
|
177
|
+
};
|
|
178
|
+
|
|
179
|
+
commands.mobileScrollToPage = async function mobileScrollToPage(opts = {}) {
|
|
180
|
+
const scrollToTypes = ['first', 'last', 'left', 'right'];
|
|
181
|
+
const res = (0, _validate.default)(opts, {
|
|
182
|
+
element: {
|
|
183
|
+
presence: true
|
|
184
|
+
},
|
|
185
|
+
scrollTo: {
|
|
186
|
+
inclusion: {
|
|
187
|
+
within: scrollToTypes,
|
|
188
|
+
message: `"scrollTo" must be one of "${scrollToTypes.join(', ')}" found '%{value}'`
|
|
189
|
+
}
|
|
190
|
+
},
|
|
191
|
+
scrollToPage: {
|
|
192
|
+
numericality: {
|
|
193
|
+
onlyInteger: true,
|
|
194
|
+
greaterThanOrEqualTo: 0,
|
|
195
|
+
message: `"scrollToPage" must be a non-negative integer. Found '%{value}'`
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
});
|
|
199
|
+
|
|
200
|
+
if (_appiumSupport.util.hasValue(res)) {
|
|
201
|
+
_logger.default.errorAndThrow(`Invalid scrollTo parameters: ${JSON.stringify(res)}`);
|
|
202
|
+
}
|
|
203
|
+
|
|
204
|
+
const {
|
|
205
|
+
element,
|
|
206
|
+
scrollTo,
|
|
207
|
+
scrollToPage,
|
|
208
|
+
smoothScroll
|
|
209
|
+
} = opts;
|
|
210
|
+
|
|
211
|
+
if (_appiumSupport.util.hasValue(scrollTo) && _appiumSupport.util.hasValue(scrollToPage)) {
|
|
212
|
+
_logger.default.warn(`'scrollTo' and 'scrollToPage' where both provided. Defaulting to 'scrollTo'`);
|
|
213
|
+
}
|
|
214
|
+
|
|
215
|
+
return await this.espresso.jwproxy.command(`/appium/execute_mobile/${_appiumSupport.util.unwrapElement(element)}/scroll_to_page`, 'POST', {
|
|
216
|
+
scrollTo,
|
|
217
|
+
scrollToPage,
|
|
218
|
+
smoothScroll
|
|
219
|
+
});
|
|
220
|
+
};
|
|
221
|
+
|
|
222
|
+
commands.mobileBackdoor = async function mobileBackdoor(opts = {}) {
|
|
223
|
+
assertRequiredOptions(opts, ['target', 'methods']);
|
|
224
|
+
const {
|
|
225
|
+
target,
|
|
226
|
+
methods
|
|
227
|
+
} = opts;
|
|
228
|
+
|
|
229
|
+
if (target === 'element') {
|
|
230
|
+
assertRequiredOptions(opts, ['elementId']);
|
|
231
|
+
}
|
|
232
|
+
|
|
233
|
+
const {
|
|
234
|
+
elementId: targetElement
|
|
235
|
+
} = opts;
|
|
236
|
+
return await this.espresso.jwproxy.command(`/appium/execute_mobile/backdoor`, 'POST', {
|
|
237
|
+
target,
|
|
238
|
+
methods,
|
|
239
|
+
targetElement
|
|
240
|
+
});
|
|
241
|
+
};
|
|
242
|
+
|
|
243
|
+
commands.mobileUiautomator = async function mobileUiautomator(opts = {}) {
|
|
244
|
+
const {
|
|
245
|
+
strategy,
|
|
246
|
+
locator,
|
|
247
|
+
action,
|
|
248
|
+
index
|
|
249
|
+
} = assertRequiredOptions(opts, ['strategy', 'locator', 'action']);
|
|
250
|
+
return await this.espresso.jwproxy.command(`/appium/execute_mobile/uiautomator`, 'POST', {
|
|
251
|
+
strategy,
|
|
252
|
+
locator,
|
|
253
|
+
index,
|
|
254
|
+
action
|
|
255
|
+
});
|
|
256
|
+
};
|
|
257
|
+
|
|
258
|
+
commands.mobileUiautomatorPageSource = async function mobileUiautomatorPageSource() {
|
|
259
|
+
return await this.espresso.jwproxy.command(`/appium/execute_mobile/uiautomator_page_source`, 'GET');
|
|
260
|
+
};
|
|
261
|
+
|
|
262
|
+
commands.mobileFlashElement = async function mobileFlashElement(opts = {}) {
|
|
263
|
+
const {
|
|
264
|
+
element
|
|
265
|
+
} = assertRequiredOptions(opts, ['element']);
|
|
266
|
+
const {
|
|
267
|
+
durationMillis,
|
|
268
|
+
repeatCount
|
|
269
|
+
} = opts;
|
|
270
|
+
return await this.espresso.jwproxy.command(`/appium/execute_mobile/${_appiumSupport.util.unwrapElement(element)}/flash`, 'POST', {
|
|
271
|
+
durationMillis,
|
|
272
|
+
repeatCount
|
|
273
|
+
});
|
|
274
|
+
};
|
|
275
|
+
|
|
276
|
+
commands.mobileClickAction = async function mobileClickAction(opts = {}) {
|
|
277
|
+
const {
|
|
278
|
+
element,
|
|
279
|
+
tapper,
|
|
280
|
+
coordinatesProvider,
|
|
281
|
+
precisionDescriber,
|
|
282
|
+
inputDevice,
|
|
283
|
+
buttonState
|
|
284
|
+
} = assertRequiredOptions(opts, ['element']);
|
|
285
|
+
return await this.espresso.jwproxy.command(`/appium/execute_mobile/${_appiumSupport.util.unwrapElement(element)}/click_action`, 'POST', {
|
|
286
|
+
tapper,
|
|
287
|
+
coordinatesProvider,
|
|
288
|
+
precisionDescriber,
|
|
289
|
+
inputDevice,
|
|
290
|
+
buttonState
|
|
291
|
+
});
|
|
292
|
+
};
|
|
293
|
+
|
|
294
|
+
commands.updateSettings = async function updateSettings(settings) {
|
|
295
|
+
return await this.espresso.jwproxy.command(`/appium/settings`, 'POST', {
|
|
296
|
+
settings
|
|
297
|
+
});
|
|
298
|
+
};
|
|
299
|
+
|
|
300
|
+
commands.getSettings = async function getSettings() {
|
|
301
|
+
return await this.espresso.jwproxy.command(`/appium/settings`, 'GET');
|
|
302
|
+
};
|
|
303
|
+
|
|
304
|
+
helpers.suspendChromedriverProxy = function suspendChromedriverProxy() {
|
|
305
|
+
this.chromedriver = null;
|
|
306
|
+
this.proxyReqRes = this.espresso.proxyReqRes.bind(this.espresso);
|
|
307
|
+
this.jwpProxyActive = true;
|
|
308
|
+
};
|
|
309
|
+
|
|
310
|
+
commands.startActivity = async function startActivity(appPackage, appActivity, appWaitPackage, appWaitActivity) {
|
|
311
|
+
appPackage = appPackage || this.caps.appPackage;
|
|
312
|
+
appWaitPackage = appWaitPackage || appPackage;
|
|
313
|
+
appActivity = (0, _utils.qualifyActivityName)(appActivity, appPackage);
|
|
314
|
+
appWaitActivity = (0, _utils.qualifyActivityName)(appWaitActivity || appActivity, appWaitPackage);
|
|
315
|
+
|
|
316
|
+
_logger.default.debug(`Starting activity '${appActivity}' for package '${appPackage}'`);
|
|
317
|
+
|
|
318
|
+
await this.espresso.jwproxy.command(`/appium/device/start_activity`, 'POST', {
|
|
319
|
+
appPackage,
|
|
320
|
+
appActivity
|
|
321
|
+
});
|
|
322
|
+
await this.adb.waitForActivity(appWaitPackage, appWaitActivity);
|
|
323
|
+
};
|
|
324
|
+
|
|
325
|
+
commands.mobileDismissAutofill = async function mobileDismissAutofill(opts = {}) {
|
|
326
|
+
const {
|
|
327
|
+
element
|
|
328
|
+
} = assertRequiredOptions(opts, ['element']);
|
|
329
|
+
await this.espresso.jwproxy.command(`/session/:sessionId/appium/execute_mobile/${_appiumSupport.util.unwrapElement(element)}/dismiss_autofill`, 'POST', {});
|
|
330
|
+
};
|
|
331
|
+
|
|
332
|
+
Object.assign(extensions, commands, helpers);
|
|
333
|
+
var _default = extensions;
|
|
334
|
+
exports.default = _default;require('source-map-support').install();
|
|
335
|
+
|
|
336
|
+
|
|
337
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImxpYi9jb21tYW5kcy9nZW5lcmFsLmpzIl0sIm5hbWVzIjpbImNvbW1hbmRzIiwiaGVscGVycyIsImV4dGVuc2lvbnMiLCJhc3NlcnRSZXF1aXJlZE9wdGlvbnMiLCJvcHRpb25zIiwicmVxdWlyZWRPcHRpb25OYW1lcyIsIl8iLCJpc0FycmF5IiwicHJlc2VudE9wdGlvbk5hbWVzIiwia2V5cyIsIm1pc3NpbmdPcHRpb25OYW1lcyIsImRpZmZlcmVuY2UiLCJpc0VtcHR5IiwiRXJyb3IiLCJKU09OIiwic3RyaW5naWZ5IiwibGF1bmNoQXBwIiwiZXJyb3JzIiwiVW5zdXBwb3J0ZWRPcGVyYXRpb25FcnJvciIsImNsb3NlQXBwIiwicmVzZXQiLCJnZXRDbGlwYm9hcmQiLCJhZGIiLCJnZXRBcGlMZXZlbCIsImVzcHJlc3NvIiwiandwcm94eSIsImNvbW1hbmQiLCJtb2JpbGVQZXJmb3JtRWRpdG9yQWN0aW9uIiwib3B0cyIsImFjdGlvbiIsIm1vYmlsZVN3aXBlIiwiZGlyZWN0aW9uIiwiZWxlbWVudCIsInN3aXBlciIsInN0YXJ0Q29vcmRpbmF0ZXMiLCJlbmRDb29yZGluYXRlcyIsInByZWNpc2lvbkRlc2NyaWJlciIsInV0aWwiLCJ1bndyYXBFbGVtZW50IiwibW9iaWxlR2V0RGV2aWNlSW5mbyIsIm1vYmlsZUlzVG9hc3RWaXNpYmxlIiwidGV4dCIsImlzUmVnZXhwIiwiaGFzVmFsdWUiLCJsb2dnZXIiLCJlcnJvckFuZFRocm93IiwibW9iaWxlT3BlbkRyYXdlciIsImdyYXZpdHkiLCJtb2JpbGVDbG9zZURyYXdlciIsIm1vYmlsZVNldERhdGUiLCJ5ZWFyIiwibW9udGhPZlllYXIiLCJkYXlPZk1vbnRoIiwibW9iaWxlU2V0VGltZSIsImhvdXJzIiwibWludXRlcyIsIm1vYmlsZU5hdmlnYXRlVG8iLCJtZW51SXRlbUlkIiwibWVudUl0ZW1JZEFzTnVtYmVyIiwicGFyc2VJbnQiLCJpc05hTiIsIm1vYmlsZVdlYkF0b21zIiwibW9iaWxlU2Nyb2xsVG9QYWdlIiwic2Nyb2xsVG9UeXBlcyIsInJlcyIsInByZXNlbmNlIiwic2Nyb2xsVG8iLCJpbmNsdXNpb24iLCJ3aXRoaW4iLCJtZXNzYWdlIiwiam9pbiIsInNjcm9sbFRvUGFnZSIsIm51bWVyaWNhbGl0eSIsIm9ubHlJbnRlZ2VyIiwiZ3JlYXRlclRoYW5PckVxdWFsVG8iLCJzbW9vdGhTY3JvbGwiLCJ3YXJuIiwibW9iaWxlQmFja2Rvb3IiLCJ0YXJnZXQiLCJtZXRob2RzIiwiZWxlbWVudElkIiwidGFyZ2V0RWxlbWVudCIsIm1vYmlsZVVpYXV0b21hdG9yIiwic3RyYXRlZ3kiLCJsb2NhdG9yIiwiaW5kZXgiLCJtb2JpbGVVaWF1dG9tYXRvclBhZ2VTb3VyY2UiLCJtb2JpbGVGbGFzaEVsZW1lbnQiLCJkdXJhdGlvbk1pbGxpcyIsInJlcGVhdENvdW50IiwibW9iaWxlQ2xpY2tBY3Rpb24iLCJ0YXBwZXIiLCJjb29yZGluYXRlc1Byb3ZpZGVyIiwiaW5wdXREZXZpY2UiLCJidXR0b25TdGF0ZSIsInVwZGF0ZVNldHRpbmdzIiwic2V0dGluZ3MiLCJnZXRTZXR0aW5ncyIsInN1c3BlbmRDaHJvbWVkcml2ZXJQcm94eSIsImNocm9tZWRyaXZlciIsInByb3h5UmVxUmVzIiwiYmluZCIsImp3cFByb3h5QWN0aXZlIiwic3RhcnRBY3Rpdml0eSIsImFwcFBhY2thZ2UiLCJhcHBBY3Rpdml0eSIsImFwcFdhaXRQYWNrYWdlIiwiYXBwV2FpdEFjdGl2aXR5IiwiY2FwcyIsImRlYnVnIiwid2FpdEZvckFjdGl2aXR5IiwibW9iaWxlRGlzbWlzc0F1dG9maWxsIiwiT2JqZWN0IiwiYXNzaWduIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUVBLElBQUlBLFFBQVEsR0FBRyxFQUFmO0FBQUEsSUFBbUJDLE9BQU8sR0FBRyxFQUE3QjtBQUFBLElBQWlDQyxVQUFVLEdBQUcsRUFBOUM7Ozs7QUFFQSxTQUFTQyxxQkFBVCxDQUFnQ0MsT0FB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SkQ7O0FBTUFnRixNQUFNLENBQUNDLE1BQVAsQ0FBYy9HLFVBQWQsRUFBMEJGLFFBQTFCLEVBQW9DQyxPQUFwQztlQUVlQyxVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IF8gZnJvbSAnbG9kYXNoJztcbmltcG9ydCB7IHV0aWwgfSBmcm9tICdhcHBpdW0tc3VwcG9ydCc7XG5pbXBvcnQgbG9nZ2VyIGZyb20gJy4uL2xvZ2dlcic7XG5pbXBvcnQgdmFsaWRhdGUgZnJvbSAndmFsaWRhdGUuanMnO1xuaW1wb3J0IHsgZXJyb3JzIH0gZnJvbSAnYXBwaXVtLWJhc2UtZHJpdmVyJztcbmltcG9ydCB7IHF1YWxpZnlBY3Rpdml0eU5hbWUgfSBmcm9tICcuLi91dGlscyc7XG5cbmxldCBjb21tYW5kcyA9IHt9LCBoZWxwZXJzID0ge30sIGV4dGVuc2lvbnMgPSB7fTtcblxuZnVuY3Rpb24gYXNzZXJ0UmVxdWlyZWRPcHRpb25zIChvcHRpb25zLCByZXF1aXJlZE9wdGlvbk5hbWVzKSB7XG4gIGlmICghXy5pc0FycmF5KHJlcXVpcmVkT3B0aW9uTmFtZXMpKSB7XG4gICAgcmVxdWlyZWRPcHRpb25OYW1lcyA9IFtyZXF1aXJlZE9wdGlvbk5hbWVzXTtcbiAgfVxuICBjb25zdCBwcmVzZW50T3B0aW9uTmFtZXMgPSBfLmtleXMob3B0aW9ucyk7XG4gIGNvbnN0IG1pc3NpbmdPcHRpb25OYW1lcyA9IF8uZGlmZmVyZW5jZShyZXF1aXJlZE9wdGlvbk5hbWVzLCBwcmVzZW50T3B0aW9uTmFtZXMpO1xuICBpZiAoXy5pc0VtcHR5KG1pc3NpbmdPcHRpb25OYW1lcykpIHtcbiAgICByZXR1cm4gb3B0aW9ucztcbiAgfVxuICB0aHJvdyBuZXcgRXJyb3IoYFRoZSBmb2xsb3dpbmcgb3B0aW9ucyBhcmUgcmVxdWlyZWQ6ICR7SlNPTi5zdHJpbmdpZnkobWlzc2luZ09wdGlvbk5hbWVzKX0uIGAgK1xuICAgIGBZb3UgaGF2ZSBvbmx5IHByb3ZpZGVkOiAke0pTT04uc3RyaW5naWZ5KHByZXNlbnRPcHRpb25OYW1lcyl9YCk7XG59XG5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSByZXF1aXJlLWF3YWl0XG5jb21tYW5kcy5sYXVuY2hBcHAgPSBhc3luYyBmdW5jdGlvbiBsYXVuY2hBcHAgKCkge1xuICB0aHJvdyBuZXcgZXJyb3JzLlVuc3VwcG9ydGVkT3BlcmF0aW9uRXJyb3IoJ1BsZWFzZSBjcmVhdGUgYSBuZXcgc2Vzc2lvbiBpbiBvcmRlciB0byBsYXVuY2ggdGhlIGFwcGxpY2F0aW9uIHVuZGVyIHRlc3QnKTtcbn07XG5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSByZXF1aXJlLWF3YWl0XG5jb21tYW5kcy5jbG9zZUFwcCA9IGFzeW5jIGZ1bmN0aW9uIGNsb3NlQXBwICgpIHtcbiAgdGhyb3cgbmV3IGVycm9ycy5VbnN1cHBvcnRlZE9wZXJhdGlvbkVycm9yKCdQbGVhc2UgcXVpdCB0aGUgc2Vzc2lvbiBpbiBvcmRlciB0byBjbG9zZSB0aGUgYXBwbGljYXRpb24gdW5kZXIgdGVzdCcpO1xufTtcblxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJlcXVpcmUtYXdhaXRcbmNvbW1hbmRzLnJlc2V0ID0gYXN5bmMgZnVuY3Rpb24gcmVzZXQgKCkge1xuICB0aHJvdyBuZXcgZXJyb3JzLlVuc3VwcG9ydGVkT3BlcmF0aW9uRXJyb3IoXG4gICAgJ1BsZWFzZSBxdWl0IHRoZSBzZXNzaW9uIGFuZCBjcmVhdGUgYSBuZXcgb25lICcgK1xuICAgICdpbiBvcmRlciB0byBjbG9zZSBhbmQgbGF1bmNoIHRoZSBhcHBsaWNhdGlvbiB1bmRlciB0ZXN0Jyk7XG59O1xuXG5jb21tYW5kcy5nZXRDbGlwYm9hcmQgPSBhc3luYyBmdW5jdGlvbiBnZXRDbGlwYm9hcmQgKCkge1xuICByZXR1cm4gKGF3YWl0IHRoaXMuYWRiLmdldEFwaUxldmVsKCkgPCAyOSlcbiAgICA/IChhd2FpdCB0aGlzLmVzcHJlc3NvLmp3cHJveHkuY29tbWFuZCgnL2FwcGl1bS9kZXZpY2UvZ2V0X2NsaXBib2FyZCcsICdQT1NUJywge30pKVxuICAgIDogKGF3YWl0IHRoaXMuYWRiLmdldENsaXBib2FyZCgpKTtcbn07XG5cbmNvbW1hbmRzLm1vYmlsZVBlcmZvcm1FZGl0b3JBY3Rpb24gPSBhc3luYyBmdW5jdGlvbiBtb2JpbGVQZXJmb3JtRWRpdG9yQWN0aW9uIChvcHRzID0ge30pIHtcbiAgY29uc3Qge2FjdGlvbn0gPSBhc3NlcnRSZXF1aXJlZE9wdGlvbnMob3B0cywgWydhY3Rpb24nXSk7XG4gIHJldHVybiBhd2FpdCB0aGlzLmVzcHJlc3NvLmp3cHJveHkuY29tbWFuZCgnL2FwcGl1bS9kZXZpY2UvcGVyZm9ybV9lZGl0b3JfYWN0aW9uJywgJ1BPU1QnLCB7YWN0aW9ufSk7XG59O1xuXG5jb21tYW5kcy5tb2JpbGVTd2lwZSA9IGFzeW5jIGZ1bmN0aW9uIG1vYmlsZVN3aXBlIChvcHRzID0ge30pIHtcbiAgY29uc3Qge2RpcmVjdGlvbiwgZWxlbWVudCwgc3dpcGVyLCBzdGFydENvb3JkaW5hdGVzLCBlbmRDb29yZGluYXRlcywgcHJlY2lzaW9uRGVzY3JpYmVyfSA9IGFzc2VydFJlcXVpcmVkT3B0aW9ucyhvcHRzLCBbJ2VsZW1lbnQnXSk7XG4gIHJldHVybiBhd2FpdCB0aGlzLmVzcHJlc3NvLmp3cHJveHkuY29tbWFuZChgL2FwcGl1bS9leGVjdXRlX21vYmlsZS8ke3V0aWwudW53cmFwRWxlbWVudChlbGVtZW50KX0vc3dpcGVgLCAnUE9TVCcsIHtcbiAgICBkaXJlY3Rpb24sIGVsZW1lbnQsIHN3aXBlciwgc3RhcnRDb29yZGluYXRlcywgZW5kQ29vcmRpbmF0ZXMsIHByZWNpc2lvbkRlc2NyaWJlclxuICB9KTtcbn07XG5cbmNvbW1hbmRzLm1vYmlsZUdldERldmljZUluZm8gPSBhc3luYyBmdW5jdGlvbiBtb2JpbGVHZXREZXZpY2VJbmZvICgpIHtcbiAgcmV0dXJuIGF3YWl0IHRoaXMuZXNwcmVzc28uandwcm94eS5jb21tYW5kKCcvYXBwaXVtL2RldmljZS9pbmZvJywgJ0dFVCcpO1xufTtcblxuY29tbWFuZHMubW9iaWxlSXNUb2FzdFZpc2libGUgPSBhc3luYyBmdW5jdGlvbiBtb2JpbGVJc1RvYXN0VmlzaWJsZSAob3B0cyA9IHt9KSB7XG4gIGNvbnN0IHt0ZXh0LCBpc1JlZ2V4cH0gPSBvcHRzO1xuICBpZiAoIXV0aWwuaGFzVmFsdWUodGV4dCkpIHtcbiAgICBsb2dnZXIuZXJyb3JBbmRUaHJvdyhgJ3RleHQnIGFyZ3VtZW50IGlzIG1hbmRhdG9yeWApO1xuICB9XG4gIHJldHVybiBhd2FpdCB0aGlzLmVzcHJlc3NvLmp3cHJveHkuY29tbWFuZCgnL2FwcGl1bS9leGVjdXRlX21vYmlsZS9pc190b2FzdF9kaXNwbGF5ZWQnLCAnUE9TVCcsIHtcbiAgICB0ZXh0LFxuICAgIGlzUmVnZXhwLFxuICB9KTtcbn07XG5cbmNvbW1hbmRzLm1vYmlsZU9wZW5EcmF3ZXIgPSBhc3luYyBmdW5jdGlvbiBtb2JpbGVPcGVuRHJhd2VyIChvcHRzID0ge30pIHtcbiAgY29uc3Qge2VsZW1lbnQsIGdyYXZpdHl9ID0gYXNzZXJ0UmVxdWlyZWRPcHRpb25zKG9wdHMsIFsnZWxlbWVudCddKTtcblxuICByZXR1cm4gYXdhaXQgdGhpcy5lc3ByZXNzby5qd3Byb3h5LmNvbW1hbmQoYC9hcHBpdW0vZXhlY3V0ZV9tb2JpbGUvJHt1dGlsLnVud3JhcEVsZW1lbnQoZWxlbWVudCl9L29wZW5fZHJhd2VyYCwgJ1BPU1QnLCB7XG4gICAgZ3Jhdml0eVxuICB9KTtcbn07XG5cbmNvbW1hbmRzLm1vYmlsZUNsb3NlRHJhd2VyID0gYXN5bmMgZnVuY3Rpb24gbW9iaWxlQ2xvc2VEcmF3ZXIgKG9wdHMgPSB7fSkge1xuICBjb25zdCB7ZWxlbWVudCwgZ3Jhdml0eX0gPSBhc3NlcnRSZXF1aXJlZE9wdGlvbnMob3B0cywgWydlbGVtZW50J10pO1xuXG4gIHJldHVybiBhd2FpdCB0aGlzLmVzcHJlc3NvLmp3cHJveHkuY29tbWFuZChgL2FwcGl1bS9leGVjdXRlX21vYmlsZS8ke3V0aWwudW53cmFwRWxlbWVudChlbGVtZW50KX0vY2xvc2VfZHJhd2VyYCwgJ1BPU1QnLCB7XG4gICAgZ3Jhdml0eVxuICB9KTtcbn07XG5cbmNvbW1hbmRzLm1vYmlsZVNldERhdGUgPSBhc3luYyBmdW5jdGlvbiBtb2JpbGVTZXREYXRlIChvcHRzID0ge30pIHtcbiAgY29uc3Qge2VsZW1lbnQsIHllYXIsIG1vbnRoT2ZZZWFyLCBkYXlPZk1vbnRofSA9IGFzc2VydFJlcXVpcmVkT3B0aW9ucyhvcHRzLCBbJ2VsZW1lbnQnLCAneWVhcicsICdtb250aE9mWWVhcicsICdkYXlPZk1vbnRoJ10pO1xuXG4gIHJldHVybiBhd2FpdCB0aGlzLmVzcHJlc3NvLmp3cHJveHkuY29tbWFuZChgL2FwcGl1bS9leGVjdXRlX21vYmlsZS8ke3V0aWwudW53cmFwRWxlbWVudChlbGVtZW50KX0vc2V0X2RhdGVgLCAnUE9TVCcsIHtcbiAgICB5ZWFyLFxuICAgIG1vbnRoT2ZZZWFyLFxuICAgIGRheU9mTW9udGgsXG4gIH0pO1xufTtcblxuY29tbWFuZHMubW9iaWxlU2V0VGltZSA9IGFzeW5jIGZ1bmN0aW9uIG1vYmlsZVNldFRpbWUgKG9wdHMgPSB7fSkge1xuICBjb25zdCB7ZWxlbWVudCwgaG91cnMsIG1pbnV0ZXN9ID0gYXNzZXJ0UmVxdWlyZWRPcHRpb25zKG9wdHMsIFsnZWxlbWVudCcsICdob3VycycsICdtaW51dGVzJ10pO1xuXG4gIHJldHVybiBhd2FpdCB0aGlzLmVzcHJlc3NvLmp3cHJveHkuY29tbWFuZChgL2FwcGl1bS9leGVjdXRlX21vYmlsZS8ke3V0aWwudW53cmFwRWxlbWVudChlbGVtZW50KX0vc2V0X3RpbWVgLCAnUE9TVCcsIHtcbiAgICBob3VycyxcbiAgICBtaW51dGVzLFxuICB9KTtcbn07XG5cbmNvbW1hbmRzLm1vYmlsZU5hdmlnYXRlVG8gPSBhc3luYyBmdW5jdGlvbiBtb2JpbGVOYXZpZ2F0ZVRvIChvcHRzID0ge30pIHtcbiAgbGV0IHtlbGVtZW50LCBtZW51SXRlbUlkfSA9IGFzc2VydFJlcXVpcmVkT3B0aW9ucyhvcHRzLCBbJ21lbnVJdGVtSWQnLCAnZWxlbWVudCddKTtcblxuICBsZXQgbWVudUl0ZW1JZEFzTnVtYmVyID0gcGFyc2VJbnQobWVudUl0ZW1JZCwgMTApO1xuICBpZiAoXy5pc05hTihtZW51SXRlbUlkQXNOdW1iZXIpIHx8IG1lbnVJdGVtSWRBc051bWJlciA8IDApIHtcbiAgICBsb2dnZXIuZXJyb3JBbmRUaHJvdyhgJ21lbnVJdGVtSWQnIG11c3QgYmUgYSBub24tbmVnYXRpdmUgbnVtYmVyLiBGb3VuZCAke21lbnVJdGVtSWR9YCk7XG4gICAgbWVudUl0ZW1JZCA9IG1lbnVJdGVtSWRBc051bWJlcjtcbiAgfVxuXG4gIHJldHVybiBhd2FpdCB0aGlzLmVzcHJlc3NvLmp3cHJveHkuY29tbWFuZChgL2FwcGl1bS9leGVjdXRlX21vYmlsZS8ke3V0aWwudW53cmFwRWxlbWVudChlbGVtZW50KX0vbmF2aWdhdGVfdG9gLCAnUE9TVCcsIHtcbiAgICBtZW51SXRlbUlkXG4gIH0pO1xufTtcblxuLyoqXG4gKiBSdW5zIGEgY2hhaW4gb2YgRXNwcmVzc28gd2ViIGF0b21zIChzZWUgaHR0cHM6Ly9kZXZlbG9wZXIuYW5kcm9pZC5jb20vdHJhaW5pbmcvdGVzdGluZy9lc3ByZXNzby93ZWIgZm9yIHJlZmVyZW5jZSlcbiAqXG4gKiBUYWtlcyBKU09OIG9mIHRoZSBmb3JtXG4gKlxuICoge1xuICogICBcIndlYnZpZXdFbFwiOiBcIjxFTEVNRU5UX0lEPlwiLCAvLyBvcHRpb25hbCB3ZWJ2aWV3IGVsZW1lbnQgdG8gb3BlcmF0ZSBvblxuICogICBcImZvcmNlSmF2YXNjcmlwdEVuYWJsZWRcIjogdHJ1ZXxmYWxzZSwgLy8gaWYgd2VidmlldyBkaXNhYmxlcyBqYXZhc2NyaXB0LCB3ZWJhdG9tcyB3b24ndCB3b3JrLCB0aGlzIGZvcmNlcyBpdFxuICogICBcIm1ldGhvZENoYWluXCI6IFtcbiAqICAgICB7XCJuYW1lXCI6IFwibWV0aG9kTmFtZVwiLCBcImF0b21cIjoge1wibmFtZVwiOiBcImF0b21OYW1lXCIsIFwiYXJnc1wiOiBbXCJhcmcxXCIsIFwiYXJnMlwiLCAuLi5dfX0sXG4gKiAgICAgLi4uXG4gKiAgIF1cbiAqIH1cbiAqXG4gKi9cbmNvbW1hbmRzLm1vYmlsZVdlYkF0b21zID0gYXN5bmMgZnVuY3Rpb24gbW9iaWxlV2ViQXRvbXMgKG9wdHMgPSB7fSkge1xuICBvcHRzID0gYXNzZXJ0UmVxdWlyZWRPcHRpb25zKG9wdHMsIFsnbWV0aG9kQ2hhaW4nXSk7XG4gIHJldHVybiBhd2FpdCB0aGlzLmVzcHJlc3NvLmp3cHJveHkuY29tbWFuZChgL2FwcGl1bS9leGVjdXRlX21vYmlsZS93ZWJfYXRvbXNgLCAnUE9TVCcsIG9wdHMpO1xufTtcblxuY29tbWFuZHMubW9iaWxlU2Nyb2xsVG9QYWdlID0gYXN5bmMgZnVuY3Rpb24gbW9iaWxlU2Nyb2xsVG9QYWdlIChvcHRzID0ge30pIHtcblxuICAvLyBWYWxpZGF0ZSB0aGUgcGFyYW1ldGVyc1xuICBjb25zdCBzY3JvbGxUb1R5cGVzID0gWydmaXJzdCcsICdsYXN0JywgJ2xlZnQnLCAncmlnaHQnXTtcbiAgY29uc3QgcmVzID0gdmFsaWRhdGUob3B0cywge1xuICAgIGVsZW1lbnQ6IHtwcmVzZW5jZTogdHJ1ZX0sXG4gICAgc2Nyb2xsVG86IHtcbiAgICAgIGluY2x1c2lvbjoge1xuICAgICAgICB3aXRoaW46IHNjcm9sbFRvVHlwZXMsXG4gICAgICAgIG1lc3NhZ2U6IGBcInNjcm9sbFRvXCIgbXVzdCBiZSBvbmUgb2YgXCIke3Njcm9sbFRvVHlwZXMuam9pbignLCAnKX1cIiBmb3VuZCAnJXt2YWx1ZX0nYCxcbiAgICAgIH1cbiAgICB9LFxuICAgIHNjcm9sbFRvUGFnZToge1xuICAgICAgbnVtZXJpY2FsaXR5OiB7XG4gICAgICAgIG9ubHlJbnRlZ2VyOiB0cnVlLFxuICAgICAgICBncmVhdGVyVGhhbk9yRXF1YWxUbzogMCxcbiAgICAgICAgbWVzc2FnZTogYFwic2Nyb2xsVG9QYWdlXCIgbXVzdCBiZSBhIG5vbi1uZWdhdGl2ZSBpbnRlZ2VyLiBGb3VuZCAnJXt2YWx1ZX0nYFxuICAgICAgfSxcbiAgICB9LFxuICB9KTtcblxuICBpZiAodXRpbC5oYXNWYWx1ZShyZXMpKSB7XG4gICAgbG9nZ2VyLmVycm9yQW5kVGhyb3coYEludmFsaWQgc2Nyb2xsVG8gcGFyYW1ldGVyczogJHtKU09OLnN0cmluZ2lmeShyZXMpfWApO1xuICB9XG5cbiAgY29uc3Qge2VsZW1lbnQsIHNjcm9sbFRvLCBzY3JvbGxUb1BhZ2UsIHNtb290aFNjcm9sbH0gPSBvcHRzO1xuXG4gIGlmICh1dGlsLmhhc1ZhbHVlKHNjcm9sbFRvKSAmJiB1dGlsLmhhc1ZhbHVlKHNjcm9sbFRvUGFnZSkpIHtcbiAgICBsb2dnZXIud2FybihgJ3Njcm9sbFRvJyBhbmQgJ3Njcm9sbFRvUGFnZScgd2hlcmUgYm90aCBwcm92aWRlZC4gRGVmYXVsdGluZyB0byAnc2Nyb2xsVG8nYCk7XG4gIH1cblxuICByZXR1cm4gYXdhaXQgdGhpcy5lc3ByZXNzby5qd3Byb3h5LmNvbW1hbmQoYC9hcHBpdW0vZXhlY3V0ZV9tb2JpbGUvJHt1dGlsLnVud3JhcEVsZW1lbnQoZWxlbWVudCl9L3Njcm9sbF90b19wYWdlYCwgJ1BPU1QnLCB7XG4gICAgc2Nyb2xsVG8sXG4gICAgc2Nyb2xsVG9QYWdlLFxuICAgIHNtb290aFNjcm9sbCxcbiAgfSk7XG59O1xuXG5cbi8qKlxuICogIEFQSSB0byBpbnZva2UgbWV0aG9kcyBkZWZpbmVkIGluIEFuZHJvaWQgYXBwLlxuICpcbiAqICBFeGFtcGxlIGRhdGFcbiAqICB7XG4gKiAgIHRhcmdldDogJ2FjdGl2aXR5JyxcbiAqICAgbWV0aG9kczpcbiAqICAgICAgICAgW1xuICogICAgICAgICAgIHtcbiAqICAgICAgICAgICAgICAgbmFtZTogXCJzb21lTWV0aG9kXCIsXG4gKiAgICAgICAgICAgfSxcbiAqICAgICAgICAgICB7XG4gKiAgICAgICAgICAgICAgIG5hbWU6IFwiYW5vdGhlck1ldGhvZFwiLFxuICogICAgICAgICAgICAgICBhcmdzOlxuICogICAgICAgICAgICAgICAgICAgW1xuICogICAgICAgICAgICAgICAgICAgICAgIHt2YWx1ZTogXCJMb2xcIiwgdHlwZTogJ2phdmEubGFuZy5DaGFyU2VxdWVuY2UnfSxcbiAqICAgICAgICAgICAgICAgICAgICAgICB7dmFsdWU6IDEsIHR5cGU6ICdpbnQnfVxuICogICAgICAgICAgICAgICAgICAgXVxuICogICAgICAgICAgIH1cbiAqICAgICAgICAgXVxuICogfVxuICpcbiAqIEluIGFib3ZlIGV4YW1wbGUsIG1ldGhvZCBcInNvbWVNZXRob2RcIiB3aWxsIGJlIGludm9rZWQgb24gJ2FjdGl2aXR5Jy4gT24gdGhlIHJlc3VsdCwgXCJhbm90aGVyTWV0aG9kXCIgd2lsbCBiZSBpbnZva2VkXG4gKiAgXCJ0YXJnZXRcIiBjYW4gYmUgZWl0aGVyICdhY3Rpdml0eScsICdhcHBsaWNhdGlvbicgb3IgJ2VsZW1lbnQnXG4gKiAgSWYgdGFyZ2V0IGlzIHNldCB0byAnYXBwbGljYXRpb24nLCBtZXRob2RzIHdpbGwgYmUgaW52b2tlZCBvbiBhcHBsaWNhdGlvbiBjbGFzc1xuICogIElmIHRhcmdldCBpcyBzZXQgdG8gJ2FjdGl2aXR5JywgbWV0aG9kcyB3aWxsIGJlIGludm9rZWQgb24gY3VycmVudCBhY3Rpdml0eVxuICogIElmIHRhcmdldCBpcyBzZXQgdG8gJ2VsZW1lbnQnLCAnZWxlbWVudElkJyBtdXN0IGJlIHNwZWNpZmllZFxuICpcbiAqIC0gT25seSAnUHVibGljJyBtZXRob2RzIGNhbiBiZSBpbnZva2VkLiAoJ29wZW4nIG1vZGlmaXJlIGlzIG5lY2Vzc2FyeSBpbiBLb3RsaW4pXG4gKiAtIGZvbGxvd2luZyBwcmltaXRpdmUgdHlwZXMgYXJlIHN1cHBvcnRlZDogXCJpbnRcIiwgXCJib29sZWFuXCIsIFwiYnl0ZVwiLCBcInNob3J0XCIsIFwibG9uZ1wiLCBcImZsb2F0XCIsIFwiY2hhclwiXG4gKiAtICBOb24tcHJpbWl0aXZlIHR5cGVzIHdpdGggZnVsbHkgcXVhbGlmaWVkIG5hbWUgXCJqYXZhLmxhbmcuKlwiIGlzIGFsc28gc3VwcG9ydGVkOlxuICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFZy4gXCJqYXZhLmxhbmcuQ2hhclNlcXVlbmNlXCIsIFwiamF2YS5sYW5nLlN0cmluZ1wiLCBcImphdmEubGFuZy5JbnRlZ2VyXCIsIFwiamF2YS5sYW5nLkZsb2F0XCIsXG4gKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiamF2YS5sYW5nLkRvdWJsZVwiLCBcImphdmEubGFuZy5Cb29sZWFuXCIsIFwiamF2YS5sYW5nLkxvbmdcIiwgXCJqYXZhLmxhbmcuU2hvcnRcIixcbiAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJqYXZhLmxhbmcuQ2hhcmFjdGVyXCIgZXRjLi4uXG4gKlxuICpcbiAqIEB0aHJvd3MgIHtFcnJvcn0gaWYgdGFyZ2V0IGlzIG5vdCAnYWN0aXZpdHknIG9yICdhcHBsaWNhdGlvbidcbiAqIEB0aHJvd3MgIHtFcnJvcn0gaWYgYSBtZXRob2QgaXMgbm90IGZvdW5kIHdpdGggZ2l2ZW4gYXJndW1lbnQgdHlwZXNcbiAqXG4gKiBAcmV0dXJuIHsqfSB0aGUgcmVzdWx0IG9mIHRoZSBsYXN0IG1ldGhvZCBpbiB0aGUgaW52b2NhdGlvbiBjaGFpbi4gSWYgbWV0aG9kIHJldHVybiB0eXBlIGlzIHZvaWQsIHRoZW4gXCI8Vk9JRD5cIiB3aWxsIGJlIHJldHVybmVkXG4gKlxuICovXG5jb21tYW5kcy5tb2JpbGVCYWNrZG9vciA9IGFzeW5jIGZ1bmN0aW9uIG1vYmlsZUJhY2tkb29yIChvcHRzID0ge30pIHtcbiAgYXNzZXJ0UmVxdWlyZWRPcHRpb25zKG9wdHMsIFsndGFyZ2V0JywgJ21ldGhvZHMnXSk7XG4gIGNvbnN0IHt0YXJnZXQsIG1ldGhvZHN9ID0gb3B0cztcbiAgaWYgKHRhcmdldCA9PT0gJ2VsZW1lbnQnKSB7XG4gICAgYXNzZXJ0UmVxdWlyZWRPcHRpb25zKG9wdHMsIFsnZWxlbWVudElkJ10pO1xuICB9XG4gIGNvbnN0IHtlbGVtZW50SWQ6IHRhcmdldEVsZW1lbnR9ID0gb3B0cztcbiAgcmV0dXJuIGF3YWl0IHRoaXMuZXNwcmVzc28uandwcm94eS5jb21tYW5kKGAvYXBwaXVtL2V4ZWN1dGVfbW9iaWxlL2JhY2tkb29yYCwgJ1BPU1QnLCB7dGFyZ2V0LCBtZXRob2RzLCB0YXJnZXRFbGVtZW50fSk7XG59O1xuXG4vKipcbiAqICBFeGVjdXRlIFVpQXV0b21hdG9yMiBjb21tYW5kcyB0byBkcml2ZSBvdXQgb2YgYXBwIGFyZWFzLlxuICogIHN0cmF0ZWd5IGNhbiBiZSBvbmUgb2Y6IFwiY2xhenpcIiwgXCJyZXNcIiwgXCJ0ZXh0XCIsIFwidGV4dENvbnRhaW5zXCIsIFwidGV4dEVuZHNXaXRoXCIsIFwidGV4dFN0YXJ0c1dpdGhcIixcbiAqICAgICAgICAgICAgICAgICAgICAgICAgICBcImRlc2NcIiwgXCJkZXNjQ29udGFpbnNcIiwgXCJkZXNjRW5kc1dpdGhcIiwgXCJkZXNjU3RhcnRzV2l0aFwiLCBcInBrZ1wiXG4gKlxuICogIGFjdGlvbiBjYW4gYmUgb25lIG9mOiBcImNsaWNrXCIsIFwibG9uZ0NsaWNrXCIsIFwiZ2V0VGV4dFwiLCBcImdldENvbnRlbnREZXNjcmlwdGlvblwiLCBcImdldENsYXNzTmFtZVwiLFxuICogICAgICAgICAgICAgICAgICAgICAgICBcImdldFJlc291cmNlTmFtZVwiLCBcImdldFZpc2libGVCb3VuZHNcIiwgXCJnZXRWaXNpYmxlQ2VudGVyXCIsIFwiZ2V0QXBwbGljYXRpb25QYWNrYWdlXCIsXG4gKiAgICAgICAgICAgICAgICAgICAgICAgIFwiZ2V0Q2hpbGRDb3VudFwiLCBcImNsZWFyXCIsIFwiaXNDaGVja2FibGVcIiwgXCJpc0NoZWNrZWRcIiwgXCJpc0NsaWNrYWJsZVwiLCBcImlzRW5hYmxlZFwiLFxuICogICAgICAgICAgICAgICAgICAgICAgICBcImlzRm9jdXNhYmxlXCIsIFwiaXNGb2N1c2VkXCIsIFwiaXNMb25nQ2xpY2thYmxlXCIsIFwiaXNTY3JvbGxhYmxlXCIsIFwiaXNTZWxlY3RlZFwiXG4gKi9cbmNvbW1hbmRzLm1vYmlsZVVpYXV0b21hdG9yID0gYXN5bmMgZnVuY3Rpb24gbW9iaWxlVWlhdXRvbWF0b3IgKG9wdHMgPSB7fSkge1xuICBjb25zdCB7c3RyYXRlZ3ksIGxvY2F0b3IsIGFjdGlvbiwgaW5kZXh9ID0gYXNzZXJ0UmVxdWlyZWRPcHRpb25zKG9wdHMsIFsnc3RyYXRlZ3knLCAnbG9jYXRvcicsICdhY3Rpb24nXSk7XG4gIHJldHVybiBhd2FpdCB0aGlzLmVzcHJlc3NvLmp3cHJveHkuY29tbWFuZChgL2FwcGl1bS9leGVjdXRlX21vYmlsZS91aWF1dG9tYXRvcmAsICdQT1NUJywge3N0cmF0ZWd5LCBsb2NhdG9yLCBpbmRleCwgYWN0aW9ufSk7XG59O1xuXG4vKipcbiAqICBFeGVjdXRlIFVpQXV0b21hdG9yMiBjb21tYW5kIHRvIHJldHVybiB0aGUgVUkgZHVtcCB3aGVuIEFVVCBpcyBpbiBiYWNrZ3JvdW5kLlxuICogQHRocm93cyAge0Vycm9yfSBpZiB1aWF1dG9tYXRvciB2aWV3IGR1bXAgaXMgdW5zdWNjZXNzZnVsXG4gKiBAcmV0dXJucyB7c3RyaW5nfSB1aWF1dG9tYXRvciBET00geG1sIGFzIHN0cmluZ1xuICovXG5jb21tYW5kcy5tb2JpbGVVaWF1dG9tYXRvclBhZ2VTb3VyY2UgPSBhc3luYyBmdW5jdGlvbiBtb2JpbGVVaWF1dG9tYXRvclBhZ2VTb3VyY2UgKCkge1xuICByZXR1cm4gYXdhaXQgdGhpcy5lc3ByZXNzby5qd3Byb3h5LmNvbW1hbmQoYC9hcHBpdW0vZXhlY3V0ZV9tb2JpbGUvdWlhdXRvbWF0b3JfcGFnZV9zb3VyY2VgLCAnR0VUJyk7XG59O1xuXG4vKipcbiAqICBGbGFzaCB0aGUgZWxlbWVudCB3aXRoIGdpdmVuIGlkLlxuICogIGR1cmF0aW9uTWlsbGlzIGFuZCByZXBlYXRDb3VudCBhcmUgb3B0aW9uYWxcbiAqXG4gKi9cbmNvbW1hbmRzLm1vYmlsZUZsYXNoRWxlbWVudCA9IGFzeW5jIGZ1bmN0aW9uIG1vYmlsZUZsYXNoRWxlbWVudCAob3B0cyA9IHt9KSB7XG4gIGNvbnN0IHtlbGVtZW50fSA9IGFzc2VydFJlcXVpcmVkT3B0aW9ucyhvcHRzLCBbJ2VsZW1lbnQnXSk7XG4gIGNvbnN0IHtkdXJhdGlvbk1pbGxpcywgcmVwZWF0Q291bnR9ID0gb3B0cztcbiAgcmV0dXJuIGF3YWl0IHRoaXMuZXNwcmVzc28uandwcm94eS5jb21tYW5kKGAvYXBwaXVtL2V4ZWN1dGVfbW9iaWxlLyR7dXRpbC51bndyYXBFbGVtZW50KGVsZW1lbnQpfS9mbGFzaGAsICdQT1NUJywge1xuICAgIGR1cmF0aW9uTWlsbGlzLFxuICAgIHJlcGVhdENvdW50XG4gIH0pO1xufTtcblxuLyoqXG4gKiBQZXJmb3JtIGEgJ0dlbmVyYWxDbGlja0FjdGlvbicgKGh0dHBzOi8vZGV2ZWxvcGVyLmFuZHJvaWQuY29tL3JlZmVyZW5jZS9hbmRyb2lkeC90ZXN0L2VzcHJlc3NvL2FjdGlvbi9HZW5lcmFsQ2xpY2tBY3Rpb24pXG4gKi9cbmNvbW1hbmRzLm1vYmlsZUNsaWNrQWN0aW9uID0gYXN5bmMgZnVuY3Rpb24gbW9iaWxlQ2xpY2tBY3Rpb24gKG9wdHMgPSB7fSkge1xuICBjb25zdCB7ZWxlbWVudCwgdGFwcGVyLCBjb29yZGluYXRlc1Byb3ZpZGVyLCBwcmVjaXNpb25EZXNjcmliZXIsXG4gICAgICAgICBpbnB1dERldmljZSwgYnV0dG9uU3RhdGV9ID0gYXNzZXJ0UmVxdWlyZWRPcHRpb25zKG9wdHMsIFsnZWxlbWVudCddKTtcbiAgcmV0dXJuIGF3YWl0IHRoaXMuZXNwcmVzc28uandwcm94eS5jb21tYW5kKGAvYXBwaXVtL2V4ZWN1dGVfbW9iaWxlLyR7dXRpbC51bndyYXBFbGVtZW50KGVsZW1lbnQpfS9jbGlja19hY3Rpb25gLCAnUE9TVCcsIHtcbiAgICB0YXBwZXIsIGNvb3JkaW5hdGVzUHJvdmlkZXIsIHByZWNpc2lvbkRlc2NyaWJlciwgaW5wdXREZXZpY2UsIGJ1dHRvblN0YXRlXG4gIH0pO1xufTtcblxuY29tbWFuZHMudXBkYXRlU2V0dGluZ3MgPSBhc3luYyBmdW5jdGlvbiB1cGRhdGVTZXR0aW5ncyAoc2V0dGluZ3MpIHtcbiAgcmV0dXJuIGF3YWl0IHRoaXMuZXNwcmVzc28uandwcm94eS5jb21tYW5kKGAvYXBwaXVtL3NldHRpbmdzYCwgJ1BPU1QnLCB7IHNldHRpbmdzIH0pO1xufTtcblxuY29tbWFuZHMuZ2V0U2V0dGluZ3MgPSBhc3luYyBmdW5jdGlvbiBnZXRTZXR0aW5ncyAoKSB7XG4gIHJldHVybiBhd2FpdCB0aGlzLmVzcHJlc3NvLmp3cHJveHkuY29tbWFuZChgL2FwcGl1bS9zZXR0aW5nc2AsICdHRVQnKTtcbn07XG5cbi8vIFN0b3AgcHJveHlpbmcgdG8gYW55IENocm9tZWRyaXZlciBhbmQgcmVkaXJlY3QgdG8gRXNwcmVzc29cbmhlbHBlcnMuc3VzcGVuZENocm9tZWRyaXZlclByb3h5ID0gZnVuY3Rpb24gc3VzcGVuZENocm9tZWRyaXZlclByb3h5ICgpIHtcbiAgdGhpcy5jaHJvbWVkcml2ZXIgPSBudWxsO1xuICB0aGlzLnByb3h5UmVxUmVzID0gdGhpcy5lc3ByZXNzby5wcm94eVJlcVJlcy5iaW5kKHRoaXMuZXNwcmVzc28pO1xuICB0aGlzLmp3cFByb3h5QWN0aXZlID0gdHJ1ZTtcbn07XG5cbmNvbW1hbmRzLnN0YXJ0QWN0aXZpdHkgPSBhc3luYyBmdW5jdGlvbiBzdGFydEFjdGl2aXR5IChhcHBQYWNrYWdlLCBhcHBBY3Rpdml0eSxcbiAgYXBwV2FpdFBhY2thZ2UsIGFwcFdhaXRBY3Rpdml0eSkge1xuICAvLyBpbnRlbnRBY3Rpb24sIGludGVudENhdGVnb3J5LCBpbnRlbnRGbGFncywgb3B0aW9uYWxJbnRlbnRBcmd1bWVudHMsIGRvbnRTdG9wQXBwT25SZXNldFxuICAvLyBwYXJhbWV0ZXJzIGFyZSBub3Qgc3VwcG9ydGVkIGJ5IEVzcHJlc3NvXG4gIGFwcFBhY2thZ2UgPSBhcHBQYWNrYWdlIHx8IHRoaXMuY2Fwcy5hcHBQYWNrYWdlO1xuICBhcHBXYWl0UGFja2FnZSA9IGFwcFdhaXRQYWNrYWdlIHx8IGFwcFBhY2thZ2U7XG4gIGFwcEFjdGl2aXR5ID0gcXVhbGlmeUFjdGl2aXR5TmFtZShhcHBBY3Rpdml0eSwgYXBwUGFja2FnZSk7XG4gIGFwcFdhaXRBY3Rpdml0eSA9IHF1YWxpZnlBY3Rpdml0eU5hbWUoYXBwV2FpdEFjdGl2aXR5IHx8IGFwcEFjdGl2aXR5LCBhcHBXYWl0UGFja2FnZSk7XG4gIGxvZ2dlci5kZWJ1ZyhgU3RhcnRpbmcgYWN0aXZpdHkgJyR7YXBwQWN0aXZpdHl9JyBmb3IgcGFja2FnZSAnJHthcHBQYWNrYWdlfSdgKTtcbiAgYXdhaXQgdGhpcy5lc3ByZXNzby5qd3Byb3h5LmNvbW1hbmQoYC9hcHBpdW0vZGV2aWNlL3N0YXJ0X2FjdGl2aXR5YCwgJ1BPU1QnLCB7XG4gICAgYXBwUGFja2FnZSxcbiAgICBhcHBBY3Rpdml0eSxcbiAgfSk7XG4gIGF3YWl0IHRoaXMuYWRiLndhaXRGb3JBY3Rpdml0eShhcHBXYWl0UGFja2FnZSwgYXBwV2FpdEFjdGl2aXR5KTtcbn07XG5cbmNvbW1hbmRzLm1vYmlsZURpc21pc3NBdXRvZmlsbCA9IGFzeW5jIGZ1bmN0aW9uIG1vYmlsZURpc21pc3NBdXRvZmlsbCAob3B0cyA9IHt9KSB7XG4gIGNvbnN0IHtlbGVtZW50fSA9IGFzc2VydFJlcXVpcmVkT3B0aW9ucyhvcHRzLCBbJ2VsZW1lbnQnXSk7XG4gIGF3YWl0IHRoaXMuZXNwcmVzc28uandwcm94eS5jb21tYW5kKFxuICAgIGAvc2Vzc2lvbi86c2Vzc2lvbklkL2FwcGl1bS9leGVjdXRlX21vYmlsZS8ke3V0aWwudW53cmFwRWxlbWVudChlbGVtZW50KX0vZGlzbWlzc19hdXRvZmlsbGAsICdQT1NUJywge30pO1xufTtcblxuT2JqZWN0LmFzc2lnbihleHRlbnNpb25zLCBjb21tYW5kcywgaGVscGVycyk7XG5leHBvcnQgeyBjb21tYW5kcywgaGVscGVycyB9O1xuZXhwb3J0IGRlZmF1bHQgZXh0ZW5zaW9ucztcbiJdLCJmaWxlIjoibGliL2NvbW1hbmRzL2dlbmVyYWwuanMiLCJzb3VyY2VSb290IjoiLi4vLi4vLi4ifQ==
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = exports.commands = void 0;
|
|
7
|
+
|
|
8
|
+
require("source-map-support/register");
|
|
9
|
+
|
|
10
|
+
var _utils = require("../utils");
|
|
11
|
+
|
|
12
|
+
const commands = {};
|
|
13
|
+
exports.commands = commands;
|
|
14
|
+
|
|
15
|
+
commands.mobileRegisterIdlingResources = async function mobileRegisterIdlingResources(opts = {}) {
|
|
16
|
+
return await this.espresso.jwproxy.command('/appium/execute_mobile/register_idling_resources', 'POST', (0, _utils.requireOptions)(opts, ['classNames']));
|
|
17
|
+
};
|
|
18
|
+
|
|
19
|
+
commands.mobileUnregisterIdlingResources = async function mobileUnregisterIdlingResources(opts = {}) {
|
|
20
|
+
return await this.espresso.jwproxy.command('/appium/execute_mobile/unregister_idling_resources', 'POST', (0, _utils.requireOptions)(opts, ['classNames']));
|
|
21
|
+
};
|
|
22
|
+
|
|
23
|
+
commands.mobileListIdlingResources = async function mobileListIdlingResources() {
|
|
24
|
+
return await this.espresso.jwproxy.command('/appium/execute_mobile/list_idling_resources', 'GET');
|
|
25
|
+
};
|
|
26
|
+
|
|
27
|
+
var _default = commands;
|
|
28
|
+
exports.default = _default;require('source-map-support').install();
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImxpYi9jb21tYW5kcy9pZGxpbmctcmVzb3VyY2VzLmpzIl0sIm5hbWVzIjpbImNvbW1hbmRzIiwibW9iaWxlUmVnaXN0ZXJJZGxpbmdSZXNvdXJjZXMiLCJvcHRzIiwiZXNwcmVzc28iLCJqd3Byb3h5IiwiY29tbWFuZCIsIm1vYmlsZVVucmVnaXN0ZXJJZGxpbmdSZXNvdXJjZXMiLCJtb2JpbGVMaXN0SWRsaW5nUmVzb3VyY2VzIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQTs7QUFFQSxNQUFNQSxRQUFRLEdBQUcsRUFBakI7OztBQXFCQUEsUUFBUSxDQUFDQyw2QkFBVCxHQUF5QyxlQUFlQSw2QkFBZixDQUE4Q0MsSUFBSSxHQUFHLEVBQXJELEVBQXlEO0FBQ2hHLFNBQU8sTUFBTSxLQUFLQyxRQUFMLENBQWNDLE9BQWQsQ0FBc0JDLE9BQXRCLENBQThCLGtEQUE5QixFQUFrRixNQUFsRixFQUNYLDJCQUFlSCxJQUFmLEVBQXFCLENBQUMsWUFBRCxDQUFyQixDQURXLENBQWI7QUFFRCxDQUhEOztBQVlBRixRQUFRLENBQUNNLCtCQUFULEdBQTJDLGVBQWVBLCtCQUFmLENBQWdESixJQUFJLEdBQUcsRUFBdkQsRUFBMkQ7QUFDcEcsU0FBTyxNQUFNLEtBQUtDLFFBQUwsQ0FBY0MsT0FBZCxDQUFzQkMsT0FBdEIsQ0FBOEIsb0RBQTlCLEVBQW9GLE1BQXBGLEVBQ1gsMkJBQWVILElBQWYsRUFBcUIsQ0FBQyxZQUFELENBQXJCLENBRFcsQ0FBYjtBQUVELENBSEQ7O0FBV0FGLFFBQVEsQ0FBQ08seUJBQVQsR0FBcUMsZUFBZUEseUJBQWYsR0FBNEM7QUFDL0UsU0FBTyxNQUFNLEtBQUtKLFFBQUwsQ0FBY0MsT0FBZCxDQUFzQkMsT0FBdEIsQ0FBOEIsOENBQTlCLEVBQThFLEtBQTlFLENBQWI7QUFDRCxDQUZEOztlQUtlTCxRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcmVxdWlyZU9wdGlvbnMgfSBmcm9tICcuLi91dGlscyc7XG5cbmNvbnN0IGNvbW1hbmRzID0ge307XG5cbi8qKlxuICogQHR5cGVkZWYge09iamVjdH0gSWRsaW5nUmVzb3VyY2VzT3B0aW9uc1xuICogQHByb3BlcnR5IHshc3RyaW5nfSBjbGFzc05hbWVzIC0gVGhlIGNvbW1hLXNlcGFyYXRlZCBsaXN0IG9mIGlkbGluZyByZXNvdXJjZXMgY2xhc3MgbmFtZXMuXG4gKiBFYWNoIG5hbWUgbXVzdCBiZSBhIGZ1bGwtcXVhbGlmaWVkIGphdmEgY2xhc3MgbmFtZSwgbGlrZSBgaW8uYXBwaXVtLmVzcHJlc3Nvc2VydmVyLmxpYi5NeUlkbGluZ1Jlc291cmNlYC5cbiAqIEVhY2ggY2xhc3MgaW4gdGhlIGFwcCBzb3VyY2UgbXVzdCBpbXBsZW1lbnQgYSBzaW5nbGV0b24gcGF0dGVybiBhbmQgaGF2ZSBhIHN0YXRpYyBgZ2V0SW5zdGFuY2UoKWBcbiAqIG1ldGhvZCByZXR1cm5pbmcgdGhlIGNsYXNzIGluc3RhbmNlLCB3aGljaCBpbXBsZW1lbnRzIGBhbmRyb2lkeC50ZXN0LmVzcHJlc3NvLklkbGluZ1Jlc291cmNlYFxuICogaW50ZXJmYWNlLiBSZWFkXG4gKiAtIGh0dHBzOi8vZGV2ZWxvcGVyLmFuZHJvaWQuY29tL3RyYWluaW5nL3Rlc3RpbmcvZXNwcmVzc28vaWRsaW5nLXJlc291cmNlXG4gKiAtIGh0dHBzOi8vYW5kcm9pZC5qbGVsc2UuZXUvaW50ZWdyYXRlLWVzcHJlc3NvLWlkbGluZy1yZXNvdXJjZXMtaW4teW91ci1hcHAtdG8tYnVpbGQtZmxleGlibGUtdWktdGVzdHMtYzc3OWUyNGY1MDU3XG4gKiBmb3IgbW9yZSBkZXRhaWxzIG9uIGhvdyB0byBkZXNpZ24gYW5kIHVzZSBpZGxpbmcgcmVzb3VyY2VzIGNvbmNlcHQgaW4gRXNwcmVzc28uXG4gKi9cblxuLyoqXG4gKiBSZWdpc3RlcnMgb25lIG9yIG1vcmUgaWRsaW5nIHJlc291cmNlc1xuICpcbiAqIEBwYXJhbSB7SWRsaW5nUmVzb3VyY2VzT3B0aW9uc30gb3B0c1xuICogQHRocm93cyB7RXJyb3J9IElmIHRoZXJlIHdhcyBhIGZhaWx1cmUgd2hpbGUgcGFyc2luZyBvcHRpb25zIG9yIHJlZ2lzdGVyaW5nXG4gKiB0aGUgYWN0dWFsIGluc3RhbmNlc1xuICovXG5jb21tYW5kcy5tb2JpbGVSZWdpc3RlcklkbGluZ1Jlc291cmNlcyA9IGFzeW5jIGZ1bmN0aW9uIG1vYmlsZVJlZ2lzdGVySWRsaW5nUmVzb3VyY2VzIChvcHRzID0ge30pIHtcbiAgcmV0dXJuIGF3YWl0IHRoaXMuZXNwcmVzc28uandwcm94eS5jb21tYW5kKCcvYXBwaXVtL2V4ZWN1dGVfbW9iaWxlL3JlZ2lzdGVyX2lkbGluZ19yZXNvdXJjZXMnLCAnUE9TVCcsXG4gICAgcmVxdWlyZU9wdGlvbnMob3B0cywgWydjbGFzc05hbWVzJ10pKTtcbn07XG5cbi8qKlxuICogVW5yZWdpc3RlcnMgb25lIG9yIG1vcmUgaWRsaW5nIHJlc291cmNlc1xuICpcbiAqIEBwYXJhbSB7SWRsaW5nUmVzb3VyY2VzT3B0aW9uc30gb3B0c1xuICogQHRocm93cyB7RXJyb3J9IElmIHRoZXJlIHdhcyBhIGZhaWx1cmUgd2hpbGUgcGFyc2luZyBvcHRpb25zIG9yIHVucmVnaXN0ZXJpbmdcbiAqIHRoZSBhY3R1YWwgaW5zdGFuY2VzXG4gKi9cbmNvbW1hbmRzLm1vYmlsZVVucmVnaXN0ZXJJZGxpbmdSZXNvdXJjZXMgPSBhc3luYyBmdW5jdGlvbiBtb2JpbGVVbnJlZ2lzdGVySWRsaW5nUmVzb3VyY2VzIChvcHRzID0ge30pIHtcbiAgcmV0dXJuIGF3YWl0IHRoaXMuZXNwcmVzc28uandwcm94eS5jb21tYW5kKCcvYXBwaXVtL2V4ZWN1dGVfbW9iaWxlL3VucmVnaXN0ZXJfaWRsaW5nX3Jlc291cmNlcycsICdQT1NUJyxcbiAgICByZXF1aXJlT3B0aW9ucyhvcHRzLCBbJ2NsYXNzTmFtZXMnXSkpO1xufTtcblxuLyoqXG4gKiBSZXR1cm5zIGEgbGlzdCBvZiBjdXJyZW50bHkgcmVnaXN0ZXJlZCBpZGxpbmcgcmVzb3VyY2VzXG4gKiBvciBhbiBlbXB0eSBsaXN0IGlmIG5vIHJlc291cmNlcyBoYXZlIGJlZW4gcmVnaXN0ZXJlZCB5ZXQuXG4gKlxuICogQHJldHVybnMge0FycmF5PHN0cmluZz59IFRoZSBsaXN0IG9mIGZ1bGx5IHF1YWxpZmllZCBjbGFzcyBuYW1lc1xuICovXG5jb21tYW5kcy5tb2JpbGVMaXN0SWRsaW5nUmVzb3VyY2VzID0gYXN5bmMgZnVuY3Rpb24gbW9iaWxlTGlzdElkbGluZ1Jlc291cmNlcyAoKSB7XG4gIHJldHVybiBhd2FpdCB0aGlzLmVzcHJlc3NvLmp3cHJveHkuY29tbWFuZCgnL2FwcGl1bS9leGVjdXRlX21vYmlsZS9saXN0X2lkbGluZ19yZXNvdXJjZXMnLCAnR0VUJyk7XG59O1xuXG5leHBvcnQgeyBjb21tYW5kcyB9O1xuZXhwb3J0IGRlZmF1bHQgY29tbWFuZHM7XG4iXSwiZmlsZSI6ImxpYi9jb21tYW5kcy9pZGxpbmctcmVzb3VyY2VzLmpzIiwic291cmNlUm9vdCI6Ii4uLy4uLy4uIn0=
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.default = void 0;
|
|
9
|
+
|
|
10
|
+
require("source-map-support/register");
|
|
11
|
+
|
|
12
|
+
var _execute = _interopRequireDefault(require("./execute"));
|
|
13
|
+
|
|
14
|
+
var _general = _interopRequireDefault(require("./general"));
|
|
15
|
+
|
|
16
|
+
var _services = _interopRequireDefault(require("./services"));
|
|
17
|
+
|
|
18
|
+
var _idlingResources = _interopRequireDefault(require("./idling-resources"));
|
|
19
|
+
|
|
20
|
+
const commands = {};
|
|
21
|
+
Object.assign(commands, _general.default, _execute.default, _services.default, _idlingResources.default);
|
|
22
|
+
var _default = commands;
|
|
23
|
+
exports.default = _default;require('source-map-support').install();
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImxpYi9jb21tYW5kcy9pbmRleC5qcyJdLCJuYW1lcyI6WyJjb21tYW5kcyIsIk9iamVjdCIsImFzc2lnbiIsImdlbmVyYWxDbWRzIiwiZXhlY3V0ZUNtZHMiLCJzZXJ2aWNlc0NtZHMiLCJpZGxpbmdSZXNvdXJjZXNDbWRzIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFBOztBQUNBOztBQUNBOztBQUNBOztBQUVBLE1BQU1BLFFBQVEsR0FBRyxFQUFqQjtBQUNBQyxNQUFNLENBQUNDLE1BQVAsQ0FDRUYsUUFERixFQUVFRyxnQkFGRixFQUdFQyxnQkFIRixFQUlFQyxpQkFKRixFQUtFQyx3QkFMRjtlQVNlTixRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGV4ZWN1dGVDbWRzIGZyb20gJy4vZXhlY3V0ZSc7XG5pbXBvcnQgZ2VuZXJhbENtZHMgZnJvbSAnLi9nZW5lcmFsJztcbmltcG9ydCBzZXJ2aWNlc0NtZHMgZnJvbSAnLi9zZXJ2aWNlcyc7XG5pbXBvcnQgaWRsaW5nUmVzb3VyY2VzQ21kcyBmcm9tICcuL2lkbGluZy1yZXNvdXJjZXMnO1xuXG5jb25zdCBjb21tYW5kcyA9IHt9O1xuT2JqZWN0LmFzc2lnbihcbiAgY29tbWFuZHMsXG4gIGdlbmVyYWxDbWRzLFxuICBleGVjdXRlQ21kcyxcbiAgc2VydmljZXNDbWRzLFxuICBpZGxpbmdSZXNvdXJjZXNDbWRzLFxuICAvLyBhZGQgb3RoZXIgY29tbWFuZCB0eXBlcyBoZXJlXG4pO1xuXG5leHBvcnQgZGVmYXVsdCBjb21tYW5kcztcbiJdLCJmaWxlIjoibGliL2NvbW1hbmRzL2luZGV4LmpzIiwic291cmNlUm9vdCI6Ii4uLy4uLy4uIn0=
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = exports.commands = void 0;
|
|
7
|
+
|
|
8
|
+
require("source-map-support/register");
|
|
9
|
+
|
|
10
|
+
var _utils = require("../utils");
|
|
11
|
+
|
|
12
|
+
const commands = {};
|
|
13
|
+
exports.commands = commands;
|
|
14
|
+
|
|
15
|
+
commands.mobileStartService = async function mobileStartService(opts = {}) {
|
|
16
|
+
return await this.espresso.jwproxy.command('/appium/execute_mobile/start_service', 'POST', (0, _utils.requireOptions)(opts, ['intent']));
|
|
17
|
+
};
|
|
18
|
+
|
|
19
|
+
commands.mobileStopService = async function mobileStopService(opts = {}) {
|
|
20
|
+
return await this.espresso.jwproxy.command('/appium/execute_mobile/stop_service', 'POST', (0, _utils.requireOptions)(opts, ['intent']));
|
|
21
|
+
};
|
|
22
|
+
|
|
23
|
+
var _default = commands;
|
|
24
|
+
exports.default = _default;require('source-map-support').install();
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImxpYi9jb21tYW5kcy9zZXJ2aWNlcy5qcyJdLCJuYW1lcyI6WyJjb21tYW5kcyIsIm1vYmlsZVN0YXJ0U2VydmljZSIsIm9wdHMiLCJlc3ByZXNzbyIsImp3cHJveHkiLCJjb21tYW5kIiwibW9iaWxlU3RvcFNlcnZpY2UiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFBOztBQUVBLE1BQU1BLFFBQVEsR0FBRyxFQUFqQjs7O0FBb0JBQSxRQUFRLENBQUNDLGtCQUFULEdBQThCLGVBQWVBLGtCQUFmLENBQW1DQyxJQUFJLEdBQUcsRUFBMUMsRUFBOEM7QUFDMUUsU0FBTyxNQUFNLEtBQUtDLFFBQUwsQ0FBY0MsT0FBZCxDQUFzQkMsT0FBdEIsQ0FBOEIsc0NBQTlCLEVBQXNFLE1BQXRFLEVBQ1gsMkJBQWVILElBQWYsRUFBcUIsQ0FBQyxRQUFELENBQXJCLENBRFcsQ0FBYjtBQUVELENBSEQ7O0FBb0JBRixRQUFRLENBQUNNLGlCQUFULEdBQTZCLGVBQWVBLGlCQUFmLENBQWtDSixJQUFJLEdBQUcsRUFBekMsRUFBNkM7QUFDeEUsU0FBTyxNQUFNLEtBQUtDLFFBQUwsQ0FBY0MsT0FBZCxDQUFzQkMsT0FBdEIsQ0FBOEIscUNBQTlCLEVBQXFFLE1BQXJFLEVBQ1gsMkJBQWVILElBQWYsRUFBcUIsQ0FBQyxRQUFELENBQXJCLENBRFcsQ0FBYjtBQUVELENBSEQ7O2VBT2VGLFEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyByZXF1aXJlT3B0aW9ucyB9IGZyb20gJy4uL3V0aWxzJztcblxuY29uc3QgY29tbWFuZHMgPSB7fTtcblxuXG4vKipcbiAqIEB0eXBlZGVmIHtPYmplY3R9IFN0YXJ0U2VydmljZU9wdGlvbnNcbiAqIEBwcm9wZXJ0eSB7IXN0cmluZ30gaW50ZW50IC0gVGhlIG5hbWUgb2YgdGhlIHNlcnZpY2UgaW50ZW50IHRvIHN0YXJ0LCBmb3IgZXhhbXBsZVxuICogYGNvbS5zb21lLnBhY2thZ2UubmFtZS8uWW91clNlcnZpY2VTdWJDbGFzc05hbWVgLiBUaGlzIG9wdGlvbiBpcyBtYW5kYXRvcnkuXG4gKiAhISEgT25seSBzZXJ2aWNlcyBpbiB0aGUgYXBwJ3MgdW5kZXIgdGVzdCBzY29wZSBjb3VsZCBiZSBzdGFydGVkLlxuICogQHByb3BlcnR5IHtib29sZWFufSBmb3JlZ3JvdW5kIFtmYWxzZV0gLSBTZXQgaXQgdG8gYHRydWVgIGlmIHlvdXIgc2VydmljZSBtdXN0IGJlXG4gKiBzdGFydGVkIGFzIGZvcmVncm91bmQgc2VydmljZS5cbiAqL1xuXG4vKipcbiAqIFN0YXJ0cyB0aGUgZ2l2ZW4gc2VydmljZSBpbnRlbnQuXG4gKlxuICogQHBhcmFtIHtTdGFydFNlcnZpY2VPcHRpb25zfSBvcHRzXG4gKiBAcmV0dXJucyB7c3RyaW5nfSBUaGUgZnVsbCBjb21wb25lbnQgbmFtZVxuICogQHRocm93cyB7RXJyb3J9IElmIHRoZXJlIHdhcyBhIGZhaWx1cmUgd2hpbGUgc3RhcnRpbmcgdGhlIHNlcnZpY2VcbiAqIG9yIHJlcXVpcmVkIG9wdGlvbnMgYXJlIG1pc3NpbmdcbiAqL1xuY29tbWFuZHMubW9iaWxlU3RhcnRTZXJ2aWNlID0gYXN5bmMgZnVuY3Rpb24gbW9iaWxlU3RhcnRTZXJ2aWNlIChvcHRzID0ge30pIHtcbiAgcmV0dXJuIGF3YWl0IHRoaXMuZXNwcmVzc28uandwcm94eS5jb21tYW5kKCcvYXBwaXVtL2V4ZWN1dGVfbW9iaWxlL3N0YXJ0X3NlcnZpY2UnLCAnUE9TVCcsXG4gICAgcmVxdWlyZU9wdGlvbnMob3B0cywgWydpbnRlbnQnXSkpO1xufTtcblxuLyoqXG4gKiBAdHlwZWRlZiB7T2JqZWN0fSBTdG9wU2VydmljZU9wdGlvbnNcbiAqIEBwcm9wZXJ0eSB7IXN0cmluZ30gaW50ZW50IC0gVGhlIG5hbWUgb2YgdGhlIHNlcnZpY2UgaW50ZW50IHRvIHN0b3AsIGZvciBleGFtcGxlXG4gKiBgY29tLnNvbWUucGFja2FnZS5uYW1lLy5Zb3VyU2VydmljZVN1YkNsYXNzTmFtZWAuIFRoaXMgb3B0aW9uIGlzIG1hbmRhdG9yeS5cbiAqICEhISBPbmx5IHNlcnZpY2VzIGluIHRoZSBhcHAncyB1bmRlciB0ZXN0IHNjb3BlIGNvdWxkIGJlIHN0b3BwZWQuXG4gKi9cblxuLyoqXG4gKiBTdG9wcyB0aGUgZ2l2ZW4gc2VydmljZSBpbnRlbnQuXG4gKlxuICogQHBhcmFtIHtTdG9wU2VydmljZU9wdGlvbnN9IG9wdHNcbiAqIEByZXR1cm5zIHtzdHJpbmd9IGB0cnVlYCBpZiB0aGUgc2VydmljZSBoYXMgYmVlbiBzdWNjZXNzZnVsbHkgc3RvcHBlZFxuICogQHRocm93cyB7RXJyb3J9IElmIHRoZXJlIHdhcyBhIGZhaWx1cmUgd2hpbGUgc3RvcHBpbmcgdGhlIHNlcnZpY2VcbiAqIG9yIHJlcXVpcmVkIG9wdGlvbnMgYXJlIG1pc3NpbmdcbiAqL1xuY29tbWFuZHMubW9iaWxlU3RvcFNlcnZpY2UgPSBhc3luYyBmdW5jdGlvbiBtb2JpbGVTdG9wU2VydmljZSAob3B0cyA9IHt9KSB7XG4gIHJldHVybiBhd2FpdCB0aGlzLmVzcHJlc3NvLmp3cHJveHkuY29tbWFuZCgnL2FwcGl1bS9leGVjdXRlX21vYmlsZS9zdG9wX3NlcnZpY2UnLCAnUE9TVCcsXG4gICAgcmVxdWlyZU9wdGlvbnMob3B0cywgWydpbnRlbnQnXSkpO1xufTtcblxuXG5leHBvcnQgeyBjb21tYW5kcyB9O1xuZXhwb3J0IGRlZmF1bHQgY29tbWFuZHM7XG4iXSwiZmlsZSI6ImxpYi9jb21tYW5kcy9zZXJ2aWNlcy5qcyIsInNvdXJjZVJvb3QiOiIuLi8uLi8uLiJ9
|