donobu 2.37.4 → 2.38.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/AskAiApi.d.ts +3 -1
- package/dist/apis/AskAiApi.d.ts.map +1 -1
- package/dist/apis/AskAiApi.js +3 -3
- package/dist/apis/AskAiApi.js.map +1 -1
- package/dist/apis/GptConfigsApi.d.ts +5 -0
- package/dist/apis/GptConfigsApi.d.ts.map +1 -1
- package/dist/apis/GptConfigsApi.js +13 -7
- package/dist/apis/GptConfigsApi.js.map +1 -1
- package/dist/apis/SchemaApi.d.ts +17 -0
- package/dist/apis/SchemaApi.d.ts.map +1 -0
- package/dist/apis/SchemaApi.js +33 -0
- package/dist/apis/SchemaApi.js.map +1 -0
- package/dist/assets/generated/version +1 -1
- package/dist/assets/icon.png +0 -0
- package/dist/assets/openapi-schema.html +18603 -0
- package/dist/assets/openapi-schema.yaml +1483 -0
- package/dist/clients/GptClientFactory.d.ts +19 -2
- package/dist/clients/GptClientFactory.d.ts.map +1 -1
- package/dist/clients/GptClientFactory.js +8 -4
- package/dist/clients/GptClientFactory.js.map +1 -1
- package/dist/envVars.d.ts +29 -1
- package/dist/envVars.d.ts.map +1 -1
- package/dist/envVars.js +78 -2
- package/dist/envVars.js.map +1 -1
- package/dist/esm/apis/AskAiApi.d.ts +3 -1
- package/dist/esm/apis/AskAiApi.d.ts.map +1 -1
- package/dist/esm/apis/AskAiApi.js +3 -3
- package/dist/esm/apis/AskAiApi.js.map +1 -1
- package/dist/esm/apis/GptConfigsApi.d.ts +5 -0
- package/dist/esm/apis/GptConfigsApi.d.ts.map +1 -1
- package/dist/esm/apis/GptConfigsApi.js +13 -7
- package/dist/esm/apis/GptConfigsApi.js.map +1 -1
- package/dist/esm/apis/SchemaApi.d.ts +17 -0
- package/dist/esm/apis/SchemaApi.d.ts.map +1 -0
- package/dist/esm/apis/SchemaApi.js +33 -0
- package/dist/esm/apis/SchemaApi.js.map +1 -0
- package/dist/esm/assets/generated/version +1 -1
- package/dist/esm/assets/icon.png +0 -0
- package/dist/esm/assets/openapi-schema.html +18603 -0
- package/dist/esm/assets/openapi-schema.yaml +1483 -0
- package/dist/esm/clients/GptClientFactory.d.ts +19 -2
- package/dist/esm/clients/GptClientFactory.d.ts.map +1 -1
- package/dist/esm/clients/GptClientFactory.js +8 -4
- package/dist/esm/clients/GptClientFactory.js.map +1 -1
- package/dist/esm/envVars.d.ts +29 -1
- package/dist/esm/envVars.d.ts.map +1 -1
- package/dist/esm/envVars.js +78 -2
- package/dist/esm/envVars.js.map +1 -1
- package/dist/esm/exceptions/DonobuException.d.ts.map +1 -1
- package/dist/esm/exceptions/DonobuException.js +1 -3
- package/dist/esm/exceptions/DonobuException.js.map +1 -1
- package/dist/esm/lib/DonobuExtendedPage.d.ts +1 -1
- package/dist/esm/lib/DonobuExtendedPage.d.ts.map +1 -1
- package/dist/esm/lib/fixtures/gptClients.d.ts.map +1 -1
- package/dist/esm/lib/fixtures/gptClients.js +24 -26
- package/dist/esm/lib/fixtures/gptClients.js.map +1 -1
- package/dist/esm/lib/testExtension.d.ts.map +1 -1
- package/dist/esm/lib/testExtension.js +3 -2
- package/dist/esm/lib/testExtension.js.map +1 -1
- package/dist/esm/main.d.ts.map +1 -1
- package/dist/esm/main.js +1 -1
- package/dist/esm/main.js.map +1 -1
- package/dist/esm/managers/AdminApiController.d.ts +6 -0
- package/dist/esm/managers/AdminApiController.d.ts.map +1 -1
- package/dist/esm/managers/AdminApiController.js +27 -1
- package/dist/esm/managers/AdminApiController.js.map +1 -1
- package/dist/esm/managers/AgentsManager.js +1 -1
- package/dist/esm/managers/AgentsManager.js.map +1 -1
- package/dist/esm/managers/DonobuFlow.d.ts.map +1 -1
- package/dist/esm/managers/DonobuFlow.js +16 -9
- package/dist/esm/managers/DonobuFlow.js.map +1 -1
- package/dist/esm/managers/DonobuFlowsManager.d.ts +3 -7
- package/dist/esm/managers/DonobuFlowsManager.d.ts.map +1 -1
- package/dist/esm/managers/DonobuFlowsManager.js +59 -67
- package/dist/esm/managers/DonobuFlowsManager.js.map +1 -1
- package/dist/esm/managers/DonobuStack.d.ts +2 -0
- package/dist/esm/managers/DonobuStack.d.ts.map +1 -1
- package/dist/esm/managers/DonobuStack.js +5 -2
- package/dist/esm/managers/DonobuStack.js.map +1 -1
- package/dist/esm/managers/EnvDataManager.d.ts +5 -5
- package/dist/esm/managers/EnvDataManager.d.ts.map +1 -1
- package/dist/esm/managers/EnvDataManager.js +19 -26
- package/dist/esm/managers/EnvDataManager.js.map +1 -1
- package/dist/esm/managers/FlowDependencyAnalyzer.d.ts.map +1 -1
- package/dist/esm/managers/FlowDependencyAnalyzer.js +0 -1
- package/dist/esm/managers/FlowDependencyAnalyzer.js.map +1 -1
- package/dist/esm/managers/GptConfigsManager.d.ts +3 -1
- package/dist/esm/managers/GptConfigsManager.d.ts.map +1 -1
- package/dist/esm/managers/GptConfigsManager.js +10 -12
- package/dist/esm/managers/GptConfigsManager.js.map +1 -1
- package/dist/esm/managers/InteractionVisualizer.d.ts +25 -0
- package/dist/esm/managers/InteractionVisualizer.d.ts.map +1 -1
- package/dist/esm/managers/InteractionVisualizer.js +108 -50
- package/dist/esm/managers/InteractionVisualizer.js.map +1 -1
- package/dist/esm/managers/PluginLoader.d.ts +24 -1
- package/dist/esm/managers/PluginLoader.d.ts.map +1 -1
- package/dist/esm/managers/PluginLoader.js +62 -38
- package/dist/esm/managers/PluginLoader.js.map +1 -1
- package/dist/esm/managers/ToolManager.d.ts +1 -0
- package/dist/esm/managers/ToolManager.d.ts.map +1 -1
- package/dist/esm/managers/ToolManager.js +4 -1
- package/dist/esm/managers/ToolManager.js.map +1 -1
- package/dist/esm/models/CreateDonobuFlow.d.ts +1 -0
- package/dist/esm/models/CreateDonobuFlow.d.ts.map +1 -1
- package/dist/esm/models/CreateDonobuFlow.js +1 -0
- package/dist/esm/models/CreateDonobuFlow.js.map +1 -1
- package/dist/esm/models/FlowMetadata.d.ts +1 -0
- package/dist/esm/models/FlowMetadata.d.ts.map +1 -1
- package/dist/esm/models/FlowMetadata.js +5 -0
- package/dist/esm/models/FlowMetadata.js.map +1 -1
- package/dist/esm/persistence/env/EnvPersistenceFactoryImpl.d.ts +2 -1
- package/dist/esm/persistence/env/EnvPersistenceFactoryImpl.d.ts.map +1 -1
- package/dist/esm/persistence/env/EnvPersistenceFactoryImpl.js +6 -5
- package/dist/esm/persistence/env/EnvPersistenceFactoryImpl.js.map +1 -1
- package/dist/esm/persistence/flows/FlowsPersistenceFactoryImpl.d.ts.map +1 -1
- package/dist/esm/persistence/flows/FlowsPersistenceFactoryImpl.js +4 -4
- package/dist/esm/persistence/flows/FlowsPersistenceFactoryImpl.js.map +1 -1
- package/dist/esm/tools/DetectBrokenLinksTool.js +1 -1
- package/dist/esm/tools/DetectBrokenLinksTool.js.map +1 -1
- package/dist/esm/tools/TriggerDonobuFlowTool.d.ts +2 -0
- package/dist/esm/tools/TriggerDonobuFlowTool.d.ts.map +1 -1
- package/dist/esm/utils/BrowserUtils.d.ts +17 -18
- package/dist/esm/utils/BrowserUtils.d.ts.map +1 -1
- package/dist/esm/utils/BrowserUtils.js +43 -40
- package/dist/esm/utils/BrowserUtils.js.map +1 -1
- package/dist/esm/utils/MiscUtils.js +1 -1
- package/dist/esm/utils/MiscUtils.js.map +1 -1
- package/dist/exceptions/DonobuException.d.ts.map +1 -1
- package/dist/exceptions/DonobuException.js +1 -3
- package/dist/exceptions/DonobuException.js.map +1 -1
- package/dist/lib/DonobuExtendedPage.d.ts +1 -1
- package/dist/lib/DonobuExtendedPage.d.ts.map +1 -1
- package/dist/lib/fixtures/gptClients.d.ts.map +1 -1
- package/dist/lib/fixtures/gptClients.js +24 -26
- package/dist/lib/fixtures/gptClients.js.map +1 -1
- package/dist/lib/testExtension.d.ts.map +1 -1
- package/dist/lib/testExtension.js +3 -2
- package/dist/lib/testExtension.js.map +1 -1
- package/dist/main.d.ts.map +1 -1
- package/dist/main.js +1 -1
- package/dist/main.js.map +1 -1
- package/dist/managers/AdminApiController.d.ts +6 -0
- package/dist/managers/AdminApiController.d.ts.map +1 -1
- package/dist/managers/AdminApiController.js +27 -1
- package/dist/managers/AdminApiController.js.map +1 -1
- package/dist/managers/AgentsManager.js +1 -1
- package/dist/managers/AgentsManager.js.map +1 -1
- package/dist/managers/DonobuFlow.d.ts.map +1 -1
- package/dist/managers/DonobuFlow.js +16 -9
- package/dist/managers/DonobuFlow.js.map +1 -1
- package/dist/managers/DonobuFlowsManager.d.ts +3 -7
- package/dist/managers/DonobuFlowsManager.d.ts.map +1 -1
- package/dist/managers/DonobuFlowsManager.js +59 -67
- package/dist/managers/DonobuFlowsManager.js.map +1 -1
- package/dist/managers/DonobuStack.d.ts +2 -0
- package/dist/managers/DonobuStack.d.ts.map +1 -1
- package/dist/managers/DonobuStack.js +5 -2
- package/dist/managers/DonobuStack.js.map +1 -1
- package/dist/managers/EnvDataManager.d.ts +5 -5
- package/dist/managers/EnvDataManager.d.ts.map +1 -1
- package/dist/managers/EnvDataManager.js +19 -26
- package/dist/managers/EnvDataManager.js.map +1 -1
- package/dist/managers/FlowDependencyAnalyzer.d.ts.map +1 -1
- package/dist/managers/FlowDependencyAnalyzer.js +0 -1
- package/dist/managers/FlowDependencyAnalyzer.js.map +1 -1
- package/dist/managers/GptConfigsManager.d.ts +3 -1
- package/dist/managers/GptConfigsManager.d.ts.map +1 -1
- package/dist/managers/GptConfigsManager.js +10 -12
- package/dist/managers/GptConfigsManager.js.map +1 -1
- package/dist/managers/InteractionVisualizer.d.ts +25 -0
- package/dist/managers/InteractionVisualizer.d.ts.map +1 -1
- package/dist/managers/InteractionVisualizer.js +108 -50
- package/dist/managers/InteractionVisualizer.js.map +1 -1
- package/dist/managers/PluginLoader.d.ts +24 -1
- package/dist/managers/PluginLoader.d.ts.map +1 -1
- package/dist/managers/PluginLoader.js +62 -38
- package/dist/managers/PluginLoader.js.map +1 -1
- package/dist/managers/ToolManager.d.ts +1 -0
- package/dist/managers/ToolManager.d.ts.map +1 -1
- package/dist/managers/ToolManager.js +4 -1
- package/dist/managers/ToolManager.js.map +1 -1
- package/dist/models/CreateDonobuFlow.d.ts +1 -0
- package/dist/models/CreateDonobuFlow.d.ts.map +1 -1
- package/dist/models/CreateDonobuFlow.js +1 -0
- package/dist/models/CreateDonobuFlow.js.map +1 -1
- package/dist/models/FlowMetadata.d.ts +1 -0
- package/dist/models/FlowMetadata.d.ts.map +1 -1
- package/dist/models/FlowMetadata.js +5 -0
- package/dist/models/FlowMetadata.js.map +1 -1
- package/dist/persistence/env/EnvPersistenceFactoryImpl.d.ts +2 -1
- package/dist/persistence/env/EnvPersistenceFactoryImpl.d.ts.map +1 -1
- package/dist/persistence/env/EnvPersistenceFactoryImpl.js +6 -5
- package/dist/persistence/env/EnvPersistenceFactoryImpl.js.map +1 -1
- package/dist/persistence/flows/FlowsPersistenceFactoryImpl.d.ts.map +1 -1
- package/dist/persistence/flows/FlowsPersistenceFactoryImpl.js +4 -4
- package/dist/persistence/flows/FlowsPersistenceFactoryImpl.js.map +1 -1
- package/dist/tools/DetectBrokenLinksTool.js +1 -1
- package/dist/tools/DetectBrokenLinksTool.js.map +1 -1
- package/dist/tools/TriggerDonobuFlowTool.d.ts +2 -0
- package/dist/tools/TriggerDonobuFlowTool.d.ts.map +1 -1
- package/dist/utils/BrowserUtils.d.ts +17 -18
- package/dist/utils/BrowserUtils.d.ts.map +1 -1
- package/dist/utils/BrowserUtils.js +43 -40
- package/dist/utils/BrowserUtils.js.map +1 -1
- package/dist/utils/MiscUtils.js +1 -1
- package/dist/utils/MiscUtils.js.map +1 -1
- package/package.json +16 -16
package/dist/apis/AskAiApi.d.ts
CHANGED
|
@@ -1,13 +1,15 @@
|
|
|
1
1
|
import { Request, Response } from 'express';
|
|
2
2
|
import { GptConfigsManager } from '../managers/GptConfigsManager';
|
|
3
3
|
import { AgentsManager } from '../managers/AgentsManager';
|
|
4
|
+
import { GptClientFactory } from '../clients/GptClientFactory';
|
|
4
5
|
/**
|
|
5
6
|
* This API is a lightweight wrapper for a GPT client.
|
|
6
7
|
*/
|
|
7
8
|
export declare class AskAiApi {
|
|
9
|
+
private readonly gptClientFactory;
|
|
8
10
|
private readonly gptConfigsManager;
|
|
9
11
|
private readonly agentsManager;
|
|
10
|
-
constructor(gptConfigsManager: GptConfigsManager, agentsManager: AgentsManager);
|
|
12
|
+
constructor(gptClientFactory: GptClientFactory, gptConfigsManager: GptConfigsManager, agentsManager: AgentsManager);
|
|
11
13
|
ask(req: Request, res: Response): Promise<void>;
|
|
12
14
|
/**
|
|
13
15
|
* If specified, attempts to load the given GPT config by name, otherwise,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AskAiApi.d.ts","sourceRoot":"","sources":["../../src/apis/AskAiApi.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAElE,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"AskAiApi.d.ts","sourceRoot":"","sources":["../../src/apis/AskAiApi.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAElE,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAM/D;;GAEG;AACH,qBAAa,QAAQ;IAEjB,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAClC,OAAO,CAAC,QAAQ,CAAC,aAAa;gBAFb,gBAAgB,EAAE,gBAAgB,EAClC,iBAAiB,EAAE,iBAAiB,EACpC,aAAa,EAAE,aAAa;IAGlC,GAAG,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAwC5D;;;OAGG;YACW,gBAAgB;CAe/B"}
|
package/dist/apis/AskAiApi.js
CHANGED
|
@@ -2,14 +2,14 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.AskAiApi = void 0;
|
|
4
4
|
const GptApiKeysNotSetupException_1 = require("../exceptions/GptApiKeysNotSetupException");
|
|
5
|
-
const GptClientFactory_1 = require("../clients/GptClientFactory");
|
|
6
5
|
const JsonSchemaUtils_1 = require("../utils/JsonSchemaUtils");
|
|
7
6
|
const v4_1 = require("zod/v4");
|
|
8
7
|
/**
|
|
9
8
|
* This API is a lightweight wrapper for a GPT client.
|
|
10
9
|
*/
|
|
11
10
|
class AskAiApi {
|
|
12
|
-
constructor(gptConfigsManager, agentsManager) {
|
|
11
|
+
constructor(gptClientFactory, gptConfigsManager, agentsManager) {
|
|
12
|
+
this.gptClientFactory = gptClientFactory;
|
|
13
13
|
this.gptConfigsManager = gptConfigsManager;
|
|
14
14
|
this.agentsManager = agentsManager;
|
|
15
15
|
}
|
|
@@ -30,7 +30,7 @@ class AskAiApi {
|
|
|
30
30
|
})
|
|
31
31
|
.parse(req.body);
|
|
32
32
|
const gptConfig = await this.resolveGptConfig(parsedBody.gptConfigNameOverride);
|
|
33
|
-
const gptClient = await
|
|
33
|
+
const gptClient = await this.gptClientFactory.createClient(gptConfig);
|
|
34
34
|
const gptRequestMessages = [
|
|
35
35
|
{
|
|
36
36
|
type: 'user',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AskAiApi.js","sourceRoot":"","sources":["../../src/apis/AskAiApi.ts"],"names":[],"mappings":";;;AAIA,2FAAwF;
|
|
1
|
+
{"version":3,"file":"AskAiApi.js","sourceRoot":"","sources":["../../src/apis/AskAiApi.ts"],"names":[],"mappings":";;;AAIA,2FAAwF;AAGxF,8DAA2D;AAC3D,+BAA2B;AAG3B;;GAEG;AACH,MAAa,QAAQ;IACnB,YACmB,gBAAkC,EAClC,iBAAoC,EACpC,aAA4B;QAF5B,qBAAgB,GAAhB,gBAAgB,CAAkB;QAClC,sBAAiB,GAAjB,iBAAiB,CAAmB;QACpC,kBAAa,GAAb,aAAa,CAAe;IAC5C,CAAC;IAEG,KAAK,CAAC,GAAG,CAAC,GAAY,EAAE,GAAa;QAC1C,MAAM,UAAU,GAAG,MAAC;aACjB,MAAM,CAAC;YACN;;eAEG;YACH,MAAM,EAAE,MAAC,CAAC,MAAM,EAAE;YAClB;;;gBAGI;YACJ,qBAAqB,EAAE,MAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YAC5C,mEAAmE;YACnE,gBAAgB,EAAE,MAAC,CAAC,MAAM,EAAyB,CAAC,QAAQ,EAAE;SAC/D,CAAC;aACD,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACnB,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAC3C,UAAU,CAAC,qBAAqB,CACjC,CAAC;QACF,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;QACtE,MAAM,kBAAkB,GAAG;YACzB;gBACE,IAAI,EAAE,MAAM;gBACZ,KAAK,EAAE;oBACL;wBACE,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,UAAU,CAAC,MAAM;qBACxB;iBACF;aACoB;SACxB,CAAC;QACF,MAAM,QAAQ,GAAG,UAAU,CAAC,gBAAgB;YAC1C,CAAC,CAAC,MAAM,SAAS,CAAC,mBAAmB,CACjC,kBAAkB,EAClB,IAAA,iCAAe,EAAC,UAAU,CAAC,gBAAgB,CAAqB,CACjE;YACH,CAAC,CAAC,MAAM,SAAS,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAAC;QACnD,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACrB,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,gBAAgB,CAC5B,qBAA8B;QAE9B,IAAI,qBAAqB,EAAE,CAAC;YAC1B,OAAO,MAAM,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;QACjE,CAAC;aAAM,CAAC;YACN,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;YAElE,IAAI,CAAC,aAAa,EAAE,CAAC;gBACnB,MAAM,IAAI,yDAA2B,EAAE,CAAC;YAC1C,CAAC;YAED,OAAO,MAAM,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QACzD,CAAC;IACH,CAAC;CACF;AAlED,4BAkEC"}
|
|
@@ -23,6 +23,11 @@ import { AgentsManager } from '../managers/AgentsManager';
|
|
|
23
23
|
export declare class GptConfigsApi {
|
|
24
24
|
private readonly gptConfigsManager;
|
|
25
25
|
private readonly agentsManager;
|
|
26
|
+
/**
|
|
27
|
+
* Zod schema for validating GPT config names from URL parameters.
|
|
28
|
+
* Ensures names are non-empty strings with reasonable length constraints.
|
|
29
|
+
*/
|
|
30
|
+
private static readonly GPT_CONFIG_NAME_SCHEMA;
|
|
26
31
|
/**
|
|
27
32
|
* Field names that contain sensitive data and should be redacted in API responses.
|
|
28
33
|
* These fields are automatically replaced with asterisks to prevent credential exposure.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GptConfigsApi.d.ts","sourceRoot":"","sources":["../../src/apis/GptConfigsApi.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"GptConfigsApi.d.ts","sourceRoot":"","sources":["../../src/apis/GptConfigsApi.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAE5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,SAAS,EAAmB,MAAM,qBAAqB,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAG1D;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,aAAa;IA0BtB,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAClC,OAAO,CAAC,QAAQ,CAAC,aAAa;IA1BhC;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,sBAAsB,CAO1C;IAEJ;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,oBAAoB,CAK1C;gBAGiB,iBAAiB,EAAE,iBAAiB,EACpC,aAAa,EAAE,aAAa;IAG/C;;;;;;;;;;;;;;;;;OAiBG;IACU,GAAG,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAY5D;;;;;;OAMG;IACU,GAAG,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ5D;;;;;;;OAOG;IACU,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAWhE;;;;;;;;;;OAUG;IACU,MAAM,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IA8B/D;;;OAGG;WACW,mBAAmB,CAAC,MAAM,EAAE,SAAS,GAAG,SAAS;CAYhE"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.GptConfigsApi = void 0;
|
|
4
|
-
const
|
|
4
|
+
const v4_1 = require("zod/v4");
|
|
5
5
|
const GptConfig_1 = require("../models/GptConfig");
|
|
6
6
|
const Logger_1 = require("../utils/Logger");
|
|
7
7
|
/**
|
|
@@ -46,11 +46,8 @@ class GptConfigsApi {
|
|
|
46
46
|
* - Original credentials are securely stored but never returned
|
|
47
47
|
*/
|
|
48
48
|
async set(req, res) {
|
|
49
|
-
const name = req.params.name;
|
|
49
|
+
const name = GptConfigsApi.GPT_CONFIG_NAME_SCHEMA.parse(req.params.name);
|
|
50
50
|
const parsedBody = GptConfig_1.GptConfigSchema.parse(req.body);
|
|
51
|
-
if (!name) {
|
|
52
|
-
throw new GptConfigNotFoundException_1.GptConfigNotFoundException(name);
|
|
53
|
-
}
|
|
54
51
|
await this.gptConfigsManager.set(name, parsedBody);
|
|
55
52
|
// Trigger auto-assignment of flow-runner if no configuration is currently assigned
|
|
56
53
|
await this.agentsManager.triggerAutoAssignment();
|
|
@@ -101,7 +98,7 @@ class GptConfigsApi {
|
|
|
101
98
|
try {
|
|
102
99
|
// If this GPT config is associated with an agent, delete its reference.
|
|
103
100
|
const agentNameToConfigNameMap = await this.agentsManager.getAll();
|
|
104
|
-
|
|
101
|
+
for (const [agentName, configName] of agentNameToConfigNameMap) {
|
|
105
102
|
if (configName === name) {
|
|
106
103
|
try {
|
|
107
104
|
await this.agentsManager.set(agentName, null);
|
|
@@ -110,7 +107,7 @@ class GptConfigsApi {
|
|
|
110
107
|
Logger_1.appLogger.warn(`Failed to unset Donobu ${agentName} agent configuration from '${name}'`, error);
|
|
111
108
|
}
|
|
112
109
|
}
|
|
113
|
-
}
|
|
110
|
+
}
|
|
114
111
|
}
|
|
115
112
|
catch (error) {
|
|
116
113
|
Logger_1.appLogger.warn(`Failed to unset Donobu agent configurations from '${name}'`, error);
|
|
@@ -133,6 +130,15 @@ class GptConfigsApi {
|
|
|
133
130
|
}
|
|
134
131
|
}
|
|
135
132
|
exports.GptConfigsApi = GptConfigsApi;
|
|
133
|
+
/**
|
|
134
|
+
* Zod schema for validating GPT config names from URL parameters.
|
|
135
|
+
* Ensures names are non-empty strings with reasonable length constraints.
|
|
136
|
+
*/
|
|
137
|
+
GptConfigsApi.GPT_CONFIG_NAME_SCHEMA = v4_1.z
|
|
138
|
+
.string()
|
|
139
|
+
.min(1, 'GPT config name cannot be empty')
|
|
140
|
+
.max(100, 'GPT config name cannot exceed 100 characters')
|
|
141
|
+
.regex(/^[a-zA-Z0-9_\s-]+$/, 'GPT config name can only contain alphanumeric characters, spaces, underscores, and hyphens');
|
|
136
142
|
/**
|
|
137
143
|
* Field names that contain sensitive data and should be redacted in API responses.
|
|
138
144
|
* These fields are automatically replaced with asterisks to prevent credential exposure.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GptConfigsApi.js","sourceRoot":"","sources":["../../src/apis/GptConfigsApi.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"GptConfigsApi.js","sourceRoot":"","sources":["../../src/apis/GptConfigsApi.ts"],"names":[],"mappings":";;;AACA,+BAA2B;AAE3B,mDAAiE;AAEjE,4CAA4C;AAE5C;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAa,aAAa;IAyBxB,YACmB,iBAAoC,EACpC,aAA4B;QAD5B,sBAAiB,GAAjB,iBAAiB,CAAmB;QACpC,kBAAa,GAAb,aAAa,CAAe;IAC5C,CAAC;IAEJ;;;;;;;;;;;;;;;;;OAiBG;IACI,KAAK,CAAC,GAAG,CAAC,GAAY,EAAE,GAAa;QAC1C,MAAM,IAAI,GAAG,aAAa,CAAC,sBAAsB,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACzE,MAAM,UAAU,GAAG,2BAAe,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAEnD,MAAM,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;QAEnD,mFAAmF;QACnF,MAAM,IAAI,CAAC,aAAa,CAAC,qBAAqB,EAAE,CAAC;QAEjD,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC,CAAC;IAC1D,CAAC;IAED;;;;;;OAMG;IACI,KAAK,CAAC,GAAG,CAAC,GAAY,EAAE,GAAa;QAC1C,MAAM,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC;QAC7B,MAAM,MAAM,GAAG,aAAa,CAAC,mBAAmB,CAC9C,MAAM,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,CACvC,CAAC;QACF,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACnB,CAAC;IAED;;;;;;;OAOG;IACI,KAAK,CAAC,MAAM,CAAC,IAAa,EAAE,GAAa;QAC9C,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,CAAC;QACtD,MAAM,eAAe,GAAG,IAAI,GAAG,CAC7B,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC;YAClD,GAAG;YACH,aAAa,CAAC,mBAAmB,CAAC,KAAK,CAAC;SACzC,CAAC,CACH,CAAC;QACF,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC,CAAC;IAChD,CAAC;IAED;;;;;;;;;;OAUG;IACI,KAAK,CAAC,MAAM,CAAC,GAAY,EAAE,GAAa;QAC7C,MAAM,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC;QAC7B,MAAM,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAE1C,IAAI,CAAC;YACH,wEAAwE;YACxE,MAAM,wBAAwB,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC;YAEnE,KAAK,MAAM,CAAC,SAAS,EAAE,UAAU,CAAC,IAAI,wBAAwB,EAAE,CAAC;gBAC/D,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;oBACxB,IAAI,CAAC;wBACH,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;oBAChD,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACf,kBAAS,CAAC,IAAI,CACZ,0BAA0B,SAAS,8BAA8B,IAAI,GAAG,EACxE,KAAK,CACN,CAAC;oBACJ,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,kBAAS,CAAC,IAAI,CACZ,qDAAqD,IAAI,GAAG,EAC5D,KAAK,CACN,CAAC;QACJ,CAAC;QAED,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,CAAC;IAED;;;OAGG;IACI,MAAM,CAAC,mBAAmB,CAAC,MAAiB;QACjD,MAAM,UAAU,GAAG,EAAE,GAAG,MAAM,EAAE,CAAC;QAEjC,KAAK,MAAM,iBAAiB,IAAI,aAAa,CAAC,oBAAoB,EAAE,CAAC;YACnE,IAAI,iBAAiB,IAAI,UAAU,EAAE,CAAC;gBACpC,wDAAwD;gBACvD,UAAkB,CAAC,iBAAiB,CAAC,GAAG,kBAAkB,CAAC;YAC9D,CAAC;QACH,CAAC;QAED,OAAO,UAAU,CAAC;IACpB,CAAC;;AAtJH,sCAuJC;AAtJC;;;GAGG;AACqB,oCAAsB,GAAG,MAAC;KAC/C,MAAM,EAAE;KACR,GAAG,CAAC,CAAC,EAAE,iCAAiC,CAAC;KACzC,GAAG,CAAC,GAAG,EAAE,8CAA8C,CAAC;KACxD,KAAK,CACJ,oBAAoB,EACpB,4FAA4F,CAC7F,CAAC;AAEJ;;;GAGG;AACqB,kCAAoB,GAAG;IAC7C,QAAQ;IACR,aAAa;IACb,KAAK;IACL,iBAAiB;CAClB,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { Request, Response } from 'express';
|
|
2
|
+
/**
|
|
3
|
+
* API endpoints for serving OpenAPI schema documentation.
|
|
4
|
+
*/
|
|
5
|
+
export declare class SchemaApi {
|
|
6
|
+
readonly yamlSchema: string;
|
|
7
|
+
readonly htmlSchema: string;
|
|
8
|
+
private static DEFAULT_YAML_SCHEMA;
|
|
9
|
+
private static DEFAULT_HTML_SCHEMA;
|
|
10
|
+
constructor(yamlSchema?: string, htmlSchema?: string);
|
|
11
|
+
/**
|
|
12
|
+
* Serves the OpenAPI schema in YAML or HTML format based on Accept header.
|
|
13
|
+
* Defaults to YAML if no specific format is requested.
|
|
14
|
+
*/
|
|
15
|
+
getSchema(req: Request, res: Response): Promise<void>;
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=SchemaApi.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SchemaApi.d.ts","sourceRoot":"","sources":["../../src/apis/SchemaApi.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAG5C;;GAEG;AACH,qBAAa,SAAS;aASF,UAAU,EAAE,MAAM;aAClB,UAAU,EAAE,MAAM;IATpC,OAAO,CAAC,MAAM,CAAC,mBAAmB,CAEhC;IACF,OAAO,CAAC,MAAM,CAAC,mBAAmB,CAEhC;gBAGgB,UAAU,GAAE,MAAsC,EAClD,UAAU,GAAE,MAAsC;IAGpE;;;OAGG;IACU,SAAS,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;CAYnE"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SchemaApi = void 0;
|
|
4
|
+
const MiscUtils_1 = require("../utils/MiscUtils");
|
|
5
|
+
/**
|
|
6
|
+
* API endpoints for serving OpenAPI schema documentation.
|
|
7
|
+
*/
|
|
8
|
+
class SchemaApi {
|
|
9
|
+
constructor(yamlSchema = SchemaApi.DEFAULT_YAML_SCHEMA, htmlSchema = SchemaApi.DEFAULT_HTML_SCHEMA) {
|
|
10
|
+
this.yamlSchema = yamlSchema;
|
|
11
|
+
this.htmlSchema = htmlSchema;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Serves the OpenAPI schema in YAML or HTML format based on Accept header.
|
|
15
|
+
* Defaults to YAML if no specific format is requested.
|
|
16
|
+
*/
|
|
17
|
+
async getSchema(req, res) {
|
|
18
|
+
const acceptHeader = req.headers.accept || '';
|
|
19
|
+
const prefersHtml = acceptHeader.includes('text/html');
|
|
20
|
+
if (prefersHtml) {
|
|
21
|
+
res.setHeader('Content-Type', 'text/html; charset=utf-8');
|
|
22
|
+
res.send(this.htmlSchema);
|
|
23
|
+
}
|
|
24
|
+
else {
|
|
25
|
+
res.setHeader('Content-Type', 'application/yaml; charset=utf-8');
|
|
26
|
+
res.send(this.yamlSchema);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
exports.SchemaApi = SchemaApi;
|
|
31
|
+
SchemaApi.DEFAULT_YAML_SCHEMA = MiscUtils_1.MiscUtils.getResourceFileAsString('openapi-schema.yaml');
|
|
32
|
+
SchemaApi.DEFAULT_HTML_SCHEMA = MiscUtils_1.MiscUtils.getResourceFileAsString('openapi-schema.html');
|
|
33
|
+
//# sourceMappingURL=SchemaApi.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SchemaApi.js","sourceRoot":"","sources":["../../src/apis/SchemaApi.ts"],"names":[],"mappings":";;;AACA,kDAA+C;AAE/C;;GAEG;AACH,MAAa,SAAS;IAQpB,YACkB,aAAqB,SAAS,CAAC,mBAAmB,EAClD,aAAqB,SAAS,CAAC,mBAAmB;QADlD,eAAU,GAAV,UAAU,CAAwC;QAClD,eAAU,GAAV,UAAU,CAAwC;IACjE,CAAC;IAEJ;;;OAGG;IACI,KAAK,CAAC,SAAS,CAAC,GAAY,EAAE,GAAa;QAChD,MAAM,YAAY,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC;QAC9C,MAAM,WAAW,GAAG,YAAY,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QAEvD,IAAI,WAAW,EAAE,CAAC;YAChB,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,0BAA0B,CAAC,CAAC;YAC1D,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC5B,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,iCAAiC,CAAC,CAAC;YACjE,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC;;AA5BH,8BA6BC;AA5BgB,6BAAmB,GAAG,qBAAS,CAAC,uBAAuB,CACpE,qBAAqB,CACtB,CAAC;AACa,6BAAmB,GAAG,qBAAS,CAAC,uBAAuB,CACpE,qBAAqB,CACtB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
1377
|
package/dist/assets/icon.png
CHANGED
|
Binary file
|