@minded-ai/mindedjs 3.0.8-beta.12 → 3.1.9-beta.1
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/cli/index.js +2 -9
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/runCommand.d.ts +1 -1
- package/dist/cli/runCommand.d.ts.map +1 -1
- package/dist/cli/runCommand.js +31 -23
- package/dist/cli/runCommand.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -3
- package/dist/index.js.map +1 -1
- package/dist/internalTools/documentExtraction/documentExtraction.d.ts +112 -102
- package/dist/internalTools/documentExtraction/documentExtraction.d.ts.map +1 -1
- package/dist/internalTools/documentExtraction/documentExtraction.js +146 -705
- package/dist/internalTools/documentExtraction/documentExtraction.js.map +1 -1
- package/dist/internalTools/documentExtraction/extractStructuredData.d.ts +57 -0
- package/dist/internalTools/documentExtraction/extractStructuredData.d.ts.map +1 -0
- package/dist/internalTools/documentExtraction/extractStructuredData.js +121 -0
- package/dist/internalTools/documentExtraction/extractStructuredData.js.map +1 -0
- package/dist/internalTools/documentExtraction/parseDocumentLocal.d.ts +16 -0
- package/dist/internalTools/documentExtraction/parseDocumentLocal.d.ts.map +1 -0
- package/dist/internalTools/documentExtraction/parseDocumentLocal.js +547 -0
- package/dist/internalTools/documentExtraction/parseDocumentLocal.js.map +1 -0
- package/dist/internalTools/documentExtraction/parseDocumentManaged.d.ts +13 -0
- package/dist/internalTools/documentExtraction/parseDocumentManaged.d.ts.map +1 -0
- package/dist/internalTools/documentExtraction/parseDocumentManaged.js +150 -0
- package/dist/internalTools/documentExtraction/parseDocumentManaged.js.map +1 -0
- package/dist/nodes/addAppToolNode.d.ts.map +1 -1
- package/dist/nodes/addAppToolNode.js +20 -1
- package/dist/nodes/addAppToolNode.js.map +1 -1
- package/dist/toolsLibrary/classifier.d.ts +2 -2
- package/dist/toolsLibrary/parseDocument.d.ts +11 -10
- package/dist/toolsLibrary/parseDocument.d.ts.map +1 -1
- package/dist/toolsLibrary/parseDocument.js +33 -189
- package/dist/toolsLibrary/parseDocument.js.map +1 -1
- package/dist/toolsLibrary/withBrowserSession.d.ts.map +1 -1
- package/dist/toolsLibrary/withBrowserSession.js +70 -2
- package/dist/toolsLibrary/withBrowserSession.js.map +1 -1
- package/dist/types/Flows.types.d.ts +1 -0
- package/dist/types/Flows.types.d.ts.map +1 -1
- package/dist/types/Flows.types.js.map +1 -1
- package/dist/utils/schemaUtils.js +1 -1
- package/dist/utils/schemaUtils.js.map +1 -1
- package/docs/tooling/document-processing.md +235 -174
- package/package.json +2 -1
- package/src/cli/index.ts +2 -10
- package/src/cli/runCommand.ts +31 -25
- package/src/index.ts +2 -1
- package/src/internalTools/documentExtraction/documentExtraction.ts +184 -767
- package/src/internalTools/documentExtraction/extractStructuredData.ts +140 -0
- package/src/internalTools/documentExtraction/parseDocumentLocal.ts +660 -0
- package/src/internalTools/documentExtraction/parseDocumentManaged.ts +152 -0
- package/src/nodes/addAppToolNode.ts +30 -7
- package/src/toolsLibrary/parseDocument.ts +38 -206
- package/src/toolsLibrary/withBrowserSession.ts +89 -4
- package/src/types/Flows.types.ts +1 -0
- package/src/utils/schemaUtils.ts +1 -1
|
@@ -0,0 +1,150 @@
|
|
|
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 () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.parseDocumentWithManagedService = parseDocumentWithManagedService;
|
|
40
|
+
const promises_1 = __importDefault(require("fs/promises"));
|
|
41
|
+
const path_1 = __importDefault(require("path"));
|
|
42
|
+
const mindedConnectionTypes_1 = require("../../platform/mindedConnectionTypes");
|
|
43
|
+
const logger_1 = require("../../utils/logger");
|
|
44
|
+
const mindedConnection = __importStar(require("../../platform/mindedConnection"));
|
|
45
|
+
/**
|
|
46
|
+
* Process document using managed backend service
|
|
47
|
+
*/
|
|
48
|
+
async function parseDocumentWithManagedService({ documentSource, isDocumentUrl, sessionId, }) {
|
|
49
|
+
logger_1.logger.info({
|
|
50
|
+
msg: 'Parsing document with managed service',
|
|
51
|
+
sessionId,
|
|
52
|
+
documentSource,
|
|
53
|
+
sourceType: isDocumentUrl ? 'url' : 'path',
|
|
54
|
+
});
|
|
55
|
+
let uploadId;
|
|
56
|
+
let documentUrl;
|
|
57
|
+
if (isDocumentUrl) {
|
|
58
|
+
documentUrl = documentSource;
|
|
59
|
+
}
|
|
60
|
+
else {
|
|
61
|
+
// Upload file for processing
|
|
62
|
+
logger_1.logger.info({
|
|
63
|
+
msg: 'Uploading document for parsing',
|
|
64
|
+
sessionId,
|
|
65
|
+
});
|
|
66
|
+
uploadId = await uploadDocumentForProcessing({
|
|
67
|
+
sessionId,
|
|
68
|
+
documentPath: documentSource,
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
logger_1.logger.info({
|
|
72
|
+
msg: 'Requesting document parsing via socket',
|
|
73
|
+
sessionId,
|
|
74
|
+
documentSource,
|
|
75
|
+
hasUrl: !!documentUrl,
|
|
76
|
+
hasUploadId: !!uploadId,
|
|
77
|
+
});
|
|
78
|
+
// Use 2-minute timeout and maxRetries=1 for document processing
|
|
79
|
+
// No retries on timeout to avoid duplicate processing
|
|
80
|
+
const response = await mindedConnection.awaitEmit(mindedConnectionTypes_1.mindedConnectionSocketMessageType.DOCUMENT_PROCESS, {
|
|
81
|
+
type: mindedConnectionTypes_1.mindedConnectionSocketMessageType.DOCUMENT_PROCESS,
|
|
82
|
+
sessionId,
|
|
83
|
+
documentUrl,
|
|
84
|
+
uploadId,
|
|
85
|
+
}, 180000, // 2 minutes timeout
|
|
86
|
+
1);
|
|
87
|
+
if (!response.success) {
|
|
88
|
+
throw new Error(response.error || 'Failed to process document on backend');
|
|
89
|
+
}
|
|
90
|
+
logger_1.logger.info({
|
|
91
|
+
msg: 'Got document parsing response',
|
|
92
|
+
sessionId,
|
|
93
|
+
});
|
|
94
|
+
return {
|
|
95
|
+
rawContent: response.rawContent || '',
|
|
96
|
+
metadata: response.metadata,
|
|
97
|
+
};
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* Upload document for processing
|
|
101
|
+
*/
|
|
102
|
+
async function uploadDocumentForProcessing({ sessionId, documentPath }) {
|
|
103
|
+
const fileBuffer = await promises_1.default.readFile(documentPath);
|
|
104
|
+
const originalFileName = path_1.default.basename(documentPath);
|
|
105
|
+
const fileSize = fileBuffer.length;
|
|
106
|
+
logger_1.logger.info({
|
|
107
|
+
msg: 'Requesting upload URL for document',
|
|
108
|
+
sessionId,
|
|
109
|
+
fileName: originalFileName,
|
|
110
|
+
fileSize,
|
|
111
|
+
});
|
|
112
|
+
const urlResponse = await mindedConnection.awaitEmit(mindedConnectionTypes_1.mindedConnectionSocketMessageType.UPLOAD_FILE_REQUEST, {
|
|
113
|
+
type: mindedConnectionTypes_1.mindedConnectionSocketMessageType.UPLOAD_FILE_REQUEST,
|
|
114
|
+
sessionId,
|
|
115
|
+
fileName: originalFileName,
|
|
116
|
+
fileSize,
|
|
117
|
+
uploadType: mindedConnectionTypes_1.FileUploadType.DOCUMENT_PROCESSING,
|
|
118
|
+
}, 30000);
|
|
119
|
+
if (!urlResponse.success || !urlResponse.uploadUrl || !urlResponse.uploadId) {
|
|
120
|
+
throw new Error(urlResponse.error || 'Failed to generate upload URL');
|
|
121
|
+
}
|
|
122
|
+
logger_1.logger.info({
|
|
123
|
+
msg: 'Received upload URL, uploading document',
|
|
124
|
+
sessionId,
|
|
125
|
+
uploadId: urlResponse.uploadId,
|
|
126
|
+
expiresIn: urlResponse.expiresIn,
|
|
127
|
+
});
|
|
128
|
+
const urlObj = new URL(urlResponse.uploadUrl);
|
|
129
|
+
const signedHeaders = urlObj.searchParams.get('X-Amz-SignedHeaders');
|
|
130
|
+
const headers = {};
|
|
131
|
+
if (signedHeaders === null || signedHeaders === void 0 ? void 0 : signedHeaders.includes('x-amz-server-side-encryption')) {
|
|
132
|
+
headers['x-amz-server-side-encryption'] = 'aws:kms';
|
|
133
|
+
}
|
|
134
|
+
const uploadResponse = await fetch(urlResponse.uploadUrl, {
|
|
135
|
+
method: 'PUT',
|
|
136
|
+
headers,
|
|
137
|
+
body: new Uint8Array(fileBuffer),
|
|
138
|
+
});
|
|
139
|
+
if (!uploadResponse.ok) {
|
|
140
|
+
const errorText = await uploadResponse.text();
|
|
141
|
+
throw new Error(`Failed to upload document: ${uploadResponse.status} - ${errorText}`);
|
|
142
|
+
}
|
|
143
|
+
logger_1.logger.info({
|
|
144
|
+
msg: 'Successfully uploaded document',
|
|
145
|
+
sessionId,
|
|
146
|
+
uploadId: urlResponse.uploadId,
|
|
147
|
+
});
|
|
148
|
+
return urlResponse.uploadId;
|
|
149
|
+
}
|
|
150
|
+
//# sourceMappingURL=parseDocumentManaged.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parseDocumentManaged.js","sourceRoot":"","sources":["../../../src/internalTools/documentExtraction/parseDocumentManaged.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"addAppToolNode.d.ts","sourceRoot":"","sources":["../../src/nodes/addAppToolNode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAuC,MAAM,sBAAsB,CAAC;AAExF,OAAO,EAAE,gBAAgB,EAAmB,MAAM,0BAA0B,CAAC;AAI7E,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAGjC,OAAO,EAAe,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAOzD,eAAO,MAAM,cAAc,GAAU,qCAMlC;IACD,KAAK,EAAE,gBAAgB,CAAC;IACxB,IAAI,EAAE,WAAW,CAAC;IAClB,GAAG,EAAE,CAAC,OAAO,YAAY,EAAE,MAAM,OAAO,YAAY,CAAC,CAAC;IACtD,KAAK,EAAE,KAAK,CAAC;IACb,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC;CACzB,
|
|
1
|
+
{"version":3,"file":"addAppToolNode.d.ts","sourceRoot":"","sources":["../../src/nodes/addAppToolNode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAuC,MAAM,sBAAsB,CAAC;AAExF,OAAO,EAAE,gBAAgB,EAAmB,MAAM,0BAA0B,CAAC;AAI7E,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAGjC,OAAO,EAAe,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAOzD,eAAO,MAAM,cAAc,GAAU,qCAMlC;IACD,KAAK,EAAE,gBAAgB,CAAC;IACxB,IAAI,EAAE,WAAW,CAAC;IAClB,GAAG,EAAE,CAAC,OAAO,YAAY,EAAE,MAAM,OAAO,YAAY,CAAC,CAAC;IACtD,KAAK,EAAE,KAAK,CAAC;IACb,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC;CACzB,kBAyJA,CAAC"}
|
|
@@ -115,11 +115,30 @@ const addAppToolNode = async ({ graph, node, llm, agent, tools, }) => {
|
|
|
115
115
|
if (toolCallMessage instanceof messages_2.ToolMessage) {
|
|
116
116
|
state.messages.push(toolCallMessage);
|
|
117
117
|
}
|
|
118
|
+
// Try to parse content if it's a JSON string and extract the result object
|
|
119
|
+
let parsedContent;
|
|
120
|
+
if (toolCallMessage instanceof messages_2.ToolMessage) {
|
|
121
|
+
parsedContent = toolCallMessage.content;
|
|
122
|
+
try {
|
|
123
|
+
if (typeof toolCallMessage.content === 'string') {
|
|
124
|
+
parsedContent = JSON.parse(toolCallMessage.content);
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
catch (_a) {
|
|
128
|
+
// If parsing fails, use the original content
|
|
129
|
+
}
|
|
130
|
+
if ('result' in parsedContent) {
|
|
131
|
+
parsedContent = parsedContent.result;
|
|
132
|
+
}
|
|
133
|
+
}
|
|
118
134
|
state.history.push((0, history_1.createHistoryStep)(state.history, {
|
|
119
135
|
type: Flows_types_1.NodeType.APP_TOOL,
|
|
120
136
|
nodeId: node.name,
|
|
121
137
|
nodeDisplayName: node.displayName,
|
|
122
|
-
raw:
|
|
138
|
+
raw: {
|
|
139
|
+
...AIToolCallMessage.tool_calls[0],
|
|
140
|
+
result: parsedContent,
|
|
141
|
+
},
|
|
123
142
|
appName: node.appName,
|
|
124
143
|
messageIds: [AIToolCallMessage.tool_calls[0].id],
|
|
125
144
|
}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"addAppToolNode.js","sourceRoot":"","sources":["../../src/nodes/addAppToolNode.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"addAppToolNode.js","sourceRoot":"","sources":["../../src/nodes/addAppToolNode.ts"],"names":[],"mappings":"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"}
|
|
@@ -51,20 +51,20 @@ export declare const schema: z.ZodObject<{
|
|
|
51
51
|
content: string;
|
|
52
52
|
defaultClass: string;
|
|
53
53
|
defaultReason: string;
|
|
54
|
-
systemPrompt?: string | undefined;
|
|
55
54
|
classes?: (string | [string, string] | {
|
|
56
55
|
name: string;
|
|
57
56
|
description: string;
|
|
58
57
|
})[] | undefined;
|
|
58
|
+
systemPrompt?: string | undefined;
|
|
59
59
|
}, {
|
|
60
60
|
content: string;
|
|
61
61
|
defaultClass: string;
|
|
62
62
|
defaultReason: string;
|
|
63
|
-
systemPrompt?: string | undefined;
|
|
64
63
|
classes?: (string | [string, string] | {
|
|
65
64
|
name: string;
|
|
66
65
|
description: string;
|
|
67
66
|
})[] | undefined;
|
|
67
|
+
systemPrompt?: string | undefined;
|
|
68
68
|
}>;
|
|
69
69
|
declare const classifierTool: Tool<typeof schema, any>;
|
|
70
70
|
export default classifierTool;
|
|
@@ -2,20 +2,21 @@ import { z } from 'zod';
|
|
|
2
2
|
import { Tool } from '../types/Tools.types';
|
|
3
3
|
export declare const schema: z.ZodObject<{
|
|
4
4
|
documentSource: z.ZodString;
|
|
5
|
-
|
|
6
|
-
schema: z.ZodNullable<z.ZodOptional<z.ZodAny>>;
|
|
7
|
-
systemPrompt: z.ZodNullable<z.ZodOptional<z.ZodString>>;
|
|
5
|
+
returnStructuredOutput: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
|
|
8
6
|
}, "strip", z.ZodTypeAny, {
|
|
9
7
|
documentSource: string;
|
|
10
|
-
|
|
11
|
-
schema?: any;
|
|
12
|
-
systemPrompt?: string | null | undefined;
|
|
8
|
+
returnStructuredOutput: boolean;
|
|
13
9
|
}, {
|
|
14
10
|
documentSource: string;
|
|
15
|
-
|
|
16
|
-
schema?: any;
|
|
17
|
-
systemPrompt?: string | null | undefined;
|
|
11
|
+
returnStructuredOutput?: boolean | undefined;
|
|
18
12
|
}>;
|
|
19
|
-
|
|
13
|
+
/**
|
|
14
|
+
* Document parsing tool for flows.
|
|
15
|
+
* Parses documents and optionally extracts structured data using AI.
|
|
16
|
+
*
|
|
17
|
+
* - Raw mode: Returns plain text from document
|
|
18
|
+
* - Structured mode: Uses node's prompt and outputSchema for AI extraction
|
|
19
|
+
*/
|
|
20
|
+
declare const parseDocumentTool: Tool<typeof schema>;
|
|
20
21
|
export default parseDocumentTool;
|
|
21
22
|
//# sourceMappingURL=parseDocument.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parseDocument.d.ts","sourceRoot":"","sources":["../../src/toolsLibrary/parseDocument.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"parseDocument.d.ts","sourceRoot":"","sources":["../../src/toolsLibrary/parseDocument.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAM5C,eAAO,MAAM,MAAM;;;;;;;;;EAGjB,CAAC;AAEH;;;;;;GAMG;AACH,QAAA,MAAM,iBAAiB,EAAE,IAAI,CAAC,OAAO,MAAM,CA4D1C,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
|
|
@@ -1,120 +1,60 @@
|
|
|
1
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 () {
|
|
19
|
-
var ownKeys = function(o) {
|
|
20
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
-
var ar = [];
|
|
22
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
-
return ar;
|
|
24
|
-
};
|
|
25
|
-
return ownKeys(o);
|
|
26
|
-
};
|
|
27
|
-
return function (mod) {
|
|
28
|
-
if (mod && mod.__esModule) return mod;
|
|
29
|
-
var result = {};
|
|
30
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
-
__setModuleDefault(result, mod);
|
|
32
|
-
return result;
|
|
33
|
-
};
|
|
34
|
-
})();
|
|
35
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
3
|
exports.schema = void 0;
|
|
37
4
|
const zod_1 = require("zod");
|
|
38
5
|
const documentExtraction_1 = require("../internalTools/documentExtraction/documentExtraction");
|
|
39
6
|
const logger_1 = require("../utils/logger");
|
|
40
|
-
const
|
|
41
|
-
const
|
|
42
|
-
const mindedConnectionTypes_1 = require("../platform/mindedConnectionTypes");
|
|
43
|
-
const mindedConnection = __importStar(require("../platform/mindedConnection"));
|
|
44
|
-
/**
|
|
45
|
-
* Check if a string is a URL
|
|
46
|
-
*/
|
|
47
|
-
function isUrl(source) {
|
|
48
|
-
return source.startsWith('http://') || source.startsWith('https://');
|
|
49
|
-
}
|
|
50
|
-
// Schema for the tool
|
|
7
|
+
const Flows_types_1 = require("../types/Flows.types");
|
|
8
|
+
const schemaUtils_1 = require("../utils/schemaUtils");
|
|
51
9
|
exports.schema = zod_1.z.object({
|
|
52
|
-
// Document source - can be a URL or file path (auto-detected)
|
|
53
10
|
documentSource: zod_1.z.string().describe('URL or file path to the document to parse'),
|
|
54
|
-
|
|
55
|
-
extractRaw: zod_1.z.boolean().optional().nullable().describe('Extract raw text without AI processing'),
|
|
56
|
-
schema: zod_1.z.any().optional().nullable().describe('Zod schema for structured data extraction'),
|
|
57
|
-
systemPrompt: zod_1.z.string().optional().nullable().describe('Prompt for guiding extraction'),
|
|
11
|
+
returnStructuredOutput: zod_1.z.boolean().optional().default(false).describe('Whether to return structured output'),
|
|
58
12
|
});
|
|
13
|
+
/**
|
|
14
|
+
* Document parsing tool for flows.
|
|
15
|
+
* Parses documents and optionally extracts structured data using AI.
|
|
16
|
+
*
|
|
17
|
+
* - Raw mode: Returns plain text from document
|
|
18
|
+
* - Structured mode: Uses node's prompt and outputSchema for AI extraction
|
|
19
|
+
*/
|
|
59
20
|
const parseDocumentTool = {
|
|
60
21
|
name: 'minded-parse-documents',
|
|
61
22
|
description: 'Parse and extract data from documents (PDFs, images, Word docs, etc.). Provide a URL or file path and optionally a schema or prompt for extraction. Includes built-in AI extraction - no separate extraction tool needed.',
|
|
62
23
|
input: exports.schema,
|
|
63
24
|
isGlobal: false,
|
|
64
25
|
execute: async ({ input, state, agent }) => {
|
|
65
|
-
|
|
26
|
+
var _a, _b;
|
|
66
27
|
try {
|
|
67
|
-
if (!
|
|
28
|
+
if (!input.documentSource) {
|
|
68
29
|
throw new Error('documentSource is required - provide a URL or file path');
|
|
69
30
|
}
|
|
70
|
-
const
|
|
71
|
-
|
|
31
|
+
const node = await agent.getCurrentNode(state.sessionId);
|
|
32
|
+
const appToolNode = (node === null || node === void 0 ? void 0 : node.type) === Flows_types_1.NodeType.APP_TOOL ? node : undefined;
|
|
72
33
|
// Get processing mode from environment variable
|
|
73
|
-
const processingMode = process.env.DOCUMENT_PROCESSING_MODE === 'local' ?
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
logger_1.logger.info({
|
|
89
|
-
msg: 'Using local document processing',
|
|
90
|
-
sessionId: state.sessionId,
|
|
91
|
-
sourceType: isDocumentUrl ? 'url' : 'path',
|
|
92
|
-
});
|
|
93
|
-
const extractionOptions = isDocumentUrl
|
|
94
|
-
? { documentUrl: combinedInput.documentSource }
|
|
95
|
-
: { documentPath: combinedInput.documentSource };
|
|
96
|
-
const localResult = await (0, documentExtraction_1.extractFromDocument)(extractionOptions);
|
|
97
|
-
rawContent = localResult.data;
|
|
98
|
-
}
|
|
99
|
-
// Process with LLM if needed
|
|
100
|
-
let finalData = rawContent;
|
|
101
|
-
if (!combinedInput.extractRaw && agent.llm) {
|
|
102
|
-
const llmResult = await (0, documentExtraction_1.extractFromDocument)({
|
|
103
|
-
documentContent: rawContent,
|
|
104
|
-
llm: agent.llm,
|
|
105
|
-
schema: combinedInput.schema,
|
|
106
|
-
systemPrompt: combinedInput.systemPrompt || undefined,
|
|
107
|
-
});
|
|
108
|
-
finalData = llmResult.data;
|
|
109
|
-
}
|
|
34
|
+
const processingMode = process.env.DOCUMENT_PROCESSING_MODE === 'local' ? documentExtraction_1.DocumentProcessingMode.LOCAL : documentExtraction_1.DocumentProcessingMode.MANAGED;
|
|
35
|
+
const llamaCloudApiKey = process.env.LLAMA_CLOUD_API_KEY;
|
|
36
|
+
const outputSchema = input.returnStructuredOutput && agent.llm && appToolNode && ((_a = appToolNode.outputSchema) === null || _a === void 0 ? void 0 : _a.length)
|
|
37
|
+
? (0, schemaUtils_1.createZodSchemaFromFields)(appToolNode.outputSchema)
|
|
38
|
+
: undefined;
|
|
39
|
+
const result = await (0, documentExtraction_1.parseDocumentAndExtractStructuredData)({
|
|
40
|
+
documentSource: input.documentSource,
|
|
41
|
+
processingMode,
|
|
42
|
+
llamaCloudApiKey,
|
|
43
|
+
sessionId: state.sessionId,
|
|
44
|
+
llm: agent.llm,
|
|
45
|
+
returnStructuredOutput: input.returnStructuredOutput,
|
|
46
|
+
outputSchema: outputSchema,
|
|
47
|
+
outputSchemaPrompt: appToolNode === null || appToolNode === void 0 ? void 0 : appToolNode.prompt,
|
|
48
|
+
});
|
|
110
49
|
state.memory.lastParsedDocument = {
|
|
111
|
-
source:
|
|
50
|
+
source: input.documentSource,
|
|
112
51
|
extractedAt: new Date().toISOString(),
|
|
113
|
-
|
|
52
|
+
returnStructuredOutput: input.returnStructuredOutput,
|
|
114
53
|
processingMode,
|
|
54
|
+
structuredContent: result.structuredContent,
|
|
115
55
|
};
|
|
116
56
|
return {
|
|
117
|
-
result:
|
|
57
|
+
result: (_b = result.structuredContent) !== null && _b !== void 0 ? _b : result.rawContent,
|
|
118
58
|
};
|
|
119
59
|
}
|
|
120
60
|
catch (err) {
|
|
@@ -130,101 +70,5 @@ const parseDocumentTool = {
|
|
|
130
70
|
}
|
|
131
71
|
},
|
|
132
72
|
};
|
|
133
|
-
/**
|
|
134
|
-
* Process document using managed backend service
|
|
135
|
-
*/
|
|
136
|
-
async function processManagedDocument(params) {
|
|
137
|
-
const { sessionId, documentSource, isUrl: isDocumentUrl } = params;
|
|
138
|
-
let uploadId;
|
|
139
|
-
let documentUrl;
|
|
140
|
-
if (isDocumentUrl) {
|
|
141
|
-
documentUrl = documentSource;
|
|
142
|
-
}
|
|
143
|
-
else {
|
|
144
|
-
// Upload file for processing
|
|
145
|
-
logger_1.logger.info({
|
|
146
|
-
msg: 'Uploading document for processing',
|
|
147
|
-
sessionId,
|
|
148
|
-
});
|
|
149
|
-
uploadId = await uploadDocumentForProcessing({
|
|
150
|
-
sessionId,
|
|
151
|
-
documentPath: documentSource,
|
|
152
|
-
});
|
|
153
|
-
}
|
|
154
|
-
logger_1.logger.info({
|
|
155
|
-
msg: 'Requesting document processing via socket',
|
|
156
|
-
sessionId,
|
|
157
|
-
hasUrl: !!documentUrl,
|
|
158
|
-
hasUploadId: !!uploadId,
|
|
159
|
-
});
|
|
160
|
-
// Use 2-minute timeout and maxRetries=1 for document processing
|
|
161
|
-
// No retries on timeout to avoid duplicate processing
|
|
162
|
-
const response = await mindedConnection.awaitEmit(mindedConnectionTypes_1.mindedConnectionSocketMessageType.DOCUMENT_PROCESS, {
|
|
163
|
-
type: mindedConnectionTypes_1.mindedConnectionSocketMessageType.DOCUMENT_PROCESS,
|
|
164
|
-
sessionId,
|
|
165
|
-
documentUrl,
|
|
166
|
-
uploadId,
|
|
167
|
-
}, 180000, // 2 minutes timeout
|
|
168
|
-
1);
|
|
169
|
-
if (!response.success) {
|
|
170
|
-
throw new Error(response.error || 'Failed to process document on backend');
|
|
171
|
-
}
|
|
172
|
-
return {
|
|
173
|
-
rawContent: response.rawContent || '',
|
|
174
|
-
metadata: response.metadata,
|
|
175
|
-
};
|
|
176
|
-
}
|
|
177
|
-
/**
|
|
178
|
-
* Upload document for processing
|
|
179
|
-
*/
|
|
180
|
-
async function uploadDocumentForProcessing(params) {
|
|
181
|
-
const { sessionId, documentPath } = params;
|
|
182
|
-
const fileBuffer = fs.readFileSync(documentPath);
|
|
183
|
-
const originalFileName = path.basename(documentPath);
|
|
184
|
-
const fileSize = fileBuffer.length;
|
|
185
|
-
logger_1.logger.info({
|
|
186
|
-
msg: 'Requesting upload URL for document',
|
|
187
|
-
sessionId,
|
|
188
|
-
fileName: originalFileName,
|
|
189
|
-
fileSize,
|
|
190
|
-
});
|
|
191
|
-
const urlResponse = await mindedConnection.awaitEmit(mindedConnectionTypes_1.mindedConnectionSocketMessageType.UPLOAD_FILE_REQUEST, {
|
|
192
|
-
type: mindedConnectionTypes_1.mindedConnectionSocketMessageType.UPLOAD_FILE_REQUEST,
|
|
193
|
-
sessionId,
|
|
194
|
-
fileName: originalFileName,
|
|
195
|
-
fileSize,
|
|
196
|
-
uploadType: mindedConnectionTypes_1.FileUploadType.DOCUMENT_PROCESSING,
|
|
197
|
-
}, 30000);
|
|
198
|
-
if (!urlResponse.success || !urlResponse.uploadUrl || !urlResponse.uploadId) {
|
|
199
|
-
throw new Error(urlResponse.error || 'Failed to generate upload URL');
|
|
200
|
-
}
|
|
201
|
-
logger_1.logger.info({
|
|
202
|
-
msg: 'Received upload URL, uploading document',
|
|
203
|
-
sessionId,
|
|
204
|
-
uploadId: urlResponse.uploadId,
|
|
205
|
-
expiresIn: urlResponse.expiresIn,
|
|
206
|
-
});
|
|
207
|
-
const urlObj = new URL(urlResponse.uploadUrl);
|
|
208
|
-
const signedHeaders = urlObj.searchParams.get('X-Amz-SignedHeaders');
|
|
209
|
-
const headers = {};
|
|
210
|
-
if (signedHeaders === null || signedHeaders === void 0 ? void 0 : signedHeaders.includes('x-amz-server-side-encryption')) {
|
|
211
|
-
headers['x-amz-server-side-encryption'] = 'aws:kms';
|
|
212
|
-
}
|
|
213
|
-
const uploadResponse = await fetch(urlResponse.uploadUrl, {
|
|
214
|
-
method: 'PUT',
|
|
215
|
-
headers,
|
|
216
|
-
body: new Uint8Array(fileBuffer),
|
|
217
|
-
});
|
|
218
|
-
if (!uploadResponse.ok) {
|
|
219
|
-
const errorText = await uploadResponse.text();
|
|
220
|
-
throw new Error(`Failed to upload document: ${uploadResponse.status} - ${errorText}`);
|
|
221
|
-
}
|
|
222
|
-
logger_1.logger.info({
|
|
223
|
-
msg: 'Successfully uploaded document',
|
|
224
|
-
sessionId,
|
|
225
|
-
uploadId: urlResponse.uploadId,
|
|
226
|
-
});
|
|
227
|
-
return urlResponse.uploadId;
|
|
228
|
-
}
|
|
229
73
|
exports.default = parseDocumentTool;
|
|
230
74
|
//# sourceMappingURL=parseDocument.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parseDocument.js","sourceRoot":"","sources":["../../src/toolsLibrary/parseDocument.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"parseDocument.js","sourceRoot":"","sources":["../../src/toolsLibrary/parseDocument.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"withBrowserSession.d.ts","sourceRoot":"","sources":["../../src/toolsLibrary/withBrowserSession.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"withBrowserSession.d.ts","sourceRoot":"","sources":["../../src/toolsLibrary/withBrowserSession.ts"],"names":[],"mappings":"AAAA,OAAO,EAA8C,IAAI,EAAE,MAAM,YAAY,CAAC;AAC9E,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAoWvD,eAAO,MAAM,kBAAkB,GAAU,CAAC,EACxC,oDAKG;IACD,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,eAAe,CAAC;IACjC,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,EACD,UAAU,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,KACnC,OAAO,CAAC;IAAE,MAAM,EAAE,CAAC,CAAA;CAAE,CAsKvB,CAAC"}
|