ff-automationv2 2.2.23 → 2.2.25

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.
Files changed (492) hide show
  1. package/dist/ai/llmcalls/decodeApiKey.js +4 -1
  2. package/dist/ai/llmcalls/llmAction.js +27 -20
  3. package/dist/ai/llmcalls/parseLlmOputput.js +5 -1
  4. package/dist/ai/llmprompts/llmPromptTypes/systemPromptTypes.js +2 -1
  5. package/dist/ai/llmprompts/promptRegistry.js +38 -35
  6. package/dist/ai/llmprompts/systemPrompts/actionExtractorPrompt.js +6 -3
  7. package/dist/ai/llmprompts/systemPrompts/combinedActionExtractorPrompt.js +4 -1
  8. package/dist/ai/llmprompts/systemPrompts/combinedActionExtractorPromptMob.js +4 -1
  9. package/dist/ai/llmprompts/systemPrompts/errorDescriptionPrompt.js +5 -2
  10. package/dist/ai/llmprompts/systemPrompts/fireflinkElementIndexExtactors.js +5 -2
  11. package/dist/ai/llmprompts/systemPrompts/fireflinkElementIndexExtractor_Mob.js +5 -2
  12. package/dist/ai/llmprompts/systemPrompts/getActionExtractorPrompt.js +7 -4
  13. package/dist/ai/llmprompts/systemPrompts/getActionExtractorPromptMob.js +4 -1
  14. package/dist/ai/llmprompts/systemPrompts/mobileKeywordExtractor.js +4 -1
  15. package/dist/ai/llmprompts/systemPrompts/userStoryToListPrompt.js +6 -2
  16. package/dist/ai/llmprompts/systemPrompts/verifyActionExtractorPrompt.js +8 -3
  17. package/dist/ai/llmprompts/systemPrompts/verifyActionExtractorPromptMob.js +4 -1
  18. package/dist/ai/llmprompts/systemPrompts/visionPrompt.js +5 -1
  19. package/dist/ai/llmprompts/systemPrompts/visionPromptMobile.js +4 -1
  20. package/dist/ai/llmprompts/systemPrompts/waitActionExtractorPrompt.js +4 -1
  21. package/dist/ai/llmprompts/systemPrompts/waitActionExtractorPromptMob.js +4 -1
  22. package/dist/ai/llmprompts/userPrompts/userPrompt.js +16 -13
  23. package/dist/automation/actions/executor.d.ts +1 -1
  24. package/dist/automation/actions/executor.js +1066 -1061
  25. package/dist/automation/actions/interaction/alert/clickCancelOnAlertPopup.js +4 -1
  26. package/dist/automation/actions/interaction/alert/clickOkOnAlertPopup.js +4 -1
  27. package/dist/automation/actions/interaction/alert/enterDataToAlert.js +4 -1
  28. package/dist/automation/actions/interaction/alert/getTextPresentOnAlertPopup.js +4 -1
  29. package/dist/automation/actions/interaction/alert/verifyAlertPopUpMessageContainsString.js +4 -1
  30. package/dist/automation/actions/interaction/alert/verifyAlertPopupIsDisplayed.js +4 -1
  31. package/dist/automation/actions/interaction/alert/verifyTextPresentOnAlertPopup.js +4 -1
  32. package/dist/automation/actions/interaction/alert/waitTillAlertIsPresent.js +4 -1
  33. package/dist/automation/actions/interaction/clear/clear.js +5 -2
  34. package/dist/automation/actions/interaction/clear/clearAndEnter.js +5 -2
  35. package/dist/automation/actions/interaction/click/MOB_DoubleTapAtSpecifiedLocation.js +4 -1
  36. package/dist/automation/actions/interaction/click/click.js +5 -2
  37. package/dist/automation/actions/interaction/click/clickNtimes.js +5 -2
  38. package/dist/automation/actions/interaction/click/clickUsingJs.js +4 -1
  39. package/dist/automation/actions/interaction/click/doubleClick.js +5 -2
  40. package/dist/automation/actions/interaction/click/rightClick.js +4 -1
  41. package/dist/automation/actions/interaction/click/tapOnSpecifiedLocation.js +5 -1
  42. package/dist/automation/actions/interaction/click/waitAndClick.js +8 -5
  43. package/dist/automation/actions/interaction/dragAndDrop/dragAndDrop.js +5 -2
  44. package/dist/automation/actions/interaction/elementLessAction/MobCheckIfAppIsClosed.js +4 -1
  45. package/dist/automation/actions/interaction/elementLessAction/MobRunAppInBackgroundInterface.js +4 -1
  46. package/dist/automation/actions/interaction/elementlessActions/activateAppUsingAppPackage.js +4 -1
  47. package/dist/automation/actions/interaction/elementlessActions/installAPK.js +14 -8
  48. package/dist/automation/actions/interaction/elementlessActions/isAppInstalled.js +8 -5
  49. package/dist/automation/actions/interaction/elementlessActions/openAppWithApkFilePath.js +18 -12
  50. package/dist/automation/actions/interaction/elementlessActions/openMobileApplication.js +4 -1
  51. package/dist/automation/actions/interaction/elementlessActions/receiveMessageOnEmulator.js +6 -3
  52. package/dist/automation/actions/interaction/elementlessActions/terminateAppUsingAppPackage.js +6 -3
  53. package/dist/automation/actions/interaction/elementlessActions/uninstallAPK.js +9 -6
  54. package/dist/automation/actions/interaction/enterActions/EnterInputIntoElementFromClipBoardInterface_mob.js +7 -4
  55. package/dist/automation/actions/interaction/enterActions/enterInput.js +42 -6
  56. package/dist/automation/actions/interaction/enterActions/enterInputAndPress.js +8 -5
  57. package/dist/automation/actions/interaction/enterActions/enterUrl.js +4 -1
  58. package/dist/automation/actions/interaction/enterActions/enterusingJs.js +8 -5
  59. package/dist/automation/actions/interaction/enterActions/waitAndEnter.js +7 -4
  60. package/dist/automation/actions/interaction/find/MOB_FindElement.js +6 -3
  61. package/dist/automation/actions/interaction/find/findElements.js +7 -5
  62. package/dist/automation/actions/interaction/get/MOB_GetADBLogsForGivenAppPackage.js +5 -1
  63. package/dist/automation/actions/interaction/get/MOB_GetAllContexts.js +5 -1
  64. package/dist/automation/actions/interaction/get/MOB_GetAllWindowHandles.js +5 -1
  65. package/dist/automation/actions/interaction/get/MOB_GetAltitude.js +5 -1
  66. package/dist/automation/actions/interaction/get/MOB_GetBatteryPercentage.js +5 -1
  67. package/dist/automation/actions/interaction/get/MOB_GetBatteryStatus.js +5 -1
  68. package/dist/automation/actions/interaction/get/MOB_GetClipBoardText.js +5 -1
  69. package/dist/automation/actions/interaction/get/MOB_GetCurrentActivity.js +5 -1
  70. package/dist/automation/actions/interaction/get/MOB_GetCurrentAppPackage.js +5 -1
  71. package/dist/automation/actions/interaction/get/MOB_GetCurrentContext.js +5 -1
  72. package/dist/automation/actions/interaction/get/MOB_GetCurrentDeviceDate.js +5 -1
  73. package/dist/automation/actions/interaction/get/MOB_GetCurrentDeviceSettings.js +5 -1
  74. package/dist/automation/actions/interaction/get/MOB_GetCurrentDeviceStatus.js +5 -1
  75. package/dist/automation/actions/interaction/get/MOB_GetCurrentDeviceSystemBars.js +5 -1
  76. package/dist/automation/actions/interaction/get/MOB_GetCurrentDeviceTime.js +5 -1
  77. package/dist/automation/actions/interaction/get/MOB_GetCurrentOrientation.js +5 -1
  78. package/dist/automation/actions/interaction/get/MOB_GetCurrentSessionId.js +5 -1
  79. package/dist/automation/actions/interaction/get/MOB_GetDeviceLocation.js +5 -1
  80. package/dist/automation/actions/interaction/get/MOB_GetDeviceName.js +5 -1
  81. package/dist/automation/actions/interaction/get/MOB_GetDeviceOsVersion.js +5 -1
  82. package/dist/automation/actions/interaction/get/MOB_GetDeviceUdid.js +5 -1
  83. package/dist/automation/actions/interaction/get/MOB_GetHeightOfElement.js +6 -2
  84. package/dist/automation/actions/interaction/get/MOB_GetHeightOfScreen.js +5 -1
  85. package/dist/automation/actions/interaction/get/MOB_GetHourFromCurrentDeviceTime.js +5 -1
  86. package/dist/automation/actions/interaction/get/MOB_GetLatitude.js +5 -1
  87. package/dist/automation/actions/interaction/get/MOB_GetLongitude.js +5 -1
  88. package/dist/automation/actions/interaction/get/MOB_GetMinuteFromCurrentDeviceTime.js +5 -1
  89. package/dist/automation/actions/interaction/get/MOB_GetSecondFromCurrentDeviceTime.js +5 -1
  90. package/dist/automation/actions/interaction/get/MOB_GetSizeOfScreen.js +5 -1
  91. package/dist/automation/actions/interaction/get/MOB_GetSupportedPerformanceDataTypes.js +5 -1
  92. package/dist/automation/actions/interaction/get/MOB_GetTextFromElementAndSetToClipBoard.js +6 -2
  93. package/dist/automation/actions/interaction/get/MOB_GetWidthOfElement.js +6 -2
  94. package/dist/automation/actions/interaction/get/MOB_GetWidthOfScreen.js +5 -1
  95. package/dist/automation/actions/interaction/get/browserWindowGetPosition.js +5 -1
  96. package/dist/automation/actions/interaction/get/getAllBrokenImages.js +5 -1
  97. package/dist/automation/actions/interaction/get/getAllBrokenLinkCount.js +5 -1
  98. package/dist/automation/actions/interaction/get/getAllBrokenLinks.js +5 -1
  99. package/dist/automation/actions/interaction/get/getAllConsoleErrors.js +5 -1
  100. package/dist/automation/actions/interaction/get/getAllConsoleInformation.js +5 -1
  101. package/dist/automation/actions/interaction/get/getAllConsoleLogs.js +5 -1
  102. package/dist/automation/actions/interaction/get/getAllConsoleWarnings.js +5 -1
  103. package/dist/automation/actions/interaction/get/getAllCookieNames.js +5 -1
  104. package/dist/automation/actions/interaction/get/getAllCookieValues.js +5 -1
  105. package/dist/automation/actions/interaction/get/getAllSelectedOptions.js +5 -1
  106. package/dist/automation/actions/interaction/get/getAllTheOptionsFromListBoxAsText.js +5 -1
  107. package/dist/automation/actions/interaction/get/getAllTheOptionsFromListBoxAsTextInSortedOrder.js +5 -1
  108. package/dist/automation/actions/interaction/get/getAllTheSelectedOptionsFromListBoxAsText.js +5 -1
  109. package/dist/automation/actions/interaction/get/getAllWindowHandles.js +5 -1
  110. package/dist/automation/actions/interaction/get/getAttribute.js +8 -5
  111. package/dist/automation/actions/interaction/get/getAudioCurrentPlaybackRate.js +5 -1
  112. package/dist/automation/actions/interaction/get/getAudioCurrentSeekTime.js +5 -1
  113. package/dist/automation/actions/interaction/get/getAudioCurrentVolume.js +5 -1
  114. package/dist/automation/actions/interaction/get/getAudioDecodedByte.js +5 -1
  115. package/dist/automation/actions/interaction/get/getAudioDefaultPlaybackRate.js +5 -1
  116. package/dist/automation/actions/interaction/get/getAudioDimension.js +5 -1
  117. package/dist/automation/actions/interaction/get/getAudioHeight.js +5 -1
  118. package/dist/automation/actions/interaction/get/getAudioMediaLength.js +5 -1
  119. package/dist/automation/actions/interaction/get/getAudioMediaSource.js +5 -1
  120. package/dist/automation/actions/interaction/get/getAudioWidth.js +5 -1
  121. package/dist/automation/actions/interaction/get/getBestPracticesScore.js +5 -1
  122. package/dist/automation/actions/interaction/get/getBrowserCount.js +5 -1
  123. package/dist/automation/actions/interaction/get/getBrowserVersion.js +5 -1
  124. package/dist/automation/actions/interaction/get/getCapabilityNames.js +5 -1
  125. package/dist/automation/actions/interaction/get/getClipBoardText.js +5 -1
  126. package/dist/automation/actions/interaction/get/getCollectiveApiResponseTime.js +5 -1
  127. package/dist/automation/actions/interaction/get/getCollectiveApiStatusCode.js +5 -1
  128. package/dist/automation/actions/interaction/get/getCssValue.js +5 -1
  129. package/dist/automation/actions/interaction/get/getCurrentDayOfTheWeek.js +5 -1
  130. package/dist/automation/actions/interaction/get/getCurrentSecondsFromCurrentSystemTime.js +5 -1
  131. package/dist/automation/actions/interaction/get/getCurrentSystemDate.js +5 -1
  132. package/dist/automation/actions/interaction/get/getCurrentSystemDay.js +5 -1
  133. package/dist/automation/actions/interaction/get/getCurrentSystemMonth.js +5 -1
  134. package/dist/automation/actions/interaction/get/getCurrentSystemTime.js +5 -1
  135. package/dist/automation/actions/interaction/get/getCurrentSystemYear.js +5 -1
  136. package/dist/automation/actions/interaction/get/getCurrentWindowHandle.js +5 -1
  137. package/dist/automation/actions/interaction/get/getDataFromApiRequestHeaderForJsonPath.js +5 -1
  138. package/dist/automation/actions/interaction/get/getDataFromApiResponseForJsonPath.js +5 -1
  139. package/dist/automation/actions/interaction/get/getDateWithGivenFormat.js +5 -1
  140. package/dist/automation/actions/interaction/get/getDriverInstance.js +5 -1
  141. package/dist/automation/actions/interaction/get/getFirstContentfulPaint.js +5 -1
  142. package/dist/automation/actions/interaction/get/getFirstSelectedOption.js +5 -1
  143. package/dist/automation/actions/interaction/get/getFullPaintTime.js +5 -1
  144. package/dist/automation/actions/interaction/get/getHTMLCodeOfPage.js +5 -1
  145. package/dist/automation/actions/interaction/get/getHeightOfBrowserWindow.js +5 -1
  146. package/dist/automation/actions/interaction/get/getHeightOfWebElement.js +5 -1
  147. package/dist/automation/actions/interaction/get/getHourFromCurrentSystemTime.js +5 -1
  148. package/dist/automation/actions/interaction/get/getImplicitTimeOut.js +5 -1
  149. package/dist/automation/actions/interaction/get/getLargestContentfulPaint.js +5 -1
  150. package/dist/automation/actions/interaction/get/getListBoxSize.js +6 -3
  151. package/dist/automation/actions/interaction/get/getListOfElementsFromLocatorTypeLocatorValue.js +8 -4
  152. package/dist/automation/actions/interaction/get/getLocation.js +9 -5
  153. package/dist/automation/actions/interaction/get/getMinuteFromCurrentSystemTime.js +5 -1
  154. package/dist/automation/actions/interaction/get/getNetworkRouteTime.js +5 -1
  155. package/dist/automation/actions/interaction/get/getNumberOfBrokenImages.js +5 -1
  156. package/dist/automation/actions/interaction/get/getNumberOfLinksPresentInCurrentPage.js +5 -1
  157. package/dist/automation/actions/interaction/get/getNumberOfWorkingLinksFromCurrentPage.js +5 -1
  158. package/dist/automation/actions/interaction/get/getOptions.js +5 -1
  159. package/dist/automation/actions/interaction/get/getPageTitle.js +5 -1
  160. package/dist/automation/actions/interaction/get/getPerformanceMetrics.js +5 -1
  161. package/dist/automation/actions/interaction/get/getPwaScore.js +5 -1
  162. package/dist/automation/actions/interaction/get/getRect.js +10 -6
  163. package/dist/automation/actions/interaction/get/getScreenshot.js +5 -1
  164. package/dist/automation/actions/interaction/get/getScreenshotAs.js +5 -1
  165. package/dist/automation/actions/interaction/get/getSeoScore.js +5 -1
  166. package/dist/automation/actions/interaction/get/getSingleApiRequestPayload.js +5 -1
  167. package/dist/automation/actions/interaction/get/getSingleApiResponse.js +5 -1
  168. package/dist/automation/actions/interaction/get/getSingleApiResponseTime.js +5 -1
  169. package/dist/automation/actions/interaction/get/getSingleApiStatusCode.js +5 -1
  170. package/dist/automation/actions/interaction/get/getSize.js +8 -4
  171. package/dist/automation/actions/interaction/get/getSizeOfBrowserWindow.js +8 -1
  172. package/dist/automation/actions/interaction/get/getStringDataFromLocalFile.js +11 -4
  173. package/dist/automation/actions/interaction/get/getSystemProperty.js +14 -7
  174. package/dist/automation/actions/interaction/get/getTagName.js +5 -2
  175. package/dist/automation/actions/interaction/get/getText.js +9 -5
  176. package/dist/automation/actions/interaction/get/getTheFirstSelectedOptionFromListBoxAsText.js +5 -1
  177. package/dist/automation/actions/interaction/get/getTotalNumberOfCookies.js +5 -1
  178. package/dist/automation/actions/interaction/get/getTunnelIdentifier.js +5 -1
  179. package/dist/automation/actions/interaction/get/getURLPresentInAddressBar.js +5 -1
  180. package/dist/automation/actions/interaction/get/getUserHomeDirectory.js +5 -1
  181. package/dist/automation/actions/interaction/get/getValueByCookieName.js +5 -1
  182. package/dist/automation/actions/interaction/get/getValueFromLocalStorage.js +5 -1
  183. package/dist/automation/actions/interaction/get/getValueOfSystemVariable.js +5 -1
  184. package/dist/automation/actions/interaction/get/getVideoCurrentPlaybackRate.js +5 -1
  185. package/dist/automation/actions/interaction/get/getVideoCurrentSeekTime.js +5 -1
  186. package/dist/automation/actions/interaction/get/getVideoCurrentVolume.js +5 -1
  187. package/dist/automation/actions/interaction/get/getVideoDecodedByte.js +5 -1
  188. package/dist/automation/actions/interaction/get/getVideoDefaultPlaybackRate.js +5 -1
  189. package/dist/automation/actions/interaction/get/getVideoDimension.js +5 -1
  190. package/dist/automation/actions/interaction/get/getVideoHeight.js +5 -1
  191. package/dist/automation/actions/interaction/get/getVideoMediaLength.js +5 -1
  192. package/dist/automation/actions/interaction/get/getVideoMediaSource.js +5 -1
  193. package/dist/automation/actions/interaction/get/getVideoWidth.js +5 -1
  194. package/dist/automation/actions/interaction/get/getWidthOfBrowser.js +5 -1
  195. package/dist/automation/actions/interaction/get/getWidthOfWebElement.js +7 -1
  196. package/dist/automation/actions/interaction/get/getWorkingLinksFromCurrentPage.js +5 -1
  197. package/dist/automation/actions/interaction/get/getWrappedElement.js +5 -1
  198. package/dist/automation/actions/interaction/get/getWrappedOptionFromListBoxAsText.js +6 -3
  199. package/dist/automation/actions/interaction/get/getXLocationOfBrowserWindow.js +7 -1
  200. package/dist/automation/actions/interaction/get/getXLocationOfWebElement.js +9 -5
  201. package/dist/automation/actions/interaction/get/getYLocationOfBrowserWindow.js +5 -1
  202. package/dist/automation/actions/interaction/get/getYLocationOfWebElement.js +8 -4
  203. package/dist/automation/actions/interaction/iframe/switchToDefaultContent.js +4 -1
  204. package/dist/automation/actions/interaction/inputlessActions/AirplaneModeSwitchOff.js +9 -6
  205. package/dist/automation/actions/interaction/inputlessActions/AirplaneModeSwitchOn.js +9 -6
  206. package/dist/automation/actions/interaction/inputlessActions/Break.js +4 -1
  207. package/dist/automation/actions/interaction/inputlessActions/Continue.js +4 -1
  208. package/dist/automation/actions/interaction/inputlessActions/GpsSwitchOff.js +4 -1
  209. package/dist/automation/actions/interaction/inputlessActions/GpsSwitchOn.js +4 -1
  210. package/dist/automation/actions/interaction/inputlessActions/HideKeyboard.js +4 -1
  211. package/dist/automation/actions/interaction/inputlessActions/LockDevice.js +4 -1
  212. package/dist/automation/actions/interaction/inputlessActions/OpenChromeBrowser.js +4 -1
  213. package/dist/automation/actions/interaction/inputlessActions/OpenNotification.js +4 -1
  214. package/dist/automation/actions/interaction/inputlessActions/ResetApp.js +4 -1
  215. package/dist/automation/actions/interaction/inputlessActions/RestartCurrentDevice.js +9 -6
  216. package/dist/automation/actions/interaction/inputlessActions/SetDeviceOrientationAsLandscape.js +4 -1
  217. package/dist/automation/actions/interaction/inputlessActions/SetDeviceOrientationAsPortrait.js +4 -1
  218. package/dist/automation/actions/interaction/inputlessActions/SetEmulatorPowerStateOff.js +8 -5
  219. package/dist/automation/actions/interaction/inputlessActions/SetEmulatorPowerStateOn.js +8 -5
  220. package/dist/automation/actions/interaction/inputlessActions/WifiSwitchOff.js +4 -1
  221. package/dist/automation/actions/interaction/inputlessActions/WifiSwitchOn.js +4 -1
  222. package/dist/automation/actions/interaction/maximize/maximize.js +6 -3
  223. package/dist/automation/actions/interaction/maximize/minimize.js +4 -1
  224. package/dist/automation/actions/interaction/navigation/goBack.js +4 -1
  225. package/dist/automation/actions/interaction/navigation/navigate.js +4 -1
  226. package/dist/automation/actions/interaction/navigation/refresh.js +4 -1
  227. package/dist/automation/actions/interaction/pinch/PinchInByPercentMob.js +7 -4
  228. package/dist/automation/actions/interaction/pinch/PinchOutByPercentMob.js +5 -4
  229. package/dist/automation/actions/interaction/press/longPress.js +6 -2
  230. package/dist/automation/actions/interaction/press/mobPressBackKey.js +4 -1
  231. package/dist/automation/actions/interaction/press/mobPressBackSpaceKey.js +4 -1
  232. package/dist/automation/actions/interaction/press/mobPressSpaceKey.js +4 -1
  233. package/dist/automation/actions/interaction/press/pressAnyKey.js +4 -1
  234. package/dist/automation/actions/interaction/press/pressAnyKeyNTimes.js +4 -1
  235. package/dist/automation/actions/interaction/press/pressEnterKey.js +4 -1
  236. package/dist/automation/actions/interaction/press/pressHomeKey.js +8 -5
  237. package/dist/automation/actions/interaction/scroll/scrollHorizontallyTillElementIsVisible.js +4 -1
  238. package/dist/automation/actions/interaction/scroll/scrollPageToSpecificLocation.js +5 -1
  239. package/dist/automation/actions/interaction/scroll/scrollToElement.js +4 -1
  240. package/dist/automation/actions/interaction/scroll/scrollVerticallyTillElementIsVisible.js +4 -1
  241. package/dist/automation/actions/interaction/set/MOB_SetContext.js +5 -1
  242. package/dist/automation/actions/interaction/set/MOB_SetEmulatorPowerPercentage.js +5 -1
  243. package/dist/automation/actions/interaction/set/setClipBoardText.js +4 -1
  244. package/dist/automation/actions/interaction/shadowDom/shadowDomClick.js +7 -4
  245. package/dist/automation/actions/interaction/shadowDom/shadowDomEnter.js +7 -4
  246. package/dist/automation/actions/interaction/shadowDom/shadowDomGetText.js +7 -4
  247. package/dist/automation/actions/interaction/shadowDom/shadowDomUpload.js +7 -4
  248. package/dist/automation/actions/interaction/shadowDom/shadowDomVerifyPartialText.js +7 -4
  249. package/dist/automation/actions/interaction/shadowDom/shadowDomVerifyText.js +7 -4
  250. package/dist/automation/actions/interaction/swipe/swipeDirectionNTimes.js +6 -3
  251. package/dist/automation/actions/interaction/swipe/swipeDownToElement.js +13 -13
  252. package/dist/automation/actions/interaction/swipe/swipeLeftToElement.js +13 -13
  253. package/dist/automation/actions/interaction/swipe/swipeRightToElement.js +13 -13
  254. package/dist/automation/actions/interaction/swipe/swipeUpToElement.js +16 -16
  255. package/dist/automation/actions/interaction/swipe/swipeUpToElementForMWeb.js +12 -9
  256. package/dist/automation/actions/interaction/swipe/swipeUsingReferenceElement.js +79 -81
  257. package/dist/automation/actions/interaction/switch/switchToNewTabBasedOnTitle.js +4 -1
  258. package/dist/automation/actions/interaction/switch/switchToNewWindowBasedOnTitle.js +4 -1
  259. package/dist/automation/actions/interaction/switch/switchToParentWindow.js +4 -1
  260. package/dist/automation/actions/interaction/switch/switchToTabBasedOnUrl.js +4 -1
  261. package/dist/automation/actions/interaction/switch/switchToWindowBasedOnURL.js +4 -1
  262. package/dist/automation/actions/interaction/switch/switchToWindowIfTitleContainsString.js +4 -1
  263. package/dist/automation/actions/interaction/switch/switchToWindowIfUrlContainsString.js +4 -1
  264. package/dist/automation/actions/interaction/upload/uploadfile.js +6 -3
  265. package/dist/automation/actions/interaction/verify/MOB_VerifyBatteryLevel.js +5 -1
  266. package/dist/automation/actions/interaction/verify/MOB_VerifyIfAirplaneModeOff.js +5 -1
  267. package/dist/automation/actions/interaction/verify/MOB_VerifyIfAirplaneModeOn.js +5 -1
  268. package/dist/automation/actions/interaction/verify/MOB_VerifyIfAppIsClosed.js +5 -1
  269. package/dist/automation/actions/interaction/verify/MOB_VerifyIfDeviceIsLocked.js +5 -1
  270. package/dist/automation/actions/interaction/verify/MOB_VerifyIfDeviceIsUnlocked.js +5 -1
  271. package/dist/automation/actions/interaction/verify/MOB_VerifyIfGpsOff.js +5 -1
  272. package/dist/automation/actions/interaction/verify/MOB_VerifyIfGpsOn.js +5 -1
  273. package/dist/automation/actions/interaction/verify/MOB_VerifyIfKeyboardIsHidden.js +5 -1
  274. package/dist/automation/actions/interaction/verify/MOB_VerifyIfKeyboardIsShown.js +5 -1
  275. package/dist/automation/actions/interaction/verify/MOB_VerifyIfWifiOff.js +5 -1
  276. package/dist/automation/actions/interaction/verify/MOB_VerifyIfWifiOn.js +5 -1
  277. package/dist/automation/actions/interaction/verify/VerifyAccessibilityScore.js +4 -1
  278. package/dist/automation/actions/interaction/verify/VerifyAllBrokenImages.js +7 -4
  279. package/dist/automation/actions/interaction/verify/VerifyAllBrowserWindowsClosed.js +7 -4
  280. package/dist/automation/actions/interaction/verify/VerifyAllOptionsAreDeSelected.js +9 -6
  281. package/dist/automation/actions/interaction/verify/VerifyAllOptionsAreSelected.js +8 -5
  282. package/dist/automation/actions/interaction/verify/VerifyAttributeValue.js +7 -4
  283. package/dist/automation/actions/interaction/verify/VerifyBestPracticesScore.js +4 -1
  284. package/dist/automation/actions/interaction/verify/VerifyBrowserHtmlCodeContainsString.js +6 -3
  285. package/dist/automation/actions/interaction/verify/VerifyBrowserWindowHeight.js +6 -3
  286. package/dist/automation/actions/interaction/verify/VerifyBrowserWindowTitleContainsString.js +9 -6
  287. package/dist/automation/actions/interaction/verify/VerifyBrowserWindowTitleIsString.js +8 -5
  288. package/dist/automation/actions/interaction/verify/VerifyBrowserWindowUrlContainsExpectedUrl.js +8 -5
  289. package/dist/automation/actions/interaction/verify/VerifyBrowserWindowUrlIsString.js +8 -5
  290. package/dist/automation/actions/interaction/verify/VerifyBrowserWindowWidth.js +6 -3
  291. package/dist/automation/actions/interaction/verify/VerifyBrowserWindowXLocation.js +6 -3
  292. package/dist/automation/actions/interaction/verify/VerifyBrowserWindowYLocation.js +6 -3
  293. package/dist/automation/actions/interaction/verify/VerifyCheckBoxIsNotSelected.js +8 -4
  294. package/dist/automation/actions/interaction/verify/VerifyCheckBoxIsSelected.js +6 -3
  295. package/dist/automation/actions/interaction/verify/VerifyCssAttributeValue.js +6 -3
  296. package/dist/automation/actions/interaction/verify/VerifyElementIsClickable.js +7 -4
  297. package/dist/automation/actions/interaction/verify/VerifyElementIsDisabled.js +10 -7
  298. package/dist/automation/actions/interaction/verify/VerifyElementIsDisplayed.js +9 -6
  299. package/dist/automation/actions/interaction/verify/VerifyElementIsEnabled.js +10 -7
  300. package/dist/automation/actions/interaction/verify/VerifyElementIsNotDisplayed.js +7 -4
  301. package/dist/automation/actions/interaction/verify/VerifyElementIsSelected.js +10 -7
  302. package/dist/automation/actions/interaction/verify/VerifyElementNotContainsText.js +5 -2
  303. package/dist/automation/actions/interaction/verify/VerifyHeightOfWebElement.js +10 -7
  304. package/dist/automation/actions/interaction/verify/VerifyHexCodeForGivenXYCoordinates.js +4 -1
  305. package/dist/automation/actions/interaction/verify/VerifyIfAllCookiesAreDeleted.js +7 -4
  306. package/dist/automation/actions/interaction/verify/VerifyIfAudioEnded.js +6 -3
  307. package/dist/automation/actions/interaction/verify/VerifyIfAudioIsMuted.js +6 -3
  308. package/dist/automation/actions/interaction/verify/VerifyIfAudioIsPaused.js +6 -3
  309. package/dist/automation/actions/interaction/verify/VerifyIfAudioIsPlaying.js +7 -4
  310. package/dist/automation/actions/interaction/verify/VerifyIfBrowserWindowIsClosed.js +7 -4
  311. package/dist/automation/actions/interaction/verify/VerifyIfCookieNameIsAdded.js +7 -4
  312. package/dist/automation/actions/interaction/verify/VerifyIfCookieNameIsDeleted.js +6 -3
  313. package/dist/automation/actions/interaction/verify/VerifyIfCookieObjectIsPresent.js +7 -4
  314. package/dist/automation/actions/interaction/verify/VerifyIfGivenOptionIsDuplicate.js +6 -3
  315. package/dist/automation/actions/interaction/verify/VerifyIfImageIsBroken.js +7 -4
  316. package/dist/automation/actions/interaction/verify/VerifyIfLinkIsBroken.js +7 -4
  317. package/dist/automation/actions/interaction/verify/VerifyIfLinkIsWorking.js +6 -3
  318. package/dist/automation/actions/interaction/verify/VerifyIfLinksAreBroken.js +7 -4
  319. package/dist/automation/actions/interaction/verify/VerifyIfLinksAreWorking.js +6 -3
  320. package/dist/automation/actions/interaction/verify/VerifyIfOptionWithIndexIsDeselectedInElement.js +8 -5
  321. package/dist/automation/actions/interaction/verify/VerifyIfOptionWithIndexIsSelectedInListBox.js +10 -7
  322. package/dist/automation/actions/interaction/verify/VerifyIfOptionWithTextIsDeselected.js +4 -1
  323. package/dist/automation/actions/interaction/verify/VerifyIfOptionWithValueIsDeselected.js +6 -3
  324. package/dist/automation/actions/interaction/verify/VerifyIfOptionWithValueIsSelected.js +6 -3
  325. package/dist/automation/actions/interaction/verify/VerifyIfOptionWithVisibleTextIsSelected.js +4 -1
  326. package/dist/automation/actions/interaction/verify/VerifyIfSpecifiedOptionIsSelected.js +6 -3
  327. package/dist/automation/actions/interaction/verify/VerifyIfStatusCodeOfALinkIsStatusCode.js +4 -1
  328. package/dist/automation/actions/interaction/verify/VerifyIfStatusCodesOfLinks.js +4 -1
  329. package/dist/automation/actions/interaction/verify/VerifyIfVideoEnded.js +6 -3
  330. package/dist/automation/actions/interaction/verify/VerifyIfVideoIsMuted.js +6 -3
  331. package/dist/automation/actions/interaction/verify/VerifyIfVideoIsPaused.js +6 -3
  332. package/dist/automation/actions/interaction/verify/VerifyIfVideoIsPlaying.js +6 -3
  333. package/dist/automation/actions/interaction/verify/VerifyIfVideoPlayingInMute.js +6 -3
  334. package/dist/automation/actions/interaction/verify/VerifyIfVideoPlayingInUnmute.js +6 -3
  335. package/dist/automation/actions/interaction/verify/VerifyIfXAndYCoordinateOfElement.js +9 -6
  336. package/dist/automation/actions/interaction/verify/VerifyLinkNavigatesToTitle.js +4 -1
  337. package/dist/automation/actions/interaction/verify/VerifyListBoxOptionsAreSorted.js +8 -5
  338. package/dist/automation/actions/interaction/verify/VerifyNavigateURL.js +6 -3
  339. package/dist/automation/actions/interaction/verify/VerifyNumberOfElementsByTagName.js +7 -4
  340. package/dist/automation/actions/interaction/verify/VerifyNumberOfElementsByXpath.js +7 -4
  341. package/dist/automation/actions/interaction/verify/VerifyPartialAttributeValue.js +7 -4
  342. package/dist/automation/actions/interaction/verify/VerifyPartialTitleOfCurrentPage.js +6 -3
  343. package/dist/automation/actions/interaction/verify/VerifyPerformanceScore.js +4 -1
  344. package/dist/automation/actions/interaction/verify/VerifyPwaScore.js +4 -1
  345. package/dist/automation/actions/interaction/verify/VerifyRadioButtonIsNotSelected.js +6 -3
  346. package/dist/automation/actions/interaction/verify/VerifyRadioButtonIsSelected.js +6 -3
  347. package/dist/automation/actions/interaction/verify/VerifySeoScore.js +4 -1
  348. package/dist/automation/actions/interaction/verify/VerifyTagName.js +6 -3
  349. package/dist/automation/actions/interaction/verify/VerifyThatSpecifiedOptionIsNotSelected.js +6 -3
  350. package/dist/automation/actions/interaction/verify/VerifyTitleInAllPage.js +6 -3
  351. package/dist/automation/actions/interaction/verify/VerifyTitleOfCurrentPage.js +6 -3
  352. package/dist/automation/actions/interaction/verify/VerifyValueOfElementContainsString.js +6 -3
  353. package/dist/automation/actions/interaction/verify/VerifyValueOfElementIsCleared.js +6 -3
  354. package/dist/automation/actions/interaction/verify/VerifyValueOfElementIsString.js +6 -3
  355. package/dist/automation/actions/interaction/verify/VerifyWidthOfElement.js +10 -7
  356. package/dist/automation/actions/interaction/verify/VerifyXLocationOfElement.js +10 -7
  357. package/dist/automation/actions/interaction/verify/VerifyYLocationOfElement.js +10 -7
  358. package/dist/automation/actions/interaction/verify/checkIfElementIsDisplayed.js +7 -4
  359. package/dist/automation/actions/interaction/verify/verifypartialtext.js +9 -6
  360. package/dist/automation/actions/interaction/verify/verifytext.js +14 -11
  361. package/dist/automation/actions/interaction/wait/MOB_WaitTillAllElementsAreInvisible.ts.js +5 -1
  362. package/dist/automation/actions/interaction/wait/MOB_WaitTillAttributeOfElementContainsString.js +6 -2
  363. package/dist/automation/actions/interaction/wait/MOB_WaitTillElementIsEnabled.js +6 -2
  364. package/dist/automation/actions/interaction/wait/MOB_WaitTillElementIsInvisible.js +6 -2
  365. package/dist/automation/actions/interaction/wait/MOB_WaitTillElementIsSelected.js +6 -2
  366. package/dist/automation/actions/interaction/wait/MOB_WaitTillElementIsVisible.js +6 -2
  367. package/dist/automation/actions/interaction/wait/MOB_WaitTillStalenessOfElement.js +6 -2
  368. package/dist/automation/actions/interaction/wait/wait.js +4 -1
  369. package/dist/automation/actions/interaction/wait/waitTillAttributeOfElementIsString.js +4 -1
  370. package/dist/automation/actions/interaction/wait/waitTillElementContainsText.js +4 -1
  371. package/dist/automation/actions/interaction/wait/waitTillElementHasText.js +4 -1
  372. package/dist/automation/actions/interaction/wait/waitTillElementIsClickable.js +4 -1
  373. package/dist/automation/actions/interaction/wait/waitTillPresenceOfAllElements.js +6 -3
  374. package/dist/automation/actions/interaction/wait/waitTillPresenceOfElement.js +4 -1
  375. package/dist/automation/actions/interface/IframeInterface.js +2 -1
  376. package/dist/automation/actions/interface/InputlessActionnterface.js +2 -1
  377. package/dist/automation/actions/interface/alertActionInterface.js +2 -1
  378. package/dist/automation/actions/interface/clearActionInterface.js +2 -1
  379. package/dist/automation/actions/interface/clickActionInterface.js +2 -1
  380. package/dist/automation/actions/interface/dragAndDropToElementInterface.js +2 -1
  381. package/dist/automation/actions/interface/elelementLessActionInterface.js +2 -1
  382. package/dist/automation/actions/interface/elementlessInterface.js +2 -1
  383. package/dist/automation/actions/interface/findActionInterface.js +2 -1
  384. package/dist/automation/actions/interface/getActionInterface.js +2 -1
  385. package/dist/automation/actions/interface/interactionActionInterface.js +2 -1
  386. package/dist/automation/actions/interface/maximizeAndMinimizeInterface.js +2 -1
  387. package/dist/automation/actions/interface/navigationActionInterface.js +2 -1
  388. package/dist/automation/actions/interface/pinchActionInterface.js +2 -1
  389. package/dist/automation/actions/interface/pressActionInterface.js +2 -1
  390. package/dist/automation/actions/interface/scrollActionInterface.js +2 -1
  391. package/dist/automation/actions/interface/setActionInterface.js +2 -1
  392. package/dist/automation/actions/interface/shadowDomInterface.js +2 -1
  393. package/dist/automation/actions/interface/swipeActionInterface.js +2 -1
  394. package/dist/automation/actions/interface/switchingActionInterface.js +2 -1
  395. package/dist/automation/actions/interface/uploadFile.js +2 -1
  396. package/dist/automation/actions/interface/verifyActionInterface.d.ts +1 -0
  397. package/dist/automation/actions/interface/verifyActionInterface.js +2 -1
  398. package/dist/automation/actions/interface/waitActionInterface.js +2 -1
  399. package/dist/automation/browserSession/initiateBrowserSession.js +11 -7
  400. package/dist/automation/cloudSession/initiateCloudSession.js +11 -7
  401. package/dist/automation/mobileSession/initiateMobileSession.d.ts +2 -1
  402. package/dist/automation/mobileSession/initiateMobileSession.js +16 -11
  403. package/dist/core/constants/allAction.js +5 -1
  404. package/dist/core/constants/defaultValues.js +4 -1
  405. package/dist/core/constants/supportedActions.js +34 -4
  406. package/dist/core/interfaces/StableDomInterface.js +2 -1
  407. package/dist/core/interfaces/actionInterface.d.ts +1 -1
  408. package/dist/core/interfaces/actionInterface.js +2 -1
  409. package/dist/core/interfaces/automationRunnerInterface.js +2 -1
  410. package/dist/core/interfaces/browserCapabilitiesInterface.js +4 -1
  411. package/dist/core/interfaces/browserConfigurationInterface.js +2 -1
  412. package/dist/core/interfaces/cloudConfigInterface.js +2 -1
  413. package/dist/core/interfaces/domAnalysisInterface.js +2 -1
  414. package/dist/core/interfaces/errorInfoInterface.js +2 -1
  415. package/dist/core/interfaces/executionDetails.d.ts +1 -0
  416. package/dist/core/interfaces/executionDetails.js +2 -1
  417. package/dist/core/interfaces/fireflinkScriptPayloadInterface.js +2 -1
  418. package/dist/core/interfaces/llmConfigurationInterface.d.ts +1 -1
  419. package/dist/core/interfaces/llmConfigurationInterface.js +2 -1
  420. package/dist/core/interfaces/llmResponseInterface.js +2 -1
  421. package/dist/core/interfaces/promptInterface.js +3 -1
  422. package/dist/core/interfaces/scriptGenrationDataInterface.js +2 -1
  423. package/dist/core/interfaces/simplifyAndFlattenInterface.js +2 -1
  424. package/dist/core/interfaces/toolsInterface.js +2 -1
  425. package/dist/core/main/actionHandlerFactory.js +19 -13
  426. package/dist/core/main/executionContext.js +15 -11
  427. package/dist/core/main/runAutomationScript.js +130 -126
  428. package/dist/core/main/stepProcessor.js +7 -3
  429. package/dist/core/types/browserType.js +4 -1
  430. package/dist/core/types/cloudServerPortType.js +4 -1
  431. package/dist/core/types/cloudprotocolType.js +2 -1
  432. package/dist/core/types/llmResponseType.js +2 -1
  433. package/dist/core/types/promptMap.js +2 -1
  434. package/dist/core/types/promptType.js +5 -2
  435. package/dist/core/types/scriptTypesType.js +2 -1
  436. package/dist/core/types/visionllmInputType.js +2 -1
  437. package/dist/domAnalysis/getRelaventElements.js +14 -10
  438. package/dist/domAnalysis/relativeElementsFromDom.js +5 -1
  439. package/dist/domAnalysis/searchBest.js +8 -4
  440. package/dist/domAnalysis/simplifyAndFlatten.js +41 -4
  441. package/dist/fireflinkData/fireflinkLocators/elementsFromHTML.js +13 -10
  442. package/dist/fireflinkData/fireflinkLocators/getListOfLocators.js +9 -5
  443. package/dist/fireflinkData/fireflinkLocators/typeList.js +4 -1
  444. package/dist/fireflinkData/fireflinkScript/scriptGenrationData.js +5 -1
  445. package/dist/imageAnalysisMobile/annotatedScreenshotMobile.js +11 -8
  446. package/dist/imageAnalysisMobile/annotatedScreenshotMobileInterface.js +2 -1
  447. package/dist/imageAnalysisWeb/annotateScreenshot.js +7 -4
  448. package/dist/imageAnalysisWeb/generateAnnotatedScreenshots.js +8 -5
  449. package/dist/imageAnalysisWeb/screenshotInterface.js +2 -1
  450. package/dist/index.js +5 -2
  451. package/dist/llmConfig/llmConfiguration.d.ts +1 -2
  452. package/dist/llmConfig/llmConfiguration.js +20 -14
  453. package/dist/service/api/fireflinkApi.service.js +10 -3
  454. package/dist/service/fireflink.service.js +10 -6
  455. package/dist/service/kafka/fireflinkKafka.service.js +12 -8
  456. package/dist/tests/multiBrowser.d.ts +1 -0
  457. package/dist/tests/multiBrowser.js +34 -0
  458. package/dist/tests/poc.js +21 -16
  459. package/dist/tests/test1.d.ts +1 -7
  460. package/dist/tests/test1.js +29 -11
  461. package/dist/tests/test12.d.ts +0 -1
  462. package/dist/tests/test12.js +74 -68
  463. package/dist/tests/test3.js +4 -2
  464. package/dist/tests/testkaf.d.ts +1 -0
  465. package/dist/tests/testkaf.js +56 -0
  466. package/dist/tests/tests.data.js +4 -1
  467. package/dist/tests/testwe.d.ts +1 -0
  468. package/dist/tests/testwe.js +24 -0
  469. package/dist/utils/DomExtraction/jsForAttributeInjection.d.ts +1 -1
  470. package/dist/utils/DomExtraction/jsForAttributeInjection.js +21 -13
  471. package/dist/utils/InstancesDetails/getInstancesInfo.js +6 -2
  472. package/dist/utils/alertPopup/isAlertPresent.js +5 -1
  473. package/dist/utils/alertPopup/isAlertPresentInterface.js +2 -1
  474. package/dist/utils/browserCap/capability.js +4 -1
  475. package/dist/utils/cloudConfig/cloudPath.js +4 -1
  476. package/dist/utils/helpers/enterActionHelper.js +23 -15
  477. package/dist/utils/helpers/imageUtils.js +4 -1
  478. package/dist/utils/helpers/sameActionsHelper.js +4 -1
  479. package/dist/utils/helpers/xpathcreation.js +11 -5
  480. package/dist/utils/iframesExtraction/findElementUsingFF.js +7 -3
  481. package/dist/utils/iframesExtraction/iframeInterface.js +2 -1
  482. package/dist/utils/iframesExtraction/switchToIframeByMeta.js +4 -1
  483. package/dist/utils/javascript/jsFindElement.js +4 -1
  484. package/dist/utils/javascript/jsForShadowRoot.js +9 -6
  485. package/dist/utils/javascript/jsForToaster.js +4 -1
  486. package/dist/utils/javascript/jsForVision.js +5 -2
  487. package/dist/utils/logger/logData.js +28 -21
  488. package/dist/utils/newTab/newTabTracker.js +4 -1
  489. package/dist/utils/swipe/domSearchHelper.d.ts +1 -1
  490. package/dist/utils/swipe/domSearchHelper.js +51 -24
  491. package/dist/utils/swipe/swipeMovement.js +4 -1
  492. package/package.json +10 -8
@@ -1,4 +1,7 @@
1
- export function decodeApiKey(apiKey) {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.decodeApiKey = decodeApiKey;
4
+ function decodeApiKey(apiKey) {
2
5
  if (!apiKey) {
3
6
  throw new Error("API key is required");
4
7
  }
@@ -1,26 +1,32 @@
1
- import { prompts } from "../llmprompts/promptRegistry.js";
2
- import OpenAI from "openai";
3
- import { decodeApiKey } from "./decodeApiKey.js";
4
- import { userInputFormatters } from "../../ai/llmprompts/userPrompts/userPrompt.js";
5
- import { PromptType } from "../../core/types/promptType.js";
6
- import { logger } from "../../utils/logger/logData.js";
7
- export class llmAction {
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.llmAction = void 0;
7
+ const promptRegistry_js_1 = require("../llmprompts/promptRegistry.js");
8
+ const openai_1 = __importDefault(require("openai"));
9
+ const decodeApiKey_js_1 = require("./decodeApiKey.js");
10
+ const userPrompt_js_1 = require("../../ai/llmprompts/userPrompts/userPrompt.js");
11
+ const promptType_js_1 = require("../../core/types/promptType.js");
12
+ const logData_js_1 = require("../../utils/logger/logData.js");
13
+ class llmAction {
8
14
  constructor(apiKey, baseURL, model, visionApiKey) {
9
15
  this.model = model;
10
16
  this.visionApiKey = visionApiKey;
11
- this.client = new OpenAI({
12
- apiKey: decodeApiKey(apiKey),
17
+ this.client = new openai_1.default({
18
+ apiKey: (0, decodeApiKey_js_1.decodeApiKey)(apiKey),
13
19
  baseURL: baseURL,
14
20
  });
15
- this.visionClient = new OpenAI({
16
- apiKey: decodeApiKey(this.visionApiKey),
21
+ this.visionClient = new openai_1.default({
22
+ apiKey: (0, decodeApiKey_js_1.decodeApiKey)(this.visionApiKey),
17
23
  });
18
24
  }
19
25
  async getLLMResponse(platform, type, args, userInput) {
20
- const promptBuilder = prompts[platform][type];
26
+ const promptBuilder = promptRegistry_js_1.prompts[platform][type];
21
27
  const systemPrompt = await promptBuilder(args);
22
- const userPrompt = userInputFormatters[type](userInput);
23
- if (type === PromptType.VISION_PROMPT && Array.isArray(userPrompt)) {
28
+ const userPrompt = userPrompt_js_1.userInputFormatters[type](userInput);
29
+ if (type === promptType_js_1.PromptType.VISION_PROMPT && Array.isArray(userPrompt)) {
24
30
  return this.getLLMResponseWithVision(systemPrompt, userPrompt);
25
31
  }
26
32
  if (typeof userPrompt !== "string") {
@@ -44,16 +50,16 @@ export class llmAction {
44
50
  response_format: { type: "json_object" },
45
51
  });
46
52
  const content = response.choices?.[0]?.message?.content;
47
- logger.info(`LLM Attempt ${attempt} - Raw Response:`, content);
53
+ logData_js_1.logger.info(`LLM Attempt ${attempt} - Raw Response:`, content);
48
54
  if (this.isInvalidLLMOutput(content)) {
49
- logger.error(`Invalid LLM output. Retrying (${attempt})`);
55
+ logData_js_1.logger.error(`Invalid LLM output. Retrying (${attempt})`);
50
56
  continue;
51
57
  }
52
58
  // logger.info("Time taken to get LLM response (Text):", Date.now() - startTime, "ms");
53
59
  return response;
54
60
  }
55
61
  catch (error) {
56
- logger.error(`LLM Error Attempt ${attempt}:`, error);
62
+ logData_js_1.logger.error(`LLM Error Attempt ${attempt}:`, error);
57
63
  const structuredError = this.handleKnownErrors(error);
58
64
  if (structuredError)
59
65
  return structuredError;
@@ -77,16 +83,16 @@ export class llmAction {
77
83
  response_format: { type: "json_object" },
78
84
  });
79
85
  const content = response.choices?.[0]?.message?.content;
80
- logger.info(`Vision LLM Attempt ${attempt} - Raw Response:`, content);
86
+ logData_js_1.logger.info(`Vision LLM Attempt ${attempt} - Raw Response:`, content);
81
87
  if (this.isInvalidLLMOutput(content)) {
82
- logger.error(`Invalid Vision output. Retrying (${attempt})`);
88
+ logData_js_1.logger.error(`Invalid Vision output. Retrying (${attempt})`);
83
89
  continue;
84
90
  }
85
91
  // logger.info("Time taken to get LLM response (vision):", Date.now() - startTime, "ms");
86
92
  return response;
87
93
  }
88
94
  catch (error) {
89
- logger.error(`Vision LLM Error Attempt ${attempt}:`, error);
95
+ logData_js_1.logger.error(`Vision LLM Error Attempt ${attempt}:`, error);
90
96
  const structuredError = this.handleKnownErrors(error);
91
97
  if (structuredError)
92
98
  return structuredError;
@@ -143,3 +149,4 @@ export class llmAction {
143
149
  };
144
150
  }
145
151
  }
152
+ exports.llmAction = llmAction;
@@ -1,5 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.LLMResultParser = void 0;
1
4
  // import { logger } from "../../utils/logger/logData.js";
2
- export class LLMResultParser {
5
+ class LLMResultParser {
3
6
  constructor() {
4
7
  this.inputTokens = 0;
5
8
  this.outputTokens = 0;
@@ -47,3 +50,4 @@ export class LLMResultParser {
47
50
  };
48
51
  }
49
52
  }
53
+ exports.LLMResultParser = LLMResultParser;
@@ -1 +1,2 @@
1
- export {};
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,40 +1,43 @@
1
- import { keywordExtractor } from "./systemPrompts/actionExtractorPrompt.js";
2
- import { buildStepExtractionPrompt, androidbuildStepExtractionPrompt } from "./systemPrompts/userStoryToListPrompt.js";
3
- import { buildErrorDescriptionPrompt } from "./systemPrompts/errorDescriptionPrompt.js";
4
- import { ffInspectorNumExtractor } from "./systemPrompts/fireflinkElementIndexExtactors.js";
5
- import { ffInspectorNumExtractorMob } from "./systemPrompts/fireflinkElementIndexExtractor_Mob.js";
6
- import { visionPrompt } from "./systemPrompts/visionPrompt.js";
7
- import { visionPromptMobile } from "./systemPrompts/visionPromptMobile.js";
8
- import { verifyActionExtractorPrompt } from "./systemPrompts/verifyActionExtractorPrompt.js";
9
- import { getActionExtractorPrompt } from "./systemPrompts/getActionExtractorPrompt.js";
10
- import { verifyActionExtractorPromptMob } from "./systemPrompts/verifyActionExtractorPromptMob.js";
11
- import { getActionExtractorPromptMob } from "./systemPrompts/getActionExtractorPromptMob.js";
12
- import { keywordExtractorMobile } from "./systemPrompts/mobileKeywordExtractor.js";
13
- import { combinedActionExtractorPromptMob } from "./systemPrompts/combinedActionExtractorPromptMob.js";
14
- import { waitActionExtractorPromptMob } from "./systemPrompts/waitActionExtractorPromptMob.js";
15
- import { waitActionExtractorPrompt } from "./systemPrompts/waitActionExtractorPrompt.js";
16
- import { combinedActionExtractorPrompt } from "./systemPrompts/combinedActionExtractorPrompt.js";
17
- export const prompts = {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.prompts = void 0;
4
+ const actionExtractorPrompt_js_1 = require("./systemPrompts/actionExtractorPrompt.js");
5
+ const userStoryToListPrompt_js_1 = require("./systemPrompts/userStoryToListPrompt.js");
6
+ const errorDescriptionPrompt_js_1 = require("./systemPrompts/errorDescriptionPrompt.js");
7
+ const fireflinkElementIndexExtactors_js_1 = require("./systemPrompts/fireflinkElementIndexExtactors.js");
8
+ const fireflinkElementIndexExtractor_Mob_js_1 = require("./systemPrompts/fireflinkElementIndexExtractor_Mob.js");
9
+ const visionPrompt_js_1 = require("./systemPrompts/visionPrompt.js");
10
+ const visionPromptMobile_js_1 = require("./systemPrompts/visionPromptMobile.js");
11
+ const verifyActionExtractorPrompt_js_1 = require("./systemPrompts/verifyActionExtractorPrompt.js");
12
+ const getActionExtractorPrompt_js_1 = require("./systemPrompts/getActionExtractorPrompt.js");
13
+ const verifyActionExtractorPromptMob_js_1 = require("./systemPrompts/verifyActionExtractorPromptMob.js");
14
+ const getActionExtractorPromptMob_js_1 = require("./systemPrompts/getActionExtractorPromptMob.js");
15
+ const mobileKeywordExtractor_js_1 = require("./systemPrompts/mobileKeywordExtractor.js");
16
+ const combinedActionExtractorPromptMob_js_1 = require("./systemPrompts/combinedActionExtractorPromptMob.js");
17
+ const waitActionExtractorPromptMob_js_1 = require("./systemPrompts/waitActionExtractorPromptMob.js");
18
+ const waitActionExtractorPrompt_js_1 = require("./systemPrompts/waitActionExtractorPrompt.js");
19
+ const combinedActionExtractorPrompt_js_1 = require("./systemPrompts/combinedActionExtractorPrompt.js");
20
+ exports.prompts = {
18
21
  web: {
19
- userStoryToList: buildStepExtractionPrompt,
20
- keywordExtractorPrompt: keywordExtractor,
21
- errorDescriptionPrompt: buildErrorDescriptionPrompt,
22
- ffInspectorNumExtractor: ffInspectorNumExtractor,
23
- verifyActionExtractorPrompt: verifyActionExtractorPrompt,
24
- visionPrompt: visionPrompt,
25
- getActionExtractorPrompt: getActionExtractorPrompt,
26
- combinedActionExtractorPrompt: combinedActionExtractorPrompt,
27
- waitActionExtractorPrompt: waitActionExtractorPrompt,
22
+ userStoryToList: userStoryToListPrompt_js_1.buildStepExtractionPrompt,
23
+ keywordExtractorPrompt: actionExtractorPrompt_js_1.keywordExtractor,
24
+ errorDescriptionPrompt: errorDescriptionPrompt_js_1.buildErrorDescriptionPrompt,
25
+ ffInspectorNumExtractor: fireflinkElementIndexExtactors_js_1.ffInspectorNumExtractor,
26
+ verifyActionExtractorPrompt: verifyActionExtractorPrompt_js_1.verifyActionExtractorPrompt,
27
+ visionPrompt: visionPrompt_js_1.visionPrompt,
28
+ getActionExtractorPrompt: getActionExtractorPrompt_js_1.getActionExtractorPrompt,
29
+ combinedActionExtractorPrompt: combinedActionExtractorPrompt_js_1.combinedActionExtractorPrompt,
30
+ waitActionExtractorPrompt: waitActionExtractorPrompt_js_1.waitActionExtractorPrompt,
28
31
  },
29
32
  android: {
30
- userStoryToList: androidbuildStepExtractionPrompt,
31
- keywordExtractorPrompt: keywordExtractorMobile,
32
- errorDescriptionPrompt: buildErrorDescriptionPrompt,
33
- ffInspectorNumExtractor: ffInspectorNumExtractorMob,
34
- verifyActionExtractorPrompt: verifyActionExtractorPromptMob,
35
- visionPrompt: visionPromptMobile,
36
- getActionExtractorPrompt: getActionExtractorPromptMob,
37
- combinedActionExtractorPrompt: combinedActionExtractorPromptMob,
38
- waitActionExtractorPrompt: waitActionExtractorPromptMob,
33
+ userStoryToList: userStoryToListPrompt_js_1.androidbuildStepExtractionPrompt,
34
+ keywordExtractorPrompt: mobileKeywordExtractor_js_1.keywordExtractorMobile,
35
+ errorDescriptionPrompt: errorDescriptionPrompt_js_1.buildErrorDescriptionPrompt,
36
+ ffInspectorNumExtractor: fireflinkElementIndexExtractor_Mob_js_1.ffInspectorNumExtractorMob,
37
+ verifyActionExtractorPrompt: verifyActionExtractorPromptMob_js_1.verifyActionExtractorPromptMob,
38
+ visionPrompt: visionPromptMobile_js_1.visionPromptMobile,
39
+ getActionExtractorPrompt: getActionExtractorPromptMob_js_1.getActionExtractorPromptMob,
40
+ combinedActionExtractorPrompt: combinedActionExtractorPromptMob_js_1.combinedActionExtractorPromptMob,
41
+ waitActionExtractorPrompt: waitActionExtractorPromptMob_js_1.waitActionExtractorPromptMob,
39
42
  }
40
43
  };
@@ -1,5 +1,8 @@
1
- export async function keywordExtractor({ priorAndNextSteps }) {
2
- const allowedActions = ["enter", "wait", "verify", "scroll", "navigate", "click", "maximize", "minimize", "get", "upload", "close", "open", "drag_and_drop", "switch", "cleartext"];
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.keywordExtractor = keywordExtractor;
4
+ async function keywordExtractor({ priorAndNextSteps }) {
5
+ const allowedActions = ["enter", "wait", "verify", "scroll", "navigate", "navigateBack", "click", "maximize", "minimize", "get", "upload", "close", "open", "drag_and_drop", "switch", "cleartext"];
3
6
  const prompt = `
4
7
  You are an expert in Web application testing.
5
8
  From the step, extract ONLY the meaningful keywords so that i can search for the element in the dom.
@@ -21,7 +24,7 @@ You are an expert in Web application testing.
21
24
  - Do NOT include status/technical words (displayed, enabled, authenticate, visible).
22
25
  - If an element label contains multiple words (e.g., "Sign In", "Add to Cart"), keep them together as ONE keyword like ["Sign In", "SignIn", "Add to Cart", "AddToCart"] and Never split them and also for keywords you generated, should not split them like ["sign", "in","add","to","cart"].
23
26
  - element_name: extract name of the element that mentioned in the the step.(eg:tap on x -> element_name:x) keep element_name as short as possible and make the first letter of first word of the element_name as capital. beacuse element_name is also used to find element in the dom. and if element_name is not mentioned in step than return action of the step as element_name.
24
- - action: click for taping, clicking or selecting, enter for entering input, wait for waiting or sleeping,scroll for scrolling and swiping, navigate for navigating to page using url or navigateing back to previous page, get for getting,fetching element,maximize for maximizing browser window, close for closing browser window,open for opening browser window, upload for uploading file using path, drag_and_drop for dragging and dropping element, switch is for switching to tab or window or frame,cleartext for clearing or removing text from element.
27
+ - action: click for taping, clicking or selecting, enter for entering input, wait for waiting or sleeping,scroll for scrolling and swiping, navigate for navigating to page using url, navigateBack for navigateing back to previous page, get for getting,fetching element,maximize for maximizing browser window, close for closing browser window,open for opening browser window, upload for uploading file using path, drag_and_drop for dragging and dropping element, switch is for switching to tab or window or frame,cleartext for clearing or removing text from element.
25
28
  - action must be one of from this list ${JSON.stringify(allowedActions)}.if not one of them, return '0'. if step about set or find action return '0'
26
29
  - For navigate action, keywords should contain only one keyword which is full url from the step and should not include any other text. and if step has another actions, including navigate action, don't return navigate action return another action witch is in the step. and element_name should be "URL".
27
30
  Navigate action is allowed only when the step intent is purely navigation (e.g., "Navigate to URL").
@@ -1,4 +1,7 @@
1
- export async function combinedActionExtractorPrompt({ extractedDomJson, priorAndNextSteps, }) {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.combinedActionExtractorPrompt = combinedActionExtractorPrompt;
4
+ async function combinedActionExtractorPrompt({ extractedDomJson, priorAndNextSteps, }) {
2
5
  const nlpList = `"dummy"`;
3
6
  const elementType = ["link", "textfield", "icon", "button", "radiobutton", "checkbox", "tab", "action overflow button", "hamburger menu", "toggle button", "steppers", "sliders"];
4
7
  const prompt = `
@@ -1,4 +1,7 @@
1
- export async function combinedActionExtractorPromptMob({ extractedDomJson, priorAndNextSteps, }) {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.combinedActionExtractorPromptMob = combinedActionExtractorPromptMob;
4
+ async function combinedActionExtractorPromptMob({ extractedDomJson, priorAndNextSteps, }) {
2
5
  const nlpList = `"MOB_SetCapability","MOB_EnterUrl","MOB_OpenMobileApplication",
3
6
  "MOB_IsAppInstalled","MOB_SetEmulatorPowerPercentage","MOB_ReceiveMessageOnEmulator","MOB_UninstallAPK",
4
7
  "MOB_InstallAPK","MOB_SetClipBoardText","MOB_PressAnyKeyNTimes",
@@ -1,4 +1,7 @@
1
- export async function buildErrorDescriptionPrompt() {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.buildErrorDescriptionPrompt = buildErrorDescriptionPrompt;
4
+ async function buildErrorDescriptionPrompt() {
2
5
  const description_prompt = `
3
6
  Analyze the automation failure and execution history and generate a structured diagnostic response.
4
7
 
@@ -27,7 +30,7 @@ STRICT OUTPUT RULES:
27
30
  Return a JSON object with EXACTLY these keys:
28
31
 
29
32
  1. "error":
30
- - A concise, single-line, selenium exception name or appium exception name (error).__name__ (e.g., "InvalidSessionIdException", "NoSuchElementException", "WebDriverException" etc) expamle: if error is element not found, return "NoSuchElementException"
33
+ - A concise, single-line, selenium exception name or appium exception name (error).__name__ (e.g., "InvalidSessionIdException", "NoSuchElementException", "WebDriverException","ElementNotInteractableException" etc) expamle: if error is element not found, return "NoSuchElementException"
31
34
  - Must contain ONLY a single Selenium-style exception class name.
32
35
  - Do NOT include additional words.
33
36
 
@@ -1,4 +1,7 @@
1
- export async function ffInspectorNumExtractor({ stepAction, extractedDomJson, priorAndNextSteps, isAlert = false, isDrag = false, }) {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ffInspectorNumExtractor = ffInspectorNumExtractor;
4
+ async function ffInspectorNumExtractor({ stepAction, extractedDomJson, priorAndNextSteps, isAlert = false, isDrag = false, }) {
2
5
  const switchActions = ["SwitchToNewTabBasedOnTitle", "SwitchToNewTabBasedOnUrl", "SwitchToNewWindowBasedOnTitle", "SwitchToNewWindowBasedOnURL", "SwitchToParentWindow", "SwitchToWindowIfTitleContainsString", "SwitchToNewWindowIfUrlContainsString"];
3
6
  const clickActions = ["Click", "DoubleClick", "RightClick", "WaitAndClick", "ClickNTimes", "ClickUsingJS"];
4
7
  const alertActions = [
@@ -61,7 +64,7 @@ Respond only with JSON using this format:
61
64
  {
62
65
  "drag": "Fire-Flink-x",
63
66
  "drop": "Fire-Flink-x",
64
- "action": "Builtin_DragAndDropToElement",
67
+ "nlpName": "Builtin_DragAndDropToElement",
65
68
  "drag_element_name": "x",
66
69
  "drop_element_name": "x"
67
70
  "drag_element_type": "x",
@@ -1,4 +1,7 @@
1
- export async function ffInspectorNumExtractorMob({ stepAction, extractedDomJson, priorAndNextSteps, }) {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ffInspectorNumExtractorMob = ffInspectorNumExtractorMob;
4
+ async function ffInspectorNumExtractorMob({ stepAction, extractedDomJson, priorAndNextSteps, }) {
2
5
  const SwipeActions = ["MOB_SwipeToElement", "MOB_SwipeUpToElement", "MOB_SwipeDownToElement", "MOB_SwipeLeftToElement", "MOB_SwipeRightToElement", "MOB_SwipeNTimes", "MOB_Builtin_Swipe", "MOB_SwipeDirectionNTimes", "MOB_SwipeToElementForMWeb", "MOB_SwipeUsingReferenceElement"];
3
6
  const Actions = ["MOB_Tap", "MOB_TapNTimes", "MOB_DoubleTap", "MOB_DoubleTapAtSpecifiedLocation", "MOB_TapOnSpecifiedLocation",
4
7
  "MOB_Enter", "MOB_EnterDataAndPressKey", "MOB_EnterInputIntoElementFromClipBoard", "MOB_EnterUrl", "MOB_ClearThenEnterInput",
@@ -47,7 +50,7 @@ You are an AI assistant. For the step, extract the element keyword from the step
47
50
  filtered dom JSON: ${extractedDomJson}
48
51
  `;
49
52
  }
50
- else if (stepAction === "swipe") {
53
+ else if (stepAction === "swipe" || stepAction === "scroll") {
51
54
  prompt = `
52
55
  You are an intelligent assistant that extracts structured mobile scroll/swipe action data.
53
56
  Given the step: ${JSON.stringify(priorAndNextSteps)}, the simplified DOM (for scroll context): ${extractedDomJson}, and the list of NLP names: ${SwipeActions}.
@@ -1,4 +1,7 @@
1
- export async function getActionExtractorPrompt({ extractedDomJson, priorAndNextSteps, }) {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getActionExtractorPrompt = getActionExtractorPrompt;
4
+ async function getActionExtractorPrompt({ extractedDomJson, priorAndNextSteps, }) {
2
5
  const nlpList = `"GetAllTheOptionsFromListBoxAsTextInSortedOrder", "GetScreenshot", "GetAllTheOptionsFromListBoxAsText", "GetTheFirstSelectedOptionFromListBoxAsText", "GetAllTheSelectedOptionsFromListBoxAsText", "GetAttribute", "GetTagName", "GetListBoxSize",
3
6
  "GetWrappedOptionFromListBoxAsText", "GetTextFromListOfWebElements", "GetCssValue", "GetScreenshotAs", "GetFirstSelectedOption", "GetText", "GetOptions", "GetAllSelectedOptions", "GetSize", "GetWrappedElement", "GetRect", "GetLocation",
4
7
  "GetXLocationOfWebElement", "GetYLocationOfWebElement", "GetVideoMediaSource", "GetListOfElementsFromLocatorTypeLocatorValue", "GetVideoCurrentSeekTime", "GetVideoMediaLength", "GetVideoDefaultPlaybackRate", "GetVideoHeight", "GetAudioCurrentPlaybackRate",
@@ -23,8 +26,8 @@ Select the perfect matching NLP name from the list that best fits the step's int
23
26
  {
24
27
  "attribute_value": "Fire-Flink-x",
25
28
  "nlpName": "x",
26
- "input_text":"x"
27
- "element_type": "x"
29
+ "input_text":"x",
30
+ "elementType": "x"
28
31
  }
29
32
  Rules:
30
33
  - nlpName must be exactly one from the provided list.
@@ -46,7 +49,7 @@ and also If a step is about getting value from element or some kind of locator t
46
49
  - If no explicit option is mentioned in the step, map it to the most relevant non-option getting NLP based on the intent of the step.
47
50
  - Extract input_text from the step that is which is being getting in the step, if you can't find any input text in the step, return keyword as input_text.
48
51
  - Use the closest semantic match for the step; return attribute_value as Fire-Flink-0, only if nothing is found.and never return Fire-Flink-x.
49
- - Based on step give most relevant type of element. use this list to choose element_type: ${elementType} and Never change syntax of element_type, follow the syntax of element_type in list.if element_type is not there in list return 'link'.
52
+ - 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'.
50
53
  - **Respond with valid JSON only. don't return any other text* or or don't return response in list format*.
51
54
  `;
52
55
  return prompt;
@@ -1,4 +1,7 @@
1
- export async function getActionExtractorPromptMob({ extractedDomJson, priorAndNextSteps, }) {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getActionExtractorPromptMob = getActionExtractorPromptMob;
4
+ async function getActionExtractorPromptMob({ extractedDomJson, priorAndNextSteps, }) {
2
5
  const nlpList = `"MOB_GetDeviceLocation","MOB_GetBatteryPercentage","MOB_GetLongitude","MOB_GetAltitude","MOB_GetLatitude",
3
6
  "MOB_GetCurrentDeviceDate","MOB_GetMinuteFromCurrentDeviceTime","MOB_GetCurrentAppPackage","MOB_GetAllContexts",
4
7
  "MOB_GetHourFromCurrentDeviceTime","MOB_GetSecondFromCurrentDeviceTime","MOB_GetSupportedPerformanceDataTypes",
@@ -1,4 +1,7 @@
1
- export async function keywordExtractorMobile({ priorAndNextSteps }) {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.keywordExtractorMobile = keywordExtractorMobile;
4
+ async function keywordExtractorMobile({ priorAndNextSteps }) {
2
5
  const allowedActions = ["openApp", "tap", "enter", "wait", "verify", "scroll", "get", "close", "combined"];
3
6
  const prompt = `
4
7
  You are an expert in mobile app testing.
@@ -1,4 +1,8 @@
1
- export async function buildStepExtractionPrompt() {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.buildStepExtractionPrompt = buildStepExtractionPrompt;
4
+ exports.androidbuildStepExtractionPrompt = androidbuildStepExtractionPrompt;
5
+ async function buildStepExtractionPrompt() {
2
6
  const prompt = `
3
7
  You are a precise assistant.
4
8
  Extract Steps from the following user story for web automation.
@@ -21,7 +25,7 @@ Respond strictly in valid JSON using the following structure:
21
25
  `;
22
26
  return prompt;
23
27
  }
24
- export async function androidbuildStepExtractionPrompt() {
28
+ async function androidbuildStepExtractionPrompt() {
25
29
  const prompt = `
26
30
  You are a precise assistant.
27
31
  Extract **step data** from the following mobile {user_story_raw}.
@@ -1,12 +1,16 @@
1
- export async function verifyActionExtractorPrompt({ extractedDomJson, priorAndNextSteps, }) {
2
- const nlpList = `VerifyElementIsDisabled,VerifyElementIsEnabled,VerifyElementIsSelected,VerifyIfOptionWithIndexIsSelectedInListBox,VerifyWidthOfElement,VerifyBrowserWindowXLocation,
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.verifyActionExtractorPrompt = verifyActionExtractorPrompt;
4
+ async function verifyActionExtractorPrompt({ extractedDomJson, priorAndNextSteps, }) {
5
+ const nlpList = `VerifyElementIsDisabled,VerifyElementIsEnabled,VerifyElementIsSelected,VerifyIfOptionWithIndexIsDeselectedInElement,
6
+ VerifyIfOptionWithIndexIsSelectedInListBox,VerifyWidthOfElement,VerifyBrowserWindowXLocation,
3
7
  VerifyIfCookieNameIsDeleted,VerifyBrowserWindowWidth,VerifyValueOfElementIsCleared,
4
8
  VerifyTagName,VerifyIfCookieNameIsAdded,VerifyLinkNavigatesToTitle,VerifyXLocationOfElement,
5
9
  VerifyAllOptionsAreDeselected,VerifyBrowserHtmlCodeContainsString,VerifyBrowserWindowYLocation,
6
10
  VerifyNumberOfElementsByTagName,VerifyListBoxOptionsAreSorted,VerifyNavigateURL,
7
11
  VerifyHeightOfWebElement,VerifyValueOfElementContainsString,VerifyBrowserWindowHeight,VerifyIfLinksAreBroken,
8
12
  VerifyIfLinkIsBroken,VerifyValueOfElementIsString,VerifyYLocationOfElement,
9
- VerifyNumberOfElementsByXpath,VerifyIfOptionWithIndexIsDeselectedInElement,VerifyAttributeValue,
13
+ VerifyNumberOfElementsByXpath,VerifyAttributeValue,
10
14
  VerifyElementIsDisplayed,VerifyAllOptionsAreSelected,VerifyIfOptionWithValueIsDeselected,
11
15
  VerifyBrowserWindowTitleContainsString,VerifyBrowserWindowTitleIsString,
12
16
  VerifyTitleOfCurrentPage,VerifyPartialTitleOfCurrentPage,VerifyElementIsNotDisplayed,
@@ -36,6 +40,7 @@ Select the perfect matching NLP name from the list that best fits the step's int
36
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.**
37
41
  step may give any way,you need to get most matching and most related nlp name from the list that relates to step.
38
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.
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.
39
44
  example: verify if email element is present
40
45
  nlp name should be VerifyElementIsDisplayed
41
46
 
@@ -1,4 +1,7 @@
1
- export async function verifyActionExtractorPromptMob({ extractedDomJson, priorAndNextSteps, }) {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.verifyActionExtractorPromptMob = verifyActionExtractorPromptMob;
4
+ async function verifyActionExtractorPromptMob({ extractedDomJson, priorAndNextSteps, }) {
2
5
  const nlpList = ` "MOB_VerifyElementIsDisplayed,MOB_VerifyElementIsDisabled,MOB_VerifyElementIsEnabled,MOB_VerifyElementIsSelected,MOB_VerifyText,MOB_VerifyAttributeValue,MOB_VerifyPartialAttributeValue,"
3
6
  "MOB_VerifyElementIsDisplayedInSpecifiedTime,MOB_VerifyElementIsEnabledInSpecifiedTime,"
4
7
  "MOB_VerifyBatteryLevel,MOB_VerifyPartialText,MOB_VerifyElementIsClickable,"
@@ -1,4 +1,7 @@
1
- export async function visionPrompt({ priorAndNextSteps }) {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.visionPrompt = visionPrompt;
4
+ async function visionPrompt({ priorAndNextSteps }) {
2
5
  const customPromptText = `
3
6
  You are a precise automation assistant.
4
7
  Context: ${priorAndNextSteps}
@@ -6,6 +9,7 @@ Context: ${priorAndNextSteps}
6
9
  - **If u can't find the element and also If there is no element with number, return Fire-Flink-0. dont return any other elements index.**
7
10
  - Using the provided annotated screenshot and Step, identify the correct element index from the image.
8
11
  - Match the index to the text or action described in Step as accurately as possible.
12
+ - Allow partial and case-insensitive matching. If a clear match exists, return its index.
9
13
  - Return only the Fire-Flink-x for the target element .
10
14
  - **Never return Fire-Flink-1 only return Fire-Flink-0.**
11
15
  - Do not provide any additional text or explanation. The output must be strictly Fire-Flink-x.
@@ -1,4 +1,7 @@
1
- export async function visionPromptMobile({ priorAndNextSteps }) {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.visionPromptMobile = visionPromptMobile;
4
+ async function visionPromptMobile({ priorAndNextSteps }) {
2
5
  const customPromptText = `
3
6
  You are a precise mobile automation assistant.
4
7
  - You are given an image containing multiple elements outlined with bounding boxes.Each bounding box has a small black index number label drawn above it (like 1, 2, 3...).
@@ -1,4 +1,7 @@
1
- export async function waitActionExtractorPrompt({ extractedDomJson, priorAndNextSteps, }) {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.waitActionExtractorPrompt = waitActionExtractorPrompt;
4
+ async function waitActionExtractorPrompt({ extractedDomJson, priorAndNextSteps, }) {
2
5
  const nlpList = `
3
6
  "WaitTillUlrOfPageContainsString",
4
7
  "WaitTillTitleOfPageIsString",
@@ -1,4 +1,7 @@
1
- export async function waitActionExtractorPromptMob({ extractedDomJson, priorAndNextSteps, }) {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.waitActionExtractorPromptMob = waitActionExtractorPromptMob;
4
+ async function waitActionExtractorPromptMob({ extractedDomJson, priorAndNextSteps, }) {
2
5
  const nlpList = `"MOB_WaitTillPresenceOfAllElements","MOB_WaitTillPresenceOfElement","MOB_WaitTillElementIsSelected","MOB_WaitTillElementHasText","MOB_WaitTillElementIsEnabled",
3
6
  "MOB_WaitTillElementIsVisible","MOB_WaitTillElementContainsText","MOB_WaitTillAttributeOfElementContainsString","MOB_WaitTillAllElementsAreInvisible",
4
7
  "MOB_WaitTillElementIsInvisible","MOB_WaitTillElementIsClickable","MOB_WaitTillAttributeOfElementIsString","MOB_WaitTillPresenceOfAllElements",
@@ -1,18 +1,21 @@
1
- import { PromptType } from "../../../core/types/promptType.js";
2
- import { formatImageBase64 } from "../../../utils/helpers/imageUtils.js";
3
- export const userInputFormatters = {
4
- [PromptType.USER_STORY_TO_LIST]: (userInput) => `Convert the following user story into steps:\n\n${JSON.stringify(userInput.userStory, null, 2)}`,
5
- [PromptType.KEYWORD_EXTRACTOR]: (userInput) => `Extract keywords from the following input:\n\n${JSON.stringify(userInput.currentStep, null, 2)}`,
6
- [PromptType.ERROR_DESCRIPTION]: (error) => `Analyze the following error context:\n\n${JSON.stringify(error.error, null, 2)}`,
7
- [PromptType.FF_INSPECTOR]: (userInput) => `Inspect the DOM for the following action context:\n\n${JSON.stringify(userInput.currentStep, null, 2)}`,
8
- [PromptType.VERIFY_PROMPT]: (userInput) => `Inspect the DOM for the following verify context:\n\n${JSON.stringify(userInput.currentStep, null, 2)}`,
9
- [PromptType.GET_PROMPT]: (userInput) => `Inspect the DOM for the following get context:\n\n${JSON.stringify(userInput.currentStep, null, 2)}`,
10
- [PromptType.COMBINED_ACTION_EXTRACTOR_PROMPT]: (userInput) => `Inspect the DOM for the following wait context:\n\n${JSON.stringify(userInput.currentStep, null, 2)}`,
11
- [PromptType.WAIT_ACTION_EXTRACTOR_PROMPT]: (userInput) => `Inspect the DOM for the following wait context:\n\n${JSON.stringify(userInput.currentStep, null, 2)}`,
12
- [PromptType.VISION_PROMPT]: (userInput) => {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.userInputFormatters = void 0;
4
+ const promptType_js_1 = require("../../../core/types/promptType.js");
5
+ const imageUtils_js_1 = require("../../../utils/helpers/imageUtils.js");
6
+ exports.userInputFormatters = {
7
+ [promptType_js_1.PromptType.USER_STORY_TO_LIST]: (userInput) => `Convert the following user story into steps:\n\n${JSON.stringify(userInput.userStory, null, 2)}`,
8
+ [promptType_js_1.PromptType.KEYWORD_EXTRACTOR]: (userInput) => `Extract keywords from the following input:\n\n${JSON.stringify(userInput.currentStep, null, 2)}`,
9
+ [promptType_js_1.PromptType.ERROR_DESCRIPTION]: (error) => `Analyze the following error context:\n\n${JSON.stringify(error.error, null, 2)}`,
10
+ [promptType_js_1.PromptType.FF_INSPECTOR]: (userInput) => `Inspect the DOM for the following action context:\n\n${JSON.stringify(userInput.currentStep, null, 2)}`,
11
+ [promptType_js_1.PromptType.VERIFY_PROMPT]: (userInput) => `Inspect the DOM for the following verify context:\n\n${JSON.stringify(userInput.currentStep, null, 2)}`,
12
+ [promptType_js_1.PromptType.GET_PROMPT]: (userInput) => `Inspect the DOM for the following get context:\n\n${JSON.stringify(userInput.currentStep, null, 2)}`,
13
+ [promptType_js_1.PromptType.COMBINED_ACTION_EXTRACTOR_PROMPT]: (userInput) => `Inspect the DOM for the following wait context:\n\n${JSON.stringify(userInput.currentStep, null, 2)}`,
14
+ [promptType_js_1.PromptType.WAIT_ACTION_EXTRACTOR_PROMPT]: (userInput) => `Inspect the DOM for the following wait context:\n\n${JSON.stringify(userInput.currentStep, null, 2)}`,
15
+ [promptType_js_1.PromptType.VISION_PROMPT]: (userInput) => {
13
16
  let imageBase64 = null;
14
17
  if (userInput.annotatedScreenshot) {
15
- imageBase64 = formatImageBase64(userInput.annotatedScreenshot);
18
+ imageBase64 = (0, imageUtils_js_1.formatImageBase64)(userInput.annotatedScreenshot);
16
19
  }
17
20
  if (!imageBase64) {
18
21
  throw new Error("Vision image is missing. No annotatedScreenshot provided.");
@@ -224,7 +224,7 @@ export declare class ActionExecutor implements IActionExecutor {
224
224
  VerifyBrowserWindowTitleContainsString(value: string): Promise<void>;
225
225
  VerifyBrowserWindowUrlIsString(value: string): Promise<void>;
226
226
  VerifyBrowserWindowUrlContainsExpectedUrl(value: string): Promise<void>;
227
- VerifyCheckBoxIsNotSelected(pageDOM: string, selector: string, fireflinkIndex: string, elementName: string, elementType: string): Promise<void>;
227
+ VerifyCheckBoxIsNotSelected(pageDOM: string, selector: string, value: string, fireflinkIndex: string, elementName: string, elementType: string): Promise<void>;
228
228
  VerifyCheckBoxIsSelected(pageDOM: string, selector: string, fireflinkIndex: string, elementName: string, elementType: string): Promise<void>;
229
229
  VerifyBrowserWindowTitleIsString(value: string): Promise<void>;
230
230
  VerifyIfBrowserWindowIsClosed(): Promise<void>;