openmcp-sdk 0.0.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.
Files changed (85) hide show
  1. package/README.md +95 -0
  2. package/icons/openmcp.png +0 -0
  3. package/package.json +38 -0
  4. package/service/common/index.d.ts +5 -0
  5. package/service/common/index.d.ts.map +1 -0
  6. package/service/common/index.dto.d.ts +24 -0
  7. package/service/common/index.dto.d.ts.map +1 -0
  8. package/service/common/index.dto.js +2 -0
  9. package/service/common/index.js +17 -0
  10. package/service/common/router.d.ts +10 -0
  11. package/service/common/router.d.ts.map +1 -0
  12. package/service/common/router.js +54 -0
  13. package/service/hook/adapter.d.ts +67 -0
  14. package/service/hook/adapter.d.ts.map +1 -0
  15. package/service/hook/adapter.js +123 -0
  16. package/service/hook/db.d.ts +46 -0
  17. package/service/hook/db.d.ts.map +1 -0
  18. package/service/hook/db.js +179 -0
  19. package/service/hook/llm.d.ts +13 -0
  20. package/service/hook/llm.d.ts.map +1 -0
  21. package/service/hook/llm.js +89 -0
  22. package/service/hook/setting.d.ts +5 -0
  23. package/service/hook/setting.d.ts.map +1 -0
  24. package/service/hook/setting.js +13 -0
  25. package/service/hook/types.d.ts +90 -0
  26. package/service/hook/types.d.ts.map +1 -0
  27. package/service/hook/types.js +2 -0
  28. package/service/index.d.ts +5 -0
  29. package/service/index.d.ts.map +1 -0
  30. package/service/index.js +14 -0
  31. package/service/llm/llm.controller.d.ts +10 -0
  32. package/service/llm/llm.controller.d.ts.map +1 -0
  33. package/service/llm/llm.controller.js +61 -0
  34. package/service/llm/llm.dto.d.ts +8 -0
  35. package/service/llm/llm.dto.d.ts.map +1 -0
  36. package/service/llm/llm.dto.js +2 -0
  37. package/service/llm/llm.service.d.ts +8 -0
  38. package/service/llm/llm.service.d.ts.map +1 -0
  39. package/service/llm/llm.service.js +176 -0
  40. package/service/mcp/client.controller.d.ts +791 -0
  41. package/service/mcp/client.controller.d.ts.map +1 -0
  42. package/service/mcp/client.controller.js +177 -0
  43. package/service/mcp/client.dto.d.ts +42 -0
  44. package/service/mcp/client.dto.d.ts.map +1 -0
  45. package/service/mcp/client.dto.js +2 -0
  46. package/service/mcp/client.service.d.ts +763 -0
  47. package/service/mcp/client.service.d.ts.map +1 -0
  48. package/service/mcp/client.service.js +186 -0
  49. package/service/mcp/connect.controller.d.ts +17 -0
  50. package/service/mcp/connect.controller.d.ts.map +1 -0
  51. package/service/mcp/connect.controller.js +63 -0
  52. package/service/mcp/connect.service.d.ts +7 -0
  53. package/service/mcp/connect.service.d.ts.map +1 -0
  54. package/service/mcp/connect.service.js +76 -0
  55. package/service/mcp/ocr.controller.d.ts +18 -0
  56. package/service/mcp/ocr.controller.d.ts.map +1 -0
  57. package/service/mcp/ocr.controller.js +57 -0
  58. package/service/mcp/ocr.dto.d.ts +8 -0
  59. package/service/mcp/ocr.dto.d.ts.map +1 -0
  60. package/service/mcp/ocr.dto.js +2 -0
  61. package/service/mcp/ocr.service.d.ts +9 -0
  62. package/service/mcp/ocr.service.d.ts.map +1 -0
  63. package/service/mcp/ocr.service.js +143 -0
  64. package/service/panel/panel.controller.d.ts +32 -0
  65. package/service/panel/panel.controller.d.ts.map +1 -0
  66. package/service/panel/panel.controller.js +118 -0
  67. package/service/panel/panel.dto.d.ts +12 -0
  68. package/service/panel/panel.dto.d.ts.map +1 -0
  69. package/service/panel/panel.dto.js +2 -0
  70. package/service/panel/panel.service.d.ts +6 -0
  71. package/service/panel/panel.service.d.ts.map +1 -0
  72. package/service/panel/panel.service.js +95 -0
  73. package/service/setting/setting.controller.d.ts +23 -0
  74. package/service/setting/setting.controller.d.ts.map +1 -0
  75. package/service/setting/setting.controller.js +77 -0
  76. package/service/setting/setting.dto.d.ts +5 -0
  77. package/service/setting/setting.dto.d.ts.map +1 -0
  78. package/service/setting/setting.dto.js +2 -0
  79. package/service/setting/setting.service.d.ts +8 -0
  80. package/service/setting/setting.service.d.ts.map +1 -0
  81. package/service/setting/setting.service.js +121 -0
  82. package/task-loop.d.ts +105 -0
  83. package/task-loop.js +10985 -0
  84. package/task-loop.js.map +1 -0
  85. package/tools.js +8 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.service.d.ts","sourceRoot":"","sources":["../../src/mcp/client.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,186 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __rest = (this && this.__rest) || function (s, e) {
12
+ var t = {};
13
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
14
+ t[p] = s[p];
15
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
16
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
17
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
18
+ t[p[i]] = s[p[i]];
19
+ }
20
+ return t;
21
+ };
22
+ Object.defineProperty(exports, "__esModule", { value: true });
23
+ exports.McpClient = void 0;
24
+ exports.connect = connect;
25
+ exports.postProcessMcpToolcallResponse = postProcessMcpToolcallResponse;
26
+ const index_js_1 = require("@modelcontextprotocol/sdk/client/index.js");
27
+ const stdio_js_1 = require("@modelcontextprotocol/sdk/client/stdio.js");
28
+ const sse_js_1 = require("@modelcontextprotocol/sdk/client/sse.js");
29
+ const ocr_service_1 = require("./ocr.service");
30
+ // 增强的客户端类
31
+ class McpClient {
32
+ constructor(options) {
33
+ this.options = options;
34
+ this.serverVersion = undefined;
35
+ this.client = new index_js_1.Client({
36
+ name: "openmcp test local client",
37
+ version: "0.0.1"
38
+ }, {
39
+ capabilities: {
40
+ prompts: {},
41
+ resources: {},
42
+ tools: {}
43
+ }
44
+ });
45
+ }
46
+ // 连接方法
47
+ connect() {
48
+ return __awaiter(this, void 0, void 0, function* () {
49
+ // 根据连接类型创建传输层
50
+ switch (this.options.connectionType) {
51
+ case 'STDIO':
52
+ this.transport = new stdio_js_1.StdioClientTransport({
53
+ command: this.options.command || '',
54
+ args: this.options.args || [],
55
+ cwd: this.options.cwd || process.cwd(),
56
+ stderr: 'pipe',
57
+ env: this.options.env,
58
+ });
59
+ break;
60
+ case 'SSE':
61
+ if (!this.options.url) {
62
+ throw new Error('URL is required for SSE connection');
63
+ }
64
+ this.transport = new sse_js_1.SSEClientTransport(new URL(this.options.url));
65
+ break;
66
+ default:
67
+ throw new Error(`Unsupported connection type: ${this.options.connectionType}`);
68
+ }
69
+ // 建立连接
70
+ if (this.transport) {
71
+ yield this.client.connect(this.transport);
72
+ console.log(`Connected to MCP server via ${this.options.connectionType}`);
73
+ }
74
+ });
75
+ }
76
+ getServerVersion() {
77
+ if (this.serverVersion) {
78
+ return this.serverVersion;
79
+ }
80
+ const version = this.client.getServerVersion();
81
+ this.serverVersion = version;
82
+ return version;
83
+ }
84
+ // 断开连接
85
+ disconnect() {
86
+ return __awaiter(this, void 0, void 0, function* () {
87
+ yield this.client.close();
88
+ console.log('Disconnected from MCP server');
89
+ });
90
+ }
91
+ // 列出提示
92
+ listPrompts() {
93
+ return __awaiter(this, void 0, void 0, function* () {
94
+ return yield this.client.listPrompts();
95
+ });
96
+ }
97
+ // 获取提示
98
+ getPrompt(name_1) {
99
+ return __awaiter(this, arguments, void 0, function* (name, args = {}) {
100
+ return yield this.client.getPrompt({
101
+ name, arguments: args
102
+ });
103
+ });
104
+ }
105
+ // 列出资源
106
+ listResources() {
107
+ return __awaiter(this, void 0, void 0, function* () {
108
+ return yield this.client.listResources();
109
+ });
110
+ }
111
+ // 列出所有模板资源
112
+ listResourceTemplates() {
113
+ return __awaiter(this, void 0, void 0, function* () {
114
+ return yield this.client.listResourceTemplates();
115
+ });
116
+ }
117
+ // 读取资源
118
+ readResource(uri) {
119
+ return __awaiter(this, void 0, void 0, function* () {
120
+ return yield this.client.readResource({
121
+ uri
122
+ });
123
+ });
124
+ }
125
+ // 列出所有工具
126
+ listTools() {
127
+ return __awaiter(this, void 0, void 0, function* () {
128
+ return yield this.client.listTools();
129
+ });
130
+ }
131
+ // 调用工具
132
+ callTool(options) {
133
+ return __awaiter(this, void 0, void 0, function* () {
134
+ const { callToolOption } = options, methodArgs = __rest(options, ["callToolOption"]);
135
+ console.log('callToolOption', callToolOption);
136
+ return yield this.client.callTool(methodArgs, undefined, callToolOption);
137
+ });
138
+ }
139
+ }
140
+ exports.McpClient = McpClient;
141
+ // Connect 函数实现
142
+ function connect(options) {
143
+ return __awaiter(this, void 0, void 0, function* () {
144
+ const client = new McpClient(options);
145
+ yield client.connect();
146
+ return client;
147
+ });
148
+ }
149
+ function handleImage(content, webview) {
150
+ return __awaiter(this, void 0, void 0, function* () {
151
+ if (content.data && content.mimeType) {
152
+ const filename = (0, ocr_service_1.saveBase64ImageData)(content.data, content.mimeType);
153
+ content.data = filename;
154
+ // 加入工作线程
155
+ const worker = (0, ocr_service_1.createOcrWorker)(filename, webview);
156
+ content._meta = {
157
+ ocr: true,
158
+ workerId: worker.id
159
+ };
160
+ }
161
+ });
162
+ }
163
+ /**
164
+ * @description 对 mcp server 返回的结果进行预处理
165
+ * 对于特殊结果构造工作线程解析成文本或者其他格式的数据(比如 image url)
166
+ * 0.x.x 受限于技术,暂时将所有结果转化成文本
167
+ * @param response
168
+ * @returns
169
+ */
170
+ function postProcessMcpToolcallResponse(response, webview) {
171
+ if (response.isError) {
172
+ // 如果是错误响应,将其转换为错误信息
173
+ return response;
174
+ }
175
+ // 将 content 中的图像 base64 提取出来,并保存到本地
176
+ for (const content of response.content || []) {
177
+ switch (content.type) {
178
+ case 'image':
179
+ handleImage(content, webview);
180
+ break;
181
+ default:
182
+ break;
183
+ }
184
+ }
185
+ return response;
186
+ }
@@ -0,0 +1,17 @@
1
+ import { RequestClientType } from '../common';
2
+ import { PostMessageble } from '../hook/adapter';
3
+ export declare class ConnectController {
4
+ connect(client: RequestClientType, data: any, webview: PostMessageble): Promise<import("../common/index.dto").RestfulResponse>;
5
+ lookupEnvVar(client: RequestClientType, data: any, webview: PostMessageble): Promise<{
6
+ code: number;
7
+ msg: any;
8
+ }>;
9
+ ping(client: RequestClientType, data: any, webview: PostMessageble): Promise<{
10
+ code: number;
11
+ msg: string;
12
+ } | {
13
+ code: number;
14
+ msg: {};
15
+ }>;
16
+ }
17
+ //# sourceMappingURL=connect.controller.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connect.controller.d.ts","sourceRoot":"","sources":["../../src/mcp/connect.controller.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAGjD,qBAAa,iBAAiB;IAGpB,OAAO,CAAC,MAAM,EAAE,iBAAiB,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,cAAc;IAMrE,YAAY,CAAC,MAAM,EAAE,iBAAiB,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,cAAc;;;;IAW1E,IAAI,CAAC,MAAM,EAAE,iBAAiB,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,cAAc;;;;;;;CAc3E"}
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
9
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
10
+ return new (P || (P = Promise))(function (resolve, reject) {
11
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
12
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
13
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
14
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
15
+ });
16
+ };
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.ConnectController = void 0;
19
+ const common_1 = require("../common");
20
+ const connect_service_1 = require("./connect.service");
21
+ class ConnectController {
22
+ connect(client, data, webview) {
23
+ return __awaiter(this, void 0, void 0, function* () {
24
+ const res = yield (0, connect_service_1.connectService)(client, data);
25
+ return res;
26
+ });
27
+ }
28
+ lookupEnvVar(client, data, webview) {
29
+ return __awaiter(this, void 0, void 0, function* () {
30
+ const { keys } = data;
31
+ const values = keys.map((key) => process.env[key] || '');
32
+ return {
33
+ code: 200,
34
+ msg: values
35
+ };
36
+ });
37
+ }
38
+ ping(client, data, webview) {
39
+ return __awaiter(this, void 0, void 0, function* () {
40
+ if (!client) {
41
+ const connectResult = {
42
+ code: 501,
43
+ msg: 'mcp client 尚未连接'
44
+ };
45
+ return connectResult;
46
+ }
47
+ return {
48
+ code: 200,
49
+ msg: {}
50
+ };
51
+ });
52
+ }
53
+ }
54
+ exports.ConnectController = ConnectController;
55
+ __decorate([
56
+ (0, common_1.Controller)('connect')
57
+ ], ConnectController.prototype, "connect", null);
58
+ __decorate([
59
+ (0, common_1.Controller)('lookup-env-var')
60
+ ], ConnectController.prototype, "lookupEnvVar", null);
61
+ __decorate([
62
+ (0, common_1.Controller)('ping')
63
+ ], ConnectController.prototype, "ping", null);
@@ -0,0 +1,7 @@
1
+ import { RequestClientType } from '../common';
2
+ import { RestfulResponse } from '../common/index.dto';
3
+ import { McpOptions } from './client.dto';
4
+ export declare let client: RequestClientType;
5
+ export declare function tryGetRunCommandError(command: string, args?: string[], cwd?: string): string | null;
6
+ export declare function connectService(_client: RequestClientType, option: McpOptions): Promise<RestfulResponse>;
7
+ //# sourceMappingURL=connect.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connect.service.d.ts","sourceRoot":"","sources":["../../src/mcp/connect.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAE9C,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAI1C,eAAO,IAAI,MAAM,EAAE,iBAA6B,CAAC;AAEjD,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,GAAE,MAAM,EAAO,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAqBvG;AAED,wBAAsB,cAAc,CAChC,OAAO,EAAE,iBAAiB,EAC1B,MAAM,EAAE,UAAU,GACnB,OAAO,CAAC,eAAe,CAAC,CA0C1B"}
@@ -0,0 +1,76 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.client = void 0;
13
+ exports.tryGetRunCommandError = tryGetRunCommandError;
14
+ exports.connectService = connectService;
15
+ const node_child_process_1 = require("node:child_process");
16
+ const client_service_1 = require("./client.service");
17
+ // TODO: 更多的 client
18
+ exports.client = undefined;
19
+ function tryGetRunCommandError(command, args = [], cwd) {
20
+ try {
21
+ console.log('current command', command);
22
+ console.log('current args', args);
23
+ const result = (0, node_child_process_1.spawnSync)(command, args, {
24
+ cwd: cwd || process.cwd(),
25
+ stdio: 'pipe',
26
+ encoding: 'utf-8'
27
+ });
28
+ if (result.error) {
29
+ return result.error.message;
30
+ }
31
+ if (result.status !== 0) {
32
+ return result.stderr || `Command failed with code ${result.status}`;
33
+ }
34
+ return null;
35
+ }
36
+ catch (error) {
37
+ return error instanceof Error ? error.message : String(error);
38
+ }
39
+ }
40
+ function connectService(_client, option) {
41
+ return __awaiter(this, void 0, void 0, function* () {
42
+ try {
43
+ console.log('ready to connect', option);
44
+ // 对于特殊表示的路径,进行特殊的支持
45
+ if (option.args) {
46
+ option.args = option.args.map(arg => {
47
+ if (arg.startsWith('~/')) {
48
+ return arg.replace('~', process.env.HOME || '');
49
+ }
50
+ return arg;
51
+ });
52
+ }
53
+ exports.client = yield (0, client_service_1.connect)(option);
54
+ const connectResult = {
55
+ code: 200,
56
+ msg: 'Connect to OpenMCP successfully\nWelcome back, Kirigaya'
57
+ };
58
+ return connectResult;
59
+ }
60
+ catch (error) {
61
+ // TODO: 这边获取到的 error 不够精致,如何才能获取到更加精准的错误
62
+ // 比如 error: Failed to spawn: `server.py`
63
+ // Caused by: No such file or directory (os error 2)
64
+ let errorMsg = '';
65
+ if (option.command) {
66
+ errorMsg += tryGetRunCommandError(option.command, option.args, option.cwd);
67
+ }
68
+ errorMsg += error.toString();
69
+ const connectResult = {
70
+ code: 500,
71
+ msg: errorMsg
72
+ };
73
+ return connectResult;
74
+ }
75
+ });
76
+ }
@@ -0,0 +1,18 @@
1
+ import { RequestClientType } from "../common";
2
+ import { PostMessageble } from "../hook/adapter";
3
+ export declare class OcrController {
4
+ getOcrImage(client: RequestClientType, data: any, webview: PostMessageble): Promise<{
5
+ code: number;
6
+ msg: {
7
+ base64String: string | undefined;
8
+ };
9
+ }>;
10
+ startOcr(client: RequestClientType, data: any, webview: PostMessageble): Promise<{
11
+ code: number;
12
+ msg: {
13
+ filename: string;
14
+ workerId: string;
15
+ };
16
+ }>;
17
+ }
18
+ //# sourceMappingURL=ocr.controller.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ocr.controller.d.ts","sourceRoot":"","sources":["../../src/mcp/ocr.controller.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAIjD,qBAAa,aAAa;IAEhB,WAAW,CAAC,MAAM,EAAE,iBAAiB,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,cAAc;;;;;;IAazE,QAAQ,CAAC,MAAM,EAAE,iBAAiB,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,cAAc;;;;;;;CAe/E"}
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
9
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
10
+ return new (P || (P = Promise))(function (resolve, reject) {
11
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
12
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
13
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
14
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
15
+ });
16
+ };
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.OcrController = void 0;
19
+ const common_1 = require("../common");
20
+ const db_1 = require("../hook/db");
21
+ const ocr_service_1 = require("./ocr.service");
22
+ class OcrController {
23
+ getOcrImage(client, data, webview) {
24
+ return __awaiter(this, void 0, void 0, function* () {
25
+ const { filename } = data;
26
+ const buffer = db_1.diskStorage.getSync(filename);
27
+ const base64String = buffer ? buffer.toString('base64') : undefined;
28
+ return {
29
+ code: 200,
30
+ msg: {
31
+ base64String
32
+ }
33
+ };
34
+ });
35
+ }
36
+ startOcr(client, data, webview) {
37
+ return __awaiter(this, void 0, void 0, function* () {
38
+ const { base64String, mimeType } = data;
39
+ const filename = (0, ocr_service_1.saveBase64ImageData)(base64String, mimeType);
40
+ const worker = (0, ocr_service_1.createOcrWorker)(filename, webview);
41
+ return {
42
+ code: 200,
43
+ msg: {
44
+ filename,
45
+ workerId: worker.id
46
+ }
47
+ };
48
+ });
49
+ }
50
+ }
51
+ exports.OcrController = OcrController;
52
+ __decorate([
53
+ (0, common_1.Controller)('ocr/get-ocr-image')
54
+ ], OcrController.prototype, "getOcrImage", null);
55
+ __decorate([
56
+ (0, common_1.Controller)('ocr/start-ocr')
57
+ ], OcrController.prototype, "startOcr", null);
@@ -0,0 +1,8 @@
1
+ export interface OcrWorker {
2
+ id: string;
3
+ name: string;
4
+ filename: string;
5
+ createTime: number;
6
+ fut: Promise<string>;
7
+ }
8
+ //# sourceMappingURL=ocr.dto.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ocr.dto.d.ts","sourceRoot":"","sources":["../../src/mcp/ocr.dto.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,SAAS;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC,CAAA;CACvB"}
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,9 @@
1
+ import Tesseract from 'tesseract.js';
2
+ import { PostMessageble } from '../hook/adapter';
3
+ import { OcrWorker } from './ocr.dto';
4
+ export declare const ocrWorkerStorage: Map<string, OcrWorker>;
5
+ export declare function saveBase64ImageData(base64String: string, mimeType: string): string;
6
+ export declare function loadBase64ImageData(fileName: string): string;
7
+ export declare function tesseractOCR(imagePath: string, logger: (message: Tesseract.LoggerMessage) => void, lang?: string): Promise<string>;
8
+ export declare function createOcrWorker(filename: string, webview: PostMessageble): OcrWorker;
9
+ //# sourceMappingURL=ocr.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ocr.service.d.ts","sourceRoot":"","sources":["../../src/mcp/ocr.service.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEjD,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAOtC,eAAO,MAAM,gBAAgB,wBAA+B,CAAC;AAE7D,wBAAgB,mBAAmB,CAC/B,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE,MAAM,GACjB,MAAM,CAWR;AAED,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAa5D;AAGD,wBAAsB,YAAY,CAC9B,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,CAAC,OAAO,EAAE,SAAS,CAAC,aAAa,KAAK,IAAI,EAClD,IAAI,GAAE,MAAsB,mBA2B/B;AAGD,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,GAAG,SAAS,CAoDpF"}
@@ -0,0 +1,143 @@
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 __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
36
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
37
+ return new (P || (P = Promise))(function (resolve, reject) {
38
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
39
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
40
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
41
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
42
+ });
43
+ };
44
+ var __importDefault = (this && this.__importDefault) || function (mod) {
45
+ return (mod && mod.__esModule) ? mod : { "default": mod };
46
+ };
47
+ Object.defineProperty(exports, "__esModule", { value: true });
48
+ exports.ocrWorkerStorage = void 0;
49
+ exports.saveBase64ImageData = saveBase64ImageData;
50
+ exports.loadBase64ImageData = loadBase64ImageData;
51
+ exports.tesseractOCR = tesseractOCR;
52
+ exports.createOcrWorker = createOcrWorker;
53
+ const tesseract_js_1 = __importDefault(require("tesseract.js"));
54
+ const uuid_1 = require("uuid");
55
+ const db_1 = require("../hook/db");
56
+ const fs = __importStar(require("fs"));
57
+ const os = __importStar(require("os"));
58
+ const path = __importStar(require("path"));
59
+ const setting_1 = require("../hook/setting");
60
+ exports.ocrWorkerStorage = new Map();
61
+ function saveBase64ImageData(base64String, mimeType) {
62
+ // 从 base64 字符串中提取数据部分
63
+ const base64Data = base64String.replace(/^data:.+;base64,/, '');
64
+ // 生成唯一文件名
65
+ const fileName = `${(0, uuid_1.v4)()}.${mimeType.split('/')[1]}`;
66
+ db_1.diskStorage.setSync(fileName, base64Data, { encoding: 'base64' });
67
+ return fileName;
68
+ }
69
+ function loadBase64ImageData(fileName) {
70
+ const homedir = os.homedir();
71
+ const imageStorageFolder = path.join(homedir, '.openmcp', 'storage');
72
+ const filePath = path.join(imageStorageFolder, fileName);
73
+ // 读取文件内容
74
+ if (!fs.existsSync(filePath)) {
75
+ return '';
76
+ }
77
+ const fileContent = fs.readFileSync(filePath, { encoding: 'base64' });
78
+ // 构建 base64 字符串
79
+ const base64String = `data:image/png;base64,${fileContent}`;
80
+ return base64String;
81
+ }
82
+ function tesseractOCR(imagePath_1, logger_1) {
83
+ return __awaiter(this, arguments, void 0, function* (imagePath, logger, lang = 'eng+chi_sim') {
84
+ const ocrHome = path.join(setting_1.RUNNING_CWD, 'resources', 'ocr');
85
+ if (!ocrHome) {
86
+ console.log('ocr 目录不存在');
87
+ return '安装包已经损坏';
88
+ }
89
+ try {
90
+ const { data: { text } } = yield tesseract_js_1.default.recognize(imagePath, lang, {
91
+ logger,
92
+ gzip: false,
93
+ langPath: ocrHome,
94
+ corePath: ocrHome,
95
+ workerPath: path.join(ocrHome, 'worker.js'),
96
+ });
97
+ return text;
98
+ }
99
+ catch (error) {
100
+ console.error('OCR error:', error);
101
+ }
102
+ return '无法识别图片';
103
+ });
104
+ }
105
+ function createOcrWorker(filename, webview) {
106
+ const workerId = (0, uuid_1.v4)();
107
+ const logger = (message) => {
108
+ console.log('report ocr status');
109
+ console.log(message);
110
+ webview.postMessage({
111
+ command: 'ocr/worker/log',
112
+ data: Object.assign({ id: workerId }, message)
113
+ });
114
+ };
115
+ const imagePath = db_1.diskStorage.getStoragePath(filename);
116
+ console.log(imagePath);
117
+ const fut = tesseractOCR(imagePath, logger);
118
+ fut.then((text) => {
119
+ webview.postMessage({
120
+ command: 'ocr/worker/done',
121
+ data: {
122
+ id: workerId,
123
+ text
124
+ }
125
+ });
126
+ db_1.ocrDB.insert({
127
+ id: filename,
128
+ filename,
129
+ text,
130
+ createTime: Date.now()
131
+ });
132
+ exports.ocrWorkerStorage.delete(workerId);
133
+ });
134
+ const worker = {
135
+ id: workerId,
136
+ name: 'ocr-' + filename,
137
+ filename,
138
+ createTime: Date.now(),
139
+ fut
140
+ };
141
+ exports.ocrWorkerStorage.set(workerId, worker);
142
+ return worker;
143
+ }