ff-automationv2 2.2.22 → 2.2.24
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/dist/ai/llmcalls/decodeApiKey.js +4 -1
- package/dist/ai/llmcalls/llmAction.js +27 -20
- package/dist/ai/llmcalls/parseLlmOputput.js +5 -1
- package/dist/ai/llmprompts/llmPromptTypes/systemPromptTypes.js +2 -1
- package/dist/ai/llmprompts/promptRegistry.js +38 -35
- package/dist/ai/llmprompts/systemPrompts/actionExtractorPrompt.js +4 -1
- package/dist/ai/llmprompts/systemPrompts/combinedActionExtractorPrompt.js +4 -1
- package/dist/ai/llmprompts/systemPrompts/combinedActionExtractorPromptMob.js +4 -1
- package/dist/ai/llmprompts/systemPrompts/errorDescriptionPrompt.js +4 -1
- package/dist/ai/llmprompts/systemPrompts/fireflinkElementIndexExtactors.js +4 -1
- package/dist/ai/llmprompts/systemPrompts/fireflinkElementIndexExtractor_Mob.js +4 -1
- package/dist/ai/llmprompts/systemPrompts/getActionExtractorPrompt.js +4 -1
- package/dist/ai/llmprompts/systemPrompts/getActionExtractorPromptMob.js +4 -1
- package/dist/ai/llmprompts/systemPrompts/mobileKeywordExtractor.js +4 -1
- package/dist/ai/llmprompts/systemPrompts/userStoryToListPrompt.js +6 -2
- package/dist/ai/llmprompts/systemPrompts/verifyActionExtractorPrompt.js +4 -1
- package/dist/ai/llmprompts/systemPrompts/verifyActionExtractorPromptMob.js +4 -1
- package/dist/ai/llmprompts/systemPrompts/visionPrompt.js +4 -1
- package/dist/ai/llmprompts/systemPrompts/visionPromptMobile.js +4 -1
- package/dist/ai/llmprompts/systemPrompts/waitActionExtractorPrompt.js +4 -1
- package/dist/ai/llmprompts/systemPrompts/waitActionExtractorPromptMob.js +4 -1
- package/dist/ai/llmprompts/userPrompts/userPrompt.js +16 -13
- package/dist/automation/actions/executor.js +1064 -1060
- package/dist/automation/actions/interaction/alert/clickCancelOnAlertPopup.js +4 -1
- package/dist/automation/actions/interaction/alert/clickOkOnAlertPopup.js +4 -1
- package/dist/automation/actions/interaction/alert/enterDataToAlert.js +4 -1
- package/dist/automation/actions/interaction/alert/getTextPresentOnAlertPopup.js +4 -1
- package/dist/automation/actions/interaction/alert/verifyAlertPopUpMessageContainsString.js +4 -1
- package/dist/automation/actions/interaction/alert/verifyAlertPopupIsDisplayed.js +4 -1
- package/dist/automation/actions/interaction/alert/verifyTextPresentOnAlertPopup.js +4 -1
- package/dist/automation/actions/interaction/alert/waitTillAlertIsPresent.js +4 -1
- package/dist/automation/actions/interaction/clear/clear.js +4 -1
- package/dist/automation/actions/interaction/clear/clearAndEnter.js +4 -1
- package/dist/automation/actions/interaction/click/MOB_DoubleTapAtSpecifiedLocation.js +4 -1
- package/dist/automation/actions/interaction/click/click.js +4 -1
- package/dist/automation/actions/interaction/click/clickNtimes.js +4 -1
- package/dist/automation/actions/interaction/click/clickUsingJs.js +4 -1
- package/dist/automation/actions/interaction/click/doubleClick.js +4 -1
- package/dist/automation/actions/interaction/click/rightClick.js +4 -1
- package/dist/automation/actions/interaction/click/tapOnSpecifiedLocation.js +5 -1
- package/dist/automation/actions/interaction/click/waitAndClick.js +7 -4
- package/dist/automation/actions/interaction/dragAndDrop/dragAndDrop.js +4 -1
- package/dist/automation/actions/interaction/elementLessAction/MobCheckIfAppIsClosed.js +4 -1
- package/dist/automation/actions/interaction/elementLessAction/MobRunAppInBackgroundInterface.js +4 -1
- package/dist/automation/actions/interaction/elementlessActions/activateAppUsingAppPackage.js +4 -1
- package/dist/automation/actions/interaction/elementlessActions/installAPK.js +14 -8
- package/dist/automation/actions/interaction/elementlessActions/isAppInstalled.js +8 -5
- package/dist/automation/actions/interaction/elementlessActions/openAppWithApkFilePath.js +18 -12
- package/dist/automation/actions/interaction/elementlessActions/openMobileApplication.js +4 -1
- package/dist/automation/actions/interaction/elementlessActions/receiveMessageOnEmulator.js +6 -3
- package/dist/automation/actions/interaction/elementlessActions/terminateAppUsingAppPackage.js +6 -3
- package/dist/automation/actions/interaction/elementlessActions/uninstallAPK.js +9 -6
- package/dist/automation/actions/interaction/enterActions/EnterInputIntoElementFromClipBoardInterface_mob.js +6 -3
- package/dist/automation/actions/interaction/enterActions/enterInput.js +41 -5
- package/dist/automation/actions/interaction/enterActions/enterInputAndPress.js +7 -4
- package/dist/automation/actions/interaction/enterActions/enterUrl.js +4 -1
- package/dist/automation/actions/interaction/enterActions/enterusingJs.js +8 -5
- package/dist/automation/actions/interaction/enterActions/waitAndEnter.js +7 -4
- package/dist/automation/actions/interaction/find/MOB_FindElement.js +4 -1
- package/dist/automation/actions/interaction/find/findElements.js +4 -1
- package/dist/automation/actions/interaction/get/MOB_GetADBLogsForGivenAppPackage.js +5 -1
- package/dist/automation/actions/interaction/get/MOB_GetAllContexts.js +5 -1
- package/dist/automation/actions/interaction/get/MOB_GetAllWindowHandles.js +5 -1
- package/dist/automation/actions/interaction/get/MOB_GetAltitude.js +5 -1
- package/dist/automation/actions/interaction/get/MOB_GetBatteryPercentage.js +5 -1
- package/dist/automation/actions/interaction/get/MOB_GetBatteryStatus.js +5 -1
- package/dist/automation/actions/interaction/get/MOB_GetClipBoardText.js +5 -1
- package/dist/automation/actions/interaction/get/MOB_GetCurrentActivity.js +5 -1
- package/dist/automation/actions/interaction/get/MOB_GetCurrentAppPackage.js +5 -1
- package/dist/automation/actions/interaction/get/MOB_GetCurrentContext.js +5 -1
- package/dist/automation/actions/interaction/get/MOB_GetCurrentDeviceDate.js +5 -1
- package/dist/automation/actions/interaction/get/MOB_GetCurrentDeviceSettings.js +5 -1
- package/dist/automation/actions/interaction/get/MOB_GetCurrentDeviceStatus.js +5 -1
- package/dist/automation/actions/interaction/get/MOB_GetCurrentDeviceSystemBars.js +5 -1
- package/dist/automation/actions/interaction/get/MOB_GetCurrentDeviceTime.js +5 -1
- package/dist/automation/actions/interaction/get/MOB_GetCurrentOrientation.js +5 -1
- package/dist/automation/actions/interaction/get/MOB_GetCurrentSessionId.js +5 -1
- package/dist/automation/actions/interaction/get/MOB_GetDeviceLocation.js +5 -1
- package/dist/automation/actions/interaction/get/MOB_GetDeviceName.js +5 -1
- package/dist/automation/actions/interaction/get/MOB_GetDeviceOsVersion.js +5 -1
- package/dist/automation/actions/interaction/get/MOB_GetDeviceUdid.js +5 -1
- package/dist/automation/actions/interaction/get/MOB_GetHeightOfElement.js +5 -1
- package/dist/automation/actions/interaction/get/MOB_GetHeightOfScreen.js +5 -1
- package/dist/automation/actions/interaction/get/MOB_GetHourFromCurrentDeviceTime.js +5 -1
- package/dist/automation/actions/interaction/get/MOB_GetLatitude.js +5 -1
- package/dist/automation/actions/interaction/get/MOB_GetLongitude.js +5 -1
- package/dist/automation/actions/interaction/get/MOB_GetMinuteFromCurrentDeviceTime.js +5 -1
- package/dist/automation/actions/interaction/get/MOB_GetSecondFromCurrentDeviceTime.js +5 -1
- package/dist/automation/actions/interaction/get/MOB_GetSizeOfScreen.js +5 -1
- package/dist/automation/actions/interaction/get/MOB_GetSupportedPerformanceDataTypes.js +5 -1
- package/dist/automation/actions/interaction/get/MOB_GetTextFromElementAndSetToClipBoard.js +5 -1
- package/dist/automation/actions/interaction/get/MOB_GetWidthOfElement.js +5 -1
- package/dist/automation/actions/interaction/get/MOB_GetWidthOfScreen.js +5 -1
- package/dist/automation/actions/interaction/get/browserWindowGetPosition.js +5 -1
- package/dist/automation/actions/interaction/get/getAllBrokenImages.js +5 -1
- package/dist/automation/actions/interaction/get/getAllBrokenLinkCount.js +5 -1
- package/dist/automation/actions/interaction/get/getAllBrokenLinks.js +5 -1
- package/dist/automation/actions/interaction/get/getAllConsoleErrors.js +5 -1
- package/dist/automation/actions/interaction/get/getAllConsoleInformation.js +5 -1
- package/dist/automation/actions/interaction/get/getAllConsoleLogs.js +5 -1
- package/dist/automation/actions/interaction/get/getAllConsoleWarnings.js +5 -1
- package/dist/automation/actions/interaction/get/getAllCookieNames.js +5 -1
- package/dist/automation/actions/interaction/get/getAllCookieValues.js +5 -1
- package/dist/automation/actions/interaction/get/getAllSelectedOptions.js +5 -1
- package/dist/automation/actions/interaction/get/getAllTheOptionsFromListBoxAsText.js +5 -1
- package/dist/automation/actions/interaction/get/getAllTheOptionsFromListBoxAsTextInSortedOrder.js +5 -1
- package/dist/automation/actions/interaction/get/getAllTheSelectedOptionsFromListBoxAsText.js +5 -1
- package/dist/automation/actions/interaction/get/getAllWindowHandles.js +5 -1
- package/dist/automation/actions/interaction/get/getAttribute.js +7 -4
- package/dist/automation/actions/interaction/get/getAudioCurrentPlaybackRate.js +5 -1
- package/dist/automation/actions/interaction/get/getAudioCurrentSeekTime.js +5 -1
- package/dist/automation/actions/interaction/get/getAudioCurrentVolume.js +5 -1
- package/dist/automation/actions/interaction/get/getAudioDecodedByte.js +5 -1
- package/dist/automation/actions/interaction/get/getAudioDefaultPlaybackRate.js +5 -1
- package/dist/automation/actions/interaction/get/getAudioDimension.js +5 -1
- package/dist/automation/actions/interaction/get/getAudioHeight.js +5 -1
- package/dist/automation/actions/interaction/get/getAudioMediaLength.js +5 -1
- package/dist/automation/actions/interaction/get/getAudioMediaSource.js +5 -1
- package/dist/automation/actions/interaction/get/getAudioWidth.js +5 -1
- package/dist/automation/actions/interaction/get/getBestPracticesScore.js +5 -1
- package/dist/automation/actions/interaction/get/getBrowserCount.js +5 -1
- package/dist/automation/actions/interaction/get/getBrowserVersion.js +5 -1
- package/dist/automation/actions/interaction/get/getCapabilityNames.js +5 -1
- package/dist/automation/actions/interaction/get/getClipBoardText.js +5 -1
- package/dist/automation/actions/interaction/get/getCollectiveApiResponseTime.js +5 -1
- package/dist/automation/actions/interaction/get/getCollectiveApiStatusCode.js +5 -1
- package/dist/automation/actions/interaction/get/getCssValue.js +5 -1
- package/dist/automation/actions/interaction/get/getCurrentDayOfTheWeek.js +5 -1
- package/dist/automation/actions/interaction/get/getCurrentSecondsFromCurrentSystemTime.js +5 -1
- package/dist/automation/actions/interaction/get/getCurrentSystemDate.js +5 -1
- package/dist/automation/actions/interaction/get/getCurrentSystemDay.js +5 -1
- package/dist/automation/actions/interaction/get/getCurrentSystemMonth.js +5 -1
- package/dist/automation/actions/interaction/get/getCurrentSystemTime.js +5 -1
- package/dist/automation/actions/interaction/get/getCurrentSystemYear.js +5 -1
- package/dist/automation/actions/interaction/get/getCurrentWindowHandle.js +5 -1
- package/dist/automation/actions/interaction/get/getDataFromApiRequestHeaderForJsonPath.js +5 -1
- package/dist/automation/actions/interaction/get/getDataFromApiResponseForJsonPath.js +5 -1
- package/dist/automation/actions/interaction/get/getDateWithGivenFormat.js +5 -1
- package/dist/automation/actions/interaction/get/getDriverInstance.js +5 -1
- package/dist/automation/actions/interaction/get/getFirstContentfulPaint.js +5 -1
- package/dist/automation/actions/interaction/get/getFirstSelectedOption.js +5 -1
- package/dist/automation/actions/interaction/get/getFullPaintTime.js +5 -1
- package/dist/automation/actions/interaction/get/getHTMLCodeOfPage.js +5 -1
- package/dist/automation/actions/interaction/get/getHeightOfBrowserWindow.js +5 -1
- package/dist/automation/actions/interaction/get/getHeightOfWebElement.js +5 -1
- package/dist/automation/actions/interaction/get/getHourFromCurrentSystemTime.js +5 -1
- package/dist/automation/actions/interaction/get/getImplicitTimeOut.js +5 -1
- package/dist/automation/actions/interaction/get/getLargestContentfulPaint.js +5 -1
- package/dist/automation/actions/interaction/get/getListBoxSize.js +6 -3
- package/dist/automation/actions/interaction/get/getListOfElementsFromLocatorTypeLocatorValue.js +7 -3
- package/dist/automation/actions/interaction/get/getLocation.js +8 -4
- package/dist/automation/actions/interaction/get/getMinuteFromCurrentSystemTime.js +5 -1
- package/dist/automation/actions/interaction/get/getNetworkRouteTime.js +5 -1
- package/dist/automation/actions/interaction/get/getNumberOfBrokenImages.js +5 -1
- package/dist/automation/actions/interaction/get/getNumberOfLinksPresentInCurrentPage.js +5 -1
- package/dist/automation/actions/interaction/get/getNumberOfWorkingLinksFromCurrentPage.js +5 -1
- package/dist/automation/actions/interaction/get/getOptions.js +5 -1
- package/dist/automation/actions/interaction/get/getPageTitle.js +5 -1
- package/dist/automation/actions/interaction/get/getPerformanceMetrics.js +5 -1
- package/dist/automation/actions/interaction/get/getPwaScore.js +5 -1
- package/dist/automation/actions/interaction/get/getRect.js +8 -4
- package/dist/automation/actions/interaction/get/getScreenshot.js +5 -1
- package/dist/automation/actions/interaction/get/getScreenshotAs.js +5 -1
- package/dist/automation/actions/interaction/get/getSeoScore.js +5 -1
- package/dist/automation/actions/interaction/get/getSingleApiRequestPayload.js +5 -1
- package/dist/automation/actions/interaction/get/getSingleApiResponse.js +5 -1
- package/dist/automation/actions/interaction/get/getSingleApiResponseTime.js +5 -1
- package/dist/automation/actions/interaction/get/getSingleApiStatusCode.js +5 -1
- package/dist/automation/actions/interaction/get/getSize.js +7 -3
- package/dist/automation/actions/interaction/get/getSizeOfBrowserWindow.js +5 -1
- package/dist/automation/actions/interaction/get/getStringDataFromLocalFile.js +11 -4
- package/dist/automation/actions/interaction/get/getSystemProperty.js +14 -7
- package/dist/automation/actions/interaction/get/getTagName.js +4 -1
- package/dist/automation/actions/interaction/get/getText.js +8 -4
- package/dist/automation/actions/interaction/get/getTheFirstSelectedOptionFromListBoxAsText.js +5 -1
- package/dist/automation/actions/interaction/get/getTotalNumberOfCookies.js +5 -1
- package/dist/automation/actions/interaction/get/getTunnelIdentifier.js +5 -1
- package/dist/automation/actions/interaction/get/getURLPresentInAddressBar.js +5 -1
- package/dist/automation/actions/interaction/get/getUserHomeDirectory.js +5 -1
- package/dist/automation/actions/interaction/get/getValueByCookieName.js +5 -1
- package/dist/automation/actions/interaction/get/getValueFromLocalStorage.js +5 -1
- package/dist/automation/actions/interaction/get/getValueOfSystemVariable.js +5 -1
- package/dist/automation/actions/interaction/get/getVideoCurrentPlaybackRate.js +5 -1
- package/dist/automation/actions/interaction/get/getVideoCurrentSeekTime.js +5 -1
- package/dist/automation/actions/interaction/get/getVideoCurrentVolume.js +5 -1
- package/dist/automation/actions/interaction/get/getVideoDecodedByte.js +5 -1
- package/dist/automation/actions/interaction/get/getVideoDefaultPlaybackRate.js +5 -1
- package/dist/automation/actions/interaction/get/getVideoDimension.js +5 -1
- package/dist/automation/actions/interaction/get/getVideoHeight.js +5 -1
- package/dist/automation/actions/interaction/get/getVideoMediaLength.js +5 -1
- package/dist/automation/actions/interaction/get/getVideoMediaSource.js +5 -1
- package/dist/automation/actions/interaction/get/getVideoWidth.js +5 -1
- package/dist/automation/actions/interaction/get/getWidthOfBrowser.js +5 -1
- package/dist/automation/actions/interaction/get/getWidthOfWebElement.js +5 -1
- package/dist/automation/actions/interaction/get/getWorkingLinksFromCurrentPage.js +5 -1
- package/dist/automation/actions/interaction/get/getWrappedElement.js +5 -1
- package/dist/automation/actions/interaction/get/getWrappedOptionFromListBoxAsText.js +6 -3
- package/dist/automation/actions/interaction/get/getXLocationOfBrowserWindow.js +5 -1
- package/dist/automation/actions/interaction/get/getXLocationOfWebElement.js +8 -4
- package/dist/automation/actions/interaction/get/getYLocationOfBrowserWindow.js +5 -1
- package/dist/automation/actions/interaction/get/getYLocationOfWebElement.js +7 -3
- package/dist/automation/actions/interaction/iframe/switchToDefaultContent.js +4 -1
- package/dist/automation/actions/interaction/inputlessActions/AirplaneModeSwitchOff.js +9 -6
- package/dist/automation/actions/interaction/inputlessActions/AirplaneModeSwitchOn.js +9 -6
- package/dist/automation/actions/interaction/inputlessActions/Break.js +4 -1
- package/dist/automation/actions/interaction/inputlessActions/Continue.js +4 -1
- package/dist/automation/actions/interaction/inputlessActions/GpsSwitchOff.js +4 -1
- package/dist/automation/actions/interaction/inputlessActions/GpsSwitchOn.js +4 -1
- package/dist/automation/actions/interaction/inputlessActions/HideKeyboard.js +4 -1
- package/dist/automation/actions/interaction/inputlessActions/LockDevice.js +4 -1
- package/dist/automation/actions/interaction/inputlessActions/OpenChromeBrowser.js +4 -1
- package/dist/automation/actions/interaction/inputlessActions/OpenNotification.js +4 -1
- package/dist/automation/actions/interaction/inputlessActions/ResetApp.js +4 -1
- package/dist/automation/actions/interaction/inputlessActions/RestartCurrentDevice.js +9 -6
- package/dist/automation/actions/interaction/inputlessActions/SetDeviceOrientationAsLandscape.js +4 -1
- package/dist/automation/actions/interaction/inputlessActions/SetDeviceOrientationAsPortrait.js +4 -1
- package/dist/automation/actions/interaction/inputlessActions/SetEmulatorPowerStateOff.js +8 -5
- package/dist/automation/actions/interaction/inputlessActions/SetEmulatorPowerStateOn.js +8 -5
- package/dist/automation/actions/interaction/inputlessActions/WifiSwitchOff.js +4 -1
- package/dist/automation/actions/interaction/inputlessActions/WifiSwitchOn.js +4 -1
- package/dist/automation/actions/interaction/maximize/maximize.js +4 -1
- package/dist/automation/actions/interaction/maximize/minimize.js +4 -1
- package/dist/automation/actions/interaction/navigation/goBack.js +4 -1
- package/dist/automation/actions/interaction/navigation/navigate.js +4 -1
- package/dist/automation/actions/interaction/navigation/refresh.js +4 -1
- package/dist/automation/actions/interaction/pinch/PinchInByPercentMob.js +4 -1
- package/dist/automation/actions/interaction/pinch/PinchOutByPercentMob.js +4 -1
- package/dist/automation/actions/interaction/press/longPress.js +5 -1
- package/dist/automation/actions/interaction/press/mobPressBackKey.js +4 -1
- package/dist/automation/actions/interaction/press/mobPressBackSpaceKey.js +4 -1
- package/dist/automation/actions/interaction/press/mobPressSpaceKey.js +4 -1
- package/dist/automation/actions/interaction/press/pressAnyKey.js +4 -1
- package/dist/automation/actions/interaction/press/pressAnyKeyNTimes.js +4 -1
- package/dist/automation/actions/interaction/press/pressEnterKey.js +4 -1
- package/dist/automation/actions/interaction/press/pressHomeKey.js +8 -5
- package/dist/automation/actions/interaction/scroll/scrollHorizontallyTillElementIsVisible.js +4 -1
- package/dist/automation/actions/interaction/scroll/scrollPageToSpecificLocation.js +5 -1
- package/dist/automation/actions/interaction/scroll/scrollToElement.js +4 -1
- package/dist/automation/actions/interaction/scroll/scrollVerticallyTillElementIsVisible.js +4 -1
- package/dist/automation/actions/interaction/set/MOB_SetContext.js +5 -1
- package/dist/automation/actions/interaction/set/MOB_SetEmulatorPowerPercentage.js +5 -1
- package/dist/automation/actions/interaction/set/setClipBoardText.js +4 -1
- package/dist/automation/actions/interaction/shadowDom/shadowDomClick.js +7 -4
- package/dist/automation/actions/interaction/shadowDom/shadowDomEnter.js +7 -4
- package/dist/automation/actions/interaction/shadowDom/shadowDomGetText.js +7 -4
- package/dist/automation/actions/interaction/shadowDom/shadowDomUpload.js +7 -4
- package/dist/automation/actions/interaction/shadowDom/shadowDomVerifyPartialText.js +7 -4
- package/dist/automation/actions/interaction/shadowDom/shadowDomVerifyText.js +7 -4
- package/dist/automation/actions/interaction/swipe/swipeDirectionNTimes.js +6 -3
- package/dist/automation/actions/interaction/swipe/swipeDownToElement.js +8 -5
- package/dist/automation/actions/interaction/swipe/swipeLeftToElement.js +8 -5
- package/dist/automation/actions/interaction/swipe/swipeRightToElement.js +8 -5
- package/dist/automation/actions/interaction/swipe/swipeUpToElement.js +11 -8
- package/dist/automation/actions/interaction/swipe/swipeUpToElementForMWeb.js +8 -5
- package/dist/automation/actions/interaction/swipe/swipeUsingReferenceElement.js +19 -16
- package/dist/automation/actions/interaction/switch/switchToNewTabBasedOnTitle.js +4 -1
- package/dist/automation/actions/interaction/switch/switchToNewWindowBasedOnTitle.js +4 -1
- package/dist/automation/actions/interaction/switch/switchToParentWindow.js +4 -1
- package/dist/automation/actions/interaction/switch/switchToTabBasedOnUrl.js +4 -1
- package/dist/automation/actions/interaction/switch/switchToWindowBasedOnURL.js +4 -1
- package/dist/automation/actions/interaction/switch/switchToWindowIfTitleContainsString.js +4 -1
- package/dist/automation/actions/interaction/switch/switchToWindowIfUrlContainsString.js +4 -1
- package/dist/automation/actions/interaction/upload/uploadfile.js +6 -3
- package/dist/automation/actions/interaction/verify/MOB_VerifyBatteryLevel.js +5 -1
- package/dist/automation/actions/interaction/verify/MOB_VerifyIfAirplaneModeOff.js +5 -1
- package/dist/automation/actions/interaction/verify/MOB_VerifyIfAirplaneModeOn.js +5 -1
- package/dist/automation/actions/interaction/verify/MOB_VerifyIfAppIsClosed.js +5 -1
- package/dist/automation/actions/interaction/verify/MOB_VerifyIfDeviceIsLocked.js +5 -1
- package/dist/automation/actions/interaction/verify/MOB_VerifyIfDeviceIsUnlocked.js +5 -1
- package/dist/automation/actions/interaction/verify/MOB_VerifyIfGpsOff.js +5 -1
- package/dist/automation/actions/interaction/verify/MOB_VerifyIfGpsOn.js +5 -1
- package/dist/automation/actions/interaction/verify/MOB_VerifyIfKeyboardIsHidden.js +5 -1
- package/dist/automation/actions/interaction/verify/MOB_VerifyIfKeyboardIsShown.js +5 -1
- package/dist/automation/actions/interaction/verify/MOB_VerifyIfWifiOff.js +5 -1
- package/dist/automation/actions/interaction/verify/MOB_VerifyIfWifiOn.js +5 -1
- package/dist/automation/actions/interaction/verify/VerifyAccessibilityScore.js +4 -1
- package/dist/automation/actions/interaction/verify/VerifyAllBrokenImages.js +7 -4
- package/dist/automation/actions/interaction/verify/VerifyAllBrowserWindowsClosed.js +7 -4
- package/dist/automation/actions/interaction/verify/VerifyAllOptionsAreDeSelected.js +8 -5
- package/dist/automation/actions/interaction/verify/VerifyAllOptionsAreSelected.js +8 -5
- package/dist/automation/actions/interaction/verify/VerifyAttributeValue.js +7 -4
- package/dist/automation/actions/interaction/verify/VerifyBestPracticesScore.js +4 -1
- package/dist/automation/actions/interaction/verify/VerifyBrowserHtmlCodeContainsString.js +6 -3
- package/dist/automation/actions/interaction/verify/VerifyBrowserWindowHeight.js +6 -3
- package/dist/automation/actions/interaction/verify/VerifyBrowserWindowTitleContainsString.js +9 -6
- package/dist/automation/actions/interaction/verify/VerifyBrowserWindowTitleIsString.js +8 -5
- package/dist/automation/actions/interaction/verify/VerifyBrowserWindowUrlContainsExpectedUrl.js +8 -5
- package/dist/automation/actions/interaction/verify/VerifyBrowserWindowUrlIsString.js +8 -5
- package/dist/automation/actions/interaction/verify/VerifyBrowserWindowWidth.js +6 -3
- package/dist/automation/actions/interaction/verify/VerifyBrowserWindowXLocation.js +6 -3
- package/dist/automation/actions/interaction/verify/VerifyBrowserWindowYLocation.js +6 -3
- package/dist/automation/actions/interaction/verify/VerifyCheckBoxIsNotSelected.js +6 -3
- package/dist/automation/actions/interaction/verify/VerifyCheckBoxIsSelected.js +6 -3
- package/dist/automation/actions/interaction/verify/VerifyCssAttributeValue.js +6 -3
- package/dist/automation/actions/interaction/verify/VerifyElementIsClickable.js +6 -3
- package/dist/automation/actions/interaction/verify/VerifyElementIsDisabled.js +9 -6
- package/dist/automation/actions/interaction/verify/VerifyElementIsDisplayed.js +8 -5
- package/dist/automation/actions/interaction/verify/VerifyElementIsEnabled.js +9 -6
- package/dist/automation/actions/interaction/verify/VerifyElementIsNotDisplayed.js +7 -4
- package/dist/automation/actions/interaction/verify/VerifyElementIsSelected.js +9 -6
- package/dist/automation/actions/interaction/verify/VerifyElementNotContainsText.js +4 -1
- package/dist/automation/actions/interaction/verify/VerifyHeightOfWebElement.js +8 -5
- package/dist/automation/actions/interaction/verify/VerifyHexCodeForGivenXYCoordinates.js +4 -1
- package/dist/automation/actions/interaction/verify/VerifyIfAllCookiesAreDeleted.js +7 -4
- package/dist/automation/actions/interaction/verify/VerifyIfAudioEnded.js +6 -3
- package/dist/automation/actions/interaction/verify/VerifyIfAudioIsMuted.js +6 -3
- package/dist/automation/actions/interaction/verify/VerifyIfAudioIsPaused.js +6 -3
- package/dist/automation/actions/interaction/verify/VerifyIfAudioIsPlaying.js +7 -4
- package/dist/automation/actions/interaction/verify/VerifyIfBrowserWindowIsClosed.js +7 -4
- package/dist/automation/actions/interaction/verify/VerifyIfCookieNameIsAdded.js +7 -4
- package/dist/automation/actions/interaction/verify/VerifyIfCookieNameIsDeleted.js +6 -3
- package/dist/automation/actions/interaction/verify/VerifyIfCookieObjectIsPresent.js +7 -4
- package/dist/automation/actions/interaction/verify/VerifyIfGivenOptionIsDuplicate.js +6 -3
- package/dist/automation/actions/interaction/verify/VerifyIfImageIsBroken.js +7 -4
- package/dist/automation/actions/interaction/verify/VerifyIfLinkIsBroken.js +7 -4
- package/dist/automation/actions/interaction/verify/VerifyIfLinkIsWorking.js +6 -3
- package/dist/automation/actions/interaction/verify/VerifyIfLinksAreBroken.js +7 -4
- package/dist/automation/actions/interaction/verify/VerifyIfLinksAreWorking.js +6 -3
- package/dist/automation/actions/interaction/verify/VerifyIfOptionWithIndexIsDeselectedInElement.js +8 -5
- package/dist/automation/actions/interaction/verify/VerifyIfOptionWithIndexIsSelectedInListBox.js +10 -7
- package/dist/automation/actions/interaction/verify/VerifyIfOptionWithTextIsDeselected.js +4 -1
- package/dist/automation/actions/interaction/verify/VerifyIfOptionWithValueIsDeselected.js +6 -3
- package/dist/automation/actions/interaction/verify/VerifyIfOptionWithValueIsSelected.js +6 -3
- package/dist/automation/actions/interaction/verify/VerifyIfOptionWithVisibleTextIsSelected.js +4 -1
- package/dist/automation/actions/interaction/verify/VerifyIfSpecifiedOptionIsSelected.js +6 -3
- package/dist/automation/actions/interaction/verify/VerifyIfStatusCodeOfALinkIsStatusCode.js +4 -1
- package/dist/automation/actions/interaction/verify/VerifyIfStatusCodesOfLinks.js +4 -1
- package/dist/automation/actions/interaction/verify/VerifyIfVideoEnded.js +6 -3
- package/dist/automation/actions/interaction/verify/VerifyIfVideoIsMuted.js +6 -3
- package/dist/automation/actions/interaction/verify/VerifyIfVideoIsPaused.js +6 -3
- package/dist/automation/actions/interaction/verify/VerifyIfVideoIsPlaying.js +6 -3
- package/dist/automation/actions/interaction/verify/VerifyIfVideoPlayingInMute.js +6 -3
- package/dist/automation/actions/interaction/verify/VerifyIfVideoPlayingInUnmute.js +6 -3
- package/dist/automation/actions/interaction/verify/VerifyIfXAndYCoordinateOfElement.js +4 -1
- package/dist/automation/actions/interaction/verify/VerifyLinkNavigatesToTitle.js +4 -1
- package/dist/automation/actions/interaction/verify/VerifyListBoxOptionsAreSorted.js +8 -5
- package/dist/automation/actions/interaction/verify/VerifyNavigateURL.js +6 -3
- package/dist/automation/actions/interaction/verify/VerifyNumberOfElementsByTagName.js +6 -3
- package/dist/automation/actions/interaction/verify/VerifyNumberOfElementsByXpath.js +6 -3
- package/dist/automation/actions/interaction/verify/VerifyPartialAttributeValue.js +7 -4
- package/dist/automation/actions/interaction/verify/VerifyPartialTitleOfCurrentPage.js +6 -3
- package/dist/automation/actions/interaction/verify/VerifyPerformanceScore.js +4 -1
- package/dist/automation/actions/interaction/verify/VerifyPwaScore.js +4 -1
- package/dist/automation/actions/interaction/verify/VerifyRadioButtonIsNotSelected.js +6 -3
- package/dist/automation/actions/interaction/verify/VerifyRadioButtonIsSelected.js +6 -3
- package/dist/automation/actions/interaction/verify/VerifySeoScore.js +4 -1
- package/dist/automation/actions/interaction/verify/VerifyTagName.js +6 -3
- package/dist/automation/actions/interaction/verify/VerifyThatSpecifiedOptionIsNotSelected.js +6 -3
- package/dist/automation/actions/interaction/verify/VerifyTitleInAllPage.js +6 -3
- package/dist/automation/actions/interaction/verify/VerifyTitleOfCurrentPage.js +6 -3
- package/dist/automation/actions/interaction/verify/VerifyValueOfElementContainsString.js +6 -3
- package/dist/automation/actions/interaction/verify/VerifyValueOfElementIsCleared.js +6 -3
- package/dist/automation/actions/interaction/verify/VerifyValueOfElementIsString.js +6 -3
- package/dist/automation/actions/interaction/verify/VerifyWidthOfElement.js +7 -4
- package/dist/automation/actions/interaction/verify/VerifyXLocationOfElement.js +7 -4
- package/dist/automation/actions/interaction/verify/VerifyYLocationOfElement.js +7 -4
- package/dist/automation/actions/interaction/verify/checkIfElementIsDisplayed.js +7 -4
- package/dist/automation/actions/interaction/verify/verifypartialtext.js +8 -5
- package/dist/automation/actions/interaction/verify/verifytext.js +13 -10
- package/dist/automation/actions/interaction/wait/MOB_WaitTillAllElementsAreInvisible.ts.js +5 -1
- package/dist/automation/actions/interaction/wait/MOB_WaitTillAttributeOfElementContainsString.js +5 -1
- package/dist/automation/actions/interaction/wait/MOB_WaitTillElementIsEnabled.js +5 -1
- package/dist/automation/actions/interaction/wait/MOB_WaitTillElementIsInvisible.js +5 -1
- package/dist/automation/actions/interaction/wait/MOB_WaitTillElementIsSelected.js +5 -1
- package/dist/automation/actions/interaction/wait/MOB_WaitTillElementIsVisible.js +5 -1
- package/dist/automation/actions/interaction/wait/MOB_WaitTillStalenessOfElement.js +5 -1
- package/dist/automation/actions/interaction/wait/wait.js +4 -1
- package/dist/automation/actions/interaction/wait/waitTillAttributeOfElementIsString.js +4 -1
- package/dist/automation/actions/interaction/wait/waitTillElementContainsText.js +4 -1
- package/dist/automation/actions/interaction/wait/waitTillElementHasText.js +4 -1
- package/dist/automation/actions/interaction/wait/waitTillElementIsClickable.js +4 -1
- package/dist/automation/actions/interaction/wait/waitTillPresenceOfAllElements.js +6 -3
- package/dist/automation/actions/interaction/wait/waitTillPresenceOfElement.js +4 -1
- package/dist/automation/actions/interface/IframeInterface.js +2 -1
- package/dist/automation/actions/interface/InputlessActionnterface.js +2 -1
- package/dist/automation/actions/interface/alertActionInterface.js +2 -1
- package/dist/automation/actions/interface/clearActionInterface.js +2 -1
- package/dist/automation/actions/interface/clickActionInterface.js +2 -1
- package/dist/automation/actions/interface/dragAndDropToElementInterface.js +2 -1
- package/dist/automation/actions/interface/elelementLessActionInterface.js +2 -1
- package/dist/automation/actions/interface/elementlessInterface.js +2 -1
- package/dist/automation/actions/interface/findActionInterface.js +2 -1
- package/dist/automation/actions/interface/getActionInterface.js +2 -1
- package/dist/automation/actions/interface/interactionActionInterface.js +2 -1
- package/dist/automation/actions/interface/maximizeAndMinimizeInterface.js +2 -1
- package/dist/automation/actions/interface/navigationActionInterface.js +2 -1
- package/dist/automation/actions/interface/pinchActionInterface.js +2 -1
- package/dist/automation/actions/interface/pressActionInterface.js +2 -1
- package/dist/automation/actions/interface/scrollActionInterface.js +2 -1
- package/dist/automation/actions/interface/setActionInterface.js +2 -1
- package/dist/automation/actions/interface/shadowDomInterface.js +2 -1
- package/dist/automation/actions/interface/swipeActionInterface.js +2 -1
- package/dist/automation/actions/interface/switchingActionInterface.js +2 -1
- package/dist/automation/actions/interface/uploadFile.js +2 -1
- package/dist/automation/actions/interface/verifyActionInterface.js +2 -1
- package/dist/automation/actions/interface/waitActionInterface.js +2 -1
- package/dist/automation/browserSession/initiateBrowserSession.js +11 -7
- package/dist/automation/cloudSession/initiateCloudSession.js +11 -7
- package/dist/automation/mobileSession/initiateMobileSession.js +14 -10
- package/dist/core/constants/allAction.js +4 -1
- package/dist/core/constants/defaultValues.js +4 -1
- package/dist/core/constants/supportedActions.js +5 -2
- package/dist/core/interfaces/StableDomInterface.js +2 -1
- package/dist/core/interfaces/actionInterface.js +2 -1
- package/dist/core/interfaces/automationRunnerInterface.js +2 -1
- package/dist/core/interfaces/browserCapabilitiesInterface.js +4 -1
- package/dist/core/interfaces/browserConfigurationInterface.js +2 -1
- package/dist/core/interfaces/cloudConfigInterface.js +2 -1
- package/dist/core/interfaces/domAnalysisInterface.js +2 -1
- package/dist/core/interfaces/errorInfoInterface.js +2 -1
- package/dist/core/interfaces/executionDetails.js +2 -1
- package/dist/core/interfaces/fireflinkScriptPayloadInterface.js +2 -1
- package/dist/core/interfaces/llmConfigurationInterface.js +2 -1
- package/dist/core/interfaces/llmResponseInterface.js +2 -1
- package/dist/core/interfaces/promptInterface.js +3 -1
- package/dist/core/interfaces/scriptGenrationDataInterface.js +2 -1
- package/dist/core/interfaces/simplifyAndFlattenInterface.js +2 -1
- package/dist/core/interfaces/toolsInterface.js +2 -1
- package/dist/core/main/actionHandlerFactory.js +13 -10
- package/dist/core/main/executionContext.js +15 -11
- package/dist/core/main/runAutomationScript.js +114 -110
- package/dist/core/main/stepProcessor.js +7 -3
- package/dist/core/types/browserType.js +4 -1
- package/dist/core/types/cloudServerPortType.js +4 -1
- package/dist/core/types/cloudprotocolType.js +2 -1
- package/dist/core/types/llmResponseType.js +2 -1
- package/dist/core/types/promptMap.js +2 -1
- package/dist/core/types/promptType.js +5 -2
- package/dist/core/types/scriptTypesType.js +2 -1
- package/dist/core/types/visionllmInputType.js +2 -1
- package/dist/domAnalysis/getRelaventElements.js +14 -10
- package/dist/domAnalysis/relativeElementsFromDom.js +5 -1
- package/dist/domAnalysis/searchBest.js +8 -4
- package/dist/domAnalysis/simplifyAndFlatten.js +41 -4
- package/dist/fireflinkData/fireflinkLocators/elementsFromHTML.js +13 -10
- package/dist/fireflinkData/fireflinkLocators/getListOfLocators.js +9 -5
- package/dist/fireflinkData/fireflinkLocators/typeList.js +4 -1
- package/dist/fireflinkData/fireflinkScript/scriptGenrationData.js +5 -1
- package/dist/imageAnalysisMobile/annotatedScreenshotMobile.js +11 -8
- package/dist/imageAnalysisMobile/annotatedScreenshotMobileInterface.js +2 -1
- package/dist/imageAnalysisWeb/annotateScreenshot.js +7 -4
- package/dist/imageAnalysisWeb/generateAnnotatedScreenshots.js +8 -5
- package/dist/imageAnalysisWeb/screenshotInterface.js +2 -1
- package/dist/index.js +5 -2
- package/dist/llmConfig/llmConfiguration.js +5 -1
- package/dist/service/api/fireflinkApi.service.js +10 -3
- package/dist/service/fireflink.service.js +10 -6
- package/dist/service/kafka/fireflinkKafka.service.js +12 -8
- package/dist/tests/multiBrowser.d.ts +1 -0
- package/dist/tests/multiBrowser.js +34 -0
- package/dist/tests/poc.js +21 -16
- package/dist/tests/test12.js +12 -7
- package/dist/tests/test3.js +4 -2
- package/dist/tests/tests.data.js +4 -1
- package/dist/utils/DomExtraction/jsForAttributeInjection.js +12 -8
- package/dist/utils/InstancesDetails/getInstancesInfo.js +4 -1
- package/dist/utils/alertPopup/isAlertPresent.js +5 -1
- package/dist/utils/alertPopup/isAlertPresentInterface.js +2 -1
- package/dist/utils/browserCap/capability.js +4 -1
- package/dist/utils/cloudConfig/cloudPath.js +4 -1
- package/dist/utils/helpers/enterActionHelper.js +23 -15
- package/dist/utils/helpers/imageUtils.js +4 -1
- package/dist/utils/helpers/sameActionsHelper.js +4 -1
- package/dist/utils/helpers/xpathcreation.js +11 -5
- package/dist/utils/iframesExtraction/findElementUsingFF.js +7 -3
- package/dist/utils/iframesExtraction/iframeInterface.js +2 -1
- package/dist/utils/iframesExtraction/switchToIframeByMeta.js +4 -1
- package/dist/utils/javascript/jsFindElement.js +4 -1
- package/dist/utils/javascript/jsForShadowRoot.js +9 -6
- package/dist/utils/javascript/jsForToaster.js +4 -1
- package/dist/utils/javascript/jsForVision.js +5 -2
- package/dist/utils/logger/logData.js +28 -21
- package/dist/utils/newTab/newTabTracker.js +4 -1
- package/dist/utils/swipe/domSearchHelper.js +10 -7
- package/dist/utils/swipe/swipeMovement.js +4 -1
- package/package.json +6 -5
|
@@ -1,4 +1,7 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.WifiSwitchOn = WifiSwitchOn;
|
|
4
|
+
async function WifiSwitchOn(args) {
|
|
2
5
|
try {
|
|
3
6
|
const currentState = await args.driver.getNetworkConnection();
|
|
4
7
|
// If Wi-Fi is OFF (0, 1, 4), switch it ON
|
|
@@ -1,4 +1,7 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.maximize = maximize;
|
|
4
|
+
async function maximize(maximizeInterface) {
|
|
2
5
|
try {
|
|
3
6
|
const { driver, scriptDataAppender } = maximizeInterface;
|
|
4
7
|
await driver.maximizeWindow();
|
|
@@ -1,4 +1,7 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.minimize = minimize;
|
|
4
|
+
async function minimize(minimizeInterface) {
|
|
2
5
|
try {
|
|
3
6
|
const { driver, scriptDataAppender } = minimizeInterface;
|
|
4
7
|
await driver.minimizeWindow();
|
|
@@ -1,4 +1,7 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.navigate = navigate;
|
|
4
|
+
async function navigate(args) {
|
|
2
5
|
try {
|
|
3
6
|
await args.driver.url(args.url);
|
|
4
7
|
args.scriptDataAppender.add(async () => ({
|
|
@@ -1,4 +1,7 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.pageRefresh = pageRefresh;
|
|
4
|
+
async function pageRefresh(args) {
|
|
2
5
|
try {
|
|
3
6
|
await args.driver.refresh();
|
|
4
7
|
args.scriptDataAppender.add(async () => ({
|
|
@@ -1,4 +1,7 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MOB_PinchInByPercent = MOB_PinchInByPercent;
|
|
4
|
+
async function MOB_PinchInByPercent(args) {
|
|
2
5
|
try {
|
|
3
6
|
const element = await args.driver.$(args.selector);
|
|
4
7
|
await args.driver.execute('mobile: pinchOpenGesture', {
|
|
@@ -1,4 +1,7 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MOB_PinchOutByPercent = MOB_PinchOutByPercent;
|
|
4
|
+
async function MOB_PinchOutByPercent(args) {
|
|
2
5
|
try {
|
|
3
6
|
const element = await args.driver.$(args.selector);
|
|
4
7
|
await args.driver.execute('mobile: pinchCloseGesture', {
|
|
@@ -1,4 +1,7 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.LongPress = void 0;
|
|
4
|
+
const LongPress = async (args) => {
|
|
2
5
|
try {
|
|
3
6
|
const element = await args.driver.$(args.selector);
|
|
4
7
|
let duration = 2000;
|
|
@@ -42,3 +45,4 @@ export const LongPress = async (args) => {
|
|
|
42
45
|
throw new Error("MOB_LongPress action failed", { cause: error });
|
|
43
46
|
}
|
|
44
47
|
};
|
|
48
|
+
exports.LongPress = LongPress;
|
|
@@ -1,4 +1,7 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.pressBackKey = pressBackKey;
|
|
4
|
+
async function pressBackKey(args) {
|
|
2
5
|
try {
|
|
3
6
|
await args.driver.back();
|
|
4
7
|
args.scriptDataAppender.add(async () => {
|
|
@@ -1,4 +1,7 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.pressBackSpaceKey = pressBackSpaceKey;
|
|
4
|
+
async function pressBackSpaceKey(args) {
|
|
2
5
|
try {
|
|
3
6
|
await args.driver.pressKeyCode(67);
|
|
4
7
|
args.scriptDataAppender.add(async () => {
|
|
@@ -1,4 +1,7 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.pressSpaceKey = pressSpaceKey;
|
|
4
|
+
async function pressSpaceKey(args) {
|
|
2
5
|
try {
|
|
3
6
|
await args.driver.pressKeyCode(62);
|
|
4
7
|
args.scriptDataAppender.add(async () => {
|
|
@@ -1,4 +1,7 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.pressAnyKeyNTimes = pressAnyKeyNTimes;
|
|
4
|
+
async function pressAnyKeyNTimes(args) {
|
|
2
5
|
switch (args.platform) {
|
|
3
6
|
case "android":
|
|
4
7
|
try {
|
|
@@ -1,12 +1,15 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PressHomeKey = PressHomeKey;
|
|
4
|
+
const logData_js_1 = require("../../../../utils/logger/logData.js");
|
|
5
|
+
const child_process_1 = require("child_process");
|
|
6
|
+
async function PressHomeKey(args) {
|
|
4
7
|
try {
|
|
5
|
-
logger.info("Pressing HOME key...");
|
|
8
|
+
logData_js_1.logger.info("Pressing HOME key...");
|
|
6
9
|
const udid = args.driver.capabilities["appium:udid"] || args.driver.capabilities.udid;
|
|
7
10
|
const cmdPrefix = udid ? `adb -s ${udid} shell` : `adb shell`;
|
|
8
11
|
// Android HOME keyevent is 3
|
|
9
|
-
execSync(`${cmdPrefix} input keyevent 3`);
|
|
12
|
+
(0, child_process_1.execSync)(`${cmdPrefix} input keyevent 3`);
|
|
10
13
|
args.scriptDataAppender.add(async () => ({
|
|
11
14
|
nlpName: 'MOB_PressHomeKey',
|
|
12
15
|
stepInputs: [],
|
package/dist/automation/actions/interaction/scroll/scrollHorizontallyTillElementIsVisible.js
CHANGED
|
@@ -1,4 +1,7 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.scrollHorizontallyTillElementIsVisible = scrollHorizontallyTillElementIsVisible;
|
|
4
|
+
async function scrollHorizontallyTillElementIsVisible(args) {
|
|
2
5
|
const { driver, selector, scriptDataAppender, elementGetter, fireflinkIndex, pageDOM, elementName, elementType, platform } = args;
|
|
3
6
|
try {
|
|
4
7
|
const element = await driver.$(selector);
|
|
@@ -1,4 +1,7 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.scrollPageToSpecificLocation = void 0;
|
|
4
|
+
const scrollPageToSpecificLocation = async (args) => {
|
|
2
5
|
try {
|
|
3
6
|
const location = args.value?.trim().toLowerCase();
|
|
4
7
|
if (location === "bottom") {
|
|
@@ -31,3 +34,4 @@ export const scrollPageToSpecificLocation = async (args) => {
|
|
|
31
34
|
throw new Error("ScrollPageToSpecificLocation action failed", { cause: error });
|
|
32
35
|
}
|
|
33
36
|
};
|
|
37
|
+
exports.scrollPageToSpecificLocation = scrollPageToSpecificLocation;
|
|
@@ -1,4 +1,7 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.scrollToElement = scrollToElement;
|
|
4
|
+
async function scrollToElement(args) {
|
|
2
5
|
try {
|
|
3
6
|
const element = await args.driver.$(args.selector);
|
|
4
7
|
await element.scrollIntoView({ block: 'center', inline: 'center' });
|
|
@@ -1,4 +1,7 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.scrollVerticallyTillElementIsVisible = scrollVerticallyTillElementIsVisible;
|
|
4
|
+
async function scrollVerticallyTillElementIsVisible(args) {
|
|
2
5
|
const { driver, selector, scriptDataAppender, elementGetter, fireflinkIndex, pageDOM, elementName, elementType, platform } = args;
|
|
3
6
|
try {
|
|
4
7
|
const element = await driver.$(selector);
|
|
@@ -1,4 +1,7 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MOB_SetContext = void 0;
|
|
4
|
+
const MOB_SetContext = async (args) => {
|
|
2
5
|
try {
|
|
3
6
|
const contextName = args.value;
|
|
4
7
|
await args.driver.switchContext(contextName);
|
|
@@ -15,3 +18,4 @@ export const MOB_SetContext = async (args) => {
|
|
|
15
18
|
throw new Error("MOB_SetContext action failed", { cause: error });
|
|
16
19
|
}
|
|
17
20
|
};
|
|
21
|
+
exports.MOB_SetContext = MOB_SetContext;
|
|
@@ -1,4 +1,7 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MOB_SetEmulatorPowerPercentage = void 0;
|
|
4
|
+
const MOB_SetEmulatorPowerPercentage = async (args) => {
|
|
2
5
|
try {
|
|
3
6
|
const percentage = parseFloat(args.value);
|
|
4
7
|
await args.driver.execute("mobile: powerCapacity", {
|
|
@@ -22,3 +25,4 @@ export const MOB_SetEmulatorPowerPercentage = async (args) => {
|
|
|
22
25
|
throw new Error("MOB_SetEmulatorPowerPercentage action failed", { cause: error });
|
|
23
26
|
}
|
|
24
27
|
};
|
|
28
|
+
exports.MOB_SetEmulatorPowerPercentage = MOB_SetEmulatorPowerPercentage;
|
|
@@ -1,4 +1,7 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.setClipBoardText = setClipBoardText;
|
|
4
|
+
async function setClipBoardText(args) {
|
|
2
5
|
switch (args.platform) {
|
|
3
6
|
case "android":
|
|
4
7
|
try {
|
|
@@ -1,8 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.clickShadowElement = clickShadowElement;
|
|
4
|
+
const jsForShadowRoot_js_1 = require("../../../../utils/javascript/jsForShadowRoot.js");
|
|
5
|
+
async function clickShadowElement(args) {
|
|
3
6
|
try {
|
|
4
|
-
const executableJS = SHADOW_DOM_CLICK_JS.replace("arguments[0]", `"${args.selector}"`);
|
|
5
|
-
await args.driver.execute(SHADOW_DOM_CLICK_JS, args.selector);
|
|
7
|
+
const executableJS = jsForShadowRoot_js_1.SHADOW_DOM_CLICK_JS.replace("arguments[0]", `"${args.selector}"`);
|
|
8
|
+
await args.driver.execute(jsForShadowRoot_js_1.SHADOW_DOM_CLICK_JS, args.selector);
|
|
6
9
|
args.scriptDataAppender.add(async () => ({
|
|
7
10
|
nlpName: 'ExecuteJavaScript',
|
|
8
11
|
elementsData: [],
|
|
@@ -1,8 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.enterInputShadow = enterInputShadow;
|
|
4
|
+
const jsForShadowRoot_js_1 = require("../../../../utils/javascript/jsForShadowRoot.js");
|
|
5
|
+
async function enterInputShadow(args) {
|
|
3
6
|
try {
|
|
4
|
-
const executableJS = SHADOW_DOM_ENTER_JS.replace("arguments[0]", `"${args.selector}"`).replace("arguments[1]", `"${args.value}"`);
|
|
5
|
-
await args.driver.execute(SHADOW_DOM_ENTER_JS, args.selector, args.value);
|
|
7
|
+
const executableJS = jsForShadowRoot_js_1.SHADOW_DOM_ENTER_JS.replace("arguments[0]", `"${args.selector}"`).replace("arguments[1]", `"${args.value}"`);
|
|
8
|
+
await args.driver.execute(jsForShadowRoot_js_1.SHADOW_DOM_ENTER_JS, args.selector, args.value);
|
|
6
9
|
args.scriptDataAppender.add(async () => ({
|
|
7
10
|
nlpName: 'ExecuteJavaScript',
|
|
8
11
|
elementsData: [],
|
|
@@ -1,8 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getTextShadowElement = getTextShadowElement;
|
|
4
|
+
const jsForShadowRoot_js_1 = require("../../../../utils/javascript/jsForShadowRoot.js");
|
|
5
|
+
async function getTextShadowElement(args) {
|
|
3
6
|
try {
|
|
4
|
-
const executableJS = SHADOW_DOM_GET_TEXT_JS.replace("arguments[0]", `"${args.selector}"`);
|
|
5
|
-
await args.driver.execute(SHADOW_DOM_GET_TEXT_JS, args.selector);
|
|
7
|
+
const executableJS = jsForShadowRoot_js_1.SHADOW_DOM_GET_TEXT_JS.replace("arguments[0]", `"${args.selector}"`);
|
|
8
|
+
await args.driver.execute(jsForShadowRoot_js_1.SHADOW_DOM_GET_TEXT_JS, args.selector);
|
|
6
9
|
args.scriptDataAppender.add(async () => ({
|
|
7
10
|
nlpName: 'ExecuteJavaScript',
|
|
8
11
|
stepInputs: [executableJS],
|
|
@@ -1,8 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.uploadFileShadowElement = uploadFileShadowElement;
|
|
4
|
+
const jsForShadowRoot_js_1 = require("../../../../utils/javascript/jsForShadowRoot.js");
|
|
5
|
+
async function uploadFileShadowElement(args) {
|
|
3
6
|
try {
|
|
4
|
-
const executableJS = SHADOW_DOM_UPLOAD_JS.replace("arguments[0]", `"${args.selector}"`);
|
|
5
|
-
const fileInput = await args.driver.execute(SHADOW_DOM_UPLOAD_JS, args.selector);
|
|
7
|
+
const executableJS = jsForShadowRoot_js_1.SHADOW_DOM_UPLOAD_JS.replace("arguments[0]", `"${args.selector}"`);
|
|
8
|
+
const fileInput = await args.driver.execute(jsForShadowRoot_js_1.SHADOW_DOM_UPLOAD_JS, args.selector);
|
|
6
9
|
if (!fileInput) {
|
|
7
10
|
throw new Error("Shadow file input not found");
|
|
8
11
|
}
|
|
@@ -1,8 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.verifyPartialTextShadowElement = verifyPartialTextShadowElement;
|
|
4
|
+
const jsForShadowRoot_js_1 = require("../../../../utils/javascript/jsForShadowRoot.js");
|
|
5
|
+
async function verifyPartialTextShadowElement(args) {
|
|
3
6
|
try {
|
|
4
|
-
const executableJS = SHADOW_DOM_VERIFY_PARTIAL_TEXT_JS.replace("arguments[0]", `"${args.selector}"`).replace("arguments[1]", `"${args.value}"`);
|
|
5
|
-
await args.driver.execute(SHADOW_DOM_VERIFY_PARTIAL_TEXT_JS, args.selector, args.value);
|
|
7
|
+
const executableJS = jsForShadowRoot_js_1.SHADOW_DOM_VERIFY_PARTIAL_TEXT_JS.replace("arguments[0]", `"${args.selector}"`).replace("arguments[1]", `"${args.value}"`);
|
|
8
|
+
await args.driver.execute(jsForShadowRoot_js_1.SHADOW_DOM_VERIFY_PARTIAL_TEXT_JS, args.selector, args.value);
|
|
6
9
|
args.scriptDataAppender.add(async () => ({
|
|
7
10
|
nlpName: 'ExecuteJavaScript',
|
|
8
11
|
stepInputs: [executableJS],
|
|
@@ -1,8 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.verifyTextShadowElement = verifyTextShadowElement;
|
|
4
|
+
const jsForShadowRoot_js_1 = require("../../../../utils/javascript/jsForShadowRoot.js");
|
|
5
|
+
async function verifyTextShadowElement(args) {
|
|
3
6
|
try {
|
|
4
|
-
const executableJS = SHADOW_DOM_VERIFY_TEXT_JS.replace("arguments[0]", `"${args.selector}"`).replace("arguments[1]", `"${args.value}"`);
|
|
5
|
-
await args.driver.execute(SHADOW_DOM_VERIFY_TEXT_JS, args.selector, args.value);
|
|
7
|
+
const executableJS = jsForShadowRoot_js_1.SHADOW_DOM_VERIFY_TEXT_JS.replace("arguments[0]", `"${args.selector}"`).replace("arguments[1]", `"${args.value}"`);
|
|
8
|
+
await args.driver.execute(jsForShadowRoot_js_1.SHADOW_DOM_VERIFY_TEXT_JS, args.selector, args.value);
|
|
6
9
|
args.scriptDataAppender.add(async () => ({
|
|
7
10
|
nlpName: 'ExecuteJavaScript',
|
|
8
11
|
stepInputs: [executableJS],
|
|
@@ -1,11 +1,14 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.swipeDirectionNTimes = swipeDirectionNTimes;
|
|
4
|
+
const swipeMovement_js_1 = require("../../../../utils/swipe/swipeMovement.js");
|
|
5
|
+
async function swipeDirectionNTimes(args) {
|
|
3
6
|
try {
|
|
4
7
|
const count = Number(args.num_of_scrolls) || 30;
|
|
5
8
|
const direction = args.direction || "down";
|
|
6
9
|
let previousDom = "";
|
|
7
10
|
for (let i = 0; i < count; i++) {
|
|
8
|
-
await executeSwipeMovement(args.driver, direction);
|
|
11
|
+
await (0, swipeMovement_js_1.executeSwipeMovement)(args.driver, direction);
|
|
9
12
|
const currentDom = await args.driver.getPageSource();
|
|
10
13
|
if (currentDom === previousDom) {
|
|
11
14
|
throw new Error("End of page reached. Stopping swipe.");
|
|
@@ -1,6 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.swipeDownToElement = swipeDownToElement;
|
|
4
|
+
const swipeMovement_js_1 = require("../../../../utils/swipe/swipeMovement.js");
|
|
5
|
+
const domSearchHelper_js_1 = require("../../../../utils/swipe/domSearchHelper.js");
|
|
6
|
+
async function swipeDownToElement(args) {
|
|
4
7
|
try {
|
|
5
8
|
const maxScrolls = Number(args.num_of_scrolls) || 30;
|
|
6
9
|
const direction = "down";
|
|
@@ -12,13 +15,13 @@ export async function swipeDownToElement(args) {
|
|
|
12
15
|
let discoveredXPath = "";
|
|
13
16
|
let previousDom = "";
|
|
14
17
|
for (let attempt = 1; attempt <= maxScrolls; attempt++) {
|
|
15
|
-
await executeSwipeMovement(args.driver, direction);
|
|
18
|
+
await (0, swipeMovement_js_1.executeSwipeMovement)(args.driver, direction);
|
|
16
19
|
const currentDom = await args.driver.getPageSource();
|
|
17
20
|
if (currentDom === previousDom) {
|
|
18
21
|
throw new Error("End of page reached. Stopping swipe.");
|
|
19
22
|
}
|
|
20
23
|
previousDom = currentDom;
|
|
21
|
-
const result = await findElementInDom(args.driver, searchText);
|
|
24
|
+
const result = await (0, domSearchHelper_js_1.findElementInDom)(args.driver, searchText);
|
|
22
25
|
if (result) {
|
|
23
26
|
discoveredXPath = result.xpath;
|
|
24
27
|
found = true;
|
|
@@ -1,6 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.swipeLeftToElement = swipeLeftToElement;
|
|
4
|
+
const swipeMovement_js_1 = require("../../../../utils/swipe/swipeMovement.js");
|
|
5
|
+
const domSearchHelper_js_1 = require("../../../../utils/swipe/domSearchHelper.js");
|
|
6
|
+
async function swipeLeftToElement(args) {
|
|
4
7
|
try {
|
|
5
8
|
const maxScrolls = Number(args.num_of_scrolls) || 30;
|
|
6
9
|
const direction = "left";
|
|
@@ -12,13 +15,13 @@ export async function swipeLeftToElement(args) {
|
|
|
12
15
|
let discoveredXPath = "";
|
|
13
16
|
let previousDom = "";
|
|
14
17
|
for (let attempt = 1; attempt <= maxScrolls; attempt++) {
|
|
15
|
-
await executeSwipeMovement(args.driver, direction);
|
|
18
|
+
await (0, swipeMovement_js_1.executeSwipeMovement)(args.driver, direction);
|
|
16
19
|
const currentDom = await args.driver.getPageSource();
|
|
17
20
|
if (currentDom === previousDom) {
|
|
18
21
|
throw new Error("End of page reached. Stopping swipe.");
|
|
19
22
|
}
|
|
20
23
|
previousDom = currentDom;
|
|
21
|
-
const result = await findElementInDom(args.driver, searchText);
|
|
24
|
+
const result = await (0, domSearchHelper_js_1.findElementInDom)(args.driver, searchText);
|
|
22
25
|
if (result) {
|
|
23
26
|
discoveredXPath = result.xpath;
|
|
24
27
|
found = true;
|
|
@@ -1,6 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.swipeRightToElement = swipeRightToElement;
|
|
4
|
+
const swipeMovement_js_1 = require("../../../../utils/swipe/swipeMovement.js");
|
|
5
|
+
const domSearchHelper_js_1 = require("../../../../utils/swipe/domSearchHelper.js");
|
|
6
|
+
async function swipeRightToElement(args) {
|
|
4
7
|
try {
|
|
5
8
|
const maxScrolls = Number(args.num_of_scrolls) || 30;
|
|
6
9
|
const direction = "right";
|
|
@@ -12,13 +15,13 @@ export async function swipeRightToElement(args) {
|
|
|
12
15
|
let discoveredXPath = "";
|
|
13
16
|
let previousDom = "";
|
|
14
17
|
for (let attempt = 1; attempt <= maxScrolls; attempt++) {
|
|
15
|
-
await executeSwipeMovement(args.driver, direction);
|
|
18
|
+
await (0, swipeMovement_js_1.executeSwipeMovement)(args.driver, direction);
|
|
16
19
|
const currentDom = await args.driver.getPageSource();
|
|
17
20
|
if (currentDom === previousDom) {
|
|
18
21
|
throw new Error("End of page reached. Stopping swipe.");
|
|
19
22
|
}
|
|
20
23
|
previousDom = currentDom;
|
|
21
|
-
const result = await findElementInDom(args.driver, searchText);
|
|
24
|
+
const result = await (0, domSearchHelper_js_1.findElementInDom)(args.driver, searchText);
|
|
22
25
|
if (result) {
|
|
23
26
|
discoveredXPath = result.xpath;
|
|
24
27
|
found = true;
|
|
@@ -1,7 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.swipeUpToElement = swipeUpToElement;
|
|
4
|
+
const swipeMovement_js_1 = require("../../../../utils/swipe/swipeMovement.js");
|
|
5
|
+
const logData_js_1 = require("../../../../utils/logger/logData.js");
|
|
6
|
+
const domSearchHelper_js_1 = require("../../../../utils/swipe/domSearchHelper.js");
|
|
7
|
+
async function swipeUpToElement(args) {
|
|
5
8
|
try {
|
|
6
9
|
const maxScrolls = Number(args.num_of_scrolls) || 30;
|
|
7
10
|
const direction = "up";
|
|
@@ -12,16 +15,16 @@ export async function swipeUpToElement(args) {
|
|
|
12
15
|
let found = false;
|
|
13
16
|
let discoveredXPath = "";
|
|
14
17
|
let previousDom = "";
|
|
15
|
-
logger.info(`Swipe up to element "${searchText}"`);
|
|
18
|
+
logData_js_1.logger.info(`Swipe up to element "${searchText}"`);
|
|
16
19
|
for (let attempt = 1; attempt <= maxScrolls; attempt++) {
|
|
17
|
-
logger.info(`Swipe attempt ${attempt}`);
|
|
18
|
-
await executeSwipeMovement(args.driver, direction);
|
|
20
|
+
logData_js_1.logger.info(`Swipe attempt ${attempt}`);
|
|
21
|
+
await (0, swipeMovement_js_1.executeSwipeMovement)(args.driver, direction);
|
|
19
22
|
const currentDom = await args.driver.getPageSource();
|
|
20
23
|
if (currentDom === previousDom) {
|
|
21
24
|
throw new Error("End of page reached. Stopping swipe.");
|
|
22
25
|
}
|
|
23
26
|
previousDom = currentDom;
|
|
24
|
-
const result = await findElementInDom(args.driver, searchText);
|
|
27
|
+
const result = await (0, domSearchHelper_js_1.findElementInDom)(args.driver, searchText);
|
|
25
28
|
if (result) {
|
|
26
29
|
discoveredXPath = result.xpath;
|
|
27
30
|
found = true;
|
|
@@ -1,6 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.swipeUpToElementForMWeb = swipeUpToElementForMWeb;
|
|
4
|
+
const swipeMovement_js_1 = require("../../../../utils/swipe/swipeMovement.js");
|
|
5
|
+
const domSearchHelper_js_1 = require("../../../../utils/swipe/domSearchHelper.js");
|
|
6
|
+
async function swipeUpToElementForMWeb(args) {
|
|
4
7
|
try {
|
|
5
8
|
const maxScrolls = Number(args.num_of_scrolls) || 30;
|
|
6
9
|
const direction = "up";
|
|
@@ -12,13 +15,13 @@ export async function swipeUpToElementForMWeb(args) {
|
|
|
12
15
|
let discoveredXPath = "";
|
|
13
16
|
let previousDom = "";
|
|
14
17
|
for (let attempt = 1; attempt <= maxScrolls; attempt++) {
|
|
15
|
-
await executeSwipeMovement(args.driver, direction);
|
|
18
|
+
await (0, swipeMovement_js_1.executeSwipeMovement)(args.driver, direction);
|
|
16
19
|
const currentDom = await args.driver.getPageSource();
|
|
17
20
|
if (currentDom === previousDom) {
|
|
18
21
|
throw new Error("End of page reached. Stopping swipe.");
|
|
19
22
|
}
|
|
20
23
|
previousDom = currentDom;
|
|
21
|
-
const result = await findElementInDom(args.driver, searchText);
|
|
24
|
+
const result = await (0, domSearchHelper_js_1.findElementInDom)(args.driver, searchText);
|
|
22
25
|
if (result) {
|
|
23
26
|
discoveredXPath = result.xpath;
|
|
24
27
|
found = true;
|
|
@@ -1,7 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.swipeUsingReferenceElement = swipeUsingReferenceElement;
|
|
4
|
+
const swipeMovement_js_1 = require("../../../../utils/swipe/swipeMovement.js");
|
|
5
|
+
const logData_js_1 = require("../../../../utils/logger/logData.js");
|
|
6
|
+
const domSearchHelper_js_1 = require("../../../../utils/swipe/domSearchHelper.js");
|
|
7
|
+
async function swipeUsingReferenceElement(args) {
|
|
5
8
|
try {
|
|
6
9
|
const parts = args.value.split("->");
|
|
7
10
|
if (parts.length < 2) {
|
|
@@ -17,34 +20,34 @@ export async function swipeUsingReferenceElement(args) {
|
|
|
17
20
|
let discoveredXPath = "";
|
|
18
21
|
let previousDom = "";
|
|
19
22
|
let found = false;
|
|
20
|
-
logger.info(`SwipeUsingReference: reference="${referenceText}" target="${targetText}"`);
|
|
23
|
+
logData_js_1.logger.info(`SwipeUsingReference: reference="${referenceText}" target="${targetText}"`);
|
|
21
24
|
const windowSize = await args.driver.getWindowSize();
|
|
22
25
|
const screenWidth = windowSize.width;
|
|
23
26
|
const screenHeight = windowSize.height;
|
|
24
27
|
for (let attempt = 1; attempt <= maxScrolls; attempt++) {
|
|
25
|
-
logger.info(`Swipe attempt ${attempt}`);
|
|
28
|
+
logData_js_1.logger.info(`Swipe attempt ${attempt}`);
|
|
26
29
|
const currentDom = await args.driver.getPageSource();
|
|
27
30
|
if (currentDom === previousDom) {
|
|
28
31
|
throw new Error("End of page reached. Stopping swipe.");
|
|
29
32
|
}
|
|
30
33
|
previousDom = currentDom;
|
|
31
34
|
if (!referenceSeen) {
|
|
32
|
-
const refResult = await findElementInDom(args.driver, referenceText);
|
|
35
|
+
const refResult = await (0, domSearchHelper_js_1.findElementInDom)(args.driver, referenceText);
|
|
33
36
|
if (refResult) {
|
|
34
37
|
referenceSeen = true;
|
|
35
|
-
logger.info(`Reference "${referenceText}" found`);
|
|
38
|
+
logData_js_1.logger.info(`Reference "${referenceText}" found`);
|
|
36
39
|
}
|
|
37
40
|
else {
|
|
38
|
-
logger.info(`Reference not visible yet. Swiping to find it.`);
|
|
39
|
-
await executeSwipeMovement(args.driver, direction);
|
|
41
|
+
logData_js_1.logger.info(`Reference not visible yet. Swiping to find it.`);
|
|
42
|
+
await (0, swipeMovement_js_1.executeSwipeMovement)(args.driver, direction);
|
|
40
43
|
continue;
|
|
41
44
|
}
|
|
42
45
|
}
|
|
43
|
-
const refResult = await findElementInDom(args.driver, referenceText);
|
|
46
|
+
const refResult = await (0, domSearchHelper_js_1.findElementInDom)(args.driver, referenceText);
|
|
44
47
|
if (!refResult) {
|
|
45
|
-
logger.info("Reference lost from screen, searching again.");
|
|
48
|
+
logData_js_1.logger.info("Reference lost from screen, searching again.");
|
|
46
49
|
referenceSeen = false;
|
|
47
|
-
await executeSwipeMovement(args.driver, direction);
|
|
50
|
+
await (0, swipeMovement_js_1.executeSwipeMovement)(args.driver, direction);
|
|
48
51
|
continue;
|
|
49
52
|
}
|
|
50
53
|
const refElement = await args.driver.$(refResult.xpath);
|
|
@@ -107,12 +110,12 @@ export async function swipeUsingReferenceElement(args) {
|
|
|
107
110
|
}
|
|
108
111
|
]);
|
|
109
112
|
await args.driver.pause(800);
|
|
110
|
-
logger.info(`Swiped anchored to reference element`);
|
|
113
|
+
logData_js_1.logger.info(`Swiped anchored to reference element`);
|
|
111
114
|
// STEP 3: check for target
|
|
112
|
-
const targetResult = await findElementInDom(args.driver, targetText);
|
|
115
|
+
const targetResult = await (0, domSearchHelper_js_1.findElementInDom)(args.driver, targetText);
|
|
113
116
|
if (targetResult) {
|
|
114
117
|
discoveredXPath = targetResult.xpath;
|
|
115
|
-
logger.info(`Target "${targetText}" found`);
|
|
118
|
+
logData_js_1.logger.info(`Target "${targetText}" found`);
|
|
116
119
|
found = true;
|
|
117
120
|
break;
|
|
118
121
|
}
|