donobu 2.23.0 → 2.23.2

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 (371) hide show
  1. package/dist/apis/FlowsApi.d.ts +1 -1
  2. package/dist/apis/FlowsApi.js +1 -1
  3. package/dist/apis/SpecialFlowsApi.js +5 -5
  4. package/dist/apis/SpecialFlowsApi.js.map +1 -1
  5. package/dist/assets/control-panel.js +1 -1
  6. package/dist/assets/generated/version +1 -1
  7. package/dist/assets/playwright-json-to-markdown.js +44 -16
  8. package/dist/esm/apis/FlowsApi.d.ts +1 -1
  9. package/dist/esm/apis/FlowsApi.js +1 -1
  10. package/dist/esm/apis/SpecialFlowsApi.js +5 -5
  11. package/dist/esm/apis/SpecialFlowsApi.js.map +1 -1
  12. package/dist/esm/assets/control-panel.js +1 -1
  13. package/dist/esm/assets/generated/version +1 -1
  14. package/dist/esm/assets/playwright-json-to-markdown.js +44 -16
  15. package/dist/esm/lib/testExtension.d.ts.map +1 -1
  16. package/dist/esm/lib/testExtension.js +2 -4
  17. package/dist/esm/lib/testExtension.js.map +1 -1
  18. package/dist/esm/lib/utils/SelfHealingDebugReporter.d.ts +69 -0
  19. package/dist/esm/lib/utils/SelfHealingDebugReporter.d.ts.map +1 -0
  20. package/dist/esm/lib/utils/SelfHealingDebugReporter.js +486 -0
  21. package/dist/esm/lib/utils/SelfHealingDebugReporter.js.map +1 -0
  22. package/dist/esm/lib/utils/SelfHealingTestUtils.d.ts +55 -0
  23. package/dist/esm/lib/utils/SelfHealingTestUtils.d.ts.map +1 -0
  24. package/dist/esm/lib/utils/SelfHealingTestUtils.js +335 -0
  25. package/dist/esm/lib/utils/SelfHealingTestUtils.js.map +1 -0
  26. package/dist/esm/lib/utils/VideoArtifactManager.d.ts +57 -0
  27. package/dist/esm/lib/utils/VideoArtifactManager.d.ts.map +1 -0
  28. package/dist/esm/lib/utils/VideoArtifactManager.js +343 -0
  29. package/dist/esm/lib/utils/VideoArtifactManager.js.map +1 -0
  30. package/dist/esm/lib/utils/selfHealing.js +1 -1
  31. package/dist/esm/lib/utils/selfHealing.js.map +1 -1
  32. package/dist/esm/managers/DonobuFlow.d.ts.map +1 -1
  33. package/dist/esm/managers/DonobuFlow.js +11 -12
  34. package/dist/esm/managers/DonobuFlow.js.map +1 -1
  35. package/dist/esm/managers/DonobuFlowsManager.d.ts +1 -1
  36. package/dist/esm/managers/DonobuFlowsManager.d.ts.map +1 -1
  37. package/dist/esm/managers/DonobuFlowsManager.js +11 -7
  38. package/dist/esm/managers/DonobuFlowsManager.js.map +1 -1
  39. package/dist/esm/models/CreateDonobuFlow.d.ts +5 -6
  40. package/dist/esm/models/CreateDonobuFlow.d.ts.map +1 -1
  41. package/dist/esm/models/CreateDonobuFlow.js +4 -2
  42. package/dist/esm/models/CreateDonobuFlow.js.map +1 -1
  43. package/dist/esm/models/FlowMetadata.d.ts +3 -6
  44. package/dist/esm/models/FlowMetadata.d.ts.map +1 -1
  45. package/dist/esm/models/FlowMetadata.js +3 -5
  46. package/dist/esm/models/FlowMetadata.js.map +1 -1
  47. package/dist/esm/persistence/DonobuSqliteDb.d.ts.map +1 -1
  48. package/dist/esm/persistence/DonobuSqliteDb.js +42 -0
  49. package/dist/esm/persistence/DonobuSqliteDb.js.map +1 -1
  50. package/dist/esm/tools/ReplayableInteraction.d.ts.map +1 -1
  51. package/dist/esm/tools/ReplayableInteraction.js +1 -3
  52. package/dist/esm/tools/ReplayableInteraction.js.map +1 -1
  53. package/dist/esm/tools/TriggerDonobuFlowTool.d.ts +14 -16
  54. package/dist/esm/tools/TriggerDonobuFlowTool.d.ts.map +1 -1
  55. package/dist/lib/testExtension.d.ts.map +1 -1
  56. package/dist/lib/testExtension.js +2 -4
  57. package/dist/lib/testExtension.js.map +1 -1
  58. package/dist/lib/utils/SelfHealingDebugReporter.d.ts +69 -0
  59. package/dist/lib/utils/SelfHealingDebugReporter.d.ts.map +1 -0
  60. package/dist/lib/utils/SelfHealingDebugReporter.js +486 -0
  61. package/dist/lib/utils/SelfHealingDebugReporter.js.map +1 -0
  62. package/dist/lib/utils/SelfHealingTestUtils.d.ts +55 -0
  63. package/dist/lib/utils/SelfHealingTestUtils.d.ts.map +1 -0
  64. package/dist/lib/utils/SelfHealingTestUtils.js +335 -0
  65. package/dist/lib/utils/SelfHealingTestUtils.js.map +1 -0
  66. package/dist/lib/utils/VideoArtifactManager.d.ts +57 -0
  67. package/dist/lib/utils/VideoArtifactManager.d.ts.map +1 -0
  68. package/dist/lib/utils/VideoArtifactManager.js +343 -0
  69. package/dist/lib/utils/VideoArtifactManager.js.map +1 -0
  70. package/dist/lib/utils/selfHealing.js +1 -1
  71. package/dist/lib/utils/selfHealing.js.map +1 -1
  72. package/dist/managers/DonobuFlow.d.ts.map +1 -1
  73. package/dist/managers/DonobuFlow.js +11 -12
  74. package/dist/managers/DonobuFlow.js.map +1 -1
  75. package/dist/managers/DonobuFlowsManager.d.ts +1 -1
  76. package/dist/managers/DonobuFlowsManager.d.ts.map +1 -1
  77. package/dist/managers/DonobuFlowsManager.js +11 -7
  78. package/dist/managers/DonobuFlowsManager.js.map +1 -1
  79. package/dist/models/CreateDonobuFlow.d.ts +5 -6
  80. package/dist/models/CreateDonobuFlow.d.ts.map +1 -1
  81. package/dist/models/CreateDonobuFlow.js +4 -2
  82. package/dist/models/CreateDonobuFlow.js.map +1 -1
  83. package/dist/models/FlowMetadata.d.ts +3 -6
  84. package/dist/models/FlowMetadata.d.ts.map +1 -1
  85. package/dist/models/FlowMetadata.js +3 -5
  86. package/dist/models/FlowMetadata.js.map +1 -1
  87. package/dist/persistence/DonobuSqliteDb.d.ts.map +1 -1
  88. package/dist/persistence/DonobuSqliteDb.js +42 -0
  89. package/dist/persistence/DonobuSqliteDb.js.map +1 -1
  90. package/dist/tools/ReplayableInteraction.d.ts.map +1 -1
  91. package/dist/tools/ReplayableInteraction.js +1 -3
  92. package/dist/tools/ReplayableInteraction.js.map +1 -1
  93. package/dist/tools/TriggerDonobuFlowTool.d.ts +14 -16
  94. package/dist/tools/TriggerDonobuFlowTool.d.ts.map +1 -1
  95. package/package.json +1 -1
  96. package/dist/apis/EnvironmentDataApi.d.ts +0 -26
  97. package/dist/apis/EnvironmentDataApi.d.ts.map +0 -1
  98. package/dist/apis/EnvironmentDataApi.js +0 -59
  99. package/dist/apis/EnvironmentDataApi.js.map +0 -1
  100. package/dist/assets/donobu-virtual-mouse.svg +0 -11
  101. package/dist/assets/donobu.css +0 -62
  102. package/dist/assets/generated/parameter-schemas.json +0 -2241
  103. package/dist/assets/record.umd.min.cjs +0 -10399
  104. package/dist/bindings/FocusPage.d.ts +0 -23
  105. package/dist/bindings/FocusPage.d.ts.map +0 -1
  106. package/dist/bindings/FocusPage.js +0 -20
  107. package/dist/bindings/FocusPage.js.map +0 -1
  108. package/dist/bindings/ToggleDonobuAnnotations.d.ts +0 -21
  109. package/dist/bindings/ToggleDonobuAnnotations.d.ts.map +0 -1
  110. package/dist/bindings/ToggleDonobuAnnotations.js +0 -51
  111. package/dist/bindings/ToggleDonobuAnnotations.js.map +0 -1
  112. package/dist/esm/apis/EnvironmentDataApi.d.ts +0 -26
  113. package/dist/esm/apis/EnvironmentDataApi.d.ts.map +0 -1
  114. package/dist/esm/apis/EnvironmentDataApi.js +0 -59
  115. package/dist/esm/apis/EnvironmentDataApi.js.map +0 -1
  116. package/dist/esm/assets/donobu-virtual-mouse.svg +0 -11
  117. package/dist/esm/assets/donobu.css +0 -62
  118. package/dist/esm/assets/generated/parameter-schemas.json +0 -2241
  119. package/dist/esm/assets/record.umd.min.cjs +0 -10399
  120. package/dist/esm/bindings/FocusPage.d.ts +0 -23
  121. package/dist/esm/bindings/FocusPage.d.ts.map +0 -1
  122. package/dist/esm/bindings/FocusPage.js +0 -20
  123. package/dist/esm/bindings/FocusPage.js.map +0 -1
  124. package/dist/esm/bindings/ToggleDonobuAnnotations.d.ts +0 -21
  125. package/dist/esm/bindings/ToggleDonobuAnnotations.d.ts.map +0 -1
  126. package/dist/esm/bindings/ToggleDonobuAnnotations.js +0 -51
  127. package/dist/esm/bindings/ToggleDonobuAnnotations.js.map +0 -1
  128. package/dist/esm/lib/constants.d.ts +0 -8
  129. package/dist/esm/lib/constants.d.ts.map +0 -1
  130. package/dist/esm/lib/constants.js +0 -14
  131. package/dist/esm/lib/constants.js.map +0 -1
  132. package/dist/esm/lib/fixtures/testExtension.d.ts +0 -10
  133. package/dist/esm/lib/fixtures/testExtension.d.ts.map +0 -1
  134. package/dist/esm/lib/fixtures/testExtension.js +0 -383
  135. package/dist/esm/lib/fixtures/testExtension.js.map +0 -1
  136. package/dist/esm/lib/types.d.ts +0 -106
  137. package/dist/esm/lib/types.d.ts.map +0 -1
  138. package/dist/esm/lib/types.js +0 -3
  139. package/dist/esm/lib/types.js.map +0 -1
  140. package/dist/esm/managers/EnvironmentDataManager.d.ts +0 -58
  141. package/dist/esm/managers/EnvironmentDataManager.d.ts.map +0 -1
  142. package/dist/esm/managers/EnvironmentDataManager.js +0 -134
  143. package/dist/esm/managers/EnvironmentDataManager.js.map +0 -1
  144. package/dist/esm/managers/ProjectStructureGenerator.d.ts +0 -62
  145. package/dist/esm/managers/ProjectStructureGenerator.d.ts.map +0 -1
  146. package/dist/esm/managers/ProjectStructureGenerator.js +0 -234
  147. package/dist/esm/managers/ProjectStructureGenerator.js.map +0 -1
  148. package/dist/esm/managers/TestFileUpdater.d.ts +0 -56
  149. package/dist/esm/managers/TestFileUpdater.d.ts.map +0 -1
  150. package/dist/esm/managers/TestFileUpdater.js +0 -224
  151. package/dist/esm/managers/TestFileUpdater.js.map +0 -1
  152. package/dist/esm/models/AskAiRequest.d.ts +0 -15
  153. package/dist/esm/models/AskAiRequest.d.ts.map +0 -1
  154. package/dist/esm/models/AskAiRequest.js +0 -3
  155. package/dist/esm/models/AskAiRequest.js.map +0 -1
  156. package/dist/esm/models/BaseToolGptParameters.d.ts +0 -10
  157. package/dist/esm/models/BaseToolGptParameters.d.ts.map +0 -1
  158. package/dist/esm/models/BaseToolGptParameters.js +0 -3
  159. package/dist/esm/models/BaseToolGptParameters.js.map +0 -1
  160. package/dist/esm/models/BrowserFramework.d.ts +0 -61
  161. package/dist/esm/models/BrowserFramework.d.ts.map +0 -1
  162. package/dist/esm/models/BrowserFramework.js +0 -339
  163. package/dist/esm/models/BrowserFramework.js.map +0 -1
  164. package/dist/esm/models/EnvironmentDatum.d.ts +0 -54
  165. package/dist/esm/models/EnvironmentDatum.d.ts.map +0 -1
  166. package/dist/esm/models/EnvironmentDatum.js +0 -57
  167. package/dist/esm/models/EnvironmentDatum.js.map +0 -1
  168. package/dist/esm/models/FlowsQuery.d.ts +0 -12
  169. package/dist/esm/models/FlowsQuery.d.ts.map +0 -1
  170. package/dist/esm/models/FlowsQuery.js +0 -3
  171. package/dist/esm/models/FlowsQuery.js.map +0 -1
  172. package/dist/esm/persistence/AgentsPersistence.d.ts +0 -12
  173. package/dist/esm/persistence/AgentsPersistence.d.ts.map +0 -1
  174. package/dist/esm/persistence/AgentsPersistence.js +0 -3
  175. package/dist/esm/persistence/AgentsPersistence.js.map +0 -1
  176. package/dist/esm/persistence/AgentsPersistenceSqlite.d.ts +0 -15
  177. package/dist/esm/persistence/AgentsPersistenceSqlite.d.ts.map +0 -1
  178. package/dist/esm/persistence/AgentsPersistenceSqlite.js +0 -50
  179. package/dist/esm/persistence/AgentsPersistenceSqlite.js.map +0 -1
  180. package/dist/esm/persistence/AgentsPersistenceVolatile.d.ts +0 -14
  181. package/dist/esm/persistence/AgentsPersistenceVolatile.d.ts.map +0 -1
  182. package/dist/esm/persistence/AgentsPersistenceVolatile.js +0 -26
  183. package/dist/esm/persistence/AgentsPersistenceVolatile.js.map +0 -1
  184. package/dist/esm/persistence/FlowsPersistence.d.ts +0 -104
  185. package/dist/esm/persistence/FlowsPersistence.d.ts.map +0 -1
  186. package/dist/esm/persistence/FlowsPersistence.js +0 -3
  187. package/dist/esm/persistence/FlowsPersistence.js.map +0 -1
  188. package/dist/esm/persistence/FlowsPersistenceAwsS3.d.ts +0 -75
  189. package/dist/esm/persistence/FlowsPersistenceAwsS3.d.ts.map +0 -1
  190. package/dist/esm/persistence/FlowsPersistenceAwsS3.js +0 -525
  191. package/dist/esm/persistence/FlowsPersistenceAwsS3.js.map +0 -1
  192. package/dist/esm/persistence/FlowsPersistenceFactory.d.ts +0 -10
  193. package/dist/esm/persistence/FlowsPersistenceFactory.d.ts.map +0 -1
  194. package/dist/esm/persistence/FlowsPersistenceFactory.js +0 -3
  195. package/dist/esm/persistence/FlowsPersistenceFactory.js.map +0 -1
  196. package/dist/esm/persistence/FlowsPersistenceFactoryImpl.d.ts +0 -57
  197. package/dist/esm/persistence/FlowsPersistenceFactoryImpl.d.ts.map +0 -1
  198. package/dist/esm/persistence/FlowsPersistenceFactoryImpl.js +0 -235
  199. package/dist/esm/persistence/FlowsPersistenceFactoryImpl.js.map +0 -1
  200. package/dist/esm/persistence/FlowsPersistenceFactoryPreset.d.ts +0 -13
  201. package/dist/esm/persistence/FlowsPersistenceFactoryPreset.d.ts.map +0 -1
  202. package/dist/esm/persistence/FlowsPersistenceFactoryPreset.js +0 -24
  203. package/dist/esm/persistence/FlowsPersistenceFactoryPreset.js.map +0 -1
  204. package/dist/esm/persistence/FlowsPersistenceFilesystem.d.ts +0 -69
  205. package/dist/esm/persistence/FlowsPersistenceFilesystem.d.ts.map +0 -1
  206. package/dist/esm/persistence/FlowsPersistenceFilesystem.js +0 -381
  207. package/dist/esm/persistence/FlowsPersistenceFilesystem.js.map +0 -1
  208. package/dist/esm/persistence/FlowsPersistenceGoogleCloudStorage.d.ts +0 -75
  209. package/dist/esm/persistence/FlowsPersistenceGoogleCloudStorage.d.ts.map +0 -1
  210. package/dist/esm/persistence/FlowsPersistenceGoogleCloudStorage.js +0 -485
  211. package/dist/esm/persistence/FlowsPersistenceGoogleCloudStorage.js.map +0 -1
  212. package/dist/esm/persistence/FlowsPersistenceSqlite.d.ts +0 -44
  213. package/dist/esm/persistence/FlowsPersistenceSqlite.d.ts.map +0 -1
  214. package/dist/esm/persistence/FlowsPersistenceSqlite.js +0 -264
  215. package/dist/esm/persistence/FlowsPersistenceSqlite.js.map +0 -1
  216. package/dist/esm/persistence/FlowsPersistenceSupabase.d.ts +0 -44
  217. package/dist/esm/persistence/FlowsPersistenceSupabase.d.ts.map +0 -1
  218. package/dist/esm/persistence/FlowsPersistenceSupabase.js +0 -262
  219. package/dist/esm/persistence/FlowsPersistenceSupabase.js.map +0 -1
  220. package/dist/esm/persistence/FlowsPersistenceVolatile.d.ts +0 -41
  221. package/dist/esm/persistence/FlowsPersistenceVolatile.d.ts.map +0 -1
  222. package/dist/esm/persistence/FlowsPersistenceVolatile.js +0 -171
  223. package/dist/esm/persistence/FlowsPersistenceVolatile.js.map +0 -1
  224. package/dist/esm/persistence/GptConfigsPersistence.d.ts +0 -12
  225. package/dist/esm/persistence/GptConfigsPersistence.d.ts.map +0 -1
  226. package/dist/esm/persistence/GptConfigsPersistence.js +0 -3
  227. package/dist/esm/persistence/GptConfigsPersistence.js.map +0 -1
  228. package/dist/esm/persistence/GptConfigsPersistenceSqlite.d.ts +0 -13
  229. package/dist/esm/persistence/GptConfigsPersistenceSqlite.d.ts.map +0 -1
  230. package/dist/esm/persistence/GptConfigsPersistenceSqlite.js +0 -35
  231. package/dist/esm/persistence/GptConfigsPersistenceSqlite.js.map +0 -1
  232. package/dist/esm/persistence/GptConfigsPersistenceVolatile.d.ts +0 -15
  233. package/dist/esm/persistence/GptConfigsPersistenceVolatile.d.ts.map +0 -1
  234. package/dist/esm/persistence/GptConfigsPersistenceVolatile.js +0 -31
  235. package/dist/esm/persistence/GptConfigsPersistenceVolatile.js.map +0 -1
  236. package/dist/esm/playwrightTestExtensions.d.ts +0 -155
  237. package/dist/esm/playwrightTestExtensions.d.ts.map +0 -1
  238. package/dist/esm/playwrightTestExtensions.js +0 -688
  239. package/dist/esm/playwrightTestExtensions.js.map +0 -1
  240. package/dist/esm/utils/ToolsPluginsLoader.d.ts +0 -52
  241. package/dist/esm/utils/ToolsPluginsLoader.d.ts.map +0 -1
  242. package/dist/esm/utils/ToolsPluginsLoader.js +0 -301
  243. package/dist/esm/utils/ToolsPluginsLoader.js.map +0 -1
  244. package/dist/lib/autoTest.d.ts +0 -2
  245. package/dist/lib/autoTest.d.ts.map +0 -1
  246. package/dist/lib/autoTest.js +0 -17
  247. package/dist/lib/autoTest.js.map +0 -1
  248. package/dist/lib/constants.d.ts +0 -8
  249. package/dist/lib/constants.d.ts.map +0 -1
  250. package/dist/lib/constants.js +0 -14
  251. package/dist/lib/constants.js.map +0 -1
  252. package/dist/lib/fixtures/testExtension.d.ts +0 -10
  253. package/dist/lib/fixtures/testExtension.d.ts.map +0 -1
  254. package/dist/lib/fixtures/testExtension.js +0 -383
  255. package/dist/lib/fixtures/testExtension.js.map +0 -1
  256. package/dist/lib/types.d.ts +0 -106
  257. package/dist/lib/types.d.ts.map +0 -1
  258. package/dist/lib/types.js +0 -3
  259. package/dist/lib/types.js.map +0 -1
  260. package/dist/managers/EnvironmentDataManager.d.ts +0 -58
  261. package/dist/managers/EnvironmentDataManager.d.ts.map +0 -1
  262. package/dist/managers/EnvironmentDataManager.js +0 -134
  263. package/dist/managers/EnvironmentDataManager.js.map +0 -1
  264. package/dist/managers/ProjectStructureGenerator.d.ts +0 -62
  265. package/dist/managers/ProjectStructureGenerator.d.ts.map +0 -1
  266. package/dist/managers/ProjectStructureGenerator.js +0 -234
  267. package/dist/managers/ProjectStructureGenerator.js.map +0 -1
  268. package/dist/managers/TestFileUpdater.d.ts +0 -56
  269. package/dist/managers/TestFileUpdater.d.ts.map +0 -1
  270. package/dist/managers/TestFileUpdater.js +0 -224
  271. package/dist/managers/TestFileUpdater.js.map +0 -1
  272. package/dist/models/AskAiRequest.d.ts +0 -15
  273. package/dist/models/AskAiRequest.d.ts.map +0 -1
  274. package/dist/models/AskAiRequest.js +0 -3
  275. package/dist/models/AskAiRequest.js.map +0 -1
  276. package/dist/models/BaseToolGptParameters.d.ts +0 -10
  277. package/dist/models/BaseToolGptParameters.d.ts.map +0 -1
  278. package/dist/models/BaseToolGptParameters.js +0 -3
  279. package/dist/models/BaseToolGptParameters.js.map +0 -1
  280. package/dist/models/BrowserFramework.d.ts +0 -51
  281. package/dist/models/BrowserFramework.d.ts.map +0 -1
  282. package/dist/models/BrowserFramework.js +0 -364
  283. package/dist/models/BrowserFramework.js.map +0 -1
  284. package/dist/models/EnvironmentDatum.d.ts +0 -54
  285. package/dist/models/EnvironmentDatum.d.ts.map +0 -1
  286. package/dist/models/EnvironmentDatum.js +0 -57
  287. package/dist/models/EnvironmentDatum.js.map +0 -1
  288. package/dist/models/FlowsQuery.d.ts +0 -12
  289. package/dist/models/FlowsQuery.d.ts.map +0 -1
  290. package/dist/models/FlowsQuery.js +0 -3
  291. package/dist/models/FlowsQuery.js.map +0 -1
  292. package/dist/persistence/AgentsPersistence.d.ts +0 -12
  293. package/dist/persistence/AgentsPersistence.d.ts.map +0 -1
  294. package/dist/persistence/AgentsPersistence.js +0 -3
  295. package/dist/persistence/AgentsPersistence.js.map +0 -1
  296. package/dist/persistence/AgentsPersistenceSqlite.d.ts +0 -15
  297. package/dist/persistence/AgentsPersistenceSqlite.d.ts.map +0 -1
  298. package/dist/persistence/AgentsPersistenceSqlite.js +0 -50
  299. package/dist/persistence/AgentsPersistenceSqlite.js.map +0 -1
  300. package/dist/persistence/AgentsPersistenceVolatile.d.ts +0 -14
  301. package/dist/persistence/AgentsPersistenceVolatile.d.ts.map +0 -1
  302. package/dist/persistence/AgentsPersistenceVolatile.js +0 -26
  303. package/dist/persistence/AgentsPersistenceVolatile.js.map +0 -1
  304. package/dist/persistence/FlowsPersistence.d.ts +0 -104
  305. package/dist/persistence/FlowsPersistence.d.ts.map +0 -1
  306. package/dist/persistence/FlowsPersistence.js +0 -3
  307. package/dist/persistence/FlowsPersistence.js.map +0 -1
  308. package/dist/persistence/FlowsPersistenceAwsS3.d.ts +0 -75
  309. package/dist/persistence/FlowsPersistenceAwsS3.d.ts.map +0 -1
  310. package/dist/persistence/FlowsPersistenceAwsS3.js +0 -525
  311. package/dist/persistence/FlowsPersistenceAwsS3.js.map +0 -1
  312. package/dist/persistence/FlowsPersistenceFactory.d.ts +0 -10
  313. package/dist/persistence/FlowsPersistenceFactory.d.ts.map +0 -1
  314. package/dist/persistence/FlowsPersistenceFactory.js +0 -3
  315. package/dist/persistence/FlowsPersistenceFactory.js.map +0 -1
  316. package/dist/persistence/FlowsPersistenceFactoryImpl.d.ts +0 -57
  317. package/dist/persistence/FlowsPersistenceFactoryImpl.d.ts.map +0 -1
  318. package/dist/persistence/FlowsPersistenceFactoryImpl.js +0 -235
  319. package/dist/persistence/FlowsPersistenceFactoryImpl.js.map +0 -1
  320. package/dist/persistence/FlowsPersistenceFactoryPreset.d.ts +0 -13
  321. package/dist/persistence/FlowsPersistenceFactoryPreset.d.ts.map +0 -1
  322. package/dist/persistence/FlowsPersistenceFactoryPreset.js +0 -24
  323. package/dist/persistence/FlowsPersistenceFactoryPreset.js.map +0 -1
  324. package/dist/persistence/FlowsPersistenceFilesystem.d.ts +0 -69
  325. package/dist/persistence/FlowsPersistenceFilesystem.d.ts.map +0 -1
  326. package/dist/persistence/FlowsPersistenceFilesystem.js +0 -381
  327. package/dist/persistence/FlowsPersistenceFilesystem.js.map +0 -1
  328. package/dist/persistence/FlowsPersistenceGoogleCloudStorage.d.ts +0 -75
  329. package/dist/persistence/FlowsPersistenceGoogleCloudStorage.d.ts.map +0 -1
  330. package/dist/persistence/FlowsPersistenceGoogleCloudStorage.js +0 -485
  331. package/dist/persistence/FlowsPersistenceGoogleCloudStorage.js.map +0 -1
  332. package/dist/persistence/FlowsPersistenceSqlite.d.ts +0 -44
  333. package/dist/persistence/FlowsPersistenceSqlite.d.ts.map +0 -1
  334. package/dist/persistence/FlowsPersistenceSqlite.js +0 -264
  335. package/dist/persistence/FlowsPersistenceSqlite.js.map +0 -1
  336. package/dist/persistence/FlowsPersistenceSupabase.d.ts +0 -44
  337. package/dist/persistence/FlowsPersistenceSupabase.d.ts.map +0 -1
  338. package/dist/persistence/FlowsPersistenceSupabase.js +0 -262
  339. package/dist/persistence/FlowsPersistenceSupabase.js.map +0 -1
  340. package/dist/persistence/FlowsPersistenceVolatile.d.ts +0 -41
  341. package/dist/persistence/FlowsPersistenceVolatile.d.ts.map +0 -1
  342. package/dist/persistence/FlowsPersistenceVolatile.js +0 -171
  343. package/dist/persistence/FlowsPersistenceVolatile.js.map +0 -1
  344. package/dist/persistence/GptConfigsPersistence.d.ts +0 -12
  345. package/dist/persistence/GptConfigsPersistence.d.ts.map +0 -1
  346. package/dist/persistence/GptConfigsPersistence.js +0 -3
  347. package/dist/persistence/GptConfigsPersistence.js.map +0 -1
  348. package/dist/persistence/GptConfigsPersistenceSqlite.d.ts +0 -13
  349. package/dist/persistence/GptConfigsPersistenceSqlite.d.ts.map +0 -1
  350. package/dist/persistence/GptConfigsPersistenceSqlite.js +0 -35
  351. package/dist/persistence/GptConfigsPersistenceSqlite.js.map +0 -1
  352. package/dist/persistence/GptConfigsPersistenceVolatile.d.ts +0 -15
  353. package/dist/persistence/GptConfigsPersistenceVolatile.d.ts.map +0 -1
  354. package/dist/persistence/GptConfigsPersistenceVolatile.js +0 -31
  355. package/dist/persistence/GptConfigsPersistenceVolatile.js.map +0 -1
  356. package/dist/playwrightTestExtensions.d.ts +0 -155
  357. package/dist/playwrightTestExtensions.d.ts.map +0 -1
  358. package/dist/playwrightTestExtensions.js +0 -688
  359. package/dist/playwrightTestExtensions.js.map +0 -1
  360. package/dist/tools/CreatePageObjectModel.d.ts +0 -16
  361. package/dist/tools/CreatePageObjectModel.d.ts.map +0 -1
  362. package/dist/tools/CreatePageObjectModel.js +0 -33
  363. package/dist/tools/CreatePageObjectModel.js.map +0 -1
  364. package/dist/utils/ToolsPluginsLoader.d.ts +0 -52
  365. package/dist/utils/ToolsPluginsLoader.d.ts.map +0 -1
  366. package/dist/utils/ToolsPluginsLoader.js +0 -301
  367. package/dist/utils/ToolsPluginsLoader.js.map +0 -1
  368. /package/dist/utils/{jsonSchemaUtils.d.ts → JsonSchemaUtils.d.ts} +0 -0
  369. /package/dist/utils/{jsonSchemaUtils.d.ts.map → JsonSchemaUtils.d.ts.map} +0 -0
  370. /package/dist/utils/{jsonSchemaUtils.js → JsonSchemaUtils.js} +0 -0
  371. /package/dist/utils/{jsonSchemaUtils.js.map → JsonSchemaUtils.js.map} +0 -0
@@ -1,106 +0,0 @@
1
- import type { Page } from '@playwright/test';
2
- import { ToolCallResult } from '../models/ToolCallResult';
3
- import { GptClient } from '../clients/GptClient';
4
- import { LanguageModel } from 'ai';
5
- import { AnalyzePageTextToolCoreParameters } from '../tools/AnalyzePageTextTool';
6
- import { JSONSchema7 } from 'json-schema';
7
- import { FlowMetadata } from '../models/FlowMetadata';
8
- import { AssertPageTextToolCoreParameters } from '../tools/AssertPageTextTool';
9
- import { AssertToolCoreParameters } from '../tools/AssertTool';
10
- import { SelectorBasedChooseSelectOptionToolParameters } from '../tools/ChooseSelectOptionTool';
11
- import { SelectorBasedClickToolParameters } from '../tools/ClickTool';
12
- import { SelectorBasedHoverOverElementToolParameters } from '../tools/HoverOverElementTool';
13
- import { SelectorBasedInputRandomizedEmailAddressToolParameters } from '../tools/InputRandomizedEmailAddressTool';
14
- import { SelectorBasedInputTextToolParameters } from '../tools/InputTextTool';
15
- import { SelectorBasedPressKeyToolParameters } from '../tools/PressKeyTool';
16
- import { ScrollPageToolCoreParameters } from '../tools/ScrollPageTool';
17
- /**
18
- * Extends the Page object with additional test-related methods.
19
- */
20
- export interface DonobuExtendedPage extends Page {
21
- /**
22
- * Run an arbitrary Donobu tool by name.
23
- */
24
- run(toolName: string, toolParams?: any, gptClientOverride?: GptClient | LanguageModel): Promise<ToolCallResult>;
25
- /**
26
- * Run an analysis on the current webpage's full raw text. Note that since this runs an analysis on the raw text,
27
- * rather than, the HTML of the page, the raw text may be a bit jumbled, have its styling lost, careful
28
- * positioning lost, etc. This tool is useful if there happens to be a lot of text on a page, and it would be
29
- * tedious to scroll through the entirety of the page in order to get enough context to run an analysis.
30
- *
31
- * If there is context relevant to running the analysis that would not be found in the webpage text itself,
32
- * perhaps context given in another message, prompt, overall object, etc, then provide it in the
33
- * "additionalRelevantContext" parameter.
34
- */
35
- analyzePageText(params: AnalyzePageTextToolCoreParameters, gptClientOverride?: GptClient | LanguageModel): Promise<ToolCallResult>;
36
- /**
37
- * Assert that given text is visible in the current page.
38
- */
39
- assertPageText(params: AssertPageTextToolCoreParameters, gptClientOverride?: GptClient | LanguageModel): Promise<ToolCallResult>;
40
- /**
41
- * Checks all of the pages in the current browser context and returns the one
42
- * matching the given URL.
43
- */
44
- changeTab(url: string): Promise<Page>;
45
- /**
46
- * Choose <option> values for a particular <select> HTML element.
47
- */
48
- chooseSelectOption(params: SelectorBasedChooseSelectOptionToolParameters): Promise<ToolCallResult>;
49
- /**
50
- * Click an element on a webpage.
51
- */
52
- clickElement(params: SelectorBasedClickToolParameters): Promise<ToolCallResult>;
53
- /**
54
- * Perform an analysis of the cookies for the current web browsing session.
55
- */
56
- createCookieReport(gptClientOverride?: GptClient | LanguageModel): Promise<ToolCallResult>;
57
- /**
58
- * Return an object conforming to the given JSON-schema. The object will be
59
- * generated considering the following:
60
- * - The given instruction (if any).
61
- * - A screenshot of the current state of the page.
62
- * - The history of actions taken on the page.
63
- */
64
- extract(params: {
65
- instruction?: string;
66
- schema: JSONSchema7;
67
- }, gptClientOverride?: GptClient | LanguageModel): Promise<Record<string, unknown>>;
68
- /**
69
- * Hover the mouse over a specified element on a webpage.
70
- */
71
- hoverOverElement(params: SelectorBasedHoverOverElementToolParameters): Promise<ToolCallResult>;
72
- /**
73
- * Create a new randomized email address based on a given email and inputs it to a specific input text field.
74
- * For example if passed "foo@gmail.com", this tool will create "foo+SOMETHING_RANDOM@gmail.com", where
75
- * SOMETHING_RANDOM is a random string of characters safe for use in an email address, and input it in the
76
- * specified text field.
77
- */
78
- inputRandomizedEmailAddress(params: SelectorBasedInputRandomizedEmailAddressToolParameters): Promise<ToolCallResult>;
79
- /**
80
- * Input text to a webpage's text input box.
81
- */
82
- inputText(params: SelectorBasedInputTextToolParameters): Promise<ToolCallResult>;
83
- /**
84
- * Press a single key. Note that if there is existing text in the element, it is appended rather than cleared.
85
- *
86
- * Generally, prefer using the 'inputText' tool instead as it automatically clears existing text
87
- * and it allows the input of multiple characters at a time. The only advantage this tool has is
88
- * that it allows the passing of control keys like "Tab", "Backspace", etc.
89
- */
90
- pressKey(params: SelectorBasedPressKeyToolParameters): Promise<ToolCallResult>;
91
- /**
92
- * Run an web accessibility (i.e. axe-core) test on the current webpage.
93
- */
94
- runAccessibilityTest(): Promise<ToolCallResult>;
95
- /**
96
- * Scroll the current page up or down by one viewport.
97
- */
98
- scroll(params: ScrollPageToolCoreParameters): Promise<ToolCallResult>;
99
- /**
100
- * Visually assert that a given condition (i.e. the 'assertionToTestFor' field) holds true, using a screenshot of
101
- * the current webpage.
102
- */
103
- visuallyAssert(params: AssertToolCoreParameters, gptClientOverride?: GptClient | LanguageModel): Promise<ToolCallResult>;
104
- _donobuFlowMetadata: FlowMetadata;
105
- }
106
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/lib/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,IAAI,CAAC;AACnC,OAAO,EAAE,iCAAiC,EAAE,MAAM,8BAA8B,CAAC;AACjF,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,gCAAgC,EAAE,MAAM,6BAA6B,CAAC;AAC/E,OAAO,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,EAAE,6CAA6C,EAAE,MAAM,iCAAiC,CAAC;AAChG,OAAO,EAAE,gCAAgC,EAAE,MAAM,oBAAoB,CAAC;AACtE,OAAO,EAAE,2CAA2C,EAAE,MAAM,+BAA+B,CAAC;AAC5F,OAAO,EAAE,sDAAsD,EAAE,MAAM,0CAA0C,CAAC;AAClH,OAAO,EAAE,oCAAoC,EAAE,MAAM,wBAAwB,CAAC;AAC9E,OAAO,EAAE,mCAAmC,EAAE,MAAM,uBAAuB,CAAC;AAC5E,OAAO,EAAE,4BAA4B,EAAE,MAAM,yBAAyB,CAAC;AAEvE;;GAEG;AACH,MAAM,WAAW,kBAAmB,SAAQ,IAAI;IAC9C;;OAEG;IACH,GAAG,CACD,QAAQ,EAAE,MAAM,EAChB,UAAU,CAAC,EAAE,GAAG,EAChB,iBAAiB,CAAC,EAAE,SAAS,GAAG,aAAa,GAC5C,OAAO,CAAC,cAAc,CAAC,CAAC;IAC3B;;;;;;;;;OASG;IACH,eAAe,CACb,MAAM,EAAE,iCAAiC,EACzC,iBAAiB,CAAC,EAAE,SAAS,GAAG,aAAa,GAC5C,OAAO,CAAC,cAAc,CAAC,CAAC;IAC3B;;OAEG;IACH,cAAc,CACZ,MAAM,EAAE,gCAAgC,EACxC,iBAAiB,CAAC,EAAE,SAAS,GAAG,aAAa,GAC5C,OAAO,CAAC,cAAc,CAAC,CAAC;IAC3B;;;OAGG;IACH,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACtC;;OAEG;IACH,kBAAkB,CAChB,MAAM,EAAE,6CAA6C,GACpD,OAAO,CAAC,cAAc,CAAC,CAAC;IAC3B;;OAEG;IACH,YAAY,CACV,MAAM,EAAE,gCAAgC,GACvC,OAAO,CAAC,cAAc,CAAC,CAAC;IAC3B;;OAEG;IACH,kBAAkB,CAChB,iBAAiB,CAAC,EAAE,SAAS,GAAG,aAAa,GAC5C,OAAO,CAAC,cAAc,CAAC,CAAC;IAC3B;;;;;;OAMG;IACH,OAAO,CACL,MAAM,EAAE;QACN,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,MAAM,EAAE,WAAW,CAAC;KACrB,EACD,iBAAiB,CAAC,EAAE,SAAS,GAAG,aAAa,GAC5C,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IACpC;;OAEG;IACH,gBAAgB,CACd,MAAM,EAAE,2CAA2C,GAClD,OAAO,CAAC,cAAc,CAAC,CAAC;IAC3B;;;;;OAKG;IACH,2BAA2B,CACzB,MAAM,EAAE,sDAAsD,GAC7D,OAAO,CAAC,cAAc,CAAC,CAAC;IAC3B;;OAEG;IACH,SAAS,CACP,MAAM,EAAE,oCAAoC,GAC3C,OAAO,CAAC,cAAc,CAAC,CAAC;IAC3B;;;;;;OAMG;IACH,QAAQ,CACN,MAAM,EAAE,mCAAmC,GAC1C,OAAO,CAAC,cAAc,CAAC,CAAC;IAC3B;;OAEG;IACH,oBAAoB,IAAI,OAAO,CAAC,cAAc,CAAC,CAAC;IAChD;;OAEG;IACH,MAAM,CAAC,MAAM,EAAE,4BAA4B,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;IACtE;;;OAGG;IACH,cAAc,CACZ,MAAM,EAAE,wBAAwB,EAChC,iBAAiB,CAAC,EAAE,SAAS,GAAG,aAAa,GAC5C,OAAO,CAAC,cAAc,CAAC,CAAC;IAE3B,mBAAmB,EAAE,YAAY,CAAC;CACnC"}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/lib/types.ts"],"names":[],"mappings":""}
@@ -1,58 +0,0 @@
1
- import { EnvPersistenceFactory } from '../persistence/env/EnvPersistenceFactory';
2
- /**
3
- * Manager class for handling environment data operations with business logic constraints.
4
- */
5
- export declare class EnvironmentDataManager {
6
- private readonly envPersistenceFactory;
7
- /**
8
- * Maximum length allowed for an environment data key.
9
- */
10
- private static readonly MAX_KEY_LENGTH;
11
- /**
12
- * Maximum length allowed for environment data value
13
- */
14
- private static readonly MAX_VALUE_LENGTH;
15
- constructor(envPersistenceFactory: EnvPersistenceFactory);
16
- /**
17
- * Stores an environment datum with validation.
18
- *
19
- * @param key The key for the environment datum
20
- * @param value The value to store
21
- * @throws InvalidParamValueException if the key or value is invalid
22
- */
23
- setEnvironmentDatum(key: string, value: string): Promise<void>;
24
- /**
25
- * Deletes an environment datum by key.
26
- *
27
- * @param key The key of the datum to delete
28
- */
29
- deleteEnvironmentDatum(key: string): Promise<void>;
30
- /**
31
- * Retrieves an environment datum by key.
32
- *
33
- * @param key The key of the datum to retrieve
34
- * @returns The environment datum value or undefined if not found
35
- */
36
- getEnvironmentDatum(key: string): Promise<string | undefined>;
37
- /**
38
- * Retrieves all environment data.
39
- *
40
- * @returns A record of all environment data where keys are datum keys and values are datum values
41
- */
42
- getEnvironmentData(): Promise<Record<string, string>>;
43
- /**
44
- * Validates an environment data key against business rules.
45
- *
46
- * @param key The key to validate
47
- * @throws InvalidParamValueException if validation fails
48
- */
49
- private validateKey;
50
- /**
51
- * Validates an environment data value against business rules.
52
- *
53
- * @param value The value to validate
54
- * @throws InvalidParamValueException if validation fails
55
- */
56
- private validateValue;
57
- }
58
- //# sourceMappingURL=EnvironmentDataManager.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"EnvironmentDataManager.d.ts","sourceRoot":"","sources":["../../../src/managers/EnvironmentDataManager.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,qBAAqB,EAAE,MAAM,0CAA0C,CAAC;AAEjF;;GAEG;AACH,qBAAa,sBAAsB;IAY/B,OAAO,CAAC,QAAQ,CAAC,qBAAqB;IAXxC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAO;IAE7C;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAAe;gBAGpC,qBAAqB,EAAE,qBAAqB;IAG/D;;;;;;OAMG;IACU,mBAAmB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAc3E;;;;OAIG;IACU,sBAAsB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAW/D;;;;;OAKG;IACU,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAuB1E;;;;OAIG;IACU,kBAAkB,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAyBlE;;;;;OAKG;IACH,OAAO,CAAC,WAAW;IAyBnB;;;;;OAKG;IACH,OAAO,CAAC,aAAa;CAmBtB"}
@@ -1,134 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.EnvironmentDataManager = void 0;
4
- const InvalidParamValueException_1 = require("../exceptions/InvalidParamValueException");
5
- const Logger_1 = require("../utils/Logger");
6
- /**
7
- * Manager class for handling environment data operations with business logic constraints.
8
- */
9
- class EnvironmentDataManager {
10
- constructor(envPersistenceFactory) {
11
- this.envPersistenceFactory = envPersistenceFactory;
12
- }
13
- /**
14
- * Stores an environment datum with validation.
15
- *
16
- * @param key The key for the environment datum
17
- * @param value The value to store
18
- * @throws InvalidParamValueException if the key or value is invalid
19
- */
20
- async setEnvironmentDatum(key, value) {
21
- // Validate the key and value
22
- this.validateKey(key);
23
- this.validateValue(value);
24
- // Store in all persistence layers
25
- const persistenceLayers = await this.envPersistenceFactory.createPersistenceLayers();
26
- for (const persistence of persistenceLayers) {
27
- await persistence.setEnvironmentDatum(key, value);
28
- }
29
- }
30
- /**
31
- * Deletes an environment datum by key.
32
- *
33
- * @param key The key of the datum to delete
34
- */
35
- async deleteEnvironmentDatum(key) {
36
- this.validateKey(key);
37
- const persistenceLayers = await this.envPersistenceFactory.createPersistenceLayers();
38
- for (const persistence of persistenceLayers) {
39
- await persistence.deleteEnvironmentDatum(key);
40
- }
41
- }
42
- /**
43
- * Retrieves an environment datum by key.
44
- *
45
- * @param key The key of the datum to retrieve
46
- * @returns The environment datum value or undefined if not found
47
- */
48
- async getEnvironmentDatum(key) {
49
- this.validateKey(key);
50
- const persistenceLayers = await this.envPersistenceFactory.createPersistenceLayers();
51
- for (const persistence of persistenceLayers) {
52
- try {
53
- const value = await persistence.getEnvironmentDatum(key);
54
- if (value !== undefined) {
55
- return value;
56
- }
57
- }
58
- catch (error) {
59
- Logger_1.appLogger.warn(`Failed to get environment datum from persistence layer: ${error}`);
60
- }
61
- }
62
- return undefined;
63
- }
64
- /**
65
- * Retrieves all environment data.
66
- *
67
- * @returns A record of all environment data where keys are datum keys and values are datum values
68
- */
69
- async getEnvironmentData() {
70
- const result = {};
71
- const persistenceLayers = await this.envPersistenceFactory.createPersistenceLayers();
72
- for (const persistence of persistenceLayers) {
73
- try {
74
- const data = await persistence.getEnvironmentData();
75
- // Merge data, giving preference to values from earlier persistence layers
76
- for (const [key, value] of Object.entries(data)) {
77
- if (!(key in result)) {
78
- result[key] = value;
79
- }
80
- }
81
- }
82
- catch (error) {
83
- Logger_1.appLogger.warn(`Failed to get environment data from persistence layer: ${error}`);
84
- }
85
- }
86
- return result;
87
- }
88
- /**
89
- * Validates an environment data key against business rules.
90
- *
91
- * @param key The key to validate
92
- * @throws InvalidParamValueException if validation fails
93
- */
94
- validateKey(key) {
95
- // Check if key is provided
96
- if (!key || key.trim().length === 0) {
97
- throw new InvalidParamValueException_1.InvalidParamValueException('key', key, 'key cannot be empty');
98
- }
99
- // Check length constraint
100
- if (key.length > EnvironmentDataManager.MAX_KEY_LENGTH) {
101
- throw new InvalidParamValueException_1.InvalidParamValueException('key', key, `exceeds maximum allowed length of ${EnvironmentDataManager.MAX_KEY_LENGTH} characters`);
102
- }
103
- // Check for invalid characters
104
- if (/[\s\\\/\:\*\?\"\<\>\|]/.test(key)) {
105
- throw new InvalidParamValueException_1.InvalidParamValueException('key', key, 'key contains invalid characters (space or one of \\ / : * ? " < > |)');
106
- }
107
- }
108
- /**
109
- * Validates an environment data value against business rules.
110
- *
111
- * @param value The value to validate
112
- * @throws InvalidParamValueException if validation fails
113
- */
114
- validateValue(value) {
115
- // Check if value is provided
116
- if (value === undefined || value === null) {
117
- throw new InvalidParamValueException_1.InvalidParamValueException('value', 'undefined', 'value cannot be undefined or null');
118
- }
119
- // Check length constraint
120
- if (value.length > EnvironmentDataManager.MAX_VALUE_LENGTH) {
121
- throw new InvalidParamValueException_1.InvalidParamValueException('value', `${value.length} characters`, `exceeds maximum allowed length of ${EnvironmentDataManager.MAX_VALUE_LENGTH} characters`);
122
- }
123
- }
124
- }
125
- exports.EnvironmentDataManager = EnvironmentDataManager;
126
- /**
127
- * Maximum length allowed for an environment data key.
128
- */
129
- EnvironmentDataManager.MAX_KEY_LENGTH = 128;
130
- /**
131
- * Maximum length allowed for environment data value
132
- */
133
- EnvironmentDataManager.MAX_VALUE_LENGTH = 1024 * 1024; // 1MB
134
- //# sourceMappingURL=EnvironmentDataManager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"EnvironmentDataManager.js","sourceRoot":"","sources":["../../../src/managers/EnvironmentDataManager.ts"],"names":[],"mappings":"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"}
@@ -1,62 +0,0 @@
1
- import { FlowMetadata } from '../models/FlowMetadata';
2
- import { ProposedToolCall } from '../models/ProposedToolCall';
3
- export interface ProjectFile {
4
- path: string;
5
- content: string;
6
- }
7
- export interface GeneratedProject {
8
- files: ProjectFile[];
9
- summary: string;
10
- }
11
- export declare class ProjectStructureGenerator {
12
- private readonly codeGenerator;
13
- constructor();
14
- /**
15
- * Generates a complete Playwright project structure with dependency management
16
- */
17
- generateProject(flowsWithToolCalls: Array<{
18
- metadata: FlowMetadata;
19
- toolCalls: ProposedToolCall<any>[];
20
- }>): Promise<GeneratedProject>;
21
- /**
22
- * Generates the playwright.config.ts file with project dependencies
23
- */
24
- private generatePlaywrightConfig;
25
- /**
26
- * Generates a single project configuration
27
- */
28
- private generateProjectConfig;
29
- /**
30
- * Gets project dependencies for a given flow
31
- */
32
- private getProjectDependencies;
33
- /**
34
- * Generates test files for all flows
35
- */
36
- private generateTestFiles;
37
- /**
38
- * Generates package.json
39
- */
40
- private generatePackageJson;
41
- /**
42
- * Generates README.md
43
- */
44
- private generateReadme;
45
- /**
46
- * Generates a summary of the generated project
47
- */
48
- private generateProjectSummary;
49
- /**
50
- * Gets a project name for a flow
51
- */
52
- private getProjectName;
53
- /**
54
- * Gets a test file name for a flow
55
- */
56
- private getTestFileName;
57
- /**
58
- * Prettifies generated code
59
- */
60
- private prettifyCode;
61
- }
62
- //# sourceMappingURL=ProjectStructureGenerator.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ProjectStructureGenerator.d.ts","sourceRoot":"","sources":["../../../src/managers/ProjectStructureGenerator.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAQ9D,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,WAAW,EAAE,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,yBAAyB;IACpC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAgB;;IAM9C;;OAEG;IACU,eAAe,CAC1B,kBAAkB,EAAE,KAAK,CAAC;QACxB,QAAQ,EAAE,YAAY,CAAC;QACvB,SAAS,EAAE,gBAAgB,CAAC,GAAG,CAAC,EAAE,CAAC;KACpC,CAAC,GACD,OAAO,CAAC,gBAAgB,CAAC;IAmC5B;;OAEG;YACW,wBAAwB;IAkCtC;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAwB7B;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAW9B;;OAEG;YACW,iBAAiB;IAwB/B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAqB3B;;OAEG;IACH,OAAO,CAAC,cAAc;IA+CtB;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAsB9B;;OAEG;IACH,OAAO,CAAC,cAAc;IAOtB;;OAEG;IACH,OAAO,CAAC,eAAe;IAKvB;;OAEG;YACW,YAAY;CAe3B"}
@@ -1,234 +0,0 @@
1
- "use strict";
2
- // src/managers/ProjectStructureGenerator.ts
3
- Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.ProjectStructureGenerator = void 0;
5
- const FlowDependencyAnalyzer_1 = require("./FlowDependencyAnalyzer");
6
- const CodeGenerator_1 = require("./CodeGenerator");
7
- const main_1 = require("../main");
8
- class ProjectStructureGenerator {
9
- constructor() {
10
- this.codeGenerator = new CodeGenerator_1.CodeGenerator();
11
- }
12
- /**
13
- * Generates a complete Playwright project structure with dependency management
14
- */
15
- async generateProject(flowsWithToolCalls) {
16
- // Analyze dependencies
17
- const dependencyGraph = FlowDependencyAnalyzer_1.FlowDependencyAnalyzer.analyzeDependencies(flowsWithToolCalls.map((f) => f.metadata));
18
- const files = [];
19
- // Generate playwright.config.ts
20
- files.push({
21
- path: 'playwright.config.ts',
22
- content: await this.generatePlaywrightConfig(dependencyGraph),
23
- });
24
- // Generate individual test files
25
- const testFiles = await this.generateTestFiles(flowsWithToolCalls);
26
- files.push(...testFiles);
27
- // Generate package.json if needed
28
- files.push({
29
- path: 'package.json',
30
- content: this.generatePackageJson(),
31
- });
32
- // Generate README
33
- files.push({
34
- path: 'README.md',
35
- content: this.generateReadme(dependencyGraph),
36
- });
37
- const summary = this.generateProjectSummary(dependencyGraph);
38
- return { files, summary };
39
- }
40
- /**
41
- * Generates the playwright.config.ts file with project dependencies
42
- */
43
- async generatePlaywrightConfig(graph) {
44
- const projects = [];
45
- // Create a project for each flow (both single and multiple flows in waves get individual projects)
46
- graph.executionOrder.forEach((wave) => {
47
- wave.forEach((flowId) => {
48
- const flow = graph.flows.get(flowId);
49
- const projectName = this.getProjectName(flow);
50
- const dependencies = this.getProjectDependencies(flowId, graph);
51
- projects.push(this.generateProjectConfig(projectName, flow, dependencies));
52
- });
53
- });
54
- const config = `import { defineConfig, devices } from 'donobu';
55
-
56
- export default defineConfig({
57
- testDir: './tests',
58
- projects: [
59
- ${projects.map((p) => ' ' + p).join(',\n')}
60
- ],
61
- reporter: [
62
- ["github"],
63
- ["json", { outputFile: "test-results/playwright-report.json" }],
64
- ],
65
- });`;
66
- return this.prettifyCode(config);
67
- }
68
- /**
69
- * Generates a single project configuration
70
- */
71
- generateProjectConfig(projectName, flow, dependencies) {
72
- const testMatch = `tests/${this.getTestFileName(flow)}`;
73
- const deps = dependencies.length > 0
74
- ? `\n dependencies: [${dependencies.map((d) => `'${d}'`).join(', ')}],`
75
- : '';
76
- // Get device name from flow config, default to 'Desktop Chromium'
77
- const deviceName = flow.browser?.using?.type === 'device'
78
- ? flow.browser.using.deviceName || 'Desktop Chromium'
79
- : 'Desktop Chromium';
80
- return `{
81
- name: '${projectName}',
82
- testMatch: '${testMatch}',${deps}
83
- use: { ...devices['${deviceName}'] },
84
- }`;
85
- }
86
- /**
87
- * Gets project dependencies for a given flow
88
- */
89
- getProjectDependencies(flowId, graph) {
90
- const dependencies = graph.dependencies.get(flowId) || [];
91
- return dependencies.map((depId) => {
92
- const depFlow = graph.flows.get(depId);
93
- return this.getProjectName(depFlow);
94
- });
95
- }
96
- /**
97
- * Generates test files for all flows
98
- */
99
- async generateTestFiles(flowsWithToolCalls) {
100
- const files = [];
101
- for (const { metadata, toolCalls } of flowsWithToolCalls) {
102
- const fileName = this.getTestFileName(metadata);
103
- const content = await this.codeGenerator.getFlowAsPlaywrightScript(metadata, toolCalls);
104
- files.push({
105
- path: `tests/${fileName}`,
106
- content,
107
- });
108
- }
109
- return files;
110
- }
111
- /**
112
- * Generates package.json
113
- */
114
- generatePackageJson() {
115
- return JSON.stringify({
116
- name: 'generated-playwright-tests',
117
- version: '1.0.0',
118
- description: 'Generated Playwright tests with flow dependencies',
119
- scripts: {
120
- test: 'playwright test',
121
- 'test:headed': 'playwright test --headed',
122
- 'test:debug': 'playwright test --debug',
123
- },
124
- devDependencies: {
125
- '@playwright/test': '^1.40.0',
126
- donobu: 'latest',
127
- },
128
- }, null, 2);
129
- }
130
- /**
131
- * Generates README.md
132
- */
133
- generateReadme(graph) {
134
- const dependencySummary = FlowDependencyAnalyzer_1.FlowDependencyAnalyzer.getDependencySummary(graph);
135
- return `# Generated Playwright Tests
136
-
137
- This project contains automatically generated Playwright tests with proper dependency management.
138
-
139
- ## Installation
140
-
141
- \`\`\`bash
142
- npm install
143
- npx playwright install
144
- \`\`\`
145
-
146
- ## Running Tests
147
-
148
- \`\`\`bash
149
- # Run all tests respecting dependencies
150
- npm test
151
-
152
- # Run tests in headed mode
153
- npm run test:headed
154
-
155
- # Debug tests
156
- npm run test:debug
157
- \`\`\`
158
-
159
- ## Test Dependencies
160
-
161
- ${dependencySummary}
162
-
163
- ## Notes
164
-
165
- - Tests are organized into Playwright projects to manage dependencies
166
- - Each flow runs in the correct order based on browser state dependencies
167
- - Independent flows can run in parallel within the same wave
168
- - Browser state is automatically managed between dependent flows
169
-
170
- ## Generated Files
171
-
172
- - \`playwright.config.ts\` - Playwright configuration with project dependencies
173
- - \`tests/\` - Individual test files for each flow
174
- - \`package.json\` - Project dependencies and scripts
175
- `;
176
- }
177
- /**
178
- * Generates a summary of the generated project
179
- */
180
- generateProjectSummary(graph) {
181
- const lines = [];
182
- lines.push('Generated Playwright Project Summary:');
183
- lines.push(`- ${graph.flows.size} test files generated`);
184
- lines.push(`- ${graph.executionOrder.length} execution waves configured`);
185
- lines.push(`- ${graph.independentFlows.length} independent flows`);
186
- const dependentFlows = graph.flows.size - graph.independentFlows.length;
187
- if (dependentFlows > 0) {
188
- lines.push(`- ${dependentFlows} flows with dependencies`);
189
- }
190
- lines.push('');
191
- lines.push('To run the tests:');
192
- lines.push('1. npm install');
193
- lines.push('2. npx playwright install');
194
- lines.push('3. npm test');
195
- return lines.join('\n');
196
- }
197
- /**
198
- * Gets a project name for a flow
199
- */
200
- getProjectName(flow) {
201
- if (flow.name) {
202
- return flow.name.replace(/[^a-zA-Z0-9-_]/g, '-');
203
- }
204
- return `flow-${flow.id.substring(0, 8)}`;
205
- }
206
- /**
207
- * Gets a test file name for a flow
208
- */
209
- getTestFileName(flow) {
210
- const projectName = this.getProjectName(flow);
211
- return `${projectName}.spec.ts`;
212
- }
213
- /**
214
- * Prettifies generated code
215
- */
216
- async prettifyCode(code) {
217
- try {
218
- const prettier = require('prettier');
219
- return prettier.format(code, {
220
- parser: 'typescript',
221
- semi: true,
222
- singleQuote: true,
223
- trailingComma: 'es5',
224
- });
225
- }
226
- catch (error) {
227
- main_1.appLogger.error('Failed to format code with Prettier:', error);
228
- // If prettier fails, return the original code
229
- return code;
230
- }
231
- }
232
- }
233
- exports.ProjectStructureGenerator = ProjectStructureGenerator;
234
- //# sourceMappingURL=ProjectStructureGenerator.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ProjectStructureGenerator.js","sourceRoot":"","sources":["../../../src/managers/ProjectStructureGenerator.ts"],"names":[],"mappings":"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"}