ff-automationv2 2.2.30 → 2.2.32-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (265) hide show
  1. package/dist/ai/llmprompts/llmPromptTypes/systemPromptTypes.d.ts +3 -0
  2. package/dist/ai/llmprompts/promptRegistry.js +10 -2
  3. package/dist/ai/llmprompts/systemPrompts/actionExtractorPrompt.js +83 -27
  4. package/dist/ai/llmprompts/systemPrompts/fileVerifyActionExtractorPrompt.d.ts +2 -0
  5. package/dist/ai/llmprompts/systemPrompts/fileVerifyActionExtractorPrompt.js +35 -0
  6. package/dist/ai/llmprompts/systemPrompts/fireflinkElementIndexExtactors.js +35 -0
  7. package/dist/ai/llmprompts/systemPrompts/fireflinkElementIndexExtractor_Mob.js +5 -2
  8. package/dist/ai/llmprompts/systemPrompts/getActionExtractorPrompt.js +4 -2
  9. package/dist/ai/llmprompts/systemPrompts/getActionExtractorPromptMob.js +3 -1
  10. package/dist/ai/llmprompts/systemPrompts/inputContextPrompt.d.ts +2 -0
  11. package/dist/ai/llmprompts/systemPrompts/inputContextPrompt.js +54 -0
  12. package/dist/ai/llmprompts/systemPrompts/mobileKeywordExtractor.js +53 -8
  13. package/dist/ai/llmprompts/systemPrompts/verifyActionExtractorPrompt.js +5 -4
  14. package/dist/ai/llmprompts/systemPrompts/verifyActionExtractorPromptMob.js +1 -1
  15. package/dist/ai/llmprompts/userPrompts/userPrompt.js +2 -0
  16. package/dist/automation/actions/executor.d.ts +14 -6
  17. package/dist/automation/actions/executor.js +968 -251
  18. package/dist/automation/actions/interaction/alert/enterDataToAlert.js +3 -1
  19. package/dist/automation/actions/interaction/alert/getTextPresentOnAlertPopup.js +4 -0
  20. package/dist/automation/actions/interaction/alert/verifyAlertPopUpMessageContainsString.js +1 -1
  21. package/dist/automation/actions/interaction/alert/verifyAlertPopupIsDisplayed.js +1 -1
  22. package/dist/automation/actions/interaction/alert/verifyTextPresentOnAlertPopup.js +1 -1
  23. package/dist/automation/actions/interaction/clear/clearAndEnter.js +6 -3
  24. package/dist/automation/actions/interaction/elementlessActions/getOtp.js +25 -24
  25. package/dist/automation/actions/interaction/enterActions/EnterInputIntoElementFromClipBoardInterface_mob.js +3 -1
  26. package/dist/automation/actions/interaction/enterActions/enterInput.js +5 -2
  27. package/dist/automation/actions/interaction/enterActions/enterInputAndPress.js +5 -2
  28. package/dist/automation/actions/interaction/enterActions/enterUrl.js +5 -2
  29. package/dist/automation/actions/interaction/enterActions/enterusingJs.js +3 -1
  30. package/dist/automation/actions/interaction/enterActions/waitAndEnter.js +5 -2
  31. package/dist/automation/actions/interaction/files/VerifyPDF.d.ts +2 -0
  32. package/dist/automation/actions/interaction/files/VerifyPDF.js +171 -0
  33. package/dist/automation/actions/interaction/get/MOB_GetADBLogsForGivenAppPackage.js +4 -1
  34. package/dist/automation/actions/interaction/get/MOB_GetAllContexts.js +5 -1
  35. package/dist/automation/actions/interaction/get/MOB_GetAllWindowHandles.d.ts +1 -1
  36. package/dist/automation/actions/interaction/get/MOB_GetAllWindowHandles.js +10 -6
  37. package/dist/automation/actions/interaction/get/MOB_GetAltitude.js +5 -1
  38. package/dist/automation/actions/interaction/get/MOB_GetBatteryPercentage.js +5 -1
  39. package/dist/automation/actions/interaction/get/MOB_GetBatteryStatus.d.ts +1 -1
  40. package/dist/automation/actions/interaction/get/MOB_GetBatteryStatus.js +7 -3
  41. package/dist/automation/actions/interaction/get/MOB_GetClipBoardText.js +5 -1
  42. package/dist/automation/actions/interaction/get/MOB_GetCurrentActivity.js +5 -1
  43. package/dist/automation/actions/interaction/get/MOB_GetCurrentAppPackage.js +5 -1
  44. package/dist/automation/actions/interaction/get/MOB_GetCurrentContext.js +5 -1
  45. package/dist/automation/actions/interaction/get/MOB_GetCurrentDeviceDate.js +5 -1
  46. package/dist/automation/actions/interaction/get/MOB_GetCurrentDeviceSettings.js +5 -1
  47. package/dist/automation/actions/interaction/get/MOB_GetCurrentDeviceStatus.js +5 -1
  48. package/dist/automation/actions/interaction/get/MOB_GetCurrentDeviceSystemBars.js +5 -2
  49. package/dist/automation/actions/interaction/get/MOB_GetCurrentDeviceTime.js +5 -1
  50. package/dist/automation/actions/interaction/get/MOB_GetCurrentOrientation.js +5 -1
  51. package/dist/automation/actions/interaction/get/MOB_GetCurrentSessionId.js +5 -1
  52. package/dist/automation/actions/interaction/get/MOB_GetDeviceLocation.js +5 -1
  53. package/dist/automation/actions/interaction/get/MOB_GetDeviceName.js +5 -1
  54. package/dist/automation/actions/interaction/get/MOB_GetDeviceOsVersion.js +5 -1
  55. package/dist/automation/actions/interaction/get/MOB_GetDeviceUdid.js +5 -1
  56. package/dist/automation/actions/interaction/get/MOB_GetHeightOfElement.js +5 -1
  57. package/dist/automation/actions/interaction/get/MOB_GetHeightOfScreen.js +4 -0
  58. package/dist/automation/actions/interaction/get/MOB_GetHourFromCurrentDeviceTime.js +5 -1
  59. package/dist/automation/actions/interaction/get/MOB_GetLatitude.js +5 -1
  60. package/dist/automation/actions/interaction/get/MOB_GetLongitude.js +5 -1
  61. package/dist/automation/actions/interaction/get/MOB_GetMinuteFromCurrentDeviceTime.js +5 -1
  62. package/dist/automation/actions/interaction/get/MOB_GetSecondFromCurrentDeviceTime.js +5 -1
  63. package/dist/automation/actions/interaction/get/MOB_GetSizeOfScreen.js +5 -1
  64. package/dist/automation/actions/interaction/get/MOB_GetSupportedPerformanceDataTypes.js +5 -1
  65. package/dist/automation/actions/interaction/get/MOB_GetTextFromElementAndSetToClipBoard.js +5 -1
  66. package/dist/automation/actions/interaction/get/MOB_GetWidthOfElement.js +5 -1
  67. package/dist/automation/actions/interaction/get/MOB_GetWidthOfScreen.js +5 -1
  68. package/dist/automation/actions/interaction/get/browserWindowGetPosition.js +5 -0
  69. package/dist/automation/actions/interaction/get/getAllBrokenImages.js +9 -0
  70. package/dist/automation/actions/interaction/get/getAllBrokenLinkCount.js +9 -0
  71. package/dist/automation/actions/interaction/get/getAllBrokenLinks.js +10 -1
  72. package/dist/automation/actions/interaction/get/getAllConsoleErrors.js +11 -0
  73. package/dist/automation/actions/interaction/get/getAllConsoleInformation.js +12 -1
  74. package/dist/automation/actions/interaction/get/getAllConsoleLogs.js +11 -1
  75. package/dist/automation/actions/interaction/get/getAllConsoleWarnings.js +12 -1
  76. package/dist/automation/actions/interaction/get/getAllCookieNames.js +6 -1
  77. package/dist/automation/actions/interaction/get/getAllCookieValues.js +6 -1
  78. package/dist/automation/actions/interaction/get/getAllSelectedOptions.js +8 -1
  79. package/dist/automation/actions/interaction/get/getAllTheOptionsFromListBoxAsText.js +4 -1
  80. package/dist/automation/actions/interaction/get/getAllTheOptionsFromListBoxAsTextInSortedOrder.js +4 -1
  81. package/dist/automation/actions/interaction/get/getAllTheSelectedOptionsFromListBoxAsText.js +4 -1
  82. package/dist/automation/actions/interaction/get/getAllWindowHandles.js +5 -1
  83. package/dist/automation/actions/interaction/get/getAttribute.js +19 -14
  84. package/dist/automation/actions/interaction/get/getAudioCurrentPlaybackRate.js +4 -1
  85. package/dist/automation/actions/interaction/get/getAudioCurrentSeekTime.js +4 -1
  86. package/dist/automation/actions/interaction/get/getAudioCurrentVolume.js +4 -1
  87. package/dist/automation/actions/interaction/get/getAudioDecodedByte.js +4 -1
  88. package/dist/automation/actions/interaction/get/getAudioDefaultPlaybackRate.js +4 -1
  89. package/dist/automation/actions/interaction/get/getAudioMediaLength.js +4 -1
  90. package/dist/automation/actions/interaction/get/getAudioMediaSource.js +4 -1
  91. package/dist/automation/actions/interaction/get/getBestPracticesScore.js +11 -3
  92. package/dist/automation/actions/interaction/get/getBrowserCount.js +5 -0
  93. package/dist/automation/actions/interaction/get/getBrowserVersion.js +5 -0
  94. package/dist/automation/actions/interaction/get/getCapabilityNames.js +5 -0
  95. package/dist/automation/actions/interaction/get/getClipBoardText.js +13 -0
  96. package/dist/automation/actions/interaction/get/getCollectiveApiResponseTime.js +4 -1
  97. package/dist/automation/actions/interaction/get/getCollectiveApiStatusCode.js +4 -1
  98. package/dist/automation/actions/interaction/get/getCssValue.js +5 -1
  99. package/dist/automation/actions/interaction/get/getCurrentDayOfTheWeek.js +4 -0
  100. package/dist/automation/actions/interaction/get/getCurrentSecondsFromCurrentSystemTime.js +5 -1
  101. package/dist/automation/actions/interaction/get/getCurrentSystemDate.js +4 -0
  102. package/dist/automation/actions/interaction/get/getCurrentSystemDay.js +5 -1
  103. package/dist/automation/actions/interaction/get/getCurrentSystemMonth.js +5 -1
  104. package/dist/automation/actions/interaction/get/getCurrentSystemTime.js +5 -1
  105. package/dist/automation/actions/interaction/get/getCurrentSystemYear.js +5 -1
  106. package/dist/automation/actions/interaction/get/getCurrentWindowHandle.js +13 -26
  107. package/dist/automation/actions/interaction/get/getDataFromApiRequestHeaderForJsonPath.js +5 -4
  108. package/dist/automation/actions/interaction/get/getDataFromApiResponseForJsonPath.js +5 -4
  109. package/dist/automation/actions/interaction/get/getDateWithGivenFormat.js +13 -16
  110. package/dist/automation/actions/interaction/get/getDriverInstance.js +13 -28
  111. package/dist/automation/actions/interaction/get/getFirstContentfulPaint.js +8 -1
  112. package/dist/automation/actions/interaction/get/getFirstSelectedOption.js +5 -1
  113. package/dist/automation/actions/interaction/get/getFullPaintTime.js +8 -1
  114. package/dist/automation/actions/interaction/get/getHTMLCodeOfPage.js +4 -0
  115. package/dist/automation/actions/interaction/get/getHeightOfBrowserWindow.js +5 -0
  116. package/dist/automation/actions/interaction/get/getHeightOfWebElement.js +4 -1
  117. package/dist/automation/actions/interaction/get/getHourFromCurrentSystemTime.js +4 -0
  118. package/dist/automation/actions/interaction/get/getImplicitTimeOut.js +15 -28
  119. package/dist/automation/actions/interaction/get/getLargestContentfulPaint.js +7 -0
  120. package/dist/automation/actions/interaction/get/getListBoxSize.d.ts +1 -1
  121. package/dist/automation/actions/interaction/get/getListBoxSize.js +4 -2
  122. package/dist/automation/actions/interaction/get/getListOfElementsFromLocatorTypeLocatorValue.js +7 -2
  123. package/dist/automation/actions/interaction/get/getLocation.js +14 -8
  124. package/dist/automation/actions/interaction/get/getMinuteFromCurrentSystemTime.js +4 -0
  125. package/dist/automation/actions/interaction/get/getNetworkRouteTime.js +7 -0
  126. package/dist/automation/actions/interaction/get/getNumberOfBrokenImages.js +7 -0
  127. package/dist/automation/actions/interaction/get/getNumberOfLinksPresentInCurrentPage.js +5 -0
  128. package/dist/automation/actions/interaction/get/getNumberOfWorkingLinksFromCurrentPage.js +9 -0
  129. package/dist/automation/actions/interaction/get/getOptions.js +4 -1
  130. package/dist/automation/actions/interaction/get/getPageTitle.js +5 -1
  131. package/dist/automation/actions/interaction/get/getPerformanceMetrics.js +12 -1
  132. package/dist/automation/actions/interaction/get/getPwaScore.js +11 -3
  133. package/dist/automation/actions/interaction/get/getRect.js +9 -2
  134. package/dist/automation/actions/interaction/get/getScreenshot.js +13 -28
  135. package/dist/automation/actions/interaction/get/getScreenshotAs.js +14 -44
  136. package/dist/automation/actions/interaction/get/getSeoScore.js +15 -3
  137. package/dist/automation/actions/interaction/get/getSingleApiRequestPayload.js +5 -3
  138. package/dist/automation/actions/interaction/get/getSingleApiResponse.js +9 -8
  139. package/dist/automation/actions/interaction/get/getSingleApiResponseTime.js +9 -9
  140. package/dist/automation/actions/interaction/get/getSingleApiStatusCode.d.ts +1 -1
  141. package/dist/automation/actions/interaction/get/getSingleApiStatusCode.js +10 -17
  142. package/dist/automation/actions/interaction/get/getSize.js +7 -2
  143. package/dist/automation/actions/interaction/get/getSizeOfBrowserWindow.js +5 -4
  144. package/dist/automation/actions/interaction/get/getStringDataFromLocalFile.js +10 -7
  145. package/dist/automation/actions/interaction/get/getSystemProperty.js +6 -4
  146. package/dist/automation/actions/interaction/get/getTagName.js +9 -2
  147. package/dist/automation/actions/interaction/get/getText.js +7 -2
  148. package/dist/automation/actions/interaction/get/getTheFirstSelectedOptionFromListBoxAsText.js +5 -1
  149. package/dist/automation/actions/interaction/get/getTotalNumberOfCookies.js +6 -1
  150. package/dist/automation/actions/interaction/get/getTunnelIdentifier.js +5 -8
  151. package/dist/automation/actions/interaction/get/getURLPresentInAddressBar.js +5 -1
  152. package/dist/automation/actions/interaction/get/getUserHomeDirectory.js +9 -1
  153. package/dist/automation/actions/interaction/get/getValueByCookieName.js +7 -4
  154. package/dist/automation/actions/interaction/get/getValueFromLocalStorage.js +6 -4
  155. package/dist/automation/actions/interaction/get/getValueOfSystemVariable.js +6 -4
  156. package/dist/automation/actions/interaction/get/getVideoCurrentPlaybackRate.js +4 -1
  157. package/dist/automation/actions/interaction/get/getVideoCurrentSeekTime.js +4 -1
  158. package/dist/automation/actions/interaction/get/getVideoCurrentVolume.js +4 -1
  159. package/dist/automation/actions/interaction/get/getVideoDecodedByte.js +4 -1
  160. package/dist/automation/actions/interaction/get/getVideoDefaultPlaybackRate.js +4 -1
  161. package/dist/automation/actions/interaction/get/getVideoMediaLength.js +4 -1
  162. package/dist/automation/actions/interaction/get/getVideoMediaSource.js +5 -1
  163. package/dist/automation/actions/interaction/get/getWidthOfBrowser.js +6 -1
  164. package/dist/automation/actions/interaction/get/getWidthOfWebElement.js +4 -1
  165. package/dist/automation/actions/interaction/get/getWorkingLinksFromCurrentPage.js +10 -1
  166. package/dist/automation/actions/interaction/get/getWrappedElement.js +5 -1
  167. package/dist/automation/actions/interaction/get/getWrappedOptionFromListBoxAsText.d.ts +1 -1
  168. package/dist/automation/actions/interaction/get/getWrappedOptionFromListBoxAsText.js +4 -2
  169. package/dist/automation/actions/interaction/get/getXLocationOfBrowserWindow.js +4 -3
  170. package/dist/automation/actions/interaction/get/getXLocationOfWebElement.js +7 -2
  171. package/dist/automation/actions/interaction/get/getYLocationOfBrowserWindow.js +6 -1
  172. package/dist/automation/actions/interaction/get/getYLocationOfWebElement.js +7 -2
  173. package/dist/automation/actions/interaction/shadowDom/shadowDomEnter.js +2 -0
  174. package/dist/automation/actions/interaction/shadowDom/shadowDomGetText.js +5 -2
  175. package/dist/automation/actions/interaction/verify/MOB_VerifyBatteryLevel.js +1 -1
  176. package/dist/automation/actions/interaction/verify/VerifyAttributeValue.js +2 -2
  177. package/dist/automation/actions/interaction/verify/VerifyBrowserHtmlCodeContainsString.js +1 -1
  178. package/dist/automation/actions/interaction/verify/VerifyBrowserWindowHeight.js +1 -1
  179. package/dist/automation/actions/interaction/verify/VerifyBrowserWindowTitleContainsString.js +1 -1
  180. package/dist/automation/actions/interaction/verify/VerifyBrowserWindowTitleIsString.js +1 -1
  181. package/dist/automation/actions/interaction/verify/VerifyBrowserWindowUrlContainsExpectedUrl.js +1 -1
  182. package/dist/automation/actions/interaction/verify/VerifyBrowserWindowUrlIsString.js +1 -1
  183. package/dist/automation/actions/interaction/verify/VerifyBrowserWindowWidth.js +1 -1
  184. package/dist/automation/actions/interaction/verify/VerifyBrowserWindowXLocation.js +1 -1
  185. package/dist/automation/actions/interaction/verify/VerifyBrowserWindowYLocation.js +1 -1
  186. package/dist/automation/actions/interaction/verify/VerifyCssAttributeValue.js +1 -1
  187. package/dist/automation/actions/interaction/verify/VerifyElementNotContainsText.js +2 -2
  188. package/dist/automation/actions/interaction/verify/VerifyHeightOfWebElement.js +2 -2
  189. package/dist/automation/actions/interaction/verify/VerifyHexCodeForGivenXYCoordinates.js +1 -1
  190. package/dist/automation/actions/interaction/verify/VerifyIfAllCookiesAreDeleted.js +1 -1
  191. package/dist/automation/actions/interaction/verify/VerifyIfCookieNameIsAdded.js +1 -1
  192. package/dist/automation/actions/interaction/verify/VerifyIfCookieNameIsDeleted.js +1 -1
  193. package/dist/automation/actions/interaction/verify/VerifyIfCookieObjectIsPresent.js +1 -1
  194. package/dist/automation/actions/interaction/verify/VerifyIfGivenOptionIsDuplicate.js +1 -1
  195. package/dist/automation/actions/interaction/verify/VerifyIfImageIsBroken.js +1 -1
  196. package/dist/automation/actions/interaction/verify/VerifyIfLinkIsBroken.js +1 -1
  197. package/dist/automation/actions/interaction/verify/VerifyIfLinkIsWorking.js +1 -1
  198. package/dist/automation/actions/interaction/verify/VerifyIfLinksAreBroken.js +1 -1
  199. package/dist/automation/actions/interaction/verify/VerifyIfLinksAreWorking.js +1 -1
  200. package/dist/automation/actions/interaction/verify/VerifyIfOptionWithTextIsDeselected.js +1 -1
  201. package/dist/automation/actions/interaction/verify/VerifyIfOptionWithValueIsDeselected.js +1 -1
  202. package/dist/automation/actions/interaction/verify/VerifyIfOptionWithValueIsSelected.js +1 -1
  203. package/dist/automation/actions/interaction/verify/VerifyIfOptionWithVisibleTextIsSelected.js +1 -1
  204. package/dist/automation/actions/interaction/verify/VerifyIfSpecifiedOptionIsSelected.js +1 -1
  205. package/dist/automation/actions/interaction/verify/VerifyNavigateURL.js +1 -1
  206. package/dist/automation/actions/interaction/verify/VerifyPartialAttributeValue.js +2 -2
  207. package/dist/automation/actions/interaction/verify/VerifyPartialTitleOfCurrentPage.js +1 -1
  208. package/dist/automation/actions/interaction/verify/VerifyTagName.js +1 -1
  209. package/dist/automation/actions/interaction/verify/VerifyThatSpecifiedOptionIsNotSelected.js +1 -1
  210. package/dist/automation/actions/interaction/verify/VerifyTitleInAllPage.js +1 -1
  211. package/dist/automation/actions/interaction/verify/VerifyTitleOfCurrentPage.js +1 -1
  212. package/dist/automation/actions/interaction/verify/VerifyValueOfElementContainsString.js +1 -1
  213. package/dist/automation/actions/interaction/verify/VerifyValueOfElementIsString.js +1 -1
  214. package/dist/automation/actions/interaction/verify/VerifyWidthOfElement.js +2 -2
  215. package/dist/automation/actions/interaction/verify/VerifyXLocationOfElement.js +2 -2
  216. package/dist/automation/actions/interaction/verify/VerifyYLocationOfElement.js +2 -2
  217. package/dist/automation/actions/interaction/verify/checkIfElementIsDisplayed.js +2 -2
  218. package/dist/automation/actions/interaction/verify/verifypartialtext.js +2 -2
  219. package/dist/automation/actions/interaction/verify/verifytext.js +2 -2
  220. package/dist/automation/actions/interface/FireFlinkResponseSchema.d.ts +22 -1
  221. package/dist/automation/actions/interface/FireFlinkResponseSchema.js +18 -4
  222. package/dist/automation/actions/interface/alertActionInterface.d.ts +11 -0
  223. package/dist/automation/actions/interface/clearActionInterface.d.ts +4 -0
  224. package/dist/automation/actions/interface/getActionInterface.d.ts +150 -141
  225. package/dist/automation/actions/interface/getOtpInterface.d.ts +5 -0
  226. package/dist/automation/actions/interface/interactionActionInterface.d.ts +14 -7
  227. package/dist/automation/actions/interface/shadowDomInterface.d.ts +10 -0
  228. package/dist/automation/actions/interface/verifyActionInterface.d.ts +100 -0
  229. package/dist/core/Errors/InvalidFileTypeError.d.ts +5 -0
  230. package/dist/core/Errors/InvalidFileTypeError.js +14 -0
  231. package/dist/core/constants/supportedActions.js +4 -0
  232. package/dist/core/helpers/elementSelectorResolver.d.ts +11 -0
  233. package/dist/core/helpers/elementSelectorResolver.js +102 -0
  234. package/dist/core/helpers/runnerDomPipeline.d.ts +9 -0
  235. package/dist/core/helpers/runnerDomPipeline.js +97 -0
  236. package/dist/core/helpers/runnerKafkaReporter.d.ts +17 -0
  237. package/dist/core/helpers/runnerKafkaReporter.js +71 -0
  238. package/dist/core/helpers/runnerPostActionHelper.d.ts +2 -0
  239. package/dist/core/helpers/runnerPostActionHelper.js +30 -0
  240. package/dist/core/helpers/stepActionInspector.d.ts +5 -0
  241. package/dist/core/helpers/stepActionInspector.js +113 -0
  242. package/dist/core/helpers/visionFallbackHandler.d.ts +3 -0
  243. package/dist/core/helpers/visionFallbackHandler.js +138 -0
  244. package/dist/core/interfaces/actionInterface.d.ts +7 -5
  245. package/dist/core/interfaces/automationRunnerInterface.d.ts +56 -1
  246. package/dist/core/interfaces/fireflinkScriptPayloadInterface.d.ts +2 -0
  247. package/dist/core/interfaces/llmResponseInterface.d.ts +5 -0
  248. package/dist/core/interfaces/promptInterface.d.ts +9 -2
  249. package/dist/core/interfaces/scriptGenrationDataInterface.d.ts +4 -0
  250. package/dist/core/main/actionHandlerFactory.js +37 -7
  251. package/dist/core/main/executionContext.d.ts +2 -1
  252. package/dist/core/main/executionContext.js +7 -5
  253. package/dist/core/main/runAutomationScript.d.ts +1 -0
  254. package/dist/core/main/runAutomationScript.js +390 -1008
  255. package/dist/core/types/llmResponseType.d.ts +2 -2
  256. package/dist/core/types/promptType.d.ts +3 -1
  257. package/dist/core/types/promptType.js +2 -0
  258. package/dist/fireflinkData/fireflinkScript/appendScriptData.js +3 -0
  259. package/dist/utils/browserCap/capability.js +17 -0
  260. package/dist/utils/helpers/getHelper.d.ts +8 -0
  261. package/dist/utils/helpers/getHelper.js +115 -0
  262. package/dist/utils/helpers/platformSyntax.d.ts +1 -1
  263. package/package.json +2 -1
  264. package/dist/ai/llmprompts/systemPrompts/combinedActionExtractorPrompt.d.ts +0 -2
  265. package/dist/ai/llmprompts/systemPrompts/combinedActionExtractorPrompt.js +0 -36
@@ -1,12 +1,14 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getHeightOfWebElement = void 0;
4
+ const getHelper_js_1 = require("../../../../utils/helpers/getHelper.js");
4
5
  const appendScriptData_js_1 = require("../../../../fireflinkData/fireflinkScript/appendScriptData.js");
5
6
  const getHeightOfWebElement = async (args) => {
6
7
  try {
7
8
  const element = await args.driver.$(args.selector);
8
9
  const _size = await element.getSize();
9
10
  const _height = _size.height;
11
+ (0, getHelper_js_1.saveStepInputData)(args, _size.height);
10
12
  (0, appendScriptData_js_1.appendScriptData)({
11
13
  scriptDataAppender: args.scriptDataAppender,
12
14
  nlpName: "GetHeightOfWebElement",
@@ -17,7 +19,8 @@ const getHeightOfWebElement = async (args) => {
17
19
  elementName: args.elementName,
18
20
  elementType: args.elementType,
19
21
  selector: args.selector,
20
- platform: args.platform
22
+ platform: args.platform,
23
+ returnTypeVariableName: args.returnTypeVariableName
21
24
  });
22
25
  }
23
26
  catch (error) {
@@ -2,12 +2,16 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getHourFromCurrentSystemTime = void 0;
4
4
  const appendScriptData_js_1 = require("../../../../fireflinkData/fireflinkScript/appendScriptData.js");
5
+ const getHelper_js_1 = require("../../../../utils/helpers/getHelper.js");
5
6
  const getHourFromCurrentSystemTime = async (args) => {
6
7
  try {
8
+ const hour = String(new Date().getHours());
7
9
  (0, appendScriptData_js_1.appendScriptData)({
8
10
  scriptDataAppender: args.scriptDataAppender,
9
11
  nlpName: "GetHourFromCurrentSystemTime",
12
+ returnTypeVariableName: args.returnTypeVariableName
10
13
  });
14
+ (0, getHelper_js_1.saveStepInputData)(args, hour);
11
15
  }
12
16
  catch (error) {
13
17
  args.scriptDataAppender.setErrorNLP("GetHourFromCurrentSystemTime");
@@ -2,35 +2,22 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getImplicitTimeOut = void 0;
4
4
  const appendScriptData_js_1 = require("../../../../fireflinkData/fireflinkScript/appendScriptData.js");
5
+ const getHelper_js_1 = require("../../../../utils/helpers/getHelper.js");
5
6
  const getImplicitTimeOut = async (args) => {
6
- const nlpName = args.platform === "ios" ? "IOS_GetImplicitTimeOut" : "MOB_GetImplicitTimeOut";
7
- switch (args.platform) {
8
- case "android":
9
- case "ios":
10
- try {
11
- (0, appendScriptData_js_1.appendScriptData)({
12
- scriptDataAppender: args.scriptDataAppender,
13
- nlpName: nlpName,
14
- });
15
- }
16
- catch (error) {
17
- args.scriptDataAppender.setErrorNLP(nlpName);
18
- throw new Error("GetImplicitTimeOut action failed", { cause: error });
19
- }
20
- break;
21
- case "web":
22
- default:
23
- try {
24
- (0, appendScriptData_js_1.appendScriptData)({
25
- scriptDataAppender: args.scriptDataAppender,
26
- nlpName: "GetImplicitTimeOut",
27
- });
28
- }
29
- catch (error) {
30
- args.scriptDataAppender.setErrorNLP("GetImplicitTimeOut");
31
- throw new Error("GetImplicitTimeOut action failed", { cause: error });
32
- }
33
- break;
7
+ const nlpName = args.platform === "android" || args.platform === "ios" ? "MOB_GetImplicitTimeOut" : "GetImplicitTimeOut";
8
+ try {
9
+ const timeouts = await args.driver.getTimeouts();
10
+ const timeout = timeouts?.implicit ?? 0;
11
+ (0, appendScriptData_js_1.appendScriptData)({
12
+ scriptDataAppender: args.scriptDataAppender,
13
+ nlpName: nlpName,
14
+ returnTypeVariableName: args.returnTypeVariableName
15
+ });
16
+ (0, getHelper_js_1.saveStepInputData)(args, timeout);
17
+ }
18
+ catch (error) {
19
+ args.scriptDataAppender.setErrorNLP(nlpName);
20
+ throw new Error("GetImplicitTimeOut action failed", { cause: error });
34
21
  }
35
22
  };
36
23
  exports.getImplicitTimeOut = getImplicitTimeOut;
@@ -2,12 +2,19 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getLargestContentfulPaint = void 0;
4
4
  const appendScriptData_js_1 = require("../../../../fireflinkData/fireflinkScript/appendScriptData.js");
5
+ const getHelper_js_1 = require("../../../../utils/helpers/getHelper.js");
5
6
  const getLargestContentfulPaint = async (args) => {
6
7
  try {
8
+ const lcp = await args.driver.execute(() => {
9
+ const entries = window.performance.getEntriesByType("largest-contentful-paint");
10
+ return entries.length > 0 ? entries[entries.length - 1].startTime : 0;
11
+ });
7
12
  (0, appendScriptData_js_1.appendScriptData)({
8
13
  scriptDataAppender: args.scriptDataAppender,
9
14
  nlpName: "GetLargestContentfulPaint",
15
+ returnTypeVariableName: args.returnTypeVariableName
10
16
  });
17
+ (0, getHelper_js_1.saveStepInputData)(args, lcp);
11
18
  }
12
19
  catch (error) {
13
20
  args.scriptDataAppender.setErrorNLP("GetLargestContentfulPaint");
@@ -1,2 +1,2 @@
1
1
  import { getListBoxSizeInterface } from "../../interface/getActionInterface.js";
2
- export declare function getListBoxSize(args: getListBoxSizeInterface): Promise<number>;
2
+ export declare function getListBoxSize(args: getListBoxSizeInterface): Promise<void>;
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getListBoxSize = getListBoxSize;
4
+ const getHelper_js_1 = require("../../../../utils/helpers/getHelper.js");
4
5
  const logData_js_1 = require("../../../../utils/logger/logData.js");
5
6
  const appendScriptData_js_1 = require("../../../../fireflinkData/fireflinkScript/appendScriptData.js");
6
7
  async function getListBoxSize(args) {
@@ -21,9 +22,10 @@ async function getListBoxSize(args) {
21
22
  elementName: args.elementName,
22
23
  elementType: args.elementType,
23
24
  selector: args.selector,
24
- platform: args.platform
25
+ platform: args.platform,
26
+ returnTypeVariableName: args.returnTypeVariableName
25
27
  });
26
- return size;
28
+ (0, getHelper_js_1.saveStepInputData)(args, size);
27
29
  }
28
30
  catch (error) {
29
31
  args.scriptDataAppender.setErrorNLP("GetListBoxSize");
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getListOfElementsFromLocatorTypeLocatorValue = void 0;
4
+ const getHelper_js_1 = require("../../../../utils/helpers/getHelper.js");
4
5
  const logData_js_1 = require("../../../../utils/logger/logData.js");
5
6
  const appendScriptData_js_1 = require("../../../../fireflinkData/fireflinkScript/appendScriptData.js");
6
7
  const getListOfElementsFromLocatorTypeLocatorValue = async (args) => {
@@ -44,8 +45,10 @@ const getListOfElementsFromLocatorTypeLocatorValue = async (args) => {
44
45
  (0, appendScriptData_js_1.appendScriptData)({
45
46
  scriptDataAppender: args.scriptDataAppender,
46
47
  nlpName: "GetListOfElementsFromLocatorTypeLocatorValue",
47
- stepInputs: [locatorType, locatorValue]
48
+ stepInputs: [locatorType, locatorValue],
49
+ returnTypeVariableName: args.returnTypeVariableName
48
50
  });
51
+ (0, getHelper_js_1.saveStepInputData)(args, _elements.length);
49
52
  }
50
53
  catch (error) {
51
54
  args.scriptDataAppender.setErrorNLP("GetListOfElementsFromLocatorTypeLocatorValue");
@@ -85,8 +88,10 @@ const getListOfElementsFromLocatorTypeLocatorValue = async (args) => {
85
88
  (0, appendScriptData_js_1.appendScriptData)({
86
89
  scriptDataAppender: args.scriptDataAppender,
87
90
  nlpName: "IOS_GetListOfElementsFromLocatorTypeLocatorValue",
88
- stepInputs: [locatorType, locatorValue]
91
+ stepInputs: [locatorType, locatorValue],
92
+ returnTypeVariableName: args.returnTypeVariableName
89
93
  });
94
+ (0, getHelper_js_1.saveStepInputData)(args, _elements.length);
90
95
  }
91
96
  catch (error) {
92
97
  args.scriptDataAppender.setErrorNLP("IOS_GetListOfElementsFromLocatorTypeLocatorValue");
@@ -1,6 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getLocation = void 0;
4
+ const getHelper_js_1 = require("../../../../utils/helpers/getHelper.js");
5
+ const logData_js_1 = require("../../../../utils/logger/logData.js");
4
6
  const appendScriptData_js_1 = require("../../../../fireflinkData/fireflinkScript/appendScriptData.js");
5
7
  const getLocation = async (args) => {
6
8
  const nlpName = args.platform === "ios" ? "IOS_GetLocation" : "MOB_GetLocation";
@@ -8,9 +10,9 @@ const getLocation = async (args) => {
8
10
  case "android":
9
11
  case "ios":
10
12
  try {
11
- // const element = await args.driver.$(args.selector);
12
- // const _location = await element.getLocation();
13
- // logger.info(`Location of element: x-${_location.x}, y-${_location.y}`);
13
+ const element = await args.driver.$(args.selector);
14
+ const _location = await element.getLocation();
15
+ logData_js_1.logger.info(`Location of element: x-${_location.x}, y-${_location.y}`);
14
16
  (0, appendScriptData_js_1.appendScriptData)({
15
17
  scriptDataAppender: args.scriptDataAppender,
16
18
  nlpName: nlpName,
@@ -21,8 +23,10 @@ const getLocation = async (args) => {
21
23
  elementName: args.elementName,
22
24
  elementType: args.elementType,
23
25
  selector: args.selector,
24
- platform: args.platform
26
+ platform: args.platform,
27
+ returnTypeVariableName: args.returnTypeVariableName
25
28
  });
29
+ (0, getHelper_js_1.saveStepInputData)(args, _location);
26
30
  }
27
31
  catch (error) {
28
32
  args.scriptDataAppender.setErrorNLP(nlpName);
@@ -32,9 +36,9 @@ const getLocation = async (args) => {
32
36
  case "web":
33
37
  default:
34
38
  try {
35
- // const element = await args.driver.$(args.selector);
36
- // const _location = await element.getLocation();
37
- // logger.info(`Location of element: x-${_location.x}, y-${_location.y}`);
39
+ const element = await args.driver.$(args.selector);
40
+ const _location = await element.getLocation();
41
+ logData_js_1.logger.info(`Location of element: x-${_location.x}, y-${_location.y}`);
38
42
  (0, appendScriptData_js_1.appendScriptData)({
39
43
  scriptDataAppender: args.scriptDataAppender,
40
44
  nlpName: "GetLocation",
@@ -45,8 +49,10 @@ const getLocation = async (args) => {
45
49
  elementName: args.elementName,
46
50
  elementType: args.elementType,
47
51
  selector: args.selector,
48
- platform: args.platform
52
+ platform: args.platform,
53
+ returnTypeVariableName: args.returnTypeVariableName
49
54
  });
55
+ (0, getHelper_js_1.saveStepInputData)(args, _location);
50
56
  }
51
57
  catch (error) {
52
58
  args.scriptDataAppender.setErrorNLP("GetLocation");
@@ -2,12 +2,16 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getMinuteFromCurrentSystemTime = void 0;
4
4
  const appendScriptData_js_1 = require("../../../../fireflinkData/fireflinkScript/appendScriptData.js");
5
+ const getHelper_js_1 = require("../../../../utils/helpers/getHelper.js");
5
6
  const getMinuteFromCurrentSystemTime = async (args) => {
6
7
  try {
8
+ const minute = String(new Date().getMinutes());
7
9
  (0, appendScriptData_js_1.appendScriptData)({
8
10
  scriptDataAppender: args.scriptDataAppender,
9
11
  nlpName: "GetMinuteFromCurrentSystemTime",
12
+ returnTypeVariableName: args.returnTypeVariableName
10
13
  });
14
+ (0, getHelper_js_1.saveStepInputData)(args, minute);
11
15
  }
12
16
  catch (error) {
13
17
  args.scriptDataAppender.setErrorNLP("GetMinuteFromCurrentSystemTime");
@@ -2,12 +2,19 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getNetworkRouteTime = void 0;
4
4
  const appendScriptData_js_1 = require("../../../../fireflinkData/fireflinkScript/appendScriptData.js");
5
+ const getHelper_js_1 = require("../../../../utils/helpers/getHelper.js");
5
6
  const getNetworkRouteTime = async (args) => {
6
7
  try {
8
+ const routeTime = await args.driver.execute(() => {
9
+ const timing = window.performance.timing;
10
+ return timing.responseEnd - timing.requestStart;
11
+ });
7
12
  (0, appendScriptData_js_1.appendScriptData)({
8
13
  scriptDataAppender: args.scriptDataAppender,
9
14
  nlpName: "GetNetworkRouteTime",
15
+ returnTypeVariableName: args.returnTypeVariableName
10
16
  });
17
+ (0, getHelper_js_1.saveStepInputData)(args, routeTime);
11
18
  }
12
19
  catch (error) {
13
20
  args.scriptDataAppender.setErrorNLP("GetNetworkRouteTime");
@@ -2,12 +2,19 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getNumberOfBrokenImages = void 0;
4
4
  const appendScriptData_js_1 = require("../../../../fireflinkData/fireflinkScript/appendScriptData.js");
5
+ const getHelper_js_1 = require("../../../../utils/helpers/getHelper.js");
5
6
  const getNumberOfBrokenImages = async (args) => {
6
7
  try {
8
+ const count = await args.driver.execute(() => {
9
+ const imgs = Array.from(document.querySelectorAll("img"));
10
+ return imgs.filter((img) => img.naturalWidth === 0 || !img.src).length;
11
+ });
7
12
  (0, appendScriptData_js_1.appendScriptData)({
8
13
  scriptDataAppender: args.scriptDataAppender,
9
14
  nlpName: "GetNumberOfBrokenImages",
15
+ returnTypeVariableName: args.returnTypeVariableName
10
16
  });
17
+ (0, getHelper_js_1.saveStepInputData)(args, count);
11
18
  }
12
19
  catch (error) {
13
20
  args.scriptDataAppender.setErrorNLP("GetNumberOfBrokenImages");
@@ -2,12 +2,17 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getNumberOfLinksPresentInCurrentPage = void 0;
4
4
  const appendScriptData_js_1 = require("../../../../fireflinkData/fireflinkScript/appendScriptData.js");
5
+ const getHelper_js_1 = require("../../../../utils/helpers/getHelper.js");
5
6
  const getNumberOfLinksPresentInCurrentPage = async (args) => {
6
7
  try {
8
+ const links = await args.driver.$$("a");
9
+ const count = links.length;
7
10
  (0, appendScriptData_js_1.appendScriptData)({
8
11
  scriptDataAppender: args.scriptDataAppender,
9
12
  nlpName: "GetNumberOfLinksPresentInCurrentPage",
13
+ returnTypeVariableName: args.returnTypeVariableName
10
14
  });
15
+ (0, getHelper_js_1.saveStepInputData)(args, count);
11
16
  }
12
17
  catch (error) {
13
18
  args.scriptDataAppender.setErrorNLP("GetNumberOfLinksPresentInCurrentPage");
@@ -2,12 +2,21 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getNumberOfWorkingLinksFromCurrentPage = void 0;
4
4
  const appendScriptData_js_1 = require("../../../../fireflinkData/fireflinkScript/appendScriptData.js");
5
+ const getHelper_js_1 = require("../../../../utils/helpers/getHelper.js");
5
6
  const getNumberOfWorkingLinksFromCurrentPage = async (args) => {
6
7
  try {
8
+ const count = await args.driver.execute(() => {
9
+ const links = Array.from(document.querySelectorAll("a[href]"));
10
+ return links
11
+ .map((a) => a.href)
12
+ .filter((href) => !href.startsWith("javascript:void") && href.trim() !== "").length;
13
+ });
7
14
  (0, appendScriptData_js_1.appendScriptData)({
8
15
  scriptDataAppender: args.scriptDataAppender,
9
16
  nlpName: "GetNumberOfWorkingLinksFromCurrentPage",
17
+ returnTypeVariableName: args.returnTypeVariableName
10
18
  });
19
+ (0, getHelper_js_1.saveStepInputData)(args, count);
11
20
  }
12
21
  catch (error) {
13
22
  args.scriptDataAppender.setErrorNLP("GetNumberOfWorkingLinksFromCurrentPage");
@@ -1,11 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getOptions = void 0;
4
+ const getHelper_js_1 = require("../../../../utils/helpers/getHelper.js");
4
5
  const appendScriptData_js_1 = require("../../../../fireflinkData/fireflinkScript/appendScriptData.js");
5
6
  const getOptions = async (args) => {
6
7
  try {
7
8
  const selectElement = await args.driver.$(args.selector);
8
9
  const _options = await selectElement.$$('option');
10
+ (0, getHelper_js_1.saveStepInputData)(args, _options);
9
11
  (0, appendScriptData_js_1.appendScriptData)({
10
12
  scriptDataAppender: args.scriptDataAppender,
11
13
  nlpName: "GetOptions",
@@ -16,7 +18,8 @@ const getOptions = async (args) => {
16
18
  elementName: args.elementName,
17
19
  elementType: args.elementType,
18
20
  selector: args.selector,
19
- platform: args.platform
21
+ platform: args.platform,
22
+ returnTypeVariableName: args.returnTypeVariableName
20
23
  });
21
24
  }
22
25
  catch (error) {
@@ -2,12 +2,16 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getPageTitle = void 0;
4
4
  const appendScriptData_js_1 = require("../../../../fireflinkData/fireflinkScript/appendScriptData.js");
5
+ const getHelper_js_1 = require("../../../../utils/helpers/getHelper.js");
5
6
  const getPageTitle = async (args) => {
6
7
  try {
8
+ const title = await args.driver.getTitle();
7
9
  (0, appendScriptData_js_1.appendScriptData)({
8
10
  scriptDataAppender: args.scriptDataAppender,
9
- nlpName: "GetPageTitle"
11
+ nlpName: "GetPageTitle",
12
+ returnTypeVariableName: args.returnTypeVariableName
10
13
  });
14
+ (0, getHelper_js_1.saveStepInputData)(args, title);
11
15
  }
12
16
  catch (error) {
13
17
  args.scriptDataAppender.setErrorNLP("GetPageTitle");
@@ -2,12 +2,23 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getPerformanceMetrics = void 0;
4
4
  const appendScriptData_js_1 = require("../../../../fireflinkData/fireflinkScript/appendScriptData.js");
5
+ const getHelper_js_1 = require("../../../../utils/helpers/getHelper.js");
5
6
  const getPerformanceMetrics = async (args) => {
6
7
  try {
8
+ const metrics = await args.driver.execute(() => {
9
+ const timing = window.performance.timing;
10
+ return {
11
+ loadTime: timing.loadEventEnd - timing.navigationStart,
12
+ domReady: timing.domComplete - timing.domLoading,
13
+ connectTime: timing.connectEnd - timing.connectStart
14
+ };
15
+ });
7
16
  (0, appendScriptData_js_1.appendScriptData)({
8
17
  scriptDataAppender: args.scriptDataAppender,
9
- nlpName: "GetPerformanceMetrics"
18
+ nlpName: "GetPerformanceMetrics",
19
+ returnTypeVariableName: args.returnTypeVariableName
10
20
  });
21
+ (0, getHelper_js_1.saveStepInputData)(args, metrics);
11
22
  }
12
23
  catch (error) {
13
24
  args.scriptDataAppender.setErrorNLP("GetPerformanceMetrics");
@@ -2,15 +2,23 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getPwaScore = void 0;
4
4
  const appendScriptData_js_1 = require("../../../../fireflinkData/fireflinkScript/appendScriptData.js");
5
+ const getHelper_js_1 = require("../../../../utils/helpers/getHelper.js");
5
6
  const getPwaScore = async (args) => {
6
7
  try {
7
- const inputs = (args.value || "").split(",").map(v => v.trim());
8
- const stepInputs = [inputs[0] || "", inputs[1] || ""];
8
+ const score = await args.driver.execute(() => {
9
+ let s = 0;
10
+ if (document.querySelector('link[rel="manifest"]'))
11
+ s += 50;
12
+ if (navigator.serviceWorker)
13
+ s += 50;
14
+ return s;
15
+ });
9
16
  (0, appendScriptData_js_1.appendScriptData)({
10
17
  scriptDataAppender: args.scriptDataAppender,
11
18
  nlpName: "GetPwaScore",
12
- stepInputs: stepInputs
19
+ returnTypeVariableName: args.returnTypeVariableName
13
20
  });
21
+ (0, getHelper_js_1.saveStepInputData)(args, score);
14
22
  }
15
23
  catch (error) {
16
24
  args.scriptDataAppender.setErrorNLP("GetPwaScore");
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getRect = void 0;
4
+ const getHelper_js_1 = require("../../../../utils/helpers/getHelper.js");
4
5
  const logData_js_1 = require("../../../../utils/logger/logData.js");
5
6
  const appendScriptData_js_1 = require("../../../../fireflinkData/fireflinkScript/appendScriptData.js");
6
7
  const getRect = async (args) => {
@@ -19,6 +20,8 @@ const getRect = async (args) => {
19
20
  height: _size.height
20
21
  };
21
22
  logData_js_1.logger.info("Rect->", _rect);
23
+ const rect = { ..._location, ..._size };
24
+ (0, getHelper_js_1.saveStepInputData)(args, rect);
22
25
  (0, appendScriptData_js_1.appendScriptData)({
23
26
  scriptDataAppender: args.scriptDataAppender,
24
27
  nlpName: nlpName,
@@ -29,7 +32,8 @@ const getRect = async (args) => {
29
32
  elementName: args.elementName,
30
33
  elementType: args.elementType,
31
34
  selector: args.selector,
32
- platform: args.platform
35
+ platform: args.platform,
36
+ returnTypeVariableName: args.returnTypeVariableName
33
37
  });
34
38
  }
35
39
  catch (error) {
@@ -50,6 +54,8 @@ const getRect = async (args) => {
50
54
  height: _size.height
51
55
  };
52
56
  logData_js_1.logger.info("Rect->", _rect);
57
+ const rect = { ..._location, ..._size };
58
+ (0, getHelper_js_1.saveStepInputData)(args, rect);
53
59
  (0, appendScriptData_js_1.appendScriptData)({
54
60
  scriptDataAppender: args.scriptDataAppender,
55
61
  nlpName: "GetRect",
@@ -60,7 +66,8 @@ const getRect = async (args) => {
60
66
  elementName: args.elementName,
61
67
  elementType: args.elementType,
62
68
  selector: args.selector,
63
- platform: args.platform
69
+ platform: args.platform,
70
+ returnTypeVariableName: args.returnTypeVariableName
64
71
  });
65
72
  }
66
73
  catch (error) {
@@ -2,35 +2,20 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getScreenshot = void 0;
4
4
  const appendScriptData_js_1 = require("../../../../fireflinkData/fireflinkScript/appendScriptData.js");
5
+ const getHelper_js_1 = require("../../../../utils/helpers/getHelper.js");
5
6
  const getScreenshot = async (args) => {
6
- const nlpName = args.platform === "ios" ? "IOS_GetScreenshot" : "MOB_GetScreenshot";
7
- switch (args.platform) {
8
- case "android":
9
- case "ios":
10
- try {
11
- (0, appendScriptData_js_1.appendScriptData)({
12
- scriptDataAppender: args.scriptDataAppender,
13
- nlpName: nlpName
14
- });
15
- }
16
- catch (error) {
17
- args.scriptDataAppender.setErrorNLP(nlpName);
18
- throw new Error("GetScreenshot action failed", { cause: error });
19
- }
20
- break;
21
- case "web":
22
- default:
23
- try {
24
- (0, appendScriptData_js_1.appendScriptData)({
25
- scriptDataAppender: args.scriptDataAppender,
26
- nlpName: "GetScreenshot"
27
- });
28
- }
29
- catch (error) {
30
- args.scriptDataAppender.setErrorNLP("GetScreenshot");
31
- throw new Error("GetScreenshot action failed", { cause: error });
32
- }
33
- break;
7
+ try {
8
+ const screenshot = await args.driver.takeScreenshot();
9
+ (0, appendScriptData_js_1.appendScriptData)({
10
+ scriptDataAppender: args.scriptDataAppender,
11
+ nlpName: "GetScreenshot",
12
+ returnTypeVariableName: args.returnTypeVariableName
13
+ });
14
+ (0, getHelper_js_1.saveStepInputData)(args, screenshot);
15
+ }
16
+ catch (error) {
17
+ args.scriptDataAppender.setErrorNLP("GetScreenshot");
18
+ throw new Error("GetScreenshot action failed", { cause: error });
34
19
  }
35
20
  };
36
21
  exports.getScreenshot = getScreenshot;
@@ -2,51 +2,21 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getScreenshotAs = void 0;
4
4
  const appendScriptData_js_1 = require("../../../../fireflinkData/fireflinkScript/appendScriptData.js");
5
+ const getHelper_js_1 = require("../../../../utils/helpers/getHelper.js");
5
6
  const getScreenshotAs = async (args) => {
6
- const nlpName = args.platform === "ios" ? "IOS_GetScreenshotAs" : "MOB_GetScreenshotAs";
7
- switch (args.platform) {
8
- case "android":
9
- case "ios":
10
- try {
11
- (0, appendScriptData_js_1.appendScriptData)({
12
- scriptDataAppender: args.scriptDataAppender,
13
- nlpName: nlpName,
14
- stepInputs: [],
15
- pageDOM: args.pageDOM,
16
- elementGetter: args.elementGetter,
17
- ffNumber: args.fireflinkIndex,
18
- elementName: args.elementName,
19
- elementType: args.elementType,
20
- selector: args.selector,
21
- platform: args.platform
22
- });
23
- }
24
- catch (error) {
25
- args.scriptDataAppender.setErrorNLP(nlpName);
26
- throw new Error("GetScreenshotAs action failed", { cause: error });
27
- }
28
- break;
29
- case "web":
30
- default:
31
- try {
32
- (0, appendScriptData_js_1.appendScriptData)({
33
- scriptDataAppender: args.scriptDataAppender,
34
- nlpName: "GetScreenshotAs",
35
- stepInputs: [],
36
- pageDOM: args.pageDOM,
37
- elementGetter: args.elementGetter,
38
- ffNumber: args.fireflinkIndex,
39
- elementName: args.elementName,
40
- elementType: args.elementType,
41
- selector: args.selector,
42
- platform: args.platform
43
- });
44
- }
45
- catch (error) {
46
- args.scriptDataAppender.setErrorNLP("GetScreenshotAs");
47
- throw new Error("GetScreenshotAs action failed", { cause: error });
48
- }
49
- break;
7
+ try {
8
+ const screenshot = await args.driver.takeScreenshot();
9
+ (0, appendScriptData_js_1.appendScriptData)({
10
+ scriptDataAppender: args.scriptDataAppender,
11
+ nlpName: "GetScreenshotAs",
12
+ stepInputs: [args.value || ""],
13
+ returnTypeVariableName: args.returnTypeVariableName
14
+ });
15
+ (0, getHelper_js_1.saveStepInputData)(args, screenshot);
16
+ }
17
+ catch (error) {
18
+ args.scriptDataAppender.setErrorNLP("GetScreenshotAs");
19
+ throw new Error("GetScreenshotAs action failed", { cause: error });
50
20
  }
51
21
  };
52
22
  exports.getScreenshotAs = getScreenshotAs;
@@ -2,15 +2,27 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getSeoScore = void 0;
4
4
  const appendScriptData_js_1 = require("../../../../fireflinkData/fireflinkScript/appendScriptData.js");
5
+ const getHelper_js_1 = require("../../../../utils/helpers/getHelper.js");
5
6
  const getSeoScore = async (args) => {
6
7
  try {
7
- const inputs = (args.value || "").split(",").map(v => v.trim());
8
- const stepInputs = [inputs[0] || "", inputs[1] || ""];
8
+ const score = await args.driver.execute(() => {
9
+ let s = 100;
10
+ if (!document.title)
11
+ s -= 30;
12
+ if (!document.querySelector('meta[name="description"]'))
13
+ s -= 30;
14
+ if (!document.querySelector('meta[name="viewport"]'))
15
+ s -= 20;
16
+ if (document.querySelectorAll("h1").length === 0)
17
+ s -= 20;
18
+ return Math.max(0, s);
19
+ });
9
20
  (0, appendScriptData_js_1.appendScriptData)({
10
21
  scriptDataAppender: args.scriptDataAppender,
11
22
  nlpName: "GetSeoScore",
12
- stepInputs: stepInputs
23
+ returnTypeVariableName: args.returnTypeVariableName
13
24
  });
25
+ (0, getHelper_js_1.saveStepInputData)(args, score);
14
26
  }
15
27
  catch (error) {
16
28
  args.scriptDataAppender.setErrorNLP("GetSeoScore");