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.
- package/dist/apis/EnvDataApi.d.ts +26 -0
- package/dist/apis/EnvDataApi.d.ts.map +1 -0
- package/dist/apis/EnvDataApi.js +59 -0
- package/dist/apis/EnvDataApi.js.map +1 -0
- package/dist/apis/EnvironmentDataApi.d.ts +26 -0
- package/dist/apis/EnvironmentDataApi.d.ts.map +1 -0
- package/dist/apis/EnvironmentDataApi.js +59 -0
- package/dist/apis/EnvironmentDataApi.js.map +1 -0
- package/dist/apis/FlowsApi.d.ts +4 -0
- package/dist/apis/FlowsApi.d.ts.map +1 -1
- package/dist/apis/FlowsApi.js +26 -2
- package/dist/apis/FlowsApi.js.map +1 -1
- package/dist/apis/FlowsFilesApi.d.ts +1 -1
- package/dist/apis/FlowsFilesApi.d.ts.map +1 -1
- package/dist/apis/SpecialFlowsApi.js +1 -1
- package/dist/apis/SpecialFlowsApi.js.map +1 -1
- package/dist/assets/generated/parameter-schemas.json +22 -8
- package/dist/assets/generated/version +1 -1
- package/dist/esm/apis/EnvDataApi.d.ts +26 -0
- package/dist/esm/apis/EnvDataApi.d.ts.map +1 -0
- package/dist/esm/apis/EnvDataApi.js +59 -0
- package/dist/esm/apis/EnvDataApi.js.map +1 -0
- package/dist/esm/apis/EnvironmentDataApi.d.ts +26 -0
- package/dist/esm/apis/EnvironmentDataApi.d.ts.map +1 -0
- package/dist/esm/apis/EnvironmentDataApi.js +59 -0
- package/dist/esm/apis/EnvironmentDataApi.js.map +1 -0
- package/dist/esm/apis/FlowsApi.d.ts +4 -0
- package/dist/esm/apis/FlowsApi.d.ts.map +1 -1
- package/dist/esm/apis/FlowsApi.js +26 -2
- package/dist/esm/apis/FlowsApi.js.map +1 -1
- package/dist/esm/apis/FlowsFilesApi.d.ts +1 -1
- package/dist/esm/apis/FlowsFilesApi.d.ts.map +1 -1
- package/dist/esm/apis/SpecialFlowsApi.js +1 -1
- package/dist/esm/apis/SpecialFlowsApi.js.map +1 -1
- package/dist/esm/assets/generated/parameter-schemas.json +22 -8
- package/dist/esm/assets/generated/version +1 -1
- package/dist/esm/lib/DonobuExtendedPage.d.ts +106 -0
- package/dist/esm/lib/DonobuExtendedPage.d.ts.map +1 -0
- package/dist/esm/lib/DonobuExtendedPage.js +3 -0
- package/dist/esm/lib/DonobuExtendedPage.js.map +1 -0
- package/dist/esm/lib/constants.d.ts +8 -0
- package/dist/esm/lib/constants.d.ts.map +1 -0
- package/dist/esm/lib/constants.js +14 -0
- package/dist/esm/lib/constants.js.map +1 -0
- package/dist/esm/lib/fixtures/browserState.d.ts +6 -0
- package/dist/esm/lib/fixtures/browserState.d.ts.map +1 -0
- package/dist/esm/lib/fixtures/browserState.js +15 -0
- package/dist/esm/lib/fixtures/browserState.js.map +1 -0
- package/dist/esm/lib/fixtures/gptClients.d.ts +40 -0
- package/dist/esm/lib/fixtures/gptClients.d.ts.map +1 -0
- package/dist/esm/lib/fixtures/gptClients.js +187 -0
- package/dist/esm/lib/fixtures/gptClients.js.map +1 -0
- package/dist/esm/lib/fixtures/testExtension.d.ts +10 -0
- package/dist/esm/lib/fixtures/testExtension.d.ts.map +1 -0
- package/dist/esm/lib/fixtures/testExtension.js +383 -0
- package/dist/esm/lib/fixtures/testExtension.js.map +1 -0
- package/dist/esm/lib/testExtension.d.ts +10 -0
- package/dist/esm/lib/testExtension.d.ts.map +1 -0
- package/dist/esm/lib/testExtension.js +383 -0
- package/dist/esm/lib/testExtension.js.map +1 -0
- package/dist/esm/lib/types.d.ts +106 -0
- package/dist/esm/lib/types.d.ts.map +1 -0
- package/dist/esm/lib/types.js +3 -0
- package/dist/esm/lib/types.js.map +1 -0
- package/dist/esm/lib/utils/donobuTestStack.d.ts +7 -0
- package/dist/esm/lib/utils/donobuTestStack.d.ts.map +1 -0
- package/dist/esm/lib/utils/donobuTestStack.js +31 -0
- package/dist/esm/lib/utils/donobuTestStack.js.map +1 -0
- package/dist/esm/lib/utils/selfHealing.d.ts +15 -0
- package/dist/esm/lib/utils/selfHealing.d.ts.map +1 -0
- package/dist/esm/lib/utils/selfHealing.js +89 -0
- package/dist/esm/lib/utils/selfHealing.js.map +1 -0
- package/dist/esm/main.d.ts +5 -1
- package/dist/esm/main.d.ts.map +1 -1
- package/dist/esm/main.js +8 -5
- package/dist/esm/main.js.map +1 -1
- package/dist/esm/managers/AdminApiController.d.ts.map +1 -1
- package/dist/esm/managers/AdminApiController.js +7 -0
- package/dist/esm/managers/AdminApiController.js.map +1 -1
- package/dist/esm/managers/AgentsManager.d.ts +1 -1
- package/dist/esm/managers/AgentsManager.d.ts.map +1 -1
- package/dist/esm/managers/DonobuFlow.d.ts +3 -2
- package/dist/esm/managers/DonobuFlow.d.ts.map +1 -1
- package/dist/esm/managers/DonobuFlow.js +90 -21
- package/dist/esm/managers/DonobuFlow.js.map +1 -1
- package/dist/esm/managers/DonobuFlowsManager.d.ts +47 -6
- package/dist/esm/managers/DonobuFlowsManager.d.ts.map +1 -1
- package/dist/esm/managers/DonobuFlowsManager.js +104 -24
- package/dist/esm/managers/DonobuFlowsManager.js.map +1 -1
- package/dist/esm/managers/DonobuStack.d.ts +18 -4
- package/dist/esm/managers/DonobuStack.d.ts.map +1 -1
- package/dist/esm/managers/DonobuStack.js +21 -5
- package/dist/esm/managers/DonobuStack.js.map +1 -1
- package/dist/esm/managers/EnvDataManager.d.ts +58 -0
- package/dist/esm/managers/EnvDataManager.d.ts.map +1 -0
- package/dist/esm/managers/EnvDataManager.js +134 -0
- package/dist/esm/managers/EnvDataManager.js.map +1 -0
- package/dist/esm/managers/EnvironmentDataManager.d.ts +58 -0
- package/dist/esm/managers/EnvironmentDataManager.d.ts.map +1 -0
- package/dist/esm/managers/EnvironmentDataManager.js +134 -0
- package/dist/esm/managers/EnvironmentDataManager.js.map +1 -0
- package/dist/esm/managers/GptConfigsManager.d.ts +1 -1
- package/dist/esm/managers/GptConfigsManager.d.ts.map +1 -1
- package/dist/esm/managers/PageInspector.d.ts +0 -1
- package/dist/esm/managers/PageInspector.d.ts.map +1 -1
- package/dist/esm/managers/PageInspector.js +29 -26
- package/dist/esm/managers/PageInspector.js.map +1 -1
- package/dist/esm/managers/ToolManager.d.ts +10 -0
- package/dist/esm/managers/ToolManager.d.ts.map +1 -1
- package/dist/esm/managers/ToolManager.js +46 -3
- package/dist/esm/managers/ToolManager.js.map +1 -1
- package/dist/esm/models/BrowserConfig.d.ts +1 -6
- package/dist/esm/models/BrowserConfig.d.ts.map +1 -1
- package/dist/esm/models/BrowserFramework.d.ts +2 -6
- package/dist/esm/models/BrowserFramework.d.ts.map +1 -1
- package/dist/esm/models/BrowserFramework.js +4 -22
- package/dist/esm/models/BrowserFramework.js.map +1 -1
- package/dist/esm/models/CreateDonobuFlow.d.ts +4 -0
- package/dist/esm/models/CreateDonobuFlow.d.ts.map +1 -1
- package/dist/esm/models/EnvironmentDatum.d.ts +54 -0
- package/dist/esm/models/EnvironmentDatum.d.ts.map +1 -0
- package/dist/esm/models/EnvironmentDatum.js +57 -0
- package/dist/esm/models/EnvironmentDatum.js.map +1 -0
- package/dist/esm/models/FlowMetadata.d.ts +14 -1
- package/dist/esm/models/FlowMetadata.d.ts.map +1 -1
- package/dist/esm/models/FlowMetadata.js.map +1 -1
- package/dist/esm/models/PaginatedResult.d.ts +10 -0
- package/dist/esm/models/PaginatedResult.d.ts.map +1 -0
- package/dist/esm/models/PaginatedResult.js +6 -0
- package/dist/esm/models/PaginatedResult.js.map +1 -0
- package/dist/esm/models/ToolCallContext.d.ts +2 -1
- package/dist/esm/models/ToolCallContext.d.ts.map +1 -1
- package/dist/esm/models/ToolTemplateDataSource.d.ts +40 -0
- package/dist/esm/models/ToolTemplateDataSource.d.ts.map +1 -0
- package/dist/esm/models/ToolTemplateDataSource.js +3 -0
- package/dist/esm/models/ToolTemplateDataSource.js.map +1 -0
- package/dist/esm/persistence/DonobuSqliteDb.d.ts.map +1 -1
- package/dist/esm/persistence/DonobuSqliteDb.js +12 -0
- package/dist/esm/persistence/DonobuSqliteDb.js.map +1 -1
- package/dist/esm/persistence/FlowsPersistence.d.ts +23 -14
- package/dist/esm/persistence/FlowsPersistence.d.ts.map +1 -1
- package/dist/esm/persistence/FlowsPersistenceAwsS3.d.ts +10 -5
- package/dist/esm/persistence/FlowsPersistenceAwsS3.d.ts.map +1 -1
- package/dist/esm/persistence/FlowsPersistenceAwsS3.js +79 -1
- package/dist/esm/persistence/FlowsPersistenceAwsS3.js.map +1 -1
- package/dist/esm/persistence/FlowsPersistenceFactoryImpl.js +1 -1
- package/dist/esm/persistence/FlowsPersistenceFactoryImpl.js.map +1 -1
- package/dist/esm/persistence/FlowsPersistenceFilesystem.d.ts +32 -5
- package/dist/esm/persistence/FlowsPersistenceFilesystem.d.ts.map +1 -1
- package/dist/esm/persistence/FlowsPersistenceFilesystem.js +114 -4
- package/dist/esm/persistence/FlowsPersistenceFilesystem.js.map +1 -1
- package/dist/esm/persistence/FlowsPersistenceGoogleCloudStorage.d.ts +10 -5
- package/dist/esm/persistence/FlowsPersistenceGoogleCloudStorage.d.ts.map +1 -1
- package/dist/esm/persistence/FlowsPersistenceGoogleCloudStorage.js +58 -1
- package/dist/esm/persistence/FlowsPersistenceGoogleCloudStorage.js.map +1 -1
- package/dist/esm/persistence/FlowsPersistenceSqlite.d.ts +12 -5
- package/dist/esm/persistence/FlowsPersistenceSqlite.d.ts.map +1 -1
- package/dist/esm/persistence/FlowsPersistenceSqlite.js +35 -1
- package/dist/esm/persistence/FlowsPersistenceSqlite.js.map +1 -1
- package/dist/esm/persistence/FlowsPersistenceSupabase.d.ts +10 -5
- package/dist/esm/persistence/FlowsPersistenceSupabase.d.ts.map +1 -1
- package/dist/esm/persistence/FlowsPersistenceSupabase.js +46 -1
- package/dist/esm/persistence/FlowsPersistenceSupabase.js.map +1 -1
- package/dist/esm/persistence/FlowsPersistenceVolatile.d.ts +10 -5
- package/dist/esm/persistence/FlowsPersistenceVolatile.d.ts.map +1 -1
- package/dist/esm/persistence/FlowsPersistenceVolatile.js +21 -1
- package/dist/esm/persistence/FlowsPersistenceVolatile.js.map +1 -1
- package/dist/esm/persistence/agents/AgentsPersistence.d.ts +12 -0
- package/dist/esm/persistence/agents/AgentsPersistence.d.ts.map +1 -0
- package/dist/esm/persistence/agents/AgentsPersistence.js +3 -0
- package/dist/esm/persistence/agents/AgentsPersistence.js.map +1 -0
- package/dist/esm/persistence/agents/AgentsPersistenceSqlite.d.ts +15 -0
- package/dist/esm/persistence/agents/AgentsPersistenceSqlite.d.ts.map +1 -0
- package/dist/esm/persistence/agents/AgentsPersistenceSqlite.js +50 -0
- package/dist/esm/persistence/agents/AgentsPersistenceSqlite.js.map +1 -0
- package/dist/esm/persistence/agents/AgentsPersistenceVolatile.d.ts +14 -0
- package/dist/esm/persistence/agents/AgentsPersistenceVolatile.d.ts.map +1 -0
- package/dist/esm/persistence/agents/AgentsPersistenceVolatile.js +26 -0
- package/dist/esm/persistence/agents/AgentsPersistenceVolatile.js.map +1 -0
- package/dist/esm/persistence/env/EnvPersistence.d.ts +20 -0
- package/dist/esm/persistence/env/EnvPersistence.d.ts.map +1 -0
- package/dist/esm/persistence/env/EnvPersistence.js +3 -0
- package/dist/esm/persistence/env/EnvPersistence.js.map +1 -0
- package/dist/esm/persistence/env/EnvPersistenceAwsS3.d.ts +31 -0
- package/dist/esm/persistence/env/EnvPersistenceAwsS3.d.ts.map +1 -0
- package/dist/esm/persistence/env/EnvPersistenceAwsS3.js +117 -0
- package/dist/esm/persistence/env/EnvPersistenceAwsS3.js.map +1 -0
- package/dist/esm/persistence/env/EnvPersistenceFactory.d.ts +6 -0
- package/dist/esm/persistence/env/EnvPersistenceFactory.d.ts.map +1 -0
- package/dist/esm/persistence/env/EnvPersistenceFactory.js +3 -0
- package/dist/esm/persistence/env/EnvPersistenceFactory.js.map +1 -0
- package/dist/esm/persistence/env/EnvPersistenceFactoryImpl.d.ts +45 -0
- package/dist/esm/persistence/env/EnvPersistenceFactoryImpl.d.ts.map +1 -0
- package/dist/esm/persistence/env/EnvPersistenceFactoryImpl.js +86 -0
- package/dist/esm/persistence/env/EnvPersistenceFactoryImpl.js.map +1 -0
- package/dist/esm/persistence/env/EnvPersistenceFactoryPreset.d.ts +12 -0
- package/dist/esm/persistence/env/EnvPersistenceFactoryPreset.d.ts.map +1 -0
- package/dist/esm/persistence/env/EnvPersistenceFactoryPreset.js +17 -0
- package/dist/esm/persistence/env/EnvPersistenceFactoryPreset.js.map +1 -0
- package/dist/esm/persistence/env/EnvPersistenceFilesystem.d.ts +36 -0
- package/dist/esm/persistence/env/EnvPersistenceFilesystem.d.ts.map +1 -0
- package/dist/esm/persistence/env/EnvPersistenceFilesystem.js +132 -0
- package/dist/esm/persistence/env/EnvPersistenceFilesystem.js.map +1 -0
- package/dist/esm/persistence/env/EnvPersistenceGoogleCloudStorage.d.ts +30 -0
- package/dist/esm/persistence/env/EnvPersistenceGoogleCloudStorage.d.ts.map +1 -0
- package/dist/esm/persistence/env/EnvPersistenceGoogleCloudStorage.js +131 -0
- package/dist/esm/persistence/env/EnvPersistenceGoogleCloudStorage.js.map +1 -0
- package/dist/esm/persistence/env/EnvPersistenceSqlite.d.ts +19 -0
- package/dist/esm/persistence/env/EnvPersistenceSqlite.d.ts.map +1 -0
- package/dist/esm/persistence/env/EnvPersistenceSqlite.js +54 -0
- package/dist/esm/persistence/env/EnvPersistenceSqlite.js.map +1 -0
- package/dist/esm/persistence/env/EnvPersistenceSupabase.d.ts +17 -0
- package/dist/esm/persistence/env/EnvPersistenceSupabase.d.ts.map +1 -0
- package/dist/esm/persistence/env/EnvPersistenceSupabase.js +60 -0
- package/dist/esm/persistence/env/EnvPersistenceSupabase.js.map +1 -0
- package/dist/esm/persistence/env/EnvPersistenceVolatile.d.ts +13 -0
- package/dist/esm/persistence/env/EnvPersistenceVolatile.d.ts.map +1 -0
- package/dist/esm/persistence/env/EnvPersistenceVolatile.js +31 -0
- package/dist/esm/persistence/env/EnvPersistenceVolatile.js.map +1 -0
- package/dist/esm/persistence/flows/FlowsPersistence.d.ts +87 -0
- package/dist/esm/persistence/flows/FlowsPersistence.d.ts.map +1 -0
- package/dist/esm/persistence/flows/FlowsPersistence.js +3 -0
- package/dist/esm/persistence/flows/FlowsPersistence.js.map +1 -0
- package/dist/esm/persistence/flows/FlowsPersistenceAwsS3.d.ts +71 -0
- package/dist/esm/persistence/flows/FlowsPersistenceAwsS3.d.ts.map +1 -0
- package/dist/esm/persistence/flows/FlowsPersistenceAwsS3.js +448 -0
- package/dist/esm/persistence/flows/FlowsPersistenceAwsS3.js.map +1 -0
- package/dist/esm/persistence/flows/FlowsPersistenceFactory.d.ts +10 -0
- package/dist/esm/persistence/flows/FlowsPersistenceFactory.d.ts.map +1 -0
- package/dist/esm/persistence/flows/FlowsPersistenceFactory.js +3 -0
- package/dist/esm/persistence/flows/FlowsPersistenceFactory.js.map +1 -0
- package/dist/esm/persistence/flows/FlowsPersistenceFactoryImpl.d.ts +57 -0
- package/dist/esm/persistence/flows/FlowsPersistenceFactoryImpl.d.ts.map +1 -0
- package/dist/esm/persistence/flows/FlowsPersistenceFactoryImpl.js +238 -0
- package/dist/esm/persistence/flows/FlowsPersistenceFactoryImpl.js.map +1 -0
- package/dist/esm/persistence/flows/FlowsPersistenceFactoryPreset.d.ts +13 -0
- package/dist/esm/persistence/flows/FlowsPersistenceFactoryPreset.d.ts.map +1 -0
- package/dist/esm/persistence/flows/FlowsPersistenceFactoryPreset.js +24 -0
- package/dist/esm/persistence/flows/FlowsPersistenceFactoryPreset.js.map +1 -0
- package/dist/esm/persistence/flows/FlowsPersistenceFilesystem.d.ts +52 -0
- package/dist/esm/persistence/flows/FlowsPersistenceFilesystem.d.ts.map +1 -0
- package/dist/esm/persistence/flows/FlowsPersistenceFilesystem.js +291 -0
- package/dist/esm/persistence/flows/FlowsPersistenceFilesystem.js.map +1 -0
- package/dist/esm/persistence/flows/FlowsPersistenceGoogleCloudStorage.d.ts +71 -0
- package/dist/esm/persistence/flows/FlowsPersistenceGoogleCloudStorage.d.ts.map +1 -0
- package/dist/esm/persistence/flows/FlowsPersistenceGoogleCloudStorage.js +429 -0
- package/dist/esm/persistence/flows/FlowsPersistenceGoogleCloudStorage.js.map +1 -0
- package/dist/esm/persistence/flows/FlowsPersistenceSqlite.d.ts +43 -0
- package/dist/esm/persistence/flows/FlowsPersistenceSqlite.d.ts.map +1 -0
- package/dist/esm/persistence/flows/FlowsPersistenceSqlite.js +259 -0
- package/dist/esm/persistence/flows/FlowsPersistenceSqlite.js.map +1 -0
- package/dist/esm/persistence/flows/FlowsPersistenceSupabase.d.ts +40 -0
- package/dist/esm/persistence/flows/FlowsPersistenceSupabase.d.ts.map +1 -0
- package/dist/esm/persistence/flows/FlowsPersistenceSupabase.js +218 -0
- package/dist/esm/persistence/flows/FlowsPersistenceSupabase.js.map +1 -0
- package/dist/esm/persistence/flows/FlowsPersistenceVolatile.d.ts +37 -0
- package/dist/esm/persistence/flows/FlowsPersistenceVolatile.d.ts.map +1 -0
- package/dist/esm/persistence/flows/FlowsPersistenceVolatile.js +151 -0
- package/dist/esm/persistence/flows/FlowsPersistenceVolatile.js.map +1 -0
- package/dist/esm/persistence/gptconfigs/GptConfigsPersistence.d.ts +12 -0
- package/dist/esm/persistence/gptconfigs/GptConfigsPersistence.d.ts.map +1 -0
- package/dist/esm/persistence/gptconfigs/GptConfigsPersistence.js +3 -0
- package/dist/esm/persistence/gptconfigs/GptConfigsPersistence.js.map +1 -0
- package/dist/esm/persistence/gptconfigs/GptConfigsPersistenceSqlite.d.ts +13 -0
- package/dist/esm/persistence/gptconfigs/GptConfigsPersistenceSqlite.d.ts.map +1 -0
- package/dist/esm/persistence/gptconfigs/GptConfigsPersistenceSqlite.js +35 -0
- package/dist/esm/persistence/gptconfigs/GptConfigsPersistenceSqlite.js.map +1 -0
- package/dist/esm/persistence/gptconfigs/GptConfigsPersistenceVolatile.d.ts +15 -0
- package/dist/esm/persistence/gptconfigs/GptConfigsPersistenceVolatile.d.ts.map +1 -0
- package/dist/esm/persistence/gptconfigs/GptConfigsPersistenceVolatile.js +31 -0
- package/dist/esm/persistence/gptconfigs/GptConfigsPersistenceVolatile.js.map +1 -0
- package/dist/esm/playwrightTestExtensions.d.ts.map +1 -1
- package/dist/esm/playwrightTestExtensions.js +31 -10
- package/dist/esm/playwrightTestExtensions.js.map +1 -1
- package/dist/esm/tools/GoToWebpageTool.d.ts.map +1 -1
- package/dist/esm/tools/GoToWebpageTool.js +3 -2
- package/dist/esm/tools/GoToWebpageTool.js.map +1 -1
- package/dist/esm/utils/TemplateInterpolator.d.ts +47 -0
- package/dist/esm/utils/TemplateInterpolator.d.ts.map +1 -0
- package/dist/esm/utils/TemplateInterpolator.js +352 -0
- package/dist/esm/utils/TemplateInterpolator.js.map +1 -0
- package/dist/lib/DonobuExtendedPage.d.ts +106 -0
- package/dist/lib/DonobuExtendedPage.d.ts.map +1 -0
- package/dist/lib/DonobuExtendedPage.js +3 -0
- package/dist/lib/DonobuExtendedPage.js.map +1 -0
- package/dist/lib/constants.d.ts +8 -0
- package/dist/lib/constants.d.ts.map +1 -0
- package/dist/lib/constants.js +14 -0
- package/dist/lib/constants.js.map +1 -0
- package/dist/lib/fixtures/browserState.d.ts +6 -0
- package/dist/lib/fixtures/browserState.d.ts.map +1 -0
- package/dist/lib/fixtures/browserState.js +15 -0
- package/dist/lib/fixtures/browserState.js.map +1 -0
- package/dist/lib/fixtures/gptClients.d.ts +40 -0
- package/dist/lib/fixtures/gptClients.d.ts.map +1 -0
- package/dist/lib/fixtures/gptClients.js +187 -0
- package/dist/lib/fixtures/gptClients.js.map +1 -0
- package/dist/lib/fixtures/testExtension.d.ts +10 -0
- package/dist/lib/fixtures/testExtension.d.ts.map +1 -0
- package/dist/lib/fixtures/testExtension.js +383 -0
- package/dist/lib/fixtures/testExtension.js.map +1 -0
- package/dist/lib/testExtension.d.ts +10 -0
- package/dist/lib/testExtension.d.ts.map +1 -0
- package/dist/lib/testExtension.js +383 -0
- package/dist/lib/testExtension.js.map +1 -0
- package/dist/lib/types.d.ts +106 -0
- package/dist/lib/types.d.ts.map +1 -0
- package/dist/lib/types.js +3 -0
- package/dist/lib/types.js.map +1 -0
- package/dist/lib/utils/donobuTestStack.d.ts +7 -0
- package/dist/lib/utils/donobuTestStack.d.ts.map +1 -0
- package/dist/lib/utils/donobuTestStack.js +31 -0
- package/dist/lib/utils/donobuTestStack.js.map +1 -0
- package/dist/lib/utils/selfHealing.d.ts +15 -0
- package/dist/lib/utils/selfHealing.d.ts.map +1 -0
- package/dist/lib/utils/selfHealing.js +89 -0
- package/dist/lib/utils/selfHealing.js.map +1 -0
- package/dist/main.d.ts +5 -1
- package/dist/main.d.ts.map +1 -1
- package/dist/main.js +8 -5
- package/dist/main.js.map +1 -1
- package/dist/managers/AdminApiController.d.ts.map +1 -1
- package/dist/managers/AdminApiController.js +7 -0
- package/dist/managers/AdminApiController.js.map +1 -1
- package/dist/managers/AgentsManager.d.ts +1 -1
- package/dist/managers/AgentsManager.d.ts.map +1 -1
- package/dist/managers/DonobuFlow.d.ts +3 -2
- package/dist/managers/DonobuFlow.d.ts.map +1 -1
- package/dist/managers/DonobuFlow.js +90 -21
- package/dist/managers/DonobuFlow.js.map +1 -1
- package/dist/managers/DonobuFlowsManager.d.ts +47 -6
- package/dist/managers/DonobuFlowsManager.d.ts.map +1 -1
- package/dist/managers/DonobuFlowsManager.js +104 -24
- package/dist/managers/DonobuFlowsManager.js.map +1 -1
- package/dist/managers/DonobuStack.d.ts +18 -4
- package/dist/managers/DonobuStack.d.ts.map +1 -1
- package/dist/managers/DonobuStack.js +21 -5
- package/dist/managers/DonobuStack.js.map +1 -1
- package/dist/managers/EnvDataManager.d.ts +58 -0
- package/dist/managers/EnvDataManager.d.ts.map +1 -0
- package/dist/managers/EnvDataManager.js +134 -0
- package/dist/managers/EnvDataManager.js.map +1 -0
- package/dist/managers/EnvironmentDataManager.d.ts +58 -0
- package/dist/managers/EnvironmentDataManager.d.ts.map +1 -0
- package/dist/managers/EnvironmentDataManager.js +134 -0
- package/dist/managers/EnvironmentDataManager.js.map +1 -0
- package/dist/managers/GptConfigsManager.d.ts +1 -1
- package/dist/managers/GptConfigsManager.d.ts.map +1 -1
- package/dist/managers/PageInspector.d.ts +0 -1
- package/dist/managers/PageInspector.d.ts.map +1 -1
- package/dist/managers/PageInspector.js +29 -26
- package/dist/managers/PageInspector.js.map +1 -1
- package/dist/managers/ToolManager.d.ts +10 -0
- package/dist/managers/ToolManager.d.ts.map +1 -1
- package/dist/managers/ToolManager.js +46 -3
- package/dist/managers/ToolManager.js.map +1 -1
- package/dist/models/BrowserConfig.d.ts +1 -6
- package/dist/models/BrowserConfig.d.ts.map +1 -1
- package/dist/models/BrowserFramework.d.ts +2 -6
- package/dist/models/BrowserFramework.d.ts.map +1 -1
- package/dist/models/BrowserFramework.js +4 -22
- package/dist/models/BrowserFramework.js.map +1 -1
- package/dist/models/CreateDonobuFlow.d.ts +4 -0
- package/dist/models/CreateDonobuFlow.d.ts.map +1 -1
- package/dist/models/EnvironmentDatum.d.ts +54 -0
- package/dist/models/EnvironmentDatum.d.ts.map +1 -0
- package/dist/models/EnvironmentDatum.js +57 -0
- package/dist/models/EnvironmentDatum.js.map +1 -0
- package/dist/models/FlowMetadata.d.ts +14 -1
- package/dist/models/FlowMetadata.d.ts.map +1 -1
- package/dist/models/FlowMetadata.js.map +1 -1
- package/dist/models/PaginatedResult.d.ts +10 -0
- package/dist/models/PaginatedResult.d.ts.map +1 -0
- package/dist/models/PaginatedResult.js +6 -0
- package/dist/models/PaginatedResult.js.map +1 -0
- package/dist/models/ToolCallContext.d.ts +2 -1
- package/dist/models/ToolCallContext.d.ts.map +1 -1
- package/dist/models/ToolTemplateDataSource.d.ts +40 -0
- package/dist/models/ToolTemplateDataSource.d.ts.map +1 -0
- package/dist/models/ToolTemplateDataSource.js +3 -0
- package/dist/models/ToolTemplateDataSource.js.map +1 -0
- package/dist/persistence/DonobuSqliteDb.d.ts.map +1 -1
- package/dist/persistence/DonobuSqliteDb.js +12 -0
- package/dist/persistence/DonobuSqliteDb.js.map +1 -1
- package/dist/persistence/FlowsPersistence.d.ts +23 -14
- package/dist/persistence/FlowsPersistence.d.ts.map +1 -1
- package/dist/persistence/FlowsPersistenceAwsS3.d.ts +10 -5
- package/dist/persistence/FlowsPersistenceAwsS3.d.ts.map +1 -1
- package/dist/persistence/FlowsPersistenceAwsS3.js +79 -1
- package/dist/persistence/FlowsPersistenceAwsS3.js.map +1 -1
- package/dist/persistence/FlowsPersistenceFactoryImpl.js +1 -1
- package/dist/persistence/FlowsPersistenceFactoryImpl.js.map +1 -1
- package/dist/persistence/FlowsPersistenceFilesystem.d.ts +32 -5
- package/dist/persistence/FlowsPersistenceFilesystem.d.ts.map +1 -1
- package/dist/persistence/FlowsPersistenceFilesystem.js +114 -4
- package/dist/persistence/FlowsPersistenceFilesystem.js.map +1 -1
- package/dist/persistence/FlowsPersistenceGoogleCloudStorage.d.ts +10 -5
- package/dist/persistence/FlowsPersistenceGoogleCloudStorage.d.ts.map +1 -1
- package/dist/persistence/FlowsPersistenceGoogleCloudStorage.js +58 -1
- package/dist/persistence/FlowsPersistenceGoogleCloudStorage.js.map +1 -1
- package/dist/persistence/FlowsPersistenceSqlite.d.ts +12 -5
- package/dist/persistence/FlowsPersistenceSqlite.d.ts.map +1 -1
- package/dist/persistence/FlowsPersistenceSqlite.js +35 -1
- package/dist/persistence/FlowsPersistenceSqlite.js.map +1 -1
- package/dist/persistence/FlowsPersistenceSupabase.d.ts +10 -5
- package/dist/persistence/FlowsPersistenceSupabase.d.ts.map +1 -1
- package/dist/persistence/FlowsPersistenceSupabase.js +46 -1
- package/dist/persistence/FlowsPersistenceSupabase.js.map +1 -1
- package/dist/persistence/FlowsPersistenceVolatile.d.ts +10 -5
- package/dist/persistence/FlowsPersistenceVolatile.d.ts.map +1 -1
- package/dist/persistence/FlowsPersistenceVolatile.js +21 -1
- package/dist/persistence/FlowsPersistenceVolatile.js.map +1 -1
- package/dist/persistence/agents/AgentsPersistence.d.ts +12 -0
- package/dist/persistence/agents/AgentsPersistence.d.ts.map +1 -0
- package/dist/persistence/agents/AgentsPersistence.js +3 -0
- package/dist/persistence/agents/AgentsPersistence.js.map +1 -0
- package/dist/persistence/agents/AgentsPersistenceSqlite.d.ts +15 -0
- package/dist/persistence/agents/AgentsPersistenceSqlite.d.ts.map +1 -0
- package/dist/persistence/agents/AgentsPersistenceSqlite.js +50 -0
- package/dist/persistence/agents/AgentsPersistenceSqlite.js.map +1 -0
- package/dist/persistence/agents/AgentsPersistenceVolatile.d.ts +14 -0
- package/dist/persistence/agents/AgentsPersistenceVolatile.d.ts.map +1 -0
- package/dist/persistence/agents/AgentsPersistenceVolatile.js +26 -0
- package/dist/persistence/agents/AgentsPersistenceVolatile.js.map +1 -0
- package/dist/persistence/env/EnvPersistence.d.ts +20 -0
- package/dist/persistence/env/EnvPersistence.d.ts.map +1 -0
- package/dist/persistence/env/EnvPersistence.js +3 -0
- package/dist/persistence/env/EnvPersistence.js.map +1 -0
- package/dist/persistence/env/EnvPersistenceAwsS3.d.ts +31 -0
- package/dist/persistence/env/EnvPersistenceAwsS3.d.ts.map +1 -0
- package/dist/persistence/env/EnvPersistenceAwsS3.js +117 -0
- package/dist/persistence/env/EnvPersistenceAwsS3.js.map +1 -0
- package/dist/persistence/env/EnvPersistenceFactory.d.ts +6 -0
- package/dist/persistence/env/EnvPersistenceFactory.d.ts.map +1 -0
- package/dist/persistence/env/EnvPersistenceFactory.js +3 -0
- package/dist/persistence/env/EnvPersistenceFactory.js.map +1 -0
- package/dist/persistence/env/EnvPersistenceFactoryImpl.d.ts +45 -0
- package/dist/persistence/env/EnvPersistenceFactoryImpl.d.ts.map +1 -0
- package/dist/persistence/env/EnvPersistenceFactoryImpl.js +86 -0
- package/dist/persistence/env/EnvPersistenceFactoryImpl.js.map +1 -0
- package/dist/persistence/env/EnvPersistenceFactoryPreset.d.ts +12 -0
- package/dist/persistence/env/EnvPersistenceFactoryPreset.d.ts.map +1 -0
- package/dist/persistence/env/EnvPersistenceFactoryPreset.js +17 -0
- package/dist/persistence/env/EnvPersistenceFactoryPreset.js.map +1 -0
- package/dist/persistence/env/EnvPersistenceFilesystem.d.ts +36 -0
- package/dist/persistence/env/EnvPersistenceFilesystem.d.ts.map +1 -0
- package/dist/persistence/env/EnvPersistenceFilesystem.js +132 -0
- package/dist/persistence/env/EnvPersistenceFilesystem.js.map +1 -0
- package/dist/persistence/env/EnvPersistenceGoogleCloudStorage.d.ts +30 -0
- package/dist/persistence/env/EnvPersistenceGoogleCloudStorage.d.ts.map +1 -0
- package/dist/persistence/env/EnvPersistenceGoogleCloudStorage.js +131 -0
- package/dist/persistence/env/EnvPersistenceGoogleCloudStorage.js.map +1 -0
- package/dist/persistence/env/EnvPersistenceSqlite.d.ts +19 -0
- package/dist/persistence/env/EnvPersistenceSqlite.d.ts.map +1 -0
- package/dist/persistence/env/EnvPersistenceSqlite.js +54 -0
- package/dist/persistence/env/EnvPersistenceSqlite.js.map +1 -0
- package/dist/persistence/env/EnvPersistenceSupabase.d.ts +17 -0
- package/dist/persistence/env/EnvPersistenceSupabase.d.ts.map +1 -0
- package/dist/persistence/env/EnvPersistenceSupabase.js +60 -0
- package/dist/persistence/env/EnvPersistenceSupabase.js.map +1 -0
- package/dist/persistence/env/EnvPersistenceVolatile.d.ts +13 -0
- package/dist/persistence/env/EnvPersistenceVolatile.d.ts.map +1 -0
- package/dist/persistence/env/EnvPersistenceVolatile.js +31 -0
- package/dist/persistence/env/EnvPersistenceVolatile.js.map +1 -0
- package/dist/persistence/flows/FlowsPersistence.d.ts +87 -0
- package/dist/persistence/flows/FlowsPersistence.d.ts.map +1 -0
- package/dist/persistence/flows/FlowsPersistence.js +3 -0
- package/dist/persistence/flows/FlowsPersistence.js.map +1 -0
- package/dist/persistence/flows/FlowsPersistenceAwsS3.d.ts +71 -0
- package/dist/persistence/flows/FlowsPersistenceAwsS3.d.ts.map +1 -0
- package/dist/persistence/flows/FlowsPersistenceAwsS3.js +448 -0
- package/dist/persistence/flows/FlowsPersistenceAwsS3.js.map +1 -0
- package/dist/persistence/flows/FlowsPersistenceFactory.d.ts +10 -0
- package/dist/persistence/flows/FlowsPersistenceFactory.d.ts.map +1 -0
- package/dist/persistence/flows/FlowsPersistenceFactory.js +3 -0
- package/dist/persistence/flows/FlowsPersistenceFactory.js.map +1 -0
- package/dist/persistence/flows/FlowsPersistenceFactoryImpl.d.ts +57 -0
- package/dist/persistence/flows/FlowsPersistenceFactoryImpl.d.ts.map +1 -0
- package/dist/persistence/flows/FlowsPersistenceFactoryImpl.js +238 -0
- package/dist/persistence/flows/FlowsPersistenceFactoryImpl.js.map +1 -0
- package/dist/persistence/flows/FlowsPersistenceFactoryPreset.d.ts +13 -0
- package/dist/persistence/flows/FlowsPersistenceFactoryPreset.d.ts.map +1 -0
- package/dist/persistence/flows/FlowsPersistenceFactoryPreset.js +24 -0
- package/dist/persistence/flows/FlowsPersistenceFactoryPreset.js.map +1 -0
- package/dist/persistence/flows/FlowsPersistenceFilesystem.d.ts +52 -0
- package/dist/persistence/flows/FlowsPersistenceFilesystem.d.ts.map +1 -0
- package/dist/persistence/flows/FlowsPersistenceFilesystem.js +291 -0
- package/dist/persistence/flows/FlowsPersistenceFilesystem.js.map +1 -0
- package/dist/persistence/flows/FlowsPersistenceGoogleCloudStorage.d.ts +71 -0
- package/dist/persistence/flows/FlowsPersistenceGoogleCloudStorage.d.ts.map +1 -0
- package/dist/persistence/flows/FlowsPersistenceGoogleCloudStorage.js +429 -0
- package/dist/persistence/flows/FlowsPersistenceGoogleCloudStorage.js.map +1 -0
- package/dist/persistence/flows/FlowsPersistenceSqlite.d.ts +43 -0
- package/dist/persistence/flows/FlowsPersistenceSqlite.d.ts.map +1 -0
- package/dist/persistence/flows/FlowsPersistenceSqlite.js +259 -0
- package/dist/persistence/flows/FlowsPersistenceSqlite.js.map +1 -0
- package/dist/persistence/flows/FlowsPersistenceSupabase.d.ts +40 -0
- package/dist/persistence/flows/FlowsPersistenceSupabase.d.ts.map +1 -0
- package/dist/persistence/flows/FlowsPersistenceSupabase.js +218 -0
- package/dist/persistence/flows/FlowsPersistenceSupabase.js.map +1 -0
- package/dist/persistence/flows/FlowsPersistenceVolatile.d.ts +37 -0
- package/dist/persistence/flows/FlowsPersistenceVolatile.d.ts.map +1 -0
- package/dist/persistence/flows/FlowsPersistenceVolatile.js +151 -0
- package/dist/persistence/flows/FlowsPersistenceVolatile.js.map +1 -0
- package/dist/persistence/gptconfigs/GptConfigsPersistence.d.ts +12 -0
- package/dist/persistence/gptconfigs/GptConfigsPersistence.d.ts.map +1 -0
- package/dist/persistence/gptconfigs/GptConfigsPersistence.js +3 -0
- package/dist/persistence/gptconfigs/GptConfigsPersistence.js.map +1 -0
- package/dist/persistence/gptconfigs/GptConfigsPersistenceSqlite.d.ts +13 -0
- package/dist/persistence/gptconfigs/GptConfigsPersistenceSqlite.d.ts.map +1 -0
- package/dist/persistence/gptconfigs/GptConfigsPersistenceSqlite.js +35 -0
- package/dist/persistence/gptconfigs/GptConfigsPersistenceSqlite.js.map +1 -0
- package/dist/persistence/gptconfigs/GptConfigsPersistenceVolatile.d.ts +15 -0
- package/dist/persistence/gptconfigs/GptConfigsPersistenceVolatile.d.ts.map +1 -0
- package/dist/persistence/gptconfigs/GptConfigsPersistenceVolatile.js +31 -0
- package/dist/persistence/gptconfigs/GptConfigsPersistenceVolatile.js.map +1 -0
- package/dist/playwrightTestExtensions.d.ts.map +1 -1
- package/dist/playwrightTestExtensions.js +31 -10
- package/dist/playwrightTestExtensions.js.map +1 -1
- package/dist/tools/GoToWebpageTool.d.ts.map +1 -1
- package/dist/tools/GoToWebpageTool.js +3 -2
- package/dist/tools/GoToWebpageTool.js.map +1 -1
- package/dist/utils/TemplateInterpolator.d.ts +47 -0
- package/dist/utils/TemplateInterpolator.d.ts.map +1 -0
- package/dist/utils/TemplateInterpolator.js +352 -0
- package/dist/utils/TemplateInterpolator.js.map +1 -0
- 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 {
|
|
8
|
-
import {
|
|
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
|
-
|
|
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;
|
|
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
|
-
|
|
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
|
|
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":";;
|
|
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,
|
|
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
|
|
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: '
|
|
256
|
-
|
|
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
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
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`;
|