@frontmcp/ui 0.5.0 → 0.6.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/adapters/index.d.ts +13 -0
- package/adapters/index.d.ts.map +1 -0
- package/adapters/index.js +462 -0
- package/adapters/platform-meta.d.ts +166 -0
- package/adapters/platform-meta.d.ts.map +1 -0
- package/adapters/response-builder.d.ts +108 -0
- package/adapters/response-builder.d.ts.map +1 -0
- package/adapters/serving-mode.d.ts +107 -0
- package/adapters/serving-mode.d.ts.map +1 -0
- package/base-template/bridge.d.ts +90 -0
- package/base-template/bridge.d.ts.map +1 -0
- package/base-template/default-base-template.d.ts +92 -0
- package/base-template/default-base-template.d.ts.map +1 -0
- package/base-template/index.d.ts +15 -0
- package/base-template/index.d.ts.map +1 -0
- package/base-template/index.js +1398 -0
- package/base-template/polyfills.d.ts +31 -0
- package/base-template/polyfills.d.ts.map +1 -0
- package/base-template/theme-styles.d.ts +74 -0
- package/base-template/theme-styles.d.ts.map +1 -0
- package/bridge/adapters/base-adapter.d.ts +104 -0
- package/bridge/adapters/base-adapter.d.ts.map +1 -0
- package/bridge/adapters/claude.adapter.d.ts +67 -0
- package/bridge/adapters/claude.adapter.d.ts.map +1 -0
- package/bridge/adapters/ext-apps.adapter.d.ts +143 -0
- package/bridge/adapters/ext-apps.adapter.d.ts.map +1 -0
- package/bridge/adapters/gemini.adapter.d.ts +64 -0
- package/bridge/adapters/gemini.adapter.d.ts.map +1 -0
- package/bridge/adapters/generic.adapter.d.ts +56 -0
- package/bridge/adapters/generic.adapter.d.ts.map +1 -0
- package/bridge/adapters/index.d.ts +26 -0
- package/bridge/adapters/index.d.ts.map +1 -0
- package/bridge/adapters/openai.adapter.d.ts +65 -0
- package/bridge/adapters/openai.adapter.d.ts.map +1 -0
- package/bridge/core/adapter-registry.d.ts +122 -0
- package/bridge/core/adapter-registry.d.ts.map +1 -0
- package/bridge/core/bridge-factory.d.ts +199 -0
- package/bridge/core/bridge-factory.d.ts.map +1 -0
- package/bridge/core/index.d.ts +10 -0
- package/bridge/core/index.d.ts.map +1 -0
- package/bridge/index.d.ts +62 -0
- package/bridge/index.d.ts.map +1 -0
- package/bridge/index.js +2540 -0
- package/bridge/runtime/iife-generator.d.ts +62 -0
- package/bridge/runtime/iife-generator.d.ts.map +1 -0
- package/bridge/runtime/index.d.ts +9 -0
- package/bridge/runtime/index.d.ts.map +1 -0
- package/bridge/types.d.ts +386 -0
- package/bridge/types.d.ts.map +1 -0
- package/build/cdn-resources.d.ts +243 -0
- package/build/cdn-resources.d.ts.map +1 -0
- package/build/index.d.ts +295 -0
- package/build/index.d.ts.map +1 -0
- package/build/index.js +7096 -0
- package/build/widget-manifest.d.ts +362 -0
- package/build/widget-manifest.d.ts.map +1 -0
- package/bundler/bundler.d.ts +208 -0
- package/bundler/bundler.d.ts.map +1 -0
- package/bundler/cache.d.ts +173 -0
- package/bundler/cache.d.ts.map +1 -0
- package/bundler/file-cache/component-builder.d.ts +167 -0
- package/bundler/file-cache/component-builder.d.ts.map +1 -0
- package/bundler/file-cache/hash-calculator.d.ts +155 -0
- package/bundler/file-cache/hash-calculator.d.ts.map +1 -0
- package/bundler/file-cache/index.d.ts +12 -0
- package/bundler/file-cache/index.d.ts.map +1 -0
- package/bundler/file-cache/storage/filesystem.d.ts +149 -0
- package/bundler/file-cache/storage/filesystem.d.ts.map +1 -0
- package/bundler/file-cache/storage/index.d.ts +11 -0
- package/bundler/file-cache/storage/index.d.ts.map +1 -0
- package/bundler/file-cache/storage/interface.d.ts +152 -0
- package/bundler/file-cache/storage/interface.d.ts.map +1 -0
- package/bundler/file-cache/storage/redis.d.ts +139 -0
- package/bundler/file-cache/storage/redis.d.ts.map +1 -0
- package/bundler/index.d.ts +43 -0
- package/bundler/index.d.ts.map +1 -0
- package/bundler/index.js +4754 -0
- package/bundler/sandbox/enclave-adapter.d.ts +121 -0
- package/bundler/sandbox/enclave-adapter.d.ts.map +1 -0
- package/bundler/sandbox/executor.d.ts +14 -0
- package/bundler/sandbox/executor.d.ts.map +1 -0
- package/bundler/sandbox/policy.d.ts +62 -0
- package/bundler/sandbox/policy.d.ts.map +1 -0
- package/bundler/types.d.ts +702 -0
- package/bundler/types.d.ts.map +1 -0
- package/components/alert.d.ts +66 -0
- package/components/alert.d.ts.map +1 -0
- package/components/alert.schema.d.ts +98 -0
- package/components/alert.schema.d.ts.map +1 -0
- package/components/avatar.d.ts +77 -0
- package/components/avatar.d.ts.map +1 -0
- package/components/avatar.schema.d.ts +170 -0
- package/components/avatar.schema.d.ts.map +1 -0
- package/components/badge.d.ts +64 -0
- package/components/badge.d.ts.map +1 -0
- package/components/badge.schema.d.ts +91 -0
- package/components/badge.schema.d.ts.map +1 -0
- package/components/button.d.ts +100 -0
- package/components/button.d.ts.map +1 -0
- package/components/button.schema.d.ts +120 -0
- package/components/button.schema.d.ts.map +1 -0
- package/components/card.d.ts +53 -0
- package/components/card.d.ts.map +1 -0
- package/components/card.schema.d.ts +93 -0
- package/components/card.schema.d.ts.map +1 -0
- package/components/form.d.ts +212 -0
- package/components/form.d.ts.map +1 -0
- package/components/form.schema.d.ts +365 -0
- package/components/form.schema.d.ts.map +1 -0
- package/components/index.d.ts +29 -0
- package/components/index.d.ts.map +1 -0
- package/components/index.js +2595 -0
- package/components/list.d.ts +121 -0
- package/components/list.d.ts.map +1 -0
- package/components/list.schema.d.ts +129 -0
- package/components/list.schema.d.ts.map +1 -0
- package/components/modal.d.ts +100 -0
- package/components/modal.d.ts.map +1 -0
- package/components/modal.schema.d.ts +151 -0
- package/components/modal.schema.d.ts.map +1 -0
- package/components/table.d.ts +91 -0
- package/components/table.d.ts.map +1 -0
- package/components/table.schema.d.ts +123 -0
- package/components/table.schema.d.ts.map +1 -0
- package/dependency/cdn-registry.d.ts +98 -0
- package/dependency/cdn-registry.d.ts.map +1 -0
- package/dependency/import-map.d.ts +186 -0
- package/dependency/import-map.d.ts.map +1 -0
- package/dependency/import-parser.d.ts +82 -0
- package/dependency/import-parser.d.ts.map +1 -0
- package/dependency/index.d.ts +17 -0
- package/dependency/index.d.ts.map +1 -0
- package/dependency/resolver.d.ts +164 -0
- package/dependency/resolver.d.ts.map +1 -0
- package/dependency/schemas.d.ts +486 -0
- package/dependency/schemas.d.ts.map +1 -0
- package/dependency/template-loader.d.ts +204 -0
- package/dependency/template-loader.d.ts.map +1 -0
- package/dependency/template-processor.d.ts +118 -0
- package/dependency/template-processor.d.ts.map +1 -0
- package/dependency/types.d.ts +739 -0
- package/dependency/types.d.ts.map +1 -0
- package/esm/adapters/index.d.ts +13 -0
- package/esm/adapters/index.d.ts.map +1 -0
- package/esm/adapters/index.js +427 -0
- package/esm/adapters/platform-meta.d.ts +166 -0
- package/esm/adapters/platform-meta.d.ts.map +1 -0
- package/esm/adapters/response-builder.d.ts +108 -0
- package/esm/adapters/response-builder.d.ts.map +1 -0
- package/esm/adapters/serving-mode.d.ts +107 -0
- package/esm/adapters/serving-mode.d.ts.map +1 -0
- package/esm/base-template/bridge.d.ts +90 -0
- package/esm/base-template/bridge.d.ts.map +1 -0
- package/esm/base-template/default-base-template.d.ts +92 -0
- package/esm/base-template/default-base-template.d.ts.map +1 -0
- package/esm/base-template/index.d.ts +15 -0
- package/esm/base-template/index.d.ts.map +1 -0
- package/esm/base-template/index.js +1364 -0
- package/esm/base-template/polyfills.d.ts +31 -0
- package/esm/base-template/polyfills.d.ts.map +1 -0
- package/esm/base-template/theme-styles.d.ts +74 -0
- package/esm/base-template/theme-styles.d.ts.map +1 -0
- package/esm/bridge/adapters/base-adapter.d.ts +104 -0
- package/esm/bridge/adapters/base-adapter.d.ts.map +1 -0
- package/esm/bridge/adapters/claude.adapter.d.ts +67 -0
- package/esm/bridge/adapters/claude.adapter.d.ts.map +1 -0
- package/esm/bridge/adapters/ext-apps.adapter.d.ts +143 -0
- package/esm/bridge/adapters/ext-apps.adapter.d.ts.map +1 -0
- package/esm/bridge/adapters/gemini.adapter.d.ts +64 -0
- package/esm/bridge/adapters/gemini.adapter.d.ts.map +1 -0
- package/esm/bridge/adapters/generic.adapter.d.ts +56 -0
- package/esm/bridge/adapters/generic.adapter.d.ts.map +1 -0
- package/esm/bridge/adapters/index.d.ts +26 -0
- package/esm/bridge/adapters/index.d.ts.map +1 -0
- package/esm/bridge/adapters/openai.adapter.d.ts +65 -0
- package/esm/bridge/adapters/openai.adapter.d.ts.map +1 -0
- package/esm/bridge/core/adapter-registry.d.ts +122 -0
- package/esm/bridge/core/adapter-registry.d.ts.map +1 -0
- package/esm/bridge/core/bridge-factory.d.ts +199 -0
- package/esm/bridge/core/bridge-factory.d.ts.map +1 -0
- package/esm/bridge/core/index.d.ts +10 -0
- package/esm/bridge/core/index.d.ts.map +1 -0
- package/esm/bridge/index.d.ts +62 -0
- package/esm/bridge/index.d.ts.map +1 -0
- package/esm/bridge/index.js +2487 -0
- package/esm/bridge/runtime/iife-generator.d.ts +62 -0
- package/esm/bridge/runtime/iife-generator.d.ts.map +1 -0
- package/esm/bridge/runtime/index.d.ts +9 -0
- package/esm/bridge/runtime/index.d.ts.map +1 -0
- package/esm/bridge/types.d.ts +386 -0
- package/esm/bridge/types.d.ts.map +1 -0
- package/esm/build/cdn-resources.d.ts +243 -0
- package/esm/build/cdn-resources.d.ts.map +1 -0
- package/esm/build/index.d.ts +295 -0
- package/esm/build/index.d.ts.map +1 -0
- package/esm/build/index.js +7021 -0
- package/esm/build/widget-manifest.d.ts +362 -0
- package/esm/build/widget-manifest.d.ts.map +1 -0
- package/esm/bundler/bundler.d.ts +208 -0
- package/esm/bundler/bundler.d.ts.map +1 -0
- package/esm/bundler/cache.d.ts +173 -0
- package/esm/bundler/cache.d.ts.map +1 -0
- package/esm/bundler/file-cache/component-builder.d.ts +167 -0
- package/esm/bundler/file-cache/component-builder.d.ts.map +1 -0
- package/esm/bundler/file-cache/hash-calculator.d.ts +155 -0
- package/esm/bundler/file-cache/hash-calculator.d.ts.map +1 -0
- package/esm/bundler/file-cache/index.d.ts +12 -0
- package/esm/bundler/file-cache/index.d.ts.map +1 -0
- package/esm/bundler/file-cache/storage/filesystem.d.ts +149 -0
- package/esm/bundler/file-cache/storage/filesystem.d.ts.map +1 -0
- package/esm/bundler/file-cache/storage/index.d.ts +11 -0
- package/esm/bundler/file-cache/storage/index.d.ts.map +1 -0
- package/esm/bundler/file-cache/storage/interface.d.ts +152 -0
- package/esm/bundler/file-cache/storage/interface.d.ts.map +1 -0
- package/esm/bundler/file-cache/storage/redis.d.ts +139 -0
- package/esm/bundler/file-cache/storage/redis.d.ts.map +1 -0
- package/esm/bundler/index.d.ts +43 -0
- package/esm/bundler/index.d.ts.map +1 -0
- package/esm/bundler/index.js +4687 -0
- package/esm/bundler/sandbox/enclave-adapter.d.ts +121 -0
- package/esm/bundler/sandbox/enclave-adapter.d.ts.map +1 -0
- package/esm/bundler/sandbox/executor.d.ts +14 -0
- package/esm/bundler/sandbox/executor.d.ts.map +1 -0
- package/esm/bundler/sandbox/policy.d.ts +62 -0
- package/esm/bundler/sandbox/policy.d.ts.map +1 -0
- package/esm/bundler/types.d.ts +702 -0
- package/esm/bundler/types.d.ts.map +1 -0
- package/esm/components/alert.d.ts +66 -0
- package/esm/components/alert.d.ts.map +1 -0
- package/esm/components/alert.schema.d.ts +98 -0
- package/esm/components/alert.schema.d.ts.map +1 -0
- package/esm/components/avatar.d.ts +77 -0
- package/esm/components/avatar.d.ts.map +1 -0
- package/esm/components/avatar.schema.d.ts +170 -0
- package/esm/components/avatar.schema.d.ts.map +1 -0
- package/esm/components/badge.d.ts +64 -0
- package/esm/components/badge.d.ts.map +1 -0
- package/esm/components/badge.schema.d.ts +91 -0
- package/esm/components/badge.schema.d.ts.map +1 -0
- package/esm/components/button.d.ts +100 -0
- package/esm/components/button.d.ts.map +1 -0
- package/esm/components/button.schema.d.ts +120 -0
- package/esm/components/button.schema.d.ts.map +1 -0
- package/esm/components/card.d.ts +53 -0
- package/esm/components/card.d.ts.map +1 -0
- package/esm/components/card.schema.d.ts +93 -0
- package/esm/components/card.schema.d.ts.map +1 -0
- package/esm/components/form.d.ts +212 -0
- package/esm/components/form.d.ts.map +1 -0
- package/esm/components/form.schema.d.ts +365 -0
- package/esm/components/form.schema.d.ts.map +1 -0
- package/esm/components/index.d.ts +29 -0
- package/esm/components/index.d.ts.map +1 -0
- package/esm/components/index.js +2456 -0
- package/esm/components/list.d.ts +121 -0
- package/esm/components/list.d.ts.map +1 -0
- package/esm/components/list.schema.d.ts +129 -0
- package/esm/components/list.schema.d.ts.map +1 -0
- package/esm/components/modal.d.ts +100 -0
- package/esm/components/modal.d.ts.map +1 -0
- package/esm/components/modal.schema.d.ts +151 -0
- package/esm/components/modal.schema.d.ts.map +1 -0
- package/esm/components/table.d.ts +91 -0
- package/esm/components/table.d.ts.map +1 -0
- package/esm/components/table.schema.d.ts +123 -0
- package/esm/components/table.schema.d.ts.map +1 -0
- package/esm/dependency/cdn-registry.d.ts +98 -0
- package/esm/dependency/cdn-registry.d.ts.map +1 -0
- package/esm/dependency/import-map.d.ts +186 -0
- package/esm/dependency/import-map.d.ts.map +1 -0
- package/esm/dependency/import-parser.d.ts +82 -0
- package/esm/dependency/import-parser.d.ts.map +1 -0
- package/esm/dependency/index.d.ts +17 -0
- package/esm/dependency/index.d.ts.map +1 -0
- package/esm/dependency/resolver.d.ts +164 -0
- package/esm/dependency/resolver.d.ts.map +1 -0
- package/esm/dependency/schemas.d.ts +486 -0
- package/esm/dependency/schemas.d.ts.map +1 -0
- package/esm/dependency/template-loader.d.ts +204 -0
- package/esm/dependency/template-loader.d.ts.map +1 -0
- package/esm/dependency/template-processor.d.ts +118 -0
- package/esm/dependency/template-processor.d.ts.map +1 -0
- package/esm/dependency/types.d.ts +739 -0
- package/esm/dependency/types.d.ts.map +1 -0
- package/esm/handlebars/expression-extractor.d.ts +147 -0
- package/esm/handlebars/expression-extractor.d.ts.map +1 -0
- package/esm/handlebars/helpers.d.ts +339 -0
- package/esm/handlebars/helpers.d.ts.map +1 -0
- package/esm/handlebars/index.d.ts +195 -0
- package/esm/handlebars/index.d.ts.map +1 -0
- package/esm/handlebars/index.js +587 -0
- package/esm/index.d.ts +56 -0
- package/esm/index.d.ts.map +1 -0
- package/esm/index.js +20511 -0
- package/esm/layouts/base.d.ts +86 -0
- package/esm/layouts/base.d.ts.map +1 -0
- package/esm/layouts/index.d.ts +8 -0
- package/esm/layouts/index.d.ts.map +1 -0
- package/esm/layouts/index.js +892 -0
- package/esm/layouts/presets.d.ts +134 -0
- package/esm/layouts/presets.d.ts.map +1 -0
- package/esm/package.json +90 -0
- package/esm/pages/consent.d.ts +117 -0
- package/esm/pages/consent.d.ts.map +1 -0
- package/esm/pages/error.d.ts +101 -0
- package/esm/pages/error.d.ts.map +1 -0
- package/esm/pages/index.d.ts +9 -0
- package/esm/pages/index.d.ts.map +1 -0
- package/esm/pages/index.js +1563 -0
- package/esm/react/Alert.d.ts +102 -0
- package/esm/react/Alert.d.ts.map +1 -0
- package/esm/react/Badge.d.ts +101 -0
- package/esm/react/Badge.d.ts.map +1 -0
- package/esm/react/Button.d.ts +109 -0
- package/esm/react/Button.d.ts.map +1 -0
- package/esm/react/Card.d.ts +104 -0
- package/esm/react/Card.d.ts.map +1 -0
- package/esm/react/hooks/context.d.ts +179 -0
- package/esm/react/hooks/context.d.ts.map +1 -0
- package/esm/react/hooks/index.d.ts +42 -0
- package/esm/react/hooks/index.d.ts.map +1 -0
- package/esm/react/hooks/tools.d.ts +284 -0
- package/esm/react/hooks/tools.d.ts.map +1 -0
- package/esm/react/index.d.ts +81 -0
- package/esm/react/index.d.ts.map +1 -0
- package/esm/react/index.js +1372 -0
- package/esm/react/types.d.ts +106 -0
- package/esm/react/types.d.ts.map +1 -0
- package/esm/react/utils.d.ts +43 -0
- package/esm/react/utils.d.ts.map +1 -0
- package/esm/registry/index.d.ts +46 -0
- package/esm/registry/index.d.ts.map +1 -0
- package/esm/registry/index.js +6422 -0
- package/esm/registry/render-template.d.ts +91 -0
- package/esm/registry/render-template.d.ts.map +1 -0
- package/esm/registry/tool-ui.registry.d.ts +294 -0
- package/esm/registry/tool-ui.registry.d.ts.map +1 -0
- package/esm/registry/uri-utils.d.ts +56 -0
- package/esm/registry/uri-utils.d.ts.map +1 -0
- package/esm/render/index.d.ts +8 -0
- package/esm/render/index.d.ts.map +1 -0
- package/esm/render/index.js +45 -0
- package/esm/render/prerender.d.ts +57 -0
- package/esm/render/prerender.d.ts.map +1 -0
- package/esm/renderers/cache.d.ts +145 -0
- package/esm/renderers/cache.d.ts.map +1 -0
- package/esm/renderers/html.renderer.d.ts +123 -0
- package/esm/renderers/html.renderer.d.ts.map +1 -0
- package/esm/renderers/index.d.ts +36 -0
- package/esm/renderers/index.d.ts.map +1 -0
- package/esm/renderers/index.js +1827 -0
- package/esm/renderers/mdx.renderer.d.ts +120 -0
- package/esm/renderers/mdx.renderer.d.ts.map +1 -0
- package/esm/renderers/react.renderer.d.ts +96 -0
- package/esm/renderers/react.renderer.d.ts.map +1 -0
- package/esm/renderers/registry.d.ts +134 -0
- package/esm/renderers/registry.d.ts.map +1 -0
- package/esm/renderers/types.d.ts +342 -0
- package/esm/renderers/types.d.ts.map +1 -0
- package/esm/renderers/utils/detect.d.ts +107 -0
- package/esm/renderers/utils/detect.d.ts.map +1 -0
- package/esm/renderers/utils/hash.d.ts +40 -0
- package/esm/renderers/utils/hash.d.ts.map +1 -0
- package/esm/renderers/utils/index.d.ts +9 -0
- package/esm/renderers/utils/index.d.ts.map +1 -0
- package/esm/renderers/utils/transpiler.d.ts +89 -0
- package/esm/renderers/utils/transpiler.d.ts.map +1 -0
- package/esm/runtime/adapters/html.adapter.d.ts +59 -0
- package/esm/runtime/adapters/html.adapter.d.ts.map +1 -0
- package/esm/runtime/adapters/index.d.ts +26 -0
- package/esm/runtime/adapters/index.d.ts.map +1 -0
- package/esm/runtime/adapters/mdx.adapter.d.ts +73 -0
- package/esm/runtime/adapters/mdx.adapter.d.ts.map +1 -0
- package/esm/runtime/adapters/react.adapter.d.ts +70 -0
- package/esm/runtime/adapters/react.adapter.d.ts.map +1 -0
- package/esm/runtime/adapters/types.d.ts +95 -0
- package/esm/runtime/adapters/types.d.ts.map +1 -0
- package/esm/runtime/csp.d.ts +48 -0
- package/esm/runtime/csp.d.ts.map +1 -0
- package/esm/runtime/index.d.ts +17 -0
- package/esm/runtime/index.d.ts.map +1 -0
- package/esm/runtime/index.js +5186 -0
- package/esm/runtime/mcp-bridge.d.ts +101 -0
- package/esm/runtime/mcp-bridge.d.ts.map +1 -0
- package/esm/runtime/renderer-runtime.d.ts +133 -0
- package/esm/runtime/renderer-runtime.d.ts.map +1 -0
- package/esm/runtime/sanitizer.d.ts +172 -0
- package/esm/runtime/sanitizer.d.ts.map +1 -0
- package/esm/runtime/types.d.ts +415 -0
- package/esm/runtime/types.d.ts.map +1 -0
- package/esm/runtime/wrapper.d.ts +421 -0
- package/esm/runtime/wrapper.d.ts.map +1 -0
- package/esm/styles/index.d.ts +8 -0
- package/esm/styles/index.d.ts.map +1 -0
- package/esm/styles/index.js +171 -0
- package/esm/styles/variants.d.ts +51 -0
- package/esm/styles/variants.d.ts.map +1 -0
- package/esm/theme/cdn.d.ts +195 -0
- package/esm/theme/cdn.d.ts.map +1 -0
- package/esm/theme/index.d.ts +18 -0
- package/esm/theme/index.d.ts.map +1 -0
- package/esm/theme/index.js +700 -0
- package/esm/theme/platforms.d.ts +107 -0
- package/esm/theme/platforms.d.ts.map +1 -0
- package/esm/theme/presets/github-openai.d.ts +50 -0
- package/esm/theme/presets/github-openai.d.ts.map +1 -0
- package/esm/theme/presets/index.d.ts +11 -0
- package/esm/theme/presets/index.d.ts.map +1 -0
- package/esm/theme/theme.d.ts +396 -0
- package/esm/theme/theme.d.ts.map +1 -0
- package/esm/tool-template/builder.d.ts +213 -0
- package/esm/tool-template/builder.d.ts.map +1 -0
- package/esm/tool-template/index.d.ts +16 -0
- package/esm/tool-template/index.d.ts.map +1 -0
- package/esm/tool-template/index.js +3515 -0
- package/esm/types/index.d.ts +14 -0
- package/esm/types/index.d.ts.map +1 -0
- package/esm/types/index.js +75 -0
- package/esm/types/ui-config.d.ts +639 -0
- package/esm/types/ui-config.d.ts.map +1 -0
- package/esm/types/ui-runtime.d.ts +1007 -0
- package/esm/types/ui-runtime.d.ts.map +1 -0
- package/esm/typings/cache/cache-adapter.d.ts +125 -0
- package/esm/typings/cache/cache-adapter.d.ts.map +1 -0
- package/esm/typings/cache/index.d.ts +10 -0
- package/esm/typings/cache/index.d.ts.map +1 -0
- package/esm/typings/cache/memory-cache.d.ts +92 -0
- package/esm/typings/cache/memory-cache.d.ts.map +1 -0
- package/esm/typings/dts-parser.d.ts +90 -0
- package/esm/typings/dts-parser.d.ts.map +1 -0
- package/esm/typings/index.d.ts +48 -0
- package/esm/typings/index.d.ts.map +1 -0
- package/esm/typings/schemas.d.ts +232 -0
- package/esm/typings/schemas.d.ts.map +1 -0
- package/esm/typings/type-fetcher.d.ts +89 -0
- package/esm/typings/type-fetcher.d.ts.map +1 -0
- package/esm/typings/types.d.ts +320 -0
- package/esm/typings/types.d.ts.map +1 -0
- package/esm/universal/UniversalApp.d.ts +108 -0
- package/esm/universal/UniversalApp.d.ts.map +1 -0
- package/esm/universal/cached-runtime.d.ts +115 -0
- package/esm/universal/cached-runtime.d.ts.map +1 -0
- package/esm/universal/context.d.ts +122 -0
- package/esm/universal/context.d.ts.map +1 -0
- package/esm/universal/index.d.ts +57 -0
- package/esm/universal/index.d.ts.map +1 -0
- package/esm/universal/renderers/html.renderer.d.ts +37 -0
- package/esm/universal/renderers/html.renderer.d.ts.map +1 -0
- package/esm/universal/renderers/index.d.ts +112 -0
- package/esm/universal/renderers/index.d.ts.map +1 -0
- package/esm/universal/renderers/markdown.renderer.d.ts +33 -0
- package/esm/universal/renderers/markdown.renderer.d.ts.map +1 -0
- package/esm/universal/renderers/mdx.renderer.d.ts +38 -0
- package/esm/universal/renderers/mdx.renderer.d.ts.map +1 -0
- package/esm/universal/renderers/react.renderer.d.ts +46 -0
- package/esm/universal/renderers/react.renderer.d.ts.map +1 -0
- package/esm/universal/runtime-builder.d.ts +33 -0
- package/esm/universal/runtime-builder.d.ts.map +1 -0
- package/esm/universal/store.d.ts +135 -0
- package/esm/universal/store.d.ts.map +1 -0
- package/esm/universal/types.d.ts +199 -0
- package/esm/universal/types.d.ts.map +1 -0
- package/esm/utils/escape-html.d.ts +58 -0
- package/esm/utils/escape-html.d.ts.map +1 -0
- package/esm/utils/index.d.ts +10 -0
- package/esm/utils/index.d.ts.map +1 -0
- package/esm/utils/index.js +40 -0
- package/esm/utils/safe-stringify.d.ts +30 -0
- package/esm/utils/safe-stringify.d.ts.map +1 -0
- package/esm/validation/error-box.d.ts +56 -0
- package/esm/validation/error-box.d.ts.map +1 -0
- package/esm/validation/index.d.ts +13 -0
- package/esm/validation/index.d.ts.map +1 -0
- package/esm/validation/index.js +562 -0
- package/esm/validation/schema-paths.d.ts +118 -0
- package/esm/validation/schema-paths.d.ts.map +1 -0
- package/esm/validation/template-validator.d.ts +143 -0
- package/esm/validation/template-validator.d.ts.map +1 -0
- package/esm/validation/wrapper.d.ts +97 -0
- package/esm/validation/wrapper.d.ts.map +1 -0
- package/esm/web-components/core/attribute-parser.d.ts +82 -0
- package/esm/web-components/core/attribute-parser.d.ts.map +1 -0
- package/esm/web-components/core/base-element.d.ts +197 -0
- package/esm/web-components/core/base-element.d.ts.map +1 -0
- package/esm/web-components/core/index.d.ts +9 -0
- package/esm/web-components/core/index.d.ts.map +1 -0
- package/esm/web-components/elements/fmcp-alert.d.ts +46 -0
- package/esm/web-components/elements/fmcp-alert.d.ts.map +1 -0
- package/esm/web-components/elements/fmcp-badge.d.ts +47 -0
- package/esm/web-components/elements/fmcp-badge.d.ts.map +1 -0
- package/esm/web-components/elements/fmcp-button.d.ts +117 -0
- package/esm/web-components/elements/fmcp-button.d.ts.map +1 -0
- package/esm/web-components/elements/fmcp-card.d.ts +53 -0
- package/esm/web-components/elements/fmcp-card.d.ts.map +1 -0
- package/esm/web-components/elements/fmcp-input.d.ts +96 -0
- package/esm/web-components/elements/fmcp-input.d.ts.map +1 -0
- package/esm/web-components/elements/fmcp-select.d.ts +100 -0
- package/esm/web-components/elements/fmcp-select.d.ts.map +1 -0
- package/esm/web-components/elements/index.d.ts +13 -0
- package/esm/web-components/elements/index.d.ts.map +1 -0
- package/esm/web-components/index.d.ts +50 -0
- package/esm/web-components/index.d.ts.map +1 -0
- package/esm/web-components/index.js +2048 -0
- package/esm/web-components/register.d.ts +57 -0
- package/esm/web-components/register.d.ts.map +1 -0
- package/esm/web-components/types.d.ts +122 -0
- package/esm/web-components/types.d.ts.map +1 -0
- package/esm/widgets/index.d.ts +8 -0
- package/esm/widgets/index.d.ts.map +1 -0
- package/esm/widgets/index.js +941 -0
- package/esm/widgets/progress.d.ts +133 -0
- package/esm/widgets/progress.d.ts.map +1 -0
- package/esm/widgets/resource.d.ts +163 -0
- package/esm/widgets/resource.d.ts.map +1 -0
- package/handlebars/expression-extractor.d.ts +147 -0
- package/handlebars/expression-extractor.d.ts.map +1 -0
- package/handlebars/helpers.d.ts +339 -0
- package/handlebars/helpers.d.ts.map +1 -0
- package/handlebars/index.d.ts +195 -0
- package/handlebars/index.d.ts.map +1 -0
- package/handlebars/index.js +666 -0
- package/index.d.ts +56 -0
- package/index.d.ts.map +1 -0
- package/index.js +20942 -0
- package/layouts/base.d.ts +86 -0
- package/layouts/base.d.ts.map +1 -0
- package/layouts/index.d.ts +8 -0
- package/layouts/index.d.ts.map +1 -0
- package/layouts/index.js +930 -0
- package/layouts/presets.d.ts +134 -0
- package/layouts/presets.d.ts.map +1 -0
- package/package.json +28 -87
- package/pages/consent.d.ts +117 -0
- package/pages/consent.d.ts.map +1 -0
- package/pages/error.d.ts +101 -0
- package/pages/error.d.ts.map +1 -0
- package/pages/index.d.ts +9 -0
- package/pages/index.d.ts.map +1 -0
- package/pages/index.js +1602 -0
- package/react/Alert.d.ts +102 -0
- package/react/Alert.d.ts.map +1 -0
- package/react/Badge.d.ts +101 -0
- package/react/Badge.d.ts.map +1 -0
- package/react/Button.d.ts +109 -0
- package/react/Button.d.ts.map +1 -0
- package/react/Card.d.ts +104 -0
- package/react/Card.d.ts.map +1 -0
- package/react/hooks/context.d.ts +179 -0
- package/react/hooks/context.d.ts.map +1 -0
- package/react/hooks/index.d.ts +42 -0
- package/react/hooks/index.d.ts.map +1 -0
- package/react/hooks/tools.d.ts +284 -0
- package/react/hooks/tools.d.ts.map +1 -0
- package/react/index.d.ts +81 -0
- package/react/index.d.ts.map +1 -0
- package/react/index.js +1430 -0
- package/react/types.d.ts +106 -0
- package/react/types.d.ts.map +1 -0
- package/react/utils.d.ts +43 -0
- package/react/utils.d.ts.map +1 -0
- package/registry/index.d.ts +46 -0
- package/registry/index.d.ts.map +1 -0
- package/registry/index.js +6465 -0
- package/registry/render-template.d.ts +91 -0
- package/registry/render-template.d.ts.map +1 -0
- package/registry/tool-ui.registry.d.ts +294 -0
- package/registry/tool-ui.registry.d.ts.map +1 -0
- package/registry/uri-utils.d.ts +56 -0
- package/registry/uri-utils.d.ts.map +1 -0
- package/render/index.d.ts +8 -0
- package/render/index.d.ts.map +1 -0
- package/render/index.js +77 -0
- package/render/prerender.d.ts +57 -0
- package/render/prerender.d.ts.map +1 -0
- package/renderers/cache.d.ts +145 -0
- package/renderers/cache.d.ts.map +1 -0
- package/renderers/html.renderer.d.ts +123 -0
- package/renderers/html.renderer.d.ts.map +1 -0
- package/renderers/index.d.ts +36 -0
- package/renderers/index.d.ts.map +1 -0
- package/renderers/index.js +1882 -0
- package/renderers/mdx.renderer.d.ts +120 -0
- package/renderers/mdx.renderer.d.ts.map +1 -0
- package/renderers/react.renderer.d.ts +96 -0
- package/renderers/react.renderer.d.ts.map +1 -0
- package/renderers/registry.d.ts +134 -0
- package/renderers/registry.d.ts.map +1 -0
- package/renderers/types.d.ts +342 -0
- package/renderers/types.d.ts.map +1 -0
- package/renderers/utils/detect.d.ts +107 -0
- package/renderers/utils/detect.d.ts.map +1 -0
- package/renderers/utils/hash.d.ts +40 -0
- package/renderers/utils/hash.d.ts.map +1 -0
- package/renderers/utils/index.d.ts +9 -0
- package/renderers/utils/index.d.ts.map +1 -0
- package/renderers/utils/transpiler.d.ts +89 -0
- package/renderers/utils/transpiler.d.ts.map +1 -0
- package/runtime/adapters/html.adapter.d.ts +59 -0
- package/runtime/adapters/html.adapter.d.ts.map +1 -0
- package/runtime/adapters/index.d.ts +26 -0
- package/runtime/adapters/index.d.ts.map +1 -0
- package/runtime/adapters/mdx.adapter.d.ts +73 -0
- package/runtime/adapters/mdx.adapter.d.ts.map +1 -0
- package/runtime/adapters/react.adapter.d.ts +70 -0
- package/runtime/adapters/react.adapter.d.ts.map +1 -0
- package/runtime/adapters/types.d.ts +95 -0
- package/runtime/adapters/types.d.ts.map +1 -0
- package/runtime/csp.d.ts +48 -0
- package/runtime/csp.d.ts.map +1 -0
- package/runtime/index.d.ts +17 -0
- package/runtime/index.d.ts.map +1 -0
- package/runtime/index.js +5264 -0
- package/runtime/mcp-bridge.d.ts +101 -0
- package/runtime/mcp-bridge.d.ts.map +1 -0
- package/runtime/renderer-runtime.d.ts +133 -0
- package/runtime/renderer-runtime.d.ts.map +1 -0
- package/runtime/sanitizer.d.ts +172 -0
- package/runtime/sanitizer.d.ts.map +1 -0
- package/runtime/types.d.ts +415 -0
- package/runtime/types.d.ts.map +1 -0
- package/runtime/wrapper.d.ts +421 -0
- package/runtime/wrapper.d.ts.map +1 -0
- package/styles/index.d.ts +8 -0
- package/styles/index.d.ts.map +1 -0
- package/styles/index.js +222 -0
- package/styles/variants.d.ts +51 -0
- package/styles/variants.d.ts.map +1 -0
- package/theme/cdn.d.ts +195 -0
- package/theme/cdn.d.ts.map +1 -0
- package/theme/index.d.ts +18 -0
- package/theme/index.d.ts.map +1 -0
- package/theme/index.js +757 -0
- package/theme/platforms.d.ts +107 -0
- package/theme/platforms.d.ts.map +1 -0
- package/theme/presets/github-openai.d.ts +50 -0
- package/theme/presets/github-openai.d.ts.map +1 -0
- package/theme/presets/index.d.ts +11 -0
- package/theme/presets/index.d.ts.map +1 -0
- package/theme/theme.d.ts +396 -0
- package/theme/theme.d.ts.map +1 -0
- package/tool-template/builder.d.ts +213 -0
- package/tool-template/builder.d.ts.map +1 -0
- package/tool-template/index.d.ts +16 -0
- package/tool-template/index.d.ts.map +1 -0
- package/tool-template/index.js +3559 -0
- package/types/index.d.ts +14 -0
- package/types/index.d.ts.map +1 -0
- package/types/index.js +108 -0
- package/types/ui-config.d.ts +639 -0
- package/types/ui-config.d.ts.map +1 -0
- package/types/ui-runtime.d.ts +1007 -0
- package/types/ui-runtime.d.ts.map +1 -0
- package/typings/cache/cache-adapter.d.ts +125 -0
- package/typings/cache/cache-adapter.d.ts.map +1 -0
- package/typings/cache/index.d.ts +10 -0
- package/typings/cache/index.d.ts.map +1 -0
- package/typings/cache/memory-cache.d.ts +92 -0
- package/typings/cache/memory-cache.d.ts.map +1 -0
- package/typings/dts-parser.d.ts +90 -0
- package/typings/dts-parser.d.ts.map +1 -0
- package/typings/index.d.ts +48 -0
- package/typings/index.d.ts.map +1 -0
- package/typings/schemas.d.ts +232 -0
- package/typings/schemas.d.ts.map +1 -0
- package/typings/type-fetcher.d.ts +89 -0
- package/typings/type-fetcher.d.ts.map +1 -0
- package/typings/types.d.ts +320 -0
- package/typings/types.d.ts.map +1 -0
- package/universal/UniversalApp.d.ts +108 -0
- package/universal/UniversalApp.d.ts.map +1 -0
- package/universal/cached-runtime.d.ts +115 -0
- package/universal/cached-runtime.d.ts.map +1 -0
- package/universal/context.d.ts +122 -0
- package/universal/context.d.ts.map +1 -0
- package/universal/index.d.ts +57 -0
- package/universal/index.d.ts.map +1 -0
- package/universal/renderers/html.renderer.d.ts +37 -0
- package/universal/renderers/html.renderer.d.ts.map +1 -0
- package/universal/renderers/index.d.ts +112 -0
- package/universal/renderers/index.d.ts.map +1 -0
- package/universal/renderers/markdown.renderer.d.ts +33 -0
- package/universal/renderers/markdown.renderer.d.ts.map +1 -0
- package/universal/renderers/mdx.renderer.d.ts +38 -0
- package/universal/renderers/mdx.renderer.d.ts.map +1 -0
- package/universal/renderers/react.renderer.d.ts +46 -0
- package/universal/renderers/react.renderer.d.ts.map +1 -0
- package/universal/runtime-builder.d.ts +33 -0
- package/universal/runtime-builder.d.ts.map +1 -0
- package/universal/store.d.ts +135 -0
- package/universal/store.d.ts.map +1 -0
- package/universal/types.d.ts +199 -0
- package/universal/types.d.ts.map +1 -0
- package/utils/escape-html.d.ts +58 -0
- package/utils/escape-html.d.ts.map +1 -0
- package/utils/index.d.ts +10 -0
- package/utils/index.d.ts.map +1 -0
- package/utils/index.js +70 -0
- package/utils/safe-stringify.d.ts +30 -0
- package/utils/safe-stringify.d.ts.map +1 -0
- package/validation/error-box.d.ts +56 -0
- package/validation/error-box.d.ts.map +1 -0
- package/validation/index.d.ts +13 -0
- package/validation/index.d.ts.map +1 -0
- package/validation/index.js +603 -0
- package/validation/schema-paths.d.ts +118 -0
- package/validation/schema-paths.d.ts.map +1 -0
- package/validation/template-validator.d.ts +143 -0
- package/validation/template-validator.d.ts.map +1 -0
- package/validation/wrapper.d.ts +97 -0
- package/validation/wrapper.d.ts.map +1 -0
- package/web-components/core/attribute-parser.d.ts +82 -0
- package/web-components/core/attribute-parser.d.ts.map +1 -0
- package/web-components/core/base-element.d.ts +197 -0
- package/web-components/core/base-element.d.ts.map +1 -0
- package/web-components/core/index.d.ts +9 -0
- package/web-components/core/index.d.ts.map +1 -0
- package/web-components/elements/fmcp-alert.d.ts +46 -0
- package/web-components/elements/fmcp-alert.d.ts.map +1 -0
- package/web-components/elements/fmcp-badge.d.ts +47 -0
- package/web-components/elements/fmcp-badge.d.ts.map +1 -0
- package/web-components/elements/fmcp-button.d.ts +117 -0
- package/web-components/elements/fmcp-button.d.ts.map +1 -0
- package/web-components/elements/fmcp-card.d.ts +53 -0
- package/web-components/elements/fmcp-card.d.ts.map +1 -0
- package/web-components/elements/fmcp-input.d.ts +96 -0
- package/web-components/elements/fmcp-input.d.ts.map +1 -0
- package/web-components/elements/fmcp-select.d.ts +100 -0
- package/web-components/elements/fmcp-select.d.ts.map +1 -0
- package/web-components/elements/index.d.ts +13 -0
- package/web-components/elements/index.d.ts.map +1 -0
- package/web-components/index.d.ts +50 -0
- package/web-components/index.d.ts.map +1 -0
- package/web-components/index.js +2093 -0
- package/web-components/register.d.ts +57 -0
- package/web-components/register.d.ts.map +1 -0
- package/web-components/types.d.ts +122 -0
- package/web-components/types.d.ts.map +1 -0
- package/widgets/index.d.ts +8 -0
- package/widgets/index.d.ts.map +1 -0
- package/widgets/index.js +978 -0
- package/widgets/progress.d.ts +133 -0
- package/widgets/progress.d.ts.map +1 -0
- package/widgets/resource.d.ts +163 -0
- package/widgets/resource.d.ts.map +1 -0
- package/src/adapters/index.d.ts +0 -10
- package/src/adapters/index.js +0 -18
- package/src/adapters/index.js.map +0 -1
- package/src/adapters/platform-meta.d.ts +0 -165
- package/src/adapters/platform-meta.js +0 -310
- package/src/adapters/platform-meta.js.map +0 -1
- package/src/base-template/bridge.d.ts +0 -89
- package/src/base-template/bridge.js +0 -452
- package/src/base-template/bridge.js.map +0 -1
- package/src/base-template/default-base-template.d.ts +0 -91
- package/src/base-template/default-base-template.js +0 -435
- package/src/base-template/default-base-template.js.map +0 -1
- package/src/base-template/index.d.ts +0 -14
- package/src/base-template/index.js +0 -30
- package/src/base-template/index.js.map +0 -1
- package/src/base-template/polyfills.d.ts +0 -30
- package/src/base-template/polyfills.js +0 -190
- package/src/base-template/polyfills.js.map +0 -1
- package/src/base-template/theme-styles.d.ts +0 -73
- package/src/base-template/theme-styles.js +0 -95
- package/src/base-template/theme-styles.js.map +0 -1
- package/src/bridge/adapters/base-adapter.d.ts +0 -103
- package/src/bridge/adapters/base-adapter.js +0 -314
- package/src/bridge/adapters/base-adapter.js.map +0 -1
- package/src/bridge/adapters/claude.adapter.d.ts +0 -66
- package/src/bridge/adapters/claude.adapter.js +0 -145
- package/src/bridge/adapters/claude.adapter.js.map +0 -1
- package/src/bridge/adapters/ext-apps.adapter.d.ts +0 -142
- package/src/bridge/adapters/ext-apps.adapter.js +0 -416
- package/src/bridge/adapters/ext-apps.adapter.js.map +0 -1
- package/src/bridge/adapters/gemini.adapter.d.ts +0 -63
- package/src/bridge/adapters/gemini.adapter.js +0 -160
- package/src/bridge/adapters/gemini.adapter.js.map +0 -1
- package/src/bridge/adapters/generic.adapter.d.ts +0 -55
- package/src/bridge/adapters/generic.adapter.js +0 -108
- package/src/bridge/adapters/generic.adapter.js.map +0 -1
- package/src/bridge/adapters/index.d.ts +0 -25
- package/src/bridge/adapters/index.js +0 -65
- package/src/bridge/adapters/index.js.map +0 -1
- package/src/bridge/adapters/openai.adapter.d.ts +0 -64
- package/src/bridge/adapters/openai.adapter.js +0 -194
- package/src/bridge/adapters/openai.adapter.js.map +0 -1
- package/src/bridge/core/adapter-registry.d.ts +0 -121
- package/src/bridge/core/adapter-registry.js +0 -271
- package/src/bridge/core/adapter-registry.js.map +0 -1
- package/src/bridge/core/bridge-factory.d.ts +0 -198
- package/src/bridge/core/bridge-factory.js +0 -428
- package/src/bridge/core/bridge-factory.js.map +0 -1
- package/src/bridge/core/index.d.ts +0 -9
- package/src/bridge/core/index.js +0 -22
- package/src/bridge/core/index.js.map +0 -1
- package/src/bridge/index.d.ts +0 -61
- package/src/bridge/index.js +0 -94
- package/src/bridge/index.js.map +0 -1
- package/src/bridge/runtime/iife-generator.d.ts +0 -61
- package/src/bridge/runtime/iife-generator.js +0 -940
- package/src/bridge/runtime/iife-generator.js.map +0 -1
- package/src/bridge/runtime/index.d.ts +0 -8
- package/src/bridge/runtime/index.js +0 -16
- package/src/bridge/runtime/index.js.map +0 -1
- package/src/bridge/types.d.ts +0 -385
- package/src/bridge/types.js +0 -11
- package/src/bridge/types.js.map +0 -1
- package/src/build/cdn-resources.d.ts +0 -140
- package/src/build/cdn-resources.js +0 -314
- package/src/build/cdn-resources.js.map +0 -1
- package/src/build/index.d.ts +0 -294
- package/src/build/index.js +0 -325
- package/src/build/index.js.map +0 -1
- package/src/build/widget-manifest.d.ts +0 -212
- package/src/build/widget-manifest.js +0 -652
- package/src/build/widget-manifest.js.map +0 -1
- package/src/bundler/bundler.d.ts +0 -110
- package/src/bundler/bundler.js +0 -432
- package/src/bundler/bundler.js.map +0 -1
- package/src/bundler/cache.d.ts +0 -172
- package/src/bundler/cache.js +0 -250
- package/src/bundler/cache.js.map +0 -1
- package/src/bundler/index.d.ts +0 -41
- package/src/bundler/index.js +0 -73
- package/src/bundler/index.js.map +0 -1
- package/src/bundler/sandbox/enclave-adapter.d.ts +0 -120
- package/src/bundler/sandbox/enclave-adapter.js +0 -339
- package/src/bundler/sandbox/enclave-adapter.js.map +0 -1
- package/src/bundler/sandbox/executor.d.ts +0 -13
- package/src/bundler/sandbox/executor.js +0 -22
- package/src/bundler/sandbox/executor.js.map +0 -1
- package/src/bundler/sandbox/policy.d.ts +0 -61
- package/src/bundler/sandbox/policy.js +0 -238
- package/src/bundler/sandbox/policy.js.map +0 -1
- package/src/bundler/types.d.ts +0 -347
- package/src/bundler/types.js +0 -132
- package/src/bundler/types.js.map +0 -1
- package/src/components/alert.d.ts +0 -71
- package/src/components/alert.js +0 -189
- package/src/components/alert.js.map +0 -1
- package/src/components/alert.schema.d.ts +0 -114
- package/src/components/alert.schema.js +0 -105
- package/src/components/alert.schema.js.map +0 -1
- package/src/components/avatar.d.ts +0 -76
- package/src/components/avatar.js +0 -176
- package/src/components/avatar.js.map +0 -1
- package/src/components/avatar.schema.d.ts +0 -169
- package/src/components/avatar.schema.js +0 -103
- package/src/components/avatar.schema.js.map +0 -1
- package/src/components/badge.d.ts +0 -70
- package/src/components/badge.js +0 -149
- package/src/components/badge.js.map +0 -1
- package/src/components/badge.schema.d.ts +0 -109
- package/src/components/badge.schema.js +0 -96
- package/src/components/badge.schema.js.map +0 -1
- package/src/components/button.d.ts +0 -111
- package/src/components/button.js +0 -336
- package/src/components/button.js.map +0 -1
- package/src/components/button.schema.d.ts +0 -148
- package/src/components/button.schema.js +0 -121
- package/src/components/button.schema.js.map +0 -1
- package/src/components/card.d.ts +0 -60
- package/src/components/card.js +0 -117
- package/src/components/card.js.map +0 -1
- package/src/components/card.schema.d.ts +0 -113
- package/src/components/card.schema.js +0 -98
- package/src/components/card.schema.js.map +0 -1
- package/src/components/form.d.ts +0 -239
- package/src/components/form.js +0 -420
- package/src/components/form.js.map +0 -1
- package/src/components/form.schema.d.ts +0 -441
- package/src/components/form.schema.js +0 -406
- package/src/components/form.schema.js.map +0 -1
- package/src/components/index.d.ts +0 -29
- package/src/components/index.js +0 -98
- package/src/components/index.js.map +0 -1
- package/src/components/list.d.ts +0 -127
- package/src/components/list.js +0 -279
- package/src/components/list.js.map +0 -1
- package/src/components/list.schema.d.ts +0 -134
- package/src/components/list.schema.js +0 -168
- package/src/components/list.schema.js.map +0 -1
- package/src/components/modal.d.ts +0 -111
- package/src/components/modal.js +0 -260
- package/src/components/modal.js.map +0 -1
- package/src/components/modal.schema.d.ts +0 -186
- package/src/components/modal.schema.js +0 -167
- package/src/components/modal.schema.js.map +0 -1
- package/src/components/table.d.ts +0 -105
- package/src/components/table.js +0 -283
- package/src/components/table.js.map +0 -1
- package/src/components/table.schema.d.ts +0 -159
- package/src/components/table.schema.js +0 -173
- package/src/components/table.schema.js.map +0 -1
- package/src/handlebars/helpers.d.ts +0 -348
- package/src/handlebars/helpers.js +0 -605
- package/src/handlebars/helpers.js.map +0 -1
- package/src/handlebars/index.d.ts +0 -193
- package/src/handlebars/index.js +0 -350
- package/src/handlebars/index.js.map +0 -1
- package/src/index.d.ts +0 -50
- package/src/index.js +0 -192
- package/src/index.js.map +0 -1
- package/src/layouts/base.d.ts +0 -88
- package/src/layouts/base.js +0 -227
- package/src/layouts/base.js.map +0 -1
- package/src/layouts/index.d.ts +0 -7
- package/src/layouts/index.js +0 -25
- package/src/layouts/index.js.map +0 -1
- package/src/layouts/presets.d.ts +0 -133
- package/src/layouts/presets.js +0 -277
- package/src/layouts/presets.js.map +0 -1
- package/src/pages/consent.d.ts +0 -116
- package/src/pages/consent.js +0 -218
- package/src/pages/consent.js.map +0 -1
- package/src/pages/error.d.ts +0 -100
- package/src/pages/error.js +0 -263
- package/src/pages/error.js.map +0 -1
- package/src/pages/index.d.ts +0 -8
- package/src/pages/index.js +0 -27
- package/src/pages/index.js.map +0 -1
- package/src/react/Alert.d.ts +0 -101
- package/src/react/Alert.js +0 -51
- package/src/react/Alert.js.map +0 -1
- package/src/react/Badge.d.ts +0 -100
- package/src/react/Badge.js +0 -55
- package/src/react/Badge.js.map +0 -1
- package/src/react/Button.d.ts +0 -108
- package/src/react/Button.js +0 -52
- package/src/react/Button.js.map +0 -1
- package/src/react/Card.d.ts +0 -103
- package/src/react/Card.js +0 -55
- package/src/react/Card.js.map +0 -1
- package/src/react/hooks/context.d.ts +0 -178
- package/src/react/hooks/context.js +0 -287
- package/src/react/hooks/context.js.map +0 -1
- package/src/react/hooks/index.d.ts +0 -41
- package/src/react/hooks/index.js +0 -61
- package/src/react/hooks/index.js.map +0 -1
- package/src/react/hooks/tools.d.ts +0 -283
- package/src/react/hooks/tools.js +0 -465
- package/src/react/hooks/tools.js.map +0 -1
- package/src/react/index.d.ts +0 -80
- package/src/react/index.js +0 -113
- package/src/react/index.js.map +0 -1
- package/src/react/types.d.ts +0 -105
- package/src/react/types.js +0 -12
- package/src/react/types.js.map +0 -1
- package/src/react/utils.d.ts +0 -42
- package/src/react/utils.js +0 -99
- package/src/react/utils.js.map +0 -1
- package/src/registry/index.d.ts +0 -45
- package/src/registry/index.js +0 -67
- package/src/registry/index.js.map +0 -1
- package/src/registry/render-template.d.ts +0 -86
- package/src/registry/render-template.js +0 -239
- package/src/registry/render-template.js.map +0 -1
- package/src/registry/tool-ui.registry.d.ts +0 -260
- package/src/registry/tool-ui.registry.js +0 -438
- package/src/registry/tool-ui.registry.js.map +0 -1
- package/src/registry/uri-utils.d.ts +0 -55
- package/src/registry/uri-utils.js +0 -97
- package/src/registry/uri-utils.js.map +0 -1
- package/src/render/index.d.ts +0 -7
- package/src/render/index.js +0 -14
- package/src/render/index.js.map +0 -1
- package/src/render/prerender.d.ts +0 -56
- package/src/render/prerender.js +0 -98
- package/src/render/prerender.js.map +0 -1
- package/src/renderers/cache.d.ts +0 -144
- package/src/renderers/cache.js +0 -240
- package/src/renderers/cache.js.map +0 -1
- package/src/renderers/html.renderer.d.ts +0 -122
- package/src/renderers/html.renderer.js +0 -204
- package/src/renderers/html.renderer.js.map +0 -1
- package/src/renderers/index.d.ts +0 -35
- package/src/renderers/index.js +0 -70
- package/src/renderers/index.js.map +0 -1
- package/src/renderers/mdx.renderer.d.ts +0 -119
- package/src/renderers/mdx.renderer.js +0 -305
- package/src/renderers/mdx.renderer.js.map +0 -1
- package/src/renderers/react.renderer.d.ts +0 -95
- package/src/renderers/react.renderer.js +0 -260
- package/src/renderers/react.renderer.js.map +0 -1
- package/src/renderers/registry.d.ts +0 -133
- package/src/renderers/registry.js +0 -232
- package/src/renderers/registry.js.map +0 -1
- package/src/renderers/types.d.ts +0 -341
- package/src/renderers/types.js +0 -9
- package/src/renderers/types.js.map +0 -1
- package/src/renderers/utils/detect.d.ts +0 -106
- package/src/renderers/utils/detect.js +0 -267
- package/src/renderers/utils/detect.js.map +0 -1
- package/src/renderers/utils/hash.d.ts +0 -39
- package/src/renderers/utils/hash.js +0 -75
- package/src/renderers/utils/hash.js.map +0 -1
- package/src/renderers/utils/index.d.ts +0 -8
- package/src/renderers/utils/index.js +0 -28
- package/src/renderers/utils/index.js.map +0 -1
- package/src/renderers/utils/transpiler.d.ts +0 -88
- package/src/renderers/utils/transpiler.js +0 -215
- package/src/renderers/utils/transpiler.js.map +0 -1
- package/src/runtime/adapters/html.adapter.d.ts +0 -58
- package/src/runtime/adapters/html.adapter.js +0 -131
- package/src/runtime/adapters/html.adapter.js.map +0 -1
- package/src/runtime/adapters/index.d.ts +0 -25
- package/src/runtime/adapters/index.js +0 -54
- package/src/runtime/adapters/index.js.map +0 -1
- package/src/runtime/adapters/mdx.adapter.d.ts +0 -72
- package/src/runtime/adapters/mdx.adapter.js +0 -241
- package/src/runtime/adapters/mdx.adapter.js.map +0 -1
- package/src/runtime/adapters/react.adapter.d.ts +0 -69
- package/src/runtime/adapters/react.adapter.js +0 -245
- package/src/runtime/adapters/react.adapter.js.map +0 -1
- package/src/runtime/adapters/types.d.ts +0 -94
- package/src/runtime/adapters/types.js +0 -11
- package/src/runtime/adapters/types.js.map +0 -1
- package/src/runtime/csp.d.ts +0 -37
- package/src/runtime/csp.js +0 -140
- package/src/runtime/csp.js.map +0 -1
- package/src/runtime/index.d.ts +0 -16
- package/src/runtime/index.js +0 -72
- package/src/runtime/index.js.map +0 -1
- package/src/runtime/mcp-bridge.d.ts +0 -100
- package/src/runtime/mcp-bridge.js +0 -581
- package/src/runtime/mcp-bridge.js.map +0 -1
- package/src/runtime/renderer-runtime.d.ts +0 -132
- package/src/runtime/renderer-runtime.js +0 -389
- package/src/runtime/renderer-runtime.js.map +0 -1
- package/src/runtime/sanitizer.d.ts +0 -171
- package/src/runtime/sanitizer.js +0 -318
- package/src/runtime/sanitizer.js.map +0 -1
- package/src/runtime/types.d.ts +0 -414
- package/src/runtime/types.js +0 -12
- package/src/runtime/types.js.map +0 -1
- package/src/runtime/wrapper.d.ts +0 -375
- package/src/runtime/wrapper.js +0 -1793
- package/src/runtime/wrapper.js.map +0 -1
- package/src/styles/index.d.ts +0 -7
- package/src/styles/index.js +0 -11
- package/src/styles/index.js.map +0 -1
- package/src/styles/variants.d.ts +0 -50
- package/src/styles/variants.js +0 -175
- package/src/styles/variants.js.map +0 -1
- package/src/theme/cdn.d.ts +0 -194
- package/src/theme/cdn.js +0 -375
- package/src/theme/cdn.js.map +0 -1
- package/src/theme/index.d.ts +0 -17
- package/src/theme/index.js +0 -57
- package/src/theme/index.js.map +0 -1
- package/src/theme/platforms.d.ts +0 -106
- package/src/theme/platforms.js +0 -161
- package/src/theme/platforms.js.map +0 -1
- package/src/theme/presets/github-openai.d.ts +0 -49
- package/src/theme/presets/github-openai.js +0 -189
- package/src/theme/presets/github-openai.js.map +0 -1
- package/src/theme/presets/index.d.ts +0 -10
- package/src/theme/presets/index.js +0 -17
- package/src/theme/presets/index.js.map +0 -1
- package/src/theme/theme.d.ts +0 -395
- package/src/theme/theme.js +0 -332
- package/src/theme/theme.js.map +0 -1
- package/src/tool-template/builder.d.ts +0 -212
- package/src/tool-template/builder.js +0 -397
- package/src/tool-template/builder.js.map +0 -1
- package/src/tool-template/index.d.ts +0 -15
- package/src/tool-template/index.js +0 -38
- package/src/tool-template/index.js.map +0 -1
- package/src/types/index.d.ts +0 -13
- package/src/types/index.js +0 -26
- package/src/types/index.js.map +0 -1
- package/src/types/ui-config.d.ts +0 -357
- package/src/types/ui-config.js +0 -12
- package/src/types/ui-config.js.map +0 -1
- package/src/types/ui-runtime.d.ts +0 -965
- package/src/types/ui-runtime.js +0 -117
- package/src/types/ui-runtime.js.map +0 -1
- package/src/validation/error-box.d.ts +0 -55
- package/src/validation/error-box.js +0 -75
- package/src/validation/error-box.js.map +0 -1
- package/src/validation/index.d.ts +0 -12
- package/src/validation/index.js +0 -21
- package/src/validation/index.js.map +0 -1
- package/src/validation/wrapper.d.ts +0 -96
- package/src/validation/wrapper.js +0 -117
- package/src/validation/wrapper.js.map +0 -1
- package/src/web-components/core/attribute-parser.d.ts +0 -85
- package/src/web-components/core/attribute-parser.js +0 -189
- package/src/web-components/core/attribute-parser.js.map +0 -1
- package/src/web-components/core/base-element.d.ts +0 -197
- package/src/web-components/core/base-element.js +0 -289
- package/src/web-components/core/base-element.js.map +0 -1
- package/src/web-components/core/index.d.ts +0 -8
- package/src/web-components/core/index.js +0 -18
- package/src/web-components/core/index.js.map +0 -1
- package/src/web-components/elements/fmcp-alert.d.ts +0 -45
- package/src/web-components/elements/fmcp-alert.js +0 -93
- package/src/web-components/elements/fmcp-alert.js.map +0 -1
- package/src/web-components/elements/fmcp-badge.d.ts +0 -46
- package/src/web-components/elements/fmcp-badge.js +0 -99
- package/src/web-components/elements/fmcp-badge.js.map +0 -1
- package/src/web-components/elements/fmcp-button.d.ts +0 -124
- package/src/web-components/elements/fmcp-button.js +0 -233
- package/src/web-components/elements/fmcp-button.js.map +0 -1
- package/src/web-components/elements/fmcp-card.d.ts +0 -52
- package/src/web-components/elements/fmcp-card.js +0 -115
- package/src/web-components/elements/fmcp-card.js.map +0 -1
- package/src/web-components/elements/fmcp-input.d.ts +0 -95
- package/src/web-components/elements/fmcp-input.js +0 -248
- package/src/web-components/elements/fmcp-input.js.map +0 -1
- package/src/web-components/elements/fmcp-select.d.ts +0 -99
- package/src/web-components/elements/fmcp-select.js +0 -243
- package/src/web-components/elements/fmcp-select.js.map +0 -1
- package/src/web-components/elements/index.d.ts +0 -12
- package/src/web-components/elements/index.js +0 -34
- package/src/web-components/elements/index.js.map +0 -1
- package/src/web-components/index.d.ts +0 -49
- package/src/web-components/index.js +0 -75
- package/src/web-components/index.js.map +0 -1
- package/src/web-components/register.d.ts +0 -56
- package/src/web-components/register.js +0 -80
- package/src/web-components/register.js.map +0 -1
- package/src/web-components/types.d.ts +0 -121
- package/src/web-components/types.js +0 -25
- package/src/web-components/types.js.map +0 -1
- package/src/widgets/index.d.ts +0 -7
- package/src/widgets/index.js +0 -24
- package/src/widgets/index.js.map +0 -1
- package/src/widgets/progress.d.ts +0 -132
- package/src/widgets/progress.js +0 -303
- package/src/widgets/progress.js.map +0 -1
- package/src/widgets/resource.d.ts +0 -162
- package/src/widgets/resource.js +0 -340
- package/src/widgets/resource.js.map +0 -1
|
@@ -1,397 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* Tool Template Builder
|
|
4
|
-
*
|
|
5
|
-
* Provides utilities for building and rendering tool UI templates
|
|
6
|
-
* with the MCP Bridge runtime.
|
|
7
|
-
*
|
|
8
|
-
* Supports multiple template types with auto-detection:
|
|
9
|
-
* - HTML strings and template builder functions
|
|
10
|
-
* - React components (imported or JSX strings)
|
|
11
|
-
* - MDX content (Markdown + JSX)
|
|
12
|
-
*/
|
|
13
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
14
|
-
exports.buildTemplateContext = buildTemplateContext;
|
|
15
|
-
exports.executeTemplate = executeTemplate;
|
|
16
|
-
exports.renderTemplate = renderTemplate;
|
|
17
|
-
exports.renderToolTemplate = renderToolTemplate;
|
|
18
|
-
exports.renderToolTemplateAsync = renderToolTemplateAsync;
|
|
19
|
-
exports.createTemplate = createTemplate;
|
|
20
|
-
exports.createToolUI = createToolUI;
|
|
21
|
-
exports.container = container;
|
|
22
|
-
exports.heading = heading;
|
|
23
|
-
exports.paragraph = paragraph;
|
|
24
|
-
exports.keyValue = keyValue;
|
|
25
|
-
exports.dataList = dataList;
|
|
26
|
-
exports.errorDisplay = errorDisplay;
|
|
27
|
-
exports.successDisplay = successDisplay;
|
|
28
|
-
exports.loadingDisplay = loadingDisplay;
|
|
29
|
-
const wrapper_1 = require("../runtime/wrapper");
|
|
30
|
-
const base_1 = require("../layouts/base");
|
|
31
|
-
const registry_1 = require("../renderers/registry");
|
|
32
|
-
const detect_1 = require("../renderers/utils/detect");
|
|
33
|
-
// ============================================
|
|
34
|
-
// Template Rendering
|
|
35
|
-
// ============================================
|
|
36
|
-
/**
|
|
37
|
-
* Build template context from render options
|
|
38
|
-
*/
|
|
39
|
-
function buildTemplateContext(input, output, structuredContent) {
|
|
40
|
-
return {
|
|
41
|
-
input,
|
|
42
|
-
output,
|
|
43
|
-
structuredContent,
|
|
44
|
-
helpers: (0, wrapper_1.createTemplateHelpers)(),
|
|
45
|
-
};
|
|
46
|
-
}
|
|
47
|
-
/**
|
|
48
|
-
* Execute a template builder function or return static template.
|
|
49
|
-
* This is used for simple HTML templates only.
|
|
50
|
-
*/
|
|
51
|
-
function executeTemplate(template, ctx) {
|
|
52
|
-
if (typeof template === 'string') {
|
|
53
|
-
return template;
|
|
54
|
-
}
|
|
55
|
-
return template(ctx);
|
|
56
|
-
}
|
|
57
|
-
/**
|
|
58
|
-
* Render a template using the appropriate renderer (auto-detected).
|
|
59
|
-
*
|
|
60
|
-
* This function detects the template type and routes to the appropriate
|
|
61
|
-
* renderer (HTML, React, or MDX).
|
|
62
|
-
*
|
|
63
|
-
* @param template - The template to render
|
|
64
|
-
* @param ctx - Template context with input/output/helpers
|
|
65
|
-
* @param options - Additional render options
|
|
66
|
-
* @returns Promise resolving to rendered HTML string
|
|
67
|
-
*/
|
|
68
|
-
async function renderTemplate(template, ctx, options) {
|
|
69
|
-
// Detect template type
|
|
70
|
-
const detection = (0, detect_1.detectTemplateType)(template);
|
|
71
|
-
// For simple HTML templates, use direct execution (sync, faster)
|
|
72
|
-
if (detection.type === 'html-function' || detection.type === 'html-string') {
|
|
73
|
-
const html = typeof template === 'function' ? template(ctx) : template;
|
|
74
|
-
return { html, rendererType: 'html' };
|
|
75
|
-
}
|
|
76
|
-
// For React/MDX, use the renderer registry
|
|
77
|
-
try {
|
|
78
|
-
const result = await registry_1.rendererRegistry.render(template, ctx, {
|
|
79
|
-
hydrate: options?.hydrate,
|
|
80
|
-
mdxComponents: options?.mdxComponents,
|
|
81
|
-
});
|
|
82
|
-
return { html: result.html, rendererType: result.rendererType };
|
|
83
|
-
}
|
|
84
|
-
catch (error) {
|
|
85
|
-
// Fallback to HTML if renderer fails
|
|
86
|
-
console.warn(`[@frontmcp/ui] Renderer failed for ${detection.type}, falling back to HTML:`, error instanceof Error ? error.message : error);
|
|
87
|
-
// Try to execute as HTML template
|
|
88
|
-
if (typeof template === 'function') {
|
|
89
|
-
try {
|
|
90
|
-
const html = template(ctx);
|
|
91
|
-
return { html, rendererType: 'html-fallback' };
|
|
92
|
-
}
|
|
93
|
-
catch {
|
|
94
|
-
// If that fails too, return error message
|
|
95
|
-
return {
|
|
96
|
-
html: `<div class="error">Template rendering failed: ${error instanceof Error ? error.message : 'Unknown error'}</div>`,
|
|
97
|
-
rendererType: 'error',
|
|
98
|
-
};
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
return { html: String(template), rendererType: 'html-fallback' };
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
/**
|
|
105
|
-
* Render a tool UI template to a complete HTML document (sync version).
|
|
106
|
-
*
|
|
107
|
-
* This is the sync entry point for rendering simple HTML tool UIs. It:
|
|
108
|
-
* 1. Builds the template context with input/output/helpers
|
|
109
|
-
* 2. Executes the template builder function
|
|
110
|
-
* 3. Wraps the content in a complete HTML document with MCP Bridge
|
|
111
|
-
* 4. Applies CSP and theme configuration
|
|
112
|
-
*
|
|
113
|
-
* Note: For React/MDX templates, use `renderToolTemplateAsync` instead.
|
|
114
|
-
*
|
|
115
|
-
* @param options - Render options
|
|
116
|
-
* @returns Rendered template with HTML and metadata
|
|
117
|
-
*
|
|
118
|
-
* @example
|
|
119
|
-
* ```typescript
|
|
120
|
-
* const result = renderToolTemplate({
|
|
121
|
-
* ui: toolMetadata.ui,
|
|
122
|
-
* toolName: 'get_weather',
|
|
123
|
-
* input: { location: 'San Francisco' },
|
|
124
|
-
* output: { temperature: 72, conditions: 'sunny' },
|
|
125
|
-
* });
|
|
126
|
-
*
|
|
127
|
-
* // Use result.html for the response body
|
|
128
|
-
* // Use result.mimeType for Content-Type header
|
|
129
|
-
* ```
|
|
130
|
-
*/
|
|
131
|
-
function renderToolTemplate(options) {
|
|
132
|
-
const { ui, toolName, input, output, structuredContent, theme, platform } = options;
|
|
133
|
-
// Build template context
|
|
134
|
-
const ctx = buildTemplateContext(input, output, structuredContent);
|
|
135
|
-
// Execute template to get content HTML (sync for HTML templates)
|
|
136
|
-
const content = executeTemplate(ui.template, ctx);
|
|
137
|
-
// Build wrapper options
|
|
138
|
-
const wrapperOptions = {
|
|
139
|
-
content,
|
|
140
|
-
toolName,
|
|
141
|
-
input: input,
|
|
142
|
-
output,
|
|
143
|
-
structuredContent,
|
|
144
|
-
csp: ui.csp,
|
|
145
|
-
widgetAccessible: ui.widgetAccessible,
|
|
146
|
-
title: `${toolName} Result`,
|
|
147
|
-
theme,
|
|
148
|
-
platform,
|
|
149
|
-
};
|
|
150
|
-
// Wrap in complete HTML document
|
|
151
|
-
const html = (0, wrapper_1.wrapToolUI)(wrapperOptions);
|
|
152
|
-
// Build OpenAI meta if widget features are used
|
|
153
|
-
const openaiMeta = buildOpenAIMetaFromUI(ui);
|
|
154
|
-
return {
|
|
155
|
-
html,
|
|
156
|
-
mimeType: 'text/html',
|
|
157
|
-
openaiMeta: Object.keys(openaiMeta).length > 0 ? openaiMeta : undefined,
|
|
158
|
-
};
|
|
159
|
-
}
|
|
160
|
-
/**
|
|
161
|
-
* Render a tool UI template to a complete HTML document (async version).
|
|
162
|
-
*
|
|
163
|
-
* This is the async entry point that supports all template types:
|
|
164
|
-
* - HTML strings and template builder functions
|
|
165
|
-
* - React components (imported or JSX strings)
|
|
166
|
-
* - MDX content (Markdown + JSX)
|
|
167
|
-
*
|
|
168
|
-
* The template type is auto-detected and the appropriate renderer is used.
|
|
169
|
-
*
|
|
170
|
-
* @param options - Render options
|
|
171
|
-
* @returns Promise resolving to rendered template with HTML and metadata
|
|
172
|
-
*
|
|
173
|
-
* @example React component
|
|
174
|
-
* ```typescript
|
|
175
|
-
* import { WeatherWidget } from './weather-widget.tsx';
|
|
176
|
-
*
|
|
177
|
-
* const result = await renderToolTemplateAsync({
|
|
178
|
-
* ui: { template: WeatherWidget, hydrate: true },
|
|
179
|
-
* toolName: 'get_weather',
|
|
180
|
-
* input: { location: 'San Francisco' },
|
|
181
|
-
* output: { temperature: 72, conditions: 'sunny' },
|
|
182
|
-
* });
|
|
183
|
-
* ```
|
|
184
|
-
*
|
|
185
|
-
* @example MDX content
|
|
186
|
-
* ```typescript
|
|
187
|
-
* const result = await renderToolTemplateAsync({
|
|
188
|
-
* ui: {
|
|
189
|
-
* template: `# Weather in {output.location}\nTemperature: {output.temperature}°F`,
|
|
190
|
-
* },
|
|
191
|
-
* toolName: 'get_weather',
|
|
192
|
-
* input: { location: 'San Francisco' },
|
|
193
|
-
* output: { temperature: 72, location: 'San Francisco' },
|
|
194
|
-
* });
|
|
195
|
-
* ```
|
|
196
|
-
*/
|
|
197
|
-
async function renderToolTemplateAsync(options) {
|
|
198
|
-
const { ui, toolName, input, output, structuredContent, theme, platform } = options;
|
|
199
|
-
// Build template context
|
|
200
|
-
const ctx = buildTemplateContext(input, output, structuredContent);
|
|
201
|
-
// Render template using the appropriate renderer (auto-detected)
|
|
202
|
-
const { html: content, rendererType } = await renderTemplate(ui.template, ctx, {
|
|
203
|
-
hydrate: ui.hydrate,
|
|
204
|
-
mdxComponents: ui.mdxComponents,
|
|
205
|
-
});
|
|
206
|
-
// Apply custom wrapper if provided
|
|
207
|
-
const wrappedContent = ui.wrapper ? ui.wrapper(content, ctx) : content;
|
|
208
|
-
// Build wrapper options
|
|
209
|
-
const wrapperOptions = {
|
|
210
|
-
content: wrappedContent,
|
|
211
|
-
toolName,
|
|
212
|
-
input: input,
|
|
213
|
-
output,
|
|
214
|
-
structuredContent,
|
|
215
|
-
csp: ui.csp,
|
|
216
|
-
widgetAccessible: ui.widgetAccessible,
|
|
217
|
-
title: `${toolName} Result`,
|
|
218
|
-
theme,
|
|
219
|
-
platform,
|
|
220
|
-
// Pass renderer type for framework runtime injection
|
|
221
|
-
rendererType,
|
|
222
|
-
hydrate: ui.hydrate,
|
|
223
|
-
};
|
|
224
|
-
// Wrap in complete HTML document
|
|
225
|
-
const html = (0, wrapper_1.wrapToolUI)(wrapperOptions);
|
|
226
|
-
// Build OpenAI meta if widget features are used
|
|
227
|
-
const openaiMeta = buildOpenAIMetaFromUI(ui);
|
|
228
|
-
return {
|
|
229
|
-
html,
|
|
230
|
-
mimeType: 'text/html',
|
|
231
|
-
rendererType,
|
|
232
|
-
openaiMeta: Object.keys(openaiMeta).length > 0 ? openaiMeta : undefined,
|
|
233
|
-
};
|
|
234
|
-
}
|
|
235
|
-
/**
|
|
236
|
-
* Build OpenAI-specific metadata from UI config
|
|
237
|
-
*/
|
|
238
|
-
function buildOpenAIMetaFromUI(ui) {
|
|
239
|
-
const meta = {};
|
|
240
|
-
if (ui.widgetAccessible) {
|
|
241
|
-
meta['openai/widgetAccessible'] = true;
|
|
242
|
-
}
|
|
243
|
-
if (ui.widgetDescription) {
|
|
244
|
-
meta['openai/widgetDescription'] = ui.widgetDescription;
|
|
245
|
-
}
|
|
246
|
-
if (ui.csp) {
|
|
247
|
-
const cspConfig = {};
|
|
248
|
-
if (ui.csp.connectDomains?.length) {
|
|
249
|
-
cspConfig['connect_domains'] = ui.csp.connectDomains;
|
|
250
|
-
}
|
|
251
|
-
if (ui.csp.resourceDomains?.length) {
|
|
252
|
-
cspConfig['resource_domains'] = ui.csp.resourceDomains;
|
|
253
|
-
}
|
|
254
|
-
if (Object.keys(cspConfig).length > 0) {
|
|
255
|
-
meta['openai/widgetCSP'] = cspConfig;
|
|
256
|
-
}
|
|
257
|
-
}
|
|
258
|
-
if (ui.displayMode && ui.displayMode !== 'inline') {
|
|
259
|
-
meta['openai/displayMode'] = ui.displayMode;
|
|
260
|
-
}
|
|
261
|
-
return meta;
|
|
262
|
-
}
|
|
263
|
-
// ============================================
|
|
264
|
-
// Template Factory
|
|
265
|
-
// ============================================
|
|
266
|
-
/**
|
|
267
|
-
* Create a typed template builder with automatic input/output typing.
|
|
268
|
-
*
|
|
269
|
-
* This is a convenience function that helps TypeScript infer the
|
|
270
|
-
* correct types for template builder functions.
|
|
271
|
-
*
|
|
272
|
-
* @example
|
|
273
|
-
* ```typescript
|
|
274
|
-
* interface WeatherInput {
|
|
275
|
-
* location: string;
|
|
276
|
-
* }
|
|
277
|
-
*
|
|
278
|
-
* interface WeatherOutput {
|
|
279
|
-
* temperature: number;
|
|
280
|
-
* conditions: string;
|
|
281
|
-
* }
|
|
282
|
-
*
|
|
283
|
-
* const weatherTemplate = createTemplate<WeatherInput, WeatherOutput>((ctx) => `
|
|
284
|
-
* <div class="p-4">
|
|
285
|
-
* <h2>Weather in ${ctx.helpers.escapeHtml(ctx.input.location)}</h2>
|
|
286
|
-
* <p>${ctx.output.temperature}°F - ${ctx.output.conditions}</p>
|
|
287
|
-
* </div>
|
|
288
|
-
* `);
|
|
289
|
-
* ```
|
|
290
|
-
*/
|
|
291
|
-
function createTemplate(builder) {
|
|
292
|
-
return builder;
|
|
293
|
-
}
|
|
294
|
-
/**
|
|
295
|
-
* Create a ToolUIConfig with proper typing
|
|
296
|
-
*
|
|
297
|
-
* @example
|
|
298
|
-
* ```typescript
|
|
299
|
-
* const ui = createToolUI<WeatherInput, WeatherOutput>({
|
|
300
|
-
* template: (ctx) => `<div>${ctx.output.temperature}°F</div>`,
|
|
301
|
-
* csp: { connectDomains: ['https://api.weather.com'] },
|
|
302
|
-
* widgetAccessible: true,
|
|
303
|
-
* });
|
|
304
|
-
* ```
|
|
305
|
-
*/
|
|
306
|
-
function createToolUI(config) {
|
|
307
|
-
return config;
|
|
308
|
-
}
|
|
309
|
-
// ============================================
|
|
310
|
-
// Template Component Helpers
|
|
311
|
-
// ============================================
|
|
312
|
-
/**
|
|
313
|
-
* Create a container div with common styling
|
|
314
|
-
*/
|
|
315
|
-
function container(content, className = '') {
|
|
316
|
-
const baseClasses = 'p-4 rounded-lg bg-surface';
|
|
317
|
-
return `<div class="${baseClasses} ${className}">${content}</div>`;
|
|
318
|
-
}
|
|
319
|
-
/**
|
|
320
|
-
* Create a heading element
|
|
321
|
-
*/
|
|
322
|
-
function heading(text, level = 2) {
|
|
323
|
-
const tag = `h${level}`;
|
|
324
|
-
const classes = {
|
|
325
|
-
1: 'text-2xl font-bold text-text-primary mb-4',
|
|
326
|
-
2: 'text-xl font-semibold text-text-primary mb-3',
|
|
327
|
-
3: 'text-lg font-medium text-text-primary mb-2',
|
|
328
|
-
4: 'text-base font-medium text-text-secondary mb-2',
|
|
329
|
-
}[level] || '';
|
|
330
|
-
return `<${tag} class="${classes}">${(0, base_1.escapeHtml)(text)}</${tag}>`;
|
|
331
|
-
}
|
|
332
|
-
/**
|
|
333
|
-
* Create a paragraph element
|
|
334
|
-
*/
|
|
335
|
-
function paragraph(text, className = '') {
|
|
336
|
-
return `<p class="text-text-secondary ${className}">${(0, base_1.escapeHtml)(text)}</p>`;
|
|
337
|
-
}
|
|
338
|
-
/**
|
|
339
|
-
* Create a key-value display
|
|
340
|
-
*/
|
|
341
|
-
function keyValue(key, value, className = '') {
|
|
342
|
-
const displayValue = typeof value === 'boolean' ? (value ? 'Yes' : 'No') : String(value);
|
|
343
|
-
return `<div class="flex justify-between items-center py-2 border-b border-border ${className}">
|
|
344
|
-
<span class="text-text-secondary">${(0, base_1.escapeHtml)(key)}</span>
|
|
345
|
-
<span class="text-text-primary font-medium">${(0, base_1.escapeHtml)(displayValue)}</span>
|
|
346
|
-
</div>`;
|
|
347
|
-
}
|
|
348
|
-
/**
|
|
349
|
-
* Create a simple data list
|
|
350
|
-
*/
|
|
351
|
-
function dataList(items) {
|
|
352
|
-
const listItems = items.map((item) => keyValue(item.key, item.value)).join('');
|
|
353
|
-
return `<div class="space-y-1">${listItems}</div>`;
|
|
354
|
-
}
|
|
355
|
-
/**
|
|
356
|
-
* Create an error display
|
|
357
|
-
*/
|
|
358
|
-
function errorDisplay(message, details) {
|
|
359
|
-
return `<div class="p-4 bg-danger/10 border border-danger rounded-lg">
|
|
360
|
-
<div class="flex items-center gap-2 text-danger">
|
|
361
|
-
<svg class="w-5 h-5" fill="currentColor" viewBox="0 0 20 20">
|
|
362
|
-
<path fill-rule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zM8.707 7.293a1 1 0 00-1.414 1.414L8.586 10l-1.293 1.293a1 1 0 101.414 1.414L10 11.414l1.293 1.293a1 1 0 001.414-1.414L11.414 10l1.293-1.293a1 1 0 00-1.414-1.414L10 8.586 8.707 7.293z" clip-rule="evenodd"/>
|
|
363
|
-
</svg>
|
|
364
|
-
<span class="font-medium">${(0, base_1.escapeHtml)(message)}</span>
|
|
365
|
-
</div>
|
|
366
|
-
${details ? `<p class="mt-2 text-sm text-text-secondary">${(0, base_1.escapeHtml)(details)}</p>` : ''}
|
|
367
|
-
</div>`;
|
|
368
|
-
}
|
|
369
|
-
/**
|
|
370
|
-
* Create a success display
|
|
371
|
-
*/
|
|
372
|
-
function successDisplay(message, details) {
|
|
373
|
-
return `<div class="p-4 bg-success/10 border border-success rounded-lg">
|
|
374
|
-
<div class="flex items-center gap-2 text-success">
|
|
375
|
-
<svg class="w-5 h-5" fill="currentColor" viewBox="0 0 20 20">
|
|
376
|
-
<path fill-rule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z" clip-rule="evenodd"/>
|
|
377
|
-
</svg>
|
|
378
|
-
<span class="font-medium">${(0, base_1.escapeHtml)(message)}</span>
|
|
379
|
-
</div>
|
|
380
|
-
${details ? `<p class="mt-2 text-sm text-text-secondary">${(0, base_1.escapeHtml)(details)}</p>` : ''}
|
|
381
|
-
</div>`;
|
|
382
|
-
}
|
|
383
|
-
/**
|
|
384
|
-
* Create a loading indicator
|
|
385
|
-
*/
|
|
386
|
-
function loadingDisplay(message = 'Loading...') {
|
|
387
|
-
return `<div class="flex items-center justify-center p-8">
|
|
388
|
-
<div class="flex items-center gap-3 text-text-secondary">
|
|
389
|
-
<svg class="animate-spin w-5 h-5" fill="none" viewBox="0 0 24 24">
|
|
390
|
-
<circle class="opacity-25" cx="12" cy="12" r="10" stroke="currentColor" stroke-width="4"></circle>
|
|
391
|
-
<path class="opacity-75" fill="currentColor" d="M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"></path>
|
|
392
|
-
</svg>
|
|
393
|
-
<span>${(0, base_1.escapeHtml)(message)}</span>
|
|
394
|
-
</div>
|
|
395
|
-
</div>`;
|
|
396
|
-
}
|
|
397
|
-
//# sourceMappingURL=builder.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"builder.js","sourceRoot":"","sources":["../../../src/tool-template/builder.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Tool Template Builder\n *\n * Provides utilities for building and rendering tool UI templates\n * with the MCP Bridge runtime.\n *\n * Supports multiple template types with auto-detection:\n * - HTML strings and template builder functions\n * - React components (imported or JSX strings)\n * - MDX content (Markdown + JSX)\n */\n\nimport type {\n TemplateContext,\n TemplateBuilderFn,\n ToolUIConfig,\n UIContentSecurityPolicy,\n ToolUITemplate,\n} from '../runtime/types';\nimport { createTemplateHelpers, wrapToolUI, type WrapToolUIFullOptions } from '../runtime/wrapper';\nimport type { ThemeConfig, PlatformCapabilities, DeepPartial } from '../theme';\nimport { escapeHtml } from '../layouts/base';\nimport { rendererRegistry } from '../renderers/registry';\nimport { detectTemplateType } from '../renderers/utils/detect';\n\n// ============================================\n// Template Builder Types\n// ============================================\n\n/**\n * Options for rendering a tool template\n */\nexport interface RenderTemplateOptions<In = Record<string, unknown>, Out = unknown> {\n /** UI configuration from tool metadata */\n ui: ToolUIConfig<In, Out>;\n\n /** Tool name */\n toolName: string;\n\n /** Tool input arguments */\n input: In;\n\n /** Tool output (raw result from execute) */\n output: Out;\n\n /** Structured content (parsed output for widgets) */\n structuredContent?: unknown;\n\n /** Theme configuration */\n theme?: DeepPartial<ThemeConfig>;\n\n /** Platform capabilities */\n platform?: PlatformCapabilities;\n}\n\n/**\n * Result of rendering a tool template\n */\nexport interface RenderedTemplate {\n /** Complete HTML document string */\n html: string;\n\n /** MIME type for the response */\n mimeType: string;\n\n /** OpenAI-specific metadata (if applicable) */\n openaiMeta?: Record<string, unknown>;\n}\n\n// ============================================\n// Template Rendering\n// ============================================\n\n/**\n * Build template context from render options\n */\nexport function buildTemplateContext<In = Record<string, unknown>, Out = unknown>(\n input: In,\n output: Out,\n structuredContent?: unknown,\n): TemplateContext<In, Out> {\n return {\n input,\n output,\n structuredContent,\n helpers: createTemplateHelpers(),\n };\n}\n\n/**\n * Execute a template builder function or return static template.\n * This is used for simple HTML templates only.\n */\nexport function executeTemplate<In = Record<string, unknown>, Out = unknown>(\n template: TemplateBuilderFn<In, Out> | string,\n ctx: TemplateContext<In, Out>,\n): string {\n if (typeof template === 'string') {\n return template;\n }\n return template(ctx);\n}\n\n/**\n * Render a template using the appropriate renderer (auto-detected).\n *\n * This function detects the template type and routes to the appropriate\n * renderer (HTML, React, or MDX).\n *\n * @param template - The template to render\n * @param ctx - Template context with input/output/helpers\n * @param options - Additional render options\n * @returns Promise resolving to rendered HTML string\n */\nexport async function renderTemplate<In = Record<string, unknown>, Out = unknown>(\n template: ToolUITemplate<In, Out>,\n ctx: TemplateContext<In, Out>,\n options?: {\n hydrate?: boolean;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n mdxComponents?: Record<string, any>;\n },\n): Promise<{ html: string; rendererType: string }> {\n // Detect template type\n const detection = detectTemplateType(template);\n\n // For simple HTML templates, use direct execution (sync, faster)\n if (detection.type === 'html-function' || detection.type === 'html-string') {\n const html = typeof template === 'function' ? (template as TemplateBuilderFn<In, Out>)(ctx) : (template as string);\n\n return { html, rendererType: 'html' };\n }\n\n // For React/MDX, use the renderer registry\n try {\n const result = await rendererRegistry.render(template, ctx, {\n hydrate: options?.hydrate,\n mdxComponents: options?.mdxComponents,\n });\n\n return { html: result.html, rendererType: result.rendererType };\n } catch (error) {\n // Fallback to HTML if renderer fails\n console.warn(\n `[@frontmcp/ui] Renderer failed for ${detection.type}, falling back to HTML:`,\n error instanceof Error ? error.message : error,\n );\n\n // Try to execute as HTML template\n if (typeof template === 'function') {\n try {\n const html = (template as TemplateBuilderFn<In, Out>)(ctx);\n return { html, rendererType: 'html-fallback' };\n } catch {\n // If that fails too, return error message\n return {\n html: `<div class=\"error\">Template rendering failed: ${\n error instanceof Error ? error.message : 'Unknown error'\n }</div>`,\n rendererType: 'error',\n };\n }\n }\n\n return { html: String(template), rendererType: 'html-fallback' };\n }\n}\n\n/**\n * Render a tool UI template to a complete HTML document (sync version).\n *\n * This is the sync entry point for rendering simple HTML tool UIs. It:\n * 1. Builds the template context with input/output/helpers\n * 2. Executes the template builder function\n * 3. Wraps the content in a complete HTML document with MCP Bridge\n * 4. Applies CSP and theme configuration\n *\n * Note: For React/MDX templates, use `renderToolTemplateAsync` instead.\n *\n * @param options - Render options\n * @returns Rendered template with HTML and metadata\n *\n * @example\n * ```typescript\n * const result = renderToolTemplate({\n * ui: toolMetadata.ui,\n * toolName: 'get_weather',\n * input: { location: 'San Francisco' },\n * output: { temperature: 72, conditions: 'sunny' },\n * });\n *\n * // Use result.html for the response body\n * // Use result.mimeType for Content-Type header\n * ```\n */\nexport function renderToolTemplate<In = Record<string, unknown>, Out = unknown>(\n options: RenderTemplateOptions<In, Out>,\n): RenderedTemplate {\n const { ui, toolName, input, output, structuredContent, theme, platform } = options;\n\n // Build template context\n const ctx = buildTemplateContext(input, output, structuredContent);\n\n // Execute template to get content HTML (sync for HTML templates)\n const content = executeTemplate(ui.template as TemplateBuilderFn<In, Out> | string, ctx);\n\n // Build wrapper options\n const wrapperOptions: WrapToolUIFullOptions = {\n content,\n toolName,\n input: input as Record<string, unknown>,\n output,\n structuredContent,\n csp: ui.csp,\n widgetAccessible: ui.widgetAccessible,\n title: `${toolName} Result`,\n theme,\n platform,\n };\n\n // Wrap in complete HTML document\n const html = wrapToolUI(wrapperOptions);\n\n // Build OpenAI meta if widget features are used\n const openaiMeta = buildOpenAIMetaFromUI(ui as ToolUIConfig);\n\n return {\n html,\n mimeType: 'text/html',\n openaiMeta: Object.keys(openaiMeta).length > 0 ? openaiMeta : undefined,\n };\n}\n\n/**\n * Render a tool UI template to a complete HTML document (async version).\n *\n * This is the async entry point that supports all template types:\n * - HTML strings and template builder functions\n * - React components (imported or JSX strings)\n * - MDX content (Markdown + JSX)\n *\n * The template type is auto-detected and the appropriate renderer is used.\n *\n * @param options - Render options\n * @returns Promise resolving to rendered template with HTML and metadata\n *\n * @example React component\n * ```typescript\n * import { WeatherWidget } from './weather-widget.tsx';\n *\n * const result = await renderToolTemplateAsync({\n * ui: { template: WeatherWidget, hydrate: true },\n * toolName: 'get_weather',\n * input: { location: 'San Francisco' },\n * output: { temperature: 72, conditions: 'sunny' },\n * });\n * ```\n *\n * @example MDX content\n * ```typescript\n * const result = await renderToolTemplateAsync({\n * ui: {\n * template: `# Weather in {output.location}\\nTemperature: {output.temperature}°F`,\n * },\n * toolName: 'get_weather',\n * input: { location: 'San Francisco' },\n * output: { temperature: 72, location: 'San Francisco' },\n * });\n * ```\n */\nexport async function renderToolTemplateAsync<In = Record<string, unknown>, Out = unknown>(\n options: RenderTemplateOptions<In, Out>,\n): Promise<RenderedTemplate & { rendererType: string }> {\n const { ui, toolName, input, output, structuredContent, theme, platform } = options;\n\n // Build template context\n const ctx = buildTemplateContext(input, output, structuredContent);\n\n // Render template using the appropriate renderer (auto-detected)\n const { html: content, rendererType } = await renderTemplate(ui.template, ctx, {\n hydrate: ui.hydrate,\n mdxComponents: ui.mdxComponents,\n });\n\n // Apply custom wrapper if provided\n const wrappedContent = ui.wrapper ? ui.wrapper(content, ctx) : content;\n\n // Build wrapper options\n const wrapperOptions: WrapToolUIFullOptions = {\n content: wrappedContent,\n toolName,\n input: input as Record<string, unknown>,\n output,\n structuredContent,\n csp: ui.csp,\n widgetAccessible: ui.widgetAccessible,\n title: `${toolName} Result`,\n theme,\n platform,\n // Pass renderer type for framework runtime injection\n rendererType,\n hydrate: ui.hydrate,\n };\n\n // Wrap in complete HTML document\n const html = wrapToolUI(wrapperOptions);\n\n // Build OpenAI meta if widget features are used\n const openaiMeta = buildOpenAIMetaFromUI(ui as ToolUIConfig);\n\n return {\n html,\n mimeType: 'text/html',\n rendererType,\n openaiMeta: Object.keys(openaiMeta).length > 0 ? openaiMeta : undefined,\n };\n}\n\n/**\n * Build OpenAI-specific metadata from UI config\n */\nfunction buildOpenAIMetaFromUI(ui: ToolUIConfig): Record<string, unknown> {\n const meta: Record<string, unknown> = {};\n\n if (ui.widgetAccessible) {\n meta['openai/widgetAccessible'] = true;\n }\n\n if (ui.widgetDescription) {\n meta['openai/widgetDescription'] = ui.widgetDescription;\n }\n\n if (ui.csp) {\n const cspConfig: Record<string, string[]> = {};\n if (ui.csp.connectDomains?.length) {\n cspConfig['connect_domains'] = ui.csp.connectDomains;\n }\n if (ui.csp.resourceDomains?.length) {\n cspConfig['resource_domains'] = ui.csp.resourceDomains;\n }\n if (Object.keys(cspConfig).length > 0) {\n meta['openai/widgetCSP'] = cspConfig;\n }\n }\n\n if (ui.displayMode && ui.displayMode !== 'inline') {\n meta['openai/displayMode'] = ui.displayMode;\n }\n\n return meta;\n}\n\n// ============================================\n// Template Factory\n// ============================================\n\n/**\n * Create a typed template builder with automatic input/output typing.\n *\n * This is a convenience function that helps TypeScript infer the\n * correct types for template builder functions.\n *\n * @example\n * ```typescript\n * interface WeatherInput {\n * location: string;\n * }\n *\n * interface WeatherOutput {\n * temperature: number;\n * conditions: string;\n * }\n *\n * const weatherTemplate = createTemplate<WeatherInput, WeatherOutput>((ctx) => `\n * <div class=\"p-4\">\n * <h2>Weather in ${ctx.helpers.escapeHtml(ctx.input.location)}</h2>\n * <p>${ctx.output.temperature}°F - ${ctx.output.conditions}</p>\n * </div>\n * `);\n * ```\n */\nexport function createTemplate<In = Record<string, unknown>, Out = unknown>(\n builder: TemplateBuilderFn<In, Out>,\n): TemplateBuilderFn<In, Out> {\n return builder;\n}\n\n/**\n * Create a ToolUIConfig with proper typing\n *\n * @example\n * ```typescript\n * const ui = createToolUI<WeatherInput, WeatherOutput>({\n * template: (ctx) => `<div>${ctx.output.temperature}°F</div>`,\n * csp: { connectDomains: ['https://api.weather.com'] },\n * widgetAccessible: true,\n * });\n * ```\n */\nexport function createToolUI<In = Record<string, unknown>, Out = unknown>(\n config: ToolUIConfig<In, Out>,\n): ToolUIConfig<In, Out> {\n return config;\n}\n\n// ============================================\n// Template Component Helpers\n// ============================================\n\n/**\n * Create a container div with common styling\n */\nexport function container(content: string, className = ''): string {\n const baseClasses = 'p-4 rounded-lg bg-surface';\n return `<div class=\"${baseClasses} ${className}\">${content}</div>`;\n}\n\n/**\n * Create a heading element\n */\nexport function heading(text: string, level: 1 | 2 | 3 | 4 = 2): string {\n const tag = `h${level}`;\n const classes =\n {\n 1: 'text-2xl font-bold text-text-primary mb-4',\n 2: 'text-xl font-semibold text-text-primary mb-3',\n 3: 'text-lg font-medium text-text-primary mb-2',\n 4: 'text-base font-medium text-text-secondary mb-2',\n }[level] || '';\n\n return `<${tag} class=\"${classes}\">${escapeHtml(text)}</${tag}>`;\n}\n\n/**\n * Create a paragraph element\n */\nexport function paragraph(text: string, className = ''): string {\n return `<p class=\"text-text-secondary ${className}\">${escapeHtml(text)}</p>`;\n}\n\n/**\n * Create a key-value display\n */\nexport function keyValue(key: string, value: string | number | boolean, className = ''): string {\n const displayValue = typeof value === 'boolean' ? (value ? 'Yes' : 'No') : String(value);\n\n return `<div class=\"flex justify-between items-center py-2 border-b border-border ${className}\">\n <span class=\"text-text-secondary\">${escapeHtml(key)}</span>\n <span class=\"text-text-primary font-medium\">${escapeHtml(displayValue)}</span>\n </div>`;\n}\n\n/**\n * Create a simple data list\n */\nexport function dataList(items: Array<{ key: string; value: string | number | boolean }>): string {\n const listItems = items.map((item) => keyValue(item.key, item.value)).join('');\n return `<div class=\"space-y-1\">${listItems}</div>`;\n}\n\n/**\n * Create an error display\n */\nexport function errorDisplay(message: string, details?: string): string {\n return `<div class=\"p-4 bg-danger/10 border border-danger rounded-lg\">\n <div class=\"flex items-center gap-2 text-danger\">\n <svg class=\"w-5 h-5\" fill=\"currentColor\" viewBox=\"0 0 20 20\">\n <path fill-rule=\"evenodd\" d=\"M10 18a8 8 0 100-16 8 8 0 000 16zM8.707 7.293a1 1 0 00-1.414 1.414L8.586 10l-1.293 1.293a1 1 0 101.414 1.414L10 11.414l1.293 1.293a1 1 0 001.414-1.414L11.414 10l1.293-1.293a1 1 0 00-1.414-1.414L10 8.586 8.707 7.293z\" clip-rule=\"evenodd\"/>\n </svg>\n <span class=\"font-medium\">${escapeHtml(message)}</span>\n </div>\n ${details ? `<p class=\"mt-2 text-sm text-text-secondary\">${escapeHtml(details)}</p>` : ''}\n </div>`;\n}\n\n/**\n * Create a success display\n */\nexport function successDisplay(message: string, details?: string): string {\n return `<div class=\"p-4 bg-success/10 border border-success rounded-lg\">\n <div class=\"flex items-center gap-2 text-success\">\n <svg class=\"w-5 h-5\" fill=\"currentColor\" viewBox=\"0 0 20 20\">\n <path fill-rule=\"evenodd\" d=\"M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z\" clip-rule=\"evenodd\"/>\n </svg>\n <span class=\"font-medium\">${escapeHtml(message)}</span>\n </div>\n ${details ? `<p class=\"mt-2 text-sm text-text-secondary\">${escapeHtml(details)}</p>` : ''}\n </div>`;\n}\n\n/**\n * Create a loading indicator\n */\nexport function loadingDisplay(message = 'Loading...'): string {\n return `<div class=\"flex items-center justify-center p-8\">\n <div class=\"flex items-center gap-3 text-text-secondary\">\n <svg class=\"animate-spin w-5 h-5\" fill=\"none\" viewBox=\"0 0 24 24\">\n <circle class=\"opacity-25\" cx=\"12\" cy=\"12\" r=\"10\" stroke=\"currentColor\" stroke-width=\"4\"></circle>\n <path class=\"opacity-75\" fill=\"currentColor\" d=\"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z\"></path>\n </svg>\n <span>${escapeHtml(message)}</span>\n </div>\n </div>`;\n}\n"]}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Tool Template Module
|
|
3
|
-
*
|
|
4
|
-
* Provides utilities for building and rendering tool UI templates
|
|
5
|
-
* that work across multiple host environments (OpenAI, Claude, ext-apps).
|
|
6
|
-
*
|
|
7
|
-
* Supports multiple template formats with auto-detection:
|
|
8
|
-
* - HTML strings and template builder functions
|
|
9
|
-
* - React components (imported from .tsx files)
|
|
10
|
-
* - JSX strings (transpiled at runtime with SWC)
|
|
11
|
-
* - MDX content (Markdown + JSX)
|
|
12
|
-
*
|
|
13
|
-
* @module @frontmcp/ui/tool-template
|
|
14
|
-
*/
|
|
15
|
-
export { type RenderTemplateOptions, type RenderedTemplate, buildTemplateContext, executeTemplate, renderToolTemplate, renderTemplate, renderToolTemplateAsync, createTemplate, createToolUI, container, heading, paragraph, keyValue, dataList, errorDisplay, successDisplay, loadingDisplay, } from './builder';
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* Tool Template Module
|
|
4
|
-
*
|
|
5
|
-
* Provides utilities for building and rendering tool UI templates
|
|
6
|
-
* that work across multiple host environments (OpenAI, Claude, ext-apps).
|
|
7
|
-
*
|
|
8
|
-
* Supports multiple template formats with auto-detection:
|
|
9
|
-
* - HTML strings and template builder functions
|
|
10
|
-
* - React components (imported from .tsx files)
|
|
11
|
-
* - JSX strings (transpiled at runtime with SWC)
|
|
12
|
-
* - MDX content (Markdown + JSX)
|
|
13
|
-
*
|
|
14
|
-
* @module @frontmcp/ui/tool-template
|
|
15
|
-
*/
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
exports.loadingDisplay = exports.successDisplay = exports.errorDisplay = exports.dataList = exports.keyValue = exports.paragraph = exports.heading = exports.container = exports.createToolUI = exports.createTemplate = exports.renderToolTemplateAsync = exports.renderTemplate = exports.renderToolTemplate = exports.executeTemplate = exports.buildTemplateContext = void 0;
|
|
18
|
-
var builder_1 = require("./builder");
|
|
19
|
-
// Core rendering (sync - for HTML templates)
|
|
20
|
-
Object.defineProperty(exports, "buildTemplateContext", { enumerable: true, get: function () { return builder_1.buildTemplateContext; } });
|
|
21
|
-
Object.defineProperty(exports, "executeTemplate", { enumerable: true, get: function () { return builder_1.executeTemplate; } });
|
|
22
|
-
Object.defineProperty(exports, "renderToolTemplate", { enumerable: true, get: function () { return builder_1.renderToolTemplate; } });
|
|
23
|
-
// Core rendering (async - for React/MDX templates)
|
|
24
|
-
Object.defineProperty(exports, "renderTemplate", { enumerable: true, get: function () { return builder_1.renderTemplate; } });
|
|
25
|
-
Object.defineProperty(exports, "renderToolTemplateAsync", { enumerable: true, get: function () { return builder_1.renderToolTemplateAsync; } });
|
|
26
|
-
// Factories
|
|
27
|
-
Object.defineProperty(exports, "createTemplate", { enumerable: true, get: function () { return builder_1.createTemplate; } });
|
|
28
|
-
Object.defineProperty(exports, "createToolUI", { enumerable: true, get: function () { return builder_1.createToolUI; } });
|
|
29
|
-
// Component helpers
|
|
30
|
-
Object.defineProperty(exports, "container", { enumerable: true, get: function () { return builder_1.container; } });
|
|
31
|
-
Object.defineProperty(exports, "heading", { enumerable: true, get: function () { return builder_1.heading; } });
|
|
32
|
-
Object.defineProperty(exports, "paragraph", { enumerable: true, get: function () { return builder_1.paragraph; } });
|
|
33
|
-
Object.defineProperty(exports, "keyValue", { enumerable: true, get: function () { return builder_1.keyValue; } });
|
|
34
|
-
Object.defineProperty(exports, "dataList", { enumerable: true, get: function () { return builder_1.dataList; } });
|
|
35
|
-
Object.defineProperty(exports, "errorDisplay", { enumerable: true, get: function () { return builder_1.errorDisplay; } });
|
|
36
|
-
Object.defineProperty(exports, "successDisplay", { enumerable: true, get: function () { return builder_1.successDisplay; } });
|
|
37
|
-
Object.defineProperty(exports, "loadingDisplay", { enumerable: true, get: function () { return builder_1.loadingDisplay; } });
|
|
38
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tool-template/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;GAaG;;;AAEH,qCAuBmB;AAnBjB,6CAA6C;AAC7C,+GAAA,oBAAoB,OAAA;AACpB,0GAAA,eAAe,OAAA;AACf,6GAAA,kBAAkB,OAAA;AAClB,mDAAmD;AACnD,yGAAA,cAAc,OAAA;AACd,kHAAA,uBAAuB,OAAA;AACvB,YAAY;AACZ,yGAAA,cAAc,OAAA;AACd,uGAAA,YAAY,OAAA;AACZ,oBAAoB;AACpB,oGAAA,SAAS,OAAA;AACT,kGAAA,OAAO,OAAA;AACP,oGAAA,SAAS,OAAA;AACT,mGAAA,QAAQ,OAAA;AACR,mGAAA,QAAQ,OAAA;AACR,uGAAA,YAAY,OAAA;AACZ,yGAAA,cAAc,OAAA;AACd,yGAAA,cAAc,OAAA","sourcesContent":["/**\n * Tool Template Module\n *\n * Provides utilities for building and rendering tool UI templates\n * that work across multiple host environments (OpenAI, Claude, ext-apps).\n *\n * Supports multiple template formats with auto-detection:\n * - HTML strings and template builder functions\n * - React components (imported from .tsx files)\n * - JSX strings (transpiled at runtime with SWC)\n * - MDX content (Markdown + JSX)\n *\n * @module @frontmcp/ui/tool-template\n */\n\nexport {\n // Types\n type RenderTemplateOptions,\n type RenderedTemplate,\n // Core rendering (sync - for HTML templates)\n buildTemplateContext,\n executeTemplate,\n renderToolTemplate,\n // Core rendering (async - for React/MDX templates)\n renderTemplate,\n renderToolTemplateAsync,\n // Factories\n createTemplate,\n createToolUI,\n // Component helpers\n container,\n heading,\n paragraph,\n keyValue,\n dataList,\n errorDisplay,\n successDisplay,\n loadingDisplay,\n} from './builder';\n"]}
|
package/src/types/index.d.ts
DELETED
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @frontmcp/ui Types
|
|
3
|
-
*
|
|
4
|
-
* Standalone types for UI configuration that don't depend on @frontmcp/sdk.
|
|
5
|
-
* These types enable external systems (like AgentLink) to use @frontmcp/ui
|
|
6
|
-
* without requiring the full SDK as a dependency.
|
|
7
|
-
*
|
|
8
|
-
* @packageDocumentation
|
|
9
|
-
*/
|
|
10
|
-
export { type UIContentSecurityPolicy, type TemplateHelpers, type TemplateContext, type TemplateBuilderFn, type WidgetServingMode, type WidgetDisplayMode, type UITemplateConfig, type UITemplate, } from './ui-config';
|
|
11
|
-
export { type UIType, type BundlingMode, type ResourceMode, type OutputMode, type DisplayMode, type CSPDirectives, type CDNResource, type RendererAssets, type WidgetManifest, type UIMetaFields, type OpenAIMetaFields, type ToolResponseMeta, type WidgetConfig, type WidgetTemplate, type WidgetTemplateContext, type WidgetTemplateHelpers, type WidgetRuntimeOptions, type BuildManifestResult, type BuildManifestOptions, isUIType, isBundlingMode, isResourceMode, isOutputMode, isDisplayMode, DEFAULT_CSP_BY_TYPE, DEFAULT_RENDERER_ASSETS,
|
|
12
|
-
/** @deprecated Use UIMetaFields instead */
|
|
13
|
-
type RuntimePayload, } from './ui-runtime';
|
package/src/types/index.js
DELETED
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* @frontmcp/ui Types
|
|
4
|
-
*
|
|
5
|
-
* Standalone types for UI configuration that don't depend on @frontmcp/sdk.
|
|
6
|
-
* These types enable external systems (like AgentLink) to use @frontmcp/ui
|
|
7
|
-
* without requiring the full SDK as a dependency.
|
|
8
|
-
*
|
|
9
|
-
* @packageDocumentation
|
|
10
|
-
*/
|
|
11
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.DEFAULT_RENDERER_ASSETS = exports.DEFAULT_CSP_BY_TYPE = exports.isDisplayMode = exports.isOutputMode = exports.isResourceMode = exports.isBundlingMode = exports.isUIType = void 0;
|
|
13
|
-
// ============================================
|
|
14
|
-
// Widget Runtime Types (New)
|
|
15
|
-
// ============================================
|
|
16
|
-
var ui_runtime_1 = require("./ui-runtime");
|
|
17
|
-
// Type Guards
|
|
18
|
-
Object.defineProperty(exports, "isUIType", { enumerable: true, get: function () { return ui_runtime_1.isUIType; } });
|
|
19
|
-
Object.defineProperty(exports, "isBundlingMode", { enumerable: true, get: function () { return ui_runtime_1.isBundlingMode; } });
|
|
20
|
-
Object.defineProperty(exports, "isResourceMode", { enumerable: true, get: function () { return ui_runtime_1.isResourceMode; } });
|
|
21
|
-
Object.defineProperty(exports, "isOutputMode", { enumerable: true, get: function () { return ui_runtime_1.isOutputMode; } });
|
|
22
|
-
Object.defineProperty(exports, "isDisplayMode", { enumerable: true, get: function () { return ui_runtime_1.isDisplayMode; } });
|
|
23
|
-
// Default Values
|
|
24
|
-
Object.defineProperty(exports, "DEFAULT_CSP_BY_TYPE", { enumerable: true, get: function () { return ui_runtime_1.DEFAULT_CSP_BY_TYPE; } });
|
|
25
|
-
Object.defineProperty(exports, "DEFAULT_RENDERER_ASSETS", { enumerable: true, get: function () { return ui_runtime_1.DEFAULT_RENDERER_ASSETS; } });
|
|
26
|
-
//# sourceMappingURL=index.js.map
|
package/src/types/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;AAqBH,+CAA+C;AAC/C,6BAA6B;AAC7B,+CAA+C;AAE/C,2CAsCsB;AAZpB,cAAc;AACd,sGAAA,QAAQ,OAAA;AACR,4GAAA,cAAc,OAAA;AACd,4GAAA,cAAc,OAAA;AACd,0GAAA,YAAY,OAAA;AACZ,2GAAA,aAAa,OAAA;AACb,iBAAiB;AACjB,iHAAA,mBAAmB,OAAA;AACnB,qHAAA,uBAAuB,OAAA","sourcesContent":["/**\n * @frontmcp/ui Types\n *\n * Standalone types for UI configuration that don't depend on @frontmcp/sdk.\n * These types enable external systems (like AgentLink) to use @frontmcp/ui\n * without requiring the full SDK as a dependency.\n *\n * @packageDocumentation\n */\n\n// ============================================\n// UI Config Types (Legacy/Base)\n// ============================================\n\nexport {\n // Content Security Policy\n type UIContentSecurityPolicy,\n // Template Context & Helpers\n type TemplateHelpers,\n type TemplateContext,\n type TemplateBuilderFn,\n // Widget Serving & Display\n type WidgetServingMode,\n type WidgetDisplayMode,\n // UI Template Configuration\n type UITemplateConfig,\n type UITemplate,\n} from './ui-config';\n\n// ============================================\n// Widget Runtime Types (New)\n// ============================================\n\nexport {\n // Core Types\n type UIType,\n type BundlingMode,\n type ResourceMode,\n type OutputMode,\n type DisplayMode,\n // CSP & Assets\n type CSPDirectives,\n type CDNResource,\n type RendererAssets,\n // Widget Manifest\n type WidgetManifest,\n // _meta Field Types (NEW)\n type UIMetaFields,\n type OpenAIMetaFields,\n type ToolResponseMeta,\n // Widget Configuration\n type WidgetConfig,\n type WidgetTemplate,\n type WidgetTemplateContext,\n type WidgetTemplateHelpers,\n type WidgetRuntimeOptions,\n // Build Types\n type BuildManifestResult,\n type BuildManifestOptions,\n // Type Guards\n isUIType,\n isBundlingMode,\n isResourceMode,\n isOutputMode,\n isDisplayMode,\n // Default Values\n DEFAULT_CSP_BY_TYPE,\n DEFAULT_RENDERER_ASSETS,\n // Deprecated\n /** @deprecated Use UIMetaFields instead */\n type RuntimePayload,\n} from './ui-runtime';\n"]}
|