donobu 2.16.0 → 2.17.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 (527) hide show
  1. package/dist/apis/EnvDataApi.d.ts +26 -0
  2. package/dist/apis/EnvDataApi.d.ts.map +1 -0
  3. package/dist/apis/EnvDataApi.js +59 -0
  4. package/dist/apis/EnvDataApi.js.map +1 -0
  5. package/dist/apis/EnvironmentDataApi.d.ts +26 -0
  6. package/dist/apis/EnvironmentDataApi.d.ts.map +1 -0
  7. package/dist/apis/EnvironmentDataApi.js +59 -0
  8. package/dist/apis/EnvironmentDataApi.js.map +1 -0
  9. package/dist/apis/FlowsApi.d.ts +4 -0
  10. package/dist/apis/FlowsApi.d.ts.map +1 -1
  11. package/dist/apis/FlowsApi.js +26 -2
  12. package/dist/apis/FlowsApi.js.map +1 -1
  13. package/dist/apis/FlowsFilesApi.d.ts +1 -1
  14. package/dist/apis/FlowsFilesApi.d.ts.map +1 -1
  15. package/dist/apis/SpecialFlowsApi.js +1 -1
  16. package/dist/apis/SpecialFlowsApi.js.map +1 -1
  17. package/dist/assets/generated/parameter-schemas.json +22 -8
  18. package/dist/assets/generated/version +1 -1
  19. package/dist/esm/apis/EnvDataApi.d.ts +26 -0
  20. package/dist/esm/apis/EnvDataApi.d.ts.map +1 -0
  21. package/dist/esm/apis/EnvDataApi.js +59 -0
  22. package/dist/esm/apis/EnvDataApi.js.map +1 -0
  23. package/dist/esm/apis/EnvironmentDataApi.d.ts +26 -0
  24. package/dist/esm/apis/EnvironmentDataApi.d.ts.map +1 -0
  25. package/dist/esm/apis/EnvironmentDataApi.js +59 -0
  26. package/dist/esm/apis/EnvironmentDataApi.js.map +1 -0
  27. package/dist/esm/apis/FlowsApi.d.ts +4 -0
  28. package/dist/esm/apis/FlowsApi.d.ts.map +1 -1
  29. package/dist/esm/apis/FlowsApi.js +26 -2
  30. package/dist/esm/apis/FlowsApi.js.map +1 -1
  31. package/dist/esm/apis/FlowsFilesApi.d.ts +1 -1
  32. package/dist/esm/apis/FlowsFilesApi.d.ts.map +1 -1
  33. package/dist/esm/apis/SpecialFlowsApi.js +1 -1
  34. package/dist/esm/apis/SpecialFlowsApi.js.map +1 -1
  35. package/dist/esm/assets/generated/parameter-schemas.json +22 -8
  36. package/dist/esm/assets/generated/version +1 -1
  37. package/dist/esm/lib/DonobuExtendedPage.d.ts +106 -0
  38. package/dist/esm/lib/DonobuExtendedPage.d.ts.map +1 -0
  39. package/dist/esm/lib/DonobuExtendedPage.js +3 -0
  40. package/dist/esm/lib/DonobuExtendedPage.js.map +1 -0
  41. package/dist/esm/lib/constants.d.ts +8 -0
  42. package/dist/esm/lib/constants.d.ts.map +1 -0
  43. package/dist/esm/lib/constants.js +14 -0
  44. package/dist/esm/lib/constants.js.map +1 -0
  45. package/dist/esm/lib/fixtures/browserState.d.ts +6 -0
  46. package/dist/esm/lib/fixtures/browserState.d.ts.map +1 -0
  47. package/dist/esm/lib/fixtures/browserState.js +15 -0
  48. package/dist/esm/lib/fixtures/browserState.js.map +1 -0
  49. package/dist/esm/lib/fixtures/gptClients.d.ts +40 -0
  50. package/dist/esm/lib/fixtures/gptClients.d.ts.map +1 -0
  51. package/dist/esm/lib/fixtures/gptClients.js +187 -0
  52. package/dist/esm/lib/fixtures/gptClients.js.map +1 -0
  53. package/dist/esm/lib/fixtures/testExtension.d.ts +10 -0
  54. package/dist/esm/lib/fixtures/testExtension.d.ts.map +1 -0
  55. package/dist/esm/lib/fixtures/testExtension.js +383 -0
  56. package/dist/esm/lib/fixtures/testExtension.js.map +1 -0
  57. package/dist/esm/lib/testExtension.d.ts +10 -0
  58. package/dist/esm/lib/testExtension.d.ts.map +1 -0
  59. package/dist/esm/lib/testExtension.js +383 -0
  60. package/dist/esm/lib/testExtension.js.map +1 -0
  61. package/dist/esm/lib/types.d.ts +106 -0
  62. package/dist/esm/lib/types.d.ts.map +1 -0
  63. package/dist/esm/lib/types.js +3 -0
  64. package/dist/esm/lib/types.js.map +1 -0
  65. package/dist/esm/lib/utils/donobuTestStack.d.ts +7 -0
  66. package/dist/esm/lib/utils/donobuTestStack.d.ts.map +1 -0
  67. package/dist/esm/lib/utils/donobuTestStack.js +31 -0
  68. package/dist/esm/lib/utils/donobuTestStack.js.map +1 -0
  69. package/dist/esm/lib/utils/selfHealing.d.ts +15 -0
  70. package/dist/esm/lib/utils/selfHealing.d.ts.map +1 -0
  71. package/dist/esm/lib/utils/selfHealing.js +89 -0
  72. package/dist/esm/lib/utils/selfHealing.js.map +1 -0
  73. package/dist/esm/main.d.ts +5 -1
  74. package/dist/esm/main.d.ts.map +1 -1
  75. package/dist/esm/main.js +8 -5
  76. package/dist/esm/main.js.map +1 -1
  77. package/dist/esm/managers/AdminApiController.d.ts.map +1 -1
  78. package/dist/esm/managers/AdminApiController.js +7 -0
  79. package/dist/esm/managers/AdminApiController.js.map +1 -1
  80. package/dist/esm/managers/AgentsManager.d.ts +1 -1
  81. package/dist/esm/managers/AgentsManager.d.ts.map +1 -1
  82. package/dist/esm/managers/DonobuFlow.d.ts +3 -2
  83. package/dist/esm/managers/DonobuFlow.d.ts.map +1 -1
  84. package/dist/esm/managers/DonobuFlow.js +90 -21
  85. package/dist/esm/managers/DonobuFlow.js.map +1 -1
  86. package/dist/esm/managers/DonobuFlowsManager.d.ts +47 -6
  87. package/dist/esm/managers/DonobuFlowsManager.d.ts.map +1 -1
  88. package/dist/esm/managers/DonobuFlowsManager.js +104 -24
  89. package/dist/esm/managers/DonobuFlowsManager.js.map +1 -1
  90. package/dist/esm/managers/DonobuStack.d.ts +18 -4
  91. package/dist/esm/managers/DonobuStack.d.ts.map +1 -1
  92. package/dist/esm/managers/DonobuStack.js +21 -5
  93. package/dist/esm/managers/DonobuStack.js.map +1 -1
  94. package/dist/esm/managers/EnvDataManager.d.ts +58 -0
  95. package/dist/esm/managers/EnvDataManager.d.ts.map +1 -0
  96. package/dist/esm/managers/EnvDataManager.js +134 -0
  97. package/dist/esm/managers/EnvDataManager.js.map +1 -0
  98. package/dist/esm/managers/EnvironmentDataManager.d.ts +58 -0
  99. package/dist/esm/managers/EnvironmentDataManager.d.ts.map +1 -0
  100. package/dist/esm/managers/EnvironmentDataManager.js +134 -0
  101. package/dist/esm/managers/EnvironmentDataManager.js.map +1 -0
  102. package/dist/esm/managers/GptConfigsManager.d.ts +1 -1
  103. package/dist/esm/managers/GptConfigsManager.d.ts.map +1 -1
  104. package/dist/esm/managers/PageInspector.d.ts +0 -1
  105. package/dist/esm/managers/PageInspector.d.ts.map +1 -1
  106. package/dist/esm/managers/PageInspector.js +29 -26
  107. package/dist/esm/managers/PageInspector.js.map +1 -1
  108. package/dist/esm/managers/ToolManager.d.ts +10 -0
  109. package/dist/esm/managers/ToolManager.d.ts.map +1 -1
  110. package/dist/esm/managers/ToolManager.js +46 -3
  111. package/dist/esm/managers/ToolManager.js.map +1 -1
  112. package/dist/esm/models/BrowserConfig.d.ts +1 -6
  113. package/dist/esm/models/BrowserConfig.d.ts.map +1 -1
  114. package/dist/esm/models/BrowserFramework.d.ts +2 -6
  115. package/dist/esm/models/BrowserFramework.d.ts.map +1 -1
  116. package/dist/esm/models/BrowserFramework.js +4 -22
  117. package/dist/esm/models/BrowserFramework.js.map +1 -1
  118. package/dist/esm/models/CreateDonobuFlow.d.ts +4 -0
  119. package/dist/esm/models/CreateDonobuFlow.d.ts.map +1 -1
  120. package/dist/esm/models/EnvironmentDatum.d.ts +54 -0
  121. package/dist/esm/models/EnvironmentDatum.d.ts.map +1 -0
  122. package/dist/esm/models/EnvironmentDatum.js +57 -0
  123. package/dist/esm/models/EnvironmentDatum.js.map +1 -0
  124. package/dist/esm/models/FlowMetadata.d.ts +14 -1
  125. package/dist/esm/models/FlowMetadata.d.ts.map +1 -1
  126. package/dist/esm/models/FlowMetadata.js.map +1 -1
  127. package/dist/esm/models/PaginatedResult.d.ts +10 -0
  128. package/dist/esm/models/PaginatedResult.d.ts.map +1 -0
  129. package/dist/esm/models/PaginatedResult.js +6 -0
  130. package/dist/esm/models/PaginatedResult.js.map +1 -0
  131. package/dist/esm/models/ToolCallContext.d.ts +2 -1
  132. package/dist/esm/models/ToolCallContext.d.ts.map +1 -1
  133. package/dist/esm/models/ToolTemplateDataSource.d.ts +40 -0
  134. package/dist/esm/models/ToolTemplateDataSource.d.ts.map +1 -0
  135. package/dist/esm/models/ToolTemplateDataSource.js +3 -0
  136. package/dist/esm/models/ToolTemplateDataSource.js.map +1 -0
  137. package/dist/esm/persistence/DonobuSqliteDb.d.ts.map +1 -1
  138. package/dist/esm/persistence/DonobuSqliteDb.js +12 -0
  139. package/dist/esm/persistence/DonobuSqliteDb.js.map +1 -1
  140. package/dist/esm/persistence/FlowsPersistence.d.ts +23 -14
  141. package/dist/esm/persistence/FlowsPersistence.d.ts.map +1 -1
  142. package/dist/esm/persistence/FlowsPersistenceAwsS3.d.ts +10 -5
  143. package/dist/esm/persistence/FlowsPersistenceAwsS3.d.ts.map +1 -1
  144. package/dist/esm/persistence/FlowsPersistenceAwsS3.js +79 -1
  145. package/dist/esm/persistence/FlowsPersistenceAwsS3.js.map +1 -1
  146. package/dist/esm/persistence/FlowsPersistenceFactoryImpl.js +1 -1
  147. package/dist/esm/persistence/FlowsPersistenceFactoryImpl.js.map +1 -1
  148. package/dist/esm/persistence/FlowsPersistenceFilesystem.d.ts +32 -5
  149. package/dist/esm/persistence/FlowsPersistenceFilesystem.d.ts.map +1 -1
  150. package/dist/esm/persistence/FlowsPersistenceFilesystem.js +114 -4
  151. package/dist/esm/persistence/FlowsPersistenceFilesystem.js.map +1 -1
  152. package/dist/esm/persistence/FlowsPersistenceGoogleCloudStorage.d.ts +10 -5
  153. package/dist/esm/persistence/FlowsPersistenceGoogleCloudStorage.d.ts.map +1 -1
  154. package/dist/esm/persistence/FlowsPersistenceGoogleCloudStorage.js +58 -1
  155. package/dist/esm/persistence/FlowsPersistenceGoogleCloudStorage.js.map +1 -1
  156. package/dist/esm/persistence/FlowsPersistenceSqlite.d.ts +12 -5
  157. package/dist/esm/persistence/FlowsPersistenceSqlite.d.ts.map +1 -1
  158. package/dist/esm/persistence/FlowsPersistenceSqlite.js +35 -1
  159. package/dist/esm/persistence/FlowsPersistenceSqlite.js.map +1 -1
  160. package/dist/esm/persistence/FlowsPersistenceSupabase.d.ts +10 -5
  161. package/dist/esm/persistence/FlowsPersistenceSupabase.d.ts.map +1 -1
  162. package/dist/esm/persistence/FlowsPersistenceSupabase.js +46 -1
  163. package/dist/esm/persistence/FlowsPersistenceSupabase.js.map +1 -1
  164. package/dist/esm/persistence/FlowsPersistenceVolatile.d.ts +10 -5
  165. package/dist/esm/persistence/FlowsPersistenceVolatile.d.ts.map +1 -1
  166. package/dist/esm/persistence/FlowsPersistenceVolatile.js +21 -1
  167. package/dist/esm/persistence/FlowsPersistenceVolatile.js.map +1 -1
  168. package/dist/esm/persistence/agents/AgentsPersistence.d.ts +12 -0
  169. package/dist/esm/persistence/agents/AgentsPersistence.d.ts.map +1 -0
  170. package/dist/esm/persistence/agents/AgentsPersistence.js +3 -0
  171. package/dist/esm/persistence/agents/AgentsPersistence.js.map +1 -0
  172. package/dist/esm/persistence/agents/AgentsPersistenceSqlite.d.ts +15 -0
  173. package/dist/esm/persistence/agents/AgentsPersistenceSqlite.d.ts.map +1 -0
  174. package/dist/esm/persistence/agents/AgentsPersistenceSqlite.js +50 -0
  175. package/dist/esm/persistence/agents/AgentsPersistenceSqlite.js.map +1 -0
  176. package/dist/esm/persistence/agents/AgentsPersistenceVolatile.d.ts +14 -0
  177. package/dist/esm/persistence/agents/AgentsPersistenceVolatile.d.ts.map +1 -0
  178. package/dist/esm/persistence/agents/AgentsPersistenceVolatile.js +26 -0
  179. package/dist/esm/persistence/agents/AgentsPersistenceVolatile.js.map +1 -0
  180. package/dist/esm/persistence/env/EnvPersistence.d.ts +20 -0
  181. package/dist/esm/persistence/env/EnvPersistence.d.ts.map +1 -0
  182. package/dist/esm/persistence/env/EnvPersistence.js +3 -0
  183. package/dist/esm/persistence/env/EnvPersistence.js.map +1 -0
  184. package/dist/esm/persistence/env/EnvPersistenceAwsS3.d.ts +31 -0
  185. package/dist/esm/persistence/env/EnvPersistenceAwsS3.d.ts.map +1 -0
  186. package/dist/esm/persistence/env/EnvPersistenceAwsS3.js +117 -0
  187. package/dist/esm/persistence/env/EnvPersistenceAwsS3.js.map +1 -0
  188. package/dist/esm/persistence/env/EnvPersistenceFactory.d.ts +6 -0
  189. package/dist/esm/persistence/env/EnvPersistenceFactory.d.ts.map +1 -0
  190. package/dist/esm/persistence/env/EnvPersistenceFactory.js +3 -0
  191. package/dist/esm/persistence/env/EnvPersistenceFactory.js.map +1 -0
  192. package/dist/esm/persistence/env/EnvPersistenceFactoryImpl.d.ts +45 -0
  193. package/dist/esm/persistence/env/EnvPersistenceFactoryImpl.d.ts.map +1 -0
  194. package/dist/esm/persistence/env/EnvPersistenceFactoryImpl.js +86 -0
  195. package/dist/esm/persistence/env/EnvPersistenceFactoryImpl.js.map +1 -0
  196. package/dist/esm/persistence/env/EnvPersistenceFactoryPreset.d.ts +12 -0
  197. package/dist/esm/persistence/env/EnvPersistenceFactoryPreset.d.ts.map +1 -0
  198. package/dist/esm/persistence/env/EnvPersistenceFactoryPreset.js +17 -0
  199. package/dist/esm/persistence/env/EnvPersistenceFactoryPreset.js.map +1 -0
  200. package/dist/esm/persistence/env/EnvPersistenceFilesystem.d.ts +36 -0
  201. package/dist/esm/persistence/env/EnvPersistenceFilesystem.d.ts.map +1 -0
  202. package/dist/esm/persistence/env/EnvPersistenceFilesystem.js +132 -0
  203. package/dist/esm/persistence/env/EnvPersistenceFilesystem.js.map +1 -0
  204. package/dist/esm/persistence/env/EnvPersistenceGoogleCloudStorage.d.ts +30 -0
  205. package/dist/esm/persistence/env/EnvPersistenceGoogleCloudStorage.d.ts.map +1 -0
  206. package/dist/esm/persistence/env/EnvPersistenceGoogleCloudStorage.js +131 -0
  207. package/dist/esm/persistence/env/EnvPersistenceGoogleCloudStorage.js.map +1 -0
  208. package/dist/esm/persistence/env/EnvPersistenceSqlite.d.ts +19 -0
  209. package/dist/esm/persistence/env/EnvPersistenceSqlite.d.ts.map +1 -0
  210. package/dist/esm/persistence/env/EnvPersistenceSqlite.js +54 -0
  211. package/dist/esm/persistence/env/EnvPersistenceSqlite.js.map +1 -0
  212. package/dist/esm/persistence/env/EnvPersistenceSupabase.d.ts +17 -0
  213. package/dist/esm/persistence/env/EnvPersistenceSupabase.d.ts.map +1 -0
  214. package/dist/esm/persistence/env/EnvPersistenceSupabase.js +60 -0
  215. package/dist/esm/persistence/env/EnvPersistenceSupabase.js.map +1 -0
  216. package/dist/esm/persistence/env/EnvPersistenceVolatile.d.ts +13 -0
  217. package/dist/esm/persistence/env/EnvPersistenceVolatile.d.ts.map +1 -0
  218. package/dist/esm/persistence/env/EnvPersistenceVolatile.js +31 -0
  219. package/dist/esm/persistence/env/EnvPersistenceVolatile.js.map +1 -0
  220. package/dist/esm/persistence/flows/FlowsPersistence.d.ts +87 -0
  221. package/dist/esm/persistence/flows/FlowsPersistence.d.ts.map +1 -0
  222. package/dist/esm/persistence/flows/FlowsPersistence.js +3 -0
  223. package/dist/esm/persistence/flows/FlowsPersistence.js.map +1 -0
  224. package/dist/esm/persistence/flows/FlowsPersistenceAwsS3.d.ts +71 -0
  225. package/dist/esm/persistence/flows/FlowsPersistenceAwsS3.d.ts.map +1 -0
  226. package/dist/esm/persistence/flows/FlowsPersistenceAwsS3.js +448 -0
  227. package/dist/esm/persistence/flows/FlowsPersistenceAwsS3.js.map +1 -0
  228. package/dist/esm/persistence/flows/FlowsPersistenceFactory.d.ts +10 -0
  229. package/dist/esm/persistence/flows/FlowsPersistenceFactory.d.ts.map +1 -0
  230. package/dist/esm/persistence/flows/FlowsPersistenceFactory.js +3 -0
  231. package/dist/esm/persistence/flows/FlowsPersistenceFactory.js.map +1 -0
  232. package/dist/esm/persistence/flows/FlowsPersistenceFactoryImpl.d.ts +57 -0
  233. package/dist/esm/persistence/flows/FlowsPersistenceFactoryImpl.d.ts.map +1 -0
  234. package/dist/esm/persistence/flows/FlowsPersistenceFactoryImpl.js +238 -0
  235. package/dist/esm/persistence/flows/FlowsPersistenceFactoryImpl.js.map +1 -0
  236. package/dist/esm/persistence/flows/FlowsPersistenceFactoryPreset.d.ts +13 -0
  237. package/dist/esm/persistence/flows/FlowsPersistenceFactoryPreset.d.ts.map +1 -0
  238. package/dist/esm/persistence/flows/FlowsPersistenceFactoryPreset.js +24 -0
  239. package/dist/esm/persistence/flows/FlowsPersistenceFactoryPreset.js.map +1 -0
  240. package/dist/esm/persistence/flows/FlowsPersistenceFilesystem.d.ts +52 -0
  241. package/dist/esm/persistence/flows/FlowsPersistenceFilesystem.d.ts.map +1 -0
  242. package/dist/esm/persistence/flows/FlowsPersistenceFilesystem.js +291 -0
  243. package/dist/esm/persistence/flows/FlowsPersistenceFilesystem.js.map +1 -0
  244. package/dist/esm/persistence/flows/FlowsPersistenceGoogleCloudStorage.d.ts +71 -0
  245. package/dist/esm/persistence/flows/FlowsPersistenceGoogleCloudStorage.d.ts.map +1 -0
  246. package/dist/esm/persistence/flows/FlowsPersistenceGoogleCloudStorage.js +429 -0
  247. package/dist/esm/persistence/flows/FlowsPersistenceGoogleCloudStorage.js.map +1 -0
  248. package/dist/esm/persistence/flows/FlowsPersistenceSqlite.d.ts +43 -0
  249. package/dist/esm/persistence/flows/FlowsPersistenceSqlite.d.ts.map +1 -0
  250. package/dist/esm/persistence/flows/FlowsPersistenceSqlite.js +259 -0
  251. package/dist/esm/persistence/flows/FlowsPersistenceSqlite.js.map +1 -0
  252. package/dist/esm/persistence/flows/FlowsPersistenceSupabase.d.ts +40 -0
  253. package/dist/esm/persistence/flows/FlowsPersistenceSupabase.d.ts.map +1 -0
  254. package/dist/esm/persistence/flows/FlowsPersistenceSupabase.js +218 -0
  255. package/dist/esm/persistence/flows/FlowsPersistenceSupabase.js.map +1 -0
  256. package/dist/esm/persistence/flows/FlowsPersistenceVolatile.d.ts +37 -0
  257. package/dist/esm/persistence/flows/FlowsPersistenceVolatile.d.ts.map +1 -0
  258. package/dist/esm/persistence/flows/FlowsPersistenceVolatile.js +151 -0
  259. package/dist/esm/persistence/flows/FlowsPersistenceVolatile.js.map +1 -0
  260. package/dist/esm/persistence/gptconfigs/GptConfigsPersistence.d.ts +12 -0
  261. package/dist/esm/persistence/gptconfigs/GptConfigsPersistence.d.ts.map +1 -0
  262. package/dist/esm/persistence/gptconfigs/GptConfigsPersistence.js +3 -0
  263. package/dist/esm/persistence/gptconfigs/GptConfigsPersistence.js.map +1 -0
  264. package/dist/esm/persistence/gptconfigs/GptConfigsPersistenceSqlite.d.ts +13 -0
  265. package/dist/esm/persistence/gptconfigs/GptConfigsPersistenceSqlite.d.ts.map +1 -0
  266. package/dist/esm/persistence/gptconfigs/GptConfigsPersistenceSqlite.js +35 -0
  267. package/dist/esm/persistence/gptconfigs/GptConfigsPersistenceSqlite.js.map +1 -0
  268. package/dist/esm/persistence/gptconfigs/GptConfigsPersistenceVolatile.d.ts +15 -0
  269. package/dist/esm/persistence/gptconfigs/GptConfigsPersistenceVolatile.d.ts.map +1 -0
  270. package/dist/esm/persistence/gptconfigs/GptConfigsPersistenceVolatile.js +31 -0
  271. package/dist/esm/persistence/gptconfigs/GptConfigsPersistenceVolatile.js.map +1 -0
  272. package/dist/esm/playwrightTestExtensions.d.ts.map +1 -1
  273. package/dist/esm/playwrightTestExtensions.js +31 -10
  274. package/dist/esm/playwrightTestExtensions.js.map +1 -1
  275. package/dist/esm/tools/GoToWebpageTool.d.ts.map +1 -1
  276. package/dist/esm/tools/GoToWebpageTool.js +3 -2
  277. package/dist/esm/tools/GoToWebpageTool.js.map +1 -1
  278. package/dist/esm/utils/TemplateInterpolator.d.ts +47 -0
  279. package/dist/esm/utils/TemplateInterpolator.d.ts.map +1 -0
  280. package/dist/esm/utils/TemplateInterpolator.js +352 -0
  281. package/dist/esm/utils/TemplateInterpolator.js.map +1 -0
  282. package/dist/lib/DonobuExtendedPage.d.ts +106 -0
  283. package/dist/lib/DonobuExtendedPage.d.ts.map +1 -0
  284. package/dist/lib/DonobuExtendedPage.js +3 -0
  285. package/dist/lib/DonobuExtendedPage.js.map +1 -0
  286. package/dist/lib/constants.d.ts +8 -0
  287. package/dist/lib/constants.d.ts.map +1 -0
  288. package/dist/lib/constants.js +14 -0
  289. package/dist/lib/constants.js.map +1 -0
  290. package/dist/lib/fixtures/browserState.d.ts +6 -0
  291. package/dist/lib/fixtures/browserState.d.ts.map +1 -0
  292. package/dist/lib/fixtures/browserState.js +15 -0
  293. package/dist/lib/fixtures/browserState.js.map +1 -0
  294. package/dist/lib/fixtures/gptClients.d.ts +40 -0
  295. package/dist/lib/fixtures/gptClients.d.ts.map +1 -0
  296. package/dist/lib/fixtures/gptClients.js +187 -0
  297. package/dist/lib/fixtures/gptClients.js.map +1 -0
  298. package/dist/lib/fixtures/testExtension.d.ts +10 -0
  299. package/dist/lib/fixtures/testExtension.d.ts.map +1 -0
  300. package/dist/lib/fixtures/testExtension.js +383 -0
  301. package/dist/lib/fixtures/testExtension.js.map +1 -0
  302. package/dist/lib/testExtension.d.ts +10 -0
  303. package/dist/lib/testExtension.d.ts.map +1 -0
  304. package/dist/lib/testExtension.js +383 -0
  305. package/dist/lib/testExtension.js.map +1 -0
  306. package/dist/lib/types.d.ts +106 -0
  307. package/dist/lib/types.d.ts.map +1 -0
  308. package/dist/lib/types.js +3 -0
  309. package/dist/lib/types.js.map +1 -0
  310. package/dist/lib/utils/donobuTestStack.d.ts +7 -0
  311. package/dist/lib/utils/donobuTestStack.d.ts.map +1 -0
  312. package/dist/lib/utils/donobuTestStack.js +31 -0
  313. package/dist/lib/utils/donobuTestStack.js.map +1 -0
  314. package/dist/lib/utils/selfHealing.d.ts +15 -0
  315. package/dist/lib/utils/selfHealing.d.ts.map +1 -0
  316. package/dist/lib/utils/selfHealing.js +89 -0
  317. package/dist/lib/utils/selfHealing.js.map +1 -0
  318. package/dist/main.d.ts +5 -1
  319. package/dist/main.d.ts.map +1 -1
  320. package/dist/main.js +8 -5
  321. package/dist/main.js.map +1 -1
  322. package/dist/managers/AdminApiController.d.ts.map +1 -1
  323. package/dist/managers/AdminApiController.js +7 -0
  324. package/dist/managers/AdminApiController.js.map +1 -1
  325. package/dist/managers/AgentsManager.d.ts +1 -1
  326. package/dist/managers/AgentsManager.d.ts.map +1 -1
  327. package/dist/managers/DonobuFlow.d.ts +3 -2
  328. package/dist/managers/DonobuFlow.d.ts.map +1 -1
  329. package/dist/managers/DonobuFlow.js +90 -21
  330. package/dist/managers/DonobuFlow.js.map +1 -1
  331. package/dist/managers/DonobuFlowsManager.d.ts +47 -6
  332. package/dist/managers/DonobuFlowsManager.d.ts.map +1 -1
  333. package/dist/managers/DonobuFlowsManager.js +104 -24
  334. package/dist/managers/DonobuFlowsManager.js.map +1 -1
  335. package/dist/managers/DonobuStack.d.ts +18 -4
  336. package/dist/managers/DonobuStack.d.ts.map +1 -1
  337. package/dist/managers/DonobuStack.js +21 -5
  338. package/dist/managers/DonobuStack.js.map +1 -1
  339. package/dist/managers/EnvDataManager.d.ts +58 -0
  340. package/dist/managers/EnvDataManager.d.ts.map +1 -0
  341. package/dist/managers/EnvDataManager.js +134 -0
  342. package/dist/managers/EnvDataManager.js.map +1 -0
  343. package/dist/managers/EnvironmentDataManager.d.ts +58 -0
  344. package/dist/managers/EnvironmentDataManager.d.ts.map +1 -0
  345. package/dist/managers/EnvironmentDataManager.js +134 -0
  346. package/dist/managers/EnvironmentDataManager.js.map +1 -0
  347. package/dist/managers/GptConfigsManager.d.ts +1 -1
  348. package/dist/managers/GptConfigsManager.d.ts.map +1 -1
  349. package/dist/managers/PageInspector.d.ts +0 -1
  350. package/dist/managers/PageInspector.d.ts.map +1 -1
  351. package/dist/managers/PageInspector.js +29 -26
  352. package/dist/managers/PageInspector.js.map +1 -1
  353. package/dist/managers/ToolManager.d.ts +10 -0
  354. package/dist/managers/ToolManager.d.ts.map +1 -1
  355. package/dist/managers/ToolManager.js +46 -3
  356. package/dist/managers/ToolManager.js.map +1 -1
  357. package/dist/models/BrowserConfig.d.ts +1 -6
  358. package/dist/models/BrowserConfig.d.ts.map +1 -1
  359. package/dist/models/BrowserFramework.d.ts +2 -6
  360. package/dist/models/BrowserFramework.d.ts.map +1 -1
  361. package/dist/models/BrowserFramework.js +4 -22
  362. package/dist/models/BrowserFramework.js.map +1 -1
  363. package/dist/models/CreateDonobuFlow.d.ts +4 -0
  364. package/dist/models/CreateDonobuFlow.d.ts.map +1 -1
  365. package/dist/models/EnvironmentDatum.d.ts +54 -0
  366. package/dist/models/EnvironmentDatum.d.ts.map +1 -0
  367. package/dist/models/EnvironmentDatum.js +57 -0
  368. package/dist/models/EnvironmentDatum.js.map +1 -0
  369. package/dist/models/FlowMetadata.d.ts +14 -1
  370. package/dist/models/FlowMetadata.d.ts.map +1 -1
  371. package/dist/models/FlowMetadata.js.map +1 -1
  372. package/dist/models/PaginatedResult.d.ts +10 -0
  373. package/dist/models/PaginatedResult.d.ts.map +1 -0
  374. package/dist/models/PaginatedResult.js +6 -0
  375. package/dist/models/PaginatedResult.js.map +1 -0
  376. package/dist/models/ToolCallContext.d.ts +2 -1
  377. package/dist/models/ToolCallContext.d.ts.map +1 -1
  378. package/dist/models/ToolTemplateDataSource.d.ts +40 -0
  379. package/dist/models/ToolTemplateDataSource.d.ts.map +1 -0
  380. package/dist/models/ToolTemplateDataSource.js +3 -0
  381. package/dist/models/ToolTemplateDataSource.js.map +1 -0
  382. package/dist/persistence/DonobuSqliteDb.d.ts.map +1 -1
  383. package/dist/persistence/DonobuSqliteDb.js +12 -0
  384. package/dist/persistence/DonobuSqliteDb.js.map +1 -1
  385. package/dist/persistence/FlowsPersistence.d.ts +23 -14
  386. package/dist/persistence/FlowsPersistence.d.ts.map +1 -1
  387. package/dist/persistence/FlowsPersistenceAwsS3.d.ts +10 -5
  388. package/dist/persistence/FlowsPersistenceAwsS3.d.ts.map +1 -1
  389. package/dist/persistence/FlowsPersistenceAwsS3.js +79 -1
  390. package/dist/persistence/FlowsPersistenceAwsS3.js.map +1 -1
  391. package/dist/persistence/FlowsPersistenceFactoryImpl.js +1 -1
  392. package/dist/persistence/FlowsPersistenceFactoryImpl.js.map +1 -1
  393. package/dist/persistence/FlowsPersistenceFilesystem.d.ts +32 -5
  394. package/dist/persistence/FlowsPersistenceFilesystem.d.ts.map +1 -1
  395. package/dist/persistence/FlowsPersistenceFilesystem.js +114 -4
  396. package/dist/persistence/FlowsPersistenceFilesystem.js.map +1 -1
  397. package/dist/persistence/FlowsPersistenceGoogleCloudStorage.d.ts +10 -5
  398. package/dist/persistence/FlowsPersistenceGoogleCloudStorage.d.ts.map +1 -1
  399. package/dist/persistence/FlowsPersistenceGoogleCloudStorage.js +58 -1
  400. package/dist/persistence/FlowsPersistenceGoogleCloudStorage.js.map +1 -1
  401. package/dist/persistence/FlowsPersistenceSqlite.d.ts +12 -5
  402. package/dist/persistence/FlowsPersistenceSqlite.d.ts.map +1 -1
  403. package/dist/persistence/FlowsPersistenceSqlite.js +35 -1
  404. package/dist/persistence/FlowsPersistenceSqlite.js.map +1 -1
  405. package/dist/persistence/FlowsPersistenceSupabase.d.ts +10 -5
  406. package/dist/persistence/FlowsPersistenceSupabase.d.ts.map +1 -1
  407. package/dist/persistence/FlowsPersistenceSupabase.js +46 -1
  408. package/dist/persistence/FlowsPersistenceSupabase.js.map +1 -1
  409. package/dist/persistence/FlowsPersistenceVolatile.d.ts +10 -5
  410. package/dist/persistence/FlowsPersistenceVolatile.d.ts.map +1 -1
  411. package/dist/persistence/FlowsPersistenceVolatile.js +21 -1
  412. package/dist/persistence/FlowsPersistenceVolatile.js.map +1 -1
  413. package/dist/persistence/agents/AgentsPersistence.d.ts +12 -0
  414. package/dist/persistence/agents/AgentsPersistence.d.ts.map +1 -0
  415. package/dist/persistence/agents/AgentsPersistence.js +3 -0
  416. package/dist/persistence/agents/AgentsPersistence.js.map +1 -0
  417. package/dist/persistence/agents/AgentsPersistenceSqlite.d.ts +15 -0
  418. package/dist/persistence/agents/AgentsPersistenceSqlite.d.ts.map +1 -0
  419. package/dist/persistence/agents/AgentsPersistenceSqlite.js +50 -0
  420. package/dist/persistence/agents/AgentsPersistenceSqlite.js.map +1 -0
  421. package/dist/persistence/agents/AgentsPersistenceVolatile.d.ts +14 -0
  422. package/dist/persistence/agents/AgentsPersistenceVolatile.d.ts.map +1 -0
  423. package/dist/persistence/agents/AgentsPersistenceVolatile.js +26 -0
  424. package/dist/persistence/agents/AgentsPersistenceVolatile.js.map +1 -0
  425. package/dist/persistence/env/EnvPersistence.d.ts +20 -0
  426. package/dist/persistence/env/EnvPersistence.d.ts.map +1 -0
  427. package/dist/persistence/env/EnvPersistence.js +3 -0
  428. package/dist/persistence/env/EnvPersistence.js.map +1 -0
  429. package/dist/persistence/env/EnvPersistenceAwsS3.d.ts +31 -0
  430. package/dist/persistence/env/EnvPersistenceAwsS3.d.ts.map +1 -0
  431. package/dist/persistence/env/EnvPersistenceAwsS3.js +117 -0
  432. package/dist/persistence/env/EnvPersistenceAwsS3.js.map +1 -0
  433. package/dist/persistence/env/EnvPersistenceFactory.d.ts +6 -0
  434. package/dist/persistence/env/EnvPersistenceFactory.d.ts.map +1 -0
  435. package/dist/persistence/env/EnvPersistenceFactory.js +3 -0
  436. package/dist/persistence/env/EnvPersistenceFactory.js.map +1 -0
  437. package/dist/persistence/env/EnvPersistenceFactoryImpl.d.ts +45 -0
  438. package/dist/persistence/env/EnvPersistenceFactoryImpl.d.ts.map +1 -0
  439. package/dist/persistence/env/EnvPersistenceFactoryImpl.js +86 -0
  440. package/dist/persistence/env/EnvPersistenceFactoryImpl.js.map +1 -0
  441. package/dist/persistence/env/EnvPersistenceFactoryPreset.d.ts +12 -0
  442. package/dist/persistence/env/EnvPersistenceFactoryPreset.d.ts.map +1 -0
  443. package/dist/persistence/env/EnvPersistenceFactoryPreset.js +17 -0
  444. package/dist/persistence/env/EnvPersistenceFactoryPreset.js.map +1 -0
  445. package/dist/persistence/env/EnvPersistenceFilesystem.d.ts +36 -0
  446. package/dist/persistence/env/EnvPersistenceFilesystem.d.ts.map +1 -0
  447. package/dist/persistence/env/EnvPersistenceFilesystem.js +132 -0
  448. package/dist/persistence/env/EnvPersistenceFilesystem.js.map +1 -0
  449. package/dist/persistence/env/EnvPersistenceGoogleCloudStorage.d.ts +30 -0
  450. package/dist/persistence/env/EnvPersistenceGoogleCloudStorage.d.ts.map +1 -0
  451. package/dist/persistence/env/EnvPersistenceGoogleCloudStorage.js +131 -0
  452. package/dist/persistence/env/EnvPersistenceGoogleCloudStorage.js.map +1 -0
  453. package/dist/persistence/env/EnvPersistenceSqlite.d.ts +19 -0
  454. package/dist/persistence/env/EnvPersistenceSqlite.d.ts.map +1 -0
  455. package/dist/persistence/env/EnvPersistenceSqlite.js +54 -0
  456. package/dist/persistence/env/EnvPersistenceSqlite.js.map +1 -0
  457. package/dist/persistence/env/EnvPersistenceSupabase.d.ts +17 -0
  458. package/dist/persistence/env/EnvPersistenceSupabase.d.ts.map +1 -0
  459. package/dist/persistence/env/EnvPersistenceSupabase.js +60 -0
  460. package/dist/persistence/env/EnvPersistenceSupabase.js.map +1 -0
  461. package/dist/persistence/env/EnvPersistenceVolatile.d.ts +13 -0
  462. package/dist/persistence/env/EnvPersistenceVolatile.d.ts.map +1 -0
  463. package/dist/persistence/env/EnvPersistenceVolatile.js +31 -0
  464. package/dist/persistence/env/EnvPersistenceVolatile.js.map +1 -0
  465. package/dist/persistence/flows/FlowsPersistence.d.ts +87 -0
  466. package/dist/persistence/flows/FlowsPersistence.d.ts.map +1 -0
  467. package/dist/persistence/flows/FlowsPersistence.js +3 -0
  468. package/dist/persistence/flows/FlowsPersistence.js.map +1 -0
  469. package/dist/persistence/flows/FlowsPersistenceAwsS3.d.ts +71 -0
  470. package/dist/persistence/flows/FlowsPersistenceAwsS3.d.ts.map +1 -0
  471. package/dist/persistence/flows/FlowsPersistenceAwsS3.js +448 -0
  472. package/dist/persistence/flows/FlowsPersistenceAwsS3.js.map +1 -0
  473. package/dist/persistence/flows/FlowsPersistenceFactory.d.ts +10 -0
  474. package/dist/persistence/flows/FlowsPersistenceFactory.d.ts.map +1 -0
  475. package/dist/persistence/flows/FlowsPersistenceFactory.js +3 -0
  476. package/dist/persistence/flows/FlowsPersistenceFactory.js.map +1 -0
  477. package/dist/persistence/flows/FlowsPersistenceFactoryImpl.d.ts +57 -0
  478. package/dist/persistence/flows/FlowsPersistenceFactoryImpl.d.ts.map +1 -0
  479. package/dist/persistence/flows/FlowsPersistenceFactoryImpl.js +238 -0
  480. package/dist/persistence/flows/FlowsPersistenceFactoryImpl.js.map +1 -0
  481. package/dist/persistence/flows/FlowsPersistenceFactoryPreset.d.ts +13 -0
  482. package/dist/persistence/flows/FlowsPersistenceFactoryPreset.d.ts.map +1 -0
  483. package/dist/persistence/flows/FlowsPersistenceFactoryPreset.js +24 -0
  484. package/dist/persistence/flows/FlowsPersistenceFactoryPreset.js.map +1 -0
  485. package/dist/persistence/flows/FlowsPersistenceFilesystem.d.ts +52 -0
  486. package/dist/persistence/flows/FlowsPersistenceFilesystem.d.ts.map +1 -0
  487. package/dist/persistence/flows/FlowsPersistenceFilesystem.js +291 -0
  488. package/dist/persistence/flows/FlowsPersistenceFilesystem.js.map +1 -0
  489. package/dist/persistence/flows/FlowsPersistenceGoogleCloudStorage.d.ts +71 -0
  490. package/dist/persistence/flows/FlowsPersistenceGoogleCloudStorage.d.ts.map +1 -0
  491. package/dist/persistence/flows/FlowsPersistenceGoogleCloudStorage.js +429 -0
  492. package/dist/persistence/flows/FlowsPersistenceGoogleCloudStorage.js.map +1 -0
  493. package/dist/persistence/flows/FlowsPersistenceSqlite.d.ts +43 -0
  494. package/dist/persistence/flows/FlowsPersistenceSqlite.d.ts.map +1 -0
  495. package/dist/persistence/flows/FlowsPersistenceSqlite.js +259 -0
  496. package/dist/persistence/flows/FlowsPersistenceSqlite.js.map +1 -0
  497. package/dist/persistence/flows/FlowsPersistenceSupabase.d.ts +40 -0
  498. package/dist/persistence/flows/FlowsPersistenceSupabase.d.ts.map +1 -0
  499. package/dist/persistence/flows/FlowsPersistenceSupabase.js +218 -0
  500. package/dist/persistence/flows/FlowsPersistenceSupabase.js.map +1 -0
  501. package/dist/persistence/flows/FlowsPersistenceVolatile.d.ts +37 -0
  502. package/dist/persistence/flows/FlowsPersistenceVolatile.d.ts.map +1 -0
  503. package/dist/persistence/flows/FlowsPersistenceVolatile.js +151 -0
  504. package/dist/persistence/flows/FlowsPersistenceVolatile.js.map +1 -0
  505. package/dist/persistence/gptconfigs/GptConfigsPersistence.d.ts +12 -0
  506. package/dist/persistence/gptconfigs/GptConfigsPersistence.d.ts.map +1 -0
  507. package/dist/persistence/gptconfigs/GptConfigsPersistence.js +3 -0
  508. package/dist/persistence/gptconfigs/GptConfigsPersistence.js.map +1 -0
  509. package/dist/persistence/gptconfigs/GptConfigsPersistenceSqlite.d.ts +13 -0
  510. package/dist/persistence/gptconfigs/GptConfigsPersistenceSqlite.d.ts.map +1 -0
  511. package/dist/persistence/gptconfigs/GptConfigsPersistenceSqlite.js +35 -0
  512. package/dist/persistence/gptconfigs/GptConfigsPersistenceSqlite.js.map +1 -0
  513. package/dist/persistence/gptconfigs/GptConfigsPersistenceVolatile.d.ts +15 -0
  514. package/dist/persistence/gptconfigs/GptConfigsPersistenceVolatile.d.ts.map +1 -0
  515. package/dist/persistence/gptconfigs/GptConfigsPersistenceVolatile.js +31 -0
  516. package/dist/persistence/gptconfigs/GptConfigsPersistenceVolatile.js.map +1 -0
  517. package/dist/playwrightTestExtensions.d.ts.map +1 -1
  518. package/dist/playwrightTestExtensions.js +31 -10
  519. package/dist/playwrightTestExtensions.js.map +1 -1
  520. package/dist/tools/GoToWebpageTool.d.ts.map +1 -1
  521. package/dist/tools/GoToWebpageTool.js +3 -2
  522. package/dist/tools/GoToWebpageTool.js.map +1 -1
  523. package/dist/utils/TemplateInterpolator.d.ts +47 -0
  524. package/dist/utils/TemplateInterpolator.d.ts.map +1 -0
  525. package/dist/utils/TemplateInterpolator.js +352 -0
  526. package/dist/utils/TemplateInterpolator.js.map +1 -0
  527. package/package.json +3 -1
@@ -1,12 +1,14 @@
1
1
  import Database from 'better-sqlite3';
2
2
  import { DonobuDeploymentEnvironment } from '../models/DonobuDeploymentEnvironment';
3
+ import { AgentsPersistence } from '../persistence/agents/AgentsPersistence';
4
+ import { FlowsPersistenceFactory } from '../persistence/flows/FlowsPersistenceFactory';
5
+ import { GptConfigsPersistence } from '../persistence/gptconfigs/GptConfigsPersistence';
3
6
  import { AgentsManager } from './AgentsManager';
4
7
  import { DonobuFlowsManager } from './DonobuFlowsManager';
5
8
  import { GptConfigsManager } from './GptConfigsManager';
6
9
  import { RequestContextHolder } from './RequestContextHolder';
7
- import { GptConfigsPersistence } from '../persistence/GptConfigsPersistence';
8
- import { AgentsPersistence } from '../persistence/AgentsPersistence';
9
- import { FlowsPersistenceFactory } from '../persistence/FlowsPersistenceFactory';
10
+ import { EnvDataManager } from './EnvDataManager';
11
+ import { EnvPersistenceVolatile } from '../persistence/env/EnvPersistenceVolatile';
10
12
  export type DonobuStack = {
11
13
  sqliteDb: Database.Database;
12
14
  gptConfigsPersistence: GptConfigsPersistence;
@@ -15,6 +17,18 @@ export type DonobuStack = {
15
17
  agentsManager: AgentsManager;
16
18
  flowsPersistenceFactory: FlowsPersistenceFactory;
17
19
  flowsManager: DonobuFlowsManager;
20
+ envDataManager: EnvDataManager;
18
21
  };
19
- export declare function setupDonobuStack(donobuDeploymentEnvironment: DonobuDeploymentEnvironment, requestContextHolder: RequestContextHolder): Promise<DonobuStack>;
22
+ /**
23
+ * Create a new Donobu application stack.
24
+ *
25
+ * NOTE: The reason why we have the oddball {@link envPersistenceVolatile}
26
+ * parameter is because that can be used to hold a snapshot of the
27
+ * real NodeJS process's environment variables, of which, we generally
28
+ * should not do in hosted environments. However, if we are running
29
+ * within the context of being a library used for runningPlaywright tests,
30
+ * then having this snapshot is relevant so that tests can use normal
31
+ * environment variables.
32
+ */
33
+ export declare function setupDonobuStack(donobuDeploymentEnvironment: DonobuDeploymentEnvironment, requestContextHolder: RequestContextHolder, envPersistenceVolatile?: EnvPersistenceVolatile): Promise<DonobuStack>;
20
34
  //# sourceMappingURL=DonobuStack.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DonobuStack.d.ts","sourceRoot":"","sources":["../../src/managers/DonobuStack.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,2BAA2B,EAAE,MAAM,uCAAuC,CAAC;AAKpF,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AACrE,OAAO,EAAE,uBAAuB,EAAE,MAAM,wCAAwC,CAAC;AAEjF,MAAM,MAAM,WAAW,GAAG;IACxB,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAAC;IAC5B,qBAAqB,EAAE,qBAAqB,CAAC;IAC7C,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,aAAa,EAAE,aAAa,CAAC;IAC7B,uBAAuB,EAAE,uBAAuB,CAAC;IACjD,YAAY,EAAE,kBAAkB,CAAC;CAClC,CAAC;AAEF,wBAAsB,gBAAgB,CACpC,2BAA2B,EAAE,2BAA2B,EACxD,oBAAoB,EAAE,oBAAoB,GACzC,OAAO,CAAC,WAAW,CAAC,CAgCtB"}
1
+ {"version":3,"file":"DonobuStack.d.ts","sourceRoot":"","sources":["../../src/managers/DonobuStack.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,2BAA2B,EAAE,MAAM,uCAAuC,CAAC;AAEpF,OAAO,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAC;AAG5E,OAAO,EAAE,uBAAuB,EAAE,MAAM,8CAA8C,CAAC;AAEvF,OAAO,EAAE,qBAAqB,EAAE,MAAM,iDAAiD,CAAC;AAExF,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,sBAAsB,EAAE,MAAM,2CAA2C,CAAC;AAEnF,MAAM,MAAM,WAAW,GAAG;IACxB,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAAC;IAC5B,qBAAqB,EAAE,qBAAqB,CAAC;IAC7C,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,aAAa,EAAE,aAAa,CAAC;IAC7B,uBAAuB,EAAE,uBAAuB,CAAC;IACjD,YAAY,EAAE,kBAAkB,CAAC;IACjC,cAAc,EAAE,cAAc,CAAC;CAChC,CAAC;AAEF;;;;;;;;;;GAUG;AACH,wBAAsB,gBAAgB,CACpC,2BAA2B,EAAE,2BAA2B,EACxD,oBAAoB,EAAE,oBAAoB,EAC1C,sBAAsB,CAAC,EAAE,sBAAsB,GAC9C,OAAO,CAAC,WAAW,CAAC,CAwCtB"}
@@ -1,21 +1,36 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.setupDonobuStack = setupDonobuStack;
4
- const AgentsPersistenceSqlite_1 = require("../persistence/AgentsPersistenceSqlite");
4
+ const AgentsPersistenceSqlite_1 = require("../persistence/agents/AgentsPersistenceSqlite");
5
5
  const DonobuSqliteDb_1 = require("../persistence/DonobuSqliteDb");
6
- const FlowsPersistenceFactoryImpl_1 = require("../persistence/FlowsPersistenceFactoryImpl");
7
- const GptConfigsPersistenceSqlite_1 = require("../persistence/GptConfigsPersistenceSqlite");
6
+ const FlowsPersistenceFactoryImpl_1 = require("../persistence/flows/FlowsPersistenceFactoryImpl");
7
+ const GptConfigsPersistenceSqlite_1 = require("../persistence/gptconfigs/GptConfigsPersistenceSqlite");
8
+ const EnvPersistenceFactoryImpl_1 = require("../persistence/env/EnvPersistenceFactoryImpl");
8
9
  const AgentsManager_1 = require("./AgentsManager");
9
10
  const DonobuFlowsManager_1 = require("./DonobuFlowsManager");
10
11
  const GptConfigsManager_1 = require("./GptConfigsManager");
11
- async function setupDonobuStack(donobuDeploymentEnvironment, requestContextHolder) {
12
+ const EnvDataManager_1 = require("./EnvDataManager");
13
+ /**
14
+ * Create a new Donobu application stack.
15
+ *
16
+ * NOTE: The reason why we have the oddball {@link envPersistenceVolatile}
17
+ * parameter is because that can be used to hold a snapshot of the
18
+ * real NodeJS process's environment variables, of which, we generally
19
+ * should not do in hosted environments. However, if we are running
20
+ * within the context of being a library used for runningPlaywright tests,
21
+ * then having this snapshot is relevant so that tests can use normal
22
+ * environment variables.
23
+ */
24
+ async function setupDonobuStack(donobuDeploymentEnvironment, requestContextHolder, envPersistenceVolatile) {
12
25
  const sqliteDb = (0, DonobuSqliteDb_1.getDonobuSqliteDatabase)();
13
26
  const gptConfigsPersistence = await GptConfigsPersistenceSqlite_1.GptConfigsPersistenceSqlite.create(sqliteDb);
14
27
  const gptConfigsManager = await GptConfigsManager_1.GptConfigsManager.create(gptConfigsPersistence);
15
28
  const agentsPersistence = await AgentsPersistenceSqlite_1.AgentsPersistenceSqlite.create(sqliteDb);
16
29
  const agentsManager = await AgentsManager_1.AgentsManager.create(agentsPersistence, gptConfigsManager);
17
30
  const flowsPersistenceFactory = await FlowsPersistenceFactoryImpl_1.FlowsPersistenceFactoryImpl.fromEnvironment(donobuDeploymentEnvironment, requestContextHolder);
18
- const flowsManager = new DonobuFlowsManager_1.DonobuFlowsManager(donobuDeploymentEnvironment, gptConfigsManager, agentsManager, flowsPersistenceFactory);
31
+ const envPersistenceFactory = await EnvPersistenceFactoryImpl_1.EnvPersistenceFactoryImpl.fromEnvironment(donobuDeploymentEnvironment, requestContextHolder, envPersistenceVolatile ?? null);
32
+ const environmentDataManager = new EnvDataManager_1.EnvDataManager(envPersistenceFactory);
33
+ const flowsManager = new DonobuFlowsManager_1.DonobuFlowsManager(donobuDeploymentEnvironment, gptConfigsManager, agentsManager, flowsPersistenceFactory, environmentDataManager);
19
34
  return {
20
35
  sqliteDb,
21
36
  gptConfigsPersistence,
@@ -24,6 +39,7 @@ async function setupDonobuStack(donobuDeploymentEnvironment, requestContextHolde
24
39
  agentsManager,
25
40
  flowsPersistenceFactory,
26
41
  flowsManager,
42
+ envDataManager: environmentDataManager,
27
43
  };
28
44
  }
29
45
  //# sourceMappingURL=DonobuStack.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DonobuStack.js","sourceRoot":"","sources":["../../src/managers/DonobuStack.ts"],"names":[],"mappings":";;AAwBA,4CAmCC;AAzDD,oFAAiF;AACjF,kEAAwE;AACxE,4FAAyF;AACzF,4FAAyF;AACzF,mDAAgD;AAChD,6DAA0D;AAC1D,2DAAwD;AAgBjD,KAAK,UAAU,gBAAgB,CACpC,2BAAwD,EACxD,oBAA0C;IAE1C,MAAM,QAAQ,GAAG,IAAA,wCAAuB,GAAE,CAAC;IAC3C,MAAM,qBAAqB,GACzB,MAAM,yDAA2B,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACrD,MAAM,iBAAiB,GAAG,MAAM,qCAAiB,CAAC,MAAM,CACtD,qBAAqB,CACtB,CAAC;IACF,MAAM,iBAAiB,GAAG,MAAM,iDAAuB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACzE,MAAM,aAAa,GAAG,MAAM,6BAAa,CAAC,MAAM,CAC9C,iBAAiB,EACjB,iBAAiB,CAClB,CAAC;IACF,MAAM,uBAAuB,GAC3B,MAAM,yDAA2B,CAAC,eAAe,CAC/C,2BAA2B,EAC3B,oBAAoB,CACrB,CAAC;IACJ,MAAM,YAAY,GAAG,IAAI,uCAAkB,CACzC,2BAA2B,EAC3B,iBAAiB,EACjB,aAAa,EACb,uBAAuB,CACxB,CAAC;IACF,OAAO;QACL,QAAQ;QACR,qBAAqB;QACrB,iBAAiB;QACjB,iBAAiB;QACjB,aAAa;QACb,uBAAuB;QACvB,YAAY;KACb,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"DonobuStack.js","sourceRoot":"","sources":["../../src/managers/DonobuStack.ts"],"names":[],"mappings":";;AAuCA,4CA4CC;AAjFD,2FAAwF;AAExF,kEAAwE;AACxE,kGAA+F;AAE/F,uGAAoG;AAEpG,4FAAyF;AACzF,mDAAgD;AAChD,6DAA0D;AAC1D,2DAAwD;AAExD,qDAAkD;AAclD;;;;;;;;;;GAUG;AACI,KAAK,UAAU,gBAAgB,CACpC,2BAAwD,EACxD,oBAA0C,EAC1C,sBAA+C;IAE/C,MAAM,QAAQ,GAAG,IAAA,wCAAuB,GAAE,CAAC;IAC3C,MAAM,qBAAqB,GACzB,MAAM,yDAA2B,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACrD,MAAM,iBAAiB,GAAG,MAAM,qCAAiB,CAAC,MAAM,CACtD,qBAAqB,CACtB,CAAC;IACF,MAAM,iBAAiB,GAAG,MAAM,iDAAuB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACzE,MAAM,aAAa,GAAG,MAAM,6BAAa,CAAC,MAAM,CAC9C,iBAAiB,EACjB,iBAAiB,CAClB,CAAC;IACF,MAAM,uBAAuB,GAC3B,MAAM,yDAA2B,CAAC,eAAe,CAC/C,2BAA2B,EAC3B,oBAAoB,CACrB,CAAC;IACJ,MAAM,qBAAqB,GAAG,MAAM,qDAAyB,CAAC,eAAe,CAC3E,2BAA2B,EAC3B,oBAAoB,EACpB,sBAAsB,IAAI,IAAI,CAC/B,CAAC;IACF,MAAM,sBAAsB,GAAG,IAAI,+BAAc,CAAC,qBAAqB,CAAC,CAAC;IACzE,MAAM,YAAY,GAAG,IAAI,uCAAkB,CACzC,2BAA2B,EAC3B,iBAAiB,EACjB,aAAa,EACb,uBAAuB,EACvB,sBAAsB,CACvB,CAAC;IACF,OAAO;QACL,QAAQ;QACR,qBAAqB;QACrB,iBAAiB;QACjB,iBAAiB;QACjB,aAAa;QACb,uBAAuB;QACvB,YAAY;QACZ,cAAc,EAAE,sBAAsB;KACvC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,58 @@
1
+ import { EnvPersistenceFactory } from '../persistence/env/EnvPersistenceFactory';
2
+ /**
3
+ * Manager class for handling environment data operations within business logic constraints.
4
+ */
5
+ export declare class EnvDataManager {
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=EnvDataManager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EnvDataManager.d.ts","sourceRoot":"","sources":["../../src/managers/EnvDataManager.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,qBAAqB,EAAE,MAAM,0CAA0C,CAAC;AAEjF;;GAEG;AACH,qBAAa,cAAc;IAYvB,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"}
@@ -0,0 +1,134 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EnvDataManager = 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 within business logic constraints.
8
+ */
9
+ class EnvDataManager {
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 > EnvDataManager.MAX_KEY_LENGTH) {
101
+ throw new InvalidParamValueException_1.InvalidParamValueException('key', key, `exceeds maximum allowed length of ${EnvDataManager.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 > EnvDataManager.MAX_VALUE_LENGTH) {
121
+ throw new InvalidParamValueException_1.InvalidParamValueException('value', `${value.length} characters`, `exceeds maximum allowed length of ${EnvDataManager.MAX_VALUE_LENGTH} characters`);
122
+ }
123
+ }
124
+ }
125
+ exports.EnvDataManager = EnvDataManager;
126
+ /**
127
+ * Maximum length allowed for an environment data key.
128
+ */
129
+ EnvDataManager.MAX_KEY_LENGTH = 128;
130
+ /**
131
+ * Maximum length allowed for environment data value
132
+ */
133
+ EnvDataManager.MAX_VALUE_LENGTH = 1024 * 1024; // 1MB
134
+ //# sourceMappingURL=EnvDataManager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EnvDataManager.js","sourceRoot":"","sources":["../../src/managers/EnvDataManager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,58 @@
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
@@ -0,0 +1 @@
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"}
@@ -0,0 +1,134 @@
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
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EnvironmentDataManager.js","sourceRoot":"","sources":["../../src/managers/EnvironmentDataManager.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { GptConfig } from '../models/GptConfig';
2
- import { GptConfigsPersistence } from '../persistence/GptConfigsPersistence';
2
+ import { GptConfigsPersistence } from '../persistence/gptconfigs/GptConfigsPersistence';
3
3
  /**
4
4
  * This class manages GPT configs and is responsible for validation around
5
5
  * that context.
@@ -1 +1 @@
1
- {"version":3,"file":"GptConfigsManager.d.ts","sourceRoot":"","sources":["../../src/managers/GptConfigsManager.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAM7E;;;GAGG;AACH,qBAAa,iBAAiB;IACR,OAAO,CAAC,QAAQ,CAAC,WAAW;IAAhD,OAAO;WAEa,MAAM,CACxB,WAAW,EAAE,qBAAqB,GACjC,OAAO,CAAC,iBAAiB,CAAC;IAM7B;;;;OAIG;IACU,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAKhE;;OAEG;IACU,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IAIlD;;OAEG;IACU,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IAItD;;OAEG;IACU,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIhD;;OAEG;YACW,sBAAsB;IAepC;;;OAGG;YACW,+BAA+B;CA4H9C"}
1
+ {"version":3,"file":"GptConfigsManager.d.ts","sourceRoot":"","sources":["../../src/managers/GptConfigsManager.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,qBAAqB,EAAE,MAAM,iDAAiD,CAAC;AAMxF;;;GAGG;AACH,qBAAa,iBAAiB;IACR,OAAO,CAAC,QAAQ,CAAC,WAAW;IAAhD,OAAO;WAEa,MAAM,CACxB,WAAW,EAAE,qBAAqB,GACjC,OAAO,CAAC,iBAAiB,CAAC;IAM7B;;;;OAIG;IACU,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAKhE;;OAEG;IACU,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IAIlD;;OAEG;IACU,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IAItD;;OAEG;IACU,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIhD;;OAEG;YACW,sBAAsB;IAepC;;;OAGG;YACW,+BAA+B;CA4H9C"}
@@ -141,7 +141,6 @@ export declare class PageInspector {
141
141
  * const inspector = new PageInspector();
142
142
  * await inspector.attributeInteractableElements(page);
143
143
  * await inspector.annotateInteractableElements(page);
144
- * // Visible numbered annotations now appear over all interactable elements
145
144
  */
146
145
  annotateInteractableElements(page: Page): Promise<void>;
147
146
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"PageInspector.d.ts","sourceRoot":"","sources":["../../src/managers/PageInspector.ts"],"names":[],"mappings":"AACA,OAAO,EAAS,IAAI,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAMpE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmDG;AACH,qBAAa,aAAa;aAYN,4BAA4B,EAAE,MAAM;aACpC,+BAA+B,EAAE,MAAM;IAZzD;;;;;OAKG;IACH,gBAAuB,WAAW,SAEhC;gBAGgB,4BAA4B,GAAE,MAAmC,EACjE,+BAA+B,GAAE,MAAiC;IAGpF;;;;;;;;;;;;;;;;;;;OAmBG;IACU,6BAA6B,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAoErE;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACU,iCAAiC,CAC5C,IAAI,EAAE,IAAI,GACT,OAAO,CAAC,mBAAmB,EAAE,CAAC;IA4DjC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6BG;IACU,4BAA4B,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAmJpE;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACU,uBAAuB,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAuB/D;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACU,+BAA+B,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAqBvE;;;;OAIG;WACW,oBAAoB,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM;IAkBjE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6BG;IACH,OAAO,CAAC,MAAM,CAAC,0BAA0B;IAgVzC,OAAO,CAAC,MAAM,CAAC,WAAW;CAQ3B"}
1
+ {"version":3,"file":"PageInspector.d.ts","sourceRoot":"","sources":["../../src/managers/PageInspector.ts"],"names":[],"mappings":"AACA,OAAO,EAAS,IAAI,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAMpE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmDG;AACH,qBAAa,aAAa;aAYN,4BAA4B,EAAE,MAAM;aACpC,+BAA+B,EAAE,MAAM;IAZzD;;;;;OAKG;IACH,gBAAuB,WAAW,SAEhC;gBAGgB,4BAA4B,GAAE,MAAmC,EACjE,+BAA+B,GAAE,MAAiC;IAGpF;;;;;;;;;;;;;;;;;;;OAmBG;IACU,6BAA6B,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAoErE;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACU,iCAAiC,CAC5C,IAAI,EAAE,IAAI,GACT,OAAO,CAAC,mBAAmB,EAAE,CAAC;IA4DjC;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4BG;IACU,4BAA4B,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAuJpE;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACU,uBAAuB,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAuB/D;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACU,+BAA+B,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAqBvE;;;;OAIG;WACW,oBAAoB,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM;IAkBjE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6BG;IACH,OAAO,CAAC,MAAM,CAAC,0BAA0B;IAgVzC,OAAO,CAAC,MAAM,CAAC,WAAW;CAQ3B"}
@@ -235,7 +235,6 @@ class PageInspector {
235
235
  * const inspector = new PageInspector();
236
236
  * await inspector.attributeInteractableElements(page);
237
237
  * await inspector.annotateInteractableElements(page);
238
- * // Visible numbered annotations now appear over all interactable elements
239
238
  */
240
239
  async annotateInteractableElements(page) {
241
240
  try {
@@ -252,8 +251,11 @@ class PageInspector {
252
251
  container.id = 'annotation-shadow-container';
253
252
  // Position container so child elements can be absolutely placed
254
253
  Object.assign(container.style, {
255
- position: 'fixed', // anchor to viewport
256
- inset: '0', // stretch across it
254
+ position: 'absolute',
255
+ top: '0',
256
+ left: '0',
257
+ width: '100%',
258
+ height: '100%',
257
259
  pointerEvents: 'none', // Let clicks pass through
258
260
  zIndex: '2147483647', // win every z-index fight
259
261
  });
@@ -275,29 +277,29 @@ class PageInspector {
275
277
  // Add a <style> element inside the shadow root to reset and define annotation styles
276
278
  const style = document.createElement('style');
277
279
  style.textContent = `
278
- :host {
279
- all: initial; /* Reset styles in shadow root */
280
- }
281
- .annotation {
282
- position: absolute;
283
- z-index: 2147483647;
284
- background-color: black;
285
- color: white;
286
- width: 40px;
287
- height: 40px;
288
- border-radius: 50%;
289
- display: flex;
290
- align-items: center;
291
- justify-content: center;
292
- font-size: 14px;
293
- font-weight: bold;
294
- line-height: 20px;
295
- text-align: center;
296
- box-shadow: 0px 2px 4px rgba(0,0,0,0.2);
297
- border: 4px solid #FF4136;
298
- pointer-events: none;
299
- }
300
- `;
280
+ :host {
281
+ all: initial; /* Reset styles in shadow root */
282
+ }
283
+ .annotation {
284
+ position: absolute;
285
+ z-index: 2147483647;
286
+ background-color: black;
287
+ color: white;
288
+ width: 40px;
289
+ height: 40px;
290
+ border-radius: 50%;
291
+ display: flex;
292
+ align-items: center;
293
+ justify-content: center;
294
+ font-size: 14px;
295
+ font-weight: bold;
296
+ line-height: 20px;
297
+ text-align: center;
298
+ box-shadow: 0px 2px 4px rgba(0,0,0,0.2);
299
+ border: 4px solid #FF4136;
300
+ pointer-events: none;
301
+ }
302
+ `;
301
303
  shadowRoot.appendChild(style);
302
304
  }
303
305
  // Retrieve the shadow root to place annotation elements
@@ -318,6 +320,7 @@ class PageInspector {
318
320
  const positionAnnotation = (annotation, element) => {
319
321
  const rect = element.getBoundingClientRect();
320
322
  // Center the annotation on the element, adjusting for its size
323
+ // Since container is absolute, we need to account for scroll position
321
324
  const x = rect.left + rect.width / 2 - 20 + window.scrollX;
322
325
  const y = rect.top + rect.height / 2 - 20 + window.scrollY;
323
326
  annotation.style.left = `${x}px`;