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.
Files changed (289) hide show
  1. package/package.json +1 -1
  2. package/dist/src/cache/CacheInvalidation.d.ts +0 -120
  3. package/dist/src/cache/CacheInvalidation.d.ts.map +0 -1
  4. package/dist/src/cache/CacheInvalidation.js +0 -355
  5. package/dist/src/cache/CacheInvalidation.js.map +0 -1
  6. package/dist/src/cache/CacheManager.d.ts +0 -149
  7. package/dist/src/cache/CacheManager.d.ts.map +0 -1
  8. package/dist/src/cache/CacheManager.js +0 -326
  9. package/dist/src/cache/CacheManager.js.map +0 -1
  10. package/dist/src/cache/HttpCacheWrapper.d.ts +0 -122
  11. package/dist/src/cache/HttpCacheWrapper.d.ts.map +0 -1
  12. package/dist/src/cache/HttpCacheWrapper.js +0 -283
  13. package/dist/src/cache/HttpCacheWrapper.js.map +0 -1
  14. package/dist/src/cache/index.d.ts +0 -12
  15. package/dist/src/cache/index.d.ts.map +0 -1
  16. package/dist/src/cache/index.js +0 -9
  17. package/dist/src/cache/index.js.map +0 -1
  18. package/dist/src/client/CachedWordPressClient.d.ts +0 -174
  19. package/dist/src/client/CachedWordPressClient.d.ts.map +0 -1
  20. package/dist/src/client/CachedWordPressClient.js +0 -345
  21. package/dist/src/client/CachedWordPressClient.js.map +0 -1
  22. package/dist/src/client/MockWordPressClient.d.ts +0 -56
  23. package/dist/src/client/MockWordPressClient.d.ts.map +0 -1
  24. package/dist/src/client/MockWordPressClient.js +0 -371
  25. package/dist/src/client/MockWordPressClient.js.map +0 -1
  26. package/dist/src/client/api.d.ts +0 -235
  27. package/dist/src/client/api.d.ts.map +0 -1
  28. package/dist/src/client/api.js +0 -896
  29. package/dist/src/client/api.js.map +0 -1
  30. package/dist/src/client/auth.d.ts +0 -121
  31. package/dist/src/client/auth.d.ts.map +0 -1
  32. package/dist/src/client/auth.js +0 -429
  33. package/dist/src/client/auth.js.map +0 -1
  34. package/dist/src/client/managers/AuthenticationManager.d.ts +0 -92
  35. package/dist/src/client/managers/AuthenticationManager.d.ts.map +0 -1
  36. package/dist/src/client/managers/AuthenticationManager.js +0 -369
  37. package/dist/src/client/managers/AuthenticationManager.js.map +0 -1
  38. package/dist/src/client/managers/BaseManager.d.ts +0 -22
  39. package/dist/src/client/managers/BaseManager.d.ts.map +0 -1
  40. package/dist/src/client/managers/BaseManager.js +0 -53
  41. package/dist/src/client/managers/BaseManager.js.map +0 -1
  42. package/dist/src/client/managers/RequestManager.d.ts +0 -47
  43. package/dist/src/client/managers/RequestManager.d.ts.map +0 -1
  44. package/dist/src/client/managers/RequestManager.js +0 -193
  45. package/dist/src/client/managers/RequestManager.js.map +0 -1
  46. package/dist/src/client/managers/index.d.ts +0 -8
  47. package/dist/src/client/managers/index.d.ts.map +0 -1
  48. package/dist/src/client/managers/index.js +0 -8
  49. package/dist/src/client/managers/index.js.map +0 -1
  50. package/dist/src/config/Config.d.ts +0 -155
  51. package/dist/src/config/Config.d.ts.map +0 -1
  52. package/dist/src/config/Config.js +0 -215
  53. package/dist/src/config/Config.js.map +0 -1
  54. package/dist/src/config/ConfigurationSchema.d.ts +0 -281
  55. package/dist/src/config/ConfigurationSchema.d.ts.map +0 -1
  56. package/dist/src/config/ConfigurationSchema.js +0 -205
  57. package/dist/src/config/ConfigurationSchema.js.map +0 -1
  58. package/dist/src/config/ServerConfiguration.d.ts +0 -47
  59. package/dist/src/config/ServerConfiguration.d.ts.map +0 -1
  60. package/dist/src/config/ServerConfiguration.js +0 -255
  61. package/dist/src/config/ServerConfiguration.js.map +0 -1
  62. package/dist/src/docs/DocumentationGenerator.d.ts +0 -185
  63. package/dist/src/docs/DocumentationGenerator.d.ts.map +0 -1
  64. package/dist/src/docs/DocumentationGenerator.js +0 -777
  65. package/dist/src/docs/DocumentationGenerator.js.map +0 -1
  66. package/dist/src/docs/MarkdownFormatter.d.ts +0 -84
  67. package/dist/src/docs/MarkdownFormatter.d.ts.map +0 -1
  68. package/dist/src/docs/MarkdownFormatter.js +0 -458
  69. package/dist/src/docs/MarkdownFormatter.js.map +0 -1
  70. package/dist/src/docs/index.d.ts +0 -8
  71. package/dist/src/docs/index.d.ts.map +0 -1
  72. package/dist/src/docs/index.js +0 -7
  73. package/dist/src/docs/index.js.map +0 -1
  74. package/dist/src/dxt-entry.d.ts +0 -6
  75. package/dist/src/dxt-entry.d.ts.map +0 -1
  76. package/dist/src/dxt-entry.js +0 -39
  77. package/dist/src/dxt-entry.js.map +0 -1
  78. package/dist/src/index.d.ts +0 -18
  79. package/dist/src/index.d.ts.map +0 -1
  80. package/dist/src/index.js +0 -143
  81. package/dist/src/index.js.map +0 -1
  82. package/dist/src/performance/MetricsCollector.d.ts +0 -145
  83. package/dist/src/performance/MetricsCollector.d.ts.map +0 -1
  84. package/dist/src/performance/MetricsCollector.js +0 -368
  85. package/dist/src/performance/MetricsCollector.js.map +0 -1
  86. package/dist/src/performance/PerformanceAnalytics.d.ts +0 -168
  87. package/dist/src/performance/PerformanceAnalytics.d.ts.map +0 -1
  88. package/dist/src/performance/PerformanceAnalytics.js +0 -570
  89. package/dist/src/performance/PerformanceAnalytics.js.map +0 -1
  90. package/dist/src/performance/PerformanceMonitor.d.ts +0 -203
  91. package/dist/src/performance/PerformanceMonitor.d.ts.map +0 -1
  92. package/dist/src/performance/PerformanceMonitor.js +0 -478
  93. package/dist/src/performance/PerformanceMonitor.js.map +0 -1
  94. package/dist/src/performance/index.d.ts +0 -11
  95. package/dist/src/performance/index.d.ts.map +0 -1
  96. package/dist/src/performance/index.js +0 -8
  97. package/dist/src/performance/index.js.map +0 -1
  98. package/dist/src/security/AISecurityScanner.d.ts +0 -176
  99. package/dist/src/security/AISecurityScanner.d.ts.map +0 -1
  100. package/dist/src/security/AISecurityScanner.js +0 -655
  101. package/dist/src/security/AISecurityScanner.js.map +0 -1
  102. package/dist/src/security/AutomatedRemediation.d.ts +0 -146
  103. package/dist/src/security/AutomatedRemediation.d.ts.map +0 -1
  104. package/dist/src/security/AutomatedRemediation.js +0 -566
  105. package/dist/src/security/AutomatedRemediation.js.map +0 -1
  106. package/dist/src/security/InputValidator.d.ts +0 -219
  107. package/dist/src/security/InputValidator.d.ts.map +0 -1
  108. package/dist/src/security/InputValidator.js +0 -295
  109. package/dist/src/security/InputValidator.js.map +0 -1
  110. package/dist/src/security/SecurityCIPipeline.d.ts +0 -213
  111. package/dist/src/security/SecurityCIPipeline.d.ts.map +0 -1
  112. package/dist/src/security/SecurityCIPipeline.js +0 -693
  113. package/dist/src/security/SecurityCIPipeline.js.map +0 -1
  114. package/dist/src/security/SecurityConfig.d.ts +0 -129
  115. package/dist/src/security/SecurityConfig.d.ts.map +0 -1
  116. package/dist/src/security/SecurityConfig.js +0 -266
  117. package/dist/src/security/SecurityConfig.js.map +0 -1
  118. package/dist/src/security/SecurityConfigManager.d.ts +0 -294
  119. package/dist/src/security/SecurityConfigManager.d.ts.map +0 -1
  120. package/dist/src/security/SecurityConfigManager.js +0 -558
  121. package/dist/src/security/SecurityConfigManager.js.map +0 -1
  122. package/dist/src/security/SecurityMonitoring.d.ts +0 -245
  123. package/dist/src/security/SecurityMonitoring.d.ts.map +0 -1
  124. package/dist/src/security/SecurityMonitoring.js +0 -598
  125. package/dist/src/security/SecurityMonitoring.js.map +0 -1
  126. package/dist/src/security/SecurityReviewer.d.ts +0 -168
  127. package/dist/src/security/SecurityReviewer.d.ts.map +0 -1
  128. package/dist/src/security/SecurityReviewer.js +0 -686
  129. package/dist/src/security/SecurityReviewer.js.map +0 -1
  130. package/dist/src/security/index.d.ts +0 -183
  131. package/dist/src/security/index.d.ts.map +0 -1
  132. package/dist/src/security/index.js +0 -218
  133. package/dist/src/security/index.js.map +0 -1
  134. package/dist/src/server/ConnectionTester.d.ts +0 -32
  135. package/dist/src/server/ConnectionTester.d.ts.map +0 -1
  136. package/dist/src/server/ConnectionTester.js +0 -135
  137. package/dist/src/server/ConnectionTester.js.map +0 -1
  138. package/dist/src/server/ToolRegistry.d.ts +0 -50
  139. package/dist/src/server/ToolRegistry.d.ts.map +0 -1
  140. package/dist/src/server/ToolRegistry.js +0 -219
  141. package/dist/src/server/ToolRegistry.js.map +0 -1
  142. package/dist/src/server.d.ts +0 -7
  143. package/dist/src/server.d.ts.map +0 -1
  144. package/dist/src/server.js +0 -7
  145. package/dist/src/server.js.map +0 -1
  146. package/dist/src/tools/BaseToolManager.d.ts +0 -62
  147. package/dist/src/tools/BaseToolManager.d.ts.map +0 -1
  148. package/dist/src/tools/BaseToolManager.js +0 -195
  149. package/dist/src/tools/BaseToolManager.js.map +0 -1
  150. package/dist/src/tools/auth.d.ts +0 -50
  151. package/dist/src/tools/auth.d.ts.map +0 -1
  152. package/dist/src/tools/auth.js +0 -133
  153. package/dist/src/tools/auth.js.map +0 -1
  154. package/dist/src/tools/cache.d.ts +0 -260
  155. package/dist/src/tools/cache.d.ts.map +0 -1
  156. package/dist/src/tools/cache.js +0 -232
  157. package/dist/src/tools/cache.js.map +0 -1
  158. package/dist/src/tools/comments.d.ts +0 -33
  159. package/dist/src/tools/comments.d.ts.map +0 -1
  160. package/dist/src/tools/comments.js +0 -235
  161. package/dist/src/tools/comments.js.map +0 -1
  162. package/dist/src/tools/index.d.ts +0 -11
  163. package/dist/src/tools/index.d.ts.map +0 -1
  164. package/dist/src/tools/index.js +0 -11
  165. package/dist/src/tools/index.js.map +0 -1
  166. package/dist/src/tools/media.d.ts +0 -70
  167. package/dist/src/tools/media.d.ts.map +0 -1
  168. package/dist/src/tools/media.js +0 -248
  169. package/dist/src/tools/media.js.map +0 -1
  170. package/dist/src/tools/pages.d.ts +0 -32
  171. package/dist/src/tools/pages.d.ts.map +0 -1
  172. package/dist/src/tools/pages.js +0 -215
  173. package/dist/src/tools/pages.js.map +0 -1
  174. package/dist/src/tools/performance.d.ts +0 -73
  175. package/dist/src/tools/performance.d.ts.map +0 -1
  176. package/dist/src/tools/performance.js +0 -922
  177. package/dist/src/tools/performance.js.map +0 -1
  178. package/dist/src/tools/posts/PostHandlers.d.ts +0 -46
  179. package/dist/src/tools/posts/PostHandlers.d.ts.map +0 -1
  180. package/dist/src/tools/posts/PostHandlers.js +0 -400
  181. package/dist/src/tools/posts/PostHandlers.js.map +0 -1
  182. package/dist/src/tools/posts/PostToolDefinitions.d.ts +0 -37
  183. package/dist/src/tools/posts/PostToolDefinitions.d.ts.map +0 -1
  184. package/dist/src/tools/posts/PostToolDefinitions.js +0 -236
  185. package/dist/src/tools/posts/PostToolDefinitions.js.map +0 -1
  186. package/dist/src/tools/posts/index.d.ts +0 -138
  187. package/dist/src/tools/posts/index.d.ts.map +0 -1
  188. package/dist/src/tools/posts/index.js +0 -163
  189. package/dist/src/tools/posts/index.js.map +0 -1
  190. package/dist/src/tools/posts.d.ts +0 -15
  191. package/dist/src/tools/posts.d.ts.map +0 -1
  192. package/dist/src/tools/posts.js +0 -16
  193. package/dist/src/tools/posts.js.map +0 -1
  194. package/dist/src/tools/site.d.ts +0 -32
  195. package/dist/src/tools/site.d.ts.map +0 -1
  196. package/dist/src/tools/site.js +0 -234
  197. package/dist/src/tools/site.js.map +0 -1
  198. package/dist/src/tools/taxonomies.d.ts +0 -36
  199. package/dist/src/tools/taxonomies.d.ts.map +0 -1
  200. package/dist/src/tools/taxonomies.js +0 -286
  201. package/dist/src/tools/taxonomies.js.map +0 -1
  202. package/dist/src/tools/users.d.ts +0 -33
  203. package/dist/src/tools/users.d.ts.map +0 -1
  204. package/dist/src/tools/users.js +0 -308
  205. package/dist/src/tools/users.js.map +0 -1
  206. package/dist/src/types/client.d.ts +0 -223
  207. package/dist/src/types/client.d.ts.map +0 -1
  208. package/dist/src/types/client.js +0 -97
  209. package/dist/src/types/client.js.map +0 -1
  210. package/dist/src/types/enhanced.d.ts +0 -237
  211. package/dist/src/types/enhanced.d.ts.map +0 -1
  212. package/dist/src/types/enhanced.js +0 -49
  213. package/dist/src/types/enhanced.js.map +0 -1
  214. package/dist/src/types/index.d.ts +0 -160
  215. package/dist/src/types/index.d.ts.map +0 -1
  216. package/dist/src/types/index.js +0 -14
  217. package/dist/src/types/index.js.map +0 -1
  218. package/dist/src/types/mcp.d.ts +0 -178
  219. package/dist/src/types/mcp.d.ts.map +0 -1
  220. package/dist/src/types/mcp.js +0 -7
  221. package/dist/src/types/mcp.js.map +0 -1
  222. package/dist/src/types/requests.d.ts +0 -322
  223. package/dist/src/types/requests.d.ts.map +0 -1
  224. package/dist/src/types/requests.js +0 -8
  225. package/dist/src/types/requests.js.map +0 -1
  226. package/dist/src/types/tools.d.ts +0 -506
  227. package/dist/src/types/tools.d.ts.map +0 -1
  228. package/dist/src/types/tools.js +0 -8
  229. package/dist/src/types/tools.js.map +0 -1
  230. package/dist/src/types/wordpress.d.ts +0 -471
  231. package/dist/src/types/wordpress.d.ts.map +0 -1
  232. package/dist/src/types/wordpress.js +0 -14
  233. package/dist/src/types/wordpress.js.map +0 -1
  234. package/dist/src/utils/debug.d.ts +0 -71
  235. package/dist/src/utils/debug.d.ts.map +0 -1
  236. package/dist/src/utils/debug.js +0 -235
  237. package/dist/src/utils/debug.js.map +0 -1
  238. package/dist/src/utils/enhancedError.d.ts +0 -61
  239. package/dist/src/utils/enhancedError.d.ts.map +0 -1
  240. package/dist/src/utils/enhancedError.js +0 -221
  241. package/dist/src/utils/enhancedError.js.map +0 -1
  242. package/dist/src/utils/error.d.ts +0 -17
  243. package/dist/src/utils/error.d.ts.map +0 -1
  244. package/dist/src/utils/error.js +0 -108
  245. package/dist/src/utils/error.js.map +0 -1
  246. package/dist/src/utils/logger.d.ts +0 -106
  247. package/dist/src/utils/logger.d.ts.map +0 -1
  248. package/dist/src/utils/logger.js +0 -280
  249. package/dist/src/utils/logger.js.map +0 -1
  250. package/dist/src/utils/streaming.d.ts +0 -104
  251. package/dist/src/utils/streaming.d.ts.map +0 -1
  252. package/dist/src/utils/streaming.js +0 -331
  253. package/dist/src/utils/streaming.js.map +0 -1
  254. package/dist/src/utils/toolWrapper.d.ts +0 -42
  255. package/dist/src/utils/toolWrapper.d.ts.map +0 -1
  256. package/dist/src/utils/toolWrapper.js +0 -101
  257. package/dist/src/utils/toolWrapper.js.map +0 -1
  258. package/dist/src/utils/validation/core.d.ts +0 -21
  259. package/dist/src/utils/validation/core.d.ts.map +0 -1
  260. package/dist/src/utils/validation/core.js +0 -71
  261. package/dist/src/utils/validation/core.js.map +0 -1
  262. package/dist/src/utils/validation/index.d.ts +0 -25
  263. package/dist/src/utils/validation/index.d.ts.map +0 -1
  264. package/dist/src/utils/validation/index.js +0 -29
  265. package/dist/src/utils/validation/index.js.map +0 -1
  266. package/dist/src/utils/validation/network.d.ts +0 -19
  267. package/dist/src/utils/validation/network.d.ts.map +0 -1
  268. package/dist/src/utils/validation/network.js +0 -93
  269. package/dist/src/utils/validation/network.js.map +0 -1
  270. package/dist/src/utils/validation/rateLimit.d.ts +0 -21
  271. package/dist/src/utils/validation/rateLimit.d.ts.map +0 -1
  272. package/dist/src/utils/validation/rateLimit.js +0 -43
  273. package/dist/src/utils/validation/rateLimit.js.map +0 -1
  274. package/dist/src/utils/validation/security.d.ts +0 -29
  275. package/dist/src/utils/validation/security.d.ts.map +0 -1
  276. package/dist/src/utils/validation/security.js +0 -327
  277. package/dist/src/utils/validation/security.js.map +0 -1
  278. package/dist/src/utils/validation/wordpress.d.ts +0 -31
  279. package/dist/src/utils/validation/wordpress.d.ts.map +0 -1
  280. package/dist/src/utils/validation/wordpress.js +0 -146
  281. package/dist/src/utils/validation/wordpress.js.map +0 -1
  282. package/dist/src/utils/validation.d.ts +0 -15
  283. package/dist/src/utils/validation.d.ts.map +0 -1
  284. package/dist/src/utils/validation.js +0 -27
  285. package/dist/src/utils/validation.js.map +0 -1
  286. package/dist/tests/vitest.setup.d.ts +0 -6
  287. package/dist/tests/vitest.setup.d.ts.map +0 -1
  288. package/dist/tests/vitest.setup.js +0 -39
  289. package/dist/tests/vitest.setup.js.map +0 -1
@@ -1,371 +0,0 @@
1
- import { WordPressClient } from "./api.js";
2
- import { LoggerFactory } from "../utils/logger.js";
3
- /**
4
- * Mock WordPress client for CI environments
5
- * Provides realistic responses without connecting to actual WordPress
6
- */
7
- export class MockWordPressClient extends WordPressClient {
8
- isMockMode = true;
9
- logger = LoggerFactory.api("mock");
10
- constructor(config) {
11
- super(config);
12
- }
13
- /**
14
- * Override authenticate to not make actual requests
15
- */
16
- async authenticate() {
17
- this.logger.info("Mock authentication - skipping actual connection");
18
- return true;
19
- }
20
- /**
21
- * Mock getPosts with realistic data
22
- */
23
- async getPosts(params) {
24
- const mockPosts = [
25
- {
26
- id: 1,
27
- date: "2024-01-15T10:00:00",
28
- date_gmt: "2024-01-15T10:00:00",
29
- guid: { rendered: "https://demo.wordpress.com/?p=1" },
30
- modified: "2024-01-15T10:00:00",
31
- modified_gmt: "2024-01-15T10:00:00",
32
- slug: "hello-world",
33
- status: "publish",
34
- type: "post",
35
- link: "https://demo.wordpress.com/hello-world/",
36
- title: { rendered: "Hello World - Demo Post" },
37
- content: { rendered: "<p>This is a demo post for CI testing.</p>" },
38
- excerpt: { rendered: "<p>This is a demo post for CI testing.</p>" },
39
- author: 1,
40
- featured_media: 0,
41
- comment_status: "open",
42
- ping_status: "open",
43
- sticky: false,
44
- template: "",
45
- format: "standard",
46
- meta: [],
47
- categories: [1],
48
- tags: [],
49
- },
50
- {
51
- id: 2,
52
- date: "2024-01-16T12:00:00",
53
- date_gmt: "2024-01-16T12:00:00",
54
- guid: { rendered: "https://demo.wordpress.com/?p=2" },
55
- modified: "2024-01-16T12:00:00",
56
- modified_gmt: "2024-01-16T12:00:00",
57
- slug: "sample-post",
58
- status: "publish",
59
- type: "post",
60
- link: "https://demo.wordpress.com/sample-post/",
61
- title: { rendered: "Sample Post for Testing" },
62
- content: { rendered: "<p>This is another demo post with sample content.</p>" },
63
- excerpt: { rendered: "<p>This is another demo post with sample content.</p>" },
64
- author: 1,
65
- featured_media: 0,
66
- comment_status: "open",
67
- ping_status: "open",
68
- sticky: false,
69
- template: "",
70
- format: "standard",
71
- meta: [],
72
- categories: [1],
73
- tags: [1],
74
- },
75
- {
76
- id: 3,
77
- date: "2024-01-17T14:30:00",
78
- date_gmt: "2024-01-17T14:30:00",
79
- guid: { rendered: "https://demo.wordpress.com/?p=3" },
80
- modified: "2024-01-17T14:30:00",
81
- modified_gmt: "2024-01-17T14:30:00",
82
- slug: "latest-news",
83
- status: "publish",
84
- type: "post",
85
- link: "https://demo.wordpress.com/latest-news/",
86
- title: { rendered: "Latest News Update" },
87
- content: { rendered: "<p>This is the latest news update for demonstration.</p>" },
88
- excerpt: { rendered: "<p>This is the latest news update for demonstration.</p>" },
89
- author: 1,
90
- featured_media: 0,
91
- comment_status: "open",
92
- ping_status: "open",
93
- sticky: false,
94
- template: "",
95
- format: "standard",
96
- meta: [],
97
- categories: [1, 2],
98
- tags: [1, 2],
99
- },
100
- ];
101
- // Apply basic filtering based on params
102
- let filteredPosts = mockPosts;
103
- if (params?.per_page) {
104
- filteredPosts = filteredPosts.slice(0, parseInt(params.per_page.toString()));
105
- }
106
- return filteredPosts;
107
- }
108
- /**
109
- * Mock getPost with realistic data
110
- */
111
- async getPost(id) {
112
- if (id === 999999) {
113
- throw new Error("Invalid post ID.");
114
- }
115
- const mockPost = {
116
- id: id,
117
- date: "2024-01-15T10:00:00",
118
- date_gmt: "2024-01-15T10:00:00",
119
- guid: { rendered: `https://demo.wordpress.com/?p=${id}` },
120
- modified: "2024-01-15T10:00:00",
121
- modified_gmt: "2024-01-15T10:00:00",
122
- slug: `demo-post-${id}`,
123
- status: "publish",
124
- type: "post",
125
- link: `https://demo.wordpress.com/demo-post-${id}/`,
126
- title: { rendered: `Demo Post ${id}` },
127
- content: { rendered: `<p>This is demo content for post ${id}.</p>` },
128
- excerpt: { rendered: `<p>This is demo content for post ${id}.</p>` },
129
- author: 1,
130
- featured_media: 0,
131
- comment_status: "open",
132
- ping_status: "open",
133
- sticky: false,
134
- template: "",
135
- format: "standard",
136
- meta: [],
137
- categories: [1],
138
- tags: [],
139
- };
140
- return mockPost;
141
- }
142
- /**
143
- * Mock getCurrentUser with realistic data
144
- */
145
- async getCurrentUser() {
146
- const mockUser = {
147
- id: 1,
148
- name: "CI Demo User",
149
- username: "ci-demo-user",
150
- first_name: "CI",
151
- last_name: "Demo",
152
- slug: "ci-demo-user",
153
- email: "demo@example.com",
154
- url: "https://demo.wordpress.com",
155
- description: "Demo user for CI testing",
156
- link: "https://demo.wordpress.com/author/ci-demo-user/",
157
- locale: "en_US",
158
- nickname: "CI Demo",
159
- registered_date: "2024-01-01T00:00:00+00:00",
160
- roles: ["administrator"],
161
- capabilities: {
162
- read: true,
163
- level_0: true,
164
- level_1: true,
165
- level_2: true,
166
- level_3: true,
167
- level_4: true,
168
- level_5: true,
169
- level_6: true,
170
- level_7: true,
171
- level_8: true,
172
- level_9: true,
173
- level_10: true,
174
- delete_others_pages: true,
175
- delete_others_posts: true,
176
- delete_pages: true,
177
- delete_posts: true,
178
- delete_private_pages: true,
179
- delete_private_posts: true,
180
- delete_published_pages: true,
181
- delete_published_posts: true,
182
- edit_dashboard: true,
183
- edit_others_pages: true,
184
- edit_others_posts: true,
185
- edit_pages: true,
186
- edit_posts: true,
187
- edit_private_pages: true,
188
- edit_private_posts: true,
189
- edit_published_pages: true,
190
- edit_published_posts: true,
191
- edit_theme_options: true,
192
- export: true,
193
- import: true,
194
- list_users: true,
195
- manage_categories: true,
196
- manage_links: true,
197
- manage_options: true,
198
- moderate_comments: true,
199
- promote_users: true,
200
- publish_pages: true,
201
- publish_posts: true,
202
- read_private_pages: true,
203
- read_private_posts: true,
204
- remove_users: true,
205
- switch_themes: true,
206
- upload_files: true,
207
- customize: true,
208
- delete_site: true,
209
- },
210
- extra_capabilities: {
211
- administrator: true,
212
- },
213
- avatar_urls: {
214
- "24": "https://secure.gravatar.com/avatar/example?s=24&d=mm&r=g",
215
- "48": "https://secure.gravatar.com/avatar/example?s=48&d=mm&r=g",
216
- "96": "https://secure.gravatar.com/avatar/example?s=96&d=mm&r=g",
217
- },
218
- meta: [],
219
- };
220
- return mockUser;
221
- }
222
- /**
223
- * Mock getSiteSettings with realistic data
224
- */
225
- async getSiteSettings() {
226
- const mockSettings = {
227
- title: "Demo WordPress Site",
228
- description: "A demonstration site for CI testing",
229
- url: "https://demo.wordpress.com",
230
- email: "admin@demo.wordpress.com",
231
- timezone: "UTC",
232
- date_format: "F j, Y",
233
- time_format: "g:i a",
234
- start_of_week: 1,
235
- language: "en_US",
236
- use_smilies: true,
237
- default_category: 1,
238
- default_post_format: "0",
239
- posts_per_page: 10,
240
- default_ping_status: "open",
241
- default_comment_status: "open",
242
- };
243
- return mockSettings;
244
- }
245
- /**
246
- * Mock createPost
247
- */
248
- async createPost(data) {
249
- const mockPost = {
250
- id: Math.floor(Math.random() * 1000) + 100,
251
- date: new Date().toISOString(),
252
- date_gmt: new Date().toISOString(),
253
- guid: { rendered: `https://demo.wordpress.com/?p=${Math.floor(Math.random() * 1000) + 100}` },
254
- modified: new Date().toISOString(),
255
- modified_gmt: new Date().toISOString(),
256
- slug: data.title?.toLowerCase().replace(/\s+/g, "-") || "new-post",
257
- status: data.status || "publish",
258
- type: "post",
259
- link: `https://demo.wordpress.com/${data.title?.toLowerCase().replace(/\s+/g, "-") || "new-post"}/`,
260
- title: { rendered: data.title || "New Post" },
261
- content: { rendered: data.content || "<p>New post content</p>" },
262
- excerpt: { rendered: data.excerpt || "<p>New post excerpt</p>" },
263
- author: 1,
264
- featured_media: 0,
265
- comment_status: "open",
266
- ping_status: "open",
267
- sticky: false,
268
- template: "",
269
- format: "standard",
270
- meta: [],
271
- categories: [1],
272
- tags: [],
273
- };
274
- return mockPost;
275
- }
276
- /**
277
- * Mock updatePost
278
- */
279
- async updatePost(data) {
280
- const mockPost = {
281
- id: data.id,
282
- date: "2024-01-15T10:00:00",
283
- date_gmt: "2024-01-15T10:00:00",
284
- guid: { rendered: `https://demo.wordpress.com/?p=${data.id}` },
285
- modified: new Date().toISOString(),
286
- modified_gmt: new Date().toISOString(),
287
- slug: data.title?.toLowerCase().replace(/\s+/g, "-") || `post-${data.id}`,
288
- status: data.status || "publish",
289
- type: "post",
290
- link: `https://demo.wordpress.com/${data.title?.toLowerCase().replace(/\s+/g, "-") || `post-${data.id}`}/`,
291
- title: { rendered: data.title || `Updated Post ${data.id}` },
292
- content: { rendered: data.content || "<p>Updated content</p>" },
293
- excerpt: { rendered: data.excerpt || "<p>Updated excerpt</p>" },
294
- author: 1,
295
- featured_media: 0,
296
- comment_status: "open",
297
- ping_status: "open",
298
- sticky: false,
299
- template: "",
300
- format: "standard",
301
- meta: [],
302
- categories: [1],
303
- tags: [],
304
- };
305
- return mockPost;
306
- }
307
- /**
308
- * Mock search
309
- */
310
- async search(query, types, subtype) {
311
- if (!query) {
312
- return [];
313
- }
314
- return [
315
- {
316
- id: 1,
317
- title: `Search Result for "${query}"`,
318
- url: `https://demo.wordpress.com/search-result-1/`,
319
- type: "post",
320
- subtype: "post",
321
- },
322
- {
323
- id: 2,
324
- title: `Another result for "${query}"`,
325
- url: `https://demo.wordpress.com/search-result-2/`,
326
- type: "post",
327
- subtype: "post",
328
- },
329
- ];
330
- }
331
- /**
332
- * Mock deletePost
333
- */
334
- async deletePost(id, force = false) {
335
- return {
336
- deleted: true,
337
- previous: {
338
- id,
339
- date: "2024-01-15T10:00:00",
340
- date_gmt: "2024-01-15T10:00:00",
341
- guid: { rendered: `https://demo.wordpress.com/?p=${id}` },
342
- modified: "2024-01-15T10:00:00",
343
- modified_gmt: "2024-01-15T10:00:00",
344
- slug: `deleted-post-${id}`,
345
- status: "trash",
346
- type: "post",
347
- link: `https://demo.wordpress.com/deleted-post-${id}/`,
348
- title: { rendered: `Deleted Post ${id}` },
349
- content: { rendered: `<p>This post was deleted.</p>` },
350
- excerpt: { rendered: `<p>This post was deleted.</p>` },
351
- author: 1,
352
- featured_media: 0,
353
- comment_status: "open",
354
- ping_status: "open",
355
- sticky: false,
356
- template: "",
357
- format: "standard",
358
- meta: [],
359
- categories: [1],
360
- tags: [],
361
- },
362
- };
363
- }
364
- /**
365
- * Override getSiteUrl to return mock URL
366
- */
367
- getSiteUrl() {
368
- return "https://demo.wordpress.com";
369
- }
370
- }
371
- //# sourceMappingURL=MockWordPressClient.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MockWordPressClient.js","sourceRoot":"","sources":["../../../src/client/MockWordPressClient.ts"],"names":[],"mappings":"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"}
@@ -1,235 +0,0 @@
1
- /**
2
- * WordPress API Client
3
- * Handles all REST API communication with WordPress
4
- */
5
- import type { IWordPressClient, WordPressClientConfig, HTTPMethod, RequestOptions, ClientStats } from "../types/client.js";
6
- import type { WordPressPost, WordPressPage, WordPressMedia, WordPressUser, WordPressComment, WordPressCategory, WordPressTag, WordPressSiteSettings, WordPressApplicationPassword, PostQueryParams, MediaQueryParams, UserQueryParams, CommentQueryParams, CreatePostRequest, UpdatePostRequest, CreatePageRequest, UpdatePageRequest, CreateUserRequest, UpdateUserRequest, CreateCommentRequest, UpdateCommentRequest, CreateCategoryRequest, UpdateCategoryRequest, CreateTagRequest, UpdateTagRequest, UploadMediaRequest, UpdateMediaRequest, WordPressSiteInfo, WordPressSearchResult } from "../types/wordpress.js";
7
- /**
8
- * WordPress REST API Client
9
- *
10
- * A comprehensive client for interacting with the WordPress REST API v2.
11
- * Provides full CRUD operations for posts, pages, media, users, comments,
12
- * categories, tags, and site settings with robust error handling and performance optimization.
13
- *
14
- * Features:
15
- * - Multiple authentication methods (App Passwords, JWT, Basic Auth, API Key)
16
- * - Automatic retry logic with exponential backoff
17
- * - Request rate limiting and queue management
18
- * - Comprehensive error handling with detailed messages
19
- * - Performance monitoring and request statistics
20
- * - Caching support for improved performance
21
- * - Multi-site configuration support
22
- *
23
- * @example
24
- * ```typescript
25
- * // Initialize with app password authentication
26
- * const client = new WordPressClient({
27
- * baseUrl: 'https://mysite.com',
28
- * auth: {
29
- * method: 'app-password',
30
- * username: 'admin',
31
- * password: 'xxxx xxxx xxxx xxxx xxxx xxxx'
32
- * }
33
- * });
34
- *
35
- * // Create a new post
36
- * const post = await client.createPost({
37
- * title: 'My New Post',
38
- * content: '<p>This is the content</p>',
39
- * status: 'publish'
40
- * });
41
- *
42
- * // List posts with filtering
43
- * const posts = await client.getPosts({
44
- * search: 'WordPress',
45
- * status: 'publish',
46
- * per_page: 10
47
- * });
48
- * ```
49
- *
50
- * @since 1.0.0
51
- * @author MCP WordPress Team
52
- * @implements {IWordPressClient}
53
- */
54
- export declare class WordPressClient implements IWordPressClient {
55
- private baseUrl;
56
- private apiUrl;
57
- private timeout;
58
- private maxRetries;
59
- private auth;
60
- private requestQueue;
61
- private lastRequestTime;
62
- private requestInterval;
63
- private authenticated;
64
- private jwtToken;
65
- private _stats;
66
- /**
67
- * Creates a new WordPress API client instance.
68
- *
69
- * Initializes the client with configuration options for connecting to a WordPress site.
70
- * Supports multiple authentication methods and automatic environment variable detection.
71
- *
72
- * @param {Partial<WordPressClientConfig>} [options={}] - Configuration options for the client
73
- * @param {string} [options.baseUrl] - WordPress site URL (falls back to WORDPRESS_SITE_URL env var)
74
- * @param {number} [options.timeout=30000] - Request timeout in milliseconds
75
- * @param {number} [options.maxRetries=3] - Maximum number of retry attempts for failed requests
76
- * @param {AuthConfig} [options.auth] - Authentication configuration (auto-detected from env if not provided)
77
- * @param {boolean} [options.enableCache=true] - Whether to enable response caching
78
- * @param {number} [options.cacheMaxAge=300000] - Cache max age in milliseconds (5 minutes default)
79
- *
80
- * @example
81
- * ```typescript
82
- * // Basic configuration with app password
83
- * const client = new WordPressClient({
84
- * baseUrl: 'https://mysite.com',
85
- * auth: {
86
- * method: 'app-password',
87
- * username: 'admin',
88
- * password: 'xxxx xxxx xxxx xxxx xxxx xxxx'
89
- * }
90
- * });
91
- *
92
- * // Configuration with environment variables
93
- * // Set WORDPRESS_SITE_URL, WORDPRESS_USERNAME, WORDPRESS_APP_PASSWORD
94
- * const client = new WordPressClient(); // Auto-detects from env
95
- *
96
- * // Custom timeout and retry settings
97
- * const client = new WordPressClient({
98
- * baseUrl: 'https://mysite.com',
99
- * timeout: 60000, // 60 seconds
100
- * maxRetries: 5, // 5 retry attempts
101
- * auth: { method: 'app-password', username: 'user', password: 'pass' }
102
- * });
103
- * ```
104
- *
105
- * @throws {Error} When required configuration is missing or invalid
106
- *
107
- * @since 1.0.0
108
- */
109
- constructor(options?: Partial<WordPressClientConfig>);
110
- get config(): WordPressClientConfig;
111
- get isAuthenticated(): boolean;
112
- get stats(): ClientStats;
113
- getSiteUrl(): string;
114
- /**
115
- * Validate and sanitize URL for security
116
- */
117
- private validateAndSanitizeUrl;
118
- private getAuthFromEnv;
119
- private validateConfig;
120
- initialize(): Promise<void>;
121
- disconnect(): Promise<void>;
122
- /**
123
- * Add authentication headers to request
124
- */
125
- private addAuthHeaders;
126
- /**
127
- * Rate limiting implementation
128
- */
129
- private rateLimit;
130
- /**
131
- * Delay utility
132
- */
133
- private delay;
134
- authenticate(): Promise<boolean>;
135
- /**
136
- * Authenticate using Basic/Application Password
137
- */
138
- private authenticateWithBasic;
139
- /**
140
- * Authenticate using JWT
141
- */
142
- private authenticateWithJWT;
143
- /**
144
- * Authenticate using Cookie
145
- */
146
- private authenticateWithCookie;
147
- /**
148
- * Make authenticated request to WordPress REST API
149
- */
150
- request<T = unknown>(method: HTTPMethod, endpoint: string, data?: unknown, options?: RequestOptions): Promise<T>;
151
- private updateAverageResponseTime;
152
- get<T = unknown>(endpoint: string, options?: RequestOptions): Promise<T>;
153
- post<T = unknown>(endpoint: string, data?: unknown, options?: RequestOptions): Promise<T>;
154
- put<T = unknown>(endpoint: string, data?: unknown, options?: RequestOptions): Promise<T>;
155
- patch<T = unknown>(endpoint: string, data?: unknown, options?: RequestOptions): Promise<T>;
156
- delete<T = unknown>(endpoint: string, options?: RequestOptions): Promise<T>;
157
- getPosts(params?: PostQueryParams): Promise<WordPressPost[]>;
158
- getPost(id: number, context?: "view" | "embed" | "edit"): Promise<WordPressPost>;
159
- createPost(data: CreatePostRequest): Promise<WordPressPost>;
160
- updatePost(data: UpdatePostRequest): Promise<WordPressPost>;
161
- deletePost(id: number, force?: boolean): Promise<{
162
- deleted: boolean;
163
- previous?: WordPressPost;
164
- }>;
165
- getPostRevisions(id: number): Promise<WordPressPost[]>;
166
- getPages(params?: PostQueryParams): Promise<WordPressPage[]>;
167
- getPage(id: number, context?: "view" | "embed" | "edit"): Promise<WordPressPage>;
168
- createPage(data: CreatePageRequest): Promise<WordPressPage>;
169
- updatePage(data: UpdatePageRequest): Promise<WordPressPage>;
170
- deletePage(id: number, force?: boolean): Promise<{
171
- deleted: boolean;
172
- previous?: WordPressPage;
173
- }>;
174
- getPageRevisions(id: number): Promise<WordPressPage[]>;
175
- getMedia(params?: MediaQueryParams): Promise<WordPressMedia[]>;
176
- getMediaItem(id: number, context?: "view" | "embed" | "edit"): Promise<WordPressMedia>;
177
- uploadMedia(data: UploadMediaRequest): Promise<WordPressMedia>;
178
- uploadFile(fileData: Buffer, filename: string, mimeType: string, meta?: Partial<UploadMediaRequest>, options?: RequestOptions): Promise<WordPressMedia>;
179
- updateMedia(data: UpdateMediaRequest): Promise<WordPressMedia>;
180
- deleteMedia(id: number, force?: boolean): Promise<{
181
- deleted: boolean;
182
- previous?: WordPressMedia;
183
- }>;
184
- getUsers(params?: UserQueryParams): Promise<WordPressUser[]>;
185
- getUser(id: number | "me", context?: "view" | "embed" | "edit"): Promise<WordPressUser>;
186
- createUser(data: CreateUserRequest): Promise<WordPressUser>;
187
- updateUser(data: UpdateUserRequest): Promise<WordPressUser>;
188
- deleteUser(id: number, reassign?: number): Promise<{
189
- deleted: boolean;
190
- previous?: WordPressUser;
191
- }>;
192
- getCurrentUser(): Promise<WordPressUser>;
193
- getComments(params?: CommentQueryParams): Promise<WordPressComment[]>;
194
- getComment(id: number, context?: "view" | "embed" | "edit"): Promise<WordPressComment>;
195
- createComment(data: CreateCommentRequest): Promise<WordPressComment>;
196
- updateComment(data: UpdateCommentRequest): Promise<WordPressComment>;
197
- deleteComment(id: number, force?: boolean): Promise<{
198
- deleted: boolean;
199
- previous?: WordPressComment;
200
- }>;
201
- approveComment(id: number): Promise<WordPressComment>;
202
- rejectComment(id: number): Promise<WordPressComment>;
203
- spamComment(id: number): Promise<WordPressComment>;
204
- getCategories(params?: Record<string, string | number | boolean>): Promise<WordPressCategory[]>;
205
- getCategory(id: number): Promise<WordPressCategory>;
206
- createCategory(data: CreateCategoryRequest): Promise<WordPressCategory>;
207
- updateCategory(data: UpdateCategoryRequest): Promise<WordPressCategory>;
208
- deleteCategory(id: number, force?: boolean): Promise<{
209
- deleted: boolean;
210
- previous?: WordPressCategory;
211
- }>;
212
- getTags(params?: Record<string, string | number | boolean>): Promise<WordPressTag[]>;
213
- getTag(id: number): Promise<WordPressTag>;
214
- createTag(data: CreateTagRequest): Promise<WordPressTag>;
215
- updateTag(data: UpdateTagRequest): Promise<WordPressTag>;
216
- deleteTag(id: number, force?: boolean): Promise<{
217
- deleted: boolean;
218
- previous?: WordPressTag;
219
- }>;
220
- getSiteSettings(): Promise<WordPressSiteSettings>;
221
- updateSiteSettings(settings: Partial<WordPressSiteSettings>): Promise<WordPressSiteSettings>;
222
- getSiteInfo(): Promise<WordPressSiteInfo>;
223
- getApplicationPasswords(userId?: number | "me"): Promise<WordPressApplicationPassword[]>;
224
- createApplicationPassword(userId: number | "me", name: string, appId?: string): Promise<WordPressApplicationPassword>;
225
- deleteApplicationPassword(userId: number | "me", uuid: string): Promise<{
226
- deleted: boolean;
227
- }>;
228
- search(query: string, types?: string[], subtype?: string): Promise<WordPressSearchResult[]>;
229
- ping(): Promise<boolean>;
230
- getServerInfo(): Promise<Record<string, unknown>>;
231
- validateEndpoint(endpoint: string): boolean;
232
- buildUrl(endpoint: string, params?: Record<string, unknown>): string;
233
- private getMimeType;
234
- }
235
- //# sourceMappingURL=api.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../src/client/api.ts"],"names":[],"mappings":"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"}