@respira/wordpress-mcp-server 7.6.1 → 7.6.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/README.md +16 -8
- package/dist/__tests__/pagespeed-error-classification.test.d.ts +2 -0
- package/dist/__tests__/pagespeed-error-classification.test.d.ts.map +1 -0
- package/dist/__tests__/pagespeed-error-classification.test.js +52 -0
- package/dist/__tests__/pagespeed-error-classification.test.js.map +1 -0
- package/dist/__tests__/site-token-401-error-classification.test.js +2 -2
- package/dist/__tests__/site-token-401-error-classification.test.js.map +1 -1
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +8 -0
- package/dist/server.js.map +1 -1
- package/dist/usage-emitter.d.ts.map +1 -1
- package/dist/usage-emitter.js +7 -1
- package/dist/usage-emitter.js.map +1 -1
- package/dist/wordpress-client.d.ts +6 -0
- package/dist/wordpress-client.d.ts.map +1 -1
- package/dist/wordpress-client.js +44 -41
- package/dist/wordpress-client.js.map +1 -1
- package/package.json +1 -6
package/README.md
CHANGED
|
@@ -35,15 +35,23 @@ Other WordPress MCP servers wrap the REST API. They can create posts and pages,
|
|
|
35
35
|
|
|
36
36
|
Respira includes a WordPress plugin that gives AI **native access** to 16 page builders, plus element-level precision, full page creation from structure, HTML-to-builder conversion, storefront design intelligence, stock image search, and bulk operations across hundreds of pages.
|
|
37
37
|
|
|
38
|
-
### New in v7.
|
|
38
|
+
### New in v7.6.2: clearer failures and trustworthy quality signals
|
|
39
39
|
|
|
40
|
-
- **
|
|
41
|
-
- **
|
|
40
|
+
- **PageSpeed failures keep their real machine-readable reason.** Rate limits, upstream outages, proxy HTML responses, and other structured WordPress errors no longer collapse into a generic failure, so agents can distinguish “retry later” from a Respira defect.
|
|
41
|
+
- **PageSpeed tools reject incomplete requests before touching WordPress.** Both PageSpeed schemas require either `page_id` or `url`, preventing avoidable calls that could only fail.
|
|
42
|
+
- **Every transport attempt has its own identity.** The logical call id remains stable for replay-safe writes, while `attempt_id` preserves each network attempt so a retry can never overwrite the evidence from the first timeout.
|
|
43
|
+
- **Privacy remains metadata-only.** Retry detection uses a process-secret target hash. Respira never sends prompts, raw arguments, tool results, or WordPress content.
|
|
44
|
+
- **The admin quality dashboard now separates operational health from task completion.** Expected approval/safety blocks, caller mistakes, customer setup, upstream services, product errors, unknown failures, and incomplete attempts are measured independently. Alerts use comparable site cohorts and require failures across multiple sites, reducing false alarms caused by one unusual customer setup.
|
|
45
|
+
- **The npm package no longer publishes private repository metadata.** Support and product links point to respira.press.
|
|
42
46
|
|
|
43
|
-
###
|
|
47
|
+
### Reliability and builder additions since v7.5.2
|
|
44
48
|
|
|
45
|
-
- **v7.5.3:** Windows
|
|
46
|
-
- **v7.5.4:** `tools/list`
|
|
49
|
+
- **v7.5.3:** Windows media paths and `file://` uploads work correctly; `delete_media` approval tokens now reach the confirmation call.
|
|
50
|
+
- **v7.5.4:** `tools/list` shares one cached, two-second-bounded context fetch instead of making three sequential WordPress checks, preventing slow-site handshake disconnects.
|
|
51
|
+
- **v7.5.5:** subdirectory WordPress installs on the same hostname receive distinct site identities; custom Elementor widget guidance now uses live control schemas and targeted stable-ID updates.
|
|
52
|
+
- **v7.5.6:** a successful `?rest_route=` diagnostic fallback becomes sticky for the rest of the MCP session.
|
|
53
|
+
- **v7.6.0:** WPML translation tools and Divi Theme Builder header, footer, and body-template tools.
|
|
54
|
+
- **v7.6.1:** `wordpress_build_mega_menu` creates a complete native Divi 4 or Divi 5 mega-menu hierarchy in one call.
|
|
47
55
|
|
|
48
56
|
### v7.5.2: reconnect-safe writes and drop diagnostics
|
|
49
57
|
|
|
@@ -53,13 +61,13 @@ Respira includes a WordPress plugin that gives AI **native access** to 16 page b
|
|
|
53
61
|
- **The quality dashboard can separate exact retries from editing sweeps.** It records stable session/call identity, transport, incomplete calls, connector/plugin versions, total vs tool time, and privacy-safe stage durations. Target comparison uses a secret HMAC; arguments, results, prompts, and WordPress content are never sent.
|
|
54
62
|
- **Native URL-connected clients gain timeout-safe writes.** Plugin 7.5.46 adds `_respira_async: true`, `respira_get_job_status`, stable `Mcp-Session-Id` responses, replay-safe `_respira_call_id`, and a native `respira_diagnose_connection` tool. The native endpoint is stateless HTTP—independent POST requests, not a persistent “write channel.”
|
|
55
63
|
|
|
56
|
-
### Also shipped
|
|
64
|
+
### Also shipped between v7.1 and v7.5.1
|
|
57
65
|
|
|
58
66
|
- **v7.2:** cascade session rollback; dropped-styling/no-op guidance; page-parent schemas; Oxygen 6 build guidance; completed live-edit confirmation parameters; bounded heavy-write/docs timeouts; and route-aware capability negotiation that hides tools an older plugin cannot execute.
|
|
59
67
|
- **v7.3:** the WooCommerce add-on expanded from 21 to 56 tools across catalog, pricing, stock, storefront, brands, variations/attributes, coupons, customers, refunds, and AI-readiness.
|
|
60
68
|
- **v7.4:** Agent-Ready Commerce expanded WooCommerce to 79 tools with feeds + store `llms.txt`, readiness fixes, signed cart links/attribution, and Subscriptions, Bookings, and Memberships writes. v7.4.1 then made newly connected dashboard sites self-heal into a running connector session.
|
|
61
69
|
- **v7.5.0:** eight STAGGS configurator tools brought the WooCommerce total to 87.
|
|
62
|
-
- **v7.5.1:** fixed normalized ACF tool routing and preserved dashboard-token 401 machine codes
|
|
70
|
+
- **v7.5.1:** fixed normalized ACF tool routing and preserved dashboard-token 401 machine codes.
|
|
63
71
|
|
|
64
72
|
### New in v7.1 "Roots"
|
|
65
73
|
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pagespeed-error-classification.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/pagespeed-error-classification.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import assert from 'node:assert/strict';
|
|
2
|
+
import { test } from 'node:test';
|
|
3
|
+
import { WordPressClient } from '../wordpress-client.js';
|
|
4
|
+
const config = {
|
|
5
|
+
id: 'pagespeed-test',
|
|
6
|
+
name: 'PageSpeed test',
|
|
7
|
+
url: 'https://example.com',
|
|
8
|
+
apiKey: 'respira_test_key',
|
|
9
|
+
};
|
|
10
|
+
function fakeResponse(status, data) {
|
|
11
|
+
return {
|
|
12
|
+
isAxiosError: true,
|
|
13
|
+
message: `Request failed with status code ${status}`,
|
|
14
|
+
response: {
|
|
15
|
+
status,
|
|
16
|
+
statusText: 'Error',
|
|
17
|
+
headers: {},
|
|
18
|
+
data,
|
|
19
|
+
config: {},
|
|
20
|
+
},
|
|
21
|
+
config: { url: '/analyze/pagespeed', method: 'post' },
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
test('PageSpeed rate limits retain a stable upstream error code', async () => {
|
|
25
|
+
const client = new WordPressClient(config);
|
|
26
|
+
const error = await client.handleError(fakeResponse(429, {
|
|
27
|
+
code: 'respira_pagespeed_rate_limited',
|
|
28
|
+
message: 'Google PSI rate limited this request.',
|
|
29
|
+
data: { status: 429, retry_after: 60 },
|
|
30
|
+
}));
|
|
31
|
+
assert.equal(error.name, 'respira_pagespeed_rate_limited');
|
|
32
|
+
assert.deepEqual(error.respiraErrorEnvelope, {
|
|
33
|
+
code: 'respira_pagespeed_rate_limited',
|
|
34
|
+
retry_after: 60,
|
|
35
|
+
});
|
|
36
|
+
});
|
|
37
|
+
test('PageSpeed upstream 5xx responses do not become unclassified', async () => {
|
|
38
|
+
const client = new WordPressClient(config);
|
|
39
|
+
const error = await client.handleError(fakeResponse(503, {
|
|
40
|
+
code: 'respira_pagespeed_upstream_unavailable',
|
|
41
|
+
message: 'Google PSI is unavailable.',
|
|
42
|
+
data: { status: 503 },
|
|
43
|
+
}));
|
|
44
|
+
assert.equal(error.name, 'respira_pagespeed_upstream_unavailable');
|
|
45
|
+
assert.match(error.message, /WordPress server error \(503\)/);
|
|
46
|
+
});
|
|
47
|
+
test('non-WordPress proxy errors receive a specific machine code', async () => {
|
|
48
|
+
const client = new WordPressClient(config);
|
|
49
|
+
const error = await client.handleError(fakeResponse(502, '<!DOCTYPE html><html><title>Bad Gateway</title></html>'));
|
|
50
|
+
assert.equal(error.name, 'http_502_non_wordpress');
|
|
51
|
+
});
|
|
52
|
+
//# sourceMappingURL=pagespeed-error-classification.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pagespeed-error-classification.test.js","sourceRoot":"","sources":["../../src/__tests__/pagespeed-error-classification.test.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,oBAAoB,CAAC;AACxC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAGzD,MAAM,MAAM,GAAwB;IAClC,EAAE,EAAE,gBAAgB;IACpB,IAAI,EAAE,gBAAgB;IACtB,GAAG,EAAE,qBAAqB;IAC1B,MAAM,EAAE,kBAAkB;CAC3B,CAAC;AAEF,SAAS,YAAY,CAAC,MAAc,EAAE,IAAa;IACjD,OAAO;QACL,YAAY,EAAE,IAAI;QAClB,OAAO,EAAE,mCAAmC,MAAM,EAAE;QACpD,QAAQ,EAAE;YACR,MAAM;YACN,UAAU,EAAE,OAAO;YACnB,OAAO,EAAE,EAAE;YACX,IAAI;YACJ,MAAM,EAAE,EAAE;SACX;QACD,MAAM,EAAE,EAAE,GAAG,EAAE,oBAAoB,EAAE,MAAM,EAAE,MAAM,EAAE;KAC/C,CAAC;AACX,CAAC;AAED,IAAI,CAAC,2DAA2D,EAAE,KAAK,IAAI,EAAE;IAC3E,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,MAAM,CAAC,CAAC;IAC3C,MAAM,KAAK,GAAG,MAAO,MAAc,CAAC,WAAW,CAC7C,YAAY,CAAC,GAAG,EAAE;QAChB,IAAI,EAAE,gCAAgC;QACtC,OAAO,EAAE,uCAAuC;QAChD,IAAI,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,EAAE,EAAE;KACvC,CAAC,CACH,CAAC;IAEF,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,gCAAgC,CAAC,CAAC;IAC3D,MAAM,CAAC,SAAS,CAAE,KAAa,CAAC,oBAAoB,EAAE;QACpD,IAAI,EAAE,gCAAgC;QACtC,WAAW,EAAE,EAAE;KAChB,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,6DAA6D,EAAE,KAAK,IAAI,EAAE;IAC7E,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,MAAM,CAAC,CAAC;IAC3C,MAAM,KAAK,GAAG,MAAO,MAAc,CAAC,WAAW,CAC7C,YAAY,CAAC,GAAG,EAAE;QAChB,IAAI,EAAE,wCAAwC;QAC9C,OAAO,EAAE,4BAA4B;QACrC,IAAI,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE;KACtB,CAAC,CACH,CAAC;IAEF,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,wCAAwC,CAAC,CAAC;IACnE,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,gCAAgC,CAAC,CAAC;AAChE,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,4DAA4D,EAAE,KAAK,IAAI,EAAE;IAC5E,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,MAAM,CAAC,CAAC;IAC3C,MAAM,KAAK,GAAG,MAAO,MAAc,CAAC,WAAW,CAC7C,YAAY,CAAC,GAAG,EAAE,wDAAwD,CAAC,CAC5E,CAAC;IAEF,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,wBAAwB,CAAC,CAAC;AACrD,CAAC,CAAC,CAAC"}
|
|
@@ -64,11 +64,11 @@ test('401 with a forwarded dashboard-introspect code (license_inactive) also sta
|
|
|
64
64
|
}));
|
|
65
65
|
assert.equal(err.name, 'respira_license_inactive');
|
|
66
66
|
});
|
|
67
|
-
test('401 without a machine code
|
|
67
|
+
test('401 without a machine code receives a stable HTTP classification', async () => {
|
|
68
68
|
const client = new WordPressClient(buildConfig());
|
|
69
69
|
const err = await client.handleError(fakeAxios401({ message: 'Invalid API key' }));
|
|
70
70
|
assert.ok(err instanceof Error);
|
|
71
|
-
assert.equal(err.name, '
|
|
71
|
+
assert.equal(err.name, 'http_401');
|
|
72
72
|
assert.match(err.message, /Authentication failed: Invalid API key/);
|
|
73
73
|
});
|
|
74
74
|
//# sourceMappingURL=site-token-401-error-classification.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"site-token-401-error-classification.test.js","sourceRoot":"","sources":["../../src/__tests__/site-token-401-error-classification.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,MAAM,MAAM,oBAAoB,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAGzD,SAAS,WAAW,CAAC,SAAuC,EAAE;IAC5D,OAAO;QACL,EAAE,EAAE,WAAW;QACf,IAAI,EAAE,WAAW;QACjB,GAAG,EAAE,qBAAqB;QAC1B,MAAM,EAAE,kBAAkB;QAC1B,GAAG,MAAM;KACV,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,IAAS;IAC7B,OAAO;QACL,YAAY,EAAE,IAAI;QAClB,OAAO,EAAE,qCAAqC;QAC9C,QAAQ,EAAE;YACR,MAAM,EAAE,GAAG;YACX,UAAU,EAAE,cAAc;YAC1B,OAAO,EAAE,EAAE;YACX,IAAI;YACJ,MAAM,EAAE,EAAE;SACX;QACD,MAAM,EAAE,EAAE,GAAG,EAAE,4BAA4B,EAAE,MAAM,EAAE,MAAM,EAAE;KACvD,CAAC;AACX,CAAC;AAED,IAAI,CAAC,8FAA8F,EAAE,KAAK,IAAI,EAAE;IAC9G,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,WAAW,EAAE,CAAC,CAAC;IAElD,MAAM,GAAG,GAAG,MAAO,MAAc,CAAC,WAAW,CAC3C,YAAY,CAAC;QACX,IAAI,EAAE,4BAA4B;QAClC,OAAO,EAAE,mFAAmF;QAC5F,IAAI,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE;KACtB,CAAC,CACH,CAAC;IAEF,MAAM,CAAC,EAAE,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC;IAChC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,4BAA4B,CAAC,CAAC;IACrD,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,EAAE,uBAAuB,CAAC,CAAC;IACnD,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;AAC3C,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,0FAA0F,EAAE,KAAK,IAAI,EAAE;IAC1G,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,WAAW,EAAE,CAAC,CAAC;IAElD,MAAM,GAAG,GAAG,MAAO,MAAc,CAAC,WAAW,CAC3C,YAAY,CAAC;QACX,IAAI,EAAE,0BAA0B;QAChC,OAAO,EAAE,iFAAiF;QAC1F,IAAI,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE;KACtB,CAAC,CACH,CAAC;IAEF,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,0BAA0B,CAAC,CAAC;AACrD,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"site-token-401-error-classification.test.js","sourceRoot":"","sources":["../../src/__tests__/site-token-401-error-classification.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,MAAM,MAAM,oBAAoB,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAGzD,SAAS,WAAW,CAAC,SAAuC,EAAE;IAC5D,OAAO;QACL,EAAE,EAAE,WAAW;QACf,IAAI,EAAE,WAAW;QACjB,GAAG,EAAE,qBAAqB;QAC1B,MAAM,EAAE,kBAAkB;QAC1B,GAAG,MAAM;KACV,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,IAAS;IAC7B,OAAO;QACL,YAAY,EAAE,IAAI;QAClB,OAAO,EAAE,qCAAqC;QAC9C,QAAQ,EAAE;YACR,MAAM,EAAE,GAAG;YACX,UAAU,EAAE,cAAc;YAC1B,OAAO,EAAE,EAAE;YACX,IAAI;YACJ,MAAM,EAAE,EAAE;SACX;QACD,MAAM,EAAE,EAAE,GAAG,EAAE,4BAA4B,EAAE,MAAM,EAAE,MAAM,EAAE;KACvD,CAAC;AACX,CAAC;AAED,IAAI,CAAC,8FAA8F,EAAE,KAAK,IAAI,EAAE;IAC9G,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,WAAW,EAAE,CAAC,CAAC;IAElD,MAAM,GAAG,GAAG,MAAO,MAAc,CAAC,WAAW,CAC3C,YAAY,CAAC;QACX,IAAI,EAAE,4BAA4B;QAClC,OAAO,EAAE,mFAAmF;QAC5F,IAAI,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE;KACtB,CAAC,CACH,CAAC;IAEF,MAAM,CAAC,EAAE,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC;IAChC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,4BAA4B,CAAC,CAAC;IACrD,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,EAAE,uBAAuB,CAAC,CAAC;IACnD,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;AAC3C,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,0FAA0F,EAAE,KAAK,IAAI,EAAE;IAC1G,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,WAAW,EAAE,CAAC,CAAC;IAElD,MAAM,GAAG,GAAG,MAAO,MAAc,CAAC,WAAW,CAC3C,YAAY,CAAC;QACX,IAAI,EAAE,0BAA0B;QAChC,OAAO,EAAE,iFAAiF;QAC1F,IAAI,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE;KACtB,CAAC,CACH,CAAC;IAEF,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,0BAA0B,CAAC,CAAC;AACrD,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,kEAAkE,EAAE,KAAK,IAAI,EAAE;IAClF,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,WAAW,EAAE,CAAC,CAAC;IAElD,MAAM,GAAG,GAAG,MAAO,MAAc,CAAC,WAAW,CAC3C,YAAY,CAAC,EAAE,OAAO,EAAE,iBAAiB,EAAE,CAAC,CAC7C,CAAC;IAEF,MAAM,CAAC,EAAE,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC;IAChC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IACnC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,EAAE,wCAAwC,CAAC,CAAC;AACtE,CAAC,CAAC,CAAC"}
|
package/dist/server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAqBH,OAAO,KAAK,EAAE,mBAAmB,EAAe,MAAM,kBAAkB,CAAC;AAsQzE,qBAAa,sBAAsB;IACjC,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,WAAW,CAAgC;IACnD,OAAO,CAAC,KAAK,CAA2C;IACxD,OAAO,CAAC,aAAa,CAAuB;IAC5C,OAAO,CAAC,cAAc,CAAwB;IAC9C,OAAO,CAAC,YAAY,CAA4B;IAChD,8EAA8E;IAC9E,OAAO,CAAC,YAAY,CAA4B;IAChD,8EAA8E;IAC9E,OAAO,CAAC,mBAAmB,CAAS;IACpC,iFAAiF;IACjF,OAAO,CAAC,iBAAiB,CAAK;IAC9B,iFAAiF;IACjF,OAAO,CAAC,mBAAmB,CAAgC;IAE3D,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,kBAAkB,CAAsB;IAEhE;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IAWzB;;;OAGG;IACH,OAAO,CAAC,iBAAiB;gBA4Bb,WAAW,EAAE,mBAAmB,EAAE,EAAE,YAAY,CAAC,EAAE,MAAM,EAAE;IAiVvE,OAAO,CAAC,cAAc;IAItB;;;;;;;;;OASG;IACH,OAAO,CAAC,oBAAoB;IAkB5B;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,aAAa;IA4BrB,gEAAgE;IAChE,OAAO,CAAC,aAAa;IAUrB;;;;;;OAMG;YACW,UAAU;IA2CxB;;;;;;;;;;;;;;OAcG;YACW,WAAW;IAiJzB;;;;;;;;;OASG;YACW,kBAAkB;IAiHhC;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;YACW,qBAAqB;YAiBrB,kBAAkB;IA6FhC,yFAAyF;IACzF,OAAO,CAAC,gBAAgB;IASxB;;;;;;;;;;;;;OAaG;IACH,OAAO,CAAC,6BAA6B;IA0BrC;;;;;;;;;;;;OAYG;IACH,OAAO,CAAC,yBAAyB;IA+BjC,OAAO,CAAC,eAAe;IAmBvB,OAAO,CAAC,aAAa;YAmQP,kBAAkB;YA6BlB,yBAAyB;IASvC;;;OAGG;IACH,OAAO,CAAC,oBAAoB;YAyBd,QAAQ;
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAqBH,OAAO,KAAK,EAAE,mBAAmB,EAAe,MAAM,kBAAkB,CAAC;AAsQzE,qBAAa,sBAAsB;IACjC,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,WAAW,CAAgC;IACnD,OAAO,CAAC,KAAK,CAA2C;IACxD,OAAO,CAAC,aAAa,CAAuB;IAC5C,OAAO,CAAC,cAAc,CAAwB;IAC9C,OAAO,CAAC,YAAY,CAA4B;IAChD,8EAA8E;IAC9E,OAAO,CAAC,YAAY,CAA4B;IAChD,8EAA8E;IAC9E,OAAO,CAAC,mBAAmB,CAAS;IACpC,iFAAiF;IACjF,OAAO,CAAC,iBAAiB,CAAK;IAC9B,iFAAiF;IACjF,OAAO,CAAC,mBAAmB,CAAgC;IAE3D,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,kBAAkB,CAAsB;IAEhE;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IAWzB;;;OAGG;IACH,OAAO,CAAC,iBAAiB;gBA4Bb,WAAW,EAAE,mBAAmB,EAAE,EAAE,YAAY,CAAC,EAAE,MAAM,EAAE;IAiVvE,OAAO,CAAC,cAAc;IAItB;;;;;;;;;OASG;IACH,OAAO,CAAC,oBAAoB;IAkB5B;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,aAAa;IA4BrB,gEAAgE;IAChE,OAAO,CAAC,aAAa;IAUrB;;;;;;OAMG;YACW,UAAU;IA2CxB;;;;;;;;;;;;;;OAcG;YACW,WAAW;IAiJzB;;;;;;;;;OASG;YACW,kBAAkB;IAiHhC;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;YACW,qBAAqB;YAiBrB,kBAAkB;IA6FhC,yFAAyF;IACzF,OAAO,CAAC,gBAAgB;IASxB;;;;;;;;;;;;;OAaG;IACH,OAAO,CAAC,6BAA6B;IA0BrC;;;;;;;;;;;;OAYG;IACH,OAAO,CAAC,yBAAyB;IA+BjC,OAAO,CAAC,eAAe;IAmBvB,OAAO,CAAC,aAAa;YAmQP,kBAAkB;YA6BlB,yBAAyB;IASvC;;;OAGG;IACH,OAAO,CAAC,oBAAoB;YAyBd,QAAQ;IA82FtB;;;;;;OAMG;IACH;;;;;;;;;;;;;oDAagD;IAChD,OAAO,CAAC,mBAAmB,CAAoD;IAC/E,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAAU;IAClD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,wBAAwB,CAAU;IAC1D,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,yBAAyB,CAAS;IAC1D;;mDAE+C;IAC/C,OAAO,CAAC,0BAA0B,CAAoC;IAEtE;;;;;;;;OAQG;YACW,0BAA0B;YAyC1B,oBAAoB;YA6CpB,2BAA2B;IAQzC;;;;OAIG;YACW,cAAc;IAQ5B,OAAO,CAAC,mBAAmB;IA2uC3B;;;;;;;;;;;;OAYG;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,qBAAqB,CAe3C;IAEF;;;;OAIG;IACH,OAAO,CAAC,0BAA0B;YAmCpB,cAAc;IA4G5B,oEAAoE;IACpE,OAAO,CAAC,iBAAiB;IAoBzB;;;;;;;;;;;;;;;;;;;OAmBG;IACH,OAAO,CAAC,eAAe;YAuCT,gBAAgB;IA+oC9B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAwUzB;;OAEG;IACH,OAAO,CAAC,sBAAsB;IA6UxB,GAAG;CAyCV"}
|
package/dist/server.js
CHANGED
|
@@ -2803,6 +2803,10 @@ Allowlist: css, scss, less, json. PHP / JS theme writes are intentionally out of
|
|
|
2803
2803
|
fresh: { type: 'boolean', default: false, description: 'Bypass the 1h transient cache.' },
|
|
2804
2804
|
site_id: { type: 'string', description: 'Per-call site override.' },
|
|
2805
2805
|
},
|
|
2806
|
+
anyOf: [
|
|
2807
|
+
{ required: ['page_id'] },
|
|
2808
|
+
{ required: ['url'] },
|
|
2809
|
+
],
|
|
2806
2810
|
},
|
|
2807
2811
|
readOnlyHint: true,
|
|
2808
2812
|
},
|
|
@@ -2822,6 +2826,10 @@ Allowlist: css, scss, less, json. PHP / JS theme writes are intentionally out of
|
|
|
2822
2826
|
fresh: { type: 'boolean', default: false, description: 'Bypass the 1h cache.' },
|
|
2823
2827
|
site_id: { type: 'string', description: 'Per-call site override.' },
|
|
2824
2828
|
},
|
|
2829
|
+
anyOf: [
|
|
2830
|
+
{ required: ['page_id'] },
|
|
2831
|
+
{ required: ['url'] },
|
|
2832
|
+
],
|
|
2825
2833
|
},
|
|
2826
2834
|
readOnlyHint: true,
|
|
2827
2835
|
},
|