@wootsup/yt-builder-mcp 1.10.0 → 1.12.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 +12 -11
- package/bin/yt-builder-mcp.js +1 -1
- package/dist/auth.d.ts +1 -1
- package/dist/auth.js +1 -1
- package/dist/catalog/tool-catalog-markdown.d.ts.map +1 -1
- package/dist/catalog/tool-catalog-markdown.js +13 -1
- package/dist/catalog/tool-catalog-markdown.js.map +1 -1
- package/dist/cli/doctor-command.d.ts.map +1 -1
- package/dist/cli/doctor-command.js +22 -2
- package/dist/cli/doctor-command.js.map +1 -1
- package/dist/client.d.ts +3 -3
- package/dist/client.js +1 -1
- package/dist/client.js.map +1 -1
- package/dist/clients/index.d.ts +1 -1
- package/dist/clients/index.js +1 -1
- package/dist/diagnostics/ca-reexec.js +2 -2
- package/dist/diagnostics/diagnose-network-error.d.ts +1 -1
- package/dist/diagnostics/doctor.d.ts +34 -2
- package/dist/diagnostics/doctor.d.ts.map +1 -1
- package/dist/diagnostics/doctor.js +63 -2
- package/dist/diagnostics/doctor.js.map +1 -1
- package/dist/diagnostics/startup-self-probe.js +1 -1
- package/dist/gateway/advanced-read-tool.d.ts.map +1 -1
- package/dist/gateway/advanced-read-tool.js +14 -2
- package/dist/gateway/advanced-read-tool.js.map +1 -1
- package/dist/gateway/advanced-tool/discovery.d.ts.map +1 -1
- package/dist/gateway/advanced-tool/discovery.js +12 -1
- package/dist/gateway/advanced-tool/discovery.js.map +1 -1
- package/dist/gateway/advanced-tool/domains.d.ts.map +1 -1
- package/dist/gateway/advanced-tool/domains.js +5 -0
- package/dist/gateway/advanced-tool/domains.js.map +1 -1
- package/dist/gateway/advanced-tool/execute.d.ts +7 -1
- package/dist/gateway/advanced-tool/execute.d.ts.map +1 -1
- package/dist/gateway/advanced-tool/execute.js +58 -4
- package/dist/gateway/advanced-tool/execute.js.map +1 -1
- package/dist/gateway/essentials.d.ts +4 -4
- package/dist/gateway/essentials.d.ts.map +1 -1
- package/dist/gateway/essentials.js +12 -7
- package/dist/gateway/essentials.js.map +1 -1
- package/dist/install-skill.js +1 -1
- package/dist/net/extra-headers.d.ts +1 -1
- package/dist/net/extra-headers.js +1 -1
- package/dist/net/internal-host.js +2 -2
- package/dist/net/proxy-dispatcher.js +1 -1
- package/dist/net/proxy-dispatcher.js.map +1 -1
- package/dist/net/site-basic-auth.d.ts +2 -2
- package/dist/net/site-basic-auth.js +2 -2
- package/dist/proxy/bridge.d.ts +2 -2
- package/dist/proxy/bridge.js +3 -3
- package/dist/proxy/bridge.js.map +1 -1
- package/dist/server.d.ts +3 -3
- package/dist/server.js +3 -3
- package/dist/setup-cli.d.ts +2 -2
- package/dist/setup-cli.js +2 -2
- package/dist/setup-cli.js.map +1 -1
- package/dist/setup-npx-spec.d.ts +1 -1
- package/dist/setup-npx-spec.js +1 -1
- package/dist/setup-wizard-handshake.js +1 -1
- package/dist/setup-wizard-types.d.ts +1 -1
- package/dist/setup-wizard.js +3 -3
- package/dist/setup-wizard.js.map +1 -1
- package/dist/sites/client-pool.d.ts +1 -1
- package/dist/sites/client-pool.js +1 -1
- package/dist/sites/tools/sites-list.d.ts.map +1 -1
- package/dist/sites/tools/sites-list.js +26 -4
- package/dist/sites/tools/sites-list.js.map +1 -1
- package/dist/sites/tools/sites-test.js +1 -1
- package/dist/sites/tools/sites-test.js.map +1 -1
- package/dist/sites/tools/use-site.js +2 -2
- package/dist/sites/tools/use-site.js.map +1 -1
- package/dist/tools/budgeted-table.d.ts +21 -0
- package/dist/tools/budgeted-table.d.ts.map +1 -0
- package/dist/tools/budgeted-table.js +137 -0
- package/dist/tools/budgeted-table.js.map +1 -0
- package/dist/tools/elements/builders.d.ts.map +1 -1
- package/dist/tools/elements/builders.js +102 -40
- package/dist/tools/elements/builders.js.map +1 -1
- package/dist/tools/elements/handlers-write.d.ts +21 -0
- package/dist/tools/elements/handlers-write.d.ts.map +1 -1
- package/dist/tools/elements/handlers-write.js +231 -11
- package/dist/tools/elements/handlers-write.js.map +1 -1
- package/dist/tools/elements/handlers.d.ts +20 -12
- package/dist/tools/elements/handlers.d.ts.map +1 -1
- package/dist/tools/elements/handlers.js +77 -26
- package/dist/tools/elements/handlers.js.map +1 -1
- package/dist/tools/elements/schema-validation.d.ts +147 -7
- package/dist/tools/elements/schema-validation.d.ts.map +1 -1
- package/dist/tools/elements/schema-validation.js +508 -28
- package/dist/tools/elements/schema-validation.js.map +1 -1
- package/dist/tools/format/elements-format.d.ts.map +1 -1
- package/dist/tools/format/elements-format.js +56 -12
- package/dist/tools/format/elements-format.js.map +1 -1
- package/dist/tools/format/health-format.d.ts +16 -0
- package/dist/tools/format/health-format.d.ts.map +1 -1
- package/dist/tools/format/health-format.js +9 -0
- package/dist/tools/format/health-format.js.map +1 -1
- package/dist/tools/format/inspection-format.d.ts +7 -0
- package/dist/tools/format/inspection-format.d.ts.map +1 -1
- package/dist/tools/format/inspection-format.js +18 -0
- package/dist/tools/format/inspection-format.js.map +1 -1
- package/dist/tools/format/pages-format.d.ts +1 -1
- package/dist/tools/format/pages-format.d.ts.map +1 -1
- package/dist/tools/format/pages-format.js +7 -0
- package/dist/tools/format/pages-format.js.map +1 -1
- package/dist/tools/format/sources-format.d.ts +12 -5
- package/dist/tools/format/sources-format.d.ts.map +1 -1
- package/dist/tools/format/sources-format.js +31 -6
- package/dist/tools/format/sources-format.js.map +1 -1
- package/dist/tools/health.d.ts.map +1 -1
- package/dist/tools/health.js +85 -11
- package/dist/tools/health.js.map +1 -1
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +7 -0
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/inspection.d.ts +34 -0
- package/dist/tools/inspection.d.ts.map +1 -1
- package/dist/tools/inspection.js +666 -62
- package/dist/tools/inspection.js.map +1 -1
- package/dist/tools/layout-flatten.d.ts +7 -1
- package/dist/tools/layout-flatten.d.ts.map +1 -1
- package/dist/tools/layout-flatten.js +24 -13
- package/dist/tools/layout-flatten.js.map +1 -1
- package/dist/tools/library.d.ts +29 -2
- package/dist/tools/library.d.ts.map +1 -1
- package/dist/tools/library.js +247 -34
- package/dist/tools/library.js.map +1 -1
- package/dist/tools/local-content/builders.js +14 -14
- package/dist/tools/local-content/builders.js.map +1 -1
- package/dist/tools/local-content/handlers.d.ts +3 -1
- package/dist/tools/local-content/handlers.d.ts.map +1 -1
- package/dist/tools/local-content/handlers.js +42 -9
- package/dist/tools/local-content/handlers.js.map +1 -1
- package/dist/tools/local-content/schemas.d.ts +9 -4
- package/dist/tools/local-content/schemas.d.ts.map +1 -1
- package/dist/tools/local-content/schemas.js +14 -6
- package/dist/tools/local-content/schemas.js.map +1 -1
- package/dist/tools/multi-items/builders.d.ts.map +1 -1
- package/dist/tools/multi-items/builders.js +11 -10
- package/dist/tools/multi-items/builders.js.map +1 -1
- package/dist/tools/navigation/builders.d.ts +18 -0
- package/dist/tools/navigation/builders.d.ts.map +1 -0
- package/dist/tools/navigation/builders.js +47 -0
- package/dist/tools/navigation/builders.js.map +1 -0
- package/dist/tools/navigation/handlers.d.ts +30 -0
- package/dist/tools/navigation/handlers.d.ts.map +1 -0
- package/dist/tools/navigation/handlers.js +41 -0
- package/dist/tools/navigation/handlers.js.map +1 -0
- package/dist/tools/navigation/index.d.ts +15 -0
- package/dist/tools/navigation/index.d.ts.map +1 -0
- package/dist/tools/navigation/index.js +14 -0
- package/dist/tools/navigation/index.js.map +1 -0
- package/dist/tools/navigation/schemas.d.ts +46 -0
- package/dist/tools/navigation/schemas.d.ts.map +1 -0
- package/dist/tools/navigation/schemas.js +41 -0
- package/dist/tools/navigation/schemas.js.map +1 -0
- package/dist/tools/pages/builders.d.ts.map +1 -1
- package/dist/tools/pages/builders.js +213 -81
- package/dist/tools/pages/builders.js.map +1 -1
- package/dist/tools/pages/handlers-audit.d.ts +112 -3
- package/dist/tools/pages/handlers-audit.d.ts.map +1 -1
- package/dist/tools/pages/handlers-audit.js +623 -7
- package/dist/tools/pages/handlers-audit.js.map +1 -1
- package/dist/tools/pages/handlers-read.d.ts +51 -8
- package/dist/tools/pages/handlers-read.d.ts.map +1 -1
- package/dist/tools/pages/handlers-read.js +348 -69
- package/dist/tools/pages/handlers-read.js.map +1 -1
- package/dist/tools/pages/handlers-write.d.ts +7 -3
- package/dist/tools/pages/handlers-write.d.ts.map +1 -1
- package/dist/tools/pages/handlers-write.js +69 -25
- package/dist/tools/pages/handlers-write.js.map +1 -1
- package/dist/tools/pages/header-transparency.d.ts +64 -0
- package/dist/tools/pages/header-transparency.d.ts.map +1 -0
- package/dist/tools/pages/header-transparency.js +119 -0
- package/dist/tools/pages/header-transparency.js.map +1 -0
- package/dist/tools/pages/schemas.d.ts +284 -13
- package/dist/tools/pages/schemas.d.ts.map +1 -1
- package/dist/tools/pages/schemas.js +434 -26
- package/dist/tools/pages/schemas.js.map +1 -1
- package/dist/tools/pages/target.d.ts +162 -0
- package/dist/tools/pages/target.d.ts.map +1 -0
- package/dist/tools/pages/target.js +239 -0
- package/dist/tools/pages/target.js.map +1 -0
- package/dist/tools/response-budget.d.ts +77 -0
- package/dist/tools/response-budget.d.ts.map +1 -0
- package/dist/tools/response-budget.js +134 -0
- package/dist/tools/response-budget.js.map +1 -0
- package/dist/tools/shared-schemas.d.ts +45 -0
- package/dist/tools/shared-schemas.d.ts.map +1 -1
- package/dist/tools/shared-schemas.js +50 -0
- package/dist/tools/shared-schemas.js.map +1 -1
- package/dist/tools/sources/builders.d.ts.map +1 -1
- package/dist/tools/sources/builders.js +55 -39
- package/dist/tools/sources/builders.js.map +1 -1
- package/dist/tools/sources/handlers-bind.d.ts +10 -11
- package/dist/tools/sources/handlers-bind.d.ts.map +1 -1
- package/dist/tools/sources/handlers-bind.js +110 -9
- package/dist/tools/sources/handlers-bind.js.map +1 -1
- package/dist/tools/sources/handlers.d.ts +4 -2
- package/dist/tools/sources/handlers.d.ts.map +1 -1
- package/dist/tools/sources/handlers.js +11 -7
- package/dist/tools/sources/handlers.js.map +1 -1
- package/dist/tools/sparse-fields.d.ts +61 -8
- package/dist/tools/sparse-fields.d.ts.map +1 -1
- package/dist/tools/sparse-fields.js +124 -12
- package/dist/tools/sparse-fields.js.map +1 -1
- package/dist/tools/sublayout/builders.d.ts.map +1 -1
- package/dist/tools/sublayout/builders.js +1 -2
- package/dist/tools/sublayout/builders.js.map +1 -1
- package/dist/tools/tool-builder/results.d.ts +19 -6
- package/dist/tools/tool-builder/results.d.ts.map +1 -1
- package/dist/tools/tool-builder/results.js +133 -6
- package/dist/tools/tool-builder/results.js.map +1 -1
- package/manifest.json +1 -1
- package/package.json +2 -2
- package/skills/yt-builder-mcp/SKILL.md +1713 -72
|
@@ -13,10 +13,11 @@
|
|
|
13
13
|
*/
|
|
14
14
|
import { elicitConfirmation } from '@getimo/mcp-toolkit';
|
|
15
15
|
import { encodeElementPath, encodeTemplateId } from '../../client.js';
|
|
16
|
+
import { RestError } from '../../errors.js';
|
|
16
17
|
import { BIND_VIA_GATEWAY_EXAMPLE, BIND_VIA_GATEWAY_HINT } from '../bind-guidance.js';
|
|
17
18
|
import { PHASE_CONFIRM, PHASE_SEND } from '../progress-phases.js';
|
|
18
19
|
import { confirmGuard, createProgressReporter, errorResult, jsonResult, } from '../tool-builder.js';
|
|
19
|
-
import { validatePropsAgainstLiveSchema } from './schema-validation.js';
|
|
20
|
+
import { fetchSchemaFields, guardHeaderTransparencyWrite, seedRequiredEnumDefaults, validateEnumPropValues, validatePropsAgainstLiveSchema, withHeaderTransparencyWarnings, } from './schema-validation.js';
|
|
20
21
|
// ─── Wave-7 (2026-05-29): props validation ──────────────────────────
|
|
21
22
|
//
|
|
22
23
|
// Cold-AI #5 hand-authored `props.source` / `props.source_extended` via
|
|
@@ -260,6 +261,53 @@ function validateChildrenTree(children) {
|
|
|
260
261
|
}
|
|
261
262
|
return null;
|
|
262
263
|
}
|
|
264
|
+
/**
|
|
265
|
+
* ELEMENT_WRITE-12 — status/code-aware catch hint for `element_add`.
|
|
266
|
+
*
|
|
267
|
+
* The former hint was a single static string mentioning 412 + 400 for EVERY
|
|
268
|
+
* failure. The actual high-frequency failure is a 422
|
|
269
|
+
* `…elements.invalid_hierarchy` (e.g. adding a `row` at the layout root) — which
|
|
270
|
+
* is neither 412 nor 400, and whose real fix (scaffold_section) went unnamed.
|
|
271
|
+
* Inspect the RestError and emit the fix that matches the failure.
|
|
272
|
+
*/
|
|
273
|
+
function elementAddHint(e) {
|
|
274
|
+
if (e instanceof RestError) {
|
|
275
|
+
const code = e.code ?? '';
|
|
276
|
+
if (e.status === 422 && code.includes('invalid_hierarchy')) {
|
|
277
|
+
return ('invalid_hierarchy: this element type cannot be added at that parent ' +
|
|
278
|
+
'(e.g. a row/column at the layout root). Call ' +
|
|
279
|
+
'yootheme_builder_scaffold_section({ template_id, columns }) to create a ' +
|
|
280
|
+
'valid section→row→column hull, then pass a returned column path as ' +
|
|
281
|
+
'parent_path.');
|
|
282
|
+
}
|
|
283
|
+
if (e.status === 412) {
|
|
284
|
+
return 'On 412 refresh via yootheme_builder_get_etag and retry.';
|
|
285
|
+
}
|
|
286
|
+
if (e.status === 400) {
|
|
287
|
+
return 'On 400 check `element_type` is valid via yootheme_builder_element_types_list.';
|
|
288
|
+
}
|
|
289
|
+
}
|
|
290
|
+
return ('On 412 refresh via yootheme_builder_get_etag and retry. On 400 check ' +
|
|
291
|
+
'`element_type` is valid via yootheme_builder_element_types_list. On 422 ' +
|
|
292
|
+
'invalid_hierarchy scaffold a section→row→column hull first with ' +
|
|
293
|
+
'yootheme_builder_scaffold_section and add into a returned column path.');
|
|
294
|
+
}
|
|
295
|
+
/**
|
|
296
|
+
* ELEMENT_WRITE-12 — status/code-aware catch hint for `element_update_settings`.
|
|
297
|
+
* A 422 invalid-value (a prop value the element rejects) is NOT fixed by
|
|
298
|
+
* `merge:true`, so the merge advice only rides on the non-422 path.
|
|
299
|
+
*/
|
|
300
|
+
function elementUpdateHint(e) {
|
|
301
|
+
if (e instanceof RestError && e.status === 422) {
|
|
302
|
+
return ('On 422 a prop VALUE was rejected by the element (invalid enum / type). ' +
|
|
303
|
+
'Fetch the accepted values with yootheme_builder_element_type_get_schema ' +
|
|
304
|
+
'(read each field\'s value_hint/enum) and resend a valid value — ' +
|
|
305
|
+
'`merge:true` does NOT fix an invalid value.');
|
|
306
|
+
}
|
|
307
|
+
return ('On 412 refresh via yootheme_builder_get_etag and retry. To merge ' +
|
|
308
|
+
'props instead of replacing, pass `merge:true` (server deep-merges ' +
|
|
309
|
+
'the request into current props).');
|
|
310
|
+
}
|
|
263
311
|
// ─── element_add ─────────────────────────────────────────────────────
|
|
264
312
|
export async function handleElementAdd({ client }, input, extra) {
|
|
265
313
|
// Union of F165 (type_name → element_type alias) and F70 (position →
|
|
@@ -286,6 +334,10 @@ export async function handleElementAdd({ client }, input, extra) {
|
|
|
286
334
|
const body = {
|
|
287
335
|
parent_path: typeof rest.parent_path === 'string' ? rest.parent_path : '',
|
|
288
336
|
element_type: elementType,
|
|
337
|
+
// ELEMENT_WRITE-4 (part 2): the first-class builder name → node-level
|
|
338
|
+
// `name`. Only forwarded when a non-empty string so an omitted/blank
|
|
339
|
+
// value leaves the server default (an unnamed node) untouched.
|
|
340
|
+
...(typeof rest.name === 'string' && rest.name !== '' ? { name: rest.name } : {}),
|
|
289
341
|
...(rest.props !== undefined ? { props: rest.props } : {}),
|
|
290
342
|
...(rest.children !== undefined ? { children: rest.children } : {}),
|
|
291
343
|
...(resolvedIndex !== undefined ? { index: resolvedIndex } : {}),
|
|
@@ -304,6 +356,14 @@ export async function handleElementAdd({ client }, input, extra) {
|
|
|
304
356
|
const childrenRejection = validateChildrenTree(input.children);
|
|
305
357
|
if (childrenRejection !== null)
|
|
306
358
|
return childrenRejection;
|
|
359
|
+
// Ordering-red-border fix (2026-07-25): fetch the live element-type
|
|
360
|
+
// schema ONCE here — reused below for the unknown-KEY check (B3), the
|
|
361
|
+
// explicit-invalid-enum-VALUE hard-reject, and the required-enum
|
|
362
|
+
// default-seeding, so one element_add call never triggers more than one
|
|
363
|
+
// schema round-trip. Best-effort: ANY failure (network, non-2xx, unknown
|
|
364
|
+
// shape) resolves to `null` and every dependent check below falls
|
|
365
|
+
// through to its pre-fix behaviour (additive-before-breaking).
|
|
366
|
+
const schemaFields = await fetchSchemaFields(client, elementType);
|
|
307
367
|
// B3 (2026-06-29): live-schema cross-check. The static guards above catch a
|
|
308
368
|
// fixed set of known mistakes; this rejects ANY top-level prop key absent
|
|
309
369
|
// from the element-type's real schema (fields[].name) — the silent-drop
|
|
@@ -315,9 +375,33 @@ export async function handleElementAdd({ client }, input, extra) {
|
|
|
315
375
|
elementType,
|
|
316
376
|
props: input.props,
|
|
317
377
|
reservedKeys: RESERVED_BINDING_KEYS,
|
|
378
|
+
fields: schemaFields,
|
|
318
379
|
});
|
|
319
380
|
if (liveSchemaRejection !== null)
|
|
320
381
|
return liveSchemaRejection;
|
|
382
|
+
// Ordering-red-border fix (2026-07-25): a caller-supplied value for a
|
|
383
|
+
// KNOWN enum-constrained field that is not one of its accepted members is
|
|
384
|
+
// hard-rejected up-front with an actionable message — the same mistake
|
|
385
|
+
// the PHP write guard would 422 on, caught earlier. Never touches a key
|
|
386
|
+
// the caller did NOT supply (that's the seeding step below).
|
|
387
|
+
const enumValueRejection = validateEnumPropValues({
|
|
388
|
+
elementType,
|
|
389
|
+
fields: schemaFields ?? [],
|
|
390
|
+
props: input.props,
|
|
391
|
+
reservedKeys: RESERVED_BINDING_KEYS,
|
|
392
|
+
});
|
|
393
|
+
if (enumValueRejection !== null)
|
|
394
|
+
return enumValueRejection;
|
|
395
|
+
// Ordering-red-border fix (2026-07-25): seed every REQUIRED enum field
|
|
396
|
+
// (schema `enum` without a `''` member) that declares a non-empty schema
|
|
397
|
+
// `default` and that the caller did NOT supply — mirrors what YOOtheme's
|
|
398
|
+
// own native element-creation initialises. Without this, an element
|
|
399
|
+
// created via element_add carries NO value for a required dropdown (e.g.
|
|
400
|
+
// "Ordering"), and the Vue Builder flags it red. A caller-supplied value
|
|
401
|
+
// (already validated above) is NEVER overwritten.
|
|
402
|
+
if (schemaFields !== null) {
|
|
403
|
+
body.props = seedRequiredEnumDefaults(schemaFields, body.props);
|
|
404
|
+
}
|
|
321
405
|
const progress = extra ? createProgressReporter(extra) : null;
|
|
322
406
|
await progress?.report(0, 2, PHASE_SEND);
|
|
323
407
|
try {
|
|
@@ -329,8 +413,7 @@ export async function handleElementAdd({ client }, input, extra) {
|
|
|
329
413
|
return errorResult({
|
|
330
414
|
error: e,
|
|
331
415
|
context: input,
|
|
332
|
-
hint:
|
|
333
|
-
'check `element_type` is valid via yootheme_builder_element_types_list.',
|
|
416
|
+
hint: elementAddHint(e),
|
|
334
417
|
});
|
|
335
418
|
}
|
|
336
419
|
}
|
|
@@ -393,19 +476,43 @@ async function discoverElementType(client, template_id, element_path) {
|
|
|
393
476
|
}
|
|
394
477
|
}
|
|
395
478
|
export async function handleElementUpdateSettings({ client }, input, extra) {
|
|
396
|
-
const { template_id, element_path, props, merge, unset, etag } = input;
|
|
479
|
+
const { template_id, element_path, props, name, merge, unset, etag } = input;
|
|
397
480
|
// Wave-7: guard against hand-authored source/source_extended in props.
|
|
398
481
|
// element_path is the only identity we have at this layer; the agent gets
|
|
399
482
|
// a clear message anyway because the offending key is named explicitly.
|
|
400
483
|
const propsRejection = validatePropsForReservedKeys(props, `<at ${element_path}>`);
|
|
401
484
|
if (propsRejection !== null)
|
|
402
485
|
return propsRejection;
|
|
486
|
+
// Task 6 (transparent-header plan, 2026-07-27): the ONE client-side
|
|
487
|
+
// chokepoint for YOOtheme's three `header_transparent*` section props.
|
|
488
|
+
// Runs BEFORE the live-schema probe because it is decided from the payload
|
|
489
|
+
// alone — a dead prop needs no network round-trip and no theme knowledge.
|
|
490
|
+
// Rejects class A (props YOOtheme never reads), defaults a switched-on
|
|
491
|
+
// transparent header's colour to `''` (never `'light'`), and passes class C
|
|
492
|
+
// (a hero medium) through with a warning. Class B needs the compiled
|
|
493
|
+
// `theme.css`, which this process cannot read — it stays server-side and is
|
|
494
|
+
// deliberately NOT approximated here.
|
|
495
|
+
const headerGuard = guardHeaderTransparencyWrite({
|
|
496
|
+
props,
|
|
497
|
+
merge,
|
|
498
|
+
unset,
|
|
499
|
+
elementPath: element_path,
|
|
500
|
+
});
|
|
501
|
+
if (headerGuard.rejection !== null)
|
|
502
|
+
return headerGuard.rejection;
|
|
503
|
+
const effectiveProps = headerGuard.props ?? props;
|
|
403
504
|
// B3 (2026-06-29): live-schema cross-check. This handler has no
|
|
404
505
|
// `element_type` input, so discover it best-effort via the element read,
|
|
405
506
|
// then validate props against the real schema. ANY failure (type
|
|
406
507
|
// undiscoverable, schema fetch error, empty field list) falls through to
|
|
407
508
|
// the prior behaviour — the write is never broken by the probe. Skipped
|
|
408
509
|
// when there are no props to validate so a no-op update stays a single call.
|
|
510
|
+
//
|
|
511
|
+
// Deliberately validates the CALLER's props, not `effectiveProps`: the
|
|
512
|
+
// header guard above may have seeded `header_transparent_text_color: ''`,
|
|
513
|
+
// and an older plugin whose schema predates that field would then have this
|
|
514
|
+
// check hard-reject OUR OWN seed. A seeded key is a no-op server-side
|
|
515
|
+
// anyway (an absent colour and `''` render identically).
|
|
409
516
|
if (props !== null && typeof props === 'object' && Object.keys(props).length > 0) {
|
|
410
517
|
const discoveredType = await discoverElementType(client, template_id, element_path);
|
|
411
518
|
if (discoveredType !== null) {
|
|
@@ -426,10 +533,21 @@ export async function handleElementUpdateSettings({ client }, input, extra) {
|
|
|
426
533
|
// T5 / F-12: forward `merge` only when explicitly true so older PHP
|
|
427
534
|
// builds (which ignore unknown keys anyway) get the same byte-for-
|
|
428
535
|
// byte body they did before.
|
|
429
|
-
|
|
536
|
+
// Task 6: `effectiveProps` is the SAME reference as `props` unless the
|
|
537
|
+
// header guard seeded the theme-default colour, so every other write
|
|
538
|
+
// keeps its byte-identical body.
|
|
539
|
+
const body = {
|
|
540
|
+
props: effectiveProps,
|
|
541
|
+
};
|
|
430
542
|
if (merge === true) {
|
|
431
543
|
body.merge = true;
|
|
432
544
|
}
|
|
545
|
+
// ELEMENT_WRITE-4 (part 2): forward the first-class builder name → the
|
|
546
|
+
// node-level `name`. Only when a non-empty string so an omitted value
|
|
547
|
+
// leaves the current name unchanged.
|
|
548
|
+
if (typeof name === 'string' && name !== '') {
|
|
549
|
+
body.name = name;
|
|
550
|
+
}
|
|
433
551
|
// Task 10b: forward `unset` only when non-empty (same back-compat
|
|
434
552
|
// pattern as `merge`) — removal is never schema-validated, it
|
|
435
553
|
// mirrors the PHP side which honours an `unset` key in the PUT body.
|
|
@@ -438,15 +556,49 @@ export async function handleElementUpdateSettings({ client }, input, extra) {
|
|
|
438
556
|
}
|
|
439
557
|
const data = await client.put(`/pages/${encodeTemplateId(template_id)}/elements/${encoded}/settings`, { body, etag });
|
|
440
558
|
await progress?.report(2, 2, PHASE_CONFIRM);
|
|
559
|
+
// Task 6: a class-C write (transparent header over a hero medium) and
|
|
560
|
+
// a defaulted colour are ALLOWED — they ride back as non-blocking
|
|
561
|
+
// `warnings[]` so the agent learns what it must go and LOOK at.
|
|
562
|
+
// A write with no header props gets the untouched REST body back.
|
|
563
|
+
return jsonResult(withHeaderTransparencyWarnings(data, headerGuard.warnings));
|
|
564
|
+
}
|
|
565
|
+
catch (e) {
|
|
566
|
+
return errorResult({
|
|
567
|
+
error: e,
|
|
568
|
+
context: { template_id, element_path },
|
|
569
|
+
hint: elementUpdateHint(e),
|
|
570
|
+
});
|
|
571
|
+
}
|
|
572
|
+
}
|
|
573
|
+
// ─── element_set_status ───────────────────────────────────────────────
|
|
574
|
+
/**
|
|
575
|
+
* T-D1 — enable/disable an element via its `props.status` field, the SAME
|
|
576
|
+
* field YOOtheme's own native "Disable element" checkbox writes
|
|
577
|
+
* (`packages/builder/config/builder.php`: `true-value: 'disabled'`,
|
|
578
|
+
* `false-value: ''`) and the ONLY field its render pipeline's
|
|
579
|
+
* `DisabledTransform` checks (`props['status'] !== 'disabled'`). This
|
|
580
|
+
* handler is a thin REST proxy: it forwards `status` verbatim (as a
|
|
581
|
+
* boolean) in the PUT body — the enable-removes-the-key vs
|
|
582
|
+
* disable-writes-'disabled' semantics live server-side in
|
|
583
|
+
* `ElementOps::setStatus()`, which is the exact contract
|
|
584
|
+
* `LayoutAuditExtractor` / `pages_audit` / `template_summary` already read
|
|
585
|
+
* (`content_nodes.status`).
|
|
586
|
+
*/
|
|
587
|
+
export async function handleElementSetStatus({ client }, input, extra) {
|
|
588
|
+
const { template_id, element_path, status, etag } = input;
|
|
589
|
+
const encoded = encodeElementPath(element_path);
|
|
590
|
+
const progress = extra ? createProgressReporter(extra) : null;
|
|
591
|
+
await progress?.report(0, 2, PHASE_SEND);
|
|
592
|
+
try {
|
|
593
|
+
const data = await client.put(`/pages/${encodeTemplateId(template_id)}/elements/${encoded}/status`, { body: { status }, etag });
|
|
594
|
+
await progress?.report(2, 2, PHASE_CONFIRM);
|
|
441
595
|
return jsonResult(data);
|
|
442
596
|
}
|
|
443
597
|
catch (e) {
|
|
444
598
|
return errorResult({
|
|
445
599
|
error: e,
|
|
446
600
|
context: { template_id, element_path },
|
|
447
|
-
hint: 'On 412 refresh via yootheme_builder_get_etag and retry.
|
|
448
|
-
'props instead of replacing, pass `merge:true` (server deep-merges ' +
|
|
449
|
-
'the request into current props).',
|
|
601
|
+
hint: 'On 412 refresh via yootheme_builder_get_etag and retry.',
|
|
450
602
|
});
|
|
451
603
|
}
|
|
452
604
|
}
|
|
@@ -517,17 +669,85 @@ function isConfirmedFalse(v) {
|
|
|
517
669
|
return true;
|
|
518
670
|
return false;
|
|
519
671
|
}
|
|
520
|
-
|
|
672
|
+
/**
|
|
673
|
+
* ELEMENT_WRITE-10 — best-effort enrichment of a delete PREVIEW so the human
|
|
674
|
+
* sees WHAT would be deleted, not just a path. Reads the element (try/catch,
|
|
675
|
+
* never blocks the preview on failure) and derives `{element_type, label,
|
|
676
|
+
* descendant_count, text_excerpt}`. Deleting a section can remove 10 descendant
|
|
677
|
+
* nodes; naming them turns "delete element at /children/3" into an informed
|
|
678
|
+
* decision. Returns `{}` on ANY failure so the preview always renders.
|
|
679
|
+
*/
|
|
680
|
+
async function bestEffortDeletePreviewDetails(client, template_id, element_path) {
|
|
681
|
+
try {
|
|
682
|
+
const data = await client.get(`/pages/${encodeTemplateId(template_id)}/elements/${encodeElementPath(element_path)}`);
|
|
683
|
+
const elementType = typeof data.element_type === 'string' && data.element_type !== ''
|
|
684
|
+
? data.element_type
|
|
685
|
+
: typeof data.type === 'string'
|
|
686
|
+
? data.type
|
|
687
|
+
: undefined;
|
|
688
|
+
const label = typeof data.label === 'string' && data.label !== ''
|
|
689
|
+
? data.label
|
|
690
|
+
: typeof data.path_label === 'string' && data.path_label !== ''
|
|
691
|
+
? data.path_label
|
|
692
|
+
: undefined;
|
|
693
|
+
const descendantCount = countDescendants(data.children);
|
|
694
|
+
const excerpt = firstTextExcerpt(data.props);
|
|
695
|
+
const out = {};
|
|
696
|
+
if (elementType !== undefined)
|
|
697
|
+
out.element_type = elementType;
|
|
698
|
+
if (label !== undefined)
|
|
699
|
+
out.label = label;
|
|
700
|
+
out.descendant_count = descendantCount;
|
|
701
|
+
if (excerpt !== undefined)
|
|
702
|
+
out.text_excerpt = excerpt;
|
|
703
|
+
return out;
|
|
704
|
+
}
|
|
705
|
+
catch {
|
|
706
|
+
return {};
|
|
707
|
+
}
|
|
708
|
+
}
|
|
709
|
+
/** Deep-count every descendant node under a `children` array (0 when absent). */
|
|
710
|
+
function countDescendants(children) {
|
|
711
|
+
if (!Array.isArray(children))
|
|
712
|
+
return 0;
|
|
713
|
+
let total = 0;
|
|
714
|
+
for (const child of children) {
|
|
715
|
+
if (child !== null && typeof child === 'object' && !Array.isArray(child)) {
|
|
716
|
+
total += 1;
|
|
717
|
+
total += countDescendants(child.children);
|
|
718
|
+
}
|
|
719
|
+
}
|
|
720
|
+
return total;
|
|
721
|
+
}
|
|
722
|
+
/** First-line text excerpt from a props map's canonical text carriers, capped. */
|
|
723
|
+
function firstTextExcerpt(props) {
|
|
724
|
+
if (props === null || typeof props !== 'object' || Array.isArray(props))
|
|
725
|
+
return undefined;
|
|
726
|
+
const p = props;
|
|
727
|
+
for (const key of ['content', 'title', 'text']) {
|
|
728
|
+
const v = p[key];
|
|
729
|
+
if (typeof v === 'string' && v.trim() !== '') {
|
|
730
|
+
const firstLine = v.trim().split('\n')[0] ?? '';
|
|
731
|
+
return firstLine.length > 80 ? `${firstLine.slice(0, 80)}…` : firstLine;
|
|
732
|
+
}
|
|
733
|
+
}
|
|
734
|
+
return undefined;
|
|
735
|
+
}
|
|
736
|
+
async function resolveDeleteConfirm(client, elicitation, template_id, element_path, confirm) {
|
|
521
737
|
// Wave-6 R4: explicit truthy check — confirm:true (any form) bypasses
|
|
522
738
|
// the elicitation/preview path immediately.
|
|
523
739
|
if (isConfirmedTrue(confirm))
|
|
524
740
|
return null;
|
|
741
|
+
// ELEMENT_WRITE-10: only on the PREVIEW path (not a confirmed delete) enrich
|
|
742
|
+
// the details with WHAT is about to be deleted. Best-effort — never blocks.
|
|
743
|
+
const enriched = await bestEffortDeletePreviewDetails(client, template_id, element_path);
|
|
525
744
|
if (isConfirmedFalse(confirm) || !elicitation) {
|
|
526
745
|
return confirmGuard({
|
|
527
746
|
operation: 'delete element',
|
|
528
747
|
details: {
|
|
529
748
|
template_id,
|
|
530
749
|
element_path,
|
|
750
|
+
...enriched,
|
|
531
751
|
// R4: echo back what was received so the agent can compare.
|
|
532
752
|
// Wave-7 (2026-05-29): force-encode undefined to null so the
|
|
533
753
|
// key survives JSON.stringify in the agent-facing payload.
|
|
@@ -545,12 +765,12 @@ async function resolveDeleteConfirm(elicitation, template_id, element_path, conf
|
|
|
545
765
|
? null
|
|
546
766
|
: confirmGuard({
|
|
547
767
|
operation: 'delete element',
|
|
548
|
-
details: { template_id, element_path },
|
|
768
|
+
details: { template_id, element_path, ...enriched },
|
|
549
769
|
});
|
|
550
770
|
}
|
|
551
771
|
export async function handleElementDelete({ client, elicitation }, input, extra) {
|
|
552
772
|
const { template_id, element_path, etag, confirm } = input;
|
|
553
|
-
const blocked = await resolveDeleteConfirm(elicitation, template_id, element_path, confirm);
|
|
773
|
+
const blocked = await resolveDeleteConfirm(client, elicitation, template_id, element_path, confirm);
|
|
554
774
|
if (blocked)
|
|
555
775
|
return blocked;
|
|
556
776
|
const encoded = encodeElementPath(element_path);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handlers-write.js","sourceRoot":"","sources":["../../../src/tools/elements/handlers-write.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"handlers-write.js","sourceRoot":"","sources":["../../../src/tools/elements/handlers-write.ts"],"names":[],"mappings":"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"}
|
|
@@ -40,14 +40,15 @@ export declare const ELEMENT_LIST_OUTPUT_SCHEMA: z.ZodObject<{
|
|
|
40
40
|
projection_warning: z.ZodOptional<z.ZodString>;
|
|
41
41
|
}, z.core.$strip>;
|
|
42
42
|
export declare const ELEMENT_GET_OUTPUT_SCHEMA: z.ZodObject<{
|
|
43
|
-
template_id: z.ZodString
|
|
44
|
-
element_path: z.ZodString
|
|
43
|
+
template_id: z.ZodOptional<z.ZodString>;
|
|
44
|
+
element_path: z.ZodOptional<z.ZodString>;
|
|
45
45
|
rel_path: z.ZodOptional<z.ZodString>;
|
|
46
46
|
path_label: z.ZodOptional<z.ZodString>;
|
|
47
47
|
element_type: z.ZodString;
|
|
48
|
+
name: z.ZodOptional<z.ZodString>;
|
|
48
49
|
label: z.ZodOptional<z.ZodString>;
|
|
49
50
|
props: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
50
|
-
children_count: z.ZodNumber
|
|
51
|
+
children_count: z.ZodOptional<z.ZodNumber>;
|
|
51
52
|
source: z.ZodOptional<z.ZodUnknown>;
|
|
52
53
|
source_extended: z.ZodOptional<z.ZodUnknown>;
|
|
53
54
|
binding_summary: z.ZodOptional<z.ZodString>;
|
|
@@ -63,7 +64,7 @@ export interface ElementsHandlerDeps {
|
|
|
63
64
|
*/
|
|
64
65
|
readonly elicitation?: McpServerWithElicitation;
|
|
65
66
|
}
|
|
66
|
-
export declare function handleElementList({ client }: ElementsHandlerDeps, { template_id, fields, root_path, depth, limit, cursor, max_chars, }: {
|
|
67
|
+
export declare function handleElementList({ client }: ElementsHandlerDeps, { template_id, fields, root_path, depth, limit, cursor, max_chars, include_meta, }: {
|
|
67
68
|
template_id: string;
|
|
68
69
|
fields?: readonly string[];
|
|
69
70
|
root_path?: string;
|
|
@@ -71,10 +72,14 @@ export declare function handleElementList({ client }: ElementsHandlerDeps, { tem
|
|
|
71
72
|
limit?: number;
|
|
72
73
|
cursor?: string;
|
|
73
74
|
max_chars?: number;
|
|
75
|
+
/** T-C3 — opt-out for the toolkit's embedded `_meta` Rich-Card payload. */
|
|
76
|
+
include_meta?: boolean;
|
|
74
77
|
}): Promise<ToolResult>;
|
|
75
|
-
export declare function handleElementGet({ client }: ElementsHandlerDeps, { template_id, element_path }: {
|
|
78
|
+
export declare function handleElementGet({ client }: ElementsHandlerDeps, { template_id, element_path, fields, max_chars }: {
|
|
76
79
|
template_id: string;
|
|
77
80
|
element_path: string;
|
|
81
|
+
fields?: readonly string[];
|
|
82
|
+
max_chars?: number;
|
|
78
83
|
}): Promise<ToolResult>;
|
|
79
84
|
/**
|
|
80
85
|
* G5 — `layout_query` output schema. STRICT discipline (the G2 -32602 lesson):
|
|
@@ -100,16 +105,17 @@ export declare const LAYOUT_QUERY_OUTPUT_SCHEMA: z.ZodObject<{
|
|
|
100
105
|
}, z.core.$strip>;
|
|
101
106
|
/**
|
|
102
107
|
* G5 — `layout_query` handler. Forwards the AND-combined structured predicate
|
|
103
|
-
* (`type` / `name_matches` / `
|
|
104
|
-
* pagination (`limit` / `cursor`) as query params to the
|
|
105
|
-
* `GET /pages/{id}/query` endpoint — the filter runs in
|
|
106
|
-
* (no client-side re-filter). The matched node
|
|
107
|
-
* + the typed `structuredContent`.
|
|
108
|
+
* (`type` / `name_matches` / `content_contains` / `has_binding` / `max_depth` /
|
|
109
|
+
* `under_section`) + pagination (`limit` / `cursor`) as query params to the
|
|
110
|
+
* server-side `GET /pages/{id}/query` endpoint — the filter runs in
|
|
111
|
+
* `ElementOps::queryTemplate` (no client-side re-filter). The matched node
|
|
112
|
+
* rows render as the element table + the typed `structuredContent`.
|
|
108
113
|
*/
|
|
109
|
-
export declare function handleLayoutQuery({ client }: ElementsHandlerDeps, { template_id, type, name_matches, has_binding, max_depth, under_section, limit, cursor, fields, max_chars, }: {
|
|
114
|
+
export declare function handleLayoutQuery({ client }: ElementsHandlerDeps, { template_id, type, name_matches, content_contains, has_binding, max_depth, under_section, limit, cursor, fields, max_chars, include_meta, }: {
|
|
110
115
|
template_id: string;
|
|
111
116
|
type?: string | readonly string[];
|
|
112
117
|
name_matches?: string;
|
|
118
|
+
content_contains?: string;
|
|
113
119
|
has_binding?: boolean;
|
|
114
120
|
max_depth?: number;
|
|
115
121
|
under_section?: string;
|
|
@@ -117,6 +123,8 @@ export declare function handleLayoutQuery({ client }: ElementsHandlerDeps, { tem
|
|
|
117
123
|
cursor?: string;
|
|
118
124
|
fields?: readonly string[];
|
|
119
125
|
max_chars?: number;
|
|
126
|
+
/** T-C3 — opt-out for the toolkit's embedded `_meta` Rich-Card payload. */
|
|
127
|
+
include_meta?: boolean;
|
|
120
128
|
}): Promise<ToolResult>;
|
|
121
|
-
export { handleElementAdd, handleElementClone, handleElementDelete, handleElementMove, handleElementUpdateSettings, handleScaffoldSection, } from './handlers-write.js';
|
|
129
|
+
export { handleElementAdd, handleElementClone, handleElementDelete, handleElementMove, handleElementSetStatus, handleElementUpdateSettings, handleScaffoldSection, } from './handlers-write.js';
|
|
122
130
|
//# sourceMappingURL=handlers.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handlers.d.ts","sourceRoot":"","sources":["../../../src/tools/elements/handlers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAGH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAuC,KAAK,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAEvF,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"handlers.d.ts","sourceRoot":"","sources":["../../../src/tools/elements/handlers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAGH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAuC,KAAK,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAEvF,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAmBlE,OAAO,EAGH,KAAK,UAAU,EAClB,MAAM,oBAAoB,CAAC;AAI5B,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;iBAkGrC,CAAC;AAEH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;iBAkDpC,CAAC;AAIH,MAAM,WAAW,mBAAmB;IAChC,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;IAC5B;;;;;;OAMG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,wBAAwB,CAAC;CACnD;AAiCD,wBAAsB,iBAAiB,CACnC,EAAE,MAAM,EAAE,EAAE,mBAAmB,EAC/B,EACI,WAAW,EACX,MAAM,EACN,SAAS,EACT,KAAK,EACL,KAAK,EACL,MAAM,EACN,SAAS,EACT,YAAY,GACf,EAAE;IACC,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,2EAA2E;IAC3E,YAAY,CAAC,EAAE,OAAO,CAAC;CAC1B,GACF,OAAO,CAAC,UAAU,CAAC,CA+IrB;AAID,wBAAsB,gBAAgB,CAClC,EAAE,MAAM,EAAE,EAAE,mBAAmB,EAC/B,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE;IAC9C,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IAKrB,MAAM,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB,GACF,OAAO,CAAC,UAAU,CAAC,CAuIrB;AAID;;;;;GAKG;AACH,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;iBA+BrC,CAAC;AAEH;;;;;;;GAOG;AACH,wBAAsB,iBAAiB,CACnC,EAAE,MAAM,EAAE,EAAE,mBAAmB,EAC/B,EACI,WAAW,EACX,IAAI,EACJ,YAAY,EACZ,gBAAgB,EAChB,WAAW,EACX,SAAS,EACT,aAAa,EACb,KAAK,EACL,MAAM,EACN,MAAM,EACN,SAAS,EACT,YAAY,GACf,EAAE;IACC,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,CAAC;IAClC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,2EAA2E;IAC3E,YAAY,CAAC,EAAE,OAAO,CAAC;CAC1B,GACF,OAAO,CAAC,UAAU,CAAC,CA0FrB;AAGD,OAAO,EACH,gBAAgB,EAChB,kBAAkB,EAClB,mBAAmB,EACnB,iBAAiB,EACjB,sBAAsB,EACtB,2BAA2B,EAC3B,qBAAqB,GACxB,MAAM,qBAAqB,CAAC"}
|