mcp-wordpress 2.11.13 → 3.0.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/README.md +14 -29
- package/dist/cache/CacheInvalidation.js.map +1 -1
- package/dist/cache/CacheManager.d.ts +7 -0
- package/dist/cache/CacheManager.d.ts.map +1 -1
- package/dist/cache/CacheManager.js +21 -7
- package/dist/cache/CacheManager.js.map +1 -1
- package/dist/cache/HttpCacheWrapper.js.map +1 -1
- package/dist/cache/SEOCacheManager.d.ts.map +1 -1
- package/dist/cache/SEOCacheManager.js +6 -1
- package/dist/cache/SEOCacheManager.js.map +1 -1
- package/dist/cache/index.d.ts.map +1 -1
- package/dist/cache/index.js.map +1 -1
- package/dist/client/CachedWordPressClient.d.ts.map +1 -1
- package/dist/client/CachedWordPressClient.js.map +1 -1
- package/dist/client/MockWordPressClient.d.ts.map +1 -1
- package/dist/client/MockWordPressClient.js.map +1 -1
- package/dist/client/SEOWordPressClient.d.ts.map +1 -1
- package/dist/client/SEOWordPressClient.js.map +1 -1
- package/dist/client/api.d.ts +11 -26
- package/dist/client/api.d.ts.map +1 -1
- package/dist/client/api.js +111 -203
- package/dist/client/api.js.map +1 -1
- package/dist/client/auth.d.ts.map +1 -1
- package/dist/client/auth.js.map +1 -1
- package/dist/client/managers/AuthManager.d.ts.map +1 -1
- package/dist/client/managers/RequestManager.d.ts.map +1 -1
- package/dist/client/managers/RequestManager.js +6 -5
- package/dist/client/managers/RequestManager.js.map +1 -1
- package/dist/client/managers/composed/MigrationAdapter.d.ts +3 -3
- package/dist/client/managers/composed/MigrationAdapter.d.ts.map +1 -1
- package/dist/client/managers/composed/MigrationAdapter.js +2 -2
- package/dist/client/managers/composed/MigrationAdapter.js.map +1 -1
- package/dist/client/managers/composed/index.d.ts +7 -7
- package/dist/client/managers/composed/index.d.ts.map +1 -1
- package/dist/client/managers/composed/index.js +6 -6
- package/dist/client/managers/composed/index.js.map +1 -1
- package/dist/client/managers/implementations/ConfigurationProviderImpl.d.ts +1 -1
- package/dist/client/managers/implementations/ConfigurationProviderImpl.d.ts.map +1 -1
- package/dist/client/managers/implementations/ErrorHandlerImpl.d.ts +1 -1
- package/dist/client/managers/implementations/ErrorHandlerImpl.d.ts.map +1 -1
- package/dist/client/managers/implementations/ParameterValidatorImpl.d.ts +1 -1
- package/dist/client/managers/implementations/ParameterValidatorImpl.d.ts.map +1 -1
- package/dist/client/operations/comments.d.ts +58 -0
- package/dist/client/operations/comments.d.ts.map +1 -0
- package/dist/client/operations/comments.js +74 -0
- package/dist/client/operations/comments.js.map +1 -0
- package/dist/client/operations/index.d.ts +12 -0
- package/dist/client/operations/index.d.ts.map +1 -0
- package/dist/client/operations/index.js +12 -0
- package/dist/client/operations/index.js.map +1 -0
- package/dist/client/operations/media.d.ts +55 -0
- package/dist/client/operations/media.d.ts.map +1 -0
- package/dist/client/operations/media.js +132 -0
- package/dist/client/operations/media.js.map +1 -0
- package/dist/client/operations/pages.d.ts +50 -0
- package/dist/client/operations/pages.d.ts.map +1 -0
- package/dist/client/operations/pages.js +56 -0
- package/dist/client/operations/pages.js.map +1 -0
- package/dist/client/operations/posts.d.ts +50 -0
- package/dist/client/operations/posts.d.ts.map +1 -0
- package/dist/client/operations/posts.js +53 -0
- package/dist/client/operations/posts.js.map +1 -0
- package/dist/client/operations/site.d.ts +60 -0
- package/dist/client/operations/site.d.ts.map +1 -0
- package/dist/client/operations/site.js +83 -0
- package/dist/client/operations/site.js.map +1 -0
- package/dist/client/operations/taxonomies.d.ts +69 -0
- package/dist/client/operations/taxonomies.d.ts.map +1 -0
- package/dist/client/operations/taxonomies.js +87 -0
- package/dist/client/operations/taxonomies.js.map +1 -0
- package/dist/client/operations/users.d.ts +50 -0
- package/dist/client/operations/users.d.ts.map +1 -0
- package/dist/client/operations/users.js +57 -0
- package/dist/client/operations/users.js.map +1 -0
- package/dist/config/ServerConfiguration.d.ts.map +1 -1
- package/dist/config/ServerConfiguration.js.map +1 -1
- package/dist/docs/DocumentationGenerator.js.map +1 -1
- package/dist/performance/MetricsCollector.d.ts.map +1 -1
- package/dist/performance/MetricsCollector.js.map +1 -1
- package/dist/performance/PerformanceMonitor.js.map +1 -1
- package/dist/security/AISecurityScanner.d.ts.map +1 -1
- package/dist/security/AISecurityScanner.js +3 -2
- package/dist/security/AISecurityScanner.js.map +1 -1
- package/dist/security/AutomatedRemediation.js.map +1 -1
- package/dist/security/InputValidator.d.ts.map +1 -1
- package/dist/security/InputValidator.js +30 -18
- package/dist/security/InputValidator.js.map +1 -1
- package/dist/security/SecurityCIPipeline.d.ts +19 -196
- package/dist/security/SecurityCIPipeline.d.ts.map +1 -1
- package/dist/security/SecurityCIPipeline.js +95 -639
- package/dist/security/SecurityCIPipeline.js.map +1 -1
- package/dist/security/SecurityConfig.js.map +1 -1
- package/dist/security/SecurityConfigManager.js.map +1 -1
- package/dist/security/SecurityGateExecutor.d.ts +67 -0
- package/dist/security/SecurityGateExecutor.d.ts.map +1 -0
- package/dist/security/SecurityGateExecutor.js +363 -0
- package/dist/security/SecurityGateExecutor.js.map +1 -0
- package/dist/security/SecurityMonitoring.js.map +1 -1
- package/dist/security/SecurityReportGenerator.d.ts +65 -0
- package/dist/security/SecurityReportGenerator.d.ts.map +1 -0
- package/dist/security/SecurityReportGenerator.js +210 -0
- package/dist/security/SecurityReportGenerator.js.map +1 -0
- package/dist/security/SecurityReviewer.js.map +1 -1
- package/dist/security/SecurityTypes.d.ts +188 -0
- package/dist/security/SecurityTypes.d.ts.map +1 -0
- package/dist/security/SecurityTypes.js +6 -0
- package/dist/security/SecurityTypes.js.map +1 -0
- package/dist/security/index.d.ts +5 -28
- package/dist/security/index.d.ts.map +1 -1
- package/dist/security/index.js +4 -0
- package/dist/security/index.js.map +1 -1
- package/dist/server/ConnectionTester.d.ts.map +1 -1
- package/dist/server/ConnectionTester.js.map +1 -1
- package/dist/server/ToolRegistry.d.ts.map +1 -1
- package/dist/server/ToolRegistry.js.map +1 -1
- package/dist/tools/BaseToolManager.d.ts.map +1 -1
- package/dist/tools/BaseToolManager.js.map +1 -1
- package/dist/tools/auth.d.ts.map +1 -1
- package/dist/tools/auth.js.map +1 -1
- package/dist/tools/cache.d.ts.map +1 -1
- package/dist/tools/cache.js.map +1 -1
- package/dist/tools/comments.d.ts.map +1 -1
- package/dist/tools/comments.js.map +1 -1
- package/dist/tools/media.d.ts.map +1 -1
- package/dist/tools/media.js.map +1 -1
- package/dist/tools/pages.d.ts.map +1 -1
- package/dist/tools/pages.js.map +1 -1
- package/dist/tools/performance/PerformanceHelpers.d.ts +116 -0
- package/dist/tools/performance/PerformanceHelpers.d.ts.map +1 -0
- package/dist/tools/performance/PerformanceHelpers.js +298 -0
- package/dist/tools/performance/PerformanceHelpers.js.map +1 -0
- package/dist/tools/performance/PerformanceTools.d.ts +54 -0
- package/dist/tools/performance/PerformanceTools.d.ts.map +1 -0
- package/dist/tools/performance/PerformanceTools.js +687 -0
- package/dist/tools/performance/PerformanceTools.js.map +1 -0
- package/dist/tools/performance/index.d.ts +8 -0
- package/dist/tools/performance/index.d.ts.map +1 -0
- package/dist/tools/performance/index.js +8 -0
- package/dist/tools/performance/index.js.map +1 -0
- package/dist/tools/performance.d.ts +12 -69
- package/dist/tools/performance.d.ts.map +1 -1
- package/dist/tools/performance.js +12 -920
- package/dist/tools/performance.js.map +1 -1
- package/dist/tools/posts.d.ts.map +1 -1
- package/dist/tools/seo/analyzers/ContentAnalyzer.d.ts.map +1 -1
- package/dist/tools/seo/analyzers/ContentAnalyzer.js +14 -3
- package/dist/tools/seo/analyzers/ContentAnalyzer.js.map +1 -1
- package/dist/tools/seo/auditors/SiteAuditor.d.ts.map +1 -1
- package/dist/tools/seo/auditors/SiteAuditor.js +12 -3
- package/dist/tools/seo/auditors/SiteAuditor.js.map +1 -1
- package/dist/tools/seo/generators/MetaGenerator.d.ts.map +1 -1
- package/dist/tools/seo/generators/MetaGenerator.js +25 -8
- package/dist/tools/seo/generators/MetaGenerator.js.map +1 -1
- package/dist/tools/seo/generators/SchemaGenerator.d.ts.map +1 -1
- package/dist/tools/seo/generators/SchemaGenerator.js.map +1 -1
- package/dist/tools/seo/optimizers/InternalLinkingSuggester.d.ts.map +1 -1
- package/dist/tools/seo/optimizers/InternalLinkingSuggester.js.map +1 -1
- package/dist/tools/site.d.ts.map +1 -1
- package/dist/tools/site.js.map +1 -1
- package/dist/tools/taxonomies.d.ts.map +1 -1
- package/dist/tools/taxonomies.js.map +1 -1
- package/dist/tools/users.d.ts.map +1 -1
- package/dist/tools/users.js.map +1 -1
- package/dist/utils/CircuitBreaker.d.ts +243 -0
- package/dist/utils/CircuitBreaker.d.ts.map +1 -0
- package/dist/utils/CircuitBreaker.js +456 -0
- package/dist/utils/CircuitBreaker.js.map +1 -0
- package/dist/utils/debug.d.ts.map +1 -1
- package/dist/utils/debug.js.map +1 -1
- package/dist/utils/error.js.map +1 -1
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +2 -0
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/logger.js.map +1 -1
- package/dist/utils/toolWrapper.d.ts.map +1 -1
- package/docs/DEPRECATIONS.md +157 -0
- package/package.json +2 -3
- package/src/cache/CacheInvalidation.ts +1 -1
- package/src/cache/CacheManager.ts +25 -8
- package/src/cache/HttpCacheWrapper.ts +1 -1
- package/src/cache/SEOCacheManager.ts +9 -3
- package/src/cache/index.ts +1 -1
- package/src/client/CachedWordPressClient.ts +6 -6
- package/src/client/MockWordPressClient.ts +3 -3
- package/src/client/SEOWordPressClient.ts +6 -6
- package/src/client/api.ts +129 -215
- package/src/client/auth.ts +3 -3
- package/src/client/managers/AuthManager.ts +1 -1
- package/src/client/managers/RequestManager.ts +6 -7
- package/src/client/managers/composed/MigrationAdapter.ts +4 -4
- package/src/client/managers/composed/index.ts +7 -7
- package/src/client/managers/implementations/ConfigurationProviderImpl.ts +1 -1
- package/src/client/managers/implementations/ErrorHandlerImpl.ts +1 -1
- package/src/client/managers/implementations/ParameterValidatorImpl.ts +1 -1
- package/src/client/operations/comments.ts +96 -0
- package/src/client/operations/index.ts +12 -0
- package/src/client/operations/media.ts +162 -0
- package/src/client/operations/pages.ts +71 -0
- package/src/client/operations/posts.ts +68 -0
- package/src/client/operations/site.ts +106 -0
- package/src/client/operations/taxonomies.ts +115 -0
- package/src/client/operations/users.ts +72 -0
- package/src/config/ServerConfiguration.ts +6 -6
- package/src/docs/DocumentationGenerator.ts +3 -3
- package/src/performance/MetricsCollector.ts +4 -4
- package/src/performance/PerformanceMonitor.ts +1 -1
- package/src/security/AISecurityScanner.ts +4 -3
- package/src/security/AutomatedRemediation.ts +1 -1
- package/src/security/InputValidator.ts +36 -19
- package/src/security/SecurityCIPipeline.ts +130 -953
- package/src/security/SecurityConfig.ts +1 -1
- package/src/security/SecurityConfigManager.ts +1 -1
- package/src/security/SecurityGateExecutor.ts +485 -0
- package/src/security/SecurityMonitoring.ts +1 -1
- package/src/security/SecurityReportGenerator.ts +272 -0
- package/src/security/SecurityReviewer.ts +1 -1
- package/src/security/SecurityTypes.ts +199 -0
- package/src/security/index.ts +6 -1
- package/src/server/ConnectionTester.ts +4 -4
- package/src/server/ToolRegistry.ts +6 -6
- package/src/tools/BaseToolManager.ts +2 -2
- package/src/tools/auth.ts +3 -3
- package/src/tools/cache.ts +3 -3
- package/src/tools/comments.ts +3 -3
- package/src/tools/media.ts +3 -3
- package/src/tools/pages.ts +3 -3
- package/src/tools/performance/PerformanceHelpers.ts +330 -0
- package/src/tools/performance/PerformanceTools.ts +854 -0
- package/src/tools/performance/index.ts +8 -0
- package/src/tools/performance.ts +12 -1073
- package/src/tools/posts.ts +1 -1
- package/src/tools/seo/analyzers/ContentAnalyzer.ts +21 -7
- package/src/tools/seo/auditors/SiteAuditor.ts +18 -7
- package/src/tools/seo/generators/MetaGenerator.ts +33 -12
- package/src/tools/seo/generators/SchemaGenerator.ts +3 -3
- package/src/tools/seo/optimizers/InternalLinkingSuggester.ts +4 -4
- package/src/tools/site.ts +3 -3
- package/src/tools/taxonomies.ts +3 -3
- package/src/tools/users.ts +4 -4
- package/src/utils/CircuitBreaker.ts +572 -0
- package/src/utils/debug.ts +3 -3
- package/src/utils/error.ts +1 -1
- package/src/utils/index.ts +3 -0
- package/src/utils/logger.ts +1 -1
- package/src/utils/toolWrapper.ts +2 -2
- package/docs/BRANCH_PROTECTION.md +0 -0
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Media Operations Module
|
|
3
|
+
* Handles all media-related WordPress REST API operations
|
|
4
|
+
*/
|
|
5
|
+
import FormData from "form-data";
|
|
6
|
+
import { promises as fsPromises } from "fs";
|
|
7
|
+
import * as path from "path";
|
|
8
|
+
import { debug } from "../../utils/debug.js";
|
|
9
|
+
/**
|
|
10
|
+
* Media operations mixin
|
|
11
|
+
* Provides CRUD operations for WordPress media
|
|
12
|
+
*/
|
|
13
|
+
export class MediaOperations {
|
|
14
|
+
client;
|
|
15
|
+
constructor(client) {
|
|
16
|
+
this.client = client;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Get a list of media items with optional filtering
|
|
20
|
+
*/
|
|
21
|
+
async getMedia(params) {
|
|
22
|
+
const normalizedParams = params
|
|
23
|
+
? Object.fromEntries(Object.entries(params).map(([k, v]) => [k, String(v)]))
|
|
24
|
+
: undefined;
|
|
25
|
+
const queryString = normalizedParams ? "?" + new URLSearchParams(normalizedParams).toString() : "";
|
|
26
|
+
return this.client.get(`media${queryString}`);
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Get a single media item by ID
|
|
30
|
+
*/
|
|
31
|
+
async getMediaItem(id, context = "view") {
|
|
32
|
+
return this.client.get(`media/${id}?context=${context}`);
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Upload media from a file path
|
|
36
|
+
*/
|
|
37
|
+
async uploadMedia(data) {
|
|
38
|
+
// Use file handle to avoid TOCTOU race condition
|
|
39
|
+
let fileHandle;
|
|
40
|
+
try {
|
|
41
|
+
fileHandle = await fsPromises.open(data.file_path, "r");
|
|
42
|
+
}
|
|
43
|
+
catch {
|
|
44
|
+
throw new Error(`File not found: ${data.file_path}`);
|
|
45
|
+
}
|
|
46
|
+
try {
|
|
47
|
+
const stats = await fileHandle.stat();
|
|
48
|
+
const filename = data.title || path.basename(data.file_path);
|
|
49
|
+
// Check if file is too large (WordPress default is 2MB for most installs)
|
|
50
|
+
const maxSize = 10 * 1024 * 1024; // 10MB reasonable limit
|
|
51
|
+
if (stats.size > maxSize) {
|
|
52
|
+
throw new Error(`File too large: ${(stats.size / 1024 / 1024).toFixed(2)}MB. Maximum allowed: ${maxSize / 1024 / 1024}MB`);
|
|
53
|
+
}
|
|
54
|
+
const fileBuffer = await fileHandle.readFile();
|
|
55
|
+
debug.log(`Uploading file: ${filename} (${(stats.size / 1024).toFixed(2)}KB)`);
|
|
56
|
+
return this.uploadFile(fileBuffer, filename, this.getMimeType(data.file_path), data);
|
|
57
|
+
}
|
|
58
|
+
finally {
|
|
59
|
+
await fileHandle.close();
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Upload a file buffer as media
|
|
64
|
+
*/
|
|
65
|
+
async uploadFile(fileData, filename, mimeType, meta = {}, options) {
|
|
66
|
+
debug.log(`Uploading file: ${filename} (${fileData.length} bytes)`);
|
|
67
|
+
// Use FormData but with correct configuration for node-fetch
|
|
68
|
+
const formData = new FormData();
|
|
69
|
+
formData.setMaxListeners(20);
|
|
70
|
+
// Add file with correct options
|
|
71
|
+
formData.append("file", fileData, {
|
|
72
|
+
filename,
|
|
73
|
+
contentType: mimeType,
|
|
74
|
+
});
|
|
75
|
+
// Add metadata
|
|
76
|
+
if (meta.title)
|
|
77
|
+
formData.append("title", meta.title);
|
|
78
|
+
if (meta.alt_text)
|
|
79
|
+
formData.append("alt_text", meta.alt_text);
|
|
80
|
+
if (meta.caption)
|
|
81
|
+
formData.append("caption", meta.caption);
|
|
82
|
+
if (meta.description)
|
|
83
|
+
formData.append("description", meta.description);
|
|
84
|
+
if (meta.post)
|
|
85
|
+
formData.append("post", meta.post.toString());
|
|
86
|
+
// Use longer timeout for file uploads
|
|
87
|
+
const uploadTimeout = options?.timeout !== undefined ? options.timeout : 600000; // 10 minutes default
|
|
88
|
+
const uploadOptions = {
|
|
89
|
+
...options,
|
|
90
|
+
timeout: uploadTimeout,
|
|
91
|
+
};
|
|
92
|
+
debug.log(`Upload prepared with FormData, timeout: ${uploadTimeout}ms`);
|
|
93
|
+
// Use the regular post method which handles FormData correctly
|
|
94
|
+
return this.client.post("media", formData, uploadOptions);
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* Update media metadata
|
|
98
|
+
*/
|
|
99
|
+
async updateMedia(data) {
|
|
100
|
+
const { id, ...updateData } = data;
|
|
101
|
+
return this.client.put(`media/${id}`, updateData);
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* Delete a media item
|
|
105
|
+
*/
|
|
106
|
+
async deleteMedia(id, force = false) {
|
|
107
|
+
return this.client.delete(`media/${id}?force=${force}`);
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* Get MIME type from file extension
|
|
111
|
+
*/
|
|
112
|
+
getMimeType(filePath) {
|
|
113
|
+
const ext = path.extname(filePath).toLowerCase();
|
|
114
|
+
const mimeTypes = {
|
|
115
|
+
".jpg": "image/jpeg",
|
|
116
|
+
".jpeg": "image/jpeg",
|
|
117
|
+
".png": "image/png",
|
|
118
|
+
".gif": "image/gif",
|
|
119
|
+
".webp": "image/webp",
|
|
120
|
+
".svg": "image/svg+xml",
|
|
121
|
+
".pdf": "application/pdf",
|
|
122
|
+
".doc": "application/msword",
|
|
123
|
+
".docx": "application/vnd.openxmlformats-officedocument.wordprocessingml.document",
|
|
124
|
+
".txt": "text/plain",
|
|
125
|
+
".mp4": "video/mp4",
|
|
126
|
+
".mp3": "audio/mpeg",
|
|
127
|
+
".wav": "audio/wav",
|
|
128
|
+
};
|
|
129
|
+
return mimeTypes[ext] || "application/octet-stream";
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
//# sourceMappingURL=media.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"media.js","sourceRoot":"","sources":["../../../src/client/operations/media.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Pages Operations Module
|
|
3
|
+
* Handles all page-related WordPress REST API operations
|
|
4
|
+
*/
|
|
5
|
+
import type { WordPressPage, PostQueryParams, CreatePageRequest, UpdatePageRequest } from "../../types/wordpress.js";
|
|
6
|
+
/**
|
|
7
|
+
* Interface for the base client methods needed by pages operations
|
|
8
|
+
*/
|
|
9
|
+
export interface PagesClientBase {
|
|
10
|
+
get<T>(endpoint: string): Promise<T>;
|
|
11
|
+
post<T>(endpoint: string, data?: unknown): Promise<T>;
|
|
12
|
+
put<T>(endpoint: string, data?: unknown): Promise<T>;
|
|
13
|
+
delete<T>(endpoint: string): Promise<T>;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Pages operations mixin
|
|
17
|
+
* Provides CRUD operations for WordPress pages
|
|
18
|
+
*/
|
|
19
|
+
export declare class PagesOperations {
|
|
20
|
+
private client;
|
|
21
|
+
constructor(client: PagesClientBase);
|
|
22
|
+
/**
|
|
23
|
+
* Get a list of pages with optional filtering
|
|
24
|
+
*/
|
|
25
|
+
getPages(params?: PostQueryParams): Promise<WordPressPage[]>;
|
|
26
|
+
/**
|
|
27
|
+
* Get a single page by ID
|
|
28
|
+
*/
|
|
29
|
+
getPage(id: number, context?: "view" | "embed" | "edit"): Promise<WordPressPage>;
|
|
30
|
+
/**
|
|
31
|
+
* Create a new page
|
|
32
|
+
*/
|
|
33
|
+
createPage(data: CreatePageRequest): Promise<WordPressPage>;
|
|
34
|
+
/**
|
|
35
|
+
* Update an existing page
|
|
36
|
+
*/
|
|
37
|
+
updatePage(data: UpdatePageRequest): Promise<WordPressPage>;
|
|
38
|
+
/**
|
|
39
|
+
* Delete a page
|
|
40
|
+
*/
|
|
41
|
+
deletePage(id: number, force?: boolean): Promise<{
|
|
42
|
+
deleted: boolean;
|
|
43
|
+
previous?: WordPressPage;
|
|
44
|
+
}>;
|
|
45
|
+
/**
|
|
46
|
+
* Get page revisions
|
|
47
|
+
*/
|
|
48
|
+
getPageRevisions(id: number): Promise<WordPressPage[]>;
|
|
49
|
+
}
|
|
50
|
+
//# sourceMappingURL=pages.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pages.d.ts","sourceRoot":"","sources":["../../../src/client/operations/pages.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAEjH;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACrC,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACtD,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACrD,MAAM,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;CACzC;AAED;;;GAGG;AACH,qBAAa,eAAe;IACd,OAAO,CAAC,MAAM;gBAAN,MAAM,EAAE,eAAe;IAE3C;;OAEG;IACG,QAAQ,CAAC,MAAM,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IAQlE;;OAEG;IACG,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,GAAE,MAAM,GAAG,OAAO,GAAG,MAAe,GAAG,OAAO,CAAC,aAAa,CAAC;IAI9F;;OAEG;IACG,UAAU,CAAC,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAAC,aAAa,CAAC;IAIjE;;OAEG;IACG,UAAU,CAAC,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAAC,aAAa,CAAC;IAKjE;;OAEG;IACG,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,UAAQ,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,QAAQ,CAAC,EAAE,aAAa,CAAA;KAAE,CAAC;IAIpG;;OAEG;IACG,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;CAG7D"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Pages Operations Module
|
|
3
|
+
* Handles all page-related WordPress REST API operations
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* Pages operations mixin
|
|
7
|
+
* Provides CRUD operations for WordPress pages
|
|
8
|
+
*/
|
|
9
|
+
export class PagesOperations {
|
|
10
|
+
client;
|
|
11
|
+
constructor(client) {
|
|
12
|
+
this.client = client;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Get a list of pages with optional filtering
|
|
16
|
+
*/
|
|
17
|
+
async getPages(params) {
|
|
18
|
+
const normalizedParams = params
|
|
19
|
+
? Object.fromEntries(Object.entries(params).map(([k, v]) => [k, String(v)]))
|
|
20
|
+
: undefined;
|
|
21
|
+
const queryString = normalizedParams ? "?" + new URLSearchParams(normalizedParams).toString() : "";
|
|
22
|
+
return this.client.get(`pages${queryString}`);
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Get a single page by ID
|
|
26
|
+
*/
|
|
27
|
+
async getPage(id, context = "view") {
|
|
28
|
+
return this.client.get(`pages/${id}?context=${context}`);
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Create a new page
|
|
32
|
+
*/
|
|
33
|
+
async createPage(data) {
|
|
34
|
+
return this.client.post("pages", data);
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Update an existing page
|
|
38
|
+
*/
|
|
39
|
+
async updatePage(data) {
|
|
40
|
+
const { id, ...updateData } = data;
|
|
41
|
+
return this.client.put(`pages/${id}`, updateData);
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Delete a page
|
|
45
|
+
*/
|
|
46
|
+
async deletePage(id, force = false) {
|
|
47
|
+
return this.client.delete(`pages/${id}?force=${force}`);
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Get page revisions
|
|
51
|
+
*/
|
|
52
|
+
async getPageRevisions(id) {
|
|
53
|
+
return this.client.get(`pages/${id}/revisions`);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
//# sourceMappingURL=pages.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pages.js","sourceRoot":"","sources":["../../../src/client/operations/pages.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAcH;;;GAGG;AACH,MAAM,OAAO,eAAe;IACN;IAApB,YAAoB,MAAuB;QAAvB,WAAM,GAAN,MAAM,CAAiB;IAAG,CAAC;IAE/C;;OAEG;IACH,KAAK,CAAC,QAAQ,CAAC,MAAwB;QACrC,MAAM,gBAAgB,GAAG,MAAM;YAC7B,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5E,CAAC,CAAC,SAAS,CAAC;QACd,MAAM,WAAW,GAAG,gBAAgB,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,eAAe,CAAC,gBAAgB,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACnG,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAkB,QAAQ,WAAW,EAAE,CAAC,CAAC;IACjE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,OAAO,CAAC,EAAU,EAAE,UAAqC,MAAM;QACnE,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAgB,SAAS,EAAE,YAAY,OAAO,EAAE,CAAC,CAAC;IAC1E,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU,CAAC,IAAuB;QACtC,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAgB,OAAO,EAAE,IAAI,CAAC,CAAC;IACxD,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU,CAAC,IAAuB;QACtC,MAAM,EAAE,EAAE,EAAE,GAAG,UAAU,EAAE,GAAG,IAAI,CAAC;QACnC,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAgB,SAAS,EAAE,EAAE,EAAE,UAAU,CAAC,CAAC;IACnE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU,CAAC,EAAU,EAAE,KAAK,GAAG,KAAK;QACxC,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,UAAU,KAAK,EAAE,CAAC,CAAC;IAC1D,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,gBAAgB,CAAC,EAAU;QAC/B,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAkB,SAAS,EAAE,YAAY,CAAC,CAAC;IACnE,CAAC;CACF"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Posts Operations Module
|
|
3
|
+
* Handles all post-related WordPress REST API operations
|
|
4
|
+
*/
|
|
5
|
+
import type { WordPressPost, PostQueryParams, CreatePostRequest, UpdatePostRequest } from "../../types/wordpress.js";
|
|
6
|
+
/**
|
|
7
|
+
* Interface for the base client methods needed by posts operations
|
|
8
|
+
*/
|
|
9
|
+
export interface PostsClientBase {
|
|
10
|
+
get<T>(endpoint: string): Promise<T>;
|
|
11
|
+
post<T>(endpoint: string, data?: unknown): Promise<T>;
|
|
12
|
+
put<T>(endpoint: string, data?: unknown): Promise<T>;
|
|
13
|
+
delete<T>(endpoint: string): Promise<T>;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Posts operations mixin
|
|
17
|
+
* Provides CRUD operations for WordPress posts
|
|
18
|
+
*/
|
|
19
|
+
export declare class PostsOperations {
|
|
20
|
+
private client;
|
|
21
|
+
constructor(client: PostsClientBase);
|
|
22
|
+
/**
|
|
23
|
+
* Get a list of posts with optional filtering
|
|
24
|
+
*/
|
|
25
|
+
getPosts(params?: PostQueryParams): Promise<WordPressPost[]>;
|
|
26
|
+
/**
|
|
27
|
+
* Get a single post by ID
|
|
28
|
+
*/
|
|
29
|
+
getPost(id: number, context?: "view" | "embed" | "edit"): Promise<WordPressPost>;
|
|
30
|
+
/**
|
|
31
|
+
* Create a new post
|
|
32
|
+
*/
|
|
33
|
+
createPost(data: CreatePostRequest): Promise<WordPressPost>;
|
|
34
|
+
/**
|
|
35
|
+
* Update an existing post
|
|
36
|
+
*/
|
|
37
|
+
updatePost(data: UpdatePostRequest): Promise<WordPressPost>;
|
|
38
|
+
/**
|
|
39
|
+
* Delete a post
|
|
40
|
+
*/
|
|
41
|
+
deletePost(id: number, force?: boolean): Promise<{
|
|
42
|
+
deleted: boolean;
|
|
43
|
+
previous?: WordPressPost;
|
|
44
|
+
}>;
|
|
45
|
+
/**
|
|
46
|
+
* Get post revisions
|
|
47
|
+
*/
|
|
48
|
+
getPostRevisions(id: number): Promise<WordPressPost[]>;
|
|
49
|
+
}
|
|
50
|
+
//# sourceMappingURL=posts.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"posts.d.ts","sourceRoot":"","sources":["../../../src/client/operations/posts.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAEjH;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACrC,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACtD,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACrD,MAAM,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;CACzC;AAED;;;GAGG;AACH,qBAAa,eAAe;IACd,OAAO,CAAC,MAAM;gBAAN,MAAM,EAAE,eAAe;IAE3C;;OAEG;IACG,QAAQ,CAAC,MAAM,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IAKlE;;OAEG;IACG,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,GAAE,MAAM,GAAG,OAAO,GAAG,MAAe,GAAG,OAAO,CAAC,aAAa,CAAC;IAI9F;;OAEG;IACG,UAAU,CAAC,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAAC,aAAa,CAAC;IAIjE;;OAEG;IACG,UAAU,CAAC,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAAC,aAAa,CAAC;IAKjE;;OAEG;IACG,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,UAAQ,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,QAAQ,CAAC,EAAE,aAAa,CAAA;KAAE,CAAC;IAIpG;;OAEG;IACG,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;CAG7D"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Posts Operations Module
|
|
3
|
+
* Handles all post-related WordPress REST API operations
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* Posts operations mixin
|
|
7
|
+
* Provides CRUD operations for WordPress posts
|
|
8
|
+
*/
|
|
9
|
+
export class PostsOperations {
|
|
10
|
+
client;
|
|
11
|
+
constructor(client) {
|
|
12
|
+
this.client = client;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Get a list of posts with optional filtering
|
|
16
|
+
*/
|
|
17
|
+
async getPosts(params) {
|
|
18
|
+
const queryString = params ? "?" + new URLSearchParams(params).toString() : "";
|
|
19
|
+
return this.client.get(`posts${queryString}`);
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Get a single post by ID
|
|
23
|
+
*/
|
|
24
|
+
async getPost(id, context = "view") {
|
|
25
|
+
return this.client.get(`posts/${id}?context=${context}`);
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Create a new post
|
|
29
|
+
*/
|
|
30
|
+
async createPost(data) {
|
|
31
|
+
return this.client.post("posts", data);
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Update an existing post
|
|
35
|
+
*/
|
|
36
|
+
async updatePost(data) {
|
|
37
|
+
const { id, ...updateData } = data;
|
|
38
|
+
return this.client.put(`posts/${id}`, updateData);
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Delete a post
|
|
42
|
+
*/
|
|
43
|
+
async deletePost(id, force = false) {
|
|
44
|
+
return this.client.delete(`posts/${id}?force=${force}`);
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Get post revisions
|
|
48
|
+
*/
|
|
49
|
+
async getPostRevisions(id) {
|
|
50
|
+
return this.client.get(`posts/${id}/revisions`);
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=posts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"posts.js","sourceRoot":"","sources":["../../../src/client/operations/posts.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAcH;;;GAGG;AACH,MAAM,OAAO,eAAe;IACN;IAApB,YAAoB,MAAuB;QAAvB,WAAM,GAAN,MAAM,CAAiB;IAAG,CAAC;IAE/C;;OAEG;IACH,KAAK,CAAC,QAAQ,CAAC,MAAwB;QACrC,MAAM,WAAW,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,eAAe,CAAC,MAAgC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzG,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAkB,QAAQ,WAAW,EAAE,CAAC,CAAC;IACjE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,OAAO,CAAC,EAAU,EAAE,UAAqC,MAAM;QACnE,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAgB,SAAS,EAAE,YAAY,OAAO,EAAE,CAAC,CAAC;IAC1E,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU,CAAC,IAAuB;QACtC,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAgB,OAAO,EAAE,IAAI,CAAC,CAAC;IACxD,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU,CAAC,IAAuB;QACtC,MAAM,EAAE,EAAE,EAAE,GAAG,UAAU,EAAE,GAAG,IAAI,CAAC;QACnC,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAgB,SAAS,EAAE,EAAE,EAAE,UAAU,CAAC,CAAC;IACnE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU,CAAC,EAAU,EAAE,KAAK,GAAG,KAAK;QACxC,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,UAAU,KAAK,EAAE,CAAC,CAAC;IAC1D,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,gBAAgB,CAAC,EAAU;QAC/B,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAkB,SAAS,EAAE,YAAY,CAAC,CAAC;IACnE,CAAC;CACF"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Site Operations Module
|
|
3
|
+
* Handles site management, settings, and application passwords
|
|
4
|
+
*/
|
|
5
|
+
import type { WordPressSiteSettings, WordPressSiteInfo, WordPressApplicationPassword, WordPressSearchResult } from "../../types/wordpress.js";
|
|
6
|
+
/**
|
|
7
|
+
* Interface for the base client methods needed by site operations
|
|
8
|
+
*/
|
|
9
|
+
export interface SiteClientBase {
|
|
10
|
+
get<T>(endpoint: string): Promise<T>;
|
|
11
|
+
post<T>(endpoint: string, data?: unknown): Promise<T>;
|
|
12
|
+
delete<T>(endpoint: string): Promise<T>;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Site operations mixin
|
|
16
|
+
* Provides operations for WordPress site settings, info, and application passwords
|
|
17
|
+
*/
|
|
18
|
+
export declare class SiteOperations {
|
|
19
|
+
private client;
|
|
20
|
+
constructor(client: SiteClientBase);
|
|
21
|
+
/**
|
|
22
|
+
* Get site settings
|
|
23
|
+
*/
|
|
24
|
+
getSiteSettings(): Promise<WordPressSiteSettings>;
|
|
25
|
+
/**
|
|
26
|
+
* Update site settings
|
|
27
|
+
*/
|
|
28
|
+
updateSiteSettings(settings: Partial<WordPressSiteSettings>): Promise<WordPressSiteSettings>;
|
|
29
|
+
/**
|
|
30
|
+
* Get site info (root endpoint)
|
|
31
|
+
*/
|
|
32
|
+
getSiteInfo(): Promise<WordPressSiteInfo>;
|
|
33
|
+
/**
|
|
34
|
+
* Get application passwords for a user
|
|
35
|
+
*/
|
|
36
|
+
getApplicationPasswords(userId?: number | "me"): Promise<WordPressApplicationPassword[]>;
|
|
37
|
+
/**
|
|
38
|
+
* Create an application password for a user
|
|
39
|
+
*/
|
|
40
|
+
createApplicationPassword(userId: number | "me", name: string, appId?: string): Promise<WordPressApplicationPassword>;
|
|
41
|
+
/**
|
|
42
|
+
* Delete an application password
|
|
43
|
+
*/
|
|
44
|
+
deleteApplicationPassword(userId: number | "me", uuid: string): Promise<{
|
|
45
|
+
deleted: boolean;
|
|
46
|
+
}>;
|
|
47
|
+
/**
|
|
48
|
+
* Search across WordPress content
|
|
49
|
+
*/
|
|
50
|
+
search(query: string, types?: string[], subtype?: string): Promise<WordPressSearchResult[]>;
|
|
51
|
+
/**
|
|
52
|
+
* Ping the site to check availability
|
|
53
|
+
*/
|
|
54
|
+
ping(): Promise<boolean>;
|
|
55
|
+
/**
|
|
56
|
+
* Get server info
|
|
57
|
+
*/
|
|
58
|
+
getServerInfo(): Promise<Record<string, unknown>>;
|
|
59
|
+
}
|
|
60
|
+
//# sourceMappingURL=site.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"site.d.ts","sourceRoot":"","sources":["../../../src/client/operations/site.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EACV,qBAAqB,EACrB,iBAAiB,EACjB,4BAA4B,EAC5B,qBAAqB,EACtB,MAAM,sBAAsB,CAAC;AAE9B;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACrC,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACtD,MAAM,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;CACzC;AAED;;;GAGG;AACH,qBAAa,cAAc;IACb,OAAO,CAAC,MAAM;gBAAN,MAAM,EAAE,cAAc;IAE1C;;OAEG;IACG,eAAe,IAAI,OAAO,CAAC,qBAAqB,CAAC;IAIvD;;OAEG;IACG,kBAAkB,CAAC,QAAQ,EAAE,OAAO,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAIlG;;OAEG;IACG,WAAW,IAAI,OAAO,CAAC,iBAAiB,CAAC;IAI/C;;OAEG;IACG,uBAAuB,CAAC,MAAM,GAAE,MAAM,GAAG,IAAW,GAAG,OAAO,CAAC,4BAA4B,EAAE,CAAC;IAIpG;;OAEG;IACG,yBAAyB,CAC7B,MAAM,EAAE,MAAM,GAAG,IAAI,EACrB,IAAI,EAAE,MAAM,EACZ,KAAK,CAAC,EAAE,MAAM,GACb,OAAO,CAAC,4BAA4B,CAAC;IAMxC;;OAEG;IACG,yBAAyB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC;IAInG;;OAEG;IACG,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC;IAQjG;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,OAAO,CAAC;IAS9B;;OAEG;IACG,aAAa,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAGxD"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Site Operations Module
|
|
3
|
+
* Handles site management, settings, and application passwords
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* Site operations mixin
|
|
7
|
+
* Provides operations for WordPress site settings, info, and application passwords
|
|
8
|
+
*/
|
|
9
|
+
export class SiteOperations {
|
|
10
|
+
client;
|
|
11
|
+
constructor(client) {
|
|
12
|
+
this.client = client;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Get site settings
|
|
16
|
+
*/
|
|
17
|
+
async getSiteSettings() {
|
|
18
|
+
return this.client.get("settings");
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Update site settings
|
|
22
|
+
*/
|
|
23
|
+
async updateSiteSettings(settings) {
|
|
24
|
+
return this.client.post("settings", settings);
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Get site info (root endpoint)
|
|
28
|
+
*/
|
|
29
|
+
async getSiteInfo() {
|
|
30
|
+
return this.client.get("");
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Get application passwords for a user
|
|
34
|
+
*/
|
|
35
|
+
async getApplicationPasswords(userId = "me") {
|
|
36
|
+
return this.client.get(`users/${userId}/application-passwords`);
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Create an application password for a user
|
|
40
|
+
*/
|
|
41
|
+
async createApplicationPassword(userId, name, appId) {
|
|
42
|
+
const data = { name };
|
|
43
|
+
if (appId)
|
|
44
|
+
data.app_id = appId;
|
|
45
|
+
return this.client.post(`users/${userId}/application-passwords`, data);
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Delete an application password
|
|
49
|
+
*/
|
|
50
|
+
async deleteApplicationPassword(userId, uuid) {
|
|
51
|
+
return this.client.delete(`users/${userId}/application-passwords/${uuid}`);
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Search across WordPress content
|
|
55
|
+
*/
|
|
56
|
+
async search(query, types, subtype) {
|
|
57
|
+
const params = new URLSearchParams({ search: query });
|
|
58
|
+
if (types)
|
|
59
|
+
params.append("type", types.join(","));
|
|
60
|
+
if (subtype)
|
|
61
|
+
params.append("subtype", subtype);
|
|
62
|
+
return this.client.get(`search?${params.toString()}`);
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Ping the site to check availability
|
|
66
|
+
*/
|
|
67
|
+
async ping() {
|
|
68
|
+
try {
|
|
69
|
+
await this.client.get("");
|
|
70
|
+
return true;
|
|
71
|
+
}
|
|
72
|
+
catch {
|
|
73
|
+
return false;
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* Get server info
|
|
78
|
+
*/
|
|
79
|
+
async getServerInfo() {
|
|
80
|
+
return this.client.get("");
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
//# sourceMappingURL=site.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"site.js","sourceRoot":"","sources":["../../../src/client/operations/site.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAkBH;;;GAGG;AACH,MAAM,OAAO,cAAc;IACL;IAApB,YAAoB,MAAsB;QAAtB,WAAM,GAAN,MAAM,CAAgB;IAAG,CAAC;IAE9C;;OAEG;IACH,KAAK,CAAC,eAAe;QACnB,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAwB,UAAU,CAAC,CAAC;IAC5D,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,kBAAkB,CAAC,QAAwC;QAC/D,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAwB,UAAU,EAAE,QAAQ,CAAC,CAAC;IACvE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,WAAW;QACf,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC7B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,uBAAuB,CAAC,SAAwB,IAAI;QACxD,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAiC,SAAS,MAAM,wBAAwB,CAAC,CAAC;IAClG,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,yBAAyB,CAC7B,MAAqB,EACrB,IAAY,EACZ,KAAc;QAEd,MAAM,IAAI,GAA4B,EAAE,IAAI,EAAE,CAAC;QAC/C,IAAI,KAAK;YAAE,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QAC/B,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAA+B,SAAS,MAAM,wBAAwB,EAAE,IAAI,CAAC,CAAC;IACvG,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,yBAAyB,CAAC,MAAqB,EAAE,IAAY;QACjE,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,MAAM,0BAA0B,IAAI,EAAE,CAAC,CAAC;IAC7E,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CAAC,KAAa,EAAE,KAAgB,EAAE,OAAgB;QAC5D,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;QACtD,IAAI,KAAK;YAAE,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAClD,IAAI,OAAO;YAAE,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAE/C,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAA0B,UAAU,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;IACjF,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAI;QACR,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC1B,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,aAAa;QACjB,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC7B,CAAC;CACF"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Taxonomies Operations Module
|
|
3
|
+
* Handles all taxonomy-related WordPress REST API operations (categories, tags)
|
|
4
|
+
*/
|
|
5
|
+
import type { WordPressCategory, WordPressTag, CreateCategoryRequest, UpdateCategoryRequest, CreateTagRequest, UpdateTagRequest } from "../../types/wordpress.js";
|
|
6
|
+
/**
|
|
7
|
+
* Interface for the base client methods needed by taxonomies operations
|
|
8
|
+
*/
|
|
9
|
+
export interface TaxonomiesClientBase {
|
|
10
|
+
get<T>(endpoint: string): Promise<T>;
|
|
11
|
+
post<T>(endpoint: string, data?: unknown): Promise<T>;
|
|
12
|
+
put<T>(endpoint: string, data?: unknown): Promise<T>;
|
|
13
|
+
delete<T>(endpoint: string): Promise<T>;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Taxonomies operations mixin
|
|
17
|
+
* Provides CRUD operations for WordPress categories and tags
|
|
18
|
+
*/
|
|
19
|
+
export declare class TaxonomiesOperations {
|
|
20
|
+
private client;
|
|
21
|
+
constructor(client: TaxonomiesClientBase);
|
|
22
|
+
/**
|
|
23
|
+
* Get a list of categories with optional filtering
|
|
24
|
+
*/
|
|
25
|
+
getCategories(params?: Record<string, string | number | boolean>): Promise<WordPressCategory[]>;
|
|
26
|
+
/**
|
|
27
|
+
* Get a single category by ID
|
|
28
|
+
*/
|
|
29
|
+
getCategory(id: number): Promise<WordPressCategory>;
|
|
30
|
+
/**
|
|
31
|
+
* Create a new category
|
|
32
|
+
*/
|
|
33
|
+
createCategory(data: CreateCategoryRequest): Promise<WordPressCategory>;
|
|
34
|
+
/**
|
|
35
|
+
* Update an existing category
|
|
36
|
+
*/
|
|
37
|
+
updateCategory(data: UpdateCategoryRequest): Promise<WordPressCategory>;
|
|
38
|
+
/**
|
|
39
|
+
* Delete a category
|
|
40
|
+
*/
|
|
41
|
+
deleteCategory(id: number, force?: boolean): Promise<{
|
|
42
|
+
deleted: boolean;
|
|
43
|
+
previous?: WordPressCategory;
|
|
44
|
+
}>;
|
|
45
|
+
/**
|
|
46
|
+
* Get a list of tags with optional filtering
|
|
47
|
+
*/
|
|
48
|
+
getTags(params?: Record<string, string | number | boolean>): Promise<WordPressTag[]>;
|
|
49
|
+
/**
|
|
50
|
+
* Get a single tag by ID
|
|
51
|
+
*/
|
|
52
|
+
getTag(id: number): Promise<WordPressTag>;
|
|
53
|
+
/**
|
|
54
|
+
* Create a new tag
|
|
55
|
+
*/
|
|
56
|
+
createTag(data: CreateTagRequest): Promise<WordPressTag>;
|
|
57
|
+
/**
|
|
58
|
+
* Update an existing tag
|
|
59
|
+
*/
|
|
60
|
+
updateTag(data: UpdateTagRequest): Promise<WordPressTag>;
|
|
61
|
+
/**
|
|
62
|
+
* Delete a tag
|
|
63
|
+
*/
|
|
64
|
+
deleteTag(id: number, force?: boolean): Promise<{
|
|
65
|
+
deleted: boolean;
|
|
66
|
+
previous?: WordPressTag;
|
|
67
|
+
}>;
|
|
68
|
+
}
|
|
69
|
+
//# sourceMappingURL=taxonomies.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"taxonomies.d.ts","sourceRoot":"","sources":["../../../src/client/operations/taxonomies.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EACV,iBAAiB,EACjB,YAAY,EACZ,qBAAqB,EACrB,qBAAqB,EACrB,gBAAgB,EAChB,gBAAgB,EACjB,MAAM,sBAAsB,CAAC;AAE9B;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACrC,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACtD,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACrD,MAAM,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;CACzC;AAED;;;GAGG;AACH,qBAAa,oBAAoB;IACnB,OAAO,CAAC,MAAM;gBAAN,MAAM,EAAE,oBAAoB;IAIhD;;OAEG;IACG,aAAa,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC;IAQrG;;OAEG;IACG,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAIzD;;OAEG;IACG,cAAc,CAAC,IAAI,EAAE,qBAAqB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAI7E;;OAEG;IACG,cAAc,CAAC,IAAI,EAAE,qBAAqB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAK7E;;OAEG;IACG,cAAc,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,UAAQ,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,QAAQ,CAAC,EAAE,iBAAiB,CAAA;KAAE,CAAC;IAM5G;;OAEG;IACG,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAQ1F;;OAEG;IACG,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAI/C;;OAEG;IACG,SAAS,CAAC,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAAC,YAAY,CAAC;IAI9D;;OAEG;IACG,SAAS,CAAC,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAAC,YAAY,CAAC;IAK9D;;OAEG;IACG,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,UAAQ,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,QAAQ,CAAC,EAAE,YAAY,CAAA;KAAE,CAAC;CAGnG"}
|