xhs-mcp 0.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.en.md +122 -0
- package/README.md +180 -0
- package/dist/cli/xhs-cli.d.ts +6 -0
- package/dist/cli/xhs-cli.d.ts.map +1 -0
- package/dist/cli/xhs-cli.js +300 -0
- package/dist/cli/xhs-cli.js.map +1 -0
- package/dist/index.d.ts +6 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +58 -0
- package/dist/index.js.map +1 -0
- package/dist/lib/auth/auth.service.d.ts +12 -0
- package/dist/lib/auth/auth.service.d.ts.map +1 -0
- package/dist/lib/auth/auth.service.js +138 -0
- package/dist/lib/auth/auth.service.js.map +1 -0
- package/dist/lib/auth/auth.types.d.ts +17 -0
- package/dist/lib/auth/auth.types.d.ts.map +1 -0
- package/dist/lib/auth/auth.types.js +5 -0
- package/dist/lib/auth/auth.types.js.map +1 -0
- package/dist/lib/auth/index.d.ts +6 -0
- package/dist/lib/auth/index.d.ts.map +1 -0
- package/dist/lib/auth/index.js +6 -0
- package/dist/lib/auth/index.js.map +1 -0
- package/dist/lib/browser/browser.manager.d.ts +22 -0
- package/dist/lib/browser/browser.manager.d.ts.map +1 -0
- package/dist/lib/browser/browser.manager.js +196 -0
- package/dist/lib/browser/browser.manager.js.map +1 -0
- package/dist/lib/browser/browser.types.d.ts +23 -0
- package/dist/lib/browser/browser.types.d.ts.map +1 -0
- package/dist/lib/browser/browser.types.js +5 -0
- package/dist/lib/browser/browser.types.js.map +1 -0
- package/dist/lib/browser/index.d.ts +6 -0
- package/dist/lib/browser/index.d.ts.map +1 -0
- package/dist/lib/browser/index.js +6 -0
- package/dist/lib/browser/index.js.map +1 -0
- package/dist/lib/feeds/feed.service.d.ts +13 -0
- package/dist/lib/feeds/feed.service.d.ts.map +1 -0
- package/dist/lib/feeds/feed.service.js +224 -0
- package/dist/lib/feeds/feed.service.js.map +1 -0
- package/dist/lib/feeds/feed.types.d.ts +26 -0
- package/dist/lib/feeds/feed.types.d.ts.map +1 -0
- package/dist/lib/feeds/feed.types.js +5 -0
- package/dist/lib/feeds/feed.types.js.map +1 -0
- package/dist/lib/feeds/index.d.ts +6 -0
- package/dist/lib/feeds/index.d.ts.map +1 -0
- package/dist/lib/feeds/index.js +6 -0
- package/dist/lib/feeds/index.js.map +1 -0
- package/dist/lib/index.d.ts +9 -0
- package/dist/lib/index.d.ts.map +1 -0
- package/dist/lib/index.js +11 -0
- package/dist/lib/index.js.map +1 -0
- package/dist/lib/publishing/index.d.ts +6 -0
- package/dist/lib/publishing/index.d.ts.map +1 -0
- package/dist/lib/publishing/index.js +6 -0
- package/dist/lib/publishing/index.js.map +1 -0
- package/dist/lib/publishing/publish.service.d.ts +39 -0
- package/dist/lib/publishing/publish.service.d.ts.map +1 -0
- package/dist/lib/publishing/publish.service.js +942 -0
- package/dist/lib/publishing/publish.service.js.map +1 -0
- package/dist/lib/publishing/publish.types.d.ts +37 -0
- package/dist/lib/publishing/publish.types.d.ts.map +1 -0
- package/dist/lib/publishing/publish.types.js +5 -0
- package/dist/lib/publishing/publish.types.js.map +1 -0
- package/dist/lib/shared/base.service.d.ts +22 -0
- package/dist/lib/shared/base.service.d.ts.map +1 -0
- package/dist/lib/shared/base.service.js +28 -0
- package/dist/lib/shared/base.service.js.map +1 -0
- package/dist/lib/shared/config.d.ts +17 -0
- package/dist/lib/shared/config.d.ts.map +1 -0
- package/dist/lib/shared/config.js +133 -0
- package/dist/lib/shared/config.js.map +1 -0
- package/dist/lib/shared/cookies.d.ts +10 -0
- package/dist/lib/shared/cookies.d.ts.map +1 -0
- package/dist/lib/shared/cookies.js +79 -0
- package/dist/lib/shared/cookies.js.map +1 -0
- package/dist/lib/shared/errors.d.ts +51 -0
- package/dist/lib/shared/errors.d.ts.map +1 -0
- package/dist/lib/shared/errors.js +93 -0
- package/dist/lib/shared/errors.js.map +1 -0
- package/dist/lib/shared/index.d.ts +11 -0
- package/dist/lib/shared/index.d.ts.map +1 -0
- package/dist/lib/shared/index.js +18 -0
- package/dist/lib/shared/index.js.map +1 -0
- package/dist/lib/shared/logger.d.ts +16 -0
- package/dist/lib/shared/logger.d.ts.map +1 -0
- package/dist/lib/shared/logger.js +41 -0
- package/dist/lib/shared/logger.js.map +1 -0
- package/dist/lib/shared/types.d.ts +175 -0
- package/dist/lib/shared/types.d.ts.map +1 -0
- package/dist/lib/shared/types.js +6 -0
- package/dist/lib/shared/types.js.map +1 -0
- package/dist/lib/shared/utils.d.ts +78 -0
- package/dist/lib/shared/utils.d.ts.map +1 -0
- package/dist/lib/shared/utils.js +137 -0
- package/dist/lib/shared/utils.js.map +1 -0
- package/dist/server/handlers/index.d.ts +6 -0
- package/dist/server/handlers/index.d.ts.map +1 -0
- package/dist/server/handlers/index.js +6 -0
- package/dist/server/handlers/index.js.map +1 -0
- package/dist/server/handlers/resource.handlers.d.ts +18 -0
- package/dist/server/handlers/resource.handlers.d.ts.map +1 -0
- package/dist/server/handlers/resource.handlers.js +113 -0
- package/dist/server/handlers/resource.handlers.js.map +1 -0
- package/dist/server/handlers/tool.handlers.d.ts +64 -0
- package/dist/server/handlers/tool.handlers.d.ts.map +1 -0
- package/dist/server/handlers/tool.handlers.js +123 -0
- package/dist/server/handlers/tool.handlers.js.map +1 -0
- package/dist/server/http.server.d.ts +21 -0
- package/dist/server/http.server.d.ts.map +1 -0
- package/dist/server/http.server.js +310 -0
- package/dist/server/http.server.js.map +1 -0
- package/dist/server/index.d.ts +7 -0
- package/dist/server/index.d.ts.map +1 -0
- package/dist/server/index.js +7 -0
- package/dist/server/index.js.map +1 -0
- package/dist/server/mcp.server.d.ts +15 -0
- package/dist/server/mcp.server.d.ts.map +1 -0
- package/dist/server/mcp.server.js +61 -0
- package/dist/server/mcp.server.js.map +1 -0
- package/dist/server/schemas/tool.schemas.d.ts +20 -0
- package/dist/server/schemas/tool.schemas.d.ts.map +1 -0
- package/dist/server/schemas/tool.schemas.js +178 -0
- package/dist/server/schemas/tool.schemas.js.map +1 -0
- package/dist/utils/index.d.ts +5 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +5 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/xhs.utils.d.ts +14 -0
- package/dist/utils/xhs.utils.d.ts.map +1 -0
- package/dist/utils/xhs.utils.js +84 -0
- package/dist/utils/xhs.utils.js.map +1 -0
- package/docs/HTTP_TRANSPORTS.md +269 -0
- package/package.json +59 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"publish.service.js","sourceRoot":"","sources":["../../../src/lib/publishing/publish.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Publishing-related types for XHS MCP Server
|
|
3
|
+
*/
|
|
4
|
+
export interface PublishServiceConfig {
|
|
5
|
+
config: any;
|
|
6
|
+
}
|
|
7
|
+
export interface PublishOptions {
|
|
8
|
+
title: string;
|
|
9
|
+
note: string;
|
|
10
|
+
imagePaths: string[];
|
|
11
|
+
tags?: string;
|
|
12
|
+
browserPath?: string;
|
|
13
|
+
}
|
|
14
|
+
export interface ImageValidationResult {
|
|
15
|
+
valid: boolean;
|
|
16
|
+
resolvedPath: string;
|
|
17
|
+
originalPath: string;
|
|
18
|
+
error?: string;
|
|
19
|
+
}
|
|
20
|
+
export interface UploadTabInfo {
|
|
21
|
+
text: string;
|
|
22
|
+
selector: string;
|
|
23
|
+
}
|
|
24
|
+
export interface VideoPublishOptions {
|
|
25
|
+
title: string;
|
|
26
|
+
content: string;
|
|
27
|
+
videoPath: string;
|
|
28
|
+
tags?: string;
|
|
29
|
+
browserPath?: string;
|
|
30
|
+
}
|
|
31
|
+
export interface VideoValidationResult {
|
|
32
|
+
valid: boolean;
|
|
33
|
+
resolvedPath: string;
|
|
34
|
+
originalPath: string;
|
|
35
|
+
error?: string;
|
|
36
|
+
}
|
|
37
|
+
//# sourceMappingURL=publish.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"publish.types.d.ts","sourceRoot":"","sources":["../../../src/lib/publishing/publish.types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,GAAG,CAAC;CACb;AAED,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,OAAO,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,OAAO,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"publish.types.js","sourceRoot":"","sources":["../../../src/lib/publishing/publish.types.ts"],"names":[],"mappings":"AAAA;;GAEG"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Base service class for XHS MCP Server services
|
|
3
|
+
*/
|
|
4
|
+
import { Config } from './types.js';
|
|
5
|
+
import { BrowserManager } from '../browser/browser.manager.js';
|
|
6
|
+
/**
|
|
7
|
+
* Base service class that provides common functionality for all services
|
|
8
|
+
*/
|
|
9
|
+
export declare abstract class BaseService {
|
|
10
|
+
protected readonly config: Config;
|
|
11
|
+
protected readonly browserManager: BrowserManager;
|
|
12
|
+
constructor(config: Config);
|
|
13
|
+
/**
|
|
14
|
+
* Get the browser manager instance
|
|
15
|
+
*/
|
|
16
|
+
protected getBrowserManager(): BrowserManager;
|
|
17
|
+
/**
|
|
18
|
+
* Get the configuration
|
|
19
|
+
*/
|
|
20
|
+
protected getConfig(): Config;
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=base.service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"base.service.d.ts","sourceRoot":"","sources":["../../../src/lib/shared/base.service.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAE/D;;GAEG;AACH,8BAAsB,WAAW;IAC/B,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAClC,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC;gBAEtC,MAAM,EAAE,MAAM;IAK1B;;OAEG;IACH,SAAS,CAAC,iBAAiB,IAAI,cAAc;IAI7C;;OAEG;IACH,SAAS,CAAC,SAAS,IAAI,MAAM;CAG9B"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Base service class for XHS MCP Server services
|
|
3
|
+
*/
|
|
4
|
+
import { BrowserManager } from '../browser/browser.manager.js';
|
|
5
|
+
/**
|
|
6
|
+
* Base service class that provides common functionality for all services
|
|
7
|
+
*/
|
|
8
|
+
export class BaseService {
|
|
9
|
+
config;
|
|
10
|
+
browserManager;
|
|
11
|
+
constructor(config) {
|
|
12
|
+
this.config = config;
|
|
13
|
+
this.browserManager = new BrowserManager(config);
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Get the browser manager instance
|
|
17
|
+
*/
|
|
18
|
+
getBrowserManager() {
|
|
19
|
+
return this.browserManager;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Get the configuration
|
|
23
|
+
*/
|
|
24
|
+
getConfig() {
|
|
25
|
+
return this.config;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=base.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"base.service.js","sourceRoot":"","sources":["../../../src/lib/shared/base.service.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAE/D;;GAEG;AACH,MAAM,OAAgB,WAAW;IACZ,MAAM,CAAS;IACf,cAAc,CAAiB;IAElD,YAAY,MAAc;QACxB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,cAAc,GAAG,IAAI,cAAc,CAAC,MAAM,CAAC,CAAC;IACnD,CAAC;IAED;;OAEG;IACO,iBAAiB;QACzB,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAED;;OAEG;IACO,SAAS;QACjB,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;CACF"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Configuration management for XHS MCP Server
|
|
3
|
+
*/
|
|
4
|
+
import { Config } from './types.js';
|
|
5
|
+
export declare class ConfigManager {
|
|
6
|
+
private static instance;
|
|
7
|
+
private config;
|
|
8
|
+
private constructor();
|
|
9
|
+
static getInstance(): ConfigManager;
|
|
10
|
+
getConfig(): Config;
|
|
11
|
+
updateConfig(updates: Partial<Config>): void;
|
|
12
|
+
private createDefaultConfig;
|
|
13
|
+
toDict(): Record<string, any>;
|
|
14
|
+
}
|
|
15
|
+
export declare function getConfig(): Config;
|
|
16
|
+
export declare function setConfig(config: Config): void;
|
|
17
|
+
//# sourceMappingURL=config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/lib/shared/config.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,MAAM,EAAsE,MAAM,YAAY,CAAC;AAMxG,qBAAa,aAAa;IACxB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAgB;IACvC,OAAO,CAAC,MAAM,CAAS;IAEvB,OAAO;WAIO,WAAW,IAAI,aAAa;IAOnC,SAAS,IAAI,MAAM;IAInB,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,GAAG,IAAI;IAInD,OAAO,CAAC,mBAAmB;IA2EpB,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;CA4BrC;AAKD,wBAAgB,SAAS,IAAI,MAAM,CAGlC;AAED,wBAAgB,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAE9C"}
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Configuration management for XHS MCP Server
|
|
3
|
+
*/
|
|
4
|
+
import { homedir } from 'os';
|
|
5
|
+
import { join, dirname } from 'path';
|
|
6
|
+
import { readFileSync } from 'fs';
|
|
7
|
+
import { fileURLToPath } from 'url';
|
|
8
|
+
export class ConfigManager {
|
|
9
|
+
static instance;
|
|
10
|
+
config;
|
|
11
|
+
constructor() {
|
|
12
|
+
this.config = this.createDefaultConfig();
|
|
13
|
+
}
|
|
14
|
+
static getInstance() {
|
|
15
|
+
if (!ConfigManager.instance) {
|
|
16
|
+
ConfigManager.instance = new ConfigManager();
|
|
17
|
+
}
|
|
18
|
+
return ConfigManager.instance;
|
|
19
|
+
}
|
|
20
|
+
getConfig() {
|
|
21
|
+
return this.config;
|
|
22
|
+
}
|
|
23
|
+
updateConfig(updates) {
|
|
24
|
+
this.config = { ...this.config, ...updates };
|
|
25
|
+
}
|
|
26
|
+
createDefaultConfig() {
|
|
27
|
+
const appDataDir = join(homedir(), '.xhs-mcp');
|
|
28
|
+
const cookiesFile = join(appDataDir, 'cookies.json');
|
|
29
|
+
// Resolve package version from package.json (fallback to env or default)
|
|
30
|
+
function resolvePackageVersion() {
|
|
31
|
+
try {
|
|
32
|
+
const hereFilePath = fileURLToPath(import.meta.url);
|
|
33
|
+
const hereDir = dirname(hereFilePath);
|
|
34
|
+
// From src/lib/shared/config.ts → dist/lib/shared/config.js at runtime
|
|
35
|
+
// package.json resides at project root relative to compiled file: ../../../package.json
|
|
36
|
+
const pkgPath = join(hereDir, '../../../package.json');
|
|
37
|
+
const pkgRaw = readFileSync(pkgPath, 'utf-8');
|
|
38
|
+
const pkg = JSON.parse(pkgRaw);
|
|
39
|
+
if (pkg?.version && typeof pkg.version === 'string')
|
|
40
|
+
return pkg.version;
|
|
41
|
+
}
|
|
42
|
+
catch {
|
|
43
|
+
// ignore and fallback
|
|
44
|
+
}
|
|
45
|
+
return process.env.XHS_VERSION ?? '0.1.0';
|
|
46
|
+
}
|
|
47
|
+
const headlessEnv = process.env.XHS_HEADLESS;
|
|
48
|
+
const browserConfig = {
|
|
49
|
+
defaultTimeout: parseInt(process.env.XHS_BROWSER_TIMEOUT ?? '30000'),
|
|
50
|
+
loginTimeout: parseInt(process.env.XHS_LOGIN_TIMEOUT ?? '300'),
|
|
51
|
+
pageLoadTimeout: 30000,
|
|
52
|
+
navigationTimeout: 30000,
|
|
53
|
+
slowmo: 0,
|
|
54
|
+
headlessDefault: headlessEnv == null ? true : headlessEnv.toLowerCase() === 'true',
|
|
55
|
+
};
|
|
56
|
+
const serverConfig = {
|
|
57
|
+
name: process.env.XHS_SERVER_NAME ?? 'xhs-mcp',
|
|
58
|
+
version: resolvePackageVersion(),
|
|
59
|
+
description: 'XiaoHongShu MCP Server - TypeScript Version',
|
|
60
|
+
defaultHost: process.env.XHS_HOST ?? '127.0.0.1',
|
|
61
|
+
defaultPort: parseInt(process.env.XHS_PORT ?? '8000'),
|
|
62
|
+
defaultTransport: 'stdio',
|
|
63
|
+
};
|
|
64
|
+
const logFileEnv = process.env.XHS_LOG_FILE;
|
|
65
|
+
const logFileEnabled = logFileEnv == null ? false : logFileEnv.toLowerCase() === 'true';
|
|
66
|
+
const loggingConfig = {
|
|
67
|
+
level: process.env.XHS_LOG_LEVEL ?? 'INFO',
|
|
68
|
+
format: '%(asctime)s - %(name)s - %(levelname)s - %(message)s',
|
|
69
|
+
fileEnabled: logFileEnabled,
|
|
70
|
+
filePath: logFileEnabled ? join(appDataDir, 'xhs-mcp.log') : undefined,
|
|
71
|
+
};
|
|
72
|
+
const pathsConfig = {
|
|
73
|
+
appDataDir,
|
|
74
|
+
cookiesFile,
|
|
75
|
+
};
|
|
76
|
+
const xhsConfig = {
|
|
77
|
+
homeUrl: 'https://www.xiaohongshu.com',
|
|
78
|
+
exploreUrl: 'https://www.xiaohongshu.com/explore',
|
|
79
|
+
searchUrl: 'https://www.xiaohongshu.com/search_result',
|
|
80
|
+
creatorPublishUrl: 'https://creator.xiaohongshu.com/publish/publish?source=official',
|
|
81
|
+
creatorVideoPublishUrl: 'https://creator.xiaohongshu.com/publish/publish?source=official&from=tab_switch&target=video',
|
|
82
|
+
loginOkSelector: '.main-container .user .link-wrapper .channel',
|
|
83
|
+
requestDelay: 1.0,
|
|
84
|
+
maxRetries: 3,
|
|
85
|
+
retryDelay: 2.0,
|
|
86
|
+
};
|
|
87
|
+
return {
|
|
88
|
+
browser: browserConfig,
|
|
89
|
+
server: serverConfig,
|
|
90
|
+
logging: loggingConfig,
|
|
91
|
+
paths: pathsConfig,
|
|
92
|
+
xhs: xhsConfig,
|
|
93
|
+
};
|
|
94
|
+
}
|
|
95
|
+
toDict() {
|
|
96
|
+
return {
|
|
97
|
+
browser: {
|
|
98
|
+
defaultTimeout: this.config.browser.defaultTimeout,
|
|
99
|
+
loginTimeout: this.config.browser.loginTimeout,
|
|
100
|
+
headlessDefault: this.config.browser.headlessDefault,
|
|
101
|
+
},
|
|
102
|
+
server: {
|
|
103
|
+
name: this.config.server.name,
|
|
104
|
+
version: this.config.server.version,
|
|
105
|
+
defaultHost: this.config.server.defaultHost,
|
|
106
|
+
defaultPort: this.config.server.defaultPort,
|
|
107
|
+
},
|
|
108
|
+
logging: {
|
|
109
|
+
level: this.config.logging.level,
|
|
110
|
+
fileEnabled: this.config.logging.fileEnabled,
|
|
111
|
+
},
|
|
112
|
+
paths: {
|
|
113
|
+
appDataDir: this.config.paths.appDataDir,
|
|
114
|
+
cookiesFile: this.config.paths.cookiesFile,
|
|
115
|
+
},
|
|
116
|
+
xhs: {
|
|
117
|
+
homeUrl: this.config.xhs.homeUrl,
|
|
118
|
+
exploreUrl: this.config.xhs.exploreUrl,
|
|
119
|
+
maxRetries: this.config.xhs.maxRetries,
|
|
120
|
+
},
|
|
121
|
+
};
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
// Global configuration instance
|
|
125
|
+
let globalConfig = null;
|
|
126
|
+
export function getConfig() {
|
|
127
|
+
globalConfig ??= ConfigManager.getInstance().getConfig();
|
|
128
|
+
return globalConfig;
|
|
129
|
+
}
|
|
130
|
+
export function setConfig(config) {
|
|
131
|
+
globalConfig = config;
|
|
132
|
+
}
|
|
133
|
+
//# sourceMappingURL=config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/lib/shared/config.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC;AAC7B,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AACrC,OAAO,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AAEpC,MAAM,OAAO,aAAa;IAChB,MAAM,CAAC,QAAQ,CAAgB;IAC/B,MAAM,CAAS;IAEvB;QACE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAC;IAC3C,CAAC;IAEM,MAAM,CAAC,WAAW;QACvB,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC;YAC5B,aAAa,CAAC,QAAQ,GAAG,IAAI,aAAa,EAAE,CAAC;QAC/C,CAAC;QACD,OAAO,aAAa,CAAC,QAAQ,CAAC;IAChC,CAAC;IAEM,SAAS;QACd,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAEM,YAAY,CAAC,OAAwB;QAC1C,IAAI,CAAC,MAAM,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,OAAO,EAAE,CAAC;IAC/C,CAAC;IAEO,mBAAmB;QACzB,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,UAAU,CAAC,CAAC;QAC/C,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;QAErD,yEAAyE;QACzE,SAAS,qBAAqB;YAC5B,IAAI,CAAC;gBACH,MAAM,YAAY,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACpD,MAAM,OAAO,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;gBACtC,uEAAuE;gBACvE,wFAAwF;gBACxF,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE,uBAAuB,CAAC,CAAC;gBACvD,MAAM,MAAM,GAAG,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;gBAC9C,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAyB,CAAC;gBACvD,IAAI,GAAG,EAAE,OAAO,IAAI,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ;oBAAE,OAAO,GAAG,CAAC,OAAO,CAAC;YAC1E,CAAC;YAAC,MAAM,CAAC;gBACP,sBAAsB;YACxB,CAAC;YACD,OAAO,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,OAAO,CAAC;QAC5C,CAAC;QAED,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC;QAC7C,MAAM,aAAa,GAAkB;YACnC,cAAc,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,OAAO,CAAC;YACpE,YAAY,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,KAAK,CAAC;YAC9D,eAAe,EAAE,KAAK;YACtB,iBAAiB,EAAE,KAAK;YACxB,MAAM,EAAE,CAAC;YACT,eAAe,EAAE,WAAW,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,WAAW,EAAE,KAAK,MAAM;SACnF,CAAC;QAEF,MAAM,YAAY,GAAiB;YACjC,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,SAAS;YAC9C,OAAO,EAAE,qBAAqB,EAAE;YAChC,WAAW,EAAE,6CAA6C;YAC1D,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,WAAW;YAChD,WAAW,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,MAAM,CAAC;YACrD,gBAAgB,EAAE,OAAO;SAC1B,CAAC;QAEF,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC;QAC5C,MAAM,cAAc,GAAG,UAAU,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,WAAW,EAAE,KAAK,MAAM,CAAC;QACxF,MAAM,aAAa,GAAkB;YACnC,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,MAAM;YAC1C,MAAM,EAAE,sDAAsD;YAC9D,WAAW,EAAE,cAAc;YAC3B,QAAQ,EAAE,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,SAAS;SACvE,CAAC;QAEF,MAAM,WAAW,GAAgB;YAC/B,UAAU;YACV,WAAW;SACZ,CAAC;QAEF,MAAM,SAAS,GAAc;YAC3B,OAAO,EAAE,6BAA6B;YACtC,UAAU,EAAE,qCAAqC;YACjD,SAAS,EAAE,2CAA2C;YACtD,iBAAiB,EAAE,iEAAiE;YACpF,sBAAsB,EAAE,8FAA8F;YACtH,eAAe,EAAE,8CAA8C;YAC/D,YAAY,EAAE,GAAG;YACjB,UAAU,EAAE,CAAC;YACb,UAAU,EAAE,GAAG;SAChB,CAAC;QAEF,OAAO;YACL,OAAO,EAAE,aAAa;YACtB,MAAM,EAAE,YAAY;YACpB,OAAO,EAAE,aAAa;YACtB,KAAK,EAAE,WAAW;YAClB,GAAG,EAAE,SAAS;SACf,CAAC;IACJ,CAAC;IAEM,MAAM;QACX,OAAO;YACL,OAAO,EAAE;gBACP,cAAc,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,cAAc;gBAClD,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY;gBAC9C,eAAe,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,eAAe;aACrD;YACD,MAAM,EAAE;gBACN,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI;gBAC7B,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO;gBACnC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW;gBAC3C,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW;aAC5C;YACD,OAAO,EAAE;gBACP,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK;gBAChC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW;aAC7C;YACD,KAAK,EAAE;gBACL,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU;gBACxC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW;aAC3C;YACD,GAAG,EAAE;gBACH,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO;gBAChC,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU;gBACtC,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU;aACvC;SACF,CAAC;IACJ,CAAC;CACF;AAED,gCAAgC;AAChC,IAAI,YAAY,GAAkB,IAAI,CAAC;AAEvC,MAAM,UAAU,SAAS;IACvB,YAAY,KAAK,aAAa,CAAC,WAAW,EAAE,CAAC,SAAS,EAAE,CAAC;IACzD,OAAO,YAAY,CAAC;AACtB,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,MAAc;IACtC,YAAY,GAAG,MAAM,CAAC;AACxB,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Cookie management for XHS MCP Server
|
|
3
|
+
*/
|
|
4
|
+
import { Cookie, CookiesInfo } from './types.js';
|
|
5
|
+
export declare function getCookiesFilePath(): string;
|
|
6
|
+
export declare function loadCookies(): Cookie[] | null;
|
|
7
|
+
export declare function saveCookies(cookies: Cookie[]): void;
|
|
8
|
+
export declare function deleteCookiesFile(): boolean;
|
|
9
|
+
export declare function getCookiesInfo(): CookiesInfo;
|
|
10
|
+
//# sourceMappingURL=cookies.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cookies.d.ts","sourceRoot":"","sources":["../../../src/lib/shared/cookies.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAOjD,wBAAgB,kBAAkB,IAAI,MAAM,CAE3C;AAED,wBAAgB,WAAW,IAAI,MAAM,EAAE,GAAG,IAAI,CAmB7C;AAED,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,CAoBnD;AAED,wBAAgB,iBAAiB,IAAI,OAAO,CAc3C;AAED,wBAAgB,cAAc,IAAI,WAAW,CAgB5C"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Cookie management for XHS MCP Server
|
|
3
|
+
*/
|
|
4
|
+
import { XHSError } from './errors.js';
|
|
5
|
+
import { getConfig } from './config.js';
|
|
6
|
+
import { readFileSync, writeFileSync, existsSync, unlinkSync, statSync, mkdirSync } from 'fs';
|
|
7
|
+
import { dirname } from 'path';
|
|
8
|
+
import { logger } from './logger.js';
|
|
9
|
+
export function getCookiesFilePath() {
|
|
10
|
+
return getConfig().paths.cookiesFile;
|
|
11
|
+
}
|
|
12
|
+
export function loadCookies() {
|
|
13
|
+
const path = getCookiesFilePath();
|
|
14
|
+
if (!existsSync(path)) {
|
|
15
|
+
return null;
|
|
16
|
+
}
|
|
17
|
+
try {
|
|
18
|
+
const content = readFileSync(path, 'utf-8');
|
|
19
|
+
const cookies = JSON.parse(content);
|
|
20
|
+
return cookies;
|
|
21
|
+
}
|
|
22
|
+
catch (error) {
|
|
23
|
+
if (error instanceof SyntaxError) {
|
|
24
|
+
logger.error(`Invalid JSON in cookies file ${path}: ${error.message}`);
|
|
25
|
+
}
|
|
26
|
+
else {
|
|
27
|
+
logger.error(`Failed to read cookies from ${path}: ${error}`);
|
|
28
|
+
}
|
|
29
|
+
return null;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
export function saveCookies(cookies) {
|
|
33
|
+
if (!cookies || cookies.length === 0) {
|
|
34
|
+
return;
|
|
35
|
+
}
|
|
36
|
+
const path = getCookiesFilePath();
|
|
37
|
+
try {
|
|
38
|
+
// Ensure parent directory exists
|
|
39
|
+
const dir = dirname(path);
|
|
40
|
+
mkdirSync(dir, { recursive: true });
|
|
41
|
+
// Save cookies with pretty formatting
|
|
42
|
+
const content = JSON.stringify(cookies, null, 2);
|
|
43
|
+
writeFileSync(path, content, 'utf-8');
|
|
44
|
+
}
|
|
45
|
+
catch (error) {
|
|
46
|
+
logger.error(`Failed to save cookies to ${path}: ${error}`);
|
|
47
|
+
throw new XHSError(`Failed to save cookies: ${error}`, 'CookieSaveError', {}, error);
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
export function deleteCookiesFile() {
|
|
51
|
+
const path = getCookiesFilePath();
|
|
52
|
+
if (!existsSync(path)) {
|
|
53
|
+
return true;
|
|
54
|
+
}
|
|
55
|
+
try {
|
|
56
|
+
unlinkSync(path);
|
|
57
|
+
return true;
|
|
58
|
+
}
|
|
59
|
+
catch (error) {
|
|
60
|
+
logger.error(`Failed to delete cookies file ${path}: ${error}`);
|
|
61
|
+
return false;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
export function getCookiesInfo() {
|
|
65
|
+
const path = getCookiesFilePath();
|
|
66
|
+
const cookies = loadCookies();
|
|
67
|
+
let lastModified;
|
|
68
|
+
if (existsSync(path)) {
|
|
69
|
+
const stats = statSync(path);
|
|
70
|
+
lastModified = stats.mtime.getTime();
|
|
71
|
+
}
|
|
72
|
+
return {
|
|
73
|
+
filePath: path,
|
|
74
|
+
fileExists: existsSync(path),
|
|
75
|
+
cookieCount: cookies ? cookies.length : 0,
|
|
76
|
+
lastModified,
|
|
77
|
+
};
|
|
78
|
+
}
|
|
79
|
+
//# sourceMappingURL=cookies.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cookies.js","sourceRoot":"","sources":["../../../src/lib/shared/cookies.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Error classes for XHS MCP Server
|
|
3
|
+
*/
|
|
4
|
+
import { XHSResponse, XHSErrorContext } from './types';
|
|
5
|
+
export declare class XHSError extends Error {
|
|
6
|
+
readonly errorCode: string;
|
|
7
|
+
readonly context: XHSErrorContext;
|
|
8
|
+
readonly originalError?: Error;
|
|
9
|
+
constructor(message: string, errorCode?: string, context?: XHSErrorContext, originalError?: Error);
|
|
10
|
+
toDict(): XHSResponse;
|
|
11
|
+
}
|
|
12
|
+
export declare class AuthenticationError extends XHSError {
|
|
13
|
+
constructor(message: string, context?: XHSErrorContext, originalError?: Error);
|
|
14
|
+
}
|
|
15
|
+
export declare class LoginTimeoutError extends AuthenticationError {
|
|
16
|
+
constructor(message: string, context?: XHSErrorContext, originalError?: Error);
|
|
17
|
+
}
|
|
18
|
+
export declare class LoginFailedError extends AuthenticationError {
|
|
19
|
+
constructor(message: string, context?: XHSErrorContext, originalError?: Error);
|
|
20
|
+
}
|
|
21
|
+
export declare class NotLoggedInError extends AuthenticationError {
|
|
22
|
+
constructor(message: string, context?: XHSErrorContext, originalError?: Error);
|
|
23
|
+
}
|
|
24
|
+
export declare class BrowserError extends XHSError {
|
|
25
|
+
constructor(message: string, context?: XHSErrorContext, originalError?: Error);
|
|
26
|
+
}
|
|
27
|
+
export declare class BrowserLaunchError extends BrowserError {
|
|
28
|
+
constructor(message: string, context?: XHSErrorContext, originalError?: Error);
|
|
29
|
+
}
|
|
30
|
+
export declare class BrowserNavigationError extends BrowserError {
|
|
31
|
+
constructor(message: string, context?: XHSErrorContext, originalError?: Error);
|
|
32
|
+
}
|
|
33
|
+
export declare class FeedError extends XHSError {
|
|
34
|
+
constructor(message: string, context?: XHSErrorContext, originalError?: Error);
|
|
35
|
+
}
|
|
36
|
+
export declare class FeedNotFoundError extends FeedError {
|
|
37
|
+
constructor(message: string, context?: XHSErrorContext, originalError?: Error);
|
|
38
|
+
}
|
|
39
|
+
export declare class FeedParsingError extends FeedError {
|
|
40
|
+
constructor(message: string, context?: XHSErrorContext, originalError?: Error);
|
|
41
|
+
}
|
|
42
|
+
export declare class PublishError extends XHSError {
|
|
43
|
+
constructor(message: string, context?: XHSErrorContext, originalError?: Error);
|
|
44
|
+
}
|
|
45
|
+
export declare class InvalidImageError extends PublishError {
|
|
46
|
+
constructor(message: string, context?: XHSErrorContext, originalError?: Error);
|
|
47
|
+
}
|
|
48
|
+
export declare class PublishFailedError extends PublishError {
|
|
49
|
+
constructor(message: string, context?: XHSErrorContext, originalError?: Error);
|
|
50
|
+
}
|
|
51
|
+
//# sourceMappingURL=errors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../src/lib/shared/errors.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAEvD,qBAAa,QAAS,SAAQ,KAAK;IACjC,SAAgB,SAAS,EAAE,MAAM,CAAC;IAClC,SAAgB,OAAO,EAAE,eAAe,CAAC;IACzC,SAAgB,aAAa,CAAC,EAAE,KAAK,CAAC;gBAGpC,OAAO,EAAE,MAAM,EACf,SAAS,CAAC,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE,eAAe,EACzB,aAAa,CAAC,EAAE,KAAK;IASvB,MAAM,IAAI,WAAW;CAYtB;AAED,qBAAa,mBAAoB,SAAQ,QAAQ;gBACnC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,EAAE,aAAa,CAAC,EAAE,KAAK;CAG9E;AAED,qBAAa,iBAAkB,SAAQ,mBAAmB;gBAC5C,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,EAAE,aAAa,CAAC,EAAE,KAAK;CAG9E;AAED,qBAAa,gBAAiB,SAAQ,mBAAmB;gBAC3C,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,EAAE,aAAa,CAAC,EAAE,KAAK;CAG9E;AAED,qBAAa,gBAAiB,SAAQ,mBAAmB;gBAC3C,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,EAAE,aAAa,CAAC,EAAE,KAAK;CAG9E;AAED,qBAAa,YAAa,SAAQ,QAAQ;gBAC5B,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,EAAE,aAAa,CAAC,EAAE,KAAK;CAG9E;AAED,qBAAa,kBAAmB,SAAQ,YAAY;gBACtC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,EAAE,aAAa,CAAC,EAAE,KAAK;CAG9E;AAED,qBAAa,sBAAuB,SAAQ,YAAY;gBAC1C,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,EAAE,aAAa,CAAC,EAAE,KAAK;CAG9E;AAED,qBAAa,SAAU,SAAQ,QAAQ;gBACzB,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,EAAE,aAAa,CAAC,EAAE,KAAK;CAG9E;AAED,qBAAa,iBAAkB,SAAQ,SAAS;gBAClC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,EAAE,aAAa,CAAC,EAAE,KAAK;CAG9E;AAED,qBAAa,gBAAiB,SAAQ,SAAS;gBACjC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,EAAE,aAAa,CAAC,EAAE,KAAK;CAG9E;AAED,qBAAa,YAAa,SAAQ,QAAQ;gBAC5B,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,EAAE,aAAa,CAAC,EAAE,KAAK;CAG9E;AAED,qBAAa,iBAAkB,SAAQ,YAAY;gBACrC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,EAAE,aAAa,CAAC,EAAE,KAAK;CAG9E;AAED,qBAAa,kBAAmB,SAAQ,YAAY;gBACtC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,EAAE,aAAa,CAAC,EAAE,KAAK;CAG9E"}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Error classes for XHS MCP Server
|
|
3
|
+
*/
|
|
4
|
+
export class XHSError extends Error {
|
|
5
|
+
errorCode;
|
|
6
|
+
context;
|
|
7
|
+
originalError;
|
|
8
|
+
constructor(message, errorCode, context, originalError) {
|
|
9
|
+
super(message);
|
|
10
|
+
this.name = 'XHSError';
|
|
11
|
+
this.errorCode = errorCode || this.constructor.name;
|
|
12
|
+
this.context = context || {};
|
|
13
|
+
this.originalError = originalError;
|
|
14
|
+
}
|
|
15
|
+
toDict() {
|
|
16
|
+
const result = {
|
|
17
|
+
success: false,
|
|
18
|
+
error: this.errorCode,
|
|
19
|
+
message: this.message,
|
|
20
|
+
context: this.context,
|
|
21
|
+
};
|
|
22
|
+
if (this.originalError) {
|
|
23
|
+
result.context = { ...result.context, originalError: this.originalError.message };
|
|
24
|
+
}
|
|
25
|
+
return result;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
export class AuthenticationError extends XHSError {
|
|
29
|
+
constructor(message, context, originalError) {
|
|
30
|
+
super(message, 'AuthenticationError', context, originalError);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
export class LoginTimeoutError extends AuthenticationError {
|
|
34
|
+
constructor(message, context, originalError) {
|
|
35
|
+
super(message, context, originalError);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
export class LoginFailedError extends AuthenticationError {
|
|
39
|
+
constructor(message, context, originalError) {
|
|
40
|
+
super(message, context, originalError);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
export class NotLoggedInError extends AuthenticationError {
|
|
44
|
+
constructor(message, context, originalError) {
|
|
45
|
+
super(message, context, originalError);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
export class BrowserError extends XHSError {
|
|
49
|
+
constructor(message, context, originalError) {
|
|
50
|
+
super(message, 'BrowserError', context, originalError);
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
export class BrowserLaunchError extends BrowserError {
|
|
54
|
+
constructor(message, context, originalError) {
|
|
55
|
+
super(message, context, originalError);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
export class BrowserNavigationError extends BrowserError {
|
|
59
|
+
constructor(message, context, originalError) {
|
|
60
|
+
super(message, context, originalError);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
export class FeedError extends XHSError {
|
|
64
|
+
constructor(message, context, originalError) {
|
|
65
|
+
super(message, 'FeedError', context, originalError);
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
export class FeedNotFoundError extends FeedError {
|
|
69
|
+
constructor(message, context, originalError) {
|
|
70
|
+
super(message, context, originalError);
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
export class FeedParsingError extends FeedError {
|
|
74
|
+
constructor(message, context, originalError) {
|
|
75
|
+
super(message, context, originalError);
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
export class PublishError extends XHSError {
|
|
79
|
+
constructor(message, context, originalError) {
|
|
80
|
+
super(message, 'PublishError', context, originalError);
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
export class InvalidImageError extends PublishError {
|
|
84
|
+
constructor(message, context, originalError) {
|
|
85
|
+
super(message, context, originalError);
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
export class PublishFailedError extends PublishError {
|
|
89
|
+
constructor(message, context, originalError) {
|
|
90
|
+
super(message, context, originalError);
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
//# sourceMappingURL=errors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../src/lib/shared/errors.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,MAAM,OAAO,QAAS,SAAQ,KAAK;IACjB,SAAS,CAAS;IAClB,OAAO,CAAkB;IACzB,aAAa,CAAS;IAEtC,YACE,OAAe,EACf,SAAkB,EAClB,OAAyB,EACzB,aAAqB;QAErB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC;QACvB,IAAI,CAAC,SAAS,GAAG,SAAS,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;QACpD,IAAI,CAAC,OAAO,GAAG,OAAO,IAAI,EAAE,CAAC;QAC7B,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;IACrC,CAAC;IAED,MAAM;QACJ,MAAM,MAAM,GAAgB;YAC1B,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,IAAI,CAAC,SAAS;YACrB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,OAAO,EAAE,IAAI,CAAC,OAAO;SACtB,CAAC;QACF,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,MAAM,CAAC,OAAO,GAAG,EAAE,GAAG,MAAM,CAAC,OAAO,EAAE,aAAa,EAAE,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC;QACpF,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;CACF;AAED,MAAM,OAAO,mBAAoB,SAAQ,QAAQ;IAC/C,YAAY,OAAe,EAAE,OAAyB,EAAE,aAAqB;QAC3E,KAAK,CAAC,OAAO,EAAE,qBAAqB,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC;IAChE,CAAC;CACF;AAED,MAAM,OAAO,iBAAkB,SAAQ,mBAAmB;IACxD,YAAY,OAAe,EAAE,OAAyB,EAAE,aAAqB;QAC3E,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC;IACzC,CAAC;CACF;AAED,MAAM,OAAO,gBAAiB,SAAQ,mBAAmB;IACvD,YAAY,OAAe,EAAE,OAAyB,EAAE,aAAqB;QAC3E,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC;IACzC,CAAC;CACF;AAED,MAAM,OAAO,gBAAiB,SAAQ,mBAAmB;IACvD,YAAY,OAAe,EAAE,OAAyB,EAAE,aAAqB;QAC3E,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC;IACzC,CAAC;CACF;AAED,MAAM,OAAO,YAAa,SAAQ,QAAQ;IACxC,YAAY,OAAe,EAAE,OAAyB,EAAE,aAAqB;QAC3E,KAAK,CAAC,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC;IACzD,CAAC;CACF;AAED,MAAM,OAAO,kBAAmB,SAAQ,YAAY;IAClD,YAAY,OAAe,EAAE,OAAyB,EAAE,aAAqB;QAC3E,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC;IACzC,CAAC;CACF;AAED,MAAM,OAAO,sBAAuB,SAAQ,YAAY;IACtD,YAAY,OAAe,EAAE,OAAyB,EAAE,aAAqB;QAC3E,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC;IACzC,CAAC;CACF;AAED,MAAM,OAAO,SAAU,SAAQ,QAAQ;IACrC,YAAY,OAAe,EAAE,OAAyB,EAAE,aAAqB;QAC3E,KAAK,CAAC,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC;IACtD,CAAC;CACF;AAED,MAAM,OAAO,iBAAkB,SAAQ,SAAS;IAC9C,YAAY,OAAe,EAAE,OAAyB,EAAE,aAAqB;QAC3E,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC;IACzC,CAAC;CACF;AAED,MAAM,OAAO,gBAAiB,SAAQ,SAAS;IAC7C,YAAY,OAAe,EAAE,OAAyB,EAAE,aAAqB;QAC3E,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC;IACzC,CAAC;CACF;AAED,MAAM,OAAO,YAAa,SAAQ,QAAQ;IACxC,YAAY,OAAe,EAAE,OAAyB,EAAE,aAAqB;QAC3E,KAAK,CAAC,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC;IACzD,CAAC;CACF;AAED,MAAM,OAAO,iBAAkB,SAAQ,YAAY;IACjD,YAAY,OAAe,EAAE,OAAyB,EAAE,aAAqB;QAC3E,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC;IACzC,CAAC;CACF;AAED,MAAM,OAAO,kBAAmB,SAAQ,YAAY;IAClD,YAAY,OAAe,EAAE,OAAyB,EAAE,aAAqB;QAC3E,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC;IACzC,CAAC;CACF"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared utilities and types for XHS MCP Server
|
|
3
|
+
*/
|
|
4
|
+
export * from './config.js';
|
|
5
|
+
export * from './cookies.js';
|
|
6
|
+
export * from './logger.js';
|
|
7
|
+
export * from './errors.js';
|
|
8
|
+
export * from './types.js';
|
|
9
|
+
export * from './utils.js';
|
|
10
|
+
export * from './base.service.js';
|
|
11
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/shared/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,cAAc,aAAa,CAAC;AAG5B,cAAc,cAAc,CAAC;AAG7B,cAAc,aAAa,CAAC;AAG5B,cAAc,aAAa,CAAC;AAG5B,cAAc,YAAY,CAAC;AAG3B,cAAc,YAAY,CAAC;AAG3B,cAAc,mBAAmB,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared utilities and types for XHS MCP Server
|
|
3
|
+
*/
|
|
4
|
+
// Configuration
|
|
5
|
+
export * from './config.js';
|
|
6
|
+
// Cookie management
|
|
7
|
+
export * from './cookies.js';
|
|
8
|
+
// Logging
|
|
9
|
+
export * from './logger.js';
|
|
10
|
+
// Error classes
|
|
11
|
+
export * from './errors.js';
|
|
12
|
+
// Type definitions
|
|
13
|
+
export * from './types.js';
|
|
14
|
+
// Common utilities
|
|
15
|
+
export * from './utils.js';
|
|
16
|
+
// Base service class
|
|
17
|
+
export * from './base.service.js';
|
|
18
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/shared/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,gBAAgB;AAChB,cAAc,aAAa,CAAC;AAE5B,oBAAoB;AACpB,cAAc,cAAc,CAAC;AAE7B,UAAU;AACV,cAAc,aAAa,CAAC;AAE5B,gBAAgB;AAChB,cAAc,aAAa,CAAC;AAE5B,mBAAmB;AACnB,cAAc,YAAY,CAAC;AAE3B,mBAAmB;AACnB,cAAc,YAAY,CAAC;AAE3B,qBAAqB;AACrB,cAAc,mBAAmB,CAAC"}
|