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,8 +1,14 @@
1
- import { DOMParser } from "@xmldom/xmldom";
2
- import xpath from "xpath";
3
- export function getFFIndexAndXPath(annotatedDom, fireflinkIndex) {
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.getFFIndexAndXPath = getFFIndexAndXPath;
7
+ const xmldom_1 = require("@xmldom/xmldom");
8
+ const xpath_1 = __importDefault(require("xpath"));
9
+ function getFFIndexAndXPath(annotatedDom, fireflinkIndex) {
4
10
  try {
5
- const parser = new DOMParser();
11
+ const parser = new xmldom_1.DOMParser();
6
12
  const xmlDoc = parser.parseFromString(annotatedDom, "text/xml");
7
13
  let xpathQuery = "";
8
14
  let isBounds = false;
@@ -14,7 +20,7 @@ export function getFFIndexAndXPath(annotatedDom, fireflinkIndex) {
14
20
  else {
15
21
  xpathQuery = `//*[@FF-inspecter='${fireflinkIndex}']`;
16
22
  }
17
- const nodes = xpath.select(xpathQuery, xmlDoc);
23
+ const nodes = xpath_1.default.select(xpathQuery, xmlDoc);
18
24
  const element = nodes.length ? nodes[0] : null;
19
25
  if (!element) {
20
26
  return { xpathPath: "" };
@@ -1,9 +1,12 @@
1
- import { switchToIframeByMeta } from "./switchToIframeByMeta.js";
2
- export const findElementUsingFF = async (args) => {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.findElementUsingFF = void 0;
4
+ const switchToIframeByMeta_js_1 = require("./switchToIframeByMeta.js");
5
+ const findElementUsingFF = async (args) => {
3
6
  await args.driver.switchToFrame(null);
4
7
  const usedElementNames = [];
5
8
  for (const frameMeta of args.frames) {
6
- const xpathUsed = await switchToIframeByMeta(args.driver, frameMeta);
9
+ const xpathUsed = await (0, switchToIframeByMeta_js_1.switchToIframeByMeta)(args.driver, frameMeta);
7
10
  if (xpathUsed) {
8
11
  let finalElementName = args.elementName;
9
12
  if (finalElementName) {
@@ -30,3 +33,4 @@ export const findElementUsingFF = async (args) => {
30
33
  }
31
34
  }
32
35
  };
36
+ exports.findElementUsingFF = findElementUsingFF;
@@ -1 +1,2 @@
1
- export {};
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,4 +1,7 @@
1
- export async function switchToIframeByMeta(driver, frameMeta) {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.switchToIframeByMeta = switchToIframeByMeta;
4
+ async function switchToIframeByMeta(driver, frameMeta) {
2
5
  const selectors = [
3
6
  frameMeta.id && `//*[@id='${frameMeta.id}']`,
4
7
  frameMeta.name && `//*[@name='${frameMeta.name}']`,
@@ -1,4 +1,7 @@
1
- export const Find_element_by_ff_js_script = `
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Find_element_by_ff_js_script = void 0;
4
+ exports.Find_element_by_ff_js_script = `
2
5
  const target = arguments[0];
3
6
  const callback = arguments[arguments.length - 1];
4
7
 
@@ -1,4 +1,7 @@
1
- export const SHADOW_DOM_CLICK_JS = `
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SHADOW_DOM_VERIFY_PARTIAL_TEXT_JS = exports.SHADOW_DOM_VERIFY_TEXT_JS = exports.SHADOW_DOM_GET_TEXT_JS = exports.SHADOW_DOM_UPLOAD_JS = exports.SHADOW_DOM_ENTER_JS = exports.SHADOW_DOM_CLICK_JS = void 0;
4
+ exports.SHADOW_DOM_CLICK_JS = `
2
5
  const path = arguments[0];
3
6
 
4
7
  function resolve(path) {
@@ -33,7 +36,7 @@ if (targetNode) {
33
36
  }
34
37
  return false;
35
38
  `;
36
- export const SHADOW_DOM_ENTER_JS = `
39
+ exports.SHADOW_DOM_ENTER_JS = `
37
40
  const path = arguments[0];
38
41
  const value = arguments[1];
39
42
 
@@ -73,7 +76,7 @@ if (el) {
73
76
  }
74
77
  return false;
75
78
  `;
76
- export const SHADOW_DOM_UPLOAD_JS = `
79
+ exports.SHADOW_DOM_UPLOAD_JS = `
77
80
  const path = arguments[0];
78
81
 
79
82
  function resolve(path) {
@@ -103,7 +106,7 @@ function resolve(path) {
103
106
 
104
107
  return resolve(path);
105
108
  `;
106
- export const SHADOW_DOM_GET_TEXT_JS = `
109
+ exports.SHADOW_DOM_GET_TEXT_JS = `
107
110
  const path = arguments[0];
108
111
 
109
112
  function resolve(path) {
@@ -136,7 +139,7 @@ function resolve(path) {
136
139
  const el = resolve(path);
137
140
  return el ? el.innerText.trim() : null;
138
141
  `;
139
- export const SHADOW_DOM_VERIFY_TEXT_JS = `
142
+ exports.SHADOW_DOM_VERIFY_TEXT_JS = `
140
143
  const path = arguments[0];
141
144
  const text = arguments[1];
142
145
 
@@ -170,7 +173,7 @@ function resolve(path) {
170
173
  const el = resolve(path);
171
174
  return el ? el.innerText.trim() === text : false;
172
175
  `;
173
- export const SHADOW_DOM_VERIFY_PARTIAL_TEXT_JS = `
176
+ exports.SHADOW_DOM_VERIFY_PARTIAL_TEXT_JS = `
174
177
  const path = arguments[0];
175
178
  const expected = arguments[1];
176
179
 
@@ -1,4 +1,7 @@
1
- export const TOAST_WATCHER_JS = `
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TOAST_WATCHER_JS = void 0;
4
+ exports.TOAST_WATCHER_JS = `
2
5
  (function () {
3
6
 
4
7
  // --- STOP any old watcher first ---
@@ -1,4 +1,7 @@
1
- export const JS_PRIMARY = `return (function() {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.JS_SECONDARY = exports.JS_PRIMARY = void 0;
4
+ exports.JS_PRIMARY = `return (function() {
2
5
 
3
6
  function isReallyVisible(n) {
4
7
  const r = n.getBoundingClientRect();
@@ -71,7 +74,7 @@ export const JS_PRIMARY = `return (function() {
71
74
  return out;
72
75
  })();
73
76
  `;
74
- export const JS_SECONDARY = `return (function() {
77
+ exports.JS_SECONDARY = `return (function() {
75
78
 
76
79
  function isReallyVisible(n) {
77
80
  const r = n.getBoundingClientRect();
@@ -1,24 +1,31 @@
1
- import fs from "fs/promises";
2
- import path from "path";
3
- import beautify from "js-beautify";
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.logger = void 0;
7
+ exports.initLogger = initLogger;
8
+ const promises_1 = __importDefault(require("fs/promises"));
9
+ const path_1 = __importDefault(require("path"));
10
+ const js_beautify_1 = __importDefault(require("js-beautify"));
4
11
  let sessionPath;
5
12
  let logsDir;
6
13
  let domDir;
7
14
  let screenshotsDir;
8
15
  let logFilePath;
9
- export function initLogger(basePath) {
16
+ function initLogger(basePath) {
10
17
  sessionPath = basePath;
11
- logsDir = path.resolve(sessionPath, "logs");
12
- domDir = path.resolve(sessionPath, "dom");
13
- screenshotsDir = path.resolve(sessionPath, "screenshots");
14
- logFilePath = path.join(logsDir, "ai-execution-logs.txt");
18
+ logsDir = path_1.default.resolve(sessionPath, "logs");
19
+ domDir = path_1.default.resolve(sessionPath, "dom");
20
+ screenshotsDir = path_1.default.resolve(sessionPath, "screenshots");
21
+ logFilePath = path_1.default.join(logsDir, "ai-execution-logs.txt");
15
22
  }
16
23
  async function ensureDirs() {
17
24
  if (!logsDir)
18
25
  throw new Error("Logger not initialized");
19
- await fs.mkdir(logsDir, { recursive: true });
20
- await fs.mkdir(domDir, { recursive: true });
21
- await fs.mkdir(screenshotsDir, { recursive: true });
26
+ await promises_1.default.mkdir(logsDir, { recursive: true });
27
+ await promises_1.default.mkdir(domDir, { recursive: true });
28
+ await promises_1.default.mkdir(screenshotsDir, { recursive: true });
22
29
  }
23
30
  function getISTDate() {
24
31
  return new Intl.DateTimeFormat("sv-SE", {
@@ -35,14 +42,14 @@ function getISTDate() {
35
42
  .format(new Date())
36
43
  .replace(" ", "T");
37
44
  }
38
- export const logger = {
45
+ exports.logger = {
39
46
  info: async (...args) => {
40
47
  if (!logFilePath)
41
48
  throw new Error("Logger not initialized");
42
49
  await ensureDirs();
43
50
  const formattedArgs = args.map((arg) => typeof arg === "object" ? JSON.stringify(arg, null, 2) : arg);
44
51
  const message = `[INFO] ${getISTDate()}+05:30 - ${formattedArgs.join(" ")}\n`;
45
- await fs.appendFile(logFilePath, message, "utf-8");
52
+ await promises_1.default.appendFile(logFilePath, message, "utf-8");
46
53
  },
47
54
  error: async (...args) => {
48
55
  if (!logFilePath)
@@ -65,7 +72,7 @@ export const logger = {
65
72
  return String(arg);
66
73
  });
67
74
  const message = `[ERROR] ${new Date().toISOString()} - ${formatted.join(" ")}\n`;
68
- await fs.appendFile(logFilePath, message, "utf-8");
75
+ await promises_1.default.appendFile(logFilePath, message, "utf-8");
69
76
  },
70
77
  getError: (...args) => {
71
78
  const formatted = args.map((arg) => {
@@ -99,14 +106,14 @@ export const logger = {
99
106
  }
100
107
  else {
101
108
  finalFileName = fileName ? `${fileName}.html` : `dom-${timestamp}.html`;
102
- formattedContent = beautify.html(domContent, {
109
+ formattedContent = js_beautify_1.default.html(domContent, {
103
110
  indent_size: 2,
104
111
  preserve_newlines: false,
105
112
  wrap_line_length: 120,
106
113
  });
107
114
  }
108
- const filePath = path.join(domDir, finalFileName);
109
- await fs.writeFile(filePath, formattedContent, "utf-8");
115
+ const filePath = path_1.default.join(domDir, finalFileName);
116
+ await promises_1.default.writeFile(filePath, formattedContent, "utf-8");
110
117
  },
111
118
  saveJSON: async (data, fileName) => {
112
119
  if (!domDir)
@@ -116,19 +123,19 @@ export const logger = {
116
123
  const finalFileName = fileName
117
124
  ? `${fileName}.json`
118
125
  : `data-${timestamp}.json`;
119
- const filePath = path.join(domDir, finalFileName);
126
+ const filePath = path_1.default.join(domDir, finalFileName);
120
127
  const safeData = JSON.stringify(data, (key, value) => {
121
128
  if (key === "element")
122
129
  return undefined;
123
130
  return value;
124
131
  }, 2);
125
- await fs.writeFile(filePath, safeData, "utf-8");
132
+ await promises_1.default.writeFile(filePath, safeData, "utf-8");
126
133
  },
127
134
  saveImage: async (imageBuffer, fileName) => {
128
135
  if (!screenshotsDir)
129
136
  throw new Error("Logger not initialized");
130
137
  await ensureDirs();
131
- const filePath = path.join(screenshotsDir, fileName);
132
- await fs.writeFile(filePath, imageBuffer);
138
+ const filePath = path_1.default.join(screenshotsDir, fileName);
139
+ await promises_1.default.writeFile(filePath, imageBuffer);
133
140
  },
134
141
  };
@@ -1,4 +1,7 @@
1
- export async function newTabTracker(driver, stepAction, previousHandles, scriptAppender) {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.newTabTracker = newTabTracker;
4
+ async function newTabTracker(driver, stepAction, previousHandles, scriptAppender) {
2
5
  if (stepAction === "switch")
3
6
  return;
4
7
  const currentHandle = await driver.getWindowHandle();
@@ -1,4 +1,4 @@
1
- export declare function findElementInDom(driver: WebdriverIO.Browser, text: string): Promise<{
1
+ export declare function findElementInDom(driver: WebdriverIO.Browser, text: string, stepCount: number, rawdom: string): Promise<{
2
2
  element: import("webdriverio").ChainablePromiseElement;
3
3
  xpath: string;
4
4
  annotatedDom: string;
@@ -1,31 +1,58 @@
1
- import { getAnnotatedDOMForMobile } from "../DomExtraction/jsForAttributeInjection.js";
2
- import { DomSimplifier } from "../../domAnalysis/simplifyAndFlatten.js";
3
- import { getFFIndexAndXPath } from "../helpers/xpathcreation.js";
4
- export async function findElementInDom(driver, text) {
5
- const simplifier = new DomSimplifier();
6
- const keywords = text
7
- .toLowerCase()
8
- .split(/\s+/)
9
- .filter(Boolean);
10
- const { dom: annotatedDom } = await getAnnotatedDOMForMobile(driver);
11
- const { flatNodes } = simplifier.simplifyMobile(annotatedDom);
12
- const sequenceMatch = (value, words) => {
13
- const v = value.toLowerCase();
14
- const pattern = new RegExp("\\b" + words.join("\\s*") + "\\b", "i");
15
- return pattern.test(v);
16
- };
17
- for (const nodeObj of flatNodes) {
18
- const node = nodeObj.node;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.findElementInDom = findElementInDom;
4
+ const jsForAttributeInjection_js_1 = require("../DomExtraction/jsForAttributeInjection.js");
5
+ const xpathcreation_js_1 = require("../helpers/xpathcreation.js");
6
+ const getRelaventElements_js_1 = require("../../domAnalysis/getRelaventElements.js");
7
+ const logData_js_1 = require("../logger/logData.js");
8
+ async function findElementInDom(driver, text, stepCount, rawdom) {
9
+ const engine = new getRelaventElements_js_1.DomProcessingEngine();
10
+ const { dom: annotatedDom } = await (0, jsForAttributeInjection_js_1.getAnnotatedDOMForMobile)(driver, rawdom);
11
+ logData_js_1.logger.saveDOM(annotatedDom, `annotated-dom-${100 + stepCount}`);
12
+ const results = engine.mobileProcess({
13
+ keywords: text,
14
+ rawDom: annotatedDom,
15
+ stepCount: 100 + stepCount
16
+ });
17
+ logData_js_1.logger.saveJSON(results, `relevant-dom-Mob-${100 + stepCount}`);
18
+ const keywords = text.toLowerCase().split(/\s+/);
19
+ function exactSequenceMatch(value, words) {
20
+ const v = (value || "").toLowerCase();
21
+ const escaped = words.map(w => w.replace(/[.*+?^${}()|[\]\\]/g, "\\$&"));
22
+ const pattern = escaped.join("\\s*");
23
+ return new RegExp(pattern).test(v);
24
+ }
25
+ function matchNode(node, words) {
19
26
  const textVal = (node["text"] || "").toLowerCase();
20
- const descVal = (node["content-desc"] || "").toLowerCase();
21
- const ridVal = (node["resource-id"] || "").toLowerCase();
22
- if (sequenceMatch(textVal, keywords) ||
23
- sequenceMatch(descVal, keywords) ||
24
- sequenceMatch(ridVal, keywords)) {
27
+ // const desc = (node.name || "").toLowerCase();
28
+ // const value = (node.value || "").toLowerCase();
29
+ const contentDesc = (node["content-desc"] ||
30
+ node.contentDesc ||
31
+ node.contentDescription ||
32
+ "").toLowerCase();
33
+ const resourceId = (node["resource-id"] ||
34
+ node.resourceId ||
35
+ node.id ||
36
+ "").toLowerCase();
37
+ logData_js_1.logger.info(`contentdesc is ${contentDesc}, Resource id is ${resourceId} the text is ${words}`);
38
+ if (exactSequenceMatch(textVal, words))
39
+ return true;
40
+ // if (exactSequenceMatch(desc, words)) return true;
41
+ // if (exactSequenceMatch(value, words)) return true;
42
+ if (exactSequenceMatch(contentDesc, words))
43
+ return true;
44
+ if (exactSequenceMatch(resourceId, words))
45
+ return true;
46
+ return false;
47
+ }
48
+ for (const group of results) {
49
+ for (const node of group) {
50
+ if (!matchNode(node, keywords))
51
+ continue;
25
52
  const ffIndex = node["FF-inspecter"];
26
53
  if (!ffIndex)
27
54
  continue;
28
- const xpath = getFFIndexAndXPath(annotatedDom, ffIndex);
55
+ const xpath = (0, xpathcreation_js_1.getFFIndexAndXPath)(annotatedDom, ffIndex);
29
56
  if (!xpath)
30
57
  continue;
31
58
  const element = await driver.$(xpath.xpathPath);
@@ -1,4 +1,7 @@
1
- export async function executeSwipeMovement(driver, direction) {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.executeSwipeMovement = executeSwipeMovement;
4
+ async function executeSwipeMovement(driver, direction) {
2
5
  if (direction === 'left' || direction === 'right') {
3
6
  const horizontalContainers = [
4
7
  '//android.widget.HorizontalScrollView',
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "ff-automationv2",
3
- "version": "2.2.23",
3
+ "version": "2.2.25",
4
4
  "private": false,
5
- "type": "module",
5
+ "type": "commonjs",
6
6
  "description": "This lib is used to automate the manual testcase",
7
7
  "main": "./dist/index.js",
8
8
  "types": "./dist/index.d.ts",
@@ -16,6 +16,9 @@
16
16
  "files": [
17
17
  "dist"
18
18
  ],
19
+ "overrides": {
20
+ "canvas": "@napi-rs/canvas"
21
+ },
19
22
  "scripts": {
20
23
  "type-check": "tsc --noEmit",
21
24
  "builds": "npm run lint && tsc",
@@ -48,24 +51,23 @@
48
51
  "jiti": "2.6.1",
49
52
  "nodemon": "3.1.11",
50
53
  "ts-node": "10.9.2",
54
+ "tsx": "^4.21.0",
51
55
  "typescript": "^5.9.3",
52
56
  "typescript-eslint": "8.56.0",
53
57
  "webdriverio": "9.26.1"
54
58
  },
55
- "peerDependencies": {
56
- "canvas": "^3.2.3"
57
- },
58
59
  "dependencies": {
60
+ "@napi-rs/canvas": "^0.1.100",
59
61
  "@xmldom/xmldom": "^0.8.11",
60
62
  "axios": "^1.13.5",
61
63
  "cheerio": "1.2.0",
62
64
  "fast-fuzzy": "^1.12.0",
63
65
  "js-beautify": "1.15.1",
66
+ "jsdom": "27.4.0",
67
+ "kafkajs": "^2.2.4",
64
68
  "openai": "6.18.0",
65
69
  "uuid": "13.0.0",
66
- "xpath": "^0.0.34",
67
70
  "webdriverio": "9.26.1",
68
- "kafkajs": "^2.2.4",
69
- "jsdom": "27.4.0"
71
+ "xpath": "^0.0.34"
70
72
  }
71
73
  }