@lmcc-dev/mult-fetch-mcp-server 1.0.2 → 1.1.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.
Files changed (115) hide show
  1. package/README.md +14 -2
  2. package/README.zh.md +3 -2
  3. package/dist/src/client.d.ts +6 -0
  4. package/dist/src/client.js +26 -28
  5. package/dist/src/client.js.map +1 -0
  6. package/dist/src/index.d.ts +15 -0
  7. package/dist/src/index.js.map +1 -0
  8. package/dist/src/lib/BrowserFetcher.d.ts +175 -0
  9. package/dist/src/lib/BrowserFetcher.js +99 -65
  10. package/dist/src/lib/BrowserFetcher.js.map +1 -0
  11. package/dist/src/lib/NodeFetcher.d.ts +92 -0
  12. package/dist/src/lib/NodeFetcher.js +150 -86
  13. package/dist/src/lib/NodeFetcher.js.map +1 -0
  14. package/dist/src/lib/i18n/index.js.map +1 -0
  15. package/dist/src/lib/i18n/keys.js +135 -0
  16. package/dist/src/lib/i18n/locales/en/browser.d.ts +61 -0
  17. package/dist/src/lib/i18n/locales/en/browser.js +68 -45
  18. package/dist/src/lib/i18n/locales/en/browser.js.map +1 -0
  19. package/dist/src/lib/i18n/locales/en/client.d.ts +39 -0
  20. package/dist/src/lib/i18n/locales/en/client.js.map +1 -0
  21. package/dist/src/lib/i18n/locales/en/errors.d.ts +17 -0
  22. package/dist/src/lib/i18n/locales/en/errors.js.map +1 -0
  23. package/dist/src/lib/i18n/locales/en/fetcher.d.ts +66 -0
  24. package/dist/src/lib/i18n/locales/en/fetcher.js +60 -59
  25. package/dist/src/lib/i18n/locales/en/fetcher.js.map +1 -0
  26. package/dist/src/lib/i18n/locales/en/index.d.ts +344 -0
  27. package/dist/src/lib/i18n/locales/en/index.js +1 -1
  28. package/dist/src/lib/i18n/locales/en/index.js.map +1 -0
  29. package/dist/src/lib/i18n/locales/en/node.d.ts +41 -0
  30. package/dist/src/lib/i18n/locales/en/node.js.map +1 -0
  31. package/dist/src/lib/i18n/locales/en/prompts.d.ts +65 -0
  32. package/dist/src/lib/i18n/locales/en/prompts.js.map +1 -0
  33. package/dist/src/lib/i18n/locales/en/resources.d.ts +41 -0
  34. package/dist/src/lib/i18n/locales/en/resources.js +30 -15
  35. package/dist/src/lib/i18n/locales/en/resources.js.map +1 -0
  36. package/dist/src/lib/i18n/locales/en/server.d.ts +30 -0
  37. package/dist/src/lib/i18n/locales/en/server.js.map +1 -0
  38. package/dist/src/lib/i18n/locales/en/tools.d.ts +24 -0
  39. package/dist/src/lib/i18n/locales/en/tools.js.map +1 -0
  40. package/dist/src/lib/i18n/locales/zh/browser.d.ts +61 -0
  41. package/dist/src/lib/i18n/locales/zh/browser.js +68 -45
  42. package/dist/src/lib/i18n/locales/zh/browser.js.map +1 -0
  43. package/dist/src/lib/i18n/locales/zh/client.d.ts +38 -0
  44. package/dist/src/lib/i18n/locales/zh/client.js.map +1 -0
  45. package/dist/src/lib/i18n/locales/zh/errors.d.ts +17 -0
  46. package/dist/src/lib/i18n/locales/zh/errors.js.map +1 -0
  47. package/dist/src/lib/i18n/locales/zh/fetcher.d.ts +66 -0
  48. package/dist/src/lib/i18n/locales/zh/fetcher.js +60 -59
  49. package/dist/src/lib/i18n/locales/zh/fetcher.js.map +1 -0
  50. package/dist/src/lib/i18n/locales/zh/index.d.ts +343 -0
  51. package/dist/src/lib/i18n/locales/zh/index.js +1 -1
  52. package/dist/src/lib/i18n/locales/zh/index.js.map +1 -0
  53. package/dist/src/lib/i18n/locales/zh/node.d.ts +41 -0
  54. package/dist/src/lib/i18n/locales/zh/node.js.map +1 -0
  55. package/dist/src/lib/i18n/locales/zh/prompts.d.ts +65 -0
  56. package/dist/src/lib/i18n/locales/zh/prompts.js.map +1 -0
  57. package/dist/src/lib/i18n/locales/zh/resources.d.ts +41 -0
  58. package/dist/src/lib/i18n/locales/zh/resources.js +28 -13
  59. package/dist/src/lib/i18n/locales/zh/resources.js.map +1 -0
  60. package/dist/src/lib/i18n/locales/zh/server.d.ts +30 -0
  61. package/dist/src/lib/i18n/locales/zh/server.js.map +1 -0
  62. package/dist/src/lib/i18n/locales/zh/tools.d.ts +24 -0
  63. package/dist/src/lib/i18n/locales/zh/tools.js.map +1 -0
  64. package/dist/src/lib/i18n/logger.d.ts +38 -0
  65. package/dist/src/lib/i18n/logger.js.map +1 -0
  66. package/dist/src/lib/logger.d.ts +32 -0
  67. package/dist/src/lib/logger.js.map +1 -0
  68. package/dist/src/lib/server/browser.d.ts +34 -0
  69. package/dist/src/lib/server/browser.js +10 -16
  70. package/dist/src/lib/server/browser.js.map +1 -0
  71. package/dist/src/lib/server/fetcher.d.ts +20 -0
  72. package/dist/src/lib/server/fetcher.js.map +1 -0
  73. package/dist/src/lib/server/index.d.ts +10 -0
  74. package/dist/src/lib/server/index.js.map +1 -0
  75. package/dist/src/lib/server/prompts.d.ts +11 -0
  76. package/dist/src/lib/server/prompts.js +6 -6
  77. package/dist/src/lib/server/prompts.js.map +1 -0
  78. package/dist/src/lib/server/resources.d.ts +11 -0
  79. package/dist/src/lib/server/resources.js.map +1 -0
  80. package/dist/src/lib/server/tools.d.ts +12 -0
  81. package/dist/src/lib/server/tools.js +369 -309
  82. package/dist/src/lib/server/tools.js.map +1 -0
  83. package/dist/src/lib/server/types.d.ts +71 -0
  84. package/dist/src/lib/server/types.js.map +1 -0
  85. package/dist/src/lib/types.d.ts +119 -0
  86. package/dist/src/lib/types.js.map +1 -0
  87. package/dist/src/lib/utils/errorDetection.js +41 -0
  88. package/dist/src/lib/utils/errors.js +279 -0
  89. package/dist/src/mcp-server.d.ts +6 -0
  90. package/dist/src/mcp-server.js.map +1 -0
  91. package/dist/tests/BrowserFetcher.test.js +951 -0
  92. package/dist/tests/NodeFetcher.test.js +263 -0
  93. package/dist/tests/client.test.js +250 -0
  94. package/dist/tests/i18n.test.js +179 -0
  95. package/dist/tests/jest.setup.d.ts +6 -0
  96. package/dist/tests/jest.setup.js +30 -0
  97. package/dist/tests/jest.setup.js.map +1 -0
  98. package/dist/tests/logger.test.js +99 -0
  99. package/dist/tests/mcp-server.test.js +113 -0
  100. package/dist/tests/server/browser.test.js +197 -0
  101. package/dist/tests/server/fetcher.test.js +216 -0
  102. package/dist/tests/server/index.test.js +122 -0
  103. package/dist/tests/server/prompts.test.js +243 -0
  104. package/dist/tests/server/resources.test.js +359 -0
  105. package/dist/tests/server/tools.test.js +222 -0
  106. package/dist/tests/test-direct-client.d.ts +6 -0
  107. package/dist/tests/test-direct-client.js.map +1 -0
  108. package/dist/tests/test-mcp-methods.d.ts +6 -0
  109. package/dist/tests/test-mcp-methods.js.map +1 -0
  110. package/dist/tests/test-mcp.d.ts +6 -0
  111. package/dist/tests/test-mcp.js.map +1 -0
  112. package/dist/tests/test-mini4k.d.ts +6 -0
  113. package/dist/tests/test-mini4k.js.map +1 -0
  114. package/dist/tests/types.test.js +57 -0
  115. package/package.json +12 -3
@@ -0,0 +1,61 @@
1
+ /**
2
+ * Author: Martin <lmccc.dev@gmail.com>
3
+ * Co-Author: AI Assistant (Claude)
4
+ * Description: This code was collaboratively developed by Martin and AI Assistant.
5
+ */
6
+ export declare const browser: {
7
+ closing: string;
8
+ closed: string;
9
+ starting: string;
10
+ startingFailed: string;
11
+ waiting: string;
12
+ startupSuccess: string;
13
+ navigating: string;
14
+ waitingForSelector: string;
15
+ waitingForTimeout: string;
16
+ scrolling: string;
17
+ scrollCompleted: string;
18
+ gettingContent: string;
19
+ savingCookies: string;
20
+ contentLength: string;
21
+ contentTruncated: string;
22
+ pageClosed: string;
23
+ fetchError: string;
24
+ highMemory: string;
25
+ closingDueToMemory: string;
26
+ closingError: string;
27
+ forcingGC: string;
28
+ memoryCheckError: string;
29
+ usingCookies: string;
30
+ usingProxy: string;
31
+ checkingCloudflare: string;
32
+ cloudflareDetected: string;
33
+ simulatingHuman: string;
34
+ simulatingHumanError: string;
35
+ stillOnCloudflare: string;
36
+ bypassFailed: string;
37
+ cloudflareError: string;
38
+ continuingWithoutBypass: string;
39
+ fetchingWithRetry: string;
40
+ memoryUsage: string;
41
+ memoryTooHigh: string;
42
+ unableToBypassCloudflare: string;
43
+ contentTooLarge: string;
44
+ failedToParseJSON: string;
45
+ startingBrowserFetchForMarkdown: string;
46
+ errorInBrowserFetchForMarkdown: string;
47
+ fetchRequest: string;
48
+ usingStoredCookies: string;
49
+ closingInstance: string;
50
+ fetchErrorWithAttempt: string;
51
+ retryingAfterDelay: string;
52
+ browserStartupSuccess: string;
53
+ browserStartupFailed: string;
54
+ usingCustomChromePath: string;
55
+ browserDisconnected: string;
56
+ waitingForBrowserStart: string;
57
+ reusingExistingBrowser: string;
58
+ startingBrowser: string;
59
+ browserStarted: string;
60
+ browserStartError: string;
61
+ };
@@ -3,51 +3,74 @@
3
3
  * Co-Author: AI Assistant (Claude)
4
4
  * Description: This code was collaboratively developed by Martin and AI Assistant.
5
5
  */
6
+ import { BROWSER_KEYS } from '../../keys.js';
6
7
  // 浏览器相关消息 (Browser related messages)
7
8
  export const browser = {
8
- closing: "正在关闭浏览器...",
9
- closed: "浏览器已关闭",
10
- starting: "启动新的浏览器实例",
11
- startingFailed: "浏览器启动失败: {{error}}",
12
- waiting: "浏览器正在启动中,等待...",
13
- startupSuccess: "浏览器启动成功",
14
- navigating: "正在导航到URL...",
15
- waitingForSelector: "等待选择器: {{selector}}",
16
- waitingForTimeout: "等待超时: {{timeout}}",
17
- scrolling: "自动滚动页面...",
18
- scrollCompleted: "自动滚动完成",
19
- gettingContent: "获取页面内容...",
20
- savingCookies: "保存Cookie...",
21
- contentLength: "内容长度: {{length}}",
22
- contentTruncated: "内容过大,进行截断...",
23
- pageClosed: "页面已关闭",
24
- fetchError: "浏览器获取错误: {{error}}",
25
- highMemory: "检测到内存使用率高,尝试释放资源...",
26
- closingDueToMemory: "由于内存使用率高,关闭浏览器...",
27
- closingError: "关闭浏览器错误: {{error}}",
28
- forcingGC: "强制垃圾回收...",
29
- memoryCheckError: "检查内存使用错误: {{error}}",
30
- usingCookies: "使用存储的域名Cookie: {{domain}}",
31
- usingProxy: "使用代理服务器: {{proxy}}",
32
- checkingCloudflare: "检查是否存在Cloudflare保护...",
33
- cloudflareDetected: "检测到Cloudflare保护,尝试绕过...",
34
- simulatingHuman: "模拟人类行为...",
35
- simulatingHumanError: "模拟人类行为时出错: {{error}}",
36
- stillOnCloudflare: "仍然在Cloudflare保护页面,尝试刷新...",
37
- bypassFailed: "无法绕过Cloudflare保护",
38
- cloudflareError: "处理Cloudflare保护时出错: {{error}}",
39
- continuingWithoutBypass: "无法绕过Cloudflare保护,继续尝试获取内容...",
40
- fetchingWithRetry: "使用浏览器获取HTML(尝试 {{attempt}}/{{maxAttempts}}): {{url}}",
41
- memoryUsage: "内存使用情况 - Heap: {{heapUsed}}MB/{{heapTotal}}MB, RSS: {{rss}}MB",
42
- memoryTooHigh: "内存使用过高 - Heap: {{heapUsed}}MB/{{heapTotal}}MB, RSS: {{rss}}MB",
43
- unableToBypassCloudflare: "无法绕过Cloudflare保护,继续尝试获取内容...",
44
- contentTooLarge: "内容过大,截断中...",
45
- failedToParseJSON: "解析JSON失败: {{error}}",
46
- startingBrowserFetchForMarkdown: "开始使用浏览器获取Markdown: {{url}}",
47
- errorInBrowserFetchForMarkdown: "使用浏览器获取Markdown时出错: {{error}}",
48
- fetchRequest: "浏览器获取请求: {{url}}",
49
- usingStoredCookies: "使用存储的域名Cookie: {{domain}}",
50
- closingInstance: "关闭浏览器实例",
51
- fetchErrorWithAttempt: "浏览器获取错误(尝试 {{attempt}}/{{maxAttempts}}): {{error}}",
52
- retryingAfterDelay: "延迟 {{delayMs}}ms 后重试..."
9
+ [BROWSER_KEYS.closing]: "正在关闭浏览器...",
10
+ [BROWSER_KEYS.closed]: "浏览器已关闭",
11
+ [BROWSER_KEYS.starting]: "启动新的浏览器实例",
12
+ [BROWSER_KEYS.startingFailed]: "浏览器启动失败: {{error}}",
13
+ [BROWSER_KEYS.alreadyRunning]: "浏览器正在启动中,等待...",
14
+ [BROWSER_KEYS.creatingPage]: "浏览器启动成功",
15
+ [BROWSER_KEYS.navigatingTo]: "正在导航到URL...",
16
+ [BROWSER_KEYS.waitingForSelector]: "等待选择器: {{selector}}",
17
+ [BROWSER_KEYS.waitingForTimeout]: "等待超时: {{timeout}}",
18
+ [BROWSER_KEYS.scrollingToBottom]: "自动滚动页面...",
19
+ [BROWSER_KEYS.gettingContent]: "获取页面内容...",
20
+ [BROWSER_KEYS.savingCookies]: "保存Cookie...",
21
+ [BROWSER_KEYS.contentLength]: "内容长度: {{length}}",
22
+ [BROWSER_KEYS.cookiesSaved]: "Cookie已保存",
23
+ [BROWSER_KEYS.cookiesLoaded]: "Cookie已加载",
24
+ [BROWSER_KEYS.noCookiesFound]: "未找到Cookie",
25
+ [BROWSER_KEYS.errorLoadingCookies]: "加载Cookie错误: {{error}}",
26
+ [BROWSER_KEYS.errorSavingCookies]: "保存Cookie错误: {{error}}",
27
+ [BROWSER_KEYS.errorNavigating]: "导航错误: {{error}}",
28
+ [BROWSER_KEYS.errorGettingContent]: "浏览器获取错误: {{error}}",
29
+ [BROWSER_KEYS.errorClosingBrowser]: "关闭浏览器错误: {{error}}",
30
+ [BROWSER_KEYS.errorCreatingPage]: "创建页面错误: {{error}}",
31
+ // 额外的键(不在 BROWSER_KEYS 中定义的)
32
+ "waiting": "浏览器正在启动中,等待...",
33
+ "startupSuccess": "浏览器启动成功",
34
+ "navigating": "正在导航到URL...",
35
+ "scrolling": "自动滚动页面...",
36
+ "scrollCompleted": "自动滚动完成",
37
+ "contentTruncated": "内容过大,进行截断...",
38
+ "pageClosed": "页面已关闭",
39
+ "fetchError": "浏览器获取错误: {{error}}",
40
+ "highMemory": "检测到内存使用率高,尝试释放资源...",
41
+ "closingDueToMemory": "由于内存使用率高,关闭浏览器...",
42
+ "forcingGC": "强制垃圾回收...",
43
+ "memoryCheckError": "检查内存使用错误: {{error}}",
44
+ "usingCookies": "使用存储的域名Cookie: {{domain}}",
45
+ "usingProxy": "使用代理服务器: {{proxy}}",
46
+ "checkingCloudflare": "检查是否存在Cloudflare保护...",
47
+ "cloudflareDetected": "检测到Cloudflare保护,尝试绕过...",
48
+ "simulatingHuman": "模拟人类行为...",
49
+ "simulatingHumanError": "模拟人类行为时出错: {{error}}",
50
+ "stillOnCloudflare": "仍然在Cloudflare保护页面,尝试刷新...",
51
+ "bypassFailed": "无法绕过Cloudflare保护",
52
+ "cloudflareError": "处理Cloudflare保护时出错: {{error}}",
53
+ "continuingWithoutBypass": "无法绕过Cloudflare保护,继续尝试获取内容...",
54
+ "fetchingWithRetry": "使用浏览器获取HTML(尝试 {{attempt}}/{{maxAttempts}}): {{url}}",
55
+ "memoryUsage": "内存使用情况 - Heap: {{heapUsed}}MB/{{heapTotal}}MB, RSS: {{rss}}MB",
56
+ "memoryTooHigh": "内存使用过高 - Heap: {{heapUsed}}MB/{{heapTotal}}MB, RSS: {{rss}}MB",
57
+ "unableToBypassCloudflare": "无法绕过Cloudflare保护,继续尝试获取内容...",
58
+ "contentTooLarge": "内容过大,截断中...",
59
+ "failedToParseJSON": "解析JSON失败: {{error}}",
60
+ "startingBrowserFetchForMarkdown": "开始使用浏览器获取Markdown: {{url}}",
61
+ "errorInBrowserFetchForMarkdown": "使用浏览器获取Markdown时出错: {{error}}",
62
+ "fetchRequest": "浏览器获取请求: {{url}}",
63
+ "usingStoredCookies": "使用存储的域名Cookie: {{domain}}",
64
+ "closingInstance": "关闭浏览器实例",
65
+ "fetchErrorWithAttempt": "浏览器获取错误(尝试 {{attempt}}/{{maxAttempts}}): {{error}}",
66
+ "retryingAfterDelay": "延迟 {{delayMs}}ms 后重试...",
67
+ "browserStartupSuccess": "浏览器启动成功",
68
+ "browserStartupFailed": "浏览器启动失败: {{error}}",
69
+ "usingCustomChromePath": "使用自定义Chrome路径: {{path}}",
70
+ "browserDisconnected": "浏览器已断开连接",
71
+ "waitingForBrowserStart": "等待浏览器启动",
72
+ "reusingExistingBrowser": "复用现有浏览器实例",
73
+ "startingBrowser": "正在启动浏览器",
74
+ "browserStarted": "浏览器启动成功",
75
+ "browserStartError": "浏览器启动错误: {{error}}"
53
76
  };
@@ -0,0 +1 @@
1
+ {"version":3,"file":"browser.js","sourceRoot":"","sources":["../../../../../../src/lib/i18n/locales/zh/browser.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,qCAAqC;AACrC,MAAM,CAAC,MAAM,OAAO,GAAG;IACrB,OAAO,EAAE,YAAY;IACrB,MAAM,EAAE,QAAQ;IAChB,QAAQ,EAAE,WAAW;IACrB,cAAc,EAAE,oBAAoB;IACpC,OAAO,EAAE,gBAAgB;IACzB,cAAc,EAAE,SAAS;IACzB,UAAU,EAAE,aAAa;IACzB,kBAAkB,EAAE,qBAAqB;IACzC,iBAAiB,EAAE,mBAAmB;IACtC,SAAS,EAAE,WAAW;IACtB,eAAe,EAAE,QAAQ;IACzB,cAAc,EAAE,WAAW;IAC3B,aAAa,EAAE,aAAa;IAC5B,aAAa,EAAE,kBAAkB;IACjC,gBAAgB,EAAE,cAAc;IAChC,UAAU,EAAE,OAAO;IACnB,UAAU,EAAE,oBAAoB;IAChC,UAAU,EAAE,qBAAqB;IACjC,kBAAkB,EAAE,mBAAmB;IACvC,YAAY,EAAE,oBAAoB;IAClC,SAAS,EAAE,WAAW;IACtB,gBAAgB,EAAE,qBAAqB;IACvC,YAAY,EAAE,2BAA2B;IACzC,UAAU,EAAE,oBAAoB;IAChC,kBAAkB,EAAE,uBAAuB;IAC3C,kBAAkB,EAAE,yBAAyB;IAC7C,eAAe,EAAE,WAAW;IAC5B,oBAAoB,EAAE,sBAAsB;IAC5C,iBAAiB,EAAE,2BAA2B;IAC9C,YAAY,EAAE,kBAAkB;IAChC,eAAe,EAAE,8BAA8B;IAC/C,uBAAuB,EAAE,8BAA8B;IACvD,iBAAiB,EAAE,sDAAsD;IACzE,WAAW,EAAE,+DAA+D;IAC5E,aAAa,EAAE,+DAA+D;IAC9E,wBAAwB,EAAE,8BAA8B;IACxD,eAAe,EAAE,aAAa;IAC9B,iBAAiB,EAAE,qBAAqB;IACxC,+BAA+B,EAAE,4BAA4B;IAC7D,8BAA8B,EAAE,+BAA+B;IAC/D,YAAY,EAAE,kBAAkB;IAChC,kBAAkB,EAAE,2BAA2B;IAC/C,eAAe,EAAE,SAAS;IAC1B,qBAAqB,EAAE,oDAAoD;IAC3E,kBAAkB,EAAE,yBAAyB;IAC7C,qBAAqB,EAAE,SAAS;IAChC,oBAAoB,EAAE,oBAAoB;IAC1C,qBAAqB,EAAE,yBAAyB;IAChD,mBAAmB,EAAE,UAAU;IAC/B,sBAAsB,EAAE,SAAS;IACjC,sBAAsB,EAAE,WAAW;IACnC,eAAe,EAAE,SAAS;IAC1B,cAAc,EAAE,SAAS;IACzB,iBAAiB,EAAE,oBAAoB;CACxC,CAAC"}
@@ -0,0 +1,38 @@
1
+ /**
2
+ * Author: Martin <lmccc.dev@gmail.com>
3
+ * Co-Author: AI Assistant (Claude)
4
+ * Description: This code was collaboratively developed by Martin and AI Assistant.
5
+ */
6
+ export declare const client: {
7
+ connecting: string;
8
+ connected: string;
9
+ disconnecting: string;
10
+ disconnected: string;
11
+ error: string;
12
+ callTool: string;
13
+ callToolSuccess: string;
14
+ callToolError: string;
15
+ statusCodeDetected: string;
16
+ usageInfo: string;
17
+ exampleUsage: string;
18
+ invalidJson: string;
19
+ usingCommandLineProxy: string;
20
+ invalidProxyFormat: string;
21
+ usingEnvProxy: string;
22
+ usingShellProxy: string;
23
+ noShellProxy: string;
24
+ systemProxyDisabled: string;
25
+ proxySet: string;
26
+ requestFailed: string;
27
+ fatalError: string;
28
+ startingServer: string;
29
+ fetchingUrl: string;
30
+ usingMode: string;
31
+ fetchFailed: string;
32
+ fetchSuccess: string;
33
+ browserModeNeeded: string;
34
+ retryingWithBrowser: string;
35
+ browserModeFetchFailed: string;
36
+ browserModeFetchSuccess: string;
37
+ serverClosed: string;
38
+ };
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../../../../src/lib/i18n/locales/zh/client.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,oCAAoC;AACpC,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,UAAU,EAAE,iBAAiB;IAC7B,SAAS,EAAE,cAAc;IACzB,aAAa,EAAE,qBAAqB;IACpC,YAAY,EAAE,iBAAiB;IAC/B,KAAK,EAAE,kBAAkB;IACzB,QAAQ,EAAE,gBAAgB;IAC1B,eAAe,EAAE,kBAAkB;IACnC,aAAa,EAAE,iCAAiC;IAChD,kBAAkB,EAAE,sBAAsB;IAC1C,SAAS,EAAE,mDAAmD;IAC9D,YAAY,EAAE,2GAA2G;IACzH,WAAW,EAAE,sBAAsB;IACnC,qBAAqB,EAAE,uBAAuB;IAC9C,kBAAkB,EAAE,4CAA4C;IAChE,aAAa,EAAE,uBAAuB;IACtC,eAAe,EAAE,0BAA0B;IAC3C,YAAY,EAAE,kBAAkB;IAChC,mBAAmB,EAAE,kCAAkC;IACvD,QAAQ,EAAE,8BAA8B;IACxC,aAAa,EAAE,iBAAiB;IAChC,UAAU,EAAE,iBAAiB;IAC7B,cAAc,EAAE,iBAAiB;IACjC,WAAW,EAAE,mBAAmB;IAChC,SAAS,EAAE,2BAA2B;IACtC,WAAW,EAAE,iBAAiB;IAC9B,YAAY,EAAE,0BAA0B;IACxC,iBAAiB,EAAE,sBAAsB;IACzC,mBAAmB,EAAE,oBAAoB;IACzC,sBAAsB,EAAE,sBAAsB;IAC9C,uBAAuB,EAAE,+BAA+B;IACxD,YAAY,EAAE,QAAQ;CACvB,CAAC"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Author: Martin <lmccc.dev@gmail.com>
3
+ * Co-Author: AI Assistant (Claude)
4
+ * Description: This code was collaboratively developed by Martin and AI Assistant.
5
+ */
6
+ export declare const errors: {
7
+ missingUrl: string;
8
+ invalidUrl: string;
9
+ timeout: string;
10
+ networkError: string;
11
+ browserError: string;
12
+ unexpectedError: string;
13
+ forbidden: string;
14
+ cloudflareProtection: string;
15
+ captchaRequired: string;
16
+ connectionProblem: string;
17
+ };
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../../../../src/lib/i18n/locales/zh/errors.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,iCAAiC;AACjC,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,UAAU,EAAE,aAAa;IACzB,UAAU,EAAE,kBAAkB;IAC9B,OAAO,EAAE,wBAAwB;IACjC,YAAY,EAAE,iBAAiB;IAC/B,YAAY,EAAE,kBAAkB;IAChC,eAAe,EAAE,iBAAiB;IAClC,SAAS,EAAE,2BAA2B;IACtC,oBAAoB,EAAE,mBAAmB;IACzC,eAAe,EAAE,WAAW;IAC5B,iBAAiB,EAAE,UAAU;CAC9B,CAAC"}
@@ -0,0 +1,66 @@
1
+ /**
2
+ * Author: Martin <lmccc.dev@gmail.com>
3
+ * Co-Author: AI Assistant (Claude)
4
+ * Description: This code was collaboratively developed by Martin and AI Assistant.
5
+ */
6
+ export declare const fetcher: {
7
+ addingDelay: string;
8
+ delayCompleted: string;
9
+ usingProxy: string;
10
+ usingSpecifiedProxy: string;
11
+ attemptingToUseSystemProxy: string;
12
+ notUsingProxy: string;
13
+ finalProxyUsed: string;
14
+ noProxy: string;
15
+ fetchingUrl: string;
16
+ usingUserAgent: string;
17
+ usingHttpsProxy: string;
18
+ usingHttpProxy: string;
19
+ requestOptions: string;
20
+ startingFetch: string;
21
+ fetchCompleted: string;
22
+ responseStatus: string;
23
+ redirectingTo: string;
24
+ constructedFullRedirectUrl: string;
25
+ requestSuccess: string;
26
+ errorResponse: string;
27
+ errorResponseBody: string;
28
+ errorReadingBody: string;
29
+ fetchError: string;
30
+ requestAborted: string;
31
+ networkError: string;
32
+ requestTimeout: string;
33
+ fetchFailed: string;
34
+ tooManyRedirects: string;
35
+ startingHtmlFetch: string;
36
+ readingText: string;
37
+ htmlContentLength: string;
38
+ startingJsonFetch: string;
39
+ parsingJson: string;
40
+ jsonParsed: string;
41
+ jsonParseError: string;
42
+ startingTxtFetch: string;
43
+ textContentLength: string;
44
+ startingMarkdownFetch: string;
45
+ creatingTurndown: string;
46
+ convertingToMarkdown: string;
47
+ markdownContentLength: string;
48
+ checkingProxyEnv: string;
49
+ envVarValue: string;
50
+ foundSystemProxy: string;
51
+ systemCommandProxySettings: string;
52
+ foundProxyFromCommand: string;
53
+ errorGettingProxyFromCommand: string;
54
+ checkingSystemEnvVars: string;
55
+ windowsEnvVars: string;
56
+ foundWindowsEnvProxy: string;
57
+ errorGettingWindowsEnvVars: string;
58
+ unixEnvVars: string;
59
+ foundUnixEnvProxy: string;
60
+ errorGettingUnixEnvVars: string;
61
+ errorGettingSystemEnvVars: string;
62
+ noSystemProxyFound: string;
63
+ notSet: string;
64
+ debug: string;
65
+ none: string;
66
+ };
@@ -3,65 +3,66 @@
3
3
  * Co-Author: AI Assistant (Claude)
4
4
  * Description: This code was collaboratively developed by Martin and AI Assistant.
5
5
  */
6
+ import { FETCHER_KEYS } from '../../keys.js';
6
7
  // 获取器相关消息 (Fetcher related messages)
7
8
  export const fetcher = {
8
- addingDelay: "添加随机延迟",
9
- delayCompleted: "延迟完成,耗时 {{delay}}ms",
10
- usingProxy: "使用代理: {{proxy}}",
11
- usingSpecifiedProxy: "使用指定代理: {{proxy}}",
12
- attemptingToUseSystemProxy: "尝试使用系统代理",
13
- notUsingProxy: "不使用任何代理",
14
- finalProxyUsed: "最终使用的代理: {{proxy}}",
15
- noProxy: "不使用代理",
16
- fetchingUrl: "获取URL: {{url}} (重定向: {{redirect}})",
17
- usingUserAgent: "使用User-Agent: {{userAgent}}",
18
- usingHttpsProxy: "使用HTTPS代理",
19
- usingHttpProxy: "使用HTTP代理",
20
- requestOptions: "请求选项: {{options}}",
21
- startingFetch: "开始获取",
22
- fetchCompleted: "获取完成,耗时 {{duration}}ms",
23
- responseStatus: "响应状态: {{status}} {{statusText}}",
24
- redirectingTo: "重定向到: {{location}}",
25
- constructedFullRedirectUrl: "构建完整重定向URL: {{redirectUrl}}",
26
- requestSuccess: "请求成功",
27
- errorResponse: "错误响应: {{status}} {{statusText}}",
28
- errorResponseBody: "错误响应内容(前200字符): {{body}}",
29
- errorReadingBody: "读取响应内容时出错: {{error}}",
30
- fetchError: "获取错误: {{error}}",
31
- requestAborted: "请求中止,耗时 {{duration}}ms",
32
- networkError: "网络错误 ({{code}}),可能需要使用浏览器模式重试",
33
- requestTimeout: "请求超时,耗时 {{duration}}ms",
34
- fetchFailed: "获取失败: {{error}}",
35
- tooManyRedirects: "重定向次数过多 ({{redirects}})",
36
- startingHtmlFetch: "开始HTML获取",
37
- readingText: "获得响应,正在读取文本",
38
- htmlContentLength: "HTML内容长度: {{length}} 字节",
39
- startingJsonFetch: "开始JSON获取",
40
- parsingJson: "解析JSON",
41
- jsonParsed: "JSON解析成功",
42
- jsonParseError: "JSON解析错误: {{error}}",
43
- startingTxtFetch: "开始文本获取",
44
- textContentLength: "文本内容长度: {{length}} 字节",
45
- startingMarkdownFetch: "开始Markdown获取",
46
- creatingTurndown: "创建Turndown服务",
47
- convertingToMarkdown: "转换为Markdown",
48
- markdownContentLength: "Markdown内容长度: {{length}} 字节",
49
- checkingProxyEnv: "检查代理环境变量",
50
- envVarValue: "环境变量 {{envVar}} 的值: {{value}}",
51
- foundSystemProxy: "找到系统代理: {{proxy}}",
52
- systemCommandProxySettings: "系统命令代理设置: {{output}}",
53
- foundProxyFromCommand: "从命令中找到代理: {{proxy}}",
54
- errorGettingProxyFromCommand: "从命令获取代理时出错: {{error}}",
55
- checkingSystemEnvVars: "在平台 {{platform}} 上检查系统环境变量以获取代理设置",
56
- windowsEnvVars: "Windows环境变量输出: {{output}}",
57
- foundWindowsEnvProxy: "找到Windows环境代理: {{proxy}}",
58
- errorGettingWindowsEnvVars: "获取Windows环境变量时出错: {{error}}",
59
- unixEnvVars: "Unix环境变量输出: {{output}}",
60
- foundUnixEnvProxy: "找到Unix环境代理: {{proxy}}",
61
- errorGettingUnixEnvVars: "获取Unix环境变量时出错: {{error}}",
62
- errorGettingSystemEnvVars: "获取系统环境变量时出错: {{error}}",
63
- noSystemProxyFound: "未找到系统代理",
64
- notSet: "未设置",
65
- debug: "{{message}}",
66
- none: "无"
9
+ [FETCHER_KEYS.addingDelay]: "添加随机延迟",
10
+ [FETCHER_KEYS.delayCompleted]: "延迟完成,耗时 {{delay}}ms",
11
+ [FETCHER_KEYS.usingProxy]: "使用代理: {{proxy}}",
12
+ [FETCHER_KEYS.usingSpecifiedProxy]: "使用指定代理: {{proxy}}",
13
+ [FETCHER_KEYS.attemptingToUseSystemProxy]: "尝试使用系统代理",
14
+ [FETCHER_KEYS.notUsingProxy]: "不使用任何代理",
15
+ [FETCHER_KEYS.finalProxyUsed]: "最终使用的代理: {{proxy}}",
16
+ [FETCHER_KEYS.noProxy]: "不使用代理",
17
+ [FETCHER_KEYS.fetchingUrl]: "获取URL: {{url}} (重定向: {{redirect}})",
18
+ [FETCHER_KEYS.usingUserAgent]: "使用User-Agent: {{userAgent}}",
19
+ [FETCHER_KEYS.usingHttpsProxy]: "使用HTTPS代理",
20
+ [FETCHER_KEYS.usingHttpProxy]: "使用HTTP代理",
21
+ [FETCHER_KEYS.requestOptions]: "请求选项: {{options}}",
22
+ [FETCHER_KEYS.startingFetch]: "开始获取",
23
+ [FETCHER_KEYS.fetchCompleted]: "获取完成,耗时 {{duration}}ms",
24
+ [FETCHER_KEYS.responseStatus]: "响应状态: {{status}} {{statusText}}",
25
+ [FETCHER_KEYS.redirectingTo]: "重定向到: {{location}}",
26
+ [FETCHER_KEYS.constructedFullRedirectUrl]: "构建完整重定向URL: {{redirectUrl}}",
27
+ [FETCHER_KEYS.requestSuccess]: "请求成功",
28
+ [FETCHER_KEYS.errorResponse]: "错误响应: {{status}} {{statusText}}",
29
+ [FETCHER_KEYS.errorResponseBody]: "错误响应内容(前200字符): {{body}}",
30
+ [FETCHER_KEYS.errorReadingBody]: "读取响应内容时出错: {{error}}",
31
+ [FETCHER_KEYS.fetchError]: "获取错误: {{error}}",
32
+ [FETCHER_KEYS.requestAborted]: "请求中止,耗时 {{duration}}ms",
33
+ [FETCHER_KEYS.networkError]: "网络错误 ({{code}}),可能需要使用浏览器模式重试",
34
+ [FETCHER_KEYS.requestTimeout]: "请求超时,耗时 {{duration}}ms",
35
+ [FETCHER_KEYS.fetchFailed]: "获取失败: {{error}}",
36
+ [FETCHER_KEYS.tooManyRedirects]: "重定向次数过多 ({{redirects}})",
37
+ [FETCHER_KEYS.startingHtmlFetch]: "开始HTML获取",
38
+ [FETCHER_KEYS.readingText]: "获得响应,正在读取文本",
39
+ [FETCHER_KEYS.htmlContentLength]: "HTML内容长度: {{length}} 字节",
40
+ [FETCHER_KEYS.startingJsonFetch]: "开始JSON获取",
41
+ [FETCHER_KEYS.parsingJson]: "解析JSON",
42
+ [FETCHER_KEYS.jsonParsed]: "JSON解析成功",
43
+ [FETCHER_KEYS.jsonParseError]: "JSON解析错误: {{error}}。文本预览: \"{{textPreview}}\", 长度: {{textLength}} 字节",
44
+ [FETCHER_KEYS.startingTxtFetch]: "开始文本获取",
45
+ [FETCHER_KEYS.textContentLength]: "文本内容长度: {{length}} 字节",
46
+ [FETCHER_KEYS.startingMarkdownFetch]: "开始Markdown获取",
47
+ [FETCHER_KEYS.creatingTurndown]: "创建Turndown服务",
48
+ [FETCHER_KEYS.convertingToMarkdown]: "转换为Markdown",
49
+ [FETCHER_KEYS.markdownContentLength]: "Markdown内容长度: {{length}} 字节",
50
+ [FETCHER_KEYS.checkingProxyEnv]: "检查代理环境变量",
51
+ [FETCHER_KEYS.envVarValue]: "环境变量 {{envVar}} 的值: {{value}}",
52
+ [FETCHER_KEYS.foundSystemProxy]: "找到系统代理: {{proxy}}",
53
+ [FETCHER_KEYS.systemCommandProxySettings]: "系统命令代理设置: {{output}}",
54
+ [FETCHER_KEYS.foundProxyFromCommand]: "从命令中找到代理: {{proxy}}",
55
+ [FETCHER_KEYS.errorGettingProxyFromCommand]: "从命令获取代理时出错: {{error}}",
56
+ [FETCHER_KEYS.checkingSystemEnvVars]: "在平台 {{platform}} 上检查系统环境变量以获取代理设置",
57
+ [FETCHER_KEYS.windowsEnvVars]: "Windows环境变量输出: {{output}}",
58
+ [FETCHER_KEYS.foundWindowsEnvProxy]: "找到Windows环境代理: {{proxy}}",
59
+ [FETCHER_KEYS.errorGettingWindowsEnvVars]: "获取Windows环境变量时出错: {{error}}",
60
+ [FETCHER_KEYS.unixEnvVars]: "Unix环境变量输出: {{output}}",
61
+ [FETCHER_KEYS.foundUnixEnvProxy]: "找到Unix环境代理: {{proxy}}",
62
+ [FETCHER_KEYS.errorGettingUnixEnvVars]: "获取Unix环境变量时出错: {{error}}",
63
+ [FETCHER_KEYS.errorGettingSystemEnvVars]: "获取系统环境变量时出错: {{error}}",
64
+ [FETCHER_KEYS.noSystemProxyFound]: "未找到系统代理",
65
+ [FETCHER_KEYS.notSet]: "未设置",
66
+ [FETCHER_KEYS.debug]: "{{message}}",
67
+ [FETCHER_KEYS.none]: "无"
67
68
  };
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fetcher.js","sourceRoot":"","sources":["../../../../../../src/lib/i18n/locales/zh/fetcher.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,qCAAqC;AACrC,MAAM,CAAC,MAAM,OAAO,GAAG;IACrB,WAAW,EAAE,QAAQ;IACrB,cAAc,EAAE,qBAAqB;IACrC,UAAU,EAAE,iBAAiB;IAC7B,mBAAmB,EAAE,mBAAmB;IACxC,0BAA0B,EAAE,UAAU;IACtC,aAAa,EAAE,SAAS;IACxB,cAAc,EAAE,oBAAoB;IACpC,OAAO,EAAE,OAAO;IAChB,WAAW,EAAE,oCAAoC;IACjD,cAAc,EAAE,6BAA6B;IAC7C,eAAe,EAAE,WAAW;IAC5B,cAAc,EAAE,UAAU;IAC1B,cAAc,EAAE,mBAAmB;IACnC,aAAa,EAAE,MAAM;IACrB,cAAc,EAAE,wBAAwB;IACxC,cAAc,EAAE,iCAAiC;IACjD,aAAa,EAAE,oBAAoB;IACnC,0BAA0B,EAAE,6BAA6B;IACzD,cAAc,EAAE,MAAM;IACtB,aAAa,EAAE,iCAAiC;IAChD,iBAAiB,EAAE,0BAA0B;IAC7C,gBAAgB,EAAE,sBAAsB;IACxC,UAAU,EAAE,iBAAiB;IAC7B,cAAc,EAAE,wBAAwB;IACxC,YAAY,EAAE,+BAA+B;IAC7C,cAAc,EAAE,wBAAwB;IACxC,WAAW,EAAE,iBAAiB;IAC9B,gBAAgB,EAAE,yBAAyB;IAC3C,iBAAiB,EAAE,UAAU;IAC7B,WAAW,EAAE,aAAa;IAC1B,iBAAiB,EAAE,yBAAyB;IAC5C,iBAAiB,EAAE,UAAU;IAC7B,WAAW,EAAE,QAAQ;IACrB,UAAU,EAAE,UAAU;IACtB,cAAc,EAAE,sEAAsE;IACtF,gBAAgB,EAAE,QAAQ;IAC1B,iBAAiB,EAAE,uBAAuB;IAC1C,qBAAqB,EAAE,cAAc;IACrC,gBAAgB,EAAE,cAAc;IAChC,oBAAoB,EAAE,aAAa;IACnC,qBAAqB,EAAE,6BAA6B;IACpD,gBAAgB,EAAE,UAAU;IAC5B,WAAW,EAAE,+BAA+B;IAC5C,gBAAgB,EAAE,mBAAmB;IACrC,0BAA0B,EAAE,sBAAsB;IAClD,qBAAqB,EAAE,qBAAqB;IAC5C,4BAA4B,EAAE,uBAAuB;IACrD,qBAAqB,EAAE,mCAAmC;IAC1D,cAAc,EAAE,2BAA2B;IAC3C,oBAAoB,EAAE,0BAA0B;IAChD,0BAA0B,EAAE,6BAA6B;IACzD,WAAW,EAAE,wBAAwB;IACrC,iBAAiB,EAAE,uBAAuB;IAC1C,uBAAuB,EAAE,0BAA0B;IACnD,yBAAyB,EAAE,wBAAwB;IACnD,kBAAkB,EAAE,SAAS;IAC7B,MAAM,EAAE,KAAK;IACb,KAAK,EAAE,aAAa;IACpB,IAAI,EAAE,GAAG;CACV,CAAC"}