ff-automationv2 2.2.27 → 2.2.29
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/llmAction.d.ts +9 -4
- package/dist/ai/llmcalls/llmAction.js +173 -37
- package/dist/ai/llmcalls/parseLlmOputput.js +18 -6
- package/dist/ai/llmprompts/promptRegistry.js +11 -0
- package/dist/ai/llmprompts/systemPrompts/actionExtractorPrompt.js +19 -10
- package/dist/ai/llmprompts/systemPrompts/combinedActionExtractorPrompt.js +7 -6
- package/dist/ai/llmprompts/systemPrompts/combinedActionExtractorPromptMob.js +14 -13
- package/dist/ai/llmprompts/systemPrompts/errorDescriptionPrompt.js +6 -4
- package/dist/ai/llmprompts/systemPrompts/fireflinkElementIndexExtactors.js +120 -62
- package/dist/ai/llmprompts/systemPrompts/fireflinkElementIndexExtractor_Mob.js +33 -28
- package/dist/ai/llmprompts/systemPrompts/getActionExtractorPrompt.js +18 -16
- package/dist/ai/llmprompts/systemPrompts/getActionExtractorPromptMob.js +13 -13
- package/dist/ai/llmprompts/systemPrompts/mobileKeywordExtractor.js +13 -11
- package/dist/ai/llmprompts/systemPrompts/userStoryToListPrompt.js +1 -1
- package/dist/ai/llmprompts/systemPrompts/verifyActionExtractorPrompt.js +20 -18
- package/dist/ai/llmprompts/systemPrompts/verifyActionExtractorPromptMob.js +9 -9
- package/dist/ai/llmprompts/systemPrompts/visionPrompt.js +4 -2
- package/dist/ai/llmprompts/systemPrompts/visionPromptMobile.js +1 -0
- package/dist/ai/llmprompts/systemPrompts/waitActionExtractorPrompt.js +10 -9
- package/dist/ai/llmprompts/systemPrompts/waitActionExtractorPromptMob.js +8 -7
- package/dist/ai/llmprompts/userPrompts/userPrompt.js +7 -8
- package/dist/automation/actions/executor.d.ts +38 -34
- package/dist/automation/actions/executor.js +280 -166
- package/dist/automation/actions/interaction/alert/clickCancelOnAlertPopup.js +4 -4
- package/dist/automation/actions/interaction/alert/clickOkOnAlertPopup.js +4 -4
- package/dist/automation/actions/interaction/alert/enterDataToAlert.js +4 -3
- package/dist/automation/actions/interaction/alert/getTextPresentOnAlertPopup.js +4 -4
- package/dist/automation/actions/interaction/alert/verifyAlertPopUpMessageContainsString.js +4 -3
- package/dist/automation/actions/interaction/alert/verifyAlertPopupIsDisplayed.js +10 -4
- package/dist/automation/actions/interaction/alert/verifyTextPresentOnAlertPopup.js +4 -3
- package/dist/automation/actions/interaction/alert/waitTillAlertIsPresent.js +5 -5
- package/dist/automation/actions/interaction/clear/clear.js +33 -26
- package/dist/automation/actions/interaction/clear/clearAndEnter.js +33 -26
- package/dist/automation/actions/interaction/click/MOB_DoubleTapAtSpecifiedLocation.js +5 -6
- package/dist/automation/actions/interaction/click/click.js +57 -25
- package/dist/automation/actions/interaction/click/clickNtimes.js +29 -24
- package/dist/automation/actions/interaction/click/clickUsingJs.js +12 -12
- package/dist/automation/actions/interaction/click/doubleClick.js +32 -25
- package/dist/automation/actions/interaction/click/rightClick.js +18 -13
- package/dist/automation/actions/interaction/click/tapOnSpecifiedLocation.js +7 -5
- package/dist/automation/actions/interaction/click/waitAndClick.js +29 -27
- package/dist/automation/actions/interaction/dragAndDrop/dragAndDrop.js +2 -2
- package/dist/automation/actions/interaction/elementLessAction/MobCheckIfAppIsClosed.js +14 -9
- package/dist/automation/actions/interaction/elementLessAction/MobRunAppInBackgroundInterface.js +9 -9
- package/dist/automation/actions/interaction/elementlessActions/activateAppUsingAppPackage.d.ts +0 -3
- package/dist/automation/actions/interaction/elementlessActions/activateAppUsingAppPackage.js +8 -9
- package/dist/automation/actions/interaction/elementlessActions/installAPK.js +74 -33
- package/dist/automation/actions/interaction/elementlessActions/isAppInstalled.js +10 -8
- package/dist/automation/actions/interaction/elementlessActions/openAppWithApkFilePath.js +87 -68
- package/dist/automation/actions/interaction/elementlessActions/openMobileApplication.js +8 -6
- package/dist/automation/actions/interaction/elementlessActions/receiveMessageOnEmulator.js +4 -3
- package/dist/automation/actions/interaction/elementlessActions/terminateAppUsingAppPackage.js +8 -6
- package/dist/automation/actions/interaction/elementlessActions/uninstallAPK.js +76 -32
- package/dist/automation/actions/interaction/enterActions/EnterInputIntoElementFromClipBoardInterface_mob.js +17 -13
- package/dist/automation/actions/interaction/enterActions/enterInput.js +50 -30
- package/dist/automation/actions/interaction/enterActions/enterInputAndPress.js +32 -24
- package/dist/automation/actions/interaction/enterActions/enterUrl.js +22 -17
- package/dist/automation/actions/interaction/enterActions/enterusingJs.js +19 -13
- package/dist/automation/actions/interaction/enterActions/waitAndEnter.js +33 -26
- package/dist/automation/actions/interaction/find/MOB_FindElement.js +37 -21
- package/dist/automation/actions/interaction/find/findElements.js +49 -32
- package/dist/automation/actions/interaction/get/MOB_GetADBLogsForGivenAppPackage.js +5 -6
- package/dist/automation/actions/interaction/get/MOB_GetAllContexts.js +4 -6
- package/dist/automation/actions/interaction/get/MOB_GetAllWindowHandles.js +8 -9
- package/dist/automation/actions/interaction/get/MOB_GetAltitude.js +20 -10
- package/dist/automation/actions/interaction/get/MOB_GetBatteryPercentage.js +7 -9
- package/dist/automation/actions/interaction/get/MOB_GetBatteryStatus.js +4 -6
- package/dist/automation/actions/interaction/get/MOB_GetClipBoardText.js +4 -6
- package/dist/automation/actions/interaction/get/MOB_GetCurrentActivity.js +4 -6
- package/dist/automation/actions/interaction/get/MOB_GetCurrentAppPackage.js +4 -6
- package/dist/automation/actions/interaction/get/MOB_GetCurrentContext.js +4 -6
- package/dist/automation/actions/interaction/get/MOB_GetCurrentDeviceDate.js +4 -6
- package/dist/automation/actions/interaction/get/MOB_GetCurrentDeviceSettings.js +4 -6
- package/dist/automation/actions/interaction/get/MOB_GetCurrentDeviceStatus.js +4 -6
- package/dist/automation/actions/interaction/get/MOB_GetCurrentDeviceSystemBars.js +5 -6
- package/dist/automation/actions/interaction/get/MOB_GetCurrentDeviceTime.js +4 -6
- package/dist/automation/actions/interaction/get/MOB_GetCurrentOrientation.js +4 -6
- package/dist/automation/actions/interaction/get/MOB_GetCurrentSessionId.js +4 -6
- package/dist/automation/actions/interaction/get/MOB_GetDeviceLocation.js +20 -9
- package/dist/automation/actions/interaction/get/MOB_GetDeviceName.js +7 -8
- package/dist/automation/actions/interaction/get/MOB_GetDeviceOsVersion.js +4 -6
- package/dist/automation/actions/interaction/get/MOB_GetDeviceUdid.js +7 -8
- package/dist/automation/actions/interaction/get/MOB_GetHeightOfElement.js +12 -11
- package/dist/automation/actions/interaction/get/MOB_GetHeightOfScreen.js +4 -6
- package/dist/automation/actions/interaction/get/MOB_GetHourFromCurrentDeviceTime.js +4 -6
- package/dist/automation/actions/interaction/get/MOB_GetLatitude.js +20 -12
- package/dist/automation/actions/interaction/get/MOB_GetLongitude.js +20 -12
- package/dist/automation/actions/interaction/get/MOB_GetMinuteFromCurrentDeviceTime.js +4 -6
- package/dist/automation/actions/interaction/get/MOB_GetSecondFromCurrentDeviceTime.js +4 -6
- package/dist/automation/actions/interaction/get/MOB_GetSizeOfScreen.js +4 -6
- package/dist/automation/actions/interaction/get/MOB_GetSupportedPerformanceDataTypes.js +4 -6
- package/dist/automation/actions/interaction/get/MOB_GetTextFromElementAndSetToClipBoard.js +11 -8
- package/dist/automation/actions/interaction/get/MOB_GetWidthOfElement.js +12 -11
- package/dist/automation/actions/interaction/get/MOB_GetWidthOfScreen.js +4 -6
- package/dist/automation/actions/interaction/get/browserWindowGetPosition.js +4 -4
- package/dist/automation/actions/interaction/get/getAllBrokenImages.js +4 -4
- package/dist/automation/actions/interaction/get/getAllBrokenLinkCount.js +4 -4
- package/dist/automation/actions/interaction/get/getAllBrokenLinks.js +5 -5
- package/dist/automation/actions/interaction/get/getAllConsoleErrors.js +4 -4
- package/dist/automation/actions/interaction/get/getAllConsoleInformation.js +5 -5
- package/dist/automation/actions/interaction/get/getAllConsoleLogs.js +5 -5
- package/dist/automation/actions/interaction/get/getAllConsoleWarnings.js +5 -5
- package/dist/automation/actions/interaction/get/getAllCookieNames.js +5 -5
- package/dist/automation/actions/interaction/get/getAllCookieValues.js +5 -5
- package/dist/automation/actions/interaction/get/getAllSelectedOptions.js +12 -12
- package/dist/automation/actions/interaction/get/getAllTheOptionsFromListBoxAsText.js +12 -12
- package/dist/automation/actions/interaction/get/getAllTheOptionsFromListBoxAsTextInSortedOrder.js +12 -12
- package/dist/automation/actions/interaction/get/getAllTheSelectedOptionsFromListBoxAsText.js +12 -12
- package/dist/automation/actions/interaction/get/getAllWindowHandles.js +5 -5
- package/dist/automation/actions/interaction/get/getAttribute.js +27 -25
- package/dist/automation/actions/interaction/get/getAudioCurrentPlaybackRate.js +12 -12
- package/dist/automation/actions/interaction/get/getAudioCurrentSeekTime.js +12 -12
- package/dist/automation/actions/interaction/get/getAudioCurrentVolume.js +12 -12
- package/dist/automation/actions/interaction/get/getAudioDecodedByte.js +12 -12
- package/dist/automation/actions/interaction/get/getAudioDefaultPlaybackRate.js +12 -12
- package/dist/automation/actions/interaction/get/getAudioMediaLength.js +12 -12
- package/dist/automation/actions/interaction/get/getAudioMediaSource.js +12 -12
- package/dist/automation/actions/interaction/get/getBestPracticesScore.js +4 -3
- package/dist/automation/actions/interaction/get/getBrowserCount.js +4 -4
- package/dist/automation/actions/interaction/get/getBrowserVersion.js +4 -4
- package/dist/automation/actions/interaction/get/getCapabilityNames.js +4 -4
- package/dist/automation/actions/interaction/get/getClipBoardText.js +4 -4
- package/dist/automation/actions/interaction/get/getCollectiveApiResponseTime.js +5 -4
- package/dist/automation/actions/interaction/get/getCollectiveApiStatusCode.js +5 -4
- package/dist/automation/actions/interaction/get/getCssValue.js +12 -12
- package/dist/automation/actions/interaction/get/getCurrentDayOfTheWeek.js +4 -4
- package/dist/automation/actions/interaction/get/getCurrentSecondsFromCurrentSystemTime.js +5 -5
- package/dist/automation/actions/interaction/get/getCurrentSystemDate.js +4 -4
- package/dist/automation/actions/interaction/get/getCurrentSystemDay.js +5 -5
- package/dist/automation/actions/interaction/get/getCurrentSystemMonth.js +5 -5
- package/dist/automation/actions/interaction/get/getCurrentSystemTime.js +5 -5
- package/dist/automation/actions/interaction/get/getCurrentSystemYear.js +5 -5
- package/dist/automation/actions/interaction/get/getCurrentWindowHandle.js +9 -10
- package/dist/automation/actions/interaction/get/getDataFromApiRequestHeaderForJsonPath.js +5 -4
- package/dist/automation/actions/interaction/get/getDataFromApiResponseForJsonPath.js +5 -4
- package/dist/automation/actions/interaction/get/getDateWithGivenFormat.js +5 -4
- package/dist/automation/actions/interaction/get/getDriverInstance.js +12 -11
- package/dist/automation/actions/interaction/get/getFirstContentfulPaint.js +5 -5
- package/dist/automation/actions/interaction/get/getFirstSelectedOption.js +12 -12
- package/dist/automation/actions/interaction/get/getFullPaintTime.js +5 -5
- package/dist/automation/actions/interaction/get/getHTMLCodeOfPage.js +4 -4
- package/dist/automation/actions/interaction/get/getHeightOfBrowserWindow.js +4 -4
- package/dist/automation/actions/interaction/get/getHeightOfWebElement.js +12 -12
- package/dist/automation/actions/interaction/get/getHourFromCurrentSystemTime.js +4 -4
- package/dist/automation/actions/interaction/get/getImplicitTimeOut.js +11 -10
- package/dist/automation/actions/interaction/get/getLargestContentfulPaint.js +4 -4
- package/dist/automation/actions/interaction/get/getListBoxSize.js +12 -12
- package/dist/automation/actions/interaction/get/getListOfElementsFromLocatorTypeLocatorValue.js +90 -44
- package/dist/automation/actions/interaction/get/getLocation.js +32 -31
- package/dist/automation/actions/interaction/get/getMinuteFromCurrentSystemTime.js +4 -4
- package/dist/automation/actions/interaction/get/getNetworkRouteTime.js +4 -4
- package/dist/automation/actions/interaction/get/getNumberOfBrokenImages.js +4 -4
- package/dist/automation/actions/interaction/get/getNumberOfLinksPresentInCurrentPage.js +4 -4
- package/dist/automation/actions/interaction/get/getNumberOfWorkingLinksFromCurrentPage.js +4 -4
- package/dist/automation/actions/interaction/get/getOptions.js +12 -12
- package/dist/automation/actions/interaction/get/getPageTitle.js +5 -5
- package/dist/automation/actions/interaction/get/getPerformanceMetrics.js +5 -5
- package/dist/automation/actions/interaction/get/getPwaScore.js +5 -4
- package/dist/automation/actions/interaction/get/getRect.js +26 -23
- package/dist/automation/actions/interaction/get/getScreenshot.js +12 -18
- package/dist/automation/actions/interaction/get/getScreenshotAs.js +27 -32
- package/dist/automation/actions/interaction/get/getSeoScore.js +5 -4
- package/dist/automation/actions/interaction/get/getSingleApiRequestPayload.js +7 -6
- package/dist/automation/actions/interaction/get/getSingleApiResponse.js +12 -14
- package/dist/automation/actions/interaction/get/getSingleApiResponseTime.js +13 -13
- package/dist/automation/actions/interaction/get/getSingleApiStatusCode.d.ts +1 -1
- package/dist/automation/actions/interaction/get/getSingleApiStatusCode.js +21 -17
- package/dist/automation/actions/interaction/get/getSize.js +26 -24
- package/dist/automation/actions/interaction/get/getSizeOfBrowserWindow.js +5 -5
- package/dist/automation/actions/interaction/get/getStringDataFromLocalFile.js +11 -13
- package/dist/automation/actions/interaction/get/getSystemProperty.js +7 -33
- package/dist/automation/actions/interaction/get/getTagName.js +26 -24
- package/dist/automation/actions/interaction/get/getText.js +28 -25
- package/dist/automation/actions/interaction/get/getTheFirstSelectedOptionFromListBoxAsText.js +12 -12
- package/dist/automation/actions/interaction/get/getTotalNumberOfCookies.js +5 -5
- package/dist/automation/actions/interaction/get/getTunnelIdentifier.js +5 -4
- package/dist/automation/actions/interaction/get/getURLPresentInAddressBar.js +5 -5
- package/dist/automation/actions/interaction/get/getUserHomeDirectory.js +5 -5
- package/dist/automation/actions/interaction/get/getValueByCookieName.js +7 -11
- package/dist/automation/actions/interaction/get/getValueFromLocalStorage.js +7 -10
- package/dist/automation/actions/interaction/get/getValueOfSystemVariable.js +8 -6
- package/dist/automation/actions/interaction/get/getVideoCurrentPlaybackRate.js +12 -12
- package/dist/automation/actions/interaction/get/getVideoCurrentSeekTime.js +12 -12
- package/dist/automation/actions/interaction/get/getVideoCurrentVolume.js +12 -12
- package/dist/automation/actions/interaction/get/getVideoDecodedByte.js +12 -12
- package/dist/automation/actions/interaction/get/getVideoDefaultPlaybackRate.js +12 -12
- package/dist/automation/actions/interaction/get/getVideoMediaLength.js +12 -12
- package/dist/automation/actions/interaction/get/getVideoMediaSource.js +12 -12
- package/dist/automation/actions/interaction/get/getWidthOfBrowser.js +5 -5
- package/dist/automation/actions/interaction/get/getWidthOfWebElement.js +12 -12
- package/dist/automation/actions/interaction/get/getWorkingLinksFromCurrentPage.js +5 -5
- package/dist/automation/actions/interaction/get/getWrappedElement.js +12 -12
- package/dist/automation/actions/interaction/get/getWrappedOptionFromListBoxAsText.js +14 -14
- package/dist/automation/actions/interaction/get/getXLocationOfBrowserWindow.js +5 -4
- package/dist/automation/actions/interaction/get/getXLocationOfWebElement.js +26 -24
- package/dist/automation/actions/interaction/get/getYLocationOfBrowserWindow.js +5 -5
- package/dist/automation/actions/interaction/get/getYLocationOfWebElement.js +26 -24
- package/dist/automation/actions/interaction/iframe/switchToDefaultContent.js +5 -5
- package/dist/automation/actions/interaction/inputlessActions/AirplaneModeSwitchOff.js +5 -5
- package/dist/automation/actions/interaction/inputlessActions/AirplaneModeSwitchOn.js +5 -5
- package/dist/automation/actions/interaction/inputlessActions/Break.js +5 -5
- package/dist/automation/actions/interaction/inputlessActions/Continue.js +5 -5
- package/dist/automation/actions/interaction/inputlessActions/GpsSwitchOff.js +5 -5
- package/dist/automation/actions/interaction/inputlessActions/GpsSwitchOn.js +5 -5
- package/dist/automation/actions/interaction/inputlessActions/HideKeyboard.js +13 -7
- package/dist/automation/actions/interaction/inputlessActions/LockDevice.js +5 -5
- package/dist/automation/actions/interaction/inputlessActions/OpenChromeBrowser.js +18 -6
- package/dist/automation/actions/interaction/inputlessActions/OpenNotification.js +5 -5
- package/dist/automation/actions/interaction/inputlessActions/ResetApp.js +14 -7
- package/dist/automation/actions/interaction/inputlessActions/RestartCurrentDevice.js +5 -5
- package/dist/automation/actions/interaction/inputlessActions/SetDeviceOrientationAsLandscape.js +5 -5
- package/dist/automation/actions/interaction/inputlessActions/SetDeviceOrientationAsPortrait.js +5 -5
- package/dist/automation/actions/interaction/inputlessActions/SetEmulatorPowerStateOff.js +5 -5
- package/dist/automation/actions/interaction/inputlessActions/SetEmulatorPowerStateOn.js +5 -5
- package/dist/automation/actions/interaction/inputlessActions/WifiSwitchOff.js +5 -5
- package/dist/automation/actions/interaction/inputlessActions/WifiSwitchOn.js +5 -5
- package/dist/automation/actions/interaction/maximize/maximize.js +5 -5
- package/dist/automation/actions/interaction/maximize/minimize.js +5 -5
- package/dist/automation/actions/interaction/mouse/mouseClickOnCurrentCursorNTImes.d.ts +2 -0
- package/dist/automation/actions/interaction/mouse/mouseClickOnCurrentCursorNTImes.js +31 -0
- package/dist/automation/actions/interaction/mouse/mouseClickOnCurrentCursorPoint.d.ts +2 -0
- package/dist/automation/actions/interaction/mouse/mouseClickOnCurrentCursorPoint.js +27 -0
- package/dist/automation/actions/interaction/mouse/mouseDoubleClickAtCursorPoint.d.ts +2 -0
- package/dist/automation/actions/interaction/mouse/mouseDoubleClickAtCursorPoint.js +31 -0
- package/dist/automation/actions/interaction/mouse/mouseHover.d.ts +2 -0
- package/dist/automation/actions/interaction/mouse/mouseHover.js +36 -0
- package/dist/automation/actions/interaction/mouse/mouseReleaseLeftMouseButton.d.ts +2 -0
- package/dist/automation/actions/interaction/mouse/mouseReleaseLeftMouseButton.js +42 -0
- package/dist/automation/actions/interaction/mouse/pressAndHold.d.ts +2 -0
- package/dist/automation/actions/interaction/mouse/pressAndHold.js +47 -0
- package/dist/automation/actions/interaction/navigation/goBack.js +5 -5
- package/dist/automation/actions/interaction/navigation/navigate.js +5 -4
- package/dist/automation/actions/interaction/navigation/refresh.js +5 -5
- package/dist/automation/actions/interaction/pinch/PinchInByPercentMob.js +12 -13
- package/dist/automation/actions/interaction/pinch/PinchOutByPercentMob.js +12 -11
- package/dist/automation/actions/interaction/press/longPress.js +15 -11
- package/dist/automation/actions/interaction/press/mobPressBackKey.js +4 -6
- package/dist/automation/actions/interaction/press/mobPressBackSpaceKey.js +12 -8
- package/dist/automation/actions/interaction/press/mobPressSpaceKey.js +12 -8
- package/dist/automation/actions/interaction/press/pressAnyKey.js +25 -16
- package/dist/automation/actions/interaction/press/pressAnyKeyNTimes.js +23 -14
- package/dist/automation/actions/interaction/press/pressEnterKey.js +21 -14
- package/dist/automation/actions/interaction/press/pressHomeKey.js +16 -9
- package/dist/automation/actions/interaction/scroll/scrollHorizontallyTillElementIsVisible.js +20 -15
- package/dist/automation/actions/interaction/scroll/scrollPageToSpecificLocation.js +8 -7
- package/dist/automation/actions/interaction/scroll/scrollToElement.js +18 -13
- package/dist/automation/actions/interaction/scroll/scrollVerticallyTillElementIsVisible.js +20 -15
- package/dist/automation/actions/interaction/set/MOB_SetContext.js +5 -6
- package/dist/automation/actions/interaction/set/MOB_SetEmulatorPowerPercentage.js +5 -6
- package/dist/automation/actions/interaction/set/setClipBoardText.js +13 -13
- package/dist/automation/actions/interaction/shadowDom/shadowDomClick.js +5 -4
- package/dist/automation/actions/interaction/shadowDom/shadowDomEnter.js +5 -4
- package/dist/automation/actions/interaction/shadowDom/shadowDomGetText.js +6 -5
- package/dist/automation/actions/interaction/shadowDom/shadowDomUpload.js +13 -9
- package/dist/automation/actions/interaction/shadowDom/shadowDomVerifyPartialText.js +6 -5
- package/dist/automation/actions/interaction/shadowDom/shadowDomVerifyText.js +6 -5
- package/dist/automation/actions/interaction/swipe/swipeDirectionNTimes.js +12 -10
- package/dist/automation/actions/interaction/swipe/swipeDownToElement.js +13 -10
- package/dist/automation/actions/interaction/swipe/swipeIos.d.ts +2 -0
- package/dist/automation/actions/interaction/swipe/swipeIos.js +52 -0
- package/dist/automation/actions/interaction/swipe/swipeLeftToElement.js +16 -11
- package/dist/automation/actions/interaction/swipe/swipeRightToElement.js +15 -10
- package/dist/automation/actions/interaction/swipe/swipeUpToElement.js +12 -10
- package/dist/automation/actions/interaction/swipe/swipeUpToElementForMWeb.js +16 -13
- package/dist/automation/actions/interaction/swipe/swipeUsingReferenceElement.js +19 -16
- package/dist/automation/actions/interaction/switch/switchToNewTabBasedOnTitle.js +7 -6
- package/dist/automation/actions/interaction/switch/switchToNewWindowBasedOnTitle.js +6 -5
- package/dist/automation/actions/interaction/switch/switchToParentWindow.js +6 -6
- package/dist/automation/actions/interaction/switch/switchToTabBasedOnUrl.js +6 -5
- package/dist/automation/actions/interaction/switch/switchToWindowBasedOnURL.js +5 -4
- package/dist/automation/actions/interaction/switch/switchToWindowIfTitleContainsString.js +7 -6
- package/dist/automation/actions/interaction/switch/switchToWindowIfUrlContainsString.js +6 -5
- package/dist/automation/actions/interaction/upload/uploadfile.js +21 -18
- package/dist/automation/actions/interaction/verify/MOB_VerifyBatteryLevel.js +8 -8
- package/dist/automation/actions/interaction/verify/MOB_VerifyIfAirplaneModeOff.js +7 -7
- package/dist/automation/actions/interaction/verify/MOB_VerifyIfAirplaneModeOn.js +7 -7
- package/dist/automation/actions/interaction/verify/MOB_VerifyIfAppIsClosed.js +19 -10
- package/dist/automation/actions/interaction/verify/MOB_VerifyIfDeviceIsLocked.js +7 -6
- package/dist/automation/actions/interaction/verify/MOB_VerifyIfDeviceIsUnlocked.js +7 -7
- package/dist/automation/actions/interaction/verify/MOB_VerifyIfGpsOff.js +12 -8
- package/dist/automation/actions/interaction/verify/MOB_VerifyIfGpsOn.js +12 -8
- package/dist/automation/actions/interaction/verify/MOB_VerifyIfKeyboardIsHidden.js +7 -7
- package/dist/automation/actions/interaction/verify/MOB_VerifyIfKeyboardIsShown.js +8 -7
- package/dist/automation/actions/interaction/verify/MOB_VerifyIfWifiOff.js +8 -7
- package/dist/automation/actions/interaction/verify/MOB_VerifyIfWifiOn.js +8 -7
- package/dist/automation/actions/interaction/verify/VerifyAccessibilityScore.js +8 -7
- package/dist/automation/actions/interaction/verify/VerifyAllBrokenImages.js +6 -6
- package/dist/automation/actions/interaction/verify/VerifyAllBrowserWindowsClosed.js +12 -10
- package/dist/automation/actions/interaction/verify/VerifyAllOptionsAreDeSelected.js +19 -19
- package/dist/automation/actions/interaction/verify/VerifyAllOptionsAreSelected.js +12 -12
- package/dist/automation/actions/interaction/verify/VerifyAttributeValue.js +35 -53
- package/dist/automation/actions/interaction/verify/VerifyBestPracticesScore.js +6 -5
- package/dist/automation/actions/interaction/verify/VerifyBrowserHtmlCodeContainsString.js +6 -5
- package/dist/automation/actions/interaction/verify/VerifyBrowserWindowHeight.js +7 -6
- package/dist/automation/actions/interaction/verify/VerifyBrowserWindowTitleContainsString.js +7 -6
- package/dist/automation/actions/interaction/verify/VerifyBrowserWindowTitleIsString.js +7 -6
- package/dist/automation/actions/interaction/verify/VerifyBrowserWindowUrlContainsExpectedUrl.js +6 -5
- package/dist/automation/actions/interaction/verify/VerifyBrowserWindowUrlIsString.js +5 -4
- package/dist/automation/actions/interaction/verify/VerifyBrowserWindowWidth.js +6 -5
- package/dist/automation/actions/interaction/verify/VerifyBrowserWindowXLocation.js +6 -5
- package/dist/automation/actions/interaction/verify/VerifyBrowserWindowYLocation.js +7 -6
- package/dist/automation/actions/interaction/verify/VerifyCheckBoxIsNotSelected.js +12 -12
- package/dist/automation/actions/interaction/verify/VerifyCheckBoxIsSelected.js +12 -12
- package/dist/automation/actions/interaction/verify/VerifyCssAttributeValue.js +20 -14
- package/dist/automation/actions/interaction/verify/VerifyElementIsClickable.js +28 -25
- package/dist/automation/actions/interaction/verify/VerifyElementIsDisabled.js +29 -27
- package/dist/automation/actions/interaction/verify/VerifyElementIsDisplayed.js +26 -24
- package/dist/automation/actions/interaction/verify/VerifyElementIsEnabled.js +26 -24
- package/dist/automation/actions/interaction/verify/VerifyElementIsEnabledInSpecifiedTime.d.ts +2 -0
- package/dist/automation/actions/interaction/verify/VerifyElementIsEnabledInSpecifiedTime.js +84 -0
- package/dist/automation/actions/interaction/verify/VerifyElementIsNotDisplayed.js +51 -28
- package/dist/automation/actions/interaction/verify/VerifyElementIsSelected.js +39 -27
- package/dist/automation/actions/interaction/verify/VerifyElementIsSelectedInSpecifiedTime.d.ts +2 -0
- package/dist/automation/actions/interaction/verify/VerifyElementIsSelectedInSpecifiedTime.js +83 -0
- package/dist/automation/actions/interaction/verify/VerifyElementNotContainsText.js +23 -23
- package/dist/automation/actions/interaction/verify/VerifyHeightOfWebElement.js +23 -23
- package/dist/automation/actions/interaction/verify/VerifyHexCodeForGivenXYCoordinates.js +44 -14
- package/dist/automation/actions/interaction/verify/VerifyIfAllCookiesAreDeleted.js +4 -4
- package/dist/automation/actions/interaction/verify/VerifyIfAudioEnded.js +12 -12
- package/dist/automation/actions/interaction/verify/VerifyIfAudioIsMuted.js +12 -12
- package/dist/automation/actions/interaction/verify/VerifyIfAudioIsPaused.js +12 -12
- package/dist/automation/actions/interaction/verify/VerifyIfAudioIsPlaying.js +12 -12
- package/dist/automation/actions/interaction/verify/VerifyIfBrowserWindowIsClosed.js +8 -9
- package/dist/automation/actions/interaction/verify/VerifyIfCookieNameIsAdded.js +6 -5
- package/dist/automation/actions/interaction/verify/VerifyIfCookieNameIsDeleted.js +5 -4
- package/dist/automation/actions/interaction/verify/VerifyIfCookieObjectIsPresent.js +5 -5
- package/dist/automation/actions/interaction/verify/VerifyIfGivenOptionIsDuplicate.js +14 -14
- package/dist/automation/actions/interaction/verify/VerifyIfImageIsBroken.js +6 -5
- package/dist/automation/actions/interaction/verify/VerifyIfLinkIsBroken.js +6 -5
- package/dist/automation/actions/interaction/verify/VerifyIfLinkIsWorking.js +6 -5
- package/dist/automation/actions/interaction/verify/VerifyIfLinksAreBroken.js +5 -4
- package/dist/automation/actions/interaction/verify/VerifyIfLinksAreWorking.js +5 -4
- package/dist/automation/actions/interaction/verify/VerifyIfOptionWithIndexIsDeselectedInElement.js +13 -13
- package/dist/automation/actions/interaction/verify/VerifyIfOptionWithIndexIsSelectedInListBox.js +13 -13
- package/dist/automation/actions/interaction/verify/VerifyIfOptionWithTextIsDeselected.js +12 -12
- package/dist/automation/actions/interaction/verify/VerifyIfOptionWithValueIsDeselected.js +12 -12
- package/dist/automation/actions/interaction/verify/VerifyIfOptionWithValueIsSelected.js +12 -12
- package/dist/automation/actions/interaction/verify/VerifyIfOptionWithVisibleTextIsSelected.js +12 -12
- package/dist/automation/actions/interaction/verify/VerifyIfSpecifiedOptionIsSelected.js +12 -12
- package/dist/automation/actions/interaction/verify/VerifyIfStatusCodeOfALinkIsStatusCode.js +7 -6
- package/dist/automation/actions/interaction/verify/VerifyIfStatusCodesOfLinks.js +30 -22
- package/dist/automation/actions/interaction/verify/VerifyIfVideoEnded.js +12 -12
- package/dist/automation/actions/interaction/verify/VerifyIfVideoIsMuted.js +12 -12
- package/dist/automation/actions/interaction/verify/VerifyIfVideoIsPaused.js +12 -12
- package/dist/automation/actions/interaction/verify/VerifyIfVideoIsPlaying.js +12 -12
- package/dist/automation/actions/interaction/verify/VerifyIfVideoPlayingInMute.js +12 -12
- package/dist/automation/actions/interaction/verify/VerifyIfVideoPlayingInUnmute.js +12 -12
- package/dist/automation/actions/interaction/verify/VerifyIfXAndYCoordinateOfElement.js +25 -23
- package/dist/automation/actions/interaction/verify/VerifyLinkNavigatesToTitle.js +7 -6
- package/dist/automation/actions/interaction/verify/VerifyListBoxOptionsAreSorted.js +12 -12
- package/dist/automation/actions/interaction/verify/VerifyNavigateURL.js +6 -5
- package/dist/automation/actions/interaction/verify/VerifyNumberOfElementsByTagName.js +7 -5
- package/dist/automation/actions/interaction/verify/VerifyNumberOfElementsByXpath.js +13 -7
- package/dist/automation/actions/interaction/verify/VerifyPartialAttributeValue.js +33 -42
- package/dist/automation/actions/interaction/verify/VerifyPartialTitleOfCurrentPage.js +7 -6
- package/dist/automation/actions/interaction/verify/VerifyPerformanceScore.js +7 -6
- package/dist/automation/actions/interaction/verify/VerifyPwaScore.js +6 -5
- package/dist/automation/actions/interaction/verify/VerifyRadioButtonIsNotSelected.js +12 -12
- package/dist/automation/actions/interaction/verify/VerifyRadioButtonIsSelected.js +12 -12
- package/dist/automation/actions/interaction/verify/VerifySeoScore.js +6 -5
- package/dist/automation/actions/interaction/verify/VerifyTagName.js +12 -12
- package/dist/automation/actions/interaction/verify/VerifyThatSpecifiedOptionIsNotSelected.js +20 -31
- package/dist/automation/actions/interaction/verify/VerifyTitleInAllPage.js +8 -7
- package/dist/automation/actions/interaction/verify/VerifyTitleOfCurrentPage.js +6 -5
- package/dist/automation/actions/interaction/verify/VerifyValueOfElementContainsString.js +12 -12
- package/dist/automation/actions/interaction/verify/VerifyValueOfElementIsCleared.js +12 -12
- package/dist/automation/actions/interaction/verify/VerifyValueOfElementIsString.js +12 -12
- package/dist/automation/actions/interaction/verify/VerifyWidthOfElement.js +23 -23
- package/dist/automation/actions/interaction/verify/VerifyXLocationOfElement.js +23 -23
- package/dist/automation/actions/interaction/verify/VerifyYLocationOfElement.js +26 -23
- package/dist/automation/actions/interaction/verify/checkIfElementIsDisplayed.js +26 -22
- package/dist/automation/actions/interaction/verify/verifyElementIsDisplayedWithinSpecifiedTime.d.ts +2 -0
- package/dist/automation/actions/interaction/verify/verifyElementIsDisplayedWithinSpecifiedTime.js +85 -0
- package/dist/automation/actions/interaction/verify/verifypartialtext.js +28 -25
- package/dist/automation/actions/interaction/verify/verifytext.js +30 -30
- package/dist/automation/actions/interaction/wait/MOB_WaitTillAllElementsAreInvisible.ts.js +5 -6
- package/dist/automation/actions/interaction/wait/MOB_WaitTillAttributeOfElementContainsString.js +17 -14
- package/dist/automation/actions/interaction/wait/MOB_WaitTillElementIsEnabled.js +12 -11
- package/dist/automation/actions/interaction/wait/MOB_WaitTillElementIsInvisible.js +14 -12
- package/dist/automation/actions/interaction/wait/MOB_WaitTillElementIsSelected.js +12 -11
- package/dist/automation/actions/interaction/wait/MOB_WaitTillElementIsVisible.js +15 -13
- package/dist/automation/actions/interaction/wait/MOB_WaitTillStalenessOfElement.js +12 -11
- package/dist/automation/actions/interaction/wait/wait.js +5 -4
- package/dist/automation/actions/interaction/wait/waitTillAttributeOfElementIsString.js +26 -24
- package/dist/automation/actions/interaction/wait/waitTillElementContainsText.js +26 -24
- package/dist/automation/actions/interaction/wait/waitTillElementHasText.js +26 -24
- package/dist/automation/actions/interaction/wait/waitTillElementIsClickable.js +28 -25
- package/dist/automation/actions/interaction/wait/waitTillPresenceOfAllElements.js +32 -22
- package/dist/automation/actions/interaction/wait/waitTillPresenceOfElement.js +26 -24
- package/dist/automation/actions/interface/FireFlinkResponseSchema.d.ts +148 -0
- package/dist/automation/actions/interface/FireFlinkResponseSchema.js +209 -0
- package/dist/automation/actions/interface/alertActionInterface.d.ts +1 -0
- package/dist/automation/actions/interface/findActionInterface.d.ts +3 -0
- package/dist/automation/actions/interface/getActionInterface.d.ts +76 -66
- package/dist/automation/actions/interface/interactionActionInterface.d.ts +5 -0
- package/dist/automation/actions/interface/mouseActionsinterface.d.ts +51 -0
- package/dist/automation/actions/interface/mouseActionsinterface.js +2 -0
- package/dist/automation/actions/interface/pinchActionInterface.d.ts +7 -0
- package/dist/automation/actions/interface/pressActionInterface.d.ts +4 -0
- package/dist/automation/actions/interface/swipeActionInterface.d.ts +25 -10
- package/dist/automation/actions/interface/verifyActionInterface.d.ts +36 -0
- package/dist/automation/actions/interface/waitActionInterface.d.ts +19 -0
- package/dist/automation/browserSession/initiateBrowserSession.d.ts +1 -1
- package/dist/automation/browserSession/initiateBrowserSession.js +4 -4
- package/dist/automation/cloudSession/initiateCloudSession.js +3 -1
- package/dist/automation/mobileSession/initiateMobileSession.d.ts +25 -1
- package/dist/automation/mobileSession/initiateMobileSession.js +23 -10
- package/dist/core/constants/allAction.js +2 -1
- package/dist/core/constants/supportedActions.d.ts +1 -0
- package/dist/core/constants/supportedActions.js +17 -9
- package/dist/core/interfaces/actionInterface.d.ts +34 -33
- package/dist/core/interfaces/errorInfoInterface.d.ts +1 -1
- package/dist/core/interfaces/fireflinkScriptPayloadInterface.d.ts +4 -1
- package/dist/core/interfaces/llmConfigurationInterface.d.ts +3 -2
- package/dist/core/interfaces/llmResponseInterface.d.ts +10 -10
- package/dist/core/interfaces/scriptGenrationDataInterface.d.ts +14 -0
- package/dist/core/interfaces/simplifyAndFlattenInterface.d.ts +5 -0
- package/dist/core/main/actionHandlerFactory.js +134 -64
- package/dist/core/main/executionContext.d.ts +1 -1
- package/dist/core/main/executionContext.js +1 -1
- package/dist/core/main/runAutomationScript.d.ts +1 -0
- package/dist/core/main/runAutomationScript.js +209 -90
- package/dist/core/main/stepProcessor.d.ts +2 -1
- package/dist/core/main/stepProcessor.js +2 -2
- package/dist/core/types/scriptTypesType.d.ts +1 -1
- package/dist/core/types/visionllmInputType.d.ts +4 -5
- package/dist/domAnalysis/getRelaventElements.d.ts +5 -1
- package/dist/domAnalysis/getRelaventElements.js +14 -5
- package/dist/domAnalysis/relativeElementsFromDom.d.ts +2 -1
- package/dist/domAnalysis/relativeElementsFromDom.js +66 -1
- package/dist/domAnalysis/searchBest.d.ts +5 -1
- package/dist/domAnalysis/searchBest.js +153 -50
- package/dist/domAnalysis/simplifyAndFlatten.d.ts +3 -2
- package/dist/domAnalysis/simplifyAndFlatten.js +109 -16
- package/dist/fireflinkData/fireflinkLocators/getListOfLocators.js +17 -11
- package/dist/fireflinkData/fireflinkLocators/{elementsFromHTML.d.ts → parser/getElementsFromHTML.d.ts} +3 -9
- package/dist/fireflinkData/fireflinkLocators/parser/getElementsFromHTML.js +557 -0
- package/dist/fireflinkData/fireflinkLocators/types/locator.d.ts +17 -0
- package/dist/fireflinkData/fireflinkLocators/types/locator.js +2 -0
- package/dist/fireflinkData/fireflinkLocators/utils/androidSelector.d.ts +2 -0
- package/dist/fireflinkData/fireflinkLocators/utils/androidSelector.js +31 -0
- package/dist/fireflinkData/fireflinkLocators/utils/cssSelector.d.ts +19 -0
- package/dist/fireflinkData/fireflinkLocators/utils/cssSelector.js +192 -0
- package/dist/fireflinkData/fireflinkLocators/utils/iosSelector.d.ts +2 -0
- package/dist/fireflinkData/fireflinkLocators/utils/iosSelector.js +159 -0
- package/dist/fireflinkData/fireflinkLocators/utils/referenceXpath.d.ts +35 -0
- package/dist/fireflinkData/fireflinkLocators/utils/referenceXpath.js +590 -0
- package/dist/fireflinkData/fireflinkLocators/utils/xpath.d.ts +38 -0
- package/dist/fireflinkData/fireflinkLocators/utils/xpath.js +1182 -0
- package/dist/fireflinkData/fireflinkLocators/utils/xpathHelpers.d.ts +137 -0
- package/dist/fireflinkData/fireflinkLocators/utils/xpathHelpers.js +1647 -0
- package/dist/fireflinkData/fireflinkScript/appendScriptData.d.ts +2 -0
- package/dist/fireflinkData/fireflinkScript/appendScriptData.js +51 -0
- package/dist/fireflinkData/fireflinkScript/scriptGenrationData.js +4 -0
- package/dist/imageAnalysisMobile/annotatedScreenshotMobile.d.ts +4 -0
- package/dist/imageAnalysisMobile/annotatedScreenshotMobile.js +115 -7
- package/dist/imageAnalysisWeb/annotateScreenshot.js +4 -4
- package/dist/imageAnalysisWeb/generateAnnotatedScreenshots.d.ts +4 -1
- package/dist/imageAnalysisWeb/generateAnnotatedScreenshots.js +15 -17
- package/dist/llmConfig/llmConfiguration.d.ts +4 -3
- package/dist/llmConfig/llmConfiguration.js +41 -18
- package/dist/service/fireflink.service.d.ts +1 -1
- package/dist/service/fireflink.service.js +4 -4
- package/dist/tests/poc.d.ts +0 -1
- package/dist/tests/poc.js +211 -226
- package/dist/tests/test.d.ts +1 -0
- package/dist/tests/test.js +26 -0
- package/dist/tests/test12.d.ts +1 -0
- package/dist/tests/test12.js +78 -73
- package/dist/tests/testss.d.ts +1 -0
- package/dist/tests/testss.js +23 -0
- package/dist/utils/DomExtraction/jsForAttributeInjection.d.ts +2 -0
- package/dist/utils/DomExtraction/jsForAttributeInjection.js +220 -8
- package/dist/utils/InstancesDetails/getInstancesInfo.d.ts +26 -1
- package/dist/utils/InstancesDetails/getInstancesInfo.js +11 -5
- package/dist/utils/browserCap/capability.d.ts +10 -10
- package/dist/utils/browserCap/capability.js +21 -16
- package/dist/utils/frameWorkDetector/frameWorkDetector.d.ts +6 -0
- package/dist/utils/frameWorkDetector/frameWorkDetector.js +43 -0
- package/dist/utils/frameWorkDetector/frameWorkDetectorInterface.d.ts +10 -0
- package/dist/utils/frameWorkDetector/frameWorkDetectorInterface.js +2 -0
- package/dist/utils/helpers/enterActionHelper.d.ts +1 -0
- package/dist/utils/helpers/enterActionHelper.js +2 -1
- package/dist/utils/helpers/platformContext.d.ts +3 -0
- package/dist/utils/helpers/platformContext.js +11 -0
- package/dist/utils/helpers/platformSyntax.d.ts +1 -0
- package/dist/utils/helpers/platformSyntax.js +17 -0
- package/dist/utils/helpers/sameActionsHelper.js +7 -2
- package/dist/utils/helpers/xpathcreation.d.ts +5 -1
- package/dist/utils/helpers/xpathcreation.js +43 -4
- package/dist/utils/iframesExtraction/findElementUsingFF.js +12 -9
- package/dist/utils/iframesExtraction/iframeInterface.d.ts +4 -0
- package/dist/utils/javascript/jsForShadowRoot.d.ts +1 -1
- package/dist/utils/javascript/jsForShadowRoot.js +4 -0
- package/dist/utils/javascript/jsForVision.d.ts +2 -2
- package/dist/utils/javascript/jsForVision.js +17 -5
- package/dist/utils/logger/logData.d.ts +1 -0
- package/dist/utils/logger/logData.js +19 -0
- package/dist/utils/sslConfig/apiCallPatch.d.ts +1 -0
- package/dist/utils/sslConfig/apiCallPatch.js +33 -0
- package/dist/utils/sslConfig/getSecureAgent.d.ts +2 -0
- package/dist/utils/sslConfig/getSecureAgent.js +30 -0
- package/dist/utils/swipe/domSearchHelper.d.ts +1 -1
- package/dist/utils/swipe/domSearchHelper.js +43 -42
- package/dist/utils/swipe/swipeMovement.js +28 -19
- package/package.json +21 -6
- package/dist/automation/actions/interaction/get/getAudioDimension.d.ts +0 -2
- package/dist/automation/actions/interaction/get/getAudioDimension.js +0 -34
- package/dist/automation/actions/interaction/get/getAudioHeight.d.ts +0 -2
- package/dist/automation/actions/interaction/get/getAudioHeight.js +0 -30
- package/dist/automation/actions/interaction/get/getAudioWidth.d.ts +0 -2
- package/dist/automation/actions/interaction/get/getAudioWidth.js +0 -30
- package/dist/automation/actions/interaction/get/getVideoDimension.d.ts +0 -2
- package/dist/automation/actions/interaction/get/getVideoDimension.js +0 -31
- package/dist/automation/actions/interaction/get/getVideoHeight.d.ts +0 -2
- package/dist/automation/actions/interaction/get/getVideoHeight.js +0 -28
- package/dist/automation/actions/interaction/get/getVideoWidth.d.ts +0 -2
- package/dist/automation/actions/interaction/get/getVideoWidth.js +0 -28
- package/dist/fireflinkData/fireflinkLocators/elementsFromHTML.js +0 -514
- package/dist/fireflinkData/fireflinkLocators/typeList.d.ts +0 -1
- package/dist/fireflinkData/fireflinkLocators/typeList.js +0 -33
|
@@ -2,29 +2,31 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.keywordExtractorMobile = keywordExtractorMobile;
|
|
4
4
|
async function keywordExtractorMobile({ priorAndNextSteps }) {
|
|
5
|
-
const allowedActions = ["openApp", "tap", "enter", "wait", "verify", "scroll", "get", "
|
|
5
|
+
const allowedActions = ["openApp", "tap", "enter", "wait", "verify", "scroll", "get", "closeApp", "combined"];
|
|
6
6
|
const prompt = `
|
|
7
7
|
You are an expert in mobile app testing.
|
|
8
8
|
From the step, extract ONLY the meaningful keywords so that i can search for the element in the dom.
|
|
9
9
|
Rules:
|
|
10
10
|
- understand the step and context from the ${priorAndNextSteps}.and only extract keywords from current step and dont extract from prior and next steps.
|
|
11
11
|
- 3 to 5 keywords maximum.
|
|
12
|
-
- If step
|
|
13
|
-
- If the step is about luanching an app or opening app, like (action, param1, param2) or(action,'param1,param2') then wrap them into array and give them as keywords like ['com.app.android', 'com.app.activity']
|
|
12
|
+
- If step is contains more than one keyword like tap on x button of y ,then include both in keywords like this [x,y].and include full keywords rather than insering part of it.
|
|
13
|
+
- If the step is about luanching an app or opening app, like (action, param1, param2) or(action,'param1,param2') then wrap them into array and give them as keywords like ['com.app.android', 'com.app.activity'],if it is (action,param1) like (launch app, 'com.app.android') then give it as one keyword ['com.app.android'].
|
|
14
14
|
and also give them in the format (launch app, 'com.app.android', 'com.app.activity') like first package name and second activity name. if any separator exists (- / | :), split on it.
|
|
15
15
|
If they mention package:com.app.android and activity:com.app.activity remove variable name and then convert them into ['com.app.android, 'com.app.activity']
|
|
16
|
-
- If the step is about entering text,
|
|
16
|
+
- If the step is about entering text, Should NOT include entered input values from the step in keywords.
|
|
17
17
|
- First keywords should be from step next Keywords must be distinct and based on the element's label meaning only.
|
|
18
18
|
- **Keywords can be string or number if the step contains a number it can be any number,must include that number in keywords and give it in string format.**
|
|
19
|
-
-
|
|
20
|
-
-
|
|
21
|
-
-
|
|
19
|
+
- if step has keyword with type give two keywords with type and without type. ex: tap on leaving from text field. keywords = ["leaving from",leaving from text field].
|
|
20
|
+
- Should NOT include any other unrelated keywords for step.
|
|
21
|
+
- Should NOT include generic UI words (button, field, etc) and action words (tap, click, press, etc).example:tap on x button -> ['x']
|
|
22
|
+
- Should NOT include status/technical words (displayed, enabled, authenticate, visible).
|
|
22
23
|
- If an element label contains multiple words (e.g., "Sign In", "Add to Cart"), keep them together as ONE keyword and do not split them and also for keywords you generated, do not split them.
|
|
23
24
|
-** element_name: extract name of the element that mentioned in the step not from keywords or other steps.(eg:tap on x -> element_name:x). always try to retuen short and meaning full element name from step**
|
|
24
|
-
- action: openApp for opening or launching of app, tap for taping or selecting or clicking or pressing, enter for entering input, wait for waiting or sleeping, verify for verifying or checking,
|
|
25
|
-
- If step is press any key give action as tap.
|
|
26
|
-
- action must be one of from this list ${allowedActions}.if not one of them, return action as 'combined'. if step about set or
|
|
27
|
-
- if the step action is about finding then provide action as combined.
|
|
25
|
+
- action: openApp for opening or launching of app and not for open app with apk and activate app is there in step give action as combined, tap for taping or selecting or clicking or pressing, enter for entering input, wait for waiting or sleeping, verify for verifying or checking,scroll for scrolling and swiping, get for getting and fetching element and gtting logs and getting driver or instance details, closeApp for closing the app but not for terminating app step.
|
|
26
|
+
- If step is press any key give action as tap.if step is clear or clearandenter give action as enter and if step is open chrome browser app por application and it doesnot have app package or bundle id give action as combined but if step has app package or bundle id give action as openApp.
|
|
27
|
+
- action must be one of from this list ${allowedActions}.if not one of them, return action as 'combined'. if step about set or setting or find, install apk or ipa, uninstall apk or ipa,activate app with app package or bundle id, pinch in or pinch out or related turn wifi or airplane mode return action as 'combined'
|
|
28
|
+
- if the step action is about finding or check app is installed or open chrome browser or open app with apk path or open notification bar or terminate app using app package or bumdle id or running app in the background for some seconds then provide action as combined.
|
|
29
|
+
- Return ONLY a valid JSON object; the response must start with '{' and end with '}', with no markdown, code fences, explanations, or extra text.
|
|
28
30
|
Respond only with JSON using this format:
|
|
29
31
|
{
|
|
30
32
|
"keywords": [key1,key2,key3,key4,key5] if step is opening app then keywords should be like [app package,app activity],
|
|
@@ -17,7 +17,7 @@ Rules:
|
|
|
17
17
|
4. Please paste the “below example array” here, so I can make it dynamic and generic strictly in the same format.
|
|
18
18
|
**Dont include any other text in the array. and also dont include example array in the response.**
|
|
19
19
|
Output Format
|
|
20
|
-
|
|
20
|
+
- Return ONLY a valid JSON object; the response must start with '{' and end with '}', with no markdown, code fences, explanations, or extra text.
|
|
21
21
|
Respond strictly in valid JSON using the following structure:
|
|
22
22
|
{
|
|
23
23
|
"manualSteps": ["step 1", "step 2", "step 3"]
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.verifyActionExtractorPrompt = verifyActionExtractorPrompt;
|
|
4
4
|
async function verifyActionExtractorPrompt({ extractedDomJson, priorAndNextSteps, }) {
|
|
5
|
-
const nlpList = `VerifyElementIsDisabled,VerifyElementIsEnabled,VerifyElementIsSelected,VerifyIfOptionWithIndexIsDeselectedInElement,
|
|
5
|
+
const nlpList = `VerifyNumberOfElementsByXpath,VerifyElementIsDisabled,VerifyElementIsEnabled,VerifyElementIsSelected,VerifyIfOptionWithIndexIsDeselectedInElement,
|
|
6
6
|
VerifyIfOptionWithIndexIsSelectedInListBox,VerifyWidthOfElement,VerifyBrowserWindowXLocation,
|
|
7
7
|
VerifyIfCookieNameIsDeleted,VerifyBrowserWindowWidth,VerifyValueOfElementIsCleared,
|
|
8
8
|
VerifyTagName,VerifyIfCookieNameIsAdded,VerifyLinkNavigatesToTitle,VerifyXLocationOfElement,
|
|
@@ -10,7 +10,7 @@ async function verifyActionExtractorPrompt({ extractedDomJson, priorAndNextSteps
|
|
|
10
10
|
VerifyNumberOfElementsByTagName,VerifyListBoxOptionsAreSorted,VerifyNavigateURL,
|
|
11
11
|
VerifyHeightOfWebElement,VerifyValueOfElementContainsString,VerifyBrowserWindowHeight,VerifyIfLinksAreBroken,
|
|
12
12
|
VerifyIfLinkIsBroken,VerifyValueOfElementIsString,VerifyYLocationOfElement,
|
|
13
|
-
|
|
13
|
+
VerifyAttributeValue,
|
|
14
14
|
VerifyElementIsDisplayed,VerifyAllOptionsAreSelected,VerifyIfOptionWithValueIsDeselected,
|
|
15
15
|
VerifyBrowserWindowTitleContainsString,VerifyBrowserWindowTitleIsString,
|
|
16
16
|
VerifyTitleOfCurrentPage,VerifyPartialTitleOfCurrentPage,VerifyElementIsNotDisplayed,
|
|
@@ -28,7 +28,7 @@ async function verifyActionExtractorPrompt({ extractedDomJson, priorAndNextSteps
|
|
|
28
28
|
VerifyIfAudioIsPlaying,VerifyIfAudioIsPaused,VerifyIfAudioIsMuted,VerifyIfAudioEnded,
|
|
29
29
|
VerifyIfLinkIsWorking,VerifyIfLinksAreWorking,
|
|
30
30
|
VerifyIfImageIsBroken,VerifyAllBrokenImages,VerifyIfStatusCodeOfALinkIsStatusCode,
|
|
31
|
-
|
|
31
|
+
VerifyIfStatusCodeOfAllLinksIsStatusCode,VerifyIfOptionWithVisibleTextIsSelected,VerifyBrowserWindowUrlIsString,
|
|
32
32
|
VerifyIfOptionWithTextIsDeselected,VerifyPerformanceScore,VerifyAccessibilityScore,VerifyBrowserWindowUrlContainsExpectedUrl,
|
|
33
33
|
VerifyBestPracticesScore,VerifySeoScore,VerifyPwaScore,VerifyHexCodeForGivenXYCoordinates`;
|
|
34
34
|
const elementType = ['link', 'textfield', 'icon', 'button', 'radioButton', 'text', 'textarea', 'image', 'dropdown', 'checkbox', 'tab', 'action overflow button', 'hamburger icon', 'toggle button', 'suggestion', 'time picker', 'date picker', 'toaster message', 'card', 'tooltip', 'option', 'calender', 'sliders', 'visual testing'];
|
|
@@ -39,37 +39,39 @@ Given the step, the simplified DOM: ${extractedDomJson}, and the list of NLP nam
|
|
|
39
39
|
Select the perfect matching NLP name from the list that best fits the step's intent.
|
|
40
40
|
**The NLP name must match exactly one value from the approved NLP list. Do not generate or suggest any new NLP names under any condition.**
|
|
41
41
|
step may give any way,you need to get most matching and most related nlp name from the list that relates to step.
|
|
42
|
-
for these nlp's VerifyIfSpecifiedOptionIsSelected,VerifyThatSpecifiedOptionIsNotSelected,VerifyIfOptionWithValueIsSelected,VerifyIfOptionWithValueIsDeselected,in step if they mention word value then only match with these VerifyIfOptionWithValueIsSelected,VerifyIfOptionWithValueIsDeselected.Otherwise go with specified option nlp's.
|
|
42
|
+
for these nlp's VerifyIfSpecifiedOptionIsSelected,VerifyThatSpecifiedOptionIsNotSelected,VerifyIfOptionWithValueIsSelected,VerifyIfOptionWithValueIsDeselected,in step if they mention word value then only match with these VerifyIfOptionWithValueIsSelected,VerifyIfOptionWithValueIsDeselected.Otherwise go with specified option nlp's. and only select tags for these nlp's from the given tag list.
|
|
43
43
|
if step is verify option with index is deselected map to VerifyIfOptionWithIndexIsDeselectedInElement and if step is verify option with index is selected then map to VerifyIfOptionWithIndexIsSelectedInListBox.
|
|
44
44
|
example: verify if email element is present
|
|
45
45
|
nlp name should be VerifyElementIsDisplayed
|
|
46
|
-
|
|
47
|
-
|
|
46
|
+
- Return ONLY a valid JSON object; the response must start with '{' and end with '}', with no markdown, code fences, explanations, or extra text.
|
|
47
|
+
Return **only valid JSON** in the following format:
|
|
48
48
|
{
|
|
49
|
-
"
|
|
49
|
+
"attributeValue": "Fire-Flink-x",
|
|
50
50
|
"nlpName": "x",
|
|
51
|
-
"
|
|
51
|
+
"inputText":"x",
|
|
52
52
|
"elementType": "x"
|
|
53
53
|
}
|
|
54
54
|
|
|
55
55
|
Rules:
|
|
56
56
|
- nlpName must be exactly one from the provided list.
|
|
57
|
+
-while matching nlpName with step (ignore spaces, case differences).If multiple NLPs are similar, choose the MOST SPECIFIC and EXACT match.
|
|
57
58
|
- Use context from the steps : ${priorAndNextSteps}, keyword and json to search for FF-inspecter.
|
|
58
59
|
- **Find the FF-inspecter attribute value of the element in the Simplified JSON whose text or any other attributes best match the step in the simplified DOM.**
|
|
59
|
-
- For some steps you can see two inputs but you need to understand step and send the required
|
|
60
|
-
ex: Verify the flights matches the flight, Verify the home has 30 and 50 coordinates if they give x-30,y-50 just send 30,50 and verify hex code '#FFFFFF' for given (34,11) coordinates or they will give x-34,y-11 hexcode-#FFFFFF format than fill
|
|
60
|
+
- For some steps you can see two inputs but you need to understand step and send the required inputText. inputText can be string, number, url or xpath.
|
|
61
|
+
ex: Verify the flights matches the flight, Verify the home has 30 and 50 coordinates if they give x-30,y-50 just send 30,50 and verify hex code '#FFFFFF' for given (34,11) coordinates or they will give x-34,y-11 hexcode-#FFFFFF format than fill inputText in this order "#FFFFFF,34,11"
|
|
61
62
|
here keyword : "flights" , input : "flight", here input:"30,50" , here input:"#FFFFFF,34,11"
|
|
62
|
-
- If step is about checking attribute value then map to attribute nlps and
|
|
63
|
-
and also If a step requires comparing two values, provide the input in the format
|
|
64
|
-
- if step is about tag name then
|
|
65
|
-
- if step is about verifying location then
|
|
63
|
+
- If step is about checking attribute value then map to attribute nlps and inputText: "attribute_name,element_name" here attribute_name can be id,text,href etc not fire-flink-x. inputText should be in this format.if they mention css attribute value then inputText should be "css_property,expected_value" from the step only.
|
|
64
|
+
and also If a step requires comparing two values, provide the input in the format inputText: "value1,value2".
|
|
65
|
+
- if step is about tag name then inputText: "tag name". and if step is about verifying tag name and with count then inputText: "tag name,count". and if any step is about verifying number of elements with xpath then inputText should be "xpath,count"
|
|
66
|
+
- if step is about verifying location then inputText: "coordinates".
|
|
66
67
|
- If a step involves a URL, map navigation/action keywords (navigate) to VerifyNavigateURL, partial match keywords (contains, includes) to VerifyUrlContainsExpectedUrl or VerifyBrowserWindowUrlContainsExpectedUrl exact match keywords (equals, is, exactly) to VerifyUrlIsString or VerifyBrowserWindowUrlIsString based on step if they mention navigate to title match with (VerifyLinkNavigatesToTitle) default to exact match if unclear, and prioritize navigation if both intents exist.
|
|
67
68
|
- If no explicit option is mentioned in the step, map it to the most relevant non-option verification NLP based on the intent of the step.
|
|
68
|
-
- **Extract
|
|
69
|
+
- **Extract inputText from the step that is which is being verified in the step, if you can't find any input text in the step, return keyword as inputText.**
|
|
69
70
|
if step is verifying value of element then extract value which is being verified only not any other words in the step.
|
|
70
|
-
-
|
|
71
|
-
-
|
|
72
|
-
-
|
|
71
|
+
- Only for VerifyIfStatusCodeOfAllLinksIsStatusCode extract all links given in step and give in inputText as '[link1,link2,link3...],statusCode'
|
|
72
|
+
- For performance and accessibility score extraction from step, use the inputs from step: [url,device,score] should be in this order. if any input is missing send remining inputs from step itself.
|
|
73
|
+
- if no matching element found for the step return attributeValue as only 'Fire-Flink-0' dont give Fire-Flink-x or any string .
|
|
74
|
+
- Based on step give most relevant type of element. use this list to choose elementType: ${elementType} and Never change syntax of elementType, follow the syntax of elementType in list.if elementType is not there in list return 'link'.
|
|
73
75
|
- **Respond with valid JSON only. don't return any other text or don't return response in list format**
|
|
74
76
|
`;
|
|
75
77
|
return prompt;
|
|
@@ -20,10 +20,9 @@ Select the perfect matching NLP name from the list that best fits the step's int
|
|
|
20
20
|
|
|
21
21
|
Return **only valid JSON** in the following format:
|
|
22
22
|
{
|
|
23
|
-
"
|
|
23
|
+
"attributeValue": "Fire-Flink-x",
|
|
24
24
|
"nlpName": "x",
|
|
25
|
-
"
|
|
26
|
-
"keyword": "x",
|
|
25
|
+
"inputText":"x"
|
|
27
26
|
"elementType": "x",
|
|
28
27
|
"locator_type":"x"
|
|
29
28
|
}
|
|
@@ -31,21 +30,22 @@ Rules:
|
|
|
31
30
|
- nlpName must be exactly one from the provided list.
|
|
32
31
|
- Use context from the steps : ${priorAndNextSteps}, keyword and json to search for FF-inspecter.
|
|
33
32
|
- **Find the FF-inspecter attribute value of the element in the Simplified JSON whose text or attributes best match the step.**
|
|
34
|
-
- For some steps you can see two inputs but you need to uderstand step and send the requred
|
|
33
|
+
- For some steps you can see two inputs but you need to uderstand step and send the requred inputText.
|
|
35
34
|
ex: Verify the flights matches the flight,Verify the home has 30 and 50 coordinates
|
|
36
35
|
here keyword : "flights" , input : flight, here input:30,50
|
|
37
|
-
- If step mention time and element name then
|
|
36
|
+
- If step mention time and element name then inputText should be time.
|
|
38
37
|
example: Verify the home is displayed for 30 seconds
|
|
39
|
-
here keyword : "home" , input :
|
|
38
|
+
here keyword : "home" , input : 30 only they mention seconds as input in step
|
|
40
39
|
- If step mention verify text then only pick MOB_VerifyText nlp otherwise pick MOB_VerifyElementIsDisplayed.
|
|
41
40
|
- If step mention verify x and y coordinate of element then only pick MOB_VerifyIfXAndYCoordinateOfElement.
|
|
42
|
-
- Extract
|
|
41
|
+
- Extract inputText from the step that is which is being verified in the step if they mention verifying two values in inputs take as it is,if they mention one value take only that as input text, if you can't find any input text in the step, return keyword as inputText.
|
|
43
42
|
- if the step is about checking the element is displayed then pick MOB_CheckIfElementIsDisplayed nlp.
|
|
44
|
-
- For MOB_VerifyHeightOfElement just provide height mentioned in the step as the
|
|
43
|
+
- For MOB_VerifyHeightOfElement just provide height mentioned in the step as the inputText don't add anything else
|
|
45
44
|
- Extract keyword from the step, if the step contains any keyword.
|
|
46
|
-
- Use the closest semantic match for the step; return
|
|
45
|
+
- Use the closest semantic match for the step; return attributeValue as Fire-Flink-0, only if nothing is found.
|
|
47
46
|
- Based on step give most relevant type of element. use this list to choose elementType: ${elementType} and Never change syntax of elementType, follow the syntax of elementType in list.if elementType is not there in list return 'link'.
|
|
48
47
|
- Extract locator_type if mentioned in the step, like(text,resource-id,content-desc) . if not found return 'empty'.
|
|
48
|
+
- Return ONLY a valid JSON object; the response must start with '{' and end with '}', with no markdown, code fences, explanations, or extra text.
|
|
49
49
|
- Respond with valid JSON only.
|
|
50
50
|
`;
|
|
51
51
|
return prompt;
|
|
@@ -10,11 +10,13 @@ Context: ${priorAndNextSteps}
|
|
|
10
10
|
- Using the provided annotated screenshot and Step, identify the correct element index from the image.
|
|
11
11
|
- Match the index to the text or action described in Step as accurately as possible.
|
|
12
12
|
- Allow partial and case-insensitive matching. If a clear match exists, return its index.
|
|
13
|
-
-
|
|
13
|
+
- If the Chosen element has more than one index has been provided for it, return the index that smaller in number.
|
|
14
|
+
- Return only the Fire-Flink-x for the target element.
|
|
14
15
|
- **Never return Fire-Flink-1 only return Fire-Flink-0.**
|
|
15
16
|
- Do not provide any additional text or explanation. The output must be strictly Fire-Flink-x.
|
|
17
|
+
- Return ONLY a valid JSON object; the response must start with '{' and end with '}', with no markdown, code fences, explanations, or extra text.
|
|
16
18
|
Respond only with JSON using this format:
|
|
17
|
-
{fireflinkIndex: Fire-Flink-x | Fire-Flink-0}
|
|
19
|
+
{"fireflinkIndex": "Fire-Flink-x" | "Fire-Flink-0"}
|
|
18
20
|
|
|
19
21
|
`.trim();
|
|
20
22
|
return customPromptText;
|
|
@@ -14,6 +14,7 @@ You are a precise mobile automation assistant.
|
|
|
14
14
|
- Return the **index** number as shown in the image (1-based).
|
|
15
15
|
- if there are two elements that match step and one have box and other doesn't have box then prefer the one with box and return that index number.
|
|
16
16
|
- if no correct element found or if none of correct elements has no box,then return 0.
|
|
17
|
+
- Return ONLY a valid JSON object; the response must start with '{' and end with '}', with no markdown, code fences, explanations, or extra text.
|
|
17
18
|
Respond only with JSON using this format:
|
|
18
19
|
{fireflinkIndex: Fire-Flink-x | Fire-Flink-0}
|
|
19
20
|
|
|
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.waitActionExtractorPrompt = waitActionExtractorPrompt;
|
|
4
4
|
async function waitActionExtractorPrompt({ extractedDomJson, priorAndNextSteps, }) {
|
|
5
5
|
const nlpList = `
|
|
6
|
-
"
|
|
6
|
+
"WaitTillUrlOfPageContainsString",
|
|
7
7
|
"WaitTillTitleOfPageIsString",
|
|
8
8
|
"WaitTillUrlOfPageIsString",
|
|
9
9
|
"WaitTitleOfPageContainsString",
|
|
@@ -35,25 +35,26 @@ Select the perfect matching NLP name from the list that best fits the step's int
|
|
|
35
35
|
|
|
36
36
|
Return **only valid JSON** in the following format:
|
|
37
37
|
{
|
|
38
|
-
"
|
|
38
|
+
"attributeValue": "Fire-Flink-x",
|
|
39
39
|
"nlpName": "x",
|
|
40
|
-
"
|
|
40
|
+
"inputText":"x",
|
|
41
41
|
"keyword": "x",
|
|
42
|
-
"
|
|
42
|
+
"elementType": "x"
|
|
43
43
|
}
|
|
44
44
|
Rules:
|
|
45
45
|
- nlpName must be exactly one from the provided list.
|
|
46
46
|
- For steps like wait for some time or wait for 5 secondes. give input in number only and nlpName should be "Sleep".
|
|
47
47
|
- Use context from the steps : ${priorAndNextSteps}, keyword and json to search for FF-inspecter.
|
|
48
48
|
- **Find the FF-inspecter attribute value of the element in the Simplified JSON whose text or attributes best match the step.**
|
|
49
|
-
- For some steps you can see two inputs but you need to uderstand step and send the requred
|
|
49
|
+
- For some steps you can see two inputs but you need to uderstand step and send the requred inputText.
|
|
50
50
|
ex: Wait until the flights has the flight text
|
|
51
51
|
here keyword : "flights" , input : flight
|
|
52
|
-
- If nlpName is "WaitTillPresenceOfAllElements", the
|
|
53
|
-
- Extract
|
|
52
|
+
- If nlpName is "WaitTillPresenceOfAllElements", the inputText MUST be formatted exactly as "xpath, [THE XPATH]". Do not return plain text.
|
|
53
|
+
- Extract inputText from the step, if you can't find any input text in the step, return keyword as inputText.
|
|
54
54
|
- Extract keyword from the step, if the step contains any keyword.
|
|
55
|
-
- Use the closest semantic match for the step; return
|
|
56
|
-
- Based on step give most relevant type of element. use this list to choose
|
|
55
|
+
- Use the closest semantic match for the step; return attributeValue as Fire-Flink-0, only if nothing is found.
|
|
56
|
+
- Based on step give most relevant type of element. use this list to choose elementType: ${elementType} and Never change syntax of elementType, follow the syntax of elementType in list.if elementType is not there in list return 'link'.
|
|
57
|
+
- Return ONLY a valid JSON object; the response must start with '{' and end with '}', with no markdown, code fences, explanations, or extra text.
|
|
57
58
|
- Respond with valid JSON only.
|
|
58
59
|
`;
|
|
59
60
|
return prompt;
|
|
@@ -15,9 +15,9 @@ Select the perfect matching NLP name from the list that best fits the step's int
|
|
|
15
15
|
|
|
16
16
|
Return **only valid JSON** in the following format:
|
|
17
17
|
{
|
|
18
|
-
"
|
|
18
|
+
"attributeValue": "Fire-Flink-x",
|
|
19
19
|
"nlpName": "x",
|
|
20
|
-
"
|
|
20
|
+
"inputText":"x",
|
|
21
21
|
"keyword": "x",
|
|
22
22
|
"elementType": "x"
|
|
23
23
|
}
|
|
@@ -26,15 +26,16 @@ Rules:
|
|
|
26
26
|
- For steps like wait for some time or wait for 5 secondes. give input in number only and nlpName should be "Sleep".
|
|
27
27
|
- Use context from the steps : ${priorAndNextSteps}, keyword and json to search for FF-inspecter.
|
|
28
28
|
- **Find the FF-inspecter attribute value of the element in the Simplified JSON whose text or attributes best match the step.**
|
|
29
|
-
- For some steps you can see two inputs but you need to uderstand step and send the requred
|
|
29
|
+
- For some steps you can see two inputs but you need to uderstand step and send the requred inputText.
|
|
30
30
|
ex: Wait until the flights has the flight text
|
|
31
31
|
here keyword : "flights" , input : flight
|
|
32
|
-
- If nlpName is "MOB_WaitTillPresenceOfAllElements", the
|
|
33
|
-
- **If the step has input in a string with comma take that string as it is in
|
|
34
|
-
- Extract
|
|
32
|
+
- If nlpName is "MOB_WaitTillPresenceOfAllElements", the inputText MUST be formatted exactly as "xpath, [THE XPATH]". Do not return plain text.
|
|
33
|
+
- **If the step has input in a string with comma take that string as it is in inputText.**
|
|
34
|
+
- Extract inputText from the step, if anything is in string like 'attributeName,attributeValue' ,take as it is dont remove any part,if you can't find any input text in the step, return keyword as inputText.
|
|
35
35
|
- Extract keyword from the step, if the step contains any keyword.
|
|
36
|
-
- Use the closest semantic match for the step; return
|
|
36
|
+
- Use the closest semantic match for the step; return attributeValue as Fire-Flink-0, only if nothing is found.
|
|
37
37
|
- Based on step give most relevant type of element. use this list to choose elementType: ${elementType} and Never change syntax of elementType, follow the syntax of elementType in list.if elementType is not there in list return 'link'.
|
|
38
|
+
- Return ONLY a valid JSON object; the response must start with '{' and end with '}', with no markdown, code fences, explanations, or extra text.
|
|
38
39
|
- Respond with valid JSON only.
|
|
39
40
|
`;
|
|
40
41
|
return prompt;
|
|
@@ -22,16 +22,15 @@ exports.userInputFormatters = {
|
|
|
22
22
|
}
|
|
23
23
|
const content = [
|
|
24
24
|
{
|
|
25
|
-
type: "
|
|
26
|
-
text: `Analyze the following step:\n\n${JSON.stringify(userInput.currentStep, null, 2)}
|
|
25
|
+
type: "input_text",
|
|
26
|
+
text: `Analyze the following step:\n\n${JSON.stringify(userInput.currentStep, null, 2)}`,
|
|
27
27
|
},
|
|
28
28
|
{
|
|
29
|
-
type: "
|
|
30
|
-
image_url:
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
}
|
|
29
|
+
type: "input_image",
|
|
30
|
+
image_url: imageBase64,
|
|
31
|
+
detail: "auto",
|
|
32
|
+
},
|
|
34
33
|
];
|
|
35
34
|
return content;
|
|
36
|
-
}
|
|
35
|
+
},
|
|
37
36
|
};
|
|
@@ -12,7 +12,7 @@ export declare class ActionExecutor implements IActionExecutor {
|
|
|
12
12
|
navigate(url: string): Promise<void>;
|
|
13
13
|
goBack(): Promise<void>;
|
|
14
14
|
refresh(): Promise<void>;
|
|
15
|
-
switchToFrame(
|
|
15
|
+
switchToFrame(selector: string, frames: FrameMeta[], elementName: string, elementType: string, pageDOM: string, fireflinkIndex: string): Promise<void>;
|
|
16
16
|
wait(time: string): Promise<void>;
|
|
17
17
|
click(pageDOM: string, selector: string, fireflinkIndex: string, elementName: string, elementType: string): Promise<void>;
|
|
18
18
|
clickUsingJS(pageDOM: string, selector: string, fireflinkIndex: string, elementName: string, elementType: string): Promise<void>;
|
|
@@ -20,7 +20,7 @@ export declare class ActionExecutor implements IActionExecutor {
|
|
|
20
20
|
doubleClick(pageDOM: string, selector: string, fireflinkIndex: string, elementName: string, elementType: string): Promise<void>;
|
|
21
21
|
waitAndClick(pageDOM: string, selector: string, value: string, fireflinkIndex: string, elementName: string, elementType: string): Promise<void>;
|
|
22
22
|
clickNTimes(pageDOM: string, selector: string, value: string, fireflinkIndex: string, elementName: string, elementType: string): Promise<void>;
|
|
23
|
-
enterInput(selector: string, value: string, fireflinkIndex: string, pageDOM: string, elementName: string, elementType: string): Promise<void>;
|
|
23
|
+
enterInput(selector: string, value: string, fireflinkIndex: string, pageDOM: string, elementName: string, elementType: string, stepIndex: any, filteredSteps: any): Promise<void>;
|
|
24
24
|
enterInputShadow(selector: string, value: string, fireflinkIndex: string, pageDOM: string, elementName: string, elementType: string): Promise<void>;
|
|
25
25
|
enterInputAndPress(selector: string, value: string, fireflinkIndex: string, pageDOM: string, elementName: string, elementType: string): Promise<void>;
|
|
26
26
|
clickShadowElement(selector: string, fireflinkIndex: string, pageDOM: string, elementName: string, elementType: string): Promise<void>;
|
|
@@ -43,6 +43,9 @@ export declare class ActionExecutor implements IActionExecutor {
|
|
|
43
43
|
switchToWindowIfTitleContainsString(pageDOM: string, selector: string, value: string, fireflinkIndex: string, elementName: string, elementType: string): Promise<void>;
|
|
44
44
|
switchToWindowIfUrlContainsString(pageDOM: string, selector: string, value: string, fireflinkIndex: string, elementName: string, elementType: string): Promise<void>;
|
|
45
45
|
uploadFilePathUsingRobot(pageDOM: string, selector: string, value: string, fireflinkIndex: string, elementName: string, elementType: string): Promise<void>;
|
|
46
|
+
verifyElementIsDisplayedInSpecifiedTime(pageDOM: string, selector: string, value: string, fireflinkIndex: string, elementName: string, elementType: string): Promise<void>;
|
|
47
|
+
verifyElementIsEnabledInSpecifiedTime(pageDOM: string, selector: string, value: string, fireflinkIndex: string, elementName: string, elementType: string): Promise<void>;
|
|
48
|
+
verifyElementIsSelectedInSpecifiedTime(pageDOM: string, selector: string, value: string, fireflinkIndex: string, elementName: string, elementType: string): Promise<void>;
|
|
46
49
|
verifyText(pageDOM: string, selector: string, value: string, fireflinkIndex: string, elementName: string, elementType: string): Promise<void>;
|
|
47
50
|
verifyPartialText(pageDOM: string, selector: string, value: string, fireflinkIndex: string, elementName: string, elementType: string): Promise<void>;
|
|
48
51
|
VerifyElementIsDisplayed(pageDOM: string, selector: string, fireflinkIndex: string, elementName: string, elementType: string): Promise<void>;
|
|
@@ -71,11 +74,11 @@ export declare class ActionExecutor implements IActionExecutor {
|
|
|
71
74
|
enterDataToAlert(value: string): Promise<void>;
|
|
72
75
|
clickOkOnAlertPopup(): Promise<void>;
|
|
73
76
|
clickCancelOnAlertPopup(): Promise<void>;
|
|
74
|
-
verifyAlertPopupIsDisplayed(): Promise<void>;
|
|
77
|
+
verifyAlertPopupIsDisplayed(value: string): Promise<void>;
|
|
75
78
|
getTextPresentOnAlertPopup(): Promise<void>;
|
|
76
79
|
switchToDefaultContent(): Promise<void>;
|
|
77
80
|
getPageTitle(): Promise<void>;
|
|
78
|
-
getAttribute(pageDOM: string, selector: string, value: string, fireflinkIndex: string, elementName: string, elementType: string): Promise<void>;
|
|
81
|
+
getAttribute(pageDOM: string, selector: string, value: string, attributeType: string, fireflinkIndex: string, elementName: string, elementType: string): Promise<void>;
|
|
79
82
|
getTagName(pageDOM: string, selector: string, fireflinkIndex: string, elementName: string, elementType: string): Promise<void>;
|
|
80
83
|
getListBoxSize(pageDOM: string, selector: string, fireflinkIndex: string, elementName: string, elementType: string): Promise<void>;
|
|
81
84
|
getWrappedOptionFromListBoxAsText(pageDOM: string, selector: string, fireflinkIndex: string, elementName: string, elementType: string): Promise<void>;
|
|
@@ -150,9 +153,6 @@ export declare class ActionExecutor implements IActionExecutor {
|
|
|
150
153
|
getVideoCurrentPlaybackRate(pageDOM: string, selector: string, fireflinkIndex: string, elementName: string, elementType: string): Promise<void>;
|
|
151
154
|
getVideoDefaultPlaybackRate(pageDOM: string, selector: string, fireflinkIndex: string, elementName: string, elementType: string): Promise<void>;
|
|
152
155
|
getVideoCurrentVolume(pageDOM: string, selector: string, fireflinkIndex: string, elementName: string, elementType: string): Promise<void>;
|
|
153
|
-
getVideoWidth(pageDOM: string, selector: string, fireflinkIndex: string, elementName: string, elementType: string): Promise<void>;
|
|
154
|
-
getVideoHeight(pageDOM: string, selector: string, fireflinkIndex: string, elementName: string, elementType: string): Promise<void>;
|
|
155
|
-
getVideoDimension(pageDOM: string, selector: string, fireflinkIndex: string, elementName: string, elementType: string): Promise<void>;
|
|
156
156
|
getVideoDecodedByte(pageDOM: string, selector: string, fireflinkIndex: string, elementName: string, elementType: string): Promise<void>;
|
|
157
157
|
getAudioMediaSource(pageDOM: string, selector: string, fireflinkIndex: string, elementName: string, elementType: string): Promise<void>;
|
|
158
158
|
getAudioMediaLength(pageDOM: string, selector: string, fireflinkIndex: string, elementName: string, elementType: string): Promise<void>;
|
|
@@ -160,9 +160,6 @@ export declare class ActionExecutor implements IActionExecutor {
|
|
|
160
160
|
getAudioCurrentPlaybackRate(pageDOM: string, selector: string, fireflinkIndex: string, elementName: string, elementType: string): Promise<void>;
|
|
161
161
|
getAudioDefaultPlaybackRate(pageDOM: string, selector: string, fireflinkIndex: string, elementName: string, elementType: string): Promise<void>;
|
|
162
162
|
getAudioCurrentVolume(pageDOM: string, selector: string, fireflinkIndex: string, elementName: string, elementType: string): Promise<void>;
|
|
163
|
-
getAudioWidth(pageDOM: string, selector: string, fireflinkIndex: string, elementName: string, elementType: string): Promise<void>;
|
|
164
|
-
getAudioHeight(pageDOM: string, selector: string, fireflinkIndex: string, elementName: string, elementType: string): Promise<void>;
|
|
165
|
-
getAudioDimension(pageDOM: string, selector: string, fireflinkIndex: string, elementName: string, elementType: string): Promise<void>;
|
|
166
163
|
getAudioDecodedByte(pageDOM: string, selector: string, fireflinkIndex: string, elementName: string, elementType: string): Promise<void>;
|
|
167
164
|
getSingleApiStatusCode(value: string): Promise<void>;
|
|
168
165
|
getSingleApiResponse(value: string): Promise<void>;
|
|
@@ -257,11 +254,11 @@ export declare class ActionExecutor implements IActionExecutor {
|
|
|
257
254
|
SetClipBoardText(value: string): Promise<void>;
|
|
258
255
|
PressAnyKeyNTimes(value: string): Promise<void>;
|
|
259
256
|
FindElements(pageDOM: string, selector: string, value: string, fireflinkIndex: string, elementName: string, elementType: string): Promise<void>;
|
|
260
|
-
MOB_FindElement(selector: string, elementName: string, elementType: string): Promise<void>;
|
|
257
|
+
MOB_FindElement(selector: string, elementName: string, elementType: string, pageDOM: string, fireflinkIndex: string): Promise<void>;
|
|
261
258
|
WaitTillElementIsClickable(pageDOM: string, selector: string, fireflinkIndex: string, elementName: string, elementType: string): Promise<void>;
|
|
262
259
|
CheckIfElementIsDisplayed(pageDOM: string, selector: string, value: string, fireflinkIndex: string, elementName: string, elementType: string): Promise<void>;
|
|
263
260
|
PressAnyKey(value: string): Promise<void>;
|
|
264
|
-
WaitTillElementHasText(pageDOM: string, selector: string, fireflinkIndex: string, elementName: string, elementType: string): Promise<void>;
|
|
261
|
+
WaitTillElementHasText(pageDOM: string, selector: string, value: string, fireflinkIndex: string, elementName: string, elementType: string): Promise<void>;
|
|
265
262
|
WaitTillElementContainsText(pageDOM: string, selector: string, value: string, fireflinkIndex: string, elementName: string, elementType: string): Promise<void>;
|
|
266
263
|
PressEnterKey(): Promise<void>;
|
|
267
264
|
OpenNotification(): Promise<void>;
|
|
@@ -292,7 +289,7 @@ export declare class ActionExecutor implements IActionExecutor {
|
|
|
292
289
|
TerminateAppUsingAppPackage(value: string): Promise<void>;
|
|
293
290
|
OpenAppWithApkFilePath(value: string): Promise<void>;
|
|
294
291
|
ActivateAppUsingAppPackage(value: string): Promise<void>;
|
|
295
|
-
LongPress(selector: string, value: string, elementName: string, elementType: string): Promise<void>;
|
|
292
|
+
LongPress(selector: string, value: string, elementName: string, elementType: string, pageDOM: string, fireflinkIndex: string): Promise<void>;
|
|
296
293
|
MOB_GetDeviceLocation(): Promise<void>;
|
|
297
294
|
MOB_GetBatteryPercentage(): Promise<void>;
|
|
298
295
|
MOB_GetLongitude(): Promise<void>;
|
|
@@ -322,9 +319,9 @@ export declare class ActionExecutor implements IActionExecutor {
|
|
|
322
319
|
MOB_GetCurrentSessionId(): Promise<void>;
|
|
323
320
|
MOB_GetHeightOfScreen(): Promise<void>;
|
|
324
321
|
MOB_GetCurrentDeviceSystemBars(): Promise<void>;
|
|
325
|
-
MOB_GetWidthOfElement(selector: string, elementName: string, elementType: string): Promise<void>;
|
|
326
|
-
MOB_GetHeightOfElement(selector: string, elementName: string, elementType: string): Promise<void>;
|
|
327
|
-
MOB_GetTextFromElementAndSetToClipBoard(selector: string, elementName: string, elementType: string): Promise<void>;
|
|
322
|
+
MOB_GetWidthOfElement(selector: string, elementName: string, elementType: string, pageDOM: string, fireflinkIndex: string): Promise<void>;
|
|
323
|
+
MOB_GetHeightOfElement(selector: string, elementName: string, elementType: string, pageDOM: string, fireflinkIndex: string): Promise<void>;
|
|
324
|
+
MOB_GetTextFromElementAndSetToClipBoard(selector: string, elementName: string, elementType: string, pageDOM: string, fireflinkIndex: string): Promise<void>;
|
|
328
325
|
MOB_GetADBLogsForGivenAppPackage(value: string): Promise<void>;
|
|
329
326
|
MOB_VerifyIfAppIsClosed(value: string): Promise<void>;
|
|
330
327
|
MOB_VerifyIfAirplaneModeOn(): Promise<void>;
|
|
@@ -339,27 +336,34 @@ export declare class ActionExecutor implements IActionExecutor {
|
|
|
339
336
|
MOB_VerifyIfKeyboardIsHidden(): Promise<void>;
|
|
340
337
|
MOB_VerifyBatteryLevel(value: string): Promise<void>;
|
|
341
338
|
MOB_WaitTillAllElementsAreInvisible(): Promise<void>;
|
|
342
|
-
MOB_WaitTillElementIsSelected(selector: string, elementName: string, elementType: string): Promise<void>;
|
|
343
|
-
MOB_WaitTillElementIsEnabled(selector: string, elementName: string, elementType: string): Promise<void>;
|
|
344
|
-
MOB_WaitTillElementIsVisible(selector: string, elementName: string, elementType: string): Promise<void>;
|
|
345
|
-
MOB_WaitTillStalenessOfElement(selector: string, elementName: string, elementType: string): Promise<void>;
|
|
346
|
-
MOB_WaitTillElementIsInvisible(selector: string, elementName: string, elementType: string): Promise<void>;
|
|
347
|
-
MOB_WaitTillAttributeOfElementContainsString(selector: string, elementName: string, attributeName: string, elementType: string, value: string): Promise<void>;
|
|
339
|
+
MOB_WaitTillElementIsSelected(selector: string, elementName: string, elementType: string, pageDOM: string, fireflinkIndex: string): Promise<void>;
|
|
340
|
+
MOB_WaitTillElementIsEnabled(selector: string, elementName: string, elementType: string, pageDOM: string, fireflinkIndex: string): Promise<void>;
|
|
341
|
+
MOB_WaitTillElementIsVisible(selector: string, elementName: string, elementType: string, pageDOM: string, fireflinkIndex: string): Promise<void>;
|
|
342
|
+
MOB_WaitTillStalenessOfElement(selector: string, elementName: string, elementType: string, pageDOM: string, fireflinkIndex: string): Promise<void>;
|
|
343
|
+
MOB_WaitTillElementIsInvisible(selector: string, elementName: string, elementType: string, pageDOM: string, fireflinkIndex: string): Promise<void>;
|
|
344
|
+
MOB_WaitTillAttributeOfElementContainsString(selector: string, elementName: string, attributeName: string, elementType: string, value: string, pageDOM: string, fireflinkIndex: string): Promise<void>;
|
|
348
345
|
MOB_SetContext(value: string): Promise<void>;
|
|
349
346
|
MOB_SetEmulatorPowerPercentage(value: string): Promise<void>;
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
347
|
+
swipe(nlpName: string, value: string, direction: string): Promise<void>;
|
|
348
|
+
swipeToElement(value: string, elementName: string, elementType: string, numOfScrolls: number): Promise<void>;
|
|
349
|
+
swipeUpToElement(value: string, elementName: string, elementType: string, numOfScrolls: number): Promise<void>;
|
|
350
|
+
swipeDownToElement(value: string, elementName: string, elementType: string, numOfScrolls: number): Promise<void>;
|
|
351
|
+
swipeLeftToElement(value: string, elementName: string, elementType: string, numOfScrolls: number): Promise<void>;
|
|
352
|
+
swipeRightToElement(value: string, elementName: string, elementType: string, numOfScrolls: number): Promise<void>;
|
|
353
|
+
swipeNTimes(numOfScrolls: string, direction?: string): Promise<void>;
|
|
354
|
+
swipeDirectionNTimes(numOfScrolls: string, direction: string): Promise<void>;
|
|
355
|
+
swipeToElementForMWeb(value: string, elementName: string, elementType: string, pageDOM: string, fireflinkIndex: string, numOfScrolls: number): Promise<void>;
|
|
356
|
+
swipeUsingReferenceElement(value: string, elementName: string, elementType: string, numOfScrolls: string, direction: string, pageDOM: string, fireflinkIndex: string): Promise<void>;
|
|
357
|
+
MOB_EnterInputIntoElementFromClipBoard(selector: string, elementName: string, elementType: string, pageDOM: string, fireflinkIndex: string): Promise<void>;
|
|
360
358
|
MOB_CheckIfAppIsClosed(): Promise<void>;
|
|
361
359
|
MOB_RunAppInBackground(value: string): Promise<void>;
|
|
362
|
-
MOB_PinchInByPercent(selector: string, value: string, elementName: string, elementType: string): Promise<void>;
|
|
363
|
-
MOB_PinchOutByPercent(selector: string, value: string, elementName: string, elementType: string): Promise<void>;
|
|
360
|
+
MOB_PinchInByPercent(selector: string, value: string, elementName: string, elementType: string, pageDOM: string, fireflinkIndex: string): Promise<void>;
|
|
361
|
+
MOB_PinchOutByPercent(selector: string, value: string, elementName: string, elementType: string, pageDOM: string, fireflinkIndex: string): Promise<void>;
|
|
364
362
|
MOB_DoubleTapAtSpecifiedLocation(value: string, elementName: string, elementType: string): Promise<void>;
|
|
363
|
+
mouseHover(pageDOM: string, selector: string, fireflinkIndex: string, elementName: string, elementType: string): Promise<void>;
|
|
364
|
+
pressAndHoldLeftMouseButton(pageDOM: string, selector: string, fireflinkIndex: string, elementName: string, elementType: string): Promise<void>;
|
|
365
|
+
MouseClickOnCurrentCursorPoint(): Promise<void>;
|
|
366
|
+
MouseDoubleClickAtCursorPoint(): Promise<void>;
|
|
367
|
+
ReleaseLeftMouseButton(pageDOM: string, selector: string, fireflinkIndex: string, elementName: string, elementType: string): Promise<void>;
|
|
368
|
+
MouseClickOnCurrentCursorPointNTimes(value: string): Promise<void>;
|
|
365
369
|
}
|