@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
package/src/index.js
DELETED
|
@@ -1,192 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* @frontmcp/ui
|
|
4
|
-
*
|
|
5
|
-
* Comprehensive UI library for FrontMCP applications.
|
|
6
|
-
* Provides theme system, layouts, components, page templates, and widgets
|
|
7
|
-
* for building authentication and authorization UIs across multiple LLM platforms.
|
|
8
|
-
*
|
|
9
|
-
* Key features:
|
|
10
|
-
* - Multi-framework renderer support (HTML, React, MDX)
|
|
11
|
-
* - Platform-aware theming (OpenAI, Claude, etc.)
|
|
12
|
-
* - Runtime JSX/TSX transpilation with SWC
|
|
13
|
-
* - MCP Bridge integration for cross-platform widgets
|
|
14
|
-
* - Standalone types and adapters for external consumers (AgentLink)
|
|
15
|
-
* - Build-time API for pre-compiling UI templates
|
|
16
|
-
*
|
|
17
|
-
* ## Standalone Usage (without @frontmcp/sdk)
|
|
18
|
-
*
|
|
19
|
-
* For external systems like AgentLink that want to use the UI components
|
|
20
|
-
* without the full SDK:
|
|
21
|
-
*
|
|
22
|
-
* ```typescript
|
|
23
|
-
* // Import standalone types
|
|
24
|
-
* import type { UITemplateConfig, TemplateContext } from '@frontmcp/ui/types';
|
|
25
|
-
*
|
|
26
|
-
* // Import platform adapters
|
|
27
|
-
* import { buildUIMeta } from '@frontmcp/ui/adapters';
|
|
28
|
-
*
|
|
29
|
-
* // Import build-time API
|
|
30
|
-
* import { buildToolUI } from '@frontmcp/ui/build';
|
|
31
|
-
*
|
|
32
|
-
* // Import components directly
|
|
33
|
-
* import { card, button, table } from '@frontmcp/ui/components';
|
|
34
|
-
* ```
|
|
35
|
-
*/
|
|
36
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
37
|
-
exports.FmcpBadge = exports.FmcpAlert = exports.FmcpCard = exports.FmcpButton = exports.registerFmcpSelect = exports.registerFmcpInput = exports.registerFmcpBadge = exports.registerFmcpAlert = exports.registerFmcpCard = exports.registerFmcpButton = exports.registerAllComponents = exports.BRIDGE_SCRIPT_TAGS = exports.UNIVERSAL_BRIDGE_SCRIPT = exports.generatePlatformBundle = exports.generateBridgeIIFE = exports.registerAdapter = exports.defaultRegistry = exports.AdapterRegistry = exports.createBridge = exports.FrontMcpBridge = exports.redactPIIFromText = exports.detectPIIType = exports.isIPv4 = exports.isSSN = exports.isCreditCard = exports.isPhone = exports.isEmail = exports.detectPII = exports.createSanitizer = exports.sanitizeInput = exports.PII_PATTERNS = exports.REDACTION_TOKENS = exports.getToolUIMimeType = exports.createTemplateHelpers = exports.wrapToolUIMinimal = exports.wrapToolUI = exports.sanitizeCSPDomains = exports.validateCSPDomain = exports.buildCSPMetaTag = exports.buildCSPDirectives = exports.DEFAULT_CSP_DIRECTIVES = exports.isMCPBridgeSupported = exports.getMCPBridgeScript = exports.MCP_BRIDGE_RUNTIME = exports.buildStaticWidget = exports.buildToolUIMulti = exports.buildToolUI = exports.buildOpenAICSP = exports.buildToolDiscoveryMeta = exports.buildUIMeta = void 0;
|
|
38
|
-
exports.getUIResourceMimeType = exports.buildStaticWidgetUri = exports.parseWidgetUri = exports.isStaticWidgetUri = exports.isUIResourceUri = exports.UI_RESOURCE_SCHEME = exports.containsMdxSyntax = exports.hasUIConfig = exports.isReactComponent = exports.renderToolTemplateAsync = exports.renderToolTemplate = exports.ToolUIRegistry = exports.FmcpElement = exports.FmcpSelect = exports.FmcpInput = void 0;
|
|
39
|
-
const tslib_1 = require("tslib");
|
|
40
|
-
// ============================================
|
|
41
|
-
// Standalone Types (SDK-independent)
|
|
42
|
-
// These are the canonical source for UI configuration types
|
|
43
|
-
// ============================================
|
|
44
|
-
tslib_1.__exportStar(require("./types"), exports);
|
|
45
|
-
// ============================================
|
|
46
|
-
// Platform Adapters (SDK-independent)
|
|
47
|
-
// ============================================
|
|
48
|
-
var adapters_1 = require("./adapters");
|
|
49
|
-
Object.defineProperty(exports, "buildUIMeta", { enumerable: true, get: function () { return adapters_1.buildUIMeta; } });
|
|
50
|
-
Object.defineProperty(exports, "buildToolDiscoveryMeta", { enumerable: true, get: function () { return adapters_1.buildToolDiscoveryMeta; } });
|
|
51
|
-
// Note: buildOpenAICSP is exported from both adapters and runtime/csp
|
|
52
|
-
// We export from adapters as the canonical source
|
|
53
|
-
Object.defineProperty(exports, "buildOpenAICSP", { enumerable: true, get: function () { return adapters_1.buildOpenAICSP; } });
|
|
54
|
-
// ============================================
|
|
55
|
-
// Build-Time API (SDK-independent)
|
|
56
|
-
// ============================================
|
|
57
|
-
var build_1 = require("./build");
|
|
58
|
-
Object.defineProperty(exports, "buildToolUI", { enumerable: true, get: function () { return build_1.buildToolUI; } });
|
|
59
|
-
Object.defineProperty(exports, "buildToolUIMulti", { enumerable: true, get: function () { return build_1.buildToolUIMulti; } });
|
|
60
|
-
Object.defineProperty(exports, "buildStaticWidget", { enumerable: true, get: function () { return build_1.buildStaticWidget; } });
|
|
61
|
-
// ============================================
|
|
62
|
-
// Core Modules
|
|
63
|
-
// ============================================
|
|
64
|
-
// Validation system
|
|
65
|
-
tslib_1.__exportStar(require("./validation"), exports);
|
|
66
|
-
// Theme system
|
|
67
|
-
tslib_1.__exportStar(require("./theme"), exports);
|
|
68
|
-
// Layout system
|
|
69
|
-
tslib_1.__exportStar(require("./layouts"), exports);
|
|
70
|
-
// UI Components
|
|
71
|
-
tslib_1.__exportStar(require("./components"), exports);
|
|
72
|
-
// Page templates
|
|
73
|
-
tslib_1.__exportStar(require("./pages"), exports);
|
|
74
|
-
// Widgets (OpenAI App SDK, progress, etc.)
|
|
75
|
-
tslib_1.__exportStar(require("./widgets"), exports);
|
|
76
|
-
// MCP Bridge Runtime (Tool UI templates)
|
|
77
|
-
// Note: Excluding types that are now in ./types to avoid duplicates
|
|
78
|
-
var runtime_1 = require("./runtime");
|
|
79
|
-
// MCP Bridge Runtime
|
|
80
|
-
Object.defineProperty(exports, "MCP_BRIDGE_RUNTIME", { enumerable: true, get: function () { return runtime_1.MCP_BRIDGE_RUNTIME; } });
|
|
81
|
-
Object.defineProperty(exports, "getMCPBridgeScript", { enumerable: true, get: function () { return runtime_1.getMCPBridgeScript; } });
|
|
82
|
-
Object.defineProperty(exports, "isMCPBridgeSupported", { enumerable: true, get: function () { return runtime_1.isMCPBridgeSupported; } });
|
|
83
|
-
// CSP utilities (excluding buildOpenAICSP which is in adapters)
|
|
84
|
-
Object.defineProperty(exports, "DEFAULT_CSP_DIRECTIVES", { enumerable: true, get: function () { return runtime_1.DEFAULT_CSP_DIRECTIVES; } });
|
|
85
|
-
Object.defineProperty(exports, "buildCSPDirectives", { enumerable: true, get: function () { return runtime_1.buildCSPDirectives; } });
|
|
86
|
-
Object.defineProperty(exports, "buildCSPMetaTag", { enumerable: true, get: function () { return runtime_1.buildCSPMetaTag; } });
|
|
87
|
-
Object.defineProperty(exports, "validateCSPDomain", { enumerable: true, get: function () { return runtime_1.validateCSPDomain; } });
|
|
88
|
-
Object.defineProperty(exports, "sanitizeCSPDomains", { enumerable: true, get: function () { return runtime_1.sanitizeCSPDomains; } });
|
|
89
|
-
Object.defineProperty(exports, "wrapToolUI", { enumerable: true, get: function () { return runtime_1.wrapToolUI; } });
|
|
90
|
-
Object.defineProperty(exports, "wrapToolUIMinimal", { enumerable: true, get: function () { return runtime_1.wrapToolUIMinimal; } });
|
|
91
|
-
Object.defineProperty(exports, "createTemplateHelpers", { enumerable: true, get: function () { return runtime_1.createTemplateHelpers; } });
|
|
92
|
-
Object.defineProperty(exports, "getToolUIMimeType", { enumerable: true, get: function () { return runtime_1.getToolUIMimeType; } });
|
|
93
|
-
Object.defineProperty(exports, "REDACTION_TOKENS", { enumerable: true, get: function () { return runtime_1.REDACTION_TOKENS; } });
|
|
94
|
-
Object.defineProperty(exports, "PII_PATTERNS", { enumerable: true, get: function () { return runtime_1.PII_PATTERNS; } });
|
|
95
|
-
Object.defineProperty(exports, "sanitizeInput", { enumerable: true, get: function () { return runtime_1.sanitizeInput; } });
|
|
96
|
-
Object.defineProperty(exports, "createSanitizer", { enumerable: true, get: function () { return runtime_1.createSanitizer; } });
|
|
97
|
-
Object.defineProperty(exports, "detectPII", { enumerable: true, get: function () { return runtime_1.detectPII; } });
|
|
98
|
-
Object.defineProperty(exports, "isEmail", { enumerable: true, get: function () { return runtime_1.isEmail; } });
|
|
99
|
-
Object.defineProperty(exports, "isPhone", { enumerable: true, get: function () { return runtime_1.isPhone; } });
|
|
100
|
-
Object.defineProperty(exports, "isCreditCard", { enumerable: true, get: function () { return runtime_1.isCreditCard; } });
|
|
101
|
-
Object.defineProperty(exports, "isSSN", { enumerable: true, get: function () { return runtime_1.isSSN; } });
|
|
102
|
-
Object.defineProperty(exports, "isIPv4", { enumerable: true, get: function () { return runtime_1.isIPv4; } });
|
|
103
|
-
Object.defineProperty(exports, "detectPIIType", { enumerable: true, get: function () { return runtime_1.detectPIIType; } });
|
|
104
|
-
Object.defineProperty(exports, "redactPIIFromText", { enumerable: true, get: function () { return runtime_1.redactPIIFromText; } });
|
|
105
|
-
// Tool Template Builder
|
|
106
|
-
tslib_1.__exportStar(require("./tool-template"), exports);
|
|
107
|
-
// Base Template (for Tool UI widgets)
|
|
108
|
-
tslib_1.__exportStar(require("./base-template"), exports);
|
|
109
|
-
// Multi-Framework Renderer System
|
|
110
|
-
tslib_1.__exportStar(require("./renderers"), exports);
|
|
111
|
-
// ============================================
|
|
112
|
-
// FrontMcpBridge - Multi-Platform Adapter System
|
|
113
|
-
// ============================================
|
|
114
|
-
// The bridge module provides a unified API for MCP widgets across platforms:
|
|
115
|
-
// - OpenAI ChatGPT Apps SDK
|
|
116
|
-
// - ext-apps (SEP-1865 protocol)
|
|
117
|
-
// - Claude (Anthropic)
|
|
118
|
-
// - Gemini (Google)
|
|
119
|
-
// - Generic fallback
|
|
120
|
-
//
|
|
121
|
-
// For full access to the bridge system, import from '@frontmcp/ui/bridge':
|
|
122
|
-
// import { FrontMcpBridge, createBridge } from '@frontmcp/ui/bridge';
|
|
123
|
-
//
|
|
124
|
-
// Core bridge exports are also available here:
|
|
125
|
-
var bridge_1 = require("./bridge");
|
|
126
|
-
// Bridge class
|
|
127
|
-
Object.defineProperty(exports, "FrontMcpBridge", { enumerable: true, get: function () { return bridge_1.FrontMcpBridge; } });
|
|
128
|
-
Object.defineProperty(exports, "createBridge", { enumerable: true, get: function () { return bridge_1.createBridge; } });
|
|
129
|
-
// Registry
|
|
130
|
-
Object.defineProperty(exports, "AdapterRegistry", { enumerable: true, get: function () { return bridge_1.AdapterRegistry; } });
|
|
131
|
-
Object.defineProperty(exports, "defaultRegistry", { enumerable: true, get: function () { return bridge_1.defaultRegistry; } });
|
|
132
|
-
Object.defineProperty(exports, "registerAdapter", { enumerable: true, get: function () { return bridge_1.registerAdapter; } });
|
|
133
|
-
// Runtime script generation
|
|
134
|
-
Object.defineProperty(exports, "generateBridgeIIFE", { enumerable: true, get: function () { return bridge_1.generateBridgeIIFE; } });
|
|
135
|
-
Object.defineProperty(exports, "generatePlatformBundle", { enumerable: true, get: function () { return bridge_1.generatePlatformBundle; } });
|
|
136
|
-
Object.defineProperty(exports, "UNIVERSAL_BRIDGE_SCRIPT", { enumerable: true, get: function () { return bridge_1.UNIVERSAL_BRIDGE_SCRIPT; } });
|
|
137
|
-
Object.defineProperty(exports, "BRIDGE_SCRIPT_TAGS", { enumerable: true, get: function () { return bridge_1.BRIDGE_SCRIPT_TAGS; } });
|
|
138
|
-
// ============================================
|
|
139
|
-
// Web Components - Custom Elements for React/Vue/HTML
|
|
140
|
-
// ============================================
|
|
141
|
-
// Web Components wrap the HTML functions as native custom elements
|
|
142
|
-
// that work directly in React, Vue, Angular, or plain HTML.
|
|
143
|
-
//
|
|
144
|
-
// For full access to all web components, import from '@frontmcp/ui/web-components':
|
|
145
|
-
// import { registerAllComponents } from '@frontmcp/ui/web-components';
|
|
146
|
-
//
|
|
147
|
-
// Core web component exports:
|
|
148
|
-
var web_components_1 = require("./web-components");
|
|
149
|
-
// Registration
|
|
150
|
-
Object.defineProperty(exports, "registerAllComponents", { enumerable: true, get: function () { return web_components_1.registerAllComponents; } });
|
|
151
|
-
Object.defineProperty(exports, "registerFmcpButton", { enumerable: true, get: function () { return web_components_1.registerFmcpButton; } });
|
|
152
|
-
Object.defineProperty(exports, "registerFmcpCard", { enumerable: true, get: function () { return web_components_1.registerFmcpCard; } });
|
|
153
|
-
Object.defineProperty(exports, "registerFmcpAlert", { enumerable: true, get: function () { return web_components_1.registerFmcpAlert; } });
|
|
154
|
-
Object.defineProperty(exports, "registerFmcpBadge", { enumerable: true, get: function () { return web_components_1.registerFmcpBadge; } });
|
|
155
|
-
Object.defineProperty(exports, "registerFmcpInput", { enumerable: true, get: function () { return web_components_1.registerFmcpInput; } });
|
|
156
|
-
Object.defineProperty(exports, "registerFmcpSelect", { enumerable: true, get: function () { return web_components_1.registerFmcpSelect; } });
|
|
157
|
-
// Element classes
|
|
158
|
-
Object.defineProperty(exports, "FmcpButton", { enumerable: true, get: function () { return web_components_1.FmcpButton; } });
|
|
159
|
-
Object.defineProperty(exports, "FmcpCard", { enumerable: true, get: function () { return web_components_1.FmcpCard; } });
|
|
160
|
-
Object.defineProperty(exports, "FmcpAlert", { enumerable: true, get: function () { return web_components_1.FmcpAlert; } });
|
|
161
|
-
Object.defineProperty(exports, "FmcpBadge", { enumerable: true, get: function () { return web_components_1.FmcpBadge; } });
|
|
162
|
-
Object.defineProperty(exports, "FmcpInput", { enumerable: true, get: function () { return web_components_1.FmcpInput; } });
|
|
163
|
-
Object.defineProperty(exports, "FmcpSelect", { enumerable: true, get: function () { return web_components_1.FmcpSelect; } });
|
|
164
|
-
// Base class for custom elements
|
|
165
|
-
Object.defineProperty(exports, "FmcpElement", { enumerable: true, get: function () { return web_components_1.FmcpElement; } });
|
|
166
|
-
// ============================================
|
|
167
|
-
// Registry Module - Standalone Tool UI Building
|
|
168
|
-
// ============================================
|
|
169
|
-
// The registry module provides the ToolUIRegistry class for standalone widget
|
|
170
|
-
// compilation and rendering without requiring @frontmcp/sdk.
|
|
171
|
-
//
|
|
172
|
-
// For full access to the registry system, import from '@frontmcp/ui/registry':
|
|
173
|
-
// import { ToolUIRegistry, renderToolTemplateAsync } from '@frontmcp/ui/registry';
|
|
174
|
-
//
|
|
175
|
-
// Core registry exports:
|
|
176
|
-
var registry_1 = require("./registry");
|
|
177
|
-
// Core registry
|
|
178
|
-
Object.defineProperty(exports, "ToolUIRegistry", { enumerable: true, get: function () { return registry_1.ToolUIRegistry; } });
|
|
179
|
-
// Template rendering
|
|
180
|
-
Object.defineProperty(exports, "renderToolTemplate", { enumerable: true, get: function () { return registry_1.renderToolTemplate; } });
|
|
181
|
-
Object.defineProperty(exports, "renderToolTemplateAsync", { enumerable: true, get: function () { return registry_1.renderToolTemplateAsync; } });
|
|
182
|
-
Object.defineProperty(exports, "isReactComponent", { enumerable: true, get: function () { return registry_1.isReactComponent; } });
|
|
183
|
-
Object.defineProperty(exports, "hasUIConfig", { enumerable: true, get: function () { return registry_1.hasUIConfig; } });
|
|
184
|
-
Object.defineProperty(exports, "containsMdxSyntax", { enumerable: true, get: function () { return registry_1.containsMdxSyntax; } });
|
|
185
|
-
// URI utilities
|
|
186
|
-
Object.defineProperty(exports, "UI_RESOURCE_SCHEME", { enumerable: true, get: function () { return registry_1.UI_RESOURCE_SCHEME; } });
|
|
187
|
-
Object.defineProperty(exports, "isUIResourceUri", { enumerable: true, get: function () { return registry_1.isUIResourceUri; } });
|
|
188
|
-
Object.defineProperty(exports, "isStaticWidgetUri", { enumerable: true, get: function () { return registry_1.isStaticWidgetUri; } });
|
|
189
|
-
Object.defineProperty(exports, "parseWidgetUri", { enumerable: true, get: function () { return registry_1.parseWidgetUri; } });
|
|
190
|
-
Object.defineProperty(exports, "buildStaticWidgetUri", { enumerable: true, get: function () { return registry_1.buildStaticWidgetUri; } });
|
|
191
|
-
Object.defineProperty(exports, "getUIResourceMimeType", { enumerable: true, get: function () { return registry_1.getUIResourceMimeType; } });
|
|
192
|
-
//# sourceMappingURL=index.js.map
|
package/src/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * @frontmcp/ui\n *\n * Comprehensive UI library for FrontMCP applications.\n * Provides theme system, layouts, components, page templates, and widgets\n * for building authentication and authorization UIs across multiple LLM platforms.\n *\n * Key features:\n * - Multi-framework renderer support (HTML, React, MDX)\n * - Platform-aware theming (OpenAI, Claude, etc.)\n * - Runtime JSX/TSX transpilation with SWC\n * - MCP Bridge integration for cross-platform widgets\n * - Standalone types and adapters for external consumers (AgentLink)\n * - Build-time API for pre-compiling UI templates\n *\n * ## Standalone Usage (without @frontmcp/sdk)\n *\n * For external systems like AgentLink that want to use the UI components\n * without the full SDK:\n *\n * ```typescript\n * // Import standalone types\n * import type { UITemplateConfig, TemplateContext } from '@frontmcp/ui/types';\n *\n * // Import platform adapters\n * import { buildUIMeta } from '@frontmcp/ui/adapters';\n *\n * // Import build-time API\n * import { buildToolUI } from '@frontmcp/ui/build';\n *\n * // Import components directly\n * import { card, button, table } from '@frontmcp/ui/components';\n * ```\n */\n\n// ============================================\n// Standalone Types (SDK-independent)\n// These are the canonical source for UI configuration types\n// ============================================\nexport * from './types';\n\n// ============================================\n// Platform Adapters (SDK-independent)\n// ============================================\nexport {\n type AIPlatformType,\n type UIMetadata,\n type BuildUIMetaOptions,\n type BuildToolDiscoveryMetaOptions,\n buildUIMeta,\n buildToolDiscoveryMeta,\n // Note: buildOpenAICSP is exported from both adapters and runtime/csp\n // We export from adapters as the canonical source\n buildOpenAICSP,\n} from './adapters';\n\n// ============================================\n// Build-Time API (SDK-independent)\n// ============================================\nexport {\n type BuildTargetPlatform,\n type BuildOptions,\n type BuildResult,\n type MultiBuildOptions,\n type MultiBuildResult,\n type StaticWidgetOptions,\n buildToolUI,\n buildToolUIMulti,\n buildStaticWidget,\n} from './build';\n\n// ============================================\n// Core Modules\n// ============================================\n\n// Validation system\nexport * from './validation';\n\n// Theme system\nexport * from './theme';\n\n// Layout system\nexport * from './layouts';\n\n// UI Components\nexport * from './components';\n\n// Page templates\nexport * from './pages';\n\n// Widgets (OpenAI App SDK, progress, etc.)\nexport * from './widgets';\n\n// MCP Bridge Runtime (Tool UI templates)\n// Note: Excluding types that are now in ./types to avoid duplicates\nexport {\n // Runtime types that are NOT in ./types\n type ProviderType,\n type DisplayMode,\n type ThemeMode,\n type HostContext,\n type MCPBridge,\n type MCPBridgeExtended,\n type WrapToolUIOptions,\n type OpenAIRuntime,\n type OpenAIUserAgent,\n type SafeAreaInsets,\n // MCP Bridge Runtime\n MCP_BRIDGE_RUNTIME,\n getMCPBridgeScript,\n isMCPBridgeSupported,\n // CSP utilities (excluding buildOpenAICSP which is in adapters)\n DEFAULT_CSP_DIRECTIVES,\n buildCSPDirectives,\n buildCSPMetaTag,\n validateCSPDomain,\n sanitizeCSPDomains,\n // Wrapper utilities (excluding buildOpenAIMeta which is in adapters)\n type WrapToolUIFullOptions,\n wrapToolUI,\n wrapToolUIMinimal,\n createTemplateHelpers,\n getToolUIMimeType,\n // Sanitizer\n type SanitizerFn,\n type SanitizeOptions,\n REDACTION_TOKENS,\n PII_PATTERNS,\n sanitizeInput,\n createSanitizer,\n detectPII,\n isEmail,\n isPhone,\n isCreditCard,\n isSSN,\n isIPv4,\n detectPIIType,\n redactPIIFromText,\n} from './runtime';\n\n// Tool Template Builder\nexport * from './tool-template';\n\n// Base Template (for Tool UI widgets)\nexport * from './base-template';\n\n// Multi-Framework Renderer System\nexport * from './renderers';\n\n// ============================================\n// FrontMcpBridge - Multi-Platform Adapter System\n// ============================================\n// The bridge module provides a unified API for MCP widgets across platforms:\n// - OpenAI ChatGPT Apps SDK\n// - ext-apps (SEP-1865 protocol)\n// - Claude (Anthropic)\n// - Gemini (Google)\n// - Generic fallback\n//\n// For full access to the bridge system, import from '@frontmcp/ui/bridge':\n// import { FrontMcpBridge, createBridge } from '@frontmcp/ui/bridge';\n//\n// Core bridge exports are also available here:\nexport {\n // Core types\n type PlatformAdapter,\n type AdapterCapabilities,\n type BridgeConfig,\n // Bridge class\n FrontMcpBridge,\n createBridge,\n // Registry\n AdapterRegistry,\n defaultRegistry,\n registerAdapter,\n // Runtime script generation\n generateBridgeIIFE,\n generatePlatformBundle,\n UNIVERSAL_BRIDGE_SCRIPT,\n BRIDGE_SCRIPT_TAGS,\n} from './bridge';\n\n// ============================================\n// Web Components - Custom Elements for React/Vue/HTML\n// ============================================\n// Web Components wrap the HTML functions as native custom elements\n// that work directly in React, Vue, Angular, or plain HTML.\n//\n// For full access to all web components, import from '@frontmcp/ui/web-components':\n// import { registerAllComponents } from '@frontmcp/ui/web-components';\n//\n// Core web component exports:\nexport {\n // Registration\n registerAllComponents,\n registerFmcpButton,\n registerFmcpCard,\n registerFmcpAlert,\n registerFmcpBadge,\n registerFmcpInput,\n registerFmcpSelect,\n // Element classes\n FmcpButton,\n FmcpCard,\n FmcpAlert,\n FmcpBadge,\n FmcpInput,\n FmcpSelect,\n // Base class for custom elements\n FmcpElement,\n} from './web-components';\n\n// ============================================\n// Registry Module - Standalone Tool UI Building\n// ============================================\n// The registry module provides the ToolUIRegistry class for standalone widget\n// compilation and rendering without requiring @frontmcp/sdk.\n//\n// For full access to the registry system, import from '@frontmcp/ui/registry':\n// import { ToolUIRegistry, renderToolTemplateAsync } from '@frontmcp/ui/registry';\n//\n// Core registry exports:\nexport {\n // Core registry\n ToolUIRegistry,\n type RenderOptions,\n type UIRenderResult,\n type CompileStaticWidgetOptions,\n type HybridComponentPayload,\n type BuildHybridComponentPayloadOptions,\n // Template rendering\n renderToolTemplate,\n renderToolTemplateAsync,\n isReactComponent,\n hasUIConfig,\n containsMdxSyntax,\n type RenderTemplateOptions,\n // URI utilities\n UI_RESOURCE_SCHEME,\n isUIResourceUri,\n isStaticWidgetUri,\n parseWidgetUri,\n buildStaticWidgetUri,\n getUIResourceMimeType,\n type ParsedWidgetUri,\n} from './registry';\n"]}
|
package/src/layouts/base.d.ts
DELETED
|
@@ -1,88 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Base Layout System
|
|
3
|
-
*
|
|
4
|
-
* Provides the foundation for all FrontMCP UI pages with:
|
|
5
|
-
* - Platform-aware rendering (OpenAI, Claude, etc.)
|
|
6
|
-
* - Theme integration
|
|
7
|
-
* - CDN resource management
|
|
8
|
-
* - Responsive layouts
|
|
9
|
-
*/
|
|
10
|
-
import { type PlatformCapabilities, type ThemeConfig, type DeepPartial } from '../theme';
|
|
11
|
-
/**
|
|
12
|
-
* Page type determines the layout structure
|
|
13
|
-
*/
|
|
14
|
-
export type PageType = 'auth' | 'consent' | 'error' | 'loading' | 'success' | 'dashboard' | 'widget' | 'resource' | 'custom';
|
|
15
|
-
/**
|
|
16
|
-
* Layout size/width options
|
|
17
|
-
*/
|
|
18
|
-
export type LayoutSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl' | '2xl' | '3xl' | 'full';
|
|
19
|
-
/**
|
|
20
|
-
* Background style options
|
|
21
|
-
*/
|
|
22
|
-
export type BackgroundStyle = 'solid' | 'gradient' | 'pattern' | 'none';
|
|
23
|
-
/**
|
|
24
|
-
* Layout alignment options
|
|
25
|
-
*/
|
|
26
|
-
export type LayoutAlignment = 'center' | 'top' | 'start';
|
|
27
|
-
/**
|
|
28
|
-
* Base layout configuration options
|
|
29
|
-
*/
|
|
30
|
-
export interface BaseLayoutOptions {
|
|
31
|
-
/** Page title (will be suffixed with branding) */
|
|
32
|
-
title: string;
|
|
33
|
-
/** Page type for layout structure */
|
|
34
|
-
pageType?: PageType;
|
|
35
|
-
/** Content width */
|
|
36
|
-
size?: LayoutSize;
|
|
37
|
-
/** Content alignment */
|
|
38
|
-
alignment?: LayoutAlignment;
|
|
39
|
-
/** Background style */
|
|
40
|
-
background?: BackgroundStyle;
|
|
41
|
-
/** Optional page description for meta tag */
|
|
42
|
-
description?: string;
|
|
43
|
-
/** Target platform capabilities */
|
|
44
|
-
platform?: PlatformCapabilities;
|
|
45
|
-
/** Theme configuration (deep partial - nested properties are also optional) */
|
|
46
|
-
theme?: DeepPartial<ThemeConfig>;
|
|
47
|
-
/** Include HTMX (default: based on platform) */
|
|
48
|
-
includeHtmx?: boolean;
|
|
49
|
-
/** Include Alpine.js (default: false) */
|
|
50
|
-
includeAlpine?: boolean;
|
|
51
|
-
/** Include Lucide icons (default: false) */
|
|
52
|
-
includeIcons?: boolean;
|
|
53
|
-
/** Additional head content */
|
|
54
|
-
headExtra?: string;
|
|
55
|
-
/** Additional body attributes */
|
|
56
|
-
bodyAttrs?: Record<string, string>;
|
|
57
|
-
/** Custom body classes */
|
|
58
|
-
bodyClass?: string;
|
|
59
|
-
/** Title suffix/branding */
|
|
60
|
-
titleSuffix?: string;
|
|
61
|
-
/** Favicon URL */
|
|
62
|
-
favicon?: string;
|
|
63
|
-
/** Open Graph meta tags */
|
|
64
|
-
og?: {
|
|
65
|
-
title?: string;
|
|
66
|
-
description?: string;
|
|
67
|
-
image?: string;
|
|
68
|
-
type?: string;
|
|
69
|
-
};
|
|
70
|
-
}
|
|
71
|
-
/**
|
|
72
|
-
* Escape HTML special characters to prevent XSS
|
|
73
|
-
*/
|
|
74
|
-
export declare function escapeHtml(str: string): string;
|
|
75
|
-
/**
|
|
76
|
-
* Build the complete HTML document
|
|
77
|
-
*
|
|
78
|
-
* @param content - The page content (HTML string)
|
|
79
|
-
* @param options - Layout configuration options
|
|
80
|
-
* @returns Complete HTML document string
|
|
81
|
-
*/
|
|
82
|
-
export declare function baseLayout(content: string, options: BaseLayoutOptions): string;
|
|
83
|
-
/**
|
|
84
|
-
* Create a layout builder with preset options.
|
|
85
|
-
* The returned function accepts optional options that extend/override the defaults.
|
|
86
|
-
* If defaults include `title`, the returned function's options are fully optional.
|
|
87
|
-
*/
|
|
88
|
-
export declare function createLayoutBuilder(defaults: Partial<BaseLayoutOptions>): (content: string, options?: Partial<BaseLayoutOptions>) => string;
|
package/src/layouts/base.js
DELETED
|
@@ -1,227 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* Base Layout System
|
|
4
|
-
*
|
|
5
|
-
* Provides the foundation for all FrontMCP UI pages with:
|
|
6
|
-
* - Platform-aware rendering (OpenAI, Claude, etc.)
|
|
7
|
-
* - Theme integration
|
|
8
|
-
* - CDN resource management
|
|
9
|
-
* - Responsive layouts
|
|
10
|
-
*/
|
|
11
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.escapeHtml = escapeHtml;
|
|
13
|
-
exports.baseLayout = baseLayout;
|
|
14
|
-
exports.createLayoutBuilder = createLayoutBuilder;
|
|
15
|
-
const theme_1 = require("../theme");
|
|
16
|
-
// ============================================
|
|
17
|
-
// Utility Functions
|
|
18
|
-
// ============================================
|
|
19
|
-
/**
|
|
20
|
-
* Escape HTML special characters to prevent XSS
|
|
21
|
-
*/
|
|
22
|
-
function escapeHtml(str) {
|
|
23
|
-
return str
|
|
24
|
-
.replace(/&/g, '&')
|
|
25
|
-
.replace(/</g, '<')
|
|
26
|
-
.replace(/>/g, '>')
|
|
27
|
-
.replace(/"/g, '"')
|
|
28
|
-
.replace(/'/g, ''');
|
|
29
|
-
}
|
|
30
|
-
/**
|
|
31
|
-
* Get CSS class for layout size
|
|
32
|
-
*/
|
|
33
|
-
function getSizeClass(size) {
|
|
34
|
-
const sizeMap = {
|
|
35
|
-
xs: 'max-w-sm',
|
|
36
|
-
sm: 'max-w-md',
|
|
37
|
-
md: 'max-w-lg',
|
|
38
|
-
lg: 'max-w-xl',
|
|
39
|
-
xl: 'max-w-2xl',
|
|
40
|
-
'2xl': 'max-w-3xl',
|
|
41
|
-
'3xl': 'max-w-4xl',
|
|
42
|
-
full: 'max-w-full',
|
|
43
|
-
};
|
|
44
|
-
return sizeMap[size];
|
|
45
|
-
}
|
|
46
|
-
/**
|
|
47
|
-
* Get CSS classes for alignment
|
|
48
|
-
*/
|
|
49
|
-
function getAlignmentClasses(alignment) {
|
|
50
|
-
const alignMap = {
|
|
51
|
-
center: 'min-h-screen flex items-center justify-center',
|
|
52
|
-
top: 'min-h-screen flex flex-col items-center pt-12',
|
|
53
|
-
start: 'min-h-screen',
|
|
54
|
-
};
|
|
55
|
-
return alignMap[alignment];
|
|
56
|
-
}
|
|
57
|
-
/**
|
|
58
|
-
* Get CSS classes for background
|
|
59
|
-
*/
|
|
60
|
-
function getBackgroundClasses(background, theme) {
|
|
61
|
-
switch (background) {
|
|
62
|
-
case 'gradient':
|
|
63
|
-
return 'bg-gradient-to-br from-primary to-secondary';
|
|
64
|
-
case 'pattern':
|
|
65
|
-
return 'bg-surface bg-[url("data:image/svg+xml,...")]'; // Pattern would be defined
|
|
66
|
-
case 'solid':
|
|
67
|
-
return 'bg-background';
|
|
68
|
-
case 'none':
|
|
69
|
-
default:
|
|
70
|
-
return '';
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
/**
|
|
74
|
-
* Build meta tags
|
|
75
|
-
*/
|
|
76
|
-
function buildMetaTags(options) {
|
|
77
|
-
const tags = [];
|
|
78
|
-
if (options.description) {
|
|
79
|
-
tags.push(`<meta name="description" content="${escapeHtml(options.description)}">`);
|
|
80
|
-
}
|
|
81
|
-
if (options.og) {
|
|
82
|
-
if (options.og.title) {
|
|
83
|
-
tags.push(`<meta property="og:title" content="${escapeHtml(options.og.title)}">`);
|
|
84
|
-
}
|
|
85
|
-
if (options.og.description) {
|
|
86
|
-
tags.push(`<meta property="og:description" content="${escapeHtml(options.og.description)}">`);
|
|
87
|
-
}
|
|
88
|
-
if (options.og.image) {
|
|
89
|
-
tags.push(`<meta property="og:image" content="${escapeHtml(options.og.image)}">`);
|
|
90
|
-
}
|
|
91
|
-
if (options.og.type) {
|
|
92
|
-
tags.push(`<meta property="og:type" content="${escapeHtml(options.og.type)}">`);
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
if (options.favicon) {
|
|
96
|
-
tags.push(`<link rel="icon" href="${escapeHtml(options.favicon)}">`);
|
|
97
|
-
}
|
|
98
|
-
return tags.join('\n ');
|
|
99
|
-
}
|
|
100
|
-
/**
|
|
101
|
-
* Build body attributes string
|
|
102
|
-
*/
|
|
103
|
-
function buildBodyAttrs(attrs) {
|
|
104
|
-
if (!attrs)
|
|
105
|
-
return '';
|
|
106
|
-
return Object.entries(attrs)
|
|
107
|
-
.map(([key, value]) => `${key}="${escapeHtml(value)}"`)
|
|
108
|
-
.join(' ');
|
|
109
|
-
}
|
|
110
|
-
// ============================================
|
|
111
|
-
// Base Layout Builder
|
|
112
|
-
// ============================================
|
|
113
|
-
/**
|
|
114
|
-
* Build the complete HTML document
|
|
115
|
-
*
|
|
116
|
-
* @param content - The page content (HTML string)
|
|
117
|
-
* @param options - Layout configuration options
|
|
118
|
-
* @returns Complete HTML document string
|
|
119
|
-
*/
|
|
120
|
-
function baseLayout(content, options) {
|
|
121
|
-
const { title, pageType = 'custom', size = 'md', alignment = 'center', background = 'solid', platform = theme_1.OPENAI_PLATFORM, theme: themeOverrides, includeHtmx, includeAlpine = false, includeIcons = false, headExtra = '', bodyAttrs, bodyClass = '', titleSuffix = 'FrontMCP', } = options;
|
|
122
|
-
// Merge theme using the centralized mergeThemes function for proper deep merging
|
|
123
|
-
const theme = themeOverrides ? (0, theme_1.mergeThemes)(theme_1.DEFAULT_THEME, themeOverrides) : theme_1.DEFAULT_THEME;
|
|
124
|
-
// Determine if we should include HTMX
|
|
125
|
-
const shouldIncludeHtmx = includeHtmx ?? platform.supportsHtmx;
|
|
126
|
-
// Check if we can use CDN or need inline
|
|
127
|
-
const useCdn = (0, theme_1.canUseCdn)(platform);
|
|
128
|
-
const useInline = (0, theme_1.needsInlineScripts)(platform);
|
|
129
|
-
// Build font links (skip for blocked network)
|
|
130
|
-
const fontPreconnect = useCdn ? (0, theme_1.buildFontPreconnect)() : '';
|
|
131
|
-
const fontStylesheets = useCdn ? (0, theme_1.buildFontStylesheets)({ inter: true }) : '';
|
|
132
|
-
// Build scripts
|
|
133
|
-
const scripts = (0, theme_1.buildCdnScripts)({
|
|
134
|
-
tailwind: platform.supportsTailwind,
|
|
135
|
-
htmx: shouldIncludeHtmx,
|
|
136
|
-
alpine: includeAlpine,
|
|
137
|
-
icons: includeIcons,
|
|
138
|
-
inline: useInline,
|
|
139
|
-
});
|
|
140
|
-
// Build theme CSS
|
|
141
|
-
const themeCss = (0, theme_1.buildThemeCss)(theme);
|
|
142
|
-
const customCss = theme.customCss || '';
|
|
143
|
-
// Build Tailwind style block
|
|
144
|
-
const styleBlock = platform.supportsTailwind
|
|
145
|
-
? `<style type="text/tailwindcss">
|
|
146
|
-
@theme {
|
|
147
|
-
${themeCss}
|
|
148
|
-
}
|
|
149
|
-
${customCss}
|
|
150
|
-
</style>`
|
|
151
|
-
: '';
|
|
152
|
-
// Build layout classes
|
|
153
|
-
const sizeClass = getSizeClass(size);
|
|
154
|
-
const alignmentClasses = getAlignmentClasses(alignment);
|
|
155
|
-
const backgroundClasses = getBackgroundClasses(background, theme);
|
|
156
|
-
// Combine body classes
|
|
157
|
-
const allBodyClasses = [backgroundClasses, 'font-sans antialiased', bodyClass].filter(Boolean).join(' ');
|
|
158
|
-
// Build meta tags
|
|
159
|
-
const metaTags = buildMetaTags(options);
|
|
160
|
-
const bodyAttrStr = buildBodyAttrs(bodyAttrs);
|
|
161
|
-
// Wrap content in layout container
|
|
162
|
-
const wrappedContent = alignment === 'center'
|
|
163
|
-
? `<div class="${alignmentClasses} p-4">
|
|
164
|
-
<div class="w-full ${sizeClass}">
|
|
165
|
-
${content}
|
|
166
|
-
</div>
|
|
167
|
-
</div>`
|
|
168
|
-
: `<div class="${alignmentClasses}">
|
|
169
|
-
<div class="w-full ${sizeClass} mx-auto px-4 py-8">
|
|
170
|
-
${content}
|
|
171
|
-
</div>
|
|
172
|
-
</div>`;
|
|
173
|
-
return `<!DOCTYPE html>
|
|
174
|
-
<html lang="en">
|
|
175
|
-
<head>
|
|
176
|
-
<meta charset="UTF-8">
|
|
177
|
-
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
178
|
-
<title>${escapeHtml(title)}${titleSuffix ? ` - ${escapeHtml(titleSuffix)}` : ''}</title>
|
|
179
|
-
${metaTags}
|
|
180
|
-
|
|
181
|
-
<!-- Fonts -->
|
|
182
|
-
${fontPreconnect}
|
|
183
|
-
${fontStylesheets}
|
|
184
|
-
|
|
185
|
-
<!-- Tailwind CSS -->
|
|
186
|
-
${scripts}
|
|
187
|
-
${styleBlock}
|
|
188
|
-
|
|
189
|
-
${headExtra}
|
|
190
|
-
</head>
|
|
191
|
-
<body class="${escapeHtml(allBodyClasses)}"${bodyAttrStr ? ` ${bodyAttrStr}` : ''}>
|
|
192
|
-
${wrappedContent}
|
|
193
|
-
</body>
|
|
194
|
-
</html>`;
|
|
195
|
-
}
|
|
196
|
-
// ============================================
|
|
197
|
-
// Layout Factory
|
|
198
|
-
// ============================================
|
|
199
|
-
/**
|
|
200
|
-
* Create a layout builder with preset options.
|
|
201
|
-
* The returned function accepts optional options that extend/override the defaults.
|
|
202
|
-
* If defaults include `title`, the returned function's options are fully optional.
|
|
203
|
-
*/
|
|
204
|
-
function createLayoutBuilder(defaults) {
|
|
205
|
-
return (content, options = {}) => {
|
|
206
|
-
// Deep merge themes using mergeThemes
|
|
207
|
-
// Start with DEFAULT_THEME as base, then merge defaults.theme, then options.theme
|
|
208
|
-
let mergedTheme = theme_1.DEFAULT_THEME;
|
|
209
|
-
if (defaults.theme) {
|
|
210
|
-
mergedTheme = (0, theme_1.mergeThemes)(mergedTheme, defaults.theme);
|
|
211
|
-
}
|
|
212
|
-
if (options.theme) {
|
|
213
|
-
mergedTheme = (0, theme_1.mergeThemes)(mergedTheme, options.theme);
|
|
214
|
-
}
|
|
215
|
-
const merged = {
|
|
216
|
-
...defaults,
|
|
217
|
-
...options,
|
|
218
|
-
theme: mergedTheme,
|
|
219
|
-
};
|
|
220
|
-
// Ensure title exists (from defaults or options)
|
|
221
|
-
if (!merged.title) {
|
|
222
|
-
throw new Error('createLayoutBuilder: title is required either in defaults or options');
|
|
223
|
-
}
|
|
224
|
-
return baseLayout(content, merged);
|
|
225
|
-
};
|
|
226
|
-
}
|
|
227
|
-
//# sourceMappingURL=base.js.map
|
package/src/layouts/base.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"base.js","sourceRoot":"","sources":["../../../src/layouts/base.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Base Layout System\n *\n * Provides the foundation for all FrontMCP UI pages with:\n * - Platform-aware rendering (OpenAI, Claude, etc.)\n * - Theme integration\n * - CDN resource management\n * - Responsive layouts\n */\n\nimport {\n type PlatformCapabilities,\n type ThemeConfig,\n type DeepPartial,\n OPENAI_PLATFORM,\n canUseCdn,\n needsInlineScripts,\n DEFAULT_THEME,\n buildThemeCss,\n mergeThemes,\n CDN,\n buildFontPreconnect,\n buildFontStylesheets,\n buildCdnScripts,\n} from '../theme';\n\n// ============================================\n// Layout Types\n// ============================================\n\n/**\n * Page type determines the layout structure\n */\nexport type PageType =\n | 'auth' // Login, register, forgot password\n | 'consent' // OAuth consent, permissions\n | 'error' // Error pages\n | 'loading' // Loading/processing states\n | 'success' // Success confirmation\n | 'dashboard' // Admin/dashboard layouts\n | 'widget' // Embedded widget mode\n | 'resource' // OpenAI resource display\n | 'custom'; // Custom layout\n\n/**\n * Layout size/width options\n */\nexport type LayoutSize =\n | 'xs' // max-w-sm (24rem)\n | 'sm' // max-w-md (28rem)\n | 'md' // max-w-lg (32rem)\n | 'lg' // max-w-xl (36rem)\n | 'xl' // max-w-2xl (42rem)\n | '2xl' // max-w-3xl (48rem)\n | '3xl' // max-w-4xl (56rem)\n | 'full'; // Full width\n\n/**\n * Background style options\n */\nexport type BackgroundStyle =\n | 'solid' // Solid color\n | 'gradient' // Gradient\n | 'pattern' // Pattern/texture\n | 'none'; // Transparent\n\n/**\n * Layout alignment options\n */\nexport type LayoutAlignment =\n | 'center' // Centered both axes\n | 'top' // Top aligned\n | 'start'; // Start aligned (left)\n\n// ============================================\n// Layout Options\n// ============================================\n\n/**\n * Base layout configuration options\n */\nexport interface BaseLayoutOptions {\n /** Page title (will be suffixed with branding) */\n title: string;\n\n /** Page type for layout structure */\n pageType?: PageType;\n\n /** Content width */\n size?: LayoutSize;\n\n /** Content alignment */\n alignment?: LayoutAlignment;\n\n /** Background style */\n background?: BackgroundStyle;\n\n /** Optional page description for meta tag */\n description?: string;\n\n /** Target platform capabilities */\n platform?: PlatformCapabilities;\n\n /** Theme configuration (deep partial - nested properties are also optional) */\n theme?: DeepPartial<ThemeConfig>;\n\n /** Include HTMX (default: based on platform) */\n includeHtmx?: boolean;\n\n /** Include Alpine.js (default: false) */\n includeAlpine?: boolean;\n\n /** Include Lucide icons (default: false) */\n includeIcons?: boolean;\n\n /** Additional head content */\n headExtra?: string;\n\n /** Additional body attributes */\n bodyAttrs?: Record<string, string>;\n\n /** Custom body classes */\n bodyClass?: string;\n\n /** Title suffix/branding */\n titleSuffix?: string;\n\n /** Favicon URL */\n favicon?: string;\n\n /** Open Graph meta tags */\n og?: {\n title?: string;\n description?: string;\n image?: string;\n type?: string;\n };\n}\n\n// ============================================\n// Utility Functions\n// ============================================\n\n/**\n * Escape HTML special characters to prevent XSS\n */\nexport function escapeHtml(str: string): string {\n return str\n .replace(/&/g, '&')\n .replace(/</g, '<')\n .replace(/>/g, '>')\n .replace(/\"/g, '"')\n .replace(/'/g, ''');\n}\n\n/**\n * Get CSS class for layout size\n */\nfunction getSizeClass(size: LayoutSize): string {\n const sizeMap: Record<LayoutSize, string> = {\n xs: 'max-w-sm',\n sm: 'max-w-md',\n md: 'max-w-lg',\n lg: 'max-w-xl',\n xl: 'max-w-2xl',\n '2xl': 'max-w-3xl',\n '3xl': 'max-w-4xl',\n full: 'max-w-full',\n };\n return sizeMap[size];\n}\n\n/**\n * Get CSS classes for alignment\n */\nfunction getAlignmentClasses(alignment: LayoutAlignment): string {\n const alignMap: Record<LayoutAlignment, string> = {\n center: 'min-h-screen flex items-center justify-center',\n top: 'min-h-screen flex flex-col items-center pt-12',\n start: 'min-h-screen',\n };\n return alignMap[alignment];\n}\n\n/**\n * Get CSS classes for background\n */\nfunction getBackgroundClasses(background: BackgroundStyle, theme: ThemeConfig): string {\n switch (background) {\n case 'gradient':\n return 'bg-gradient-to-br from-primary to-secondary';\n case 'pattern':\n return 'bg-surface bg-[url(\"data:image/svg+xml,...\")]'; // Pattern would be defined\n case 'solid':\n return 'bg-background';\n case 'none':\n default:\n return '';\n }\n}\n\n/**\n * Build meta tags\n */\nfunction buildMetaTags(options: BaseLayoutOptions): string {\n const tags: string[] = [];\n\n if (options.description) {\n tags.push(`<meta name=\"description\" content=\"${escapeHtml(options.description)}\">`);\n }\n\n if (options.og) {\n if (options.og.title) {\n tags.push(`<meta property=\"og:title\" content=\"${escapeHtml(options.og.title)}\">`);\n }\n if (options.og.description) {\n tags.push(`<meta property=\"og:description\" content=\"${escapeHtml(options.og.description)}\">`);\n }\n if (options.og.image) {\n tags.push(`<meta property=\"og:image\" content=\"${escapeHtml(options.og.image)}\">`);\n }\n if (options.og.type) {\n tags.push(`<meta property=\"og:type\" content=\"${escapeHtml(options.og.type)}\">`);\n }\n }\n\n if (options.favicon) {\n tags.push(`<link rel=\"icon\" href=\"${escapeHtml(options.favicon)}\">`);\n }\n\n return tags.join('\\n ');\n}\n\n/**\n * Build body attributes string\n */\nfunction buildBodyAttrs(attrs?: Record<string, string>): string {\n if (!attrs) return '';\n return Object.entries(attrs)\n .map(([key, value]) => `${key}=\"${escapeHtml(value)}\"`)\n .join(' ');\n}\n\n// ============================================\n// Base Layout Builder\n// ============================================\n\n/**\n * Build the complete HTML document\n *\n * @param content - The page content (HTML string)\n * @param options - Layout configuration options\n * @returns Complete HTML document string\n */\nexport function baseLayout(content: string, options: BaseLayoutOptions): string {\n const {\n title,\n pageType = 'custom',\n size = 'md',\n alignment = 'center',\n background = 'solid',\n platform = OPENAI_PLATFORM,\n theme: themeOverrides,\n includeHtmx,\n includeAlpine = false,\n includeIcons = false,\n headExtra = '',\n bodyAttrs,\n bodyClass = '',\n titleSuffix = 'FrontMCP',\n } = options;\n\n // Merge theme using the centralized mergeThemes function for proper deep merging\n const theme: ThemeConfig = themeOverrides ? mergeThemes(DEFAULT_THEME, themeOverrides) : DEFAULT_THEME;\n\n // Determine if we should include HTMX\n const shouldIncludeHtmx = includeHtmx ?? platform.supportsHtmx;\n\n // Check if we can use CDN or need inline\n const useCdn = canUseCdn(platform);\n const useInline = needsInlineScripts(platform);\n\n // Build font links (skip for blocked network)\n const fontPreconnect = useCdn ? buildFontPreconnect() : '';\n const fontStylesheets = useCdn ? buildFontStylesheets({ inter: true }) : '';\n\n // Build scripts\n const scripts = buildCdnScripts({\n tailwind: platform.supportsTailwind,\n htmx: shouldIncludeHtmx,\n alpine: includeAlpine,\n icons: includeIcons,\n inline: useInline,\n });\n\n // Build theme CSS\n const themeCss = buildThemeCss(theme);\n const customCss = theme.customCss || '';\n\n // Build Tailwind style block\n const styleBlock = platform.supportsTailwind\n ? `<style type=\"text/tailwindcss\">\n @theme {\n ${themeCss}\n }\n ${customCss}\n </style>`\n : '';\n\n // Build layout classes\n const sizeClass = getSizeClass(size);\n const alignmentClasses = getAlignmentClasses(alignment);\n const backgroundClasses = getBackgroundClasses(background, theme);\n\n // Combine body classes\n const allBodyClasses = [backgroundClasses, 'font-sans antialiased', bodyClass].filter(Boolean).join(' ');\n\n // Build meta tags\n const metaTags = buildMetaTags(options);\n const bodyAttrStr = buildBodyAttrs(bodyAttrs);\n\n // Wrap content in layout container\n const wrappedContent =\n alignment === 'center'\n ? `<div class=\"${alignmentClasses} p-4\">\n <div class=\"w-full ${sizeClass}\">\n ${content}\n </div>\n </div>`\n : `<div class=\"${alignmentClasses}\">\n <div class=\"w-full ${sizeClass} mx-auto px-4 py-8\">\n ${content}\n </div>\n </div>`;\n\n return `<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n <meta charset=\"UTF-8\">\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n <title>${escapeHtml(title)}${titleSuffix ? ` - ${escapeHtml(titleSuffix)}` : ''}</title>\n ${metaTags}\n\n <!-- Fonts -->\n ${fontPreconnect}\n ${fontStylesheets}\n\n <!-- Tailwind CSS -->\n ${scripts}\n ${styleBlock}\n\n ${headExtra}\n</head>\n<body class=\"${escapeHtml(allBodyClasses)}\"${bodyAttrStr ? ` ${bodyAttrStr}` : ''}>\n ${wrappedContent}\n</body>\n</html>`;\n}\n\n// ============================================\n// Layout Factory\n// ============================================\n\n/**\n * Create a layout builder with preset options.\n * The returned function accepts optional options that extend/override the defaults.\n * If defaults include `title`, the returned function's options are fully optional.\n */\nexport function createLayoutBuilder(\n defaults: Partial<BaseLayoutOptions>,\n): (content: string, options?: Partial<BaseLayoutOptions>) => string {\n return (content: string, options: Partial<BaseLayoutOptions> = {}) => {\n // Deep merge themes using mergeThemes\n // Start with DEFAULT_THEME as base, then merge defaults.theme, then options.theme\n let mergedTheme = DEFAULT_THEME;\n if (defaults.theme) {\n mergedTheme = mergeThemes(mergedTheme, defaults.theme);\n }\n if (options.theme) {\n mergedTheme = mergeThemes(mergedTheme, options.theme);\n }\n\n const merged = {\n ...defaults,\n ...options,\n theme: mergedTheme,\n } as BaseLayoutOptions;\n\n // Ensure title exists (from defaults or options)\n if (!merged.title) {\n throw new Error('createLayoutBuilder: title is required either in defaults or options');\n }\n\n return baseLayout(content, merged);\n };\n}\n"]}
|
package/src/layouts/index.d.ts
DELETED
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Layouts Module
|
|
3
|
-
*
|
|
4
|
-
* Provides base layouts and page-specific presets for FrontMCP UI.
|
|
5
|
-
*/
|
|
6
|
-
export { type PageType, type LayoutSize, type BackgroundStyle, type LayoutAlignment, type BaseLayoutOptions, baseLayout, createLayoutBuilder, escapeHtml, } from './base';
|
|
7
|
-
export { type AuthLayoutOptions, type ConsentLayoutOptions, type ErrorLayoutOptions, type LoadingLayoutOptions, type SuccessLayoutOptions, type WidgetLayoutOptions, authLayout, consentLayout, errorLayout, loadingLayout, successLayout, widgetLayout, authLayoutBuilder, consentLayoutBuilder, errorLayoutBuilder, } from './presets';
|
package/src/layouts/index.js
DELETED
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* Layouts Module
|
|
4
|
-
*
|
|
5
|
-
* Provides base layouts and page-specific presets for FrontMCP UI.
|
|
6
|
-
*/
|
|
7
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
|
-
exports.errorLayoutBuilder = exports.consentLayoutBuilder = exports.authLayoutBuilder = exports.widgetLayout = exports.successLayout = exports.loadingLayout = exports.errorLayout = exports.consentLayout = exports.authLayout = exports.escapeHtml = exports.createLayoutBuilder = exports.baseLayout = void 0;
|
|
9
|
-
// Base layout
|
|
10
|
-
var base_1 = require("./base");
|
|
11
|
-
Object.defineProperty(exports, "baseLayout", { enumerable: true, get: function () { return base_1.baseLayout; } });
|
|
12
|
-
Object.defineProperty(exports, "createLayoutBuilder", { enumerable: true, get: function () { return base_1.createLayoutBuilder; } });
|
|
13
|
-
Object.defineProperty(exports, "escapeHtml", { enumerable: true, get: function () { return base_1.escapeHtml; } });
|
|
14
|
-
// Layout presets
|
|
15
|
-
var presets_1 = require("./presets");
|
|
16
|
-
Object.defineProperty(exports, "authLayout", { enumerable: true, get: function () { return presets_1.authLayout; } });
|
|
17
|
-
Object.defineProperty(exports, "consentLayout", { enumerable: true, get: function () { return presets_1.consentLayout; } });
|
|
18
|
-
Object.defineProperty(exports, "errorLayout", { enumerable: true, get: function () { return presets_1.errorLayout; } });
|
|
19
|
-
Object.defineProperty(exports, "loadingLayout", { enumerable: true, get: function () { return presets_1.loadingLayout; } });
|
|
20
|
-
Object.defineProperty(exports, "successLayout", { enumerable: true, get: function () { return presets_1.successLayout; } });
|
|
21
|
-
Object.defineProperty(exports, "widgetLayout", { enumerable: true, get: function () { return presets_1.widgetLayout; } });
|
|
22
|
-
Object.defineProperty(exports, "authLayoutBuilder", { enumerable: true, get: function () { return presets_1.authLayoutBuilder; } });
|
|
23
|
-
Object.defineProperty(exports, "consentLayoutBuilder", { enumerable: true, get: function () { return presets_1.consentLayoutBuilder; } });
|
|
24
|
-
Object.defineProperty(exports, "errorLayoutBuilder", { enumerable: true, get: function () { return presets_1.errorLayoutBuilder; } });
|
|
25
|
-
//# sourceMappingURL=index.js.map
|
package/src/layouts/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/layouts/index.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAEH,cAAc;AACd,+BASgB;AAHd,kGAAA,UAAU,OAAA;AACV,2GAAA,mBAAmB,OAAA;AACnB,kGAAA,UAAU,OAAA;AAGZ,iBAAiB;AACjB,qCAgBmB;AATjB,qGAAA,UAAU,OAAA;AACV,wGAAA,aAAa,OAAA;AACb,sGAAA,WAAW,OAAA;AACX,wGAAA,aAAa,OAAA;AACb,wGAAA,aAAa,OAAA;AACb,uGAAA,YAAY,OAAA;AACZ,4GAAA,iBAAiB,OAAA;AACjB,+GAAA,oBAAoB,OAAA;AACpB,6GAAA,kBAAkB,OAAA","sourcesContent":["/**\n * Layouts Module\n *\n * Provides base layouts and page-specific presets for FrontMCP UI.\n */\n\n// Base layout\nexport {\n type PageType,\n type LayoutSize,\n type BackgroundStyle,\n type LayoutAlignment,\n type BaseLayoutOptions,\n baseLayout,\n createLayoutBuilder,\n escapeHtml,\n} from './base';\n\n// Layout presets\nexport {\n type AuthLayoutOptions,\n type ConsentLayoutOptions,\n type ErrorLayoutOptions,\n type LoadingLayoutOptions,\n type SuccessLayoutOptions,\n type WidgetLayoutOptions,\n authLayout,\n consentLayout,\n errorLayout,\n loadingLayout,\n successLayout,\n widgetLayout,\n authLayoutBuilder,\n consentLayoutBuilder,\n errorLayoutBuilder,\n} from './presets';\n"]}
|