mcp-wordpress 2.5.1 → 2.5.2
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/package.json +1 -1
- package/dist/src/cache/CacheInvalidation.d.ts +0 -120
- package/dist/src/cache/CacheInvalidation.d.ts.map +0 -1
- package/dist/src/cache/CacheInvalidation.js +0 -355
- package/dist/src/cache/CacheInvalidation.js.map +0 -1
- package/dist/src/cache/CacheManager.d.ts +0 -149
- package/dist/src/cache/CacheManager.d.ts.map +0 -1
- package/dist/src/cache/CacheManager.js +0 -326
- package/dist/src/cache/CacheManager.js.map +0 -1
- package/dist/src/cache/HttpCacheWrapper.d.ts +0 -122
- package/dist/src/cache/HttpCacheWrapper.d.ts.map +0 -1
- package/dist/src/cache/HttpCacheWrapper.js +0 -283
- package/dist/src/cache/HttpCacheWrapper.js.map +0 -1
- package/dist/src/cache/index.d.ts +0 -12
- package/dist/src/cache/index.d.ts.map +0 -1
- package/dist/src/cache/index.js +0 -9
- package/dist/src/cache/index.js.map +0 -1
- package/dist/src/client/CachedWordPressClient.d.ts +0 -174
- package/dist/src/client/CachedWordPressClient.d.ts.map +0 -1
- package/dist/src/client/CachedWordPressClient.js +0 -345
- package/dist/src/client/CachedWordPressClient.js.map +0 -1
- package/dist/src/client/MockWordPressClient.d.ts +0 -56
- package/dist/src/client/MockWordPressClient.d.ts.map +0 -1
- package/dist/src/client/MockWordPressClient.js +0 -371
- package/dist/src/client/MockWordPressClient.js.map +0 -1
- package/dist/src/client/api.d.ts +0 -235
- package/dist/src/client/api.d.ts.map +0 -1
- package/dist/src/client/api.js +0 -896
- package/dist/src/client/api.js.map +0 -1
- package/dist/src/client/auth.d.ts +0 -121
- package/dist/src/client/auth.d.ts.map +0 -1
- package/dist/src/client/auth.js +0 -429
- package/dist/src/client/auth.js.map +0 -1
- package/dist/src/client/managers/AuthenticationManager.d.ts +0 -92
- package/dist/src/client/managers/AuthenticationManager.d.ts.map +0 -1
- package/dist/src/client/managers/AuthenticationManager.js +0 -369
- package/dist/src/client/managers/AuthenticationManager.js.map +0 -1
- package/dist/src/client/managers/BaseManager.d.ts +0 -22
- package/dist/src/client/managers/BaseManager.d.ts.map +0 -1
- package/dist/src/client/managers/BaseManager.js +0 -53
- package/dist/src/client/managers/BaseManager.js.map +0 -1
- package/dist/src/client/managers/RequestManager.d.ts +0 -47
- package/dist/src/client/managers/RequestManager.d.ts.map +0 -1
- package/dist/src/client/managers/RequestManager.js +0 -193
- package/dist/src/client/managers/RequestManager.js.map +0 -1
- package/dist/src/client/managers/index.d.ts +0 -8
- package/dist/src/client/managers/index.d.ts.map +0 -1
- package/dist/src/client/managers/index.js +0 -8
- package/dist/src/client/managers/index.js.map +0 -1
- package/dist/src/config/Config.d.ts +0 -155
- package/dist/src/config/Config.d.ts.map +0 -1
- package/dist/src/config/Config.js +0 -215
- package/dist/src/config/Config.js.map +0 -1
- package/dist/src/config/ConfigurationSchema.d.ts +0 -281
- package/dist/src/config/ConfigurationSchema.d.ts.map +0 -1
- package/dist/src/config/ConfigurationSchema.js +0 -205
- package/dist/src/config/ConfigurationSchema.js.map +0 -1
- package/dist/src/config/ServerConfiguration.d.ts +0 -47
- package/dist/src/config/ServerConfiguration.d.ts.map +0 -1
- package/dist/src/config/ServerConfiguration.js +0 -255
- package/dist/src/config/ServerConfiguration.js.map +0 -1
- package/dist/src/docs/DocumentationGenerator.d.ts +0 -185
- package/dist/src/docs/DocumentationGenerator.d.ts.map +0 -1
- package/dist/src/docs/DocumentationGenerator.js +0 -777
- package/dist/src/docs/DocumentationGenerator.js.map +0 -1
- package/dist/src/docs/MarkdownFormatter.d.ts +0 -84
- package/dist/src/docs/MarkdownFormatter.d.ts.map +0 -1
- package/dist/src/docs/MarkdownFormatter.js +0 -458
- package/dist/src/docs/MarkdownFormatter.js.map +0 -1
- package/dist/src/docs/index.d.ts +0 -8
- package/dist/src/docs/index.d.ts.map +0 -1
- package/dist/src/docs/index.js +0 -7
- package/dist/src/docs/index.js.map +0 -1
- package/dist/src/dxt-entry.d.ts +0 -6
- package/dist/src/dxt-entry.d.ts.map +0 -1
- package/dist/src/dxt-entry.js +0 -39
- package/dist/src/dxt-entry.js.map +0 -1
- package/dist/src/index.d.ts +0 -18
- package/dist/src/index.d.ts.map +0 -1
- package/dist/src/index.js +0 -143
- package/dist/src/index.js.map +0 -1
- package/dist/src/performance/MetricsCollector.d.ts +0 -145
- package/dist/src/performance/MetricsCollector.d.ts.map +0 -1
- package/dist/src/performance/MetricsCollector.js +0 -368
- package/dist/src/performance/MetricsCollector.js.map +0 -1
- package/dist/src/performance/PerformanceAnalytics.d.ts +0 -168
- package/dist/src/performance/PerformanceAnalytics.d.ts.map +0 -1
- package/dist/src/performance/PerformanceAnalytics.js +0 -570
- package/dist/src/performance/PerformanceAnalytics.js.map +0 -1
- package/dist/src/performance/PerformanceMonitor.d.ts +0 -203
- package/dist/src/performance/PerformanceMonitor.d.ts.map +0 -1
- package/dist/src/performance/PerformanceMonitor.js +0 -478
- package/dist/src/performance/PerformanceMonitor.js.map +0 -1
- package/dist/src/performance/index.d.ts +0 -11
- package/dist/src/performance/index.d.ts.map +0 -1
- package/dist/src/performance/index.js +0 -8
- package/dist/src/performance/index.js.map +0 -1
- package/dist/src/security/AISecurityScanner.d.ts +0 -176
- package/dist/src/security/AISecurityScanner.d.ts.map +0 -1
- package/dist/src/security/AISecurityScanner.js +0 -655
- package/dist/src/security/AISecurityScanner.js.map +0 -1
- package/dist/src/security/AutomatedRemediation.d.ts +0 -146
- package/dist/src/security/AutomatedRemediation.d.ts.map +0 -1
- package/dist/src/security/AutomatedRemediation.js +0 -566
- package/dist/src/security/AutomatedRemediation.js.map +0 -1
- package/dist/src/security/InputValidator.d.ts +0 -219
- package/dist/src/security/InputValidator.d.ts.map +0 -1
- package/dist/src/security/InputValidator.js +0 -295
- package/dist/src/security/InputValidator.js.map +0 -1
- package/dist/src/security/SecurityCIPipeline.d.ts +0 -213
- package/dist/src/security/SecurityCIPipeline.d.ts.map +0 -1
- package/dist/src/security/SecurityCIPipeline.js +0 -693
- package/dist/src/security/SecurityCIPipeline.js.map +0 -1
- package/dist/src/security/SecurityConfig.d.ts +0 -129
- package/dist/src/security/SecurityConfig.d.ts.map +0 -1
- package/dist/src/security/SecurityConfig.js +0 -266
- package/dist/src/security/SecurityConfig.js.map +0 -1
- package/dist/src/security/SecurityConfigManager.d.ts +0 -294
- package/dist/src/security/SecurityConfigManager.d.ts.map +0 -1
- package/dist/src/security/SecurityConfigManager.js +0 -558
- package/dist/src/security/SecurityConfigManager.js.map +0 -1
- package/dist/src/security/SecurityMonitoring.d.ts +0 -245
- package/dist/src/security/SecurityMonitoring.d.ts.map +0 -1
- package/dist/src/security/SecurityMonitoring.js +0 -598
- package/dist/src/security/SecurityMonitoring.js.map +0 -1
- package/dist/src/security/SecurityReviewer.d.ts +0 -168
- package/dist/src/security/SecurityReviewer.d.ts.map +0 -1
- package/dist/src/security/SecurityReviewer.js +0 -686
- package/dist/src/security/SecurityReviewer.js.map +0 -1
- package/dist/src/security/index.d.ts +0 -183
- package/dist/src/security/index.d.ts.map +0 -1
- package/dist/src/security/index.js +0 -218
- package/dist/src/security/index.js.map +0 -1
- package/dist/src/server/ConnectionTester.d.ts +0 -32
- package/dist/src/server/ConnectionTester.d.ts.map +0 -1
- package/dist/src/server/ConnectionTester.js +0 -135
- package/dist/src/server/ConnectionTester.js.map +0 -1
- package/dist/src/server/ToolRegistry.d.ts +0 -50
- package/dist/src/server/ToolRegistry.d.ts.map +0 -1
- package/dist/src/server/ToolRegistry.js +0 -219
- package/dist/src/server/ToolRegistry.js.map +0 -1
- package/dist/src/server.d.ts +0 -7
- package/dist/src/server.d.ts.map +0 -1
- package/dist/src/server.js +0 -7
- package/dist/src/server.js.map +0 -1
- package/dist/src/tools/BaseToolManager.d.ts +0 -62
- package/dist/src/tools/BaseToolManager.d.ts.map +0 -1
- package/dist/src/tools/BaseToolManager.js +0 -195
- package/dist/src/tools/BaseToolManager.js.map +0 -1
- package/dist/src/tools/auth.d.ts +0 -50
- package/dist/src/tools/auth.d.ts.map +0 -1
- package/dist/src/tools/auth.js +0 -133
- package/dist/src/tools/auth.js.map +0 -1
- package/dist/src/tools/cache.d.ts +0 -260
- package/dist/src/tools/cache.d.ts.map +0 -1
- package/dist/src/tools/cache.js +0 -232
- package/dist/src/tools/cache.js.map +0 -1
- package/dist/src/tools/comments.d.ts +0 -33
- package/dist/src/tools/comments.d.ts.map +0 -1
- package/dist/src/tools/comments.js +0 -235
- package/dist/src/tools/comments.js.map +0 -1
- package/dist/src/tools/index.d.ts +0 -11
- package/dist/src/tools/index.d.ts.map +0 -1
- package/dist/src/tools/index.js +0 -11
- package/dist/src/tools/index.js.map +0 -1
- package/dist/src/tools/media.d.ts +0 -70
- package/dist/src/tools/media.d.ts.map +0 -1
- package/dist/src/tools/media.js +0 -248
- package/dist/src/tools/media.js.map +0 -1
- package/dist/src/tools/pages.d.ts +0 -32
- package/dist/src/tools/pages.d.ts.map +0 -1
- package/dist/src/tools/pages.js +0 -215
- package/dist/src/tools/pages.js.map +0 -1
- package/dist/src/tools/performance.d.ts +0 -73
- package/dist/src/tools/performance.d.ts.map +0 -1
- package/dist/src/tools/performance.js +0 -922
- package/dist/src/tools/performance.js.map +0 -1
- package/dist/src/tools/posts/PostHandlers.d.ts +0 -46
- package/dist/src/tools/posts/PostHandlers.d.ts.map +0 -1
- package/dist/src/tools/posts/PostHandlers.js +0 -400
- package/dist/src/tools/posts/PostHandlers.js.map +0 -1
- package/dist/src/tools/posts/PostToolDefinitions.d.ts +0 -37
- package/dist/src/tools/posts/PostToolDefinitions.d.ts.map +0 -1
- package/dist/src/tools/posts/PostToolDefinitions.js +0 -236
- package/dist/src/tools/posts/PostToolDefinitions.js.map +0 -1
- package/dist/src/tools/posts/index.d.ts +0 -138
- package/dist/src/tools/posts/index.d.ts.map +0 -1
- package/dist/src/tools/posts/index.js +0 -163
- package/dist/src/tools/posts/index.js.map +0 -1
- package/dist/src/tools/posts.d.ts +0 -15
- package/dist/src/tools/posts.d.ts.map +0 -1
- package/dist/src/tools/posts.js +0 -16
- package/dist/src/tools/posts.js.map +0 -1
- package/dist/src/tools/site.d.ts +0 -32
- package/dist/src/tools/site.d.ts.map +0 -1
- package/dist/src/tools/site.js +0 -234
- package/dist/src/tools/site.js.map +0 -1
- package/dist/src/tools/taxonomies.d.ts +0 -36
- package/dist/src/tools/taxonomies.d.ts.map +0 -1
- package/dist/src/tools/taxonomies.js +0 -286
- package/dist/src/tools/taxonomies.js.map +0 -1
- package/dist/src/tools/users.d.ts +0 -33
- package/dist/src/tools/users.d.ts.map +0 -1
- package/dist/src/tools/users.js +0 -308
- package/dist/src/tools/users.js.map +0 -1
- package/dist/src/types/client.d.ts +0 -223
- package/dist/src/types/client.d.ts.map +0 -1
- package/dist/src/types/client.js +0 -97
- package/dist/src/types/client.js.map +0 -1
- package/dist/src/types/enhanced.d.ts +0 -237
- package/dist/src/types/enhanced.d.ts.map +0 -1
- package/dist/src/types/enhanced.js +0 -49
- package/dist/src/types/enhanced.js.map +0 -1
- package/dist/src/types/index.d.ts +0 -160
- package/dist/src/types/index.d.ts.map +0 -1
- package/dist/src/types/index.js +0 -14
- package/dist/src/types/index.js.map +0 -1
- package/dist/src/types/mcp.d.ts +0 -178
- package/dist/src/types/mcp.d.ts.map +0 -1
- package/dist/src/types/mcp.js +0 -7
- package/dist/src/types/mcp.js.map +0 -1
- package/dist/src/types/requests.d.ts +0 -322
- package/dist/src/types/requests.d.ts.map +0 -1
- package/dist/src/types/requests.js +0 -8
- package/dist/src/types/requests.js.map +0 -1
- package/dist/src/types/tools.d.ts +0 -506
- package/dist/src/types/tools.d.ts.map +0 -1
- package/dist/src/types/tools.js +0 -8
- package/dist/src/types/tools.js.map +0 -1
- package/dist/src/types/wordpress.d.ts +0 -471
- package/dist/src/types/wordpress.d.ts.map +0 -1
- package/dist/src/types/wordpress.js +0 -14
- package/dist/src/types/wordpress.js.map +0 -1
- package/dist/src/utils/debug.d.ts +0 -71
- package/dist/src/utils/debug.d.ts.map +0 -1
- package/dist/src/utils/debug.js +0 -235
- package/dist/src/utils/debug.js.map +0 -1
- package/dist/src/utils/enhancedError.d.ts +0 -61
- package/dist/src/utils/enhancedError.d.ts.map +0 -1
- package/dist/src/utils/enhancedError.js +0 -221
- package/dist/src/utils/enhancedError.js.map +0 -1
- package/dist/src/utils/error.d.ts +0 -17
- package/dist/src/utils/error.d.ts.map +0 -1
- package/dist/src/utils/error.js +0 -108
- package/dist/src/utils/error.js.map +0 -1
- package/dist/src/utils/logger.d.ts +0 -106
- package/dist/src/utils/logger.d.ts.map +0 -1
- package/dist/src/utils/logger.js +0 -280
- package/dist/src/utils/logger.js.map +0 -1
- package/dist/src/utils/streaming.d.ts +0 -104
- package/dist/src/utils/streaming.d.ts.map +0 -1
- package/dist/src/utils/streaming.js +0 -331
- package/dist/src/utils/streaming.js.map +0 -1
- package/dist/src/utils/toolWrapper.d.ts +0 -42
- package/dist/src/utils/toolWrapper.d.ts.map +0 -1
- package/dist/src/utils/toolWrapper.js +0 -101
- package/dist/src/utils/toolWrapper.js.map +0 -1
- package/dist/src/utils/validation/core.d.ts +0 -21
- package/dist/src/utils/validation/core.d.ts.map +0 -1
- package/dist/src/utils/validation/core.js +0 -71
- package/dist/src/utils/validation/core.js.map +0 -1
- package/dist/src/utils/validation/index.d.ts +0 -25
- package/dist/src/utils/validation/index.d.ts.map +0 -1
- package/dist/src/utils/validation/index.js +0 -29
- package/dist/src/utils/validation/index.js.map +0 -1
- package/dist/src/utils/validation/network.d.ts +0 -19
- package/dist/src/utils/validation/network.d.ts.map +0 -1
- package/dist/src/utils/validation/network.js +0 -93
- package/dist/src/utils/validation/network.js.map +0 -1
- package/dist/src/utils/validation/rateLimit.d.ts +0 -21
- package/dist/src/utils/validation/rateLimit.d.ts.map +0 -1
- package/dist/src/utils/validation/rateLimit.js +0 -43
- package/dist/src/utils/validation/rateLimit.js.map +0 -1
- package/dist/src/utils/validation/security.d.ts +0 -29
- package/dist/src/utils/validation/security.d.ts.map +0 -1
- package/dist/src/utils/validation/security.js +0 -327
- package/dist/src/utils/validation/security.js.map +0 -1
- package/dist/src/utils/validation/wordpress.d.ts +0 -31
- package/dist/src/utils/validation/wordpress.d.ts.map +0 -1
- package/dist/src/utils/validation/wordpress.js +0 -146
- package/dist/src/utils/validation/wordpress.js.map +0 -1
- package/dist/src/utils/validation.d.ts +0 -15
- package/dist/src/utils/validation.d.ts.map +0 -1
- package/dist/src/utils/validation.js +0 -27
- package/dist/src/utils/validation.js.map +0 -1
- package/dist/tests/vitest.setup.d.ts +0 -6
- package/dist/tests/vitest.setup.d.ts.map +0 -1
- package/dist/tests/vitest.setup.js +0 -39
- package/dist/tests/vitest.setup.js.map +0 -1
|
@@ -1,255 +0,0 @@
|
|
|
1
|
-
import dotenv from "dotenv";
|
|
2
|
-
import * as fs from "fs";
|
|
3
|
-
import * as path from "path";
|
|
4
|
-
import { fileURLToPath } from "url";
|
|
5
|
-
import { WordPressClient } from "../client/api.js";
|
|
6
|
-
import { CachedWordPressClient } from "../client/CachedWordPressClient.js";
|
|
7
|
-
import { MockWordPressClient } from "../client/MockWordPressClient.js";
|
|
8
|
-
import { getErrorMessage } from "../utils/error.js";
|
|
9
|
-
import { LoggerFactory } from "../utils/logger.js";
|
|
10
|
-
import { ConfigHelpers } from "./Config.js";
|
|
11
|
-
import { ConfigurationValidator, } from "./ConfigurationSchema.js";
|
|
12
|
-
/**
|
|
13
|
-
* Configuration loader for MCP WordPress Server
|
|
14
|
-
* Handles both single-site (environment variables) and multi-site (JSON config) modes
|
|
15
|
-
*/
|
|
16
|
-
export class ServerConfiguration {
|
|
17
|
-
static instance;
|
|
18
|
-
logger = LoggerFactory.server();
|
|
19
|
-
rootDir;
|
|
20
|
-
envPath;
|
|
21
|
-
constructor() {
|
|
22
|
-
const __filename = fileURLToPath(import.meta.url);
|
|
23
|
-
const __dirname = path.dirname(__filename);
|
|
24
|
-
this.rootDir = path.resolve(__dirname, "../..");
|
|
25
|
-
this.envPath = path.resolve(this.rootDir, ".env");
|
|
26
|
-
// Load environment variables (completely silent for MCP compatibility)
|
|
27
|
-
// Suppress dotenv output that could interfere with JSON-RPC communication
|
|
28
|
-
// eslint-disable-next-line no-console
|
|
29
|
-
const originalConsoleLog = console.log;
|
|
30
|
-
// eslint-disable-next-line no-console
|
|
31
|
-
const originalConsoleError = console.error;
|
|
32
|
-
try {
|
|
33
|
-
// eslint-disable-next-line no-console
|
|
34
|
-
console.log = () => { };
|
|
35
|
-
// eslint-disable-next-line no-console
|
|
36
|
-
console.error = () => { };
|
|
37
|
-
dotenv.config({
|
|
38
|
-
path: this.envPath,
|
|
39
|
-
debug: false,
|
|
40
|
-
override: false
|
|
41
|
-
});
|
|
42
|
-
}
|
|
43
|
-
finally {
|
|
44
|
-
// eslint-disable-next-line no-console
|
|
45
|
-
console.log = originalConsoleLog;
|
|
46
|
-
// eslint-disable-next-line no-console
|
|
47
|
-
console.error = originalConsoleError;
|
|
48
|
-
}
|
|
49
|
-
// Debug output for DXT troubleshooting (reduced in DXT mode)
|
|
50
|
-
if (ConfigHelpers.shouldDebug()) {
|
|
51
|
-
this.logger.debug("ServerConfiguration initialized", {
|
|
52
|
-
rootDir: this.rootDir,
|
|
53
|
-
envPath: this.envPath,
|
|
54
|
-
envFileExists: fs.existsSync(this.envPath),
|
|
55
|
-
});
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
/**
|
|
59
|
-
* Get singleton instance of ServerConfiguration
|
|
60
|
-
*/
|
|
61
|
-
static getInstance() {
|
|
62
|
-
if (!ServerConfiguration.instance) {
|
|
63
|
-
ServerConfiguration.instance = new ServerConfiguration();
|
|
64
|
-
}
|
|
65
|
-
return ServerConfiguration.instance;
|
|
66
|
-
}
|
|
67
|
-
/**
|
|
68
|
-
* Load WordPress client configurations
|
|
69
|
-
* Returns a Map of site ID to WordPressClient instances
|
|
70
|
-
*/
|
|
71
|
-
loadClientConfigurations(mcpConfig) {
|
|
72
|
-
const configPath = path.resolve(this.rootDir, "mcp-wordpress.config.json");
|
|
73
|
-
if (fs.existsSync(configPath)) {
|
|
74
|
-
if (ConfigHelpers.shouldLogInfo()) {
|
|
75
|
-
this.logger.info("Found multi-site configuration file", { configPath });
|
|
76
|
-
}
|
|
77
|
-
return this.loadMultiSiteConfig(configPath);
|
|
78
|
-
}
|
|
79
|
-
else {
|
|
80
|
-
if (ConfigHelpers.shouldLogInfo()) {
|
|
81
|
-
this.logger.info("Multi-site config not found, using environment variables for single-site mode", {
|
|
82
|
-
configPath,
|
|
83
|
-
});
|
|
84
|
-
}
|
|
85
|
-
return this.loadSingleSiteFromEnv(mcpConfig);
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
/**
|
|
89
|
-
* Load multi-site configuration from JSON file
|
|
90
|
-
*/
|
|
91
|
-
loadMultiSiteConfig(configPath) {
|
|
92
|
-
try {
|
|
93
|
-
const configFile = fs.readFileSync(configPath, "utf-8");
|
|
94
|
-
const rawConfig = JSON.parse(configFile);
|
|
95
|
-
// Validate configuration using Zod schema
|
|
96
|
-
const config = ConfigurationValidator.validateMultiSiteConfig(rawConfig);
|
|
97
|
-
const clients = new Map();
|
|
98
|
-
const validConfigs = [];
|
|
99
|
-
for (const site of config.sites) {
|
|
100
|
-
const clientConfig = {
|
|
101
|
-
baseUrl: site.config.WORDPRESS_SITE_URL,
|
|
102
|
-
auth: {
|
|
103
|
-
method: site.config.WORDPRESS_AUTH_METHOD || "app-password",
|
|
104
|
-
username: site.config.WORDPRESS_USERNAME,
|
|
105
|
-
appPassword: site.config.WORDPRESS_APP_PASSWORD,
|
|
106
|
-
},
|
|
107
|
-
};
|
|
108
|
-
// Use cached client for better performance
|
|
109
|
-
const client = ConfigHelpers.shouldUseCache()
|
|
110
|
-
? new CachedWordPressClient(clientConfig, site.id)
|
|
111
|
-
: new WordPressClient(clientConfig);
|
|
112
|
-
clients.set(site.id, client);
|
|
113
|
-
validConfigs.push(site);
|
|
114
|
-
if (ConfigHelpers.shouldLogInfo()) {
|
|
115
|
-
this.logger.info("Initialized site client", {
|
|
116
|
-
siteName: site.name,
|
|
117
|
-
siteId: site.id,
|
|
118
|
-
authMethod: site.config.WORDPRESS_AUTH_METHOD,
|
|
119
|
-
});
|
|
120
|
-
}
|
|
121
|
-
}
|
|
122
|
-
return { clients, configs: validConfigs };
|
|
123
|
-
}
|
|
124
|
-
catch (error) {
|
|
125
|
-
this.logger.fatal("Failed to load multi-site configuration", {
|
|
126
|
-
configPath,
|
|
127
|
-
error: getErrorMessage(error),
|
|
128
|
-
});
|
|
129
|
-
process.exit(1);
|
|
130
|
-
}
|
|
131
|
-
}
|
|
132
|
-
/**
|
|
133
|
-
* Check if we're in CI environment
|
|
134
|
-
*/
|
|
135
|
-
isCIEnvironment() {
|
|
136
|
-
return ConfigHelpers.isCI();
|
|
137
|
-
}
|
|
138
|
-
/**
|
|
139
|
-
* Create mock configuration for CI environments
|
|
140
|
-
*/
|
|
141
|
-
createMockConfiguration() {
|
|
142
|
-
const mockConfig = {
|
|
143
|
-
WORDPRESS_SITE_URL: "https://demo.wordpress.com",
|
|
144
|
-
WORDPRESS_USERNAME: "ci-user",
|
|
145
|
-
WORDPRESS_APP_PASSWORD: "ci-mock-password",
|
|
146
|
-
WORDPRESS_AUTH_METHOD: "app-password",
|
|
147
|
-
};
|
|
148
|
-
const clientConfig = {
|
|
149
|
-
baseUrl: mockConfig.WORDPRESS_SITE_URL,
|
|
150
|
-
auth: {
|
|
151
|
-
method: mockConfig.WORDPRESS_AUTH_METHOD,
|
|
152
|
-
username: mockConfig.WORDPRESS_USERNAME,
|
|
153
|
-
appPassword: mockConfig.WORDPRESS_APP_PASSWORD,
|
|
154
|
-
},
|
|
155
|
-
};
|
|
156
|
-
// Create mock client that won't actually connect to WordPress
|
|
157
|
-
const client = new MockWordPressClient(clientConfig);
|
|
158
|
-
const clients = new Map();
|
|
159
|
-
clients.set("default", client);
|
|
160
|
-
const siteConfig = {
|
|
161
|
-
id: "default",
|
|
162
|
-
name: "Demo Site (CI Mode)",
|
|
163
|
-
config: mockConfig,
|
|
164
|
-
};
|
|
165
|
-
this.logger.info("Using mock configuration for CI environment");
|
|
166
|
-
return { clients, configs: [siteConfig] };
|
|
167
|
-
}
|
|
168
|
-
/**
|
|
169
|
-
* Load single-site configuration from environment variables
|
|
170
|
-
*/
|
|
171
|
-
loadSingleSiteFromEnv(mcpConfig) {
|
|
172
|
-
try {
|
|
173
|
-
// Debug output for DXT troubleshooting (reduced in DXT mode)
|
|
174
|
-
const isDXTMode = process.env.NODE_ENV === "dxt";
|
|
175
|
-
if (!isDXTMode && ConfigHelpers.shouldDebug()) {
|
|
176
|
-
this.logger.debug("Loading single-site configuration from environment", {
|
|
177
|
-
mcpConfigProvided: Boolean(mcpConfig),
|
|
178
|
-
siteUrl: process.env.WORDPRESS_SITE_URL || "NOT SET",
|
|
179
|
-
username: process.env.WORDPRESS_USERNAME || "NOT SET",
|
|
180
|
-
appPasswordSet: Boolean(process.env.WORDPRESS_APP_PASSWORD),
|
|
181
|
-
authMethod: process.env.WORDPRESS_AUTH_METHOD || "NOT SET",
|
|
182
|
-
});
|
|
183
|
-
}
|
|
184
|
-
// Check if we're in CI environment and credentials are missing
|
|
185
|
-
if (this.isCIEnvironment() && !process.env.WORDPRESS_SITE_URL) {
|
|
186
|
-
return this.createMockConfiguration();
|
|
187
|
-
}
|
|
188
|
-
// Validate MCP config if provided
|
|
189
|
-
const validatedMcpConfig = mcpConfig ? ConfigurationValidator.validateMcpConfig(mcpConfig) : undefined;
|
|
190
|
-
// Prepare environment configuration for validation
|
|
191
|
-
const envConfig = {
|
|
192
|
-
WORDPRESS_SITE_URL: validatedMcpConfig?.wordpressSiteUrl || process.env.WORDPRESS_SITE_URL,
|
|
193
|
-
WORDPRESS_USERNAME: validatedMcpConfig?.wordpressUsername || process.env.WORDPRESS_USERNAME,
|
|
194
|
-
WORDPRESS_APP_PASSWORD: validatedMcpConfig?.wordpressAppPassword || process.env.WORDPRESS_APP_PASSWORD,
|
|
195
|
-
WORDPRESS_AUTH_METHOD: validatedMcpConfig?.wordpressAuthMethod || process.env.WORDPRESS_AUTH_METHOD || "app-password",
|
|
196
|
-
NODE_ENV: process.env.NODE_ENV,
|
|
197
|
-
DEBUG: process.env.DEBUG,
|
|
198
|
-
DISABLE_CACHE: process.env.DISABLE_CACHE,
|
|
199
|
-
LOG_LEVEL: process.env.LOG_LEVEL,
|
|
200
|
-
};
|
|
201
|
-
if (!isDXTMode && ConfigHelpers.shouldDebug()) {
|
|
202
|
-
this.logger.debug("Final environment configuration for validation", {
|
|
203
|
-
siteUrl: envConfig.WORDPRESS_SITE_URL || "NOT SET",
|
|
204
|
-
username: envConfig.WORDPRESS_USERNAME || "NOT SET",
|
|
205
|
-
appPasswordSet: Boolean(envConfig.WORDPRESS_APP_PASSWORD),
|
|
206
|
-
authMethod: envConfig.WORDPRESS_AUTH_METHOD || "NOT SET",
|
|
207
|
-
});
|
|
208
|
-
}
|
|
209
|
-
// Validate environment configuration using Zod schema
|
|
210
|
-
const validatedConfig = ConfigurationValidator.validateEnvironmentConfig(envConfig);
|
|
211
|
-
const clientConfig = {
|
|
212
|
-
baseUrl: validatedConfig.WORDPRESS_SITE_URL,
|
|
213
|
-
auth: {
|
|
214
|
-
method: validatedConfig.WORDPRESS_AUTH_METHOD,
|
|
215
|
-
username: validatedConfig.WORDPRESS_USERNAME,
|
|
216
|
-
appPassword: validatedConfig.WORDPRESS_APP_PASSWORD,
|
|
217
|
-
},
|
|
218
|
-
};
|
|
219
|
-
// Use cached client for better performance
|
|
220
|
-
const client = process.env.DISABLE_CACHE === "true"
|
|
221
|
-
? new WordPressClient(clientConfig)
|
|
222
|
-
: new CachedWordPressClient(clientConfig, "default");
|
|
223
|
-
const clients = new Map();
|
|
224
|
-
clients.set("default", client);
|
|
225
|
-
const siteConfig = {
|
|
226
|
-
id: "default",
|
|
227
|
-
name: "Default Site",
|
|
228
|
-
config: {
|
|
229
|
-
WORDPRESS_SITE_URL: validatedConfig.WORDPRESS_SITE_URL,
|
|
230
|
-
WORDPRESS_USERNAME: validatedConfig.WORDPRESS_USERNAME,
|
|
231
|
-
WORDPRESS_APP_PASSWORD: validatedConfig.WORDPRESS_APP_PASSWORD,
|
|
232
|
-
WORDPRESS_AUTH_METHOD: validatedConfig.WORDPRESS_AUTH_METHOD,
|
|
233
|
-
},
|
|
234
|
-
};
|
|
235
|
-
if (!isDXTMode) {
|
|
236
|
-
this.logger.info("Initialized default site client in single-site mode");
|
|
237
|
-
}
|
|
238
|
-
return { clients, configs: [siteConfig] };
|
|
239
|
-
}
|
|
240
|
-
catch (error) {
|
|
241
|
-
this.logger.error("Configuration validation failed for single-site mode", {
|
|
242
|
-
error: getErrorMessage(error),
|
|
243
|
-
suggestion: "Please check your environment variables or MCP configuration",
|
|
244
|
-
});
|
|
245
|
-
return { clients: new Map(), configs: [] };
|
|
246
|
-
}
|
|
247
|
-
}
|
|
248
|
-
/**
|
|
249
|
-
* Get root directory path
|
|
250
|
-
*/
|
|
251
|
-
getRootDir() {
|
|
252
|
-
return this.rootDir;
|
|
253
|
-
}
|
|
254
|
-
}
|
|
255
|
-
//# sourceMappingURL=ServerConfiguration.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ServerConfiguration.js","sourceRoot":"","sources":["../../../src/config/ServerConfiguration.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,185 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Comprehensive API Documentation Auto-Generation System
|
|
3
|
-
* Extracts documentation from tool classes, types, and WordPress mappings
|
|
4
|
-
*/
|
|
5
|
-
export interface DocumentationConfig {
|
|
6
|
-
outputDir: string;
|
|
7
|
-
includeExamples: boolean;
|
|
8
|
-
includeWordPressMapping: boolean;
|
|
9
|
-
generateOpenAPI: boolean;
|
|
10
|
-
generateInteractiveHtml: boolean;
|
|
11
|
-
validateExamples: boolean;
|
|
12
|
-
}
|
|
13
|
-
export interface ToolDocumentation {
|
|
14
|
-
name: string;
|
|
15
|
-
category: string;
|
|
16
|
-
description: string;
|
|
17
|
-
parameters: ParameterDocumentation[];
|
|
18
|
-
examples: ExampleUsage[];
|
|
19
|
-
wordpressEndpoint: string | undefined;
|
|
20
|
-
requiredPermissions: string[] | undefined;
|
|
21
|
-
returnType: string;
|
|
22
|
-
errorCodes: ErrorDocumentation[];
|
|
23
|
-
relatedTools: string[];
|
|
24
|
-
}
|
|
25
|
-
export interface ParameterDocumentation {
|
|
26
|
-
name: string;
|
|
27
|
-
type: string;
|
|
28
|
-
required: boolean;
|
|
29
|
-
description: string;
|
|
30
|
-
defaultValue: unknown;
|
|
31
|
-
allowedValues: string[] | undefined;
|
|
32
|
-
examples: string[];
|
|
33
|
-
}
|
|
34
|
-
export interface ExampleUsage {
|
|
35
|
-
title: string;
|
|
36
|
-
description: string;
|
|
37
|
-
command: string;
|
|
38
|
-
parameters: Record<string, unknown>;
|
|
39
|
-
expectedResponse: unknown;
|
|
40
|
-
errorExample?: {
|
|
41
|
-
scenario: string;
|
|
42
|
-
error: unknown;
|
|
43
|
-
};
|
|
44
|
-
}
|
|
45
|
-
export interface ErrorDocumentation {
|
|
46
|
-
code: string;
|
|
47
|
-
message: string;
|
|
48
|
-
description: string;
|
|
49
|
-
resolution: string;
|
|
50
|
-
}
|
|
51
|
-
export interface DocumentationOutput {
|
|
52
|
-
tools: ToolDocumentation[];
|
|
53
|
-
categories: CategoryDocumentation[];
|
|
54
|
-
types: TypeDocumentation[];
|
|
55
|
-
openApiSpec: OpenAPISpecification | undefined;
|
|
56
|
-
summary: DocumentationSummary;
|
|
57
|
-
}
|
|
58
|
-
export interface CategoryDocumentation {
|
|
59
|
-
name: string;
|
|
60
|
-
description: string;
|
|
61
|
-
toolCount: number;
|
|
62
|
-
tools: string[];
|
|
63
|
-
usagePatterns: string[];
|
|
64
|
-
}
|
|
65
|
-
export interface TypeDocumentation {
|
|
66
|
-
name: string;
|
|
67
|
-
description: string;
|
|
68
|
-
properties: PropertyDocumentation[];
|
|
69
|
-
examples: unknown[];
|
|
70
|
-
wordpressSource?: string;
|
|
71
|
-
}
|
|
72
|
-
export interface PropertyDocumentation {
|
|
73
|
-
name: string;
|
|
74
|
-
type: string;
|
|
75
|
-
required: boolean;
|
|
76
|
-
description: string;
|
|
77
|
-
format?: string;
|
|
78
|
-
}
|
|
79
|
-
export interface OpenAPISpecification {
|
|
80
|
-
openapi: string;
|
|
81
|
-
info: Record<string, unknown>;
|
|
82
|
-
paths: Record<string, unknown>;
|
|
83
|
-
components: Record<string, unknown>;
|
|
84
|
-
}
|
|
85
|
-
export interface DocumentationSummary {
|
|
86
|
-
totalTools: number;
|
|
87
|
-
totalCategories: number;
|
|
88
|
-
totalTypes: number;
|
|
89
|
-
lastUpdated: string;
|
|
90
|
-
version: string;
|
|
91
|
-
coverage: {
|
|
92
|
-
toolsWithExamples: number;
|
|
93
|
-
toolsWithWordPressMapping: number;
|
|
94
|
-
typesDocumented: number;
|
|
95
|
-
};
|
|
96
|
-
}
|
|
97
|
-
/**
|
|
98
|
-
* Main Documentation Generator
|
|
99
|
-
*/
|
|
100
|
-
export declare class DocumentationGenerator {
|
|
101
|
-
private config;
|
|
102
|
-
private toolCategories;
|
|
103
|
-
private wordpressEndpoints;
|
|
104
|
-
private logger;
|
|
105
|
-
constructor(config?: Partial<DocumentationConfig>);
|
|
106
|
-
/**
|
|
107
|
-
* Generate complete documentation for all tools and types
|
|
108
|
-
*/
|
|
109
|
-
generateFullDocumentation(): Promise<DocumentationOutput>;
|
|
110
|
-
/**
|
|
111
|
-
* Extract documentation from all tool classes
|
|
112
|
-
*/
|
|
113
|
-
private extractAllToolDocumentation;
|
|
114
|
-
/**
|
|
115
|
-
* Extract documentation for a single tool
|
|
116
|
-
*/
|
|
117
|
-
private extractToolDocumentation;
|
|
118
|
-
/**
|
|
119
|
-
* Extract parameter documentation
|
|
120
|
-
*/
|
|
121
|
-
private extractParameterDocumentation;
|
|
122
|
-
/**
|
|
123
|
-
* Generate usage examples for tools
|
|
124
|
-
*/
|
|
125
|
-
private generateToolExamples;
|
|
126
|
-
/**
|
|
127
|
-
* Generate basic usage example
|
|
128
|
-
*/
|
|
129
|
-
private generateBasicExample;
|
|
130
|
-
/**
|
|
131
|
-
* Generate multi-site example
|
|
132
|
-
*/
|
|
133
|
-
private generateMultiSiteExample;
|
|
134
|
-
/**
|
|
135
|
-
* Generate advanced example with all parameters
|
|
136
|
-
*/
|
|
137
|
-
private generateAdvancedExample;
|
|
138
|
-
/**
|
|
139
|
-
* Generate category documentation
|
|
140
|
-
*/
|
|
141
|
-
private generateCategoryDocumentation;
|
|
142
|
-
/**
|
|
143
|
-
* Extract type documentation from TypeScript definitions
|
|
144
|
-
*/
|
|
145
|
-
private extractTypeDocumentation;
|
|
146
|
-
/**
|
|
147
|
-
* Generate OpenAPI specification
|
|
148
|
-
*/
|
|
149
|
-
private generateOpenAPISpecification;
|
|
150
|
-
/**
|
|
151
|
-
* Write all documentation files
|
|
152
|
-
*/
|
|
153
|
-
private writeDocumentationFiles;
|
|
154
|
-
private extractCategoryFromClassName;
|
|
155
|
-
private initializeWordPressMapping;
|
|
156
|
-
private initializeToolCategories;
|
|
157
|
-
private generateDocumentationSummary;
|
|
158
|
-
/**
|
|
159
|
-
* Helper methods for documentation generation
|
|
160
|
-
*/
|
|
161
|
-
private getDefaultValue;
|
|
162
|
-
private getAllowedValues;
|
|
163
|
-
private generateParameterExamples;
|
|
164
|
-
private supportsMultiSite;
|
|
165
|
-
private generateExampleValue;
|
|
166
|
-
private generateExpectedResponse;
|
|
167
|
-
private getExampleParameters;
|
|
168
|
-
private getCategoryDescription;
|
|
169
|
-
private generateUsagePatterns;
|
|
170
|
-
private generateWordPressPostExample;
|
|
171
|
-
private generateParameterSchema;
|
|
172
|
-
private convertTypeToJsonSchema;
|
|
173
|
-
private inferReturnType;
|
|
174
|
-
private generateErrorDocumentation;
|
|
175
|
-
private findRelatedTools;
|
|
176
|
-
private getRequiredPermissions;
|
|
177
|
-
/**
|
|
178
|
-
* File writing implementations
|
|
179
|
-
*/
|
|
180
|
-
private writeApiOverview;
|
|
181
|
-
private writeToolDocumentation;
|
|
182
|
-
private writeCategoryDocumentation;
|
|
183
|
-
private writeTypeDocumentation;
|
|
184
|
-
}
|
|
185
|
-
//# sourceMappingURL=DocumentationGenerator.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"DocumentationGenerator.d.ts","sourceRoot":"","sources":["../../../src/docs/DocumentationGenerator.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAQH,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,OAAO,CAAC;IACzB,uBAAuB,EAAE,OAAO,CAAC;IACjC,eAAe,EAAE,OAAO,CAAC;IACzB,uBAAuB,EAAE,OAAO,CAAC;IACjC,gBAAgB,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,sBAAsB,EAAE,CAAC;IACrC,QAAQ,EAAE,YAAY,EAAE,CAAC;IACzB,iBAAiB,EAAE,MAAM,GAAG,SAAS,CAAC;IACtC,mBAAmB,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IAC1C,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,kBAAkB,EAAE,CAAC;IACjC,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB;AAED,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,OAAO,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,OAAO,CAAC;IACtB,aAAa,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IACpC,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpC,gBAAgB,EAAE,OAAO,CAAC;IAC1B,YAAY,CAAC,EAAE;QACb,QAAQ,EAAE,MAAM,CAAC;QACjB,KAAK,EAAE,OAAO,CAAC;KAChB,CAAC;CACH;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,iBAAiB,EAAE,CAAC;IAC3B,UAAU,EAAE,qBAAqB,EAAE,CAAC;IACpC,KAAK,EAAE,iBAAiB,EAAE,CAAC;IAC3B,WAAW,EAAE,oBAAoB,GAAG,SAAS,CAAC;IAC9C,OAAO,EAAE,oBAAoB,CAAC;CAC/B;AAED,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,aAAa,EAAE,MAAM,EAAE,CAAC;CACzB;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,qBAAqB,EAAE,CAAC;IACpC,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,OAAO,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACrC;AAED,MAAM,WAAW,oBAAoB;IACnC,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE;QACR,iBAAiB,EAAE,MAAM,CAAC;QAC1B,yBAAyB,EAAE,MAAM,CAAC;QAClC,eAAe,EAAE,MAAM,CAAC;KACzB,CAAC;CACH;AAED;;GAEG;AACH,qBAAa,sBAAsB;IACjC,OAAO,CAAC,MAAM,CAAsB;IACpC,OAAO,CAAC,cAAc,CAAoC;IAC1D,OAAO,CAAC,kBAAkB,CAAkC;IAC5D,OAAO,CAAC,MAAM,CAAuB;gBAEzB,MAAM,GAAE,OAAO,CAAC,mBAAmB,CAAM;IAerD;;OAEG;IACG,yBAAyB,IAAI,OAAO,CAAC,mBAAmB,CAAC;IA6B/D;;OAEG;YACW,2BAA2B;IA8BzC;;OAEG;YACW,wBAAwB;IA0BtC;;OAEG;IACH,OAAO,CAAC,6BAA6B;IAoBrC;;OAEG;IACH,OAAO,CAAC,oBAAoB;IA0B5B;;OAEG;IACH,OAAO,CAAC,oBAAoB;IA2B5B;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAYhC;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAgB/B;;OAEG;IACH,OAAO,CAAC,6BAA6B;IAoBrC;;OAEG;YACW,wBAAwB;IAwCtC;;OAEG;IACH,OAAO,CAAC,4BAA4B;IAyEpC;;OAEG;YACW,uBAAuB;IA6CrC,OAAO,CAAC,4BAA4B;IAIpC,OAAO,CAAC,0BAA0B;IAUlC,OAAO,CAAC,wBAAwB;IAoBhC,OAAO,CAAC,4BAA4B;IAmBpC;;OAEG;IAEH,OAAO,CAAC,eAAe;IAevB,OAAO,CAAC,gBAAgB;IAcxB,OAAO,CAAC,yBAAyB;IAiBjC,OAAO,CAAC,iBAAiB;IAKzB,OAAO,CAAC,oBAAoB;IAuB5B,OAAO,CAAC,wBAAwB;IAoEhC,OAAO,CAAC,oBAAoB;IAmB5B,OAAO,CAAC,sBAAsB;IAgB9B,OAAO,CAAC,qBAAqB;IAoC7B,OAAO,CAAC,4BAA4B;IAgBpC,OAAO,CAAC,uBAAuB;IA8B/B,OAAO,CAAC,uBAAuB;IA2B/B,OAAO,CAAC,eAAe;IAYvB,OAAO,CAAC,0BAA0B;IA6BlC,OAAO,CAAC,gBAAgB;IAMxB,OAAO,CAAC,sBAAsB;IAmB9B;;OAEG;YAEW,gBAAgB;YAQhB,sBAAsB;YAQtB,0BAA0B;YAW1B,sBAAsB;CAOrC"}
|