@wootsup/yt-builder-mcp 1.1.6 → 1.2.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 +7 -7
- package/bin/yt-builder-mcp.js +55 -40
- package/dist/auth.d.ts +137 -0
- package/dist/auth.d.ts.map +1 -0
- package/dist/auth.js +244 -0
- package/dist/auth.js.map +1 -0
- package/dist/cli/invocation-decision.d.ts +57 -0
- package/dist/cli/invocation-decision.d.ts.map +1 -0
- package/dist/cli/invocation-decision.js +86 -0
- package/dist/cli/invocation-decision.js.map +1 -0
- package/dist/client.d.ts +112 -0
- package/dist/client.d.ts.map +1 -0
- package/dist/client.js +190 -0
- package/dist/client.js.map +1 -0
- package/dist/clients/claude-code.d.ts +18 -0
- package/dist/clients/claude-code.d.ts.map +1 -0
- package/dist/clients/claude-code.js +55 -0
- package/dist/clients/claude-code.js.map +1 -0
- package/dist/clients/claude-desktop.d.ts +19 -0
- package/dist/clients/claude-desktop.d.ts.map +1 -0
- package/dist/clients/claude-desktop.js +58 -0
- package/dist/clients/claude-desktop.js.map +1 -0
- package/dist/clients/cline.d.ts +26 -0
- package/dist/clients/cline.d.ts.map +1 -0
- package/dist/clients/cline.js +82 -0
- package/dist/clients/cline.js.map +1 -0
- package/dist/clients/codex-cli.d.ts +42 -0
- package/dist/clients/codex-cli.d.ts.map +1 -0
- package/dist/clients/codex-cli.js +292 -0
- package/dist/clients/codex-cli.js.map +1 -0
- package/dist/clients/continue.d.ts +13 -0
- package/dist/clients/continue.d.ts.map +1 -0
- package/dist/clients/continue.js +121 -0
- package/dist/clients/continue.js.map +1 -0
- package/dist/clients/cursor.d.ts +12 -0
- package/dist/clients/cursor.d.ts.map +1 -0
- package/dist/clients/cursor.js +40 -0
- package/dist/clients/cursor.js.map +1 -0
- package/dist/clients/gemini-cli.d.ts +18 -0
- package/dist/clients/gemini-cli.d.ts.map +1 -0
- package/dist/clients/gemini-cli.js +46 -0
- package/dist/clients/gemini-cli.js.map +1 -0
- package/dist/clients/home.d.ts +14 -0
- package/dist/clients/home.d.ts.map +1 -0
- package/dist/clients/home.js +20 -0
- package/dist/clients/home.js.map +1 -0
- package/dist/clients/index.d.ts +156 -0
- package/dist/clients/index.d.ts.map +1 -0
- package/dist/clients/index.js +213 -0
- package/dist/clients/index.js.map +1 -0
- package/dist/clients/roo-code.d.ts +23 -0
- package/dist/clients/roo-code.d.ts.map +1 -0
- package/dist/clients/roo-code.js +71 -0
- package/dist/clients/roo-code.js.map +1 -0
- package/dist/clients/zed.d.ts +12 -0
- package/dist/clients/zed.d.ts.map +1 -0
- package/dist/clients/zed.js +43 -0
- package/dist/clients/zed.js.map +1 -0
- package/dist/errors/hints.d.ts +51 -0
- package/dist/errors/hints.d.ts.map +1 -0
- package/dist/errors/hints.js +95 -0
- package/dist/errors/hints.js.map +1 -0
- package/dist/errors/mask.d.ts +35 -0
- package/dist/errors/mask.d.ts.map +1 -0
- package/dist/errors/mask.js +49 -0
- package/dist/errors/mask.js.map +1 -0
- package/dist/errors/sanitize.d.ts +31 -0
- package/dist/errors/sanitize.d.ts.map +1 -0
- package/dist/errors/sanitize.js +100 -0
- package/dist/errors/sanitize.js.map +1 -0
- package/dist/errors.d.ts +42 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/errors.js +61 -0
- package/dist/errors.js.map +1 -0
- package/dist/gateway/advanced-tool/discovery.d.ts +19 -0
- package/dist/gateway/advanced-tool/discovery.d.ts.map +1 -0
- package/dist/gateway/advanced-tool/discovery.js +53 -0
- package/dist/gateway/advanced-tool/discovery.js.map +1 -0
- package/dist/gateway/advanced-tool/domains.d.ts +47 -0
- package/dist/gateway/advanced-tool/domains.d.ts.map +1 -0
- package/dist/gateway/advanced-tool/domains.js +94 -0
- package/dist/gateway/advanced-tool/domains.js.map +1 -0
- package/dist/gateway/advanced-tool/execute.d.ts +29 -0
- package/dist/gateway/advanced-tool/execute.d.ts.map +1 -0
- package/dist/gateway/advanced-tool/execute.js +54 -0
- package/dist/gateway/advanced-tool/execute.js.map +1 -0
- package/dist/gateway/advanced-tool/index.d.ts +36 -0
- package/dist/gateway/advanced-tool/index.d.ts.map +1 -0
- package/dist/gateway/advanced-tool/index.js +39 -0
- package/dist/gateway/advanced-tool/index.js.map +1 -0
- package/dist/gateway/advanced-tool/register.d.ts +18 -0
- package/dist/gateway/advanced-tool/register.d.ts.map +1 -0
- package/dist/gateway/advanced-tool/register.js +69 -0
- package/dist/gateway/advanced-tool/register.js.map +1 -0
- package/dist/gateway/advanced-tool.d.ts +13 -0
- package/dist/gateway/advanced-tool.d.ts.map +1 -0
- package/dist/gateway/advanced-tool.js +13 -0
- package/dist/gateway/advanced-tool.js.map +1 -0
- package/dist/gateway/capturing-server.d.ts +117 -0
- package/dist/gateway/capturing-server.d.ts.map +1 -0
- package/dist/gateway/capturing-server.js +103 -0
- package/dist/gateway/capturing-server.js.map +1 -0
- package/dist/gateway/essentials.d.ts +50 -0
- package/dist/gateway/essentials.d.ts.map +1 -0
- package/dist/gateway/essentials.js +108 -0
- package/dist/gateway/essentials.js.map +1 -0
- package/dist/gateway/test-support.d.ts +41 -0
- package/dist/gateway/test-support.d.ts.map +1 -0
- package/dist/gateway/test-support.js +60 -0
- package/dist/gateway/test-support.js.map +1 -0
- package/dist/index.d.ts +30 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +119 -0
- package/dist/index.js.map +1 -0
- package/dist/install-skill.d.ts +43 -0
- package/dist/install-skill.d.ts.map +1 -0
- package/dist/install-skill.js +118 -0
- package/dist/install-skill.js.map +1 -0
- package/dist/platform/detect.d.ts +64 -0
- package/dist/platform/detect.d.ts.map +1 -0
- package/dist/platform/detect.js +98 -0
- package/dist/platform/detect.js.map +1 -0
- package/dist/platform/index.d.ts +121 -0
- package/dist/platform/index.d.ts.map +1 -0
- package/dist/platform/index.js +176 -0
- package/dist/platform/index.js.map +1 -0
- package/dist/platform/joomla.d.ts +44 -0
- package/dist/platform/joomla.d.ts.map +1 -0
- package/dist/platform/joomla.js +46 -0
- package/dist/platform/joomla.js.map +1 -0
- package/dist/server.d.ts +110 -0
- package/dist/server.d.ts.map +1 -0
- package/dist/server.js +274 -0
- package/dist/server.js.map +1 -0
- package/dist/setup-cli-confirm.d.ts +36 -0
- package/dist/setup-cli-confirm.d.ts.map +1 -0
- package/dist/setup-cli-confirm.js +59 -0
- package/dist/setup-cli-confirm.js.map +1 -0
- package/dist/setup-cli.d.ts +193 -0
- package/dist/setup-cli.d.ts.map +1 -0
- package/dist/setup-cli.js +1032 -0
- package/dist/setup-cli.js.map +1 -0
- package/dist/setup-prompts.d.ts +64 -0
- package/dist/setup-prompts.d.ts.map +1 -0
- package/dist/setup-prompts.js +221 -0
- package/dist/setup-prompts.js.map +1 -0
- package/dist/setup-token.d.ts +38 -0
- package/dist/setup-token.d.ts.map +1 -0
- package/dist/setup-token.js +106 -0
- package/dist/setup-token.js.map +1 -0
- package/dist/setup-wizard-defaults.d.ts +43 -0
- package/dist/setup-wizard-defaults.d.ts.map +1 -0
- package/dist/setup-wizard-defaults.js +160 -0
- package/dist/setup-wizard-defaults.js.map +1 -0
- package/dist/setup-wizard-handshake.d.ts +25 -0
- package/dist/setup-wizard-handshake.d.ts.map +1 -0
- package/dist/setup-wizard-handshake.js +103 -0
- package/dist/setup-wizard-handshake.js.map +1 -0
- package/dist/setup-wizard-types.d.ts +164 -0
- package/dist/setup-wizard-types.d.ts.map +1 -0
- package/dist/setup-wizard-types.js +11 -0
- package/dist/setup-wizard-types.js.map +1 -0
- package/dist/setup-wizard.d.ts +33 -0
- package/dist/setup-wizard.d.ts.map +1 -0
- package/dist/setup-wizard.js +199 -0
- package/dist/setup-wizard.js.map +1 -0
- package/dist/setup.d.ts +17 -0
- package/dist/setup.d.ts.map +1 -0
- package/dist/setup.js +33 -0
- package/dist/setup.js.map +1 -0
- package/dist/sites/bootstrap.d.ts +41 -0
- package/dist/sites/bootstrap.d.ts.map +1 -0
- package/dist/sites/bootstrap.js +58 -0
- package/dist/sites/bootstrap.js.map +1 -0
- package/dist/sites/cli/add-site.d.ts +106 -0
- package/dist/sites/cli/add-site.d.ts.map +1 -0
- package/dist/sites/cli/add-site.js +185 -0
- package/dist/sites/cli/add-site.js.map +1 -0
- package/dist/sites/cli/list-sites.d.ts +40 -0
- package/dist/sites/cli/list-sites.d.ts.map +1 -0
- package/dist/sites/cli/list-sites.js +116 -0
- package/dist/sites/cli/list-sites.js.map +1 -0
- package/dist/sites/cli/remove-site.d.ts +60 -0
- package/dist/sites/cli/remove-site.d.ts.map +1 -0
- package/dist/sites/cli/remove-site.js +120 -0
- package/dist/sites/cli/remove-site.js.map +1 -0
- package/dist/sites/cli/set-default.d.ts +47 -0
- package/dist/sites/cli/set-default.d.ts.map +1 -0
- package/dist/sites/cli/set-default.js +69 -0
- package/dist/sites/cli/set-default.js.map +1 -0
- package/dist/sites/cli/test-site.d.ts +77 -0
- package/dist/sites/cli/test-site.d.ts.map +1 -0
- package/dist/sites/cli/test-site.js +146 -0
- package/dist/sites/cli/test-site.js.map +1 -0
- package/dist/sites/client-pool.d.ts +157 -0
- package/dist/sites/client-pool.d.ts.map +1 -0
- package/dist/sites/client-pool.js +222 -0
- package/dist/sites/client-pool.js.map +1 -0
- package/dist/sites/env-bridge.d.ts +55 -0
- package/dist/sites/env-bridge.d.ts.map +1 -0
- package/dist/sites/env-bridge.js +94 -0
- package/dist/sites/env-bridge.js.map +1 -0
- package/dist/sites/paths.d.ts +21 -0
- package/dist/sites/paths.d.ts.map +1 -0
- package/dist/sites/paths.js +37 -0
- package/dist/sites/paths.js.map +1 -0
- package/dist/sites/probe.d.ts +60 -0
- package/dist/sites/probe.d.ts.map +1 -0
- package/dist/sites/probe.js +112 -0
- package/dist/sites/probe.js.map +1 -0
- package/dist/sites/registry.d.ts +142 -0
- package/dist/sites/registry.d.ts.map +1 -0
- package/dist/sites/registry.js +163 -0
- package/dist/sites/registry.js.map +1 -0
- package/dist/sites/schema.d.ts +90 -0
- package/dist/sites/schema.d.ts.map +1 -0
- package/dist/sites/schema.js +71 -0
- package/dist/sites/schema.js.map +1 -0
- package/dist/sites/secret-resolver.d.ts +115 -0
- package/dist/sites/secret-resolver.d.ts.map +1 -0
- package/dist/sites/secret-resolver.js +225 -0
- package/dist/sites/secret-resolver.js.map +1 -0
- package/dist/sites/store.d.ts +82 -0
- package/dist/sites/store.d.ts.map +1 -0
- package/dist/sites/store.js +198 -0
- package/dist/sites/store.js.map +1 -0
- package/dist/sites/tools/index.d.ts +28 -0
- package/dist/sites/tools/index.d.ts.map +1 -0
- package/dist/sites/tools/index.js +38 -0
- package/dist/sites/tools/index.js.map +1 -0
- package/dist/sites/tools/sites-list.d.ts +48 -0
- package/dist/sites/tools/sites-list.d.ts.map +1 -0
- package/dist/sites/tools/sites-list.js +137 -0
- package/dist/sites/tools/sites-list.js.map +1 -0
- package/dist/sites/tools/sites-test.d.ts +47 -0
- package/dist/sites/tools/sites-test.d.ts.map +1 -0
- package/dist/sites/tools/sites-test.js +148 -0
- package/dist/sites/tools/sites-test.js.map +1 -0
- package/dist/sites/tools/use-site.d.ts +47 -0
- package/dist/sites/tools/use-site.d.ts.map +1 -0
- package/dist/sites/tools/use-site.js +183 -0
- package/dist/sites/tools/use-site.js.map +1 -0
- package/dist/skill-loader.d.ts +111 -0
- package/dist/skill-loader.d.ts.map +1 -0
- package/dist/skill-loader.js +191 -0
- package/dist/skill-loader.js.map +1 -0
- package/dist/tools/elements/builders.d.ts +24 -0
- package/dist/tools/elements/builders.d.ts.map +1 -0
- package/dist/tools/elements/builders.js +208 -0
- package/dist/tools/elements/builders.js.map +1 -0
- package/dist/tools/elements/handlers-write.d.ts +49 -0
- package/dist/tools/elements/handlers-write.d.ts.map +1 -0
- package/dist/tools/elements/handlers-write.js +341 -0
- package/dist/tools/elements/handlers-write.js.map +1 -0
- package/dist/tools/elements/handlers.d.ts +70 -0
- package/dist/tools/elements/handlers.d.ts.map +1 -0
- package/dist/tools/elements/handlers.js +292 -0
- package/dist/tools/elements/handlers.js.map +1 -0
- package/dist/tools/elements/index.d.ts +28 -0
- package/dist/tools/elements/index.d.ts.map +1 -0
- package/dist/tools/elements/index.js +27 -0
- package/dist/tools/elements/index.js.map +1 -0
- package/dist/tools/elements.d.ts +13 -0
- package/dist/tools/elements.d.ts.map +1 -0
- package/dist/tools/elements.js +13 -0
- package/dist/tools/elements.js.map +1 -0
- package/dist/tools/elicitation.d.ts +87 -0
- package/dist/tools/elicitation.d.ts.map +1 -0
- package/dist/tools/elicitation.js +100 -0
- package/dist/tools/elicitation.js.map +1 -0
- package/dist/tools/format/elements-format.d.ts +40 -0
- package/dist/tools/format/elements-format.d.ts.map +1 -0
- package/dist/tools/format/elements-format.js +193 -0
- package/dist/tools/format/elements-format.js.map +1 -0
- package/dist/tools/format/health-format.d.ts +79 -0
- package/dist/tools/format/health-format.d.ts.map +1 -0
- package/dist/tools/format/health-format.js +181 -0
- package/dist/tools/format/health-format.js.map +1 -0
- package/dist/tools/format/inspection-format.d.ts +70 -0
- package/dist/tools/format/inspection-format.d.ts.map +1 -0
- package/dist/tools/format/inspection-format.js +359 -0
- package/dist/tools/format/inspection-format.js.map +1 -0
- package/dist/tools/format/pages-format.d.ts +57 -0
- package/dist/tools/format/pages-format.d.ts.map +1 -0
- package/dist/tools/format/pages-format.js +157 -0
- package/dist/tools/format/pages-format.js.map +1 -0
- package/dist/tools/format/sources-format.d.ts +44 -0
- package/dist/tools/format/sources-format.d.ts.map +1 -0
- package/dist/tools/format/sources-format.js +242 -0
- package/dist/tools/format/sources-format.js.map +1 -0
- package/dist/tools/health.d.ts +22 -0
- package/dist/tools/health.d.ts.map +1 -0
- package/dist/tools/health.js +220 -0
- package/dist/tools/health.js.map +1 -0
- package/dist/tools/index.d.ts +30 -0
- package/dist/tools/index.d.ts.map +1 -0
- package/dist/tools/index.js +39 -0
- package/dist/tools/index.js.map +1 -0
- package/dist/tools/inspection.d.ts +14 -0
- package/dist/tools/inspection.d.ts.map +1 -0
- package/dist/tools/inspection.js +401 -0
- package/dist/tools/inspection.js.map +1 -0
- package/dist/tools/layout-flatten.d.ts +75 -0
- package/dist/tools/layout-flatten.d.ts.map +1 -0
- package/dist/tools/layout-flatten.js +107 -0
- package/dist/tools/layout-flatten.js.map +1 -0
- package/dist/tools/multi-items/builders.d.ts +23 -0
- package/dist/tools/multi-items/builders.d.ts.map +1 -0
- package/dist/tools/multi-items/builders.js +84 -0
- package/dist/tools/multi-items/builders.js.map +1 -0
- package/dist/tools/multi-items/clean-implode-handler.d.ts +36 -0
- package/dist/tools/multi-items/clean-implode-handler.d.ts.map +1 -0
- package/dist/tools/multi-items/clean-implode-handler.js +57 -0
- package/dist/tools/multi-items/clean-implode-handler.js.map +1 -0
- package/dist/tools/multi-items/format/inspection-format.d.ts +41 -0
- package/dist/tools/multi-items/format/inspection-format.d.ts.map +1 -0
- package/dist/tools/multi-items/format/inspection-format.js +64 -0
- package/dist/tools/multi-items/format/inspection-format.js.map +1 -0
- package/dist/tools/multi-items/index.d.ts +18 -0
- package/dist/tools/multi-items/index.d.ts.map +1 -0
- package/dist/tools/multi-items/index.js +18 -0
- package/dist/tools/multi-items/index.js.map +1 -0
- package/dist/tools/multi-items/inspect-handler.d.ts +76 -0
- package/dist/tools/multi-items/inspect-handler.d.ts.map +1 -0
- package/dist/tools/multi-items/inspect-handler.js +133 -0
- package/dist/tools/multi-items/inspect-handler.js.map +1 -0
- package/dist/tools/multi-items/inspection-cache.d.ts +85 -0
- package/dist/tools/multi-items/inspection-cache.d.ts.map +1 -0
- package/dist/tools/multi-items/inspection-cache.js +126 -0
- package/dist/tools/multi-items/inspection-cache.js.map +1 -0
- package/dist/tools/multi-items/item-container-map.d.ts +41 -0
- package/dist/tools/multi-items/item-container-map.d.ts.map +1 -0
- package/dist/tools/multi-items/item-container-map.js +73 -0
- package/dist/tools/multi-items/item-container-map.js.map +1 -0
- package/dist/tools/pages/builders.d.ts +43 -0
- package/dist/tools/pages/builders.d.ts.map +1 -0
- package/dist/tools/pages/builders.js +229 -0
- package/dist/tools/pages/builders.js.map +1 -0
- package/dist/tools/pages/handlers-read.d.ts +33 -0
- package/dist/tools/pages/handlers-read.d.ts.map +1 -0
- package/dist/tools/pages/handlers-read.js +260 -0
- package/dist/tools/pages/handlers-read.js.map +1 -0
- package/dist/tools/pages/handlers-write.d.ts +63 -0
- package/dist/tools/pages/handlers-write.d.ts.map +1 -0
- package/dist/tools/pages/handlers-write.js +127 -0
- package/dist/tools/pages/handlers-write.js.map +1 -0
- package/dist/tools/pages/index.d.ts +17 -0
- package/dist/tools/pages/index.d.ts.map +1 -0
- package/dist/tools/pages/index.js +17 -0
- package/dist/tools/pages/index.js.map +1 -0
- package/dist/tools/pages/schemas.d.ts +157 -0
- package/dist/tools/pages/schemas.d.ts.map +1 -0
- package/dist/tools/pages/schemas.js +232 -0
- package/dist/tools/pages/schemas.js.map +1 -0
- package/dist/tools/pages.d.ts +13 -0
- package/dist/tools/pages.d.ts.map +1 -0
- package/dist/tools/pages.js +13 -0
- package/dist/tools/pages.js.map +1 -0
- package/dist/tools/pool-resolve-helper.d.ts +83 -0
- package/dist/tools/pool-resolve-helper.d.ts.map +1 -0
- package/dist/tools/pool-resolve-helper.js +148 -0
- package/dist/tools/pool-resolve-helper.js.map +1 -0
- package/dist/tools/progress-phases.d.ts +46 -0
- package/dist/tools/progress-phases.d.ts.map +1 -0
- package/dist/tools/progress-phases.js +48 -0
- package/dist/tools/progress-phases.js.map +1 -0
- package/dist/tools/shared-schemas.d.ts +25 -0
- package/dist/tools/shared-schemas.d.ts.map +1 -0
- package/dist/tools/shared-schemas.js +72 -0
- package/dist/tools/shared-schemas.js.map +1 -0
- package/dist/tools/sources/builders.d.ts +13 -0
- package/dist/tools/sources/builders.d.ts.map +1 -0
- package/dist/tools/sources/builders.js +118 -0
- package/dist/tools/sources/builders.js.map +1 -0
- package/dist/tools/sources/handlers-bind.d.ts +28 -0
- package/dist/tools/sources/handlers-bind.d.ts.map +1 -0
- package/dist/tools/sources/handlers-bind.js +181 -0
- package/dist/tools/sources/handlers-bind.js.map +1 -0
- package/dist/tools/sources/handlers.d.ts +47 -0
- package/dist/tools/sources/handlers.d.ts.map +1 -0
- package/dist/tools/sources/handlers.js +108 -0
- package/dist/tools/sources/handlers.js.map +1 -0
- package/dist/tools/sources/index.d.ts +19 -0
- package/dist/tools/sources/index.d.ts.map +1 -0
- package/dist/tools/sources/index.js +18 -0
- package/dist/tools/sources/index.js.map +1 -0
- package/dist/tools/sources.d.ts +14 -0
- package/dist/tools/sources.d.ts.map +1 -0
- package/dist/tools/sources.js +14 -0
- package/dist/tools/sources.js.map +1 -0
- package/dist/tools/sparse-fields.d.ts +106 -0
- package/dist/tools/sparse-fields.d.ts.map +1 -0
- package/dist/tools/sparse-fields.js +165 -0
- package/dist/tools/sparse-fields.js.map +1 -0
- package/dist/tools/tool-builder/annotations.d.ts +55 -0
- package/dist/tools/tool-builder/annotations.d.ts.map +1 -0
- package/dist/tools/tool-builder/annotations.js +86 -0
- package/dist/tools/tool-builder/annotations.js.map +1 -0
- package/dist/tools/tool-builder/define.d.ts +31 -0
- package/dist/tools/tool-builder/define.d.ts.map +1 -0
- package/dist/tools/tool-builder/define.js +31 -0
- package/dist/tools/tool-builder/define.js.map +1 -0
- package/dist/tools/tool-builder/index.d.ts +28 -0
- package/dist/tools/tool-builder/index.d.ts.map +1 -0
- package/dist/tools/tool-builder/index.js +27 -0
- package/dist/tools/tool-builder/index.js.map +1 -0
- package/dist/tools/tool-builder/results.d.ts +104 -0
- package/dist/tools/tool-builder/results.d.ts.map +1 -0
- package/dist/tools/tool-builder/results.js +224 -0
- package/dist/tools/tool-builder/results.js.map +1 -0
- package/dist/tools/tool-builder/types.d.ts +97 -0
- package/dist/tools/tool-builder/types.d.ts.map +1 -0
- package/dist/tools/tool-builder/types.js +9 -0
- package/dist/tools/tool-builder/types.js.map +1 -0
- package/dist/tools/tool-builder.d.ts +16 -0
- package/dist/tools/tool-builder.d.ts.map +1 -0
- package/dist/tools/tool-builder.js +16 -0
- package/dist/tools/tool-builder.js.map +1 -0
- package/dist/uninstall-skill.d.ts +52 -0
- package/dist/uninstall-skill.d.ts.map +1 -0
- package/dist/uninstall-skill.js +146 -0
- package/dist/uninstall-skill.js.map +1 -0
- package/dist/uninstall.d.ts +73 -0
- package/dist/uninstall.d.ts.map +1 -0
- package/dist/uninstall.js +82 -0
- package/dist/uninstall.js.map +1 -0
- package/icon.png +0 -0
- package/manifest.json +10 -10
- package/package.json +4 -1
- package/skills/yt-builder-mcp/SKILL.md +30 -26
|
@@ -0,0 +1,401 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Element-type inspection tools.
|
|
3
|
+
*
|
|
4
|
+
* yootheme_builder_element_types_list
|
|
5
|
+
* → catalogue of available element types (tableResult — Wave G.2)
|
|
6
|
+
* yootheme_builder_element_type_get_schema
|
|
7
|
+
* → field schema for a single element type (detailResult — Wave G.2)
|
|
8
|
+
*
|
|
9
|
+
* @license MIT
|
|
10
|
+
*/
|
|
11
|
+
import { detailResult, tableResult } from '@getimo/mcp-toolkit';
|
|
12
|
+
import { z } from 'zod';
|
|
13
|
+
import { TYPES_COMPACT_COLUMNS, TYPES_TABLE_COLUMNS, buildTypeSchemaDetail, flattenTypesPayload, mapTypeRow, } from './format/inspection-format.js';
|
|
14
|
+
import { SITE_ID_SCHEMA } from './shared-schemas.js';
|
|
15
|
+
import { resolveSiteOrError } from './pool-resolve-helper.js';
|
|
16
|
+
import { defineTool, errorResult, readOnly, structuredResult, withSiteMeta, } from './tool-builder.js';
|
|
17
|
+
import { DEFAULT_FIELDS_TYPES_LIST, FIELDS, projectFields, projectedFieldsEcho, projectionFeedback, } from './sparse-fields.js';
|
|
18
|
+
import { ITEM_CHILDREN_OF_CONTAINER } from './multi-items/item-container-map.js';
|
|
19
|
+
// ─── outputSchemas (Wave G.2 §4) ─────────────────────────────────────
|
|
20
|
+
const TYPES_LIST_OUTPUT_SCHEMA = z.object({
|
|
21
|
+
items: z.array(z.record(z.string(), z.unknown())),
|
|
22
|
+
total: z.number(),
|
|
23
|
+
projected_fields: z.array(z.string()).optional(),
|
|
24
|
+
// F-004 fix (2026-05-25 exhaustive audit): see sparse-fields::projectionFeedback.
|
|
25
|
+
available_fields: z.array(z.string()).optional(),
|
|
26
|
+
unknown_fields: z.array(z.string()).optional(),
|
|
27
|
+
});
|
|
28
|
+
const TYPE_SCHEMA_OUTPUT_SCHEMA = z.object({
|
|
29
|
+
name: z.string(),
|
|
30
|
+
label: z.string().optional(),
|
|
31
|
+
origin: z.string().optional(),
|
|
32
|
+
// The REST endpoint returns `fields` as a list of {name,type,label?}
|
|
33
|
+
// field descriptors — each `name` is a valid prop key for element_add /
|
|
34
|
+
// _update_settings.
|
|
35
|
+
fields: z.array(z.record(z.string(), z.unknown())).optional(),
|
|
36
|
+
field_count: z.number(),
|
|
37
|
+
// Wave-6 R3 (2026-05-29): binding contract annotation. Surfaces the
|
|
38
|
+
// Multi-Items binding pattern for container types (grid/slider/switcher/
|
|
39
|
+
// list/accordion/gallery/panel/overlay), and identifies content-binding
|
|
40
|
+
// prop keys for leaf types (headline/text/button/image). Cold-AI #4 had
|
|
41
|
+
// to reverse-engineer this from inspect_multi_items_binding + page
|
|
42
|
+
// layout — this annotation eliminates that step.
|
|
43
|
+
binding_contract: z
|
|
44
|
+
.object({
|
|
45
|
+
kind: z.enum(['container', 'item', 'leaf', 'none']),
|
|
46
|
+
pattern: z.string(),
|
|
47
|
+
child_type: z.string().optional(),
|
|
48
|
+
child_required: z.boolean().optional(),
|
|
49
|
+
binding_target_props: z.array(z.string()).optional(),
|
|
50
|
+
minimal_layout: z.record(z.string(), z.unknown()).optional(),
|
|
51
|
+
set_via_tool: z.string().optional(),
|
|
52
|
+
discover_source_tool: z.string().optional(),
|
|
53
|
+
// Wave-7 (2026-05-29): explicit anti-patterns. Cold-AI #5 misread
|
|
54
|
+
// the minimal_layout and produced `props.source` nesting instead of
|
|
55
|
+
// sibling — YT-Pro silently ignored the binding and rendered 0 rows.
|
|
56
|
+
do_not: z.array(z.string()).optional(),
|
|
57
|
+
})
|
|
58
|
+
.optional(),
|
|
59
|
+
});
|
|
60
|
+
// Wave-6 R3 (2026-05-29): Binding-contract derivation.
|
|
61
|
+
//
|
|
62
|
+
// Container types are the Multi-Items hosts — when bound to a source they
|
|
63
|
+
// clone their *_item child once per source row. The binding LIVES on the
|
|
64
|
+
// child item, not the container.
|
|
65
|
+
//
|
|
66
|
+
// Wave-13 A5 (2026-05-31): the canonical 16-pair map lives in
|
|
67
|
+
// `multi-items/item-container-map.ts` (TypeScript mirror of the PHP
|
|
68
|
+
// `ItemContainerMap` constant, pinned via Joomla/WP cross-platform tests).
|
|
69
|
+
// Re-aliased here as CONTAINER_TO_ITEM_TYPE so the binding-contract derivation
|
|
70
|
+
// always agrees with the rest of the surface. The previous inline 10-entry
|
|
71
|
+
// map had drifted (missing button/description_list/nav/popover/social/subnav/
|
|
72
|
+
// table; routed `slider`/`panel`/`overlay` to non-existent item types).
|
|
73
|
+
//
|
|
74
|
+
// Leaf types (headline, text, image) cannot host Multi-Items but they DO
|
|
75
|
+
// accept per-prop source bindings (e.g. `content` of a headline maps to a
|
|
76
|
+
// single source field). We surface the canonical prop keys below so the
|
|
77
|
+
// agent knows which keys to bind without guessing.
|
|
78
|
+
const CONTAINER_TO_ITEM_TYPE = ITEM_CHILDREN_OF_CONTAINER;
|
|
79
|
+
const ITEM_TO_CONTAINER_TYPE = Object.fromEntries(Object.entries(CONTAINER_TO_ITEM_TYPE).map(([k, v]) => [v, k]));
|
|
80
|
+
/** Canonical binding-target props per leaf type. Empty array → leaf type has no clear single-field binding. */
|
|
81
|
+
const LEAF_BINDING_TARGETS = {
|
|
82
|
+
headline: ['content', 'title_dynamic'],
|
|
83
|
+
text: ['content'],
|
|
84
|
+
button: ['content', 'link'],
|
|
85
|
+
image: ['image'],
|
|
86
|
+
icon: ['icon'],
|
|
87
|
+
quote: ['content'],
|
|
88
|
+
subtitle: ['content'],
|
|
89
|
+
};
|
|
90
|
+
function deriveBindingContract(elementType) {
|
|
91
|
+
const itemType = CONTAINER_TO_ITEM_TYPE[elementType];
|
|
92
|
+
if (itemType !== undefined) {
|
|
93
|
+
return {
|
|
94
|
+
kind: 'container',
|
|
95
|
+
pattern: `Multi-Items: bind on the CHILD (${itemType}) — NOT this container — ` +
|
|
96
|
+
`to clone N times per source row. **Use yootheme_builder_element_bind_source — ` +
|
|
97
|
+
`do NOT hand-author the source shape via element_update_settings({props:{source}}).** ` +
|
|
98
|
+
`The bind tool emits the canonical YT-Pro shape where \`source\` sits as a ` +
|
|
99
|
+
`SIBLING of \`props\`/\`children\` on the *_item, never nested inside \`props\`. ` +
|
|
100
|
+
`Use yootheme_builder_inspect_multi_items_binding to confirm where the binding ` +
|
|
101
|
+
`currently lives if a template renders 1 container with N children stacked vs ` +
|
|
102
|
+
`N siblings.`,
|
|
103
|
+
child_type: itemType,
|
|
104
|
+
child_required: true,
|
|
105
|
+
// Wave-7 (2026-05-29): canonical shape verified against
|
|
106
|
+
// page:3315/3252/3361 working pages on dev.wootsup.com.
|
|
107
|
+
// `source` is a SIBLING of `props`/`children`, NOT a nested key
|
|
108
|
+
// under `props`. The `*_item` element holds the binding; the
|
|
109
|
+
// container has NO `source` of its own. Cold-AI #5 inverted this
|
|
110
|
+
// and got silent-render-failure (page:3366).
|
|
111
|
+
minimal_layout: {
|
|
112
|
+
type: elementType,
|
|
113
|
+
// No `source` here — container is bare.
|
|
114
|
+
children: [
|
|
115
|
+
{
|
|
116
|
+
type: itemType,
|
|
117
|
+
// `props` stays minimal — settings only.
|
|
118
|
+
props: {},
|
|
119
|
+
// `source` is a SIBLING of `props` / `children`.
|
|
120
|
+
source: {
|
|
121
|
+
query: {
|
|
122
|
+
name: '<source_name from yootheme_builder_sources_list>',
|
|
123
|
+
},
|
|
124
|
+
props: {
|
|
125
|
+
title: {
|
|
126
|
+
name: '<source_field>',
|
|
127
|
+
filters: [],
|
|
128
|
+
},
|
|
129
|
+
content: {
|
|
130
|
+
name: '<source_field>',
|
|
131
|
+
filters: [],
|
|
132
|
+
},
|
|
133
|
+
},
|
|
134
|
+
},
|
|
135
|
+
children: [],
|
|
136
|
+
},
|
|
137
|
+
],
|
|
138
|
+
},
|
|
139
|
+
set_via_tool: 'yootheme_builder_element_bind_source — REQUIRED. Hand-authoring source ' +
|
|
140
|
+
'via element_update_settings is rejected (props-schema does not include source).',
|
|
141
|
+
discover_source_tool: 'apimapper_yootheme_binding_for_flow({ flow_id }) — returns ready-to-paste binding shapes.',
|
|
142
|
+
do_not: [
|
|
143
|
+
`Do NOT set \`source\` on the container (${elementType}) itself — only on the *_item child.`,
|
|
144
|
+
`Do NOT nest \`source\` under \`props\` on the ${itemType} — it must be a sibling of props.`,
|
|
145
|
+
'Do NOT call element_update_settings with {source} or {source_extended} — those keys are not in the props schema and will be rejected.',
|
|
146
|
+
'Do NOT add child leaves (headline/text) under the *_item with their own \`source\` and \`${builder.source}\` placeholders — that pattern is UI-only and never resolves in stored layouts.',
|
|
147
|
+
'Do NOT use the SINGULAR wrapper flow name (`apiMapperFlow<Id>`) on the *_item — use the top-level `*List` name (`apiMapperFlow<Id>List`), the canonical Multi-Items target that clones once per source row (this is exactly `apimapper_yootheme_binding_for_flow.source_name_list`). The `*List` name on the *_item is CORRECT.',
|
|
148
|
+
],
|
|
149
|
+
};
|
|
150
|
+
}
|
|
151
|
+
const containerType = ITEM_TO_CONTAINER_TYPE[elementType];
|
|
152
|
+
if (containerType !== undefined) {
|
|
153
|
+
return {
|
|
154
|
+
kind: 'item',
|
|
155
|
+
pattern: `Multi-Items child of "${containerType}". Bindings on this element are ` +
|
|
156
|
+
`cloned once per source row. **Use yootheme_builder_element_bind_source — ` +
|
|
157
|
+
`do NOT hand-author the source via element_update_settings.** The source must ` +
|
|
158
|
+
`be set on THIS element (as a SIBLING of \`props\`/\`children\`, not nested ` +
|
|
159
|
+
`inside \`props\`), not on the parent ${containerType}.`,
|
|
160
|
+
set_via_tool: 'yootheme_builder_element_bind_source — REQUIRED. Hand-authoring source ' +
|
|
161
|
+
'via element_update_settings is rejected (props-schema does not include source).',
|
|
162
|
+
discover_source_tool: 'apimapper_yootheme_binding_for_flow({ flow_id })',
|
|
163
|
+
do_not: [
|
|
164
|
+
`Do NOT set \`source\` on the parent ${containerType} — only on this ${elementType}.`,
|
|
165
|
+
'Do NOT nest `source` under `props` — it must be a sibling of `props`/`children`.',
|
|
166
|
+
'Do NOT call element_update_settings with {source} or {source_extended} — use element_bind_source.',
|
|
167
|
+
'Do NOT add child leaves with their own per-prop `source` + `${builder.source}` placeholders.',
|
|
168
|
+
],
|
|
169
|
+
};
|
|
170
|
+
}
|
|
171
|
+
const leafTargets = LEAF_BINDING_TARGETS[elementType];
|
|
172
|
+
if (leafTargets !== undefined) {
|
|
173
|
+
return {
|
|
174
|
+
kind: 'leaf',
|
|
175
|
+
pattern: `Leaf element — supports single-field source bindings on the prop keys ` +
|
|
176
|
+
`listed in \`binding_target_props\`. NOT a Multi-Items host.`,
|
|
177
|
+
binding_target_props: [...leafTargets],
|
|
178
|
+
set_via_tool: 'yootheme_builder_element_bind_source',
|
|
179
|
+
discover_source_tool: 'apimapper_yootheme_binding_for_flow({ flow_id })',
|
|
180
|
+
};
|
|
181
|
+
}
|
|
182
|
+
return {
|
|
183
|
+
kind: 'none',
|
|
184
|
+
pattern: 'No standard binding contract known for this element type. Inspect the ' +
|
|
185
|
+
'`fields` list above and bind ad-hoc via yootheme_builder_element_bind_source.',
|
|
186
|
+
};
|
|
187
|
+
}
|
|
188
|
+
export function buildInspectionTools(pool) {
|
|
189
|
+
return [
|
|
190
|
+
defineTool({
|
|
191
|
+
name: 'yootheme_builder_element_types_list',
|
|
192
|
+
description: 'List element types registered on this site (built-ins + ' +
|
|
193
|
+
'YOOessentials/uEssentials extras). Names feed `element_type` of ' +
|
|
194
|
+
'element_add. Pass `fields[]` to narrow each row. ' +
|
|
195
|
+
'Operates on the default site unless site_id is provided.',
|
|
196
|
+
inputSchema: {
|
|
197
|
+
site_id: SITE_ID_SCHEMA,
|
|
198
|
+
fields: FIELDS,
|
|
199
|
+
},
|
|
200
|
+
outputSchema: TYPES_LIST_OUTPUT_SCHEMA,
|
|
201
|
+
annotations: readOnly('List Element Types'),
|
|
202
|
+
handler: async ({ site_id, fields }) => {
|
|
203
|
+
const r = await resolveSiteOrError(pool, site_id);
|
|
204
|
+
if (!r.ok)
|
|
205
|
+
return r.error;
|
|
206
|
+
const { client: siteClient, site } = r;
|
|
207
|
+
try {
|
|
208
|
+
const data = await siteClient.get('/element-types');
|
|
209
|
+
const flat = flattenTypesPayload(data);
|
|
210
|
+
const mapped = flat.map(mapTypeRow);
|
|
211
|
+
const mappedRecords = mapped;
|
|
212
|
+
const items = projectFields(mappedRecords, fields, DEFAULT_FIELDS_TYPES_LIST);
|
|
213
|
+
const echo = projectedFieldsEcho(fields, DEFAULT_FIELDS_TYPES_LIST);
|
|
214
|
+
const feedback = projectionFeedback(mappedRecords, fields);
|
|
215
|
+
const unknownNote = feedback !== undefined && feedback.unknown_fields.length > 0
|
|
216
|
+
? ` (unknown fields ignored: ${feedback.unknown_fields.join(', ')}; available: ${feedback.available_fields.join(', ')})`
|
|
217
|
+
: '';
|
|
218
|
+
const toolkitResult = tableResult(mappedRecords, {
|
|
219
|
+
columns: [...TYPES_TABLE_COLUMNS],
|
|
220
|
+
compactColumns: [...TYPES_COMPACT_COLUMNS],
|
|
221
|
+
header: (count) => `${String(count)} element types${unknownNote}`,
|
|
222
|
+
footer: 'Use yootheme_builder_element_type_get_schema <name> for fields.',
|
|
223
|
+
});
|
|
224
|
+
return withSiteMeta(structuredResult(toolkitResult, {
|
|
225
|
+
items,
|
|
226
|
+
total: items.length,
|
|
227
|
+
...(echo !== undefined ? { projected_fields: [...echo] } : {}),
|
|
228
|
+
...(feedback !== undefined ? {
|
|
229
|
+
available_fields: [...feedback.available_fields],
|
|
230
|
+
unknown_fields: [...feedback.unknown_fields],
|
|
231
|
+
} : {}),
|
|
232
|
+
}), site);
|
|
233
|
+
}
|
|
234
|
+
catch (e) {
|
|
235
|
+
return withSiteMeta(errorResult({
|
|
236
|
+
error: e,
|
|
237
|
+
context: { site_id: site.id },
|
|
238
|
+
hint: 'Run yootheme_builder_diagnose to verify auth.',
|
|
239
|
+
}), site);
|
|
240
|
+
}
|
|
241
|
+
},
|
|
242
|
+
}),
|
|
243
|
+
buildElementTypeGetSchemaTool(pool),
|
|
244
|
+
];
|
|
245
|
+
}
|
|
246
|
+
/**
|
|
247
|
+
* F-203 follow-up (Audit 2026-05-26 reviewer Gap 2): factored out of
|
|
248
|
+
* `buildInspectionTools` so the shape + refined ZodObject pair lives in
|
|
249
|
+
* one place. The SDK's pre-handler validator honours the top-level
|
|
250
|
+
* `.refine()` on `TYPE_SCHEMA_REFINED` and raises
|
|
251
|
+
* JSON-RPC `-32602 InvalidParams` when violated — hosts see the
|
|
252
|
+
* failure BEFORE the handler ever runs. The raw shape stays for
|
|
253
|
+
* handler-type inference (see `inputSchema`).
|
|
254
|
+
*/
|
|
255
|
+
function buildElementTypeGetSchemaTool(pool) {
|
|
256
|
+
const TYPE_SCHEMA_SHAPE = {
|
|
257
|
+
site_id: SITE_ID_SCHEMA,
|
|
258
|
+
// 1.0.1 cross-tool parameter naming alignment: every other
|
|
259
|
+
// tool in this domain uses `element_type` (element_add,
|
|
260
|
+
// element_update_settings, element_list rows). This tool
|
|
261
|
+
// originally shipped with `type_name`; we accept BOTH for
|
|
262
|
+
// backward-compatibility but the canonical key going
|
|
263
|
+
// forward is `element_type`.
|
|
264
|
+
element_type: z
|
|
265
|
+
.string()
|
|
266
|
+
.min(1)
|
|
267
|
+
.optional()
|
|
268
|
+
.describe('Element type name (e.g. "headline", "text", "grid"). Use ' +
|
|
269
|
+
'yootheme_builder_element_types_list to discover.'),
|
|
270
|
+
type_name: z
|
|
271
|
+
.string()
|
|
272
|
+
.min(1)
|
|
273
|
+
.optional()
|
|
274
|
+
.describe('DEPRECATED alias of `element_type` — use `element_type` ' +
|
|
275
|
+
'instead. Kept for 1.0.x backward-compatibility; will be ' +
|
|
276
|
+
'removed in a future major.'),
|
|
277
|
+
};
|
|
278
|
+
const TYPE_SCHEMA_REFINED = z
|
|
279
|
+
.object(TYPE_SCHEMA_SHAPE)
|
|
280
|
+
.refine((args) => (typeof args.element_type === 'string' && args.element_type !== '') ||
|
|
281
|
+
(typeof args.type_name === 'string' && args.type_name !== ''), {
|
|
282
|
+
message: 'Provide either `element_type` (canonical) or ' +
|
|
283
|
+
'`type_name` (deprecated alias).',
|
|
284
|
+
});
|
|
285
|
+
return defineTool({
|
|
286
|
+
name: 'yootheme_builder_element_type_get_schema',
|
|
287
|
+
description: '**Call before every `element_add` / `_update_settings`** — unknown ' +
|
|
288
|
+
'prop keys are silently dropped server-side, so guessing fails ' +
|
|
289
|
+
'quietly. Returns `{name,type,label?}` field descriptors. Use ' +
|
|
290
|
+
'`element_type`; `type_name` is DEPRECATED. ' +
|
|
291
|
+
'Operates on the default site unless site_id is provided.',
|
|
292
|
+
inputSchema: TYPE_SCHEMA_SHAPE,
|
|
293
|
+
// F-203 follow-up: the refined object is what the SDK actually
|
|
294
|
+
// validates. The raw shape above stays for handler-type inference.
|
|
295
|
+
inputObjectSchema: TYPE_SCHEMA_REFINED,
|
|
296
|
+
outputSchema: TYPE_SCHEMA_OUTPUT_SCHEMA,
|
|
297
|
+
annotations: readOnly('Get Element Type Schema'),
|
|
298
|
+
handler: async (args) => {
|
|
299
|
+
// Defensive re-assert of the refine — should never fire when
|
|
300
|
+
// reached through the SDK (the boundary rejects with -32602
|
|
301
|
+
// first), but in-process tests bypass the SDK and call the
|
|
302
|
+
// handler directly, so the structured error path stays
|
|
303
|
+
// reachable for unit-test coverage.
|
|
304
|
+
const typeNameInput = typeof args.element_type === 'string' && args.element_type !== ''
|
|
305
|
+
? args.element_type
|
|
306
|
+
: typeof args.type_name === 'string'
|
|
307
|
+
? args.type_name
|
|
308
|
+
: '';
|
|
309
|
+
if (typeNameInput === '') {
|
|
310
|
+
return errorResult({
|
|
311
|
+
error: new Error('Provide either `element_type` (canonical) or ' +
|
|
312
|
+
'`type_name` (deprecated alias).'),
|
|
313
|
+
context: { site_id: typeof args.site_id === 'string' ? args.site_id : null },
|
|
314
|
+
hint: 'Pass `element_type` (e.g. "headline"). Use ' +
|
|
315
|
+
'yootheme_builder_element_types_list to discover valid values.',
|
|
316
|
+
});
|
|
317
|
+
}
|
|
318
|
+
const type_name = typeNameInput;
|
|
319
|
+
const r = await resolveSiteOrError(pool, typeof args.site_id === 'string' ? args.site_id : undefined);
|
|
320
|
+
if (!r.ok)
|
|
321
|
+
return r.error;
|
|
322
|
+
const { client: siteClient, site } = r;
|
|
323
|
+
try {
|
|
324
|
+
const data = await siteClient.get(`/element-types/${encodeURIComponent(type_name)}/schema`);
|
|
325
|
+
// The REST endpoint nests the type schema under `schema`:
|
|
326
|
+
// {type_name, schema:{name,label,origin,has_children,fields:[…]}}.
|
|
327
|
+
// Fall back to the top-level object for older backends.
|
|
328
|
+
const schema = data.schema !== null && typeof data.schema === 'object'
|
|
329
|
+
? data.schema
|
|
330
|
+
: data;
|
|
331
|
+
const name = typeof schema.name === 'string' ? schema.name : type_name;
|
|
332
|
+
const label = typeof schema.label === 'string' ? schema.label : undefined;
|
|
333
|
+
const origin = typeof schema.origin === 'string' ? schema.origin : undefined;
|
|
334
|
+
// `fields` is a list of {name,type,label?} field descriptors.
|
|
335
|
+
const fields = Array.isArray(schema.fields)
|
|
336
|
+
? schema.fields
|
|
337
|
+
: undefined;
|
|
338
|
+
const fieldCount = fields !== undefined ? fields.length : 0;
|
|
339
|
+
// Wave-6 R3 (2026-05-29): attach a binding contract so
|
|
340
|
+
// the agent doesn't have to reverse-engineer the
|
|
341
|
+
// Multi-Items pattern from layout + inspection probes.
|
|
342
|
+
const bindingContract = deriveBindingContract(name);
|
|
343
|
+
const toolkitResult = detailResult(buildTypeSchemaDetail({
|
|
344
|
+
name,
|
|
345
|
+
label,
|
|
346
|
+
origin,
|
|
347
|
+
fields,
|
|
348
|
+
...(bindingContract !== undefined
|
|
349
|
+
? {
|
|
350
|
+
bindingContract: {
|
|
351
|
+
kind: bindingContract.kind,
|
|
352
|
+
pattern: bindingContract.pattern,
|
|
353
|
+
...(bindingContract.child_type !== undefined
|
|
354
|
+
? { child_type: bindingContract.child_type }
|
|
355
|
+
: {}),
|
|
356
|
+
...(bindingContract.binding_target_props !== undefined
|
|
357
|
+
? {
|
|
358
|
+
binding_target_props: bindingContract.binding_target_props,
|
|
359
|
+
}
|
|
360
|
+
: {}),
|
|
361
|
+
...(bindingContract.set_via_tool !== undefined
|
|
362
|
+
? { set_via_tool: bindingContract.set_via_tool }
|
|
363
|
+
: {}),
|
|
364
|
+
...(bindingContract.discover_source_tool !== undefined
|
|
365
|
+
? {
|
|
366
|
+
discover_source_tool: bindingContract.discover_source_tool,
|
|
367
|
+
}
|
|
368
|
+
: {}),
|
|
369
|
+
...(bindingContract.do_not !== undefined
|
|
370
|
+
? { do_not: bindingContract.do_not }
|
|
371
|
+
: {}),
|
|
372
|
+
...(bindingContract.minimal_layout !== undefined
|
|
373
|
+
? { minimal_layout: bindingContract.minimal_layout }
|
|
374
|
+
: {}),
|
|
375
|
+
},
|
|
376
|
+
}
|
|
377
|
+
: {}),
|
|
378
|
+
}));
|
|
379
|
+
return withSiteMeta(structuredResult(toolkitResult, {
|
|
380
|
+
name,
|
|
381
|
+
...(label !== undefined ? { label } : {}),
|
|
382
|
+
...(origin !== undefined ? { origin } : {}),
|
|
383
|
+
...(fields !== undefined ? { fields } : {}),
|
|
384
|
+
field_count: fieldCount,
|
|
385
|
+
...(bindingContract !== undefined
|
|
386
|
+
? { binding_contract: bindingContract }
|
|
387
|
+
: {}),
|
|
388
|
+
}), site);
|
|
389
|
+
}
|
|
390
|
+
catch (e) {
|
|
391
|
+
return withSiteMeta(errorResult({
|
|
392
|
+
error: e,
|
|
393
|
+
context: { element_type: type_name, site_id: site.id },
|
|
394
|
+
hint: 'Verify element_type via yootheme_builder_element_types_list — names ' +
|
|
395
|
+
'are case-sensitive.',
|
|
396
|
+
}), site);
|
|
397
|
+
}
|
|
398
|
+
},
|
|
399
|
+
});
|
|
400
|
+
}
|
|
401
|
+
//# sourceMappingURL=inspection.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"inspection.js","sourceRoot":"","sources":["../../src/tools/inspection.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Layout-flatten helper — depth-first walk that turns a nested YOOtheme
|
|
3
|
+
* layout tree into a flat array of `{ path, parent_path, depth,
|
|
4
|
+
* element_type, props }` records.
|
|
5
|
+
*
|
|
6
|
+
* Used by `yootheme_builder_page_get_layout` when called with
|
|
7
|
+
* `flat: true`. Per Design §4.4.1:
|
|
8
|
+
*
|
|
9
|
+
* - Walk-order: depth-first, parent BEFORE children, original child
|
|
10
|
+
* order preserved (no sort).
|
|
11
|
+
* - `path` uses JSON-Pointer-style notation rooted at `/layout/<key>`
|
|
12
|
+
* and descends via `/children/<index>` segments. The root segments
|
|
13
|
+
* mirror the keys the REST plugin produces (string keys "0","1",…
|
|
14
|
+
* when the top-level layout is an object; numeric indices when it
|
|
15
|
+
* happens to be an array).
|
|
16
|
+
* - `parent_path` is `null` for top-level entries.
|
|
17
|
+
* - The emitted record's `children` field is REMOVED — children become
|
|
18
|
+
* their own emitted entries with their own `path`. Keeping the nested
|
|
19
|
+
* array would defeat the purpose of flattening.
|
|
20
|
+
* - Non-object children are skipped silently but their index is
|
|
21
|
+
* preserved in the parent's child-numbering (the next valid sibling
|
|
22
|
+
* keeps its original index).
|
|
23
|
+
*
|
|
24
|
+
* Pure function — no I/O, no client dependency. Test-covered in
|
|
25
|
+
* `tests/tools/layout-flatten.test.ts`.
|
|
26
|
+
*
|
|
27
|
+
* @license MIT
|
|
28
|
+
*/
|
|
29
|
+
/** A single emitted record in the flattened layout. */
|
|
30
|
+
export interface FlatElement {
|
|
31
|
+
/** JSON-Pointer-style path, e.g. "/layout/0/children/2". */
|
|
32
|
+
path: string;
|
|
33
|
+
/**
|
|
34
|
+
* Path with the `/layout` prefix stripped, e.g. "/0/children/2".
|
|
35
|
+
* N-01 (Audit v4): mirrors the `rel_path` column element_list emits
|
|
36
|
+
* so `fields:["rel_path",...]` projection works on the flat layout.
|
|
37
|
+
*/
|
|
38
|
+
rel_path: string;
|
|
39
|
+
/** Path of the parent element, or `null` for top-level entries. */
|
|
40
|
+
parent_path: string | null;
|
|
41
|
+
/** 0-based depth (top-level entries have depth 0). */
|
|
42
|
+
depth: number;
|
|
43
|
+
/** Element type string (the `type` field on the YT node, "" if missing). */
|
|
44
|
+
element_type: string;
|
|
45
|
+
/**
|
|
46
|
+
* True iff the node carries a source-binding. N-01 (Audit v4):
|
|
47
|
+
* derived via the same `hasSourceBinding` SSoT element_list uses,
|
|
48
|
+
* or an explicit REST-plugin boolean when present.
|
|
49
|
+
*/
|
|
50
|
+
has_binding: boolean;
|
|
51
|
+
/** Element props (passthrough; `undefined` when the node has none). */
|
|
52
|
+
props?: Record<string, unknown>;
|
|
53
|
+
/**
|
|
54
|
+
* Children intentionally absent — see file-header. Kept in the type
|
|
55
|
+
* so consumers can confirm the field is `undefined` rather than
|
|
56
|
+
* assume it exists.
|
|
57
|
+
*/
|
|
58
|
+
children?: undefined;
|
|
59
|
+
/**
|
|
60
|
+
* Allow passthrough of any other top-level fields the REST plugin
|
|
61
|
+
* may add in future (e.g. `label`, `has_binding`, `name`). The
|
|
62
|
+
* walker preserves these verbatim so projection via `pickFields`
|
|
63
|
+
* downstream stays meaningful.
|
|
64
|
+
*/
|
|
65
|
+
[extra: string]: unknown;
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Flatten a YOOtheme nested layout tree.
|
|
69
|
+
*
|
|
70
|
+
* @param layout - The top-level layout container. Accepts either an
|
|
71
|
+
* object keyed by stringified indices ("0","1",…) or an actual array.
|
|
72
|
+
* Returns `[]` for empty input or anything that isn't iterable.
|
|
73
|
+
*/
|
|
74
|
+
export declare function flattenLayout(layout: unknown): FlatElement[];
|
|
75
|
+
//# sourceMappingURL=layout-flatten.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"layout-flatten.d.ts","sourceRoot":"","sources":["../../src/tools/layout-flatten.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAIH,uDAAuD;AACvD,MAAM,WAAW,WAAW;IACxB,4DAA4D;IAC5D,IAAI,EAAE,MAAM,CAAC;IACb;;;;OAIG;IACH,QAAQ,EAAE,MAAM,CAAC;IACjB,mEAAmE;IACnE,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,sDAAsD;IACtD,KAAK,EAAE,MAAM,CAAC;IACd,4EAA4E;IAC5E,YAAY,EAAE,MAAM,CAAC;IACrB;;;;OAIG;IACH,WAAW,EAAE,OAAO,CAAC;IACrB,uEAAuE;IACvE,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC;;;;OAIG;IACH,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB;;;;;OAKG;IACH,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;CAC5B;AAED;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,OAAO,GAAG,WAAW,EAAE,CAmB5D"}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Layout-flatten helper — depth-first walk that turns a nested YOOtheme
|
|
3
|
+
* layout tree into a flat array of `{ path, parent_path, depth,
|
|
4
|
+
* element_type, props }` records.
|
|
5
|
+
*
|
|
6
|
+
* Used by `yootheme_builder_page_get_layout` when called with
|
|
7
|
+
* `flat: true`. Per Design §4.4.1:
|
|
8
|
+
*
|
|
9
|
+
* - Walk-order: depth-first, parent BEFORE children, original child
|
|
10
|
+
* order preserved (no sort).
|
|
11
|
+
* - `path` uses JSON-Pointer-style notation rooted at `/layout/<key>`
|
|
12
|
+
* and descends via `/children/<index>` segments. The root segments
|
|
13
|
+
* mirror the keys the REST plugin produces (string keys "0","1",…
|
|
14
|
+
* when the top-level layout is an object; numeric indices when it
|
|
15
|
+
* happens to be an array).
|
|
16
|
+
* - `parent_path` is `null` for top-level entries.
|
|
17
|
+
* - The emitted record's `children` field is REMOVED — children become
|
|
18
|
+
* their own emitted entries with their own `path`. Keeping the nested
|
|
19
|
+
* array would defeat the purpose of flattening.
|
|
20
|
+
* - Non-object children are skipped silently but their index is
|
|
21
|
+
* preserved in the parent's child-numbering (the next valid sibling
|
|
22
|
+
* keeps its original index).
|
|
23
|
+
*
|
|
24
|
+
* Pure function — no I/O, no client dependency. Test-covered in
|
|
25
|
+
* `tests/tools/layout-flatten.test.ts`.
|
|
26
|
+
*
|
|
27
|
+
* @license MIT
|
|
28
|
+
*/
|
|
29
|
+
import { hasSourceBinding } from './format/elements-format.js';
|
|
30
|
+
/**
|
|
31
|
+
* Flatten a YOOtheme nested layout tree.
|
|
32
|
+
*
|
|
33
|
+
* @param layout - The top-level layout container. Accepts either an
|
|
34
|
+
* object keyed by stringified indices ("0","1",…) or an actual array.
|
|
35
|
+
* Returns `[]` for empty input or anything that isn't iterable.
|
|
36
|
+
*/
|
|
37
|
+
export function flattenLayout(layout) {
|
|
38
|
+
const out = [];
|
|
39
|
+
if (layout === null || typeof layout !== 'object') {
|
|
40
|
+
return out;
|
|
41
|
+
}
|
|
42
|
+
// Iterate top-level entries in insertion order. For arrays this gives
|
|
43
|
+
// numeric indices; for objects keyed by "0","1",… it gives the same
|
|
44
|
+
// ordering YT serialises.
|
|
45
|
+
const entries = Array.isArray(layout)
|
|
46
|
+
? layout.map((v, i) => [String(i), v])
|
|
47
|
+
: Object.entries(layout);
|
|
48
|
+
for (const [key, node] of entries) {
|
|
49
|
+
walk(node, `/layout/${key}`, null, 0, out);
|
|
50
|
+
}
|
|
51
|
+
return out;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Depth-first walker. Emits the node, then recurses into its children.
|
|
55
|
+
* Skips non-object nodes silently while preserving child-index numbering.
|
|
56
|
+
*/
|
|
57
|
+
function walk(node, path, parentPath, depth, out) {
|
|
58
|
+
if (node === null || typeof node !== 'object' || Array.isArray(node)) {
|
|
59
|
+
return;
|
|
60
|
+
}
|
|
61
|
+
const obj = node;
|
|
62
|
+
const elementType = typeof obj.type === 'string' ? obj.type : '';
|
|
63
|
+
const props = obj.props !== null && typeof obj.props === 'object' && !Array.isArray(obj.props)
|
|
64
|
+
? obj.props
|
|
65
|
+
: undefined;
|
|
66
|
+
// N-01: derive the projection-relevant fields up-front so a
|
|
67
|
+
// `fields:["rel_path","has_binding",...]` projection finds them.
|
|
68
|
+
// `rel_path` strips the `/layout` prefix; `has_binding` honours an
|
|
69
|
+
// explicit REST boolean else derives via the shared SSoT.
|
|
70
|
+
const relPath = path.replace(/^\/layout/, '') || '/';
|
|
71
|
+
const hasBinding = typeof obj.has_binding === 'boolean'
|
|
72
|
+
? obj.has_binding
|
|
73
|
+
: hasSourceBinding(obj);
|
|
74
|
+
// Build a passthrough shallow-clone WITHOUT the children field. We
|
|
75
|
+
// copy every other top-level key so future REST additions (label,
|
|
76
|
+
// …) survive the flatten.
|
|
77
|
+
const emitted = {
|
|
78
|
+
path,
|
|
79
|
+
rel_path: relPath,
|
|
80
|
+
parent_path: parentPath,
|
|
81
|
+
depth,
|
|
82
|
+
element_type: elementType,
|
|
83
|
+
has_binding: hasBinding,
|
|
84
|
+
};
|
|
85
|
+
for (const [k, v] of Object.entries(obj)) {
|
|
86
|
+
if (k === 'children' || k === 'type' || k === 'props' || k === 'has_binding') {
|
|
87
|
+
continue;
|
|
88
|
+
}
|
|
89
|
+
emitted[k] = v;
|
|
90
|
+
}
|
|
91
|
+
if (props !== undefined)
|
|
92
|
+
emitted.props = props;
|
|
93
|
+
out.push(emitted);
|
|
94
|
+
const children = obj.children;
|
|
95
|
+
if (Array.isArray(children)) {
|
|
96
|
+
for (let i = 0; i < children.length; i++) {
|
|
97
|
+
const child = children[i];
|
|
98
|
+
if (child === null || typeof child !== 'object' || Array.isArray(child)) {
|
|
99
|
+
// Skip non-object children; their index is preserved in
|
|
100
|
+
// the next sibling's path.
|
|
101
|
+
continue;
|
|
102
|
+
}
|
|
103
|
+
walk(child, `${path}/children/${String(i)}`, path, depth + 1, out);
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
//# sourceMappingURL=layout-flatten.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"layout-flatten.js","sourceRoot":"","sources":["../../src/tools/layout-flatten.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Multi-Items tool builders.
|
|
3
|
+
*
|
|
4
|
+
* Surfaces two tools that operate on the YT-Pro Multi-Items binding
|
|
5
|
+
* pattern (container ↔ `*_item` pairings — see
|
|
6
|
+
* `./item-container-map.ts`):
|
|
7
|
+
*
|
|
8
|
+
* yootheme_builder_inspect_multi_items_binding
|
|
9
|
+
* → Reports the binding level (none/container/item), the matching
|
|
10
|
+
* container/item pair, and whether legacy implode directives are
|
|
11
|
+
* attached. Surfaces a `recommended_fix` when the binding sits on
|
|
12
|
+
* the container level.
|
|
13
|
+
*
|
|
14
|
+
* yootheme_builder_clean_implode_directives
|
|
15
|
+
* → Removes every `props.source.props.*.implode` directive from
|
|
16
|
+
* the addressed element. Returns the audit log + new etag.
|
|
17
|
+
*
|
|
18
|
+
* @license MIT
|
|
19
|
+
*/
|
|
20
|
+
import type { ClientPool } from '../../sites/client-pool.js';
|
|
21
|
+
import { type AnyToolDefinition } from '../tool-builder.js';
|
|
22
|
+
export declare function buildMultiItemsTools(pool: ClientPool): readonly AnyToolDefinition[];
|
|
23
|
+
//# sourceMappingURL=builders.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"builders.d.ts","sourceRoot":"","sources":["../../../src/tools/multi-items/builders.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAIH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAG7D,OAAO,EAKH,KAAK,iBAAiB,EACzB,MAAM,oBAAoB,CAAC;AAY5B,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,UAAU,GAAG,SAAS,iBAAiB,EAAE,CAgEnF"}
|