@aigne/core 0.0.2 → 0.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (168) hide show
  1. package/lib/cjs/index.js +1 -1
  2. package/lib/cjs/types/index.js +2 -4
  3. package/lib/esm/index.js +1 -1
  4. package/lib/esm/types/index.js +2 -4
  5. package/lib/types/index.d.ts +1 -1
  6. package/lib/types/types/agent.d.ts +5 -0
  7. package/lib/types/types/index.d.ts +2 -4
  8. package/lib/types/types/runnable.d.ts +20 -0
  9. package/package.json +6 -7
  10. package/lib/cjs/assistant/generate-output.js +0 -101
  11. package/lib/cjs/assistant/select-agent.js +0 -76
  12. package/lib/cjs/assistant/type.js +0 -11
  13. package/lib/cjs/common/aid.js +0 -42
  14. package/lib/cjs/common/index.js +0 -238
  15. package/lib/cjs/common/resource-manager.js +0 -199
  16. package/lib/cjs/constants.js +0 -9
  17. package/lib/cjs/executor/agent.js +0 -10
  18. package/lib/cjs/executor/aigc.js +0 -28
  19. package/lib/cjs/executor/api.js +0 -64
  20. package/lib/cjs/executor/base.js +0 -676
  21. package/lib/cjs/executor/blocklet.js +0 -25
  22. package/lib/cjs/executor/call-agent.js +0 -105
  23. package/lib/cjs/executor/decision.js +0 -478
  24. package/lib/cjs/executor/image-blender.js +0 -32
  25. package/lib/cjs/executor/index.js +0 -81
  26. package/lib/cjs/executor/llm.js +0 -379
  27. package/lib/cjs/executor/logic.js +0 -167
  28. package/lib/cjs/libs/blocklet/vc.js +0 -92
  29. package/lib/cjs/libs/openapi/request/index.js +0 -24
  30. package/lib/cjs/libs/openapi/request/util.js +0 -146
  31. package/lib/cjs/libs/openapi/types/index.js +0 -17
  32. package/lib/cjs/libs/openapi/util/call.js +0 -15
  33. package/lib/cjs/libs/openapi/util/check-schema.js +0 -67
  34. package/lib/cjs/libs/openapi/util/convert-schema.js +0 -44
  35. package/lib/cjs/libs/openapi/util/flatten-open-api.js +0 -21
  36. package/lib/cjs/libs/openapi/util/get-open-api-i18n-text.js +0 -7
  37. package/lib/cjs/runtime/resource-blocklet.js +0 -5
  38. package/lib/cjs/runtime/runtime.js +0 -143
  39. package/lib/cjs/types/assistant/index.js +0 -31
  40. package/lib/cjs/types/assistant/mustache/ReadableMustache.js +0 -69
  41. package/lib/cjs/types/assistant/mustache/directive.js +0 -35
  42. package/lib/cjs/types/assistant/mustache/mustache.js +0 -688
  43. package/lib/cjs/types/resource/index.js +0 -47
  44. package/lib/cjs/types/resource/project.js +0 -35
  45. package/lib/cjs/types/runtime/error.js +0 -18
  46. package/lib/cjs/types/runtime/index.js +0 -37
  47. package/lib/cjs/types/runtime/runtime-resource-blocklet-state.js +0 -4
  48. package/lib/cjs/types/runtime/schema.js +0 -259
  49. package/lib/cjs/utils/cron-job.js +0 -48
  50. package/lib/cjs/utils/extract-metadata-transform.js +0 -58
  51. package/lib/cjs/utils/extract-metadata-transform.test.js +0 -61
  52. package/lib/cjs/utils/fs.js +0 -49
  53. package/lib/cjs/utils/get-blocklet-agent.js +0 -351
  54. package/lib/cjs/utils/geti.js +0 -37
  55. package/lib/cjs/utils/is-non-nullable.js +0 -20
  56. package/lib/cjs/utils/render-message.js +0 -23
  57. package/lib/cjs/utils/resolve-secret-inputs.js +0 -49
  58. package/lib/cjs/utils/retry.js +0 -19
  59. package/lib/cjs/utils/task-id.js +0 -7
  60. package/lib/cjs/utils/tool-calls-transform.js +0 -18
  61. package/lib/esm/assistant/generate-output.js +0 -91
  62. package/lib/esm/assistant/select-agent.js +0 -71
  63. package/lib/esm/assistant/type.js +0 -7
  64. package/lib/esm/common/aid.js +0 -38
  65. package/lib/esm/common/index.js +0 -232
  66. package/lib/esm/common/resource-manager.js +0 -192
  67. package/lib/esm/constants.js +0 -6
  68. package/lib/esm/executor/agent.js +0 -6
  69. package/lib/esm/executor/aigc.js +0 -24
  70. package/lib/esm/executor/api.js +0 -34
  71. package/lib/esm/executor/base.js +0 -668
  72. package/lib/esm/executor/blocklet.js +0 -21
  73. package/lib/esm/executor/call-agent.js +0 -98
  74. package/lib/esm/executor/decision.js +0 -471
  75. package/lib/esm/executor/image-blender.js +0 -25
  76. package/lib/esm/executor/index.js +0 -74
  77. package/lib/esm/executor/llm.js +0 -372
  78. package/lib/esm/executor/logic.js +0 -160
  79. package/lib/esm/libs/blocklet/vc.js +0 -85
  80. package/lib/esm/libs/openapi/request/index.js +0 -20
  81. package/lib/esm/libs/openapi/request/util.js +0 -136
  82. package/lib/esm/libs/openapi/types/index.js +0 -1
  83. package/lib/esm/libs/openapi/util/call.js +0 -8
  84. package/lib/esm/libs/openapi/util/check-schema.js +0 -62
  85. package/lib/esm/libs/openapi/util/convert-schema.js +0 -42
  86. package/lib/esm/libs/openapi/util/flatten-open-api.js +0 -19
  87. package/lib/esm/libs/openapi/util/get-open-api-i18n-text.js +0 -5
  88. package/lib/esm/runtime/resource-blocklet.js +0 -2
  89. package/lib/esm/runtime/runtime.js +0 -136
  90. package/lib/esm/types/assistant/index.js +0 -9
  91. package/lib/esm/types/assistant/mustache/ReadableMustache.js +0 -63
  92. package/lib/esm/types/assistant/mustache/directive.js +0 -29
  93. package/lib/esm/types/assistant/mustache/mustache.js +0 -686
  94. package/lib/esm/types/resource/index.js +0 -26
  95. package/lib/esm/types/resource/project.js +0 -29
  96. package/lib/esm/types/runtime/error.js +0 -14
  97. package/lib/esm/types/runtime/index.js +0 -20
  98. package/lib/esm/types/runtime/runtime-resource-blocklet-state.js +0 -1
  99. package/lib/esm/types/runtime/schema.js +0 -249
  100. package/lib/esm/utils/cron-job.js +0 -44
  101. package/lib/esm/utils/extract-metadata-transform.js +0 -54
  102. package/lib/esm/utils/extract-metadata-transform.test.js +0 -59
  103. package/lib/esm/utils/fs.js +0 -41
  104. package/lib/esm/utils/get-blocklet-agent.js +0 -344
  105. package/lib/esm/utils/geti.js +0 -30
  106. package/lib/esm/utils/is-non-nullable.js +0 -13
  107. package/lib/esm/utils/render-message.js +0 -20
  108. package/lib/esm/utils/resolve-secret-inputs.js +0 -46
  109. package/lib/esm/utils/retry.js +0 -16
  110. package/lib/esm/utils/task-id.js +0 -3
  111. package/lib/esm/utils/tool-calls-transform.js +0 -15
  112. package/lib/types/assistant/generate-output.d.ts +0 -29
  113. package/lib/types/assistant/select-agent.d.ts +0 -14
  114. package/lib/types/assistant/type.d.ts +0 -61
  115. package/lib/types/common/aid.d.ts +0 -18
  116. package/lib/types/common/index.d.ts +0 -7
  117. package/lib/types/common/resource-manager.d.ts +0 -88
  118. package/lib/types/constants.d.ts +0 -6
  119. package/lib/types/executor/agent.d.ts +0 -5
  120. package/lib/types/executor/aigc.d.ts +0 -9
  121. package/lib/types/executor/api.d.ts +0 -9
  122. package/lib/types/executor/base.d.ts +0 -209
  123. package/lib/types/executor/blocklet.d.ts +0 -9
  124. package/lib/types/executor/call-agent.d.ts +0 -12
  125. package/lib/types/executor/decision.d.ts +0 -20
  126. package/lib/types/executor/image-blender.d.ts +0 -9
  127. package/lib/types/executor/index.d.ts +0 -8
  128. package/lib/types/executor/llm.d.ts +0 -38
  129. package/lib/types/executor/logic.d.ts +0 -9
  130. package/lib/types/libs/blocklet/vc.d.ts +0 -17
  131. package/lib/types/libs/openapi/request/index.d.ts +0 -17
  132. package/lib/types/libs/openapi/request/util.d.ts +0 -40
  133. package/lib/types/libs/openapi/types/index.d.ts +0 -20
  134. package/lib/types/libs/openapi/util/call.d.ts +0 -2
  135. package/lib/types/libs/openapi/util/check-schema.d.ts +0 -3
  136. package/lib/types/libs/openapi/util/convert-schema.d.ts +0 -8
  137. package/lib/types/libs/openapi/util/flatten-open-api.d.ts +0 -3
  138. package/lib/types/libs/openapi/util/get-open-api-i18n-text.d.ts +0 -2
  139. package/lib/types/runtime/resource-blocklet.d.ts +0 -2
  140. package/lib/types/runtime/runtime.d.ts +0 -20
  141. package/lib/types/types/assistant/index.d.ts +0 -405
  142. package/lib/types/types/assistant/mustache/ReadableMustache.d.ts +0 -2
  143. package/lib/types/types/assistant/mustache/directive.d.ts +0 -6
  144. package/lib/types/types/assistant/mustache/mustache.d.ts +0 -2
  145. package/lib/types/types/common/index.d.ts +0 -45
  146. package/lib/types/types/resource/index.d.ts +0 -17
  147. package/lib/types/types/resource/project.d.ts +0 -41
  148. package/lib/types/types/runtime/agent.d.ts +0 -33
  149. package/lib/types/types/runtime/error.d.ts +0 -10
  150. package/lib/types/types/runtime/index.d.ts +0 -116
  151. package/lib/types/types/runtime/runtime-resource-blocklet-state.d.ts +0 -5
  152. package/lib/types/types/runtime/schema.d.ts +0 -110
  153. package/lib/types/utils/cron-job.d.ts +0 -22
  154. package/lib/types/utils/extract-metadata-transform.d.ts +0 -16
  155. package/lib/types/utils/extract-metadata-transform.test.d.ts +0 -1
  156. package/lib/types/utils/fs.d.ts +0 -9
  157. package/lib/types/utils/get-blocklet-agent.d.ts +0 -219
  158. package/lib/types/utils/geti.d.ts +0 -1
  159. package/lib/types/utils/is-non-nullable.d.ts +0 -2
  160. package/lib/types/utils/render-message.d.ts +0 -6
  161. package/lib/types/utils/resolve-secret-inputs.d.ts +0 -11
  162. package/lib/types/utils/retry.d.ts +0 -1
  163. package/lib/types/utils/task-id.d.ts +0 -1
  164. package/lib/types/utils/tool-calls-transform.d.ts +0 -2
  165. /package/lib/cjs/types/{runtime/agent.js → agent.js} +0 -0
  166. /package/lib/cjs/types/{common/index.js → runnable.js} +0 -0
  167. /package/lib/esm/types/{runtime/agent.js → agent.js} +0 -0
  168. /package/lib/esm/types/{common/index.js → runnable.js} +0 -0
@@ -1,199 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.ResourceManager = void 0;
7
- const promises_1 = require("fs/promises");
8
- const path_1 = require("path");
9
- const component_1 = require("@blocklet/sdk/lib/component");
10
- const config_1 = __importDefault(require("@blocklet/sdk/lib/config"));
11
- const fs_extra_1 = require("fs-extra");
12
- const lodash_1 = require("lodash");
13
- const yaml_1 = require("yaml");
14
- const constants_1 = require("../constants");
15
- const logger_1 = __importDefault(require("../logger"));
16
- const types_1 = require("../types");
17
- const is_non_nullable_1 = require("../utils/is-non-nullable");
18
- const getResourceList = () => {
19
- return types_1.ResourceTypes.flatMap((type) => (0, component_1.getResources)({ types: [{ did: constants_1.AIGNE_STUDIO_COMPONENT_DID, type }], skipRunningCheck: true }).map((i) => ({
20
- ...i,
21
- type,
22
- }))).filter((0, is_non_nullable_1.isPropsNonNullable)('path'));
23
- };
24
- async function loadProjectsFromResourceBlockletDir({ did, path, }) {
25
- if (!(await (0, fs_extra_1.exists)(path)))
26
- return [];
27
- const projectYamlPaths = (await (0, promises_1.readdir)(path)).map((filename) => (0, path_1.join)(path, filename, `${filename}.yaml`));
28
- return (await Promise.all(projectYamlPaths.map(async (filepath) => {
29
- try {
30
- const project = await (0, types_1.validateResourceProject)((0, yaml_1.parse)((await (0, promises_1.readFile)(filepath)).toString()));
31
- return {
32
- ...project,
33
- blocklet: { did },
34
- dir: (0, path_1.dirname)(filepath),
35
- agentMap: Object.fromEntries(project.agents.map((i) => [i.id, i])),
36
- };
37
- }
38
- catch (error) {
39
- logger_1.default.error('parse aigne project resource file error', { error });
40
- return null;
41
- }
42
- }))).filter(is_non_nullable_1.isNonNullable);
43
- }
44
- const loadResourceKnowledge = async () => {
45
- const dirs = getResourceList().filter((i) => i.type === 'knowledge');
46
- if (dirs.length === 0)
47
- return [];
48
- return (await Promise.all(dirs.map(async (item) => {
49
- try {
50
- if (!(await (0, fs_extra_1.exists)(item.path)))
51
- return undefined;
52
- const knowledgeIds = await (0, promises_1.readdir)(item.path);
53
- if (!knowledgeIds.length)
54
- return undefined;
55
- return await Promise.all(knowledgeIds.map(async (knowledgeId) => {
56
- try {
57
- const knowledgePath = (0, path_1.join)(item.path, knowledgeId);
58
- const vectorsPath = (0, path_1.join)(knowledgePath, 'vectors');
59
- const uploadPath = (0, path_1.join)(knowledgePath, 'uploads');
60
- const sourcesPath = (0, path_1.join)(knowledgePath, 'sources');
61
- const processedPath = (0, path_1.join)(knowledgePath, 'processed');
62
- const logoPath = (0, path_1.join)(knowledgePath, 'logo.png');
63
- const knowledgeJsonPath = (0, path_1.join)(knowledgePath, 'knowledge.yaml');
64
- const knowledge = (0, yaml_1.parse)((await (0, promises_1.readFile)(knowledgeJsonPath)).toString());
65
- const documentsPath = (0, path_1.join)(knowledgePath, 'documents.yaml');
66
- const documents = (0, yaml_1.parse)((await (0, promises_1.readFile)(documentsPath)).toString());
67
- const contentsPath = (0, path_1.join)(knowledgePath, 'contents.yaml');
68
- const contents = (await (0, fs_extra_1.exists)(contentsPath)) ? (0, yaml_1.parse)((await (0, promises_1.readFile)(contentsPath)).toString()) : [];
69
- const segmentsPath = (0, path_1.join)(knowledgePath, 'segments.yaml');
70
- const segments = (await (0, fs_extra_1.exists)(segmentsPath)) ? (0, yaml_1.parse)((await (0, promises_1.readFile)(segmentsPath)).toString()) : [];
71
- return {
72
- title: item.title,
73
- did: item.did,
74
- knowledge: { projectId: knowledge.appId, ...knowledge },
75
- documents,
76
- segments,
77
- contents,
78
- blockletDid: item.did,
79
- vectorsPath,
80
- uploadPath, // old source
81
- sourcesPath, // new source
82
- processedPath,
83
- logoPath,
84
- };
85
- }
86
- catch (error) {
87
- logger_1.default.error('read knowledge resource error', { error });
88
- }
89
- return undefined;
90
- }));
91
- }
92
- catch (error) {
93
- logger_1.default.error('read knowledge resource error', { error });
94
- }
95
- return undefined;
96
- })))
97
- .flat()
98
- .filter(is_non_nullable_1.isNonNullable);
99
- };
100
- async function loadResources() {
101
- const list = getResourceList().filter((i) => i.type !== 'knowledge');
102
- const resources = (0, lodash_1.groupBy)(await Promise.all(list.map(async (item) => ({ ...item, projects: await loadProjectsFromResourceBlockletDir(item) }))), (i) => i.type);
103
- const knowledgeList = await loadResourceKnowledge();
104
- return {
105
- knowledge: {
106
- knowledgeList,
107
- blockletMap: Object.fromEntries(Object.entries((0, lodash_1.groupBy)(knowledgeList, (i) => i.blockletDid)).map(([blockletDid, kbs]) => [
108
- blockletDid,
109
- { knowledgeMap: Object.fromEntries(kbs.map((i) => [i.knowledge.id, i])) },
110
- ])),
111
- },
112
- agents: Object.fromEntries(Object.entries(resources).map(([type, group]) => {
113
- const blocklets = Object.entries((0, lodash_1.groupBy)(group.flatMap((i) => i.projects), (i) => i.blocklet.did)).map(([blockletDid, projects]) => ({
114
- did: blockletDid,
115
- status: group[0].status,
116
- projectMap: Object.fromEntries(projects.map((i) => [i.project.id, i])),
117
- }));
118
- return [
119
- type,
120
- {
121
- projects: group.flatMap((i) => i.projects),
122
- blockletMap: Object.fromEntries(blocklets.map((i) => [i.did, i])),
123
- },
124
- ];
125
- })),
126
- };
127
- }
128
- class ResourceManager {
129
- constructor({ wait = 5000, watch = true } = {}) {
130
- if (watch) {
131
- const reload = (0, lodash_1.throttle)(async () => {
132
- logger_1.default.info('reload resource states');
133
- await this.reload()
134
- .then((resource) => {
135
- logger_1.default.info('reload resource states success', {
136
- projects: Object.values(resource.agents).reduce((res, i) => i.projects.length + res, 0),
137
- knowledge: resource.knowledge.knowledgeList.length,
138
- });
139
- })
140
- .catch((error) => {
141
- logger_1.default.error('reload resource states error', { error });
142
- });
143
- }, wait, { leading: false, trailing: true });
144
- config_1.default.events.on(config_1.default.Events.componentAdded, reload);
145
- config_1.default.events.on(config_1.default.Events.componentRemoved, reload);
146
- config_1.default.events.on(config_1.default.Events.componentStarted, reload);
147
- config_1.default.events.on(config_1.default.Events.componentStopped, reload);
148
- config_1.default.events.on(config_1.default.Events.componentUpdated, reload);
149
- }
150
- }
151
- promise;
152
- get resources() {
153
- if (!this.promise) {
154
- this.promise = loadResources();
155
- }
156
- return this.promise;
157
- }
158
- async reload() {
159
- this.promise = loadResources();
160
- return this.resources;
161
- }
162
- async getProjects({ blockletDid, type }) {
163
- const resources = await this.resources;
164
- const list = resources.agents[type]?.projects ?? [];
165
- if (blockletDid) {
166
- return list.filter((i) => i.blocklet.did === blockletDid);
167
- }
168
- return list;
169
- }
170
- async getProject({ blockletDid, projectId, type, }) {
171
- const resources = await this.resources;
172
- for (const t of type ? [type].flat() : types_1.ResourceTypes) {
173
- const p = resources.agents[t]?.blockletMap[blockletDid]?.projectMap[projectId];
174
- if (p)
175
- return p;
176
- }
177
- return undefined;
178
- }
179
- async getAgent({ blockletDid, projectId, agentId, type = types_1.ResourceTypes, }) {
180
- const resources = await this.resources;
181
- for (const t of [type].flat()) {
182
- const blocklet = resources.agents[t]?.blockletMap[blockletDid];
183
- const project = blocklet?.projectMap[projectId];
184
- const agent = project?.agentMap[agentId];
185
- if (agent)
186
- return { agent, project: project.project, blocklet: { did: blockletDid } };
187
- }
188
- return undefined;
189
- }
190
- async getKnowledgeList() {
191
- const resources = await this.resources;
192
- return resources.knowledge.knowledgeList;
193
- }
194
- async getKnowledge({ blockletDid, knowledgeId }) {
195
- const resources = await this.resources;
196
- return resources.knowledge.blockletMap[blockletDid]?.knowledgeMap[knowledgeId];
197
- }
198
- }
199
- exports.ResourceManager = ResourceManager;
@@ -1,9 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.AIGNE_ISSUE_VC_PREFIX = exports.NFT_BLENDER_COMPONENT_DID = exports.AIGNE_STUDIO_COMPONENT_DID = exports.AIGNE_RUNTIME_CUSTOM_COMPONENT_ID = exports.AIGNE_COMPONENTS_COMPONENT_DID = exports.AIGNE_RUNTIME_COMPONENT_DID = void 0;
4
- exports.AIGNE_RUNTIME_COMPONENT_DID = 'z2qaBP9SahqU2L2YA3ip7NecwKACMByTFuiJ2';
5
- exports.AIGNE_COMPONENTS_COMPONENT_DID = 'z2qa6fvjmjew4pWJyTsKaWFuNoMUMyXDh5A1D';
6
- exports.AIGNE_RUNTIME_CUSTOM_COMPONENT_ID = 'grc9q1cveub6pnl8';
7
- exports.AIGNE_STUDIO_COMPONENT_DID = 'z8iZpog7mcgcgBZzTiXJCWESvmnRrQmnd3XBB';
8
- exports.NFT_BLENDER_COMPONENT_DID = 'z8ia1ieY5KhEC4LMRETzS5nUwD7PvAND8qkfX';
9
- exports.AIGNE_ISSUE_VC_PREFIX = 'AIGNE';
@@ -1,10 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.AgentExecutor = void 0;
4
- const base_1 = require("./base");
5
- class AgentExecutor extends base_1.AgentExecutorBase {
6
- async process() {
7
- // ignore
8
- }
9
- }
10
- exports.AgentExecutor = AgentExecutor;
@@ -1,28 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.AIGCAgentExecutor = void 0;
4
- const base_1 = require("./base");
5
- class AIGCAgentExecutor extends base_1.AgentExecutorBase {
6
- async process() {
7
- const { agent } = this;
8
- if (!agent.prompt?.length)
9
- throw new Error('Prompt cannot be empty');
10
- const prompt = await this.renderMessage(agent.prompt
11
- .split('\n')
12
- .filter((i) => !i.startsWith('//'))
13
- .join('\n'));
14
- const { data } = await this.context.callAIImage({
15
- assistant: agent,
16
- input: {
17
- prompt,
18
- n: agent.n,
19
- model: agent.model,
20
- quality: agent.quality,
21
- size: agent.size,
22
- style: agent.style,
23
- },
24
- });
25
- return { $images: data };
26
- }
27
- }
28
- exports.AIGCAgentExecutor = AIGCAgentExecutor;
@@ -1,64 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- var __importDefault = (this && this.__importDefault) || function (mod) {
26
- return (mod && mod.__esModule) ? mod : { "default": mod };
27
- };
28
- Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.APIAgentExecutor = void 0;
30
- const axios_1 = __importStar(require("axios"));
31
- const js_cookie_1 = __importDefault(require("js-cookie"));
32
- const lodash_1 = require("lodash");
33
- const base_1 = require("./base");
34
- class APIAgentExecutor extends base_1.AgentExecutorBase {
35
- async process({ inputs }) {
36
- const { agent } = this;
37
- if (!agent.requestUrl)
38
- throw new Error(`Assistant ${agent.id}'s url is empty`);
39
- const args = Object.fromEntries(await Promise.all((agent.parameters ?? [])
40
- .filter((i) => !!i.key && !i.hidden)
41
- .map(async (i) => [i.key, inputs?.[i.key] || i.defaultValue])));
42
- const method = agent.requestMethod || 'GET';
43
- const isGet = method === 'get';
44
- try {
45
- const response = await (0, axios_1.default)({
46
- url: agent.requestUrl,
47
- method,
48
- params: isGet ? args : undefined,
49
- data: isGet ? undefined : args,
50
- headers: {
51
- 'x-csrf-token': js_cookie_1.default.get('x-csrf-token'),
52
- },
53
- });
54
- return response.data;
55
- }
56
- catch (e) {
57
- if ((0, axios_1.isAxiosError)(e)) {
58
- Object.assign(e, (0, lodash_1.pick)(e.response, 'status', 'statusText', 'data'));
59
- }
60
- throw e;
61
- }
62
- }
63
- }
64
- exports.APIAgentExecutor = APIAgentExecutor;