@frontmcp/ui 0.5.1 → 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 +26 -85
- package/pages/consent.d.ts +117 -0
- package/pages/consent.d.ts.map +1 -0
- package/pages/error.d.ts +101 -0
- package/pages/error.d.ts.map +1 -0
- package/pages/index.d.ts +9 -0
- package/pages/index.d.ts.map +1 -0
- package/pages/index.js +1602 -0
- package/react/Alert.d.ts +102 -0
- package/react/Alert.d.ts.map +1 -0
- package/react/Badge.d.ts +101 -0
- package/react/Badge.d.ts.map +1 -0
- package/react/Button.d.ts +109 -0
- package/react/Button.d.ts.map +1 -0
- package/react/Card.d.ts +104 -0
- package/react/Card.d.ts.map +1 -0
- package/react/hooks/context.d.ts +179 -0
- package/react/hooks/context.d.ts.map +1 -0
- package/react/hooks/index.d.ts +42 -0
- package/react/hooks/index.d.ts.map +1 -0
- package/react/hooks/tools.d.ts +284 -0
- package/react/hooks/tools.d.ts.map +1 -0
- package/react/index.d.ts +81 -0
- package/react/index.d.ts.map +1 -0
- package/react/index.js +1430 -0
- package/react/types.d.ts +106 -0
- package/react/types.d.ts.map +1 -0
- package/react/utils.d.ts +43 -0
- package/react/utils.d.ts.map +1 -0
- package/registry/index.d.ts +46 -0
- package/registry/index.d.ts.map +1 -0
- package/registry/index.js +6465 -0
- package/registry/render-template.d.ts +91 -0
- package/registry/render-template.d.ts.map +1 -0
- package/registry/tool-ui.registry.d.ts +294 -0
- package/registry/tool-ui.registry.d.ts.map +1 -0
- package/registry/uri-utils.d.ts +56 -0
- package/registry/uri-utils.d.ts.map +1 -0
- package/render/index.d.ts +8 -0
- package/render/index.d.ts.map +1 -0
- package/render/index.js +77 -0
- package/render/prerender.d.ts +57 -0
- package/render/prerender.d.ts.map +1 -0
- package/renderers/cache.d.ts +145 -0
- package/renderers/cache.d.ts.map +1 -0
- package/renderers/html.renderer.d.ts +123 -0
- package/renderers/html.renderer.d.ts.map +1 -0
- package/renderers/index.d.ts +36 -0
- package/renderers/index.d.ts.map +1 -0
- package/renderers/index.js +1882 -0
- package/renderers/mdx.renderer.d.ts +120 -0
- package/renderers/mdx.renderer.d.ts.map +1 -0
- package/renderers/react.renderer.d.ts +96 -0
- package/renderers/react.renderer.d.ts.map +1 -0
- package/renderers/registry.d.ts +134 -0
- package/renderers/registry.d.ts.map +1 -0
- package/renderers/types.d.ts +342 -0
- package/renderers/types.d.ts.map +1 -0
- package/renderers/utils/detect.d.ts +107 -0
- package/renderers/utils/detect.d.ts.map +1 -0
- package/renderers/utils/hash.d.ts +40 -0
- package/renderers/utils/hash.d.ts.map +1 -0
- package/renderers/utils/index.d.ts +9 -0
- package/renderers/utils/index.d.ts.map +1 -0
- package/renderers/utils/transpiler.d.ts +89 -0
- package/renderers/utils/transpiler.d.ts.map +1 -0
- package/runtime/adapters/html.adapter.d.ts +59 -0
- package/runtime/adapters/html.adapter.d.ts.map +1 -0
- package/runtime/adapters/index.d.ts +26 -0
- package/runtime/adapters/index.d.ts.map +1 -0
- package/runtime/adapters/mdx.adapter.d.ts +73 -0
- package/runtime/adapters/mdx.adapter.d.ts.map +1 -0
- package/runtime/adapters/react.adapter.d.ts +70 -0
- package/runtime/adapters/react.adapter.d.ts.map +1 -0
- package/runtime/adapters/types.d.ts +95 -0
- package/runtime/adapters/types.d.ts.map +1 -0
- package/runtime/csp.d.ts +48 -0
- package/runtime/csp.d.ts.map +1 -0
- package/runtime/index.d.ts +17 -0
- package/runtime/index.d.ts.map +1 -0
- package/runtime/index.js +5264 -0
- package/runtime/mcp-bridge.d.ts +101 -0
- package/runtime/mcp-bridge.d.ts.map +1 -0
- package/runtime/renderer-runtime.d.ts +133 -0
- package/runtime/renderer-runtime.d.ts.map +1 -0
- package/runtime/sanitizer.d.ts +172 -0
- package/runtime/sanitizer.d.ts.map +1 -0
- package/runtime/types.d.ts +415 -0
- package/runtime/types.d.ts.map +1 -0
- package/runtime/wrapper.d.ts +421 -0
- package/runtime/wrapper.d.ts.map +1 -0
- package/styles/index.d.ts +8 -0
- package/styles/index.d.ts.map +1 -0
- package/styles/index.js +222 -0
- package/styles/variants.d.ts +51 -0
- package/styles/variants.d.ts.map +1 -0
- package/theme/cdn.d.ts +195 -0
- package/theme/cdn.d.ts.map +1 -0
- package/theme/index.d.ts +18 -0
- package/theme/index.d.ts.map +1 -0
- package/theme/index.js +757 -0
- package/theme/platforms.d.ts +107 -0
- package/theme/platforms.d.ts.map +1 -0
- package/theme/presets/github-openai.d.ts +50 -0
- package/theme/presets/github-openai.d.ts.map +1 -0
- package/theme/presets/index.d.ts +11 -0
- package/theme/presets/index.d.ts.map +1 -0
- package/theme/theme.d.ts +396 -0
- package/theme/theme.d.ts.map +1 -0
- package/tool-template/builder.d.ts +213 -0
- package/tool-template/builder.d.ts.map +1 -0
- package/tool-template/index.d.ts +16 -0
- package/tool-template/index.d.ts.map +1 -0
- package/tool-template/index.js +3559 -0
- package/types/index.d.ts +14 -0
- package/types/index.d.ts.map +1 -0
- package/types/index.js +108 -0
- package/types/ui-config.d.ts +639 -0
- package/types/ui-config.d.ts.map +1 -0
- package/types/ui-runtime.d.ts +1007 -0
- package/types/ui-runtime.d.ts.map +1 -0
- package/typings/cache/cache-adapter.d.ts +125 -0
- package/typings/cache/cache-adapter.d.ts.map +1 -0
- package/typings/cache/index.d.ts +10 -0
- package/typings/cache/index.d.ts.map +1 -0
- package/typings/cache/memory-cache.d.ts +92 -0
- package/typings/cache/memory-cache.d.ts.map +1 -0
- package/typings/dts-parser.d.ts +90 -0
- package/typings/dts-parser.d.ts.map +1 -0
- package/typings/index.d.ts +48 -0
- package/typings/index.d.ts.map +1 -0
- package/typings/schemas.d.ts +232 -0
- package/typings/schemas.d.ts.map +1 -0
- package/typings/type-fetcher.d.ts +89 -0
- package/typings/type-fetcher.d.ts.map +1 -0
- package/typings/types.d.ts +320 -0
- package/typings/types.d.ts.map +1 -0
- package/universal/UniversalApp.d.ts +108 -0
- package/universal/UniversalApp.d.ts.map +1 -0
- package/universal/cached-runtime.d.ts +115 -0
- package/universal/cached-runtime.d.ts.map +1 -0
- package/universal/context.d.ts +122 -0
- package/universal/context.d.ts.map +1 -0
- package/universal/index.d.ts +57 -0
- package/universal/index.d.ts.map +1 -0
- package/universal/renderers/html.renderer.d.ts +37 -0
- package/universal/renderers/html.renderer.d.ts.map +1 -0
- package/universal/renderers/index.d.ts +112 -0
- package/universal/renderers/index.d.ts.map +1 -0
- package/universal/renderers/markdown.renderer.d.ts +33 -0
- package/universal/renderers/markdown.renderer.d.ts.map +1 -0
- package/universal/renderers/mdx.renderer.d.ts +38 -0
- package/universal/renderers/mdx.renderer.d.ts.map +1 -0
- package/universal/renderers/react.renderer.d.ts +46 -0
- package/universal/renderers/react.renderer.d.ts.map +1 -0
- package/universal/runtime-builder.d.ts +33 -0
- package/universal/runtime-builder.d.ts.map +1 -0
- package/universal/store.d.ts +135 -0
- package/universal/store.d.ts.map +1 -0
- package/universal/types.d.ts +199 -0
- package/universal/types.d.ts.map +1 -0
- package/utils/escape-html.d.ts +58 -0
- package/utils/escape-html.d.ts.map +1 -0
- package/utils/index.d.ts +10 -0
- package/utils/index.d.ts.map +1 -0
- package/utils/index.js +70 -0
- package/utils/safe-stringify.d.ts +30 -0
- package/utils/safe-stringify.d.ts.map +1 -0
- package/validation/error-box.d.ts +56 -0
- package/validation/error-box.d.ts.map +1 -0
- package/validation/index.d.ts +13 -0
- package/validation/index.d.ts.map +1 -0
- package/validation/index.js +603 -0
- package/validation/schema-paths.d.ts +118 -0
- package/validation/schema-paths.d.ts.map +1 -0
- package/validation/template-validator.d.ts +143 -0
- package/validation/template-validator.d.ts.map +1 -0
- package/validation/wrapper.d.ts +97 -0
- package/validation/wrapper.d.ts.map +1 -0
- package/web-components/core/attribute-parser.d.ts +82 -0
- package/web-components/core/attribute-parser.d.ts.map +1 -0
- package/web-components/core/base-element.d.ts +197 -0
- package/web-components/core/base-element.d.ts.map +1 -0
- package/web-components/core/index.d.ts +9 -0
- package/web-components/core/index.d.ts.map +1 -0
- package/web-components/elements/fmcp-alert.d.ts +46 -0
- package/web-components/elements/fmcp-alert.d.ts.map +1 -0
- package/web-components/elements/fmcp-badge.d.ts +47 -0
- package/web-components/elements/fmcp-badge.d.ts.map +1 -0
- package/web-components/elements/fmcp-button.d.ts +117 -0
- package/web-components/elements/fmcp-button.d.ts.map +1 -0
- package/web-components/elements/fmcp-card.d.ts +53 -0
- package/web-components/elements/fmcp-card.d.ts.map +1 -0
- package/web-components/elements/fmcp-input.d.ts +96 -0
- package/web-components/elements/fmcp-input.d.ts.map +1 -0
- package/web-components/elements/fmcp-select.d.ts +100 -0
- package/web-components/elements/fmcp-select.d.ts.map +1 -0
- package/web-components/elements/index.d.ts +13 -0
- package/web-components/elements/index.d.ts.map +1 -0
- package/web-components/index.d.ts +50 -0
- package/web-components/index.d.ts.map +1 -0
- package/web-components/index.js +2093 -0
- package/web-components/register.d.ts +57 -0
- package/web-components/register.d.ts.map +1 -0
- package/web-components/types.d.ts +122 -0
- package/web-components/types.d.ts.map +1 -0
- package/widgets/index.d.ts +8 -0
- package/widgets/index.d.ts.map +1 -0
- package/widgets/index.js +978 -0
- package/widgets/progress.d.ts +133 -0
- package/widgets/progress.d.ts.map +1 -0
- package/widgets/resource.d.ts +163 -0
- package/widgets/resource.d.ts.map +1 -0
- package/src/adapters/index.d.ts +0 -10
- package/src/adapters/index.js +0 -18
- package/src/adapters/index.js.map +0 -1
- package/src/adapters/platform-meta.d.ts +0 -165
- package/src/adapters/platform-meta.js +0 -310
- package/src/adapters/platform-meta.js.map +0 -1
- package/src/base-template/bridge.d.ts +0 -89
- package/src/base-template/bridge.js +0 -452
- package/src/base-template/bridge.js.map +0 -1
- package/src/base-template/default-base-template.d.ts +0 -91
- package/src/base-template/default-base-template.js +0 -435
- package/src/base-template/default-base-template.js.map +0 -1
- package/src/base-template/index.d.ts +0 -14
- package/src/base-template/index.js +0 -30
- package/src/base-template/index.js.map +0 -1
- package/src/base-template/polyfills.d.ts +0 -30
- package/src/base-template/polyfills.js +0 -190
- package/src/base-template/polyfills.js.map +0 -1
- package/src/base-template/theme-styles.d.ts +0 -73
- package/src/base-template/theme-styles.js +0 -95
- package/src/base-template/theme-styles.js.map +0 -1
- package/src/bridge/adapters/base-adapter.d.ts +0 -103
- package/src/bridge/adapters/base-adapter.js +0 -314
- package/src/bridge/adapters/base-adapter.js.map +0 -1
- package/src/bridge/adapters/claude.adapter.d.ts +0 -66
- package/src/bridge/adapters/claude.adapter.js +0 -145
- package/src/bridge/adapters/claude.adapter.js.map +0 -1
- package/src/bridge/adapters/ext-apps.adapter.d.ts +0 -142
- package/src/bridge/adapters/ext-apps.adapter.js +0 -416
- package/src/bridge/adapters/ext-apps.adapter.js.map +0 -1
- package/src/bridge/adapters/gemini.adapter.d.ts +0 -63
- package/src/bridge/adapters/gemini.adapter.js +0 -160
- package/src/bridge/adapters/gemini.adapter.js.map +0 -1
- package/src/bridge/adapters/generic.adapter.d.ts +0 -55
- package/src/bridge/adapters/generic.adapter.js +0 -108
- package/src/bridge/adapters/generic.adapter.js.map +0 -1
- package/src/bridge/adapters/index.d.ts +0 -25
- package/src/bridge/adapters/index.js +0 -65
- package/src/bridge/adapters/index.js.map +0 -1
- package/src/bridge/adapters/openai.adapter.d.ts +0 -64
- package/src/bridge/adapters/openai.adapter.js +0 -194
- package/src/bridge/adapters/openai.adapter.js.map +0 -1
- package/src/bridge/core/adapter-registry.d.ts +0 -121
- package/src/bridge/core/adapter-registry.js +0 -271
- package/src/bridge/core/adapter-registry.js.map +0 -1
- package/src/bridge/core/bridge-factory.d.ts +0 -198
- package/src/bridge/core/bridge-factory.js +0 -428
- package/src/bridge/core/bridge-factory.js.map +0 -1
- package/src/bridge/core/index.d.ts +0 -9
- package/src/bridge/core/index.js +0 -22
- package/src/bridge/core/index.js.map +0 -1
- package/src/bridge/index.d.ts +0 -61
- package/src/bridge/index.js +0 -94
- package/src/bridge/index.js.map +0 -1
- package/src/bridge/runtime/iife-generator.d.ts +0 -61
- package/src/bridge/runtime/iife-generator.js +0 -940
- package/src/bridge/runtime/iife-generator.js.map +0 -1
- package/src/bridge/runtime/index.d.ts +0 -8
- package/src/bridge/runtime/index.js +0 -16
- package/src/bridge/runtime/index.js.map +0 -1
- package/src/bridge/types.d.ts +0 -385
- package/src/bridge/types.js +0 -11
- package/src/bridge/types.js.map +0 -1
- package/src/build/cdn-resources.d.ts +0 -140
- package/src/build/cdn-resources.js +0 -314
- package/src/build/cdn-resources.js.map +0 -1
- package/src/build/index.d.ts +0 -294
- package/src/build/index.js +0 -325
- package/src/build/index.js.map +0 -1
- package/src/build/widget-manifest.d.ts +0 -212
- package/src/build/widget-manifest.js +0 -652
- package/src/build/widget-manifest.js.map +0 -1
- package/src/bundler/bundler.d.ts +0 -110
- package/src/bundler/bundler.js +0 -432
- package/src/bundler/bundler.js.map +0 -1
- package/src/bundler/cache.d.ts +0 -172
- package/src/bundler/cache.js +0 -250
- package/src/bundler/cache.js.map +0 -1
- package/src/bundler/index.d.ts +0 -41
- package/src/bundler/index.js +0 -73
- package/src/bundler/index.js.map +0 -1
- package/src/bundler/sandbox/enclave-adapter.d.ts +0 -120
- package/src/bundler/sandbox/enclave-adapter.js +0 -339
- package/src/bundler/sandbox/enclave-adapter.js.map +0 -1
- package/src/bundler/sandbox/executor.d.ts +0 -13
- package/src/bundler/sandbox/executor.js +0 -22
- package/src/bundler/sandbox/executor.js.map +0 -1
- package/src/bundler/sandbox/policy.d.ts +0 -61
- package/src/bundler/sandbox/policy.js +0 -238
- package/src/bundler/sandbox/policy.js.map +0 -1
- package/src/bundler/types.d.ts +0 -347
- package/src/bundler/types.js +0 -132
- package/src/bundler/types.js.map +0 -1
- package/src/components/alert.d.ts +0 -71
- package/src/components/alert.js +0 -189
- package/src/components/alert.js.map +0 -1
- package/src/components/alert.schema.d.ts +0 -114
- package/src/components/alert.schema.js +0 -105
- package/src/components/alert.schema.js.map +0 -1
- package/src/components/avatar.d.ts +0 -76
- package/src/components/avatar.js +0 -176
- package/src/components/avatar.js.map +0 -1
- package/src/components/avatar.schema.d.ts +0 -169
- package/src/components/avatar.schema.js +0 -103
- package/src/components/avatar.schema.js.map +0 -1
- package/src/components/badge.d.ts +0 -70
- package/src/components/badge.js +0 -149
- package/src/components/badge.js.map +0 -1
- package/src/components/badge.schema.d.ts +0 -109
- package/src/components/badge.schema.js +0 -96
- package/src/components/badge.schema.js.map +0 -1
- package/src/components/button.d.ts +0 -111
- package/src/components/button.js +0 -336
- package/src/components/button.js.map +0 -1
- package/src/components/button.schema.d.ts +0 -148
- package/src/components/button.schema.js +0 -121
- package/src/components/button.schema.js.map +0 -1
- package/src/components/card.d.ts +0 -60
- package/src/components/card.js +0 -117
- package/src/components/card.js.map +0 -1
- package/src/components/card.schema.d.ts +0 -113
- package/src/components/card.schema.js +0 -98
- package/src/components/card.schema.js.map +0 -1
- package/src/components/form.d.ts +0 -239
- package/src/components/form.js +0 -420
- package/src/components/form.js.map +0 -1
- package/src/components/form.schema.d.ts +0 -441
- package/src/components/form.schema.js +0 -406
- package/src/components/form.schema.js.map +0 -1
- package/src/components/index.d.ts +0 -29
- package/src/components/index.js +0 -98
- package/src/components/index.js.map +0 -1
- package/src/components/list.d.ts +0 -127
- package/src/components/list.js +0 -279
- package/src/components/list.js.map +0 -1
- package/src/components/list.schema.d.ts +0 -134
- package/src/components/list.schema.js +0 -168
- package/src/components/list.schema.js.map +0 -1
- package/src/components/modal.d.ts +0 -111
- package/src/components/modal.js +0 -260
- package/src/components/modal.js.map +0 -1
- package/src/components/modal.schema.d.ts +0 -186
- package/src/components/modal.schema.js +0 -167
- package/src/components/modal.schema.js.map +0 -1
- package/src/components/table.d.ts +0 -105
- package/src/components/table.js +0 -283
- package/src/components/table.js.map +0 -1
- package/src/components/table.schema.d.ts +0 -159
- package/src/components/table.schema.js +0 -173
- package/src/components/table.schema.js.map +0 -1
- package/src/handlebars/helpers.d.ts +0 -348
- package/src/handlebars/helpers.js +0 -605
- package/src/handlebars/helpers.js.map +0 -1
- package/src/handlebars/index.d.ts +0 -193
- package/src/handlebars/index.js +0 -350
- package/src/handlebars/index.js.map +0 -1
- package/src/index.d.ts +0 -50
- package/src/index.js +0 -192
- package/src/index.js.map +0 -1
- package/src/layouts/base.d.ts +0 -88
- package/src/layouts/base.js +0 -227
- package/src/layouts/base.js.map +0 -1
- package/src/layouts/index.d.ts +0 -7
- package/src/layouts/index.js +0 -25
- package/src/layouts/index.js.map +0 -1
- package/src/layouts/presets.d.ts +0 -133
- package/src/layouts/presets.js +0 -277
- package/src/layouts/presets.js.map +0 -1
- package/src/pages/consent.d.ts +0 -116
- package/src/pages/consent.js +0 -218
- package/src/pages/consent.js.map +0 -1
- package/src/pages/error.d.ts +0 -100
- package/src/pages/error.js +0 -263
- package/src/pages/error.js.map +0 -1
- package/src/pages/index.d.ts +0 -8
- package/src/pages/index.js +0 -27
- package/src/pages/index.js.map +0 -1
- package/src/react/Alert.d.ts +0 -101
- package/src/react/Alert.js +0 -51
- package/src/react/Alert.js.map +0 -1
- package/src/react/Badge.d.ts +0 -100
- package/src/react/Badge.js +0 -55
- package/src/react/Badge.js.map +0 -1
- package/src/react/Button.d.ts +0 -108
- package/src/react/Button.js +0 -52
- package/src/react/Button.js.map +0 -1
- package/src/react/Card.d.ts +0 -103
- package/src/react/Card.js +0 -55
- package/src/react/Card.js.map +0 -1
- package/src/react/hooks/context.d.ts +0 -178
- package/src/react/hooks/context.js +0 -287
- package/src/react/hooks/context.js.map +0 -1
- package/src/react/hooks/index.d.ts +0 -41
- package/src/react/hooks/index.js +0 -61
- package/src/react/hooks/index.js.map +0 -1
- package/src/react/hooks/tools.d.ts +0 -283
- package/src/react/hooks/tools.js +0 -465
- package/src/react/hooks/tools.js.map +0 -1
- package/src/react/index.d.ts +0 -80
- package/src/react/index.js +0 -113
- package/src/react/index.js.map +0 -1
- package/src/react/types.d.ts +0 -105
- package/src/react/types.js +0 -12
- package/src/react/types.js.map +0 -1
- package/src/react/utils.d.ts +0 -42
- package/src/react/utils.js +0 -99
- package/src/react/utils.js.map +0 -1
- package/src/registry/index.d.ts +0 -45
- package/src/registry/index.js +0 -67
- package/src/registry/index.js.map +0 -1
- package/src/registry/render-template.d.ts +0 -86
- package/src/registry/render-template.js +0 -239
- package/src/registry/render-template.js.map +0 -1
- package/src/registry/tool-ui.registry.d.ts +0 -260
- package/src/registry/tool-ui.registry.js +0 -438
- package/src/registry/tool-ui.registry.js.map +0 -1
- package/src/registry/uri-utils.d.ts +0 -55
- package/src/registry/uri-utils.js +0 -97
- package/src/registry/uri-utils.js.map +0 -1
- package/src/render/index.d.ts +0 -7
- package/src/render/index.js +0 -14
- package/src/render/index.js.map +0 -1
- package/src/render/prerender.d.ts +0 -56
- package/src/render/prerender.js +0 -98
- package/src/render/prerender.js.map +0 -1
- package/src/renderers/cache.d.ts +0 -144
- package/src/renderers/cache.js +0 -240
- package/src/renderers/cache.js.map +0 -1
- package/src/renderers/html.renderer.d.ts +0 -122
- package/src/renderers/html.renderer.js +0 -204
- package/src/renderers/html.renderer.js.map +0 -1
- package/src/renderers/index.d.ts +0 -35
- package/src/renderers/index.js +0 -70
- package/src/renderers/index.js.map +0 -1
- package/src/renderers/mdx.renderer.d.ts +0 -119
- package/src/renderers/mdx.renderer.js +0 -305
- package/src/renderers/mdx.renderer.js.map +0 -1
- package/src/renderers/react.renderer.d.ts +0 -95
- package/src/renderers/react.renderer.js +0 -260
- package/src/renderers/react.renderer.js.map +0 -1
- package/src/renderers/registry.d.ts +0 -133
- package/src/renderers/registry.js +0 -232
- package/src/renderers/registry.js.map +0 -1
- package/src/renderers/types.d.ts +0 -341
- package/src/renderers/types.js +0 -9
- package/src/renderers/types.js.map +0 -1
- package/src/renderers/utils/detect.d.ts +0 -106
- package/src/renderers/utils/detect.js +0 -267
- package/src/renderers/utils/detect.js.map +0 -1
- package/src/renderers/utils/hash.d.ts +0 -39
- package/src/renderers/utils/hash.js +0 -75
- package/src/renderers/utils/hash.js.map +0 -1
- package/src/renderers/utils/index.d.ts +0 -8
- package/src/renderers/utils/index.js +0 -28
- package/src/renderers/utils/index.js.map +0 -1
- package/src/renderers/utils/transpiler.d.ts +0 -88
- package/src/renderers/utils/transpiler.js +0 -215
- package/src/renderers/utils/transpiler.js.map +0 -1
- package/src/runtime/adapters/html.adapter.d.ts +0 -58
- package/src/runtime/adapters/html.adapter.js +0 -131
- package/src/runtime/adapters/html.adapter.js.map +0 -1
- package/src/runtime/adapters/index.d.ts +0 -25
- package/src/runtime/adapters/index.js +0 -54
- package/src/runtime/adapters/index.js.map +0 -1
- package/src/runtime/adapters/mdx.adapter.d.ts +0 -72
- package/src/runtime/adapters/mdx.adapter.js +0 -241
- package/src/runtime/adapters/mdx.adapter.js.map +0 -1
- package/src/runtime/adapters/react.adapter.d.ts +0 -69
- package/src/runtime/adapters/react.adapter.js +0 -245
- package/src/runtime/adapters/react.adapter.js.map +0 -1
- package/src/runtime/adapters/types.d.ts +0 -94
- package/src/runtime/adapters/types.js +0 -11
- package/src/runtime/adapters/types.js.map +0 -1
- package/src/runtime/csp.d.ts +0 -37
- package/src/runtime/csp.js +0 -140
- package/src/runtime/csp.js.map +0 -1
- package/src/runtime/index.d.ts +0 -16
- package/src/runtime/index.js +0 -72
- package/src/runtime/index.js.map +0 -1
- package/src/runtime/mcp-bridge.d.ts +0 -100
- package/src/runtime/mcp-bridge.js +0 -581
- package/src/runtime/mcp-bridge.js.map +0 -1
- package/src/runtime/renderer-runtime.d.ts +0 -132
- package/src/runtime/renderer-runtime.js +0 -389
- package/src/runtime/renderer-runtime.js.map +0 -1
- package/src/runtime/sanitizer.d.ts +0 -171
- package/src/runtime/sanitizer.js +0 -318
- package/src/runtime/sanitizer.js.map +0 -1
- package/src/runtime/types.d.ts +0 -414
- package/src/runtime/types.js +0 -12
- package/src/runtime/types.js.map +0 -1
- package/src/runtime/wrapper.d.ts +0 -375
- package/src/runtime/wrapper.js +0 -1793
- package/src/runtime/wrapper.js.map +0 -1
- package/src/styles/index.d.ts +0 -7
- package/src/styles/index.js +0 -11
- package/src/styles/index.js.map +0 -1
- package/src/styles/variants.d.ts +0 -50
- package/src/styles/variants.js +0 -175
- package/src/styles/variants.js.map +0 -1
- package/src/theme/cdn.d.ts +0 -194
- package/src/theme/cdn.js +0 -375
- package/src/theme/cdn.js.map +0 -1
- package/src/theme/index.d.ts +0 -17
- package/src/theme/index.js +0 -57
- package/src/theme/index.js.map +0 -1
- package/src/theme/platforms.d.ts +0 -106
- package/src/theme/platforms.js +0 -161
- package/src/theme/platforms.js.map +0 -1
- package/src/theme/presets/github-openai.d.ts +0 -49
- package/src/theme/presets/github-openai.js +0 -189
- package/src/theme/presets/github-openai.js.map +0 -1
- package/src/theme/presets/index.d.ts +0 -10
- package/src/theme/presets/index.js +0 -17
- package/src/theme/presets/index.js.map +0 -1
- package/src/theme/theme.d.ts +0 -395
- package/src/theme/theme.js +0 -332
- package/src/theme/theme.js.map +0 -1
- package/src/tool-template/builder.d.ts +0 -212
- package/src/tool-template/builder.js +0 -397
- package/src/tool-template/builder.js.map +0 -1
- package/src/tool-template/index.d.ts +0 -15
- package/src/tool-template/index.js +0 -38
- package/src/tool-template/index.js.map +0 -1
- package/src/types/index.d.ts +0 -13
- package/src/types/index.js +0 -26
- package/src/types/index.js.map +0 -1
- package/src/types/ui-config.d.ts +0 -357
- package/src/types/ui-config.js +0 -12
- package/src/types/ui-config.js.map +0 -1
- package/src/types/ui-runtime.d.ts +0 -965
- package/src/types/ui-runtime.js +0 -117
- package/src/types/ui-runtime.js.map +0 -1
- package/src/validation/error-box.d.ts +0 -55
- package/src/validation/error-box.js +0 -75
- package/src/validation/error-box.js.map +0 -1
- package/src/validation/index.d.ts +0 -12
- package/src/validation/index.js +0 -21
- package/src/validation/index.js.map +0 -1
- package/src/validation/wrapper.d.ts +0 -96
- package/src/validation/wrapper.js +0 -117
- package/src/validation/wrapper.js.map +0 -1
- package/src/web-components/core/attribute-parser.d.ts +0 -85
- package/src/web-components/core/attribute-parser.js +0 -189
- package/src/web-components/core/attribute-parser.js.map +0 -1
- package/src/web-components/core/base-element.d.ts +0 -197
- package/src/web-components/core/base-element.js +0 -289
- package/src/web-components/core/base-element.js.map +0 -1
- package/src/web-components/core/index.d.ts +0 -8
- package/src/web-components/core/index.js +0 -18
- package/src/web-components/core/index.js.map +0 -1
- package/src/web-components/elements/fmcp-alert.d.ts +0 -45
- package/src/web-components/elements/fmcp-alert.js +0 -93
- package/src/web-components/elements/fmcp-alert.js.map +0 -1
- package/src/web-components/elements/fmcp-badge.d.ts +0 -46
- package/src/web-components/elements/fmcp-badge.js +0 -99
- package/src/web-components/elements/fmcp-badge.js.map +0 -1
- package/src/web-components/elements/fmcp-button.d.ts +0 -124
- package/src/web-components/elements/fmcp-button.js +0 -233
- package/src/web-components/elements/fmcp-button.js.map +0 -1
- package/src/web-components/elements/fmcp-card.d.ts +0 -52
- package/src/web-components/elements/fmcp-card.js +0 -115
- package/src/web-components/elements/fmcp-card.js.map +0 -1
- package/src/web-components/elements/fmcp-input.d.ts +0 -95
- package/src/web-components/elements/fmcp-input.js +0 -248
- package/src/web-components/elements/fmcp-input.js.map +0 -1
- package/src/web-components/elements/fmcp-select.d.ts +0 -99
- package/src/web-components/elements/fmcp-select.js +0 -243
- package/src/web-components/elements/fmcp-select.js.map +0 -1
- package/src/web-components/elements/index.d.ts +0 -12
- package/src/web-components/elements/index.js +0 -34
- package/src/web-components/elements/index.js.map +0 -1
- package/src/web-components/index.d.ts +0 -49
- package/src/web-components/index.js +0 -75
- package/src/web-components/index.js.map +0 -1
- package/src/web-components/register.d.ts +0 -56
- package/src/web-components/register.js +0 -80
- package/src/web-components/register.js.map +0 -1
- package/src/web-components/types.d.ts +0 -121
- package/src/web-components/types.js +0 -25
- package/src/web-components/types.js.map +0 -1
- package/src/widgets/index.d.ts +0 -7
- package/src/widgets/index.js +0 -24
- package/src/widgets/index.js.map +0 -1
- package/src/widgets/progress.d.ts +0 -132
- package/src/widgets/progress.js +0 -303
- package/src/widgets/progress.js.map +0 -1
- package/src/widgets/resource.d.ts +0 -162
- package/src/widgets/resource.js +0 -340
- package/src/widgets/resource.js.map +0 -1
|
@@ -1,238 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* Sandbox Security Policy
|
|
4
|
-
*
|
|
5
|
-
* Defines and validates security policies for bundler execution.
|
|
6
|
-
*
|
|
7
|
-
* @packageDocumentation
|
|
8
|
-
*/
|
|
9
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
-
exports.SecurityError = void 0;
|
|
11
|
-
exports.validateSource = validateSource;
|
|
12
|
-
exports.validateImports = validateImports;
|
|
13
|
-
exports.validateSize = validateSize;
|
|
14
|
-
exports.mergePolicy = mergePolicy;
|
|
15
|
-
exports.throwOnViolations = throwOnViolations;
|
|
16
|
-
const types_1 = require("../types");
|
|
17
|
-
/**
|
|
18
|
-
* Patterns that indicate unsafe code.
|
|
19
|
-
*/
|
|
20
|
-
const UNSAFE_PATTERNS = {
|
|
21
|
-
eval: /\beval\s*\(/g,
|
|
22
|
-
functionConstructor: /\bnew\s+Function\s*\(/g,
|
|
23
|
-
dynamicImport: /\bimport\s*\(/g,
|
|
24
|
-
require: /\brequire\s*\(/g,
|
|
25
|
-
processEnv: /\bprocess\.env\b/g,
|
|
26
|
-
globalThis: /\bglobalThis\b/g,
|
|
27
|
-
windowLocation: /\bwindow\.location\b/g,
|
|
28
|
-
documentCookie: /\bdocument\.cookie\b/g,
|
|
29
|
-
innerHTML: /\.innerHTML\s*=/g,
|
|
30
|
-
outerHTML: /\.outerHTML\s*=/g,
|
|
31
|
-
document_write: /\bdocument\.write\s*\(/g,
|
|
32
|
-
};
|
|
33
|
-
/**
|
|
34
|
-
* Validate source code against a security policy.
|
|
35
|
-
*
|
|
36
|
-
* @param source - Source code to validate
|
|
37
|
-
* @param policy - Security policy to enforce
|
|
38
|
-
* @returns Array of security violations (empty if valid)
|
|
39
|
-
*
|
|
40
|
-
* @example
|
|
41
|
-
* ```typescript
|
|
42
|
-
* const violations = validateSource(code, DEFAULT_SECURITY_POLICY);
|
|
43
|
-
* if (violations.length > 0) {
|
|
44
|
-
* throw new Error(`Security violations: ${violations.map(v => v.message).join(', ')}`);
|
|
45
|
-
* }
|
|
46
|
-
* ```
|
|
47
|
-
*/
|
|
48
|
-
function validateSource(source, policy = types_1.DEFAULT_SECURITY_POLICY) {
|
|
49
|
-
const violations = [];
|
|
50
|
-
// Check for eval usage
|
|
51
|
-
if (policy.noEval !== false) {
|
|
52
|
-
const evalMatches = [...source.matchAll(UNSAFE_PATTERNS.eval)];
|
|
53
|
-
for (const match of evalMatches) {
|
|
54
|
-
violations.push({
|
|
55
|
-
type: 'eval-usage',
|
|
56
|
-
message: 'eval() is not allowed for security reasons',
|
|
57
|
-
location: getLocation(source, match.index ?? 0),
|
|
58
|
-
value: match[0],
|
|
59
|
-
});
|
|
60
|
-
}
|
|
61
|
-
const fnMatches = [...source.matchAll(UNSAFE_PATTERNS.functionConstructor)];
|
|
62
|
-
for (const match of fnMatches) {
|
|
63
|
-
violations.push({
|
|
64
|
-
type: 'eval-usage',
|
|
65
|
-
message: 'new Function() is not allowed for security reasons',
|
|
66
|
-
location: getLocation(source, match.index ?? 0),
|
|
67
|
-
value: match[0],
|
|
68
|
-
});
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
// Check for dynamic imports
|
|
72
|
-
if (policy.noDynamicImports !== false) {
|
|
73
|
-
const matches = [...source.matchAll(UNSAFE_PATTERNS.dynamicImport)];
|
|
74
|
-
for (const match of matches) {
|
|
75
|
-
violations.push({
|
|
76
|
-
type: 'dynamic-import',
|
|
77
|
-
message: 'Dynamic imports are not allowed for security reasons',
|
|
78
|
-
location: getLocation(source, match.index ?? 0),
|
|
79
|
-
value: match[0],
|
|
80
|
-
});
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
// Check for require usage
|
|
84
|
-
if (policy.noRequire !== false) {
|
|
85
|
-
const matches = [...source.matchAll(UNSAFE_PATTERNS.require)];
|
|
86
|
-
for (const match of matches) {
|
|
87
|
-
violations.push({
|
|
88
|
-
type: 'require-usage',
|
|
89
|
-
message: 'require() is not allowed for security reasons',
|
|
90
|
-
location: getLocation(source, match.index ?? 0),
|
|
91
|
-
value: match[0],
|
|
92
|
-
});
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
// Validate imports
|
|
96
|
-
const importViolations = validateImports(source, policy);
|
|
97
|
-
violations.push(...importViolations);
|
|
98
|
-
return violations;
|
|
99
|
-
}
|
|
100
|
-
/**
|
|
101
|
-
* Validate import statements against policy.
|
|
102
|
-
*
|
|
103
|
-
* @param source - Source code to check
|
|
104
|
-
* @param policy - Security policy
|
|
105
|
-
* @returns Array of import violations
|
|
106
|
-
*/
|
|
107
|
-
function validateImports(source, policy = types_1.DEFAULT_SECURITY_POLICY) {
|
|
108
|
-
const violations = [];
|
|
109
|
-
// Extract import statements
|
|
110
|
-
const importPattern = /import\s+(?:(?:\{[^}]*\}|[\w*]+)\s+from\s+)?['"]([^'"]+)['"]/g;
|
|
111
|
-
const imports = [];
|
|
112
|
-
let match;
|
|
113
|
-
while ((match = importPattern.exec(source)) !== null) {
|
|
114
|
-
imports.push({ module: match[1], index: match.index });
|
|
115
|
-
}
|
|
116
|
-
// Also check for require-style imports that might slip through
|
|
117
|
-
const requirePattern = /require\s*\(\s*['"]([^'"]+)['"]\s*\)/g;
|
|
118
|
-
while ((match = requirePattern.exec(source)) !== null) {
|
|
119
|
-
imports.push({ module: match[1], index: match.index });
|
|
120
|
-
}
|
|
121
|
-
for (const imp of imports) {
|
|
122
|
-
// Check blocked imports first
|
|
123
|
-
if (policy.blockedImports) {
|
|
124
|
-
for (const blocked of policy.blockedImports) {
|
|
125
|
-
if (blocked.test(imp.module)) {
|
|
126
|
-
violations.push({
|
|
127
|
-
type: 'blocked-import',
|
|
128
|
-
message: `Import '${imp.module}' is blocked by security policy`,
|
|
129
|
-
location: getLocation(source, imp.index),
|
|
130
|
-
value: imp.module,
|
|
131
|
-
});
|
|
132
|
-
break;
|
|
133
|
-
}
|
|
134
|
-
}
|
|
135
|
-
}
|
|
136
|
-
// Check if import is in allowed list
|
|
137
|
-
if (policy.allowedImports && policy.allowedImports.length > 0) {
|
|
138
|
-
const isAllowed = policy.allowedImports.some((pattern) => pattern.test(imp.module));
|
|
139
|
-
if (!isAllowed) {
|
|
140
|
-
// Check if already reported as blocked
|
|
141
|
-
const alreadyBlocked = violations.some((v) => v.type === 'blocked-import' && v.value === imp.module);
|
|
142
|
-
if (!alreadyBlocked) {
|
|
143
|
-
violations.push({
|
|
144
|
-
type: 'disallowed-import',
|
|
145
|
-
message: `Import '${imp.module}' is not in the allowed imports list`,
|
|
146
|
-
location: getLocation(source, imp.index),
|
|
147
|
-
value: imp.module,
|
|
148
|
-
});
|
|
149
|
-
}
|
|
150
|
-
}
|
|
151
|
-
}
|
|
152
|
-
}
|
|
153
|
-
return violations;
|
|
154
|
-
}
|
|
155
|
-
/**
|
|
156
|
-
* Validate bundle size against policy.
|
|
157
|
-
*
|
|
158
|
-
* @param size - Bundle size in bytes
|
|
159
|
-
* @param policy - Security policy
|
|
160
|
-
* @returns Violation if size exceeds limit, undefined otherwise
|
|
161
|
-
*/
|
|
162
|
-
function validateSize(size, policy = types_1.DEFAULT_SECURITY_POLICY) {
|
|
163
|
-
const maxSize = policy.maxBundleSize ?? types_1.DEFAULT_SECURITY_POLICY.maxBundleSize ?? 512000;
|
|
164
|
-
if (size > maxSize) {
|
|
165
|
-
return {
|
|
166
|
-
type: 'size-exceeded',
|
|
167
|
-
message: `Bundle size (${formatBytes(size)}) exceeds maximum allowed (${formatBytes(maxSize)})`,
|
|
168
|
-
value: String(size),
|
|
169
|
-
};
|
|
170
|
-
}
|
|
171
|
-
return undefined;
|
|
172
|
-
}
|
|
173
|
-
/**
|
|
174
|
-
* Create a merged security policy with defaults.
|
|
175
|
-
*
|
|
176
|
-
* @param userPolicy - User-provided policy overrides
|
|
177
|
-
* @returns Merged policy with defaults
|
|
178
|
-
*/
|
|
179
|
-
function mergePolicy(userPolicy) {
|
|
180
|
-
if (!userPolicy) {
|
|
181
|
-
return { ...types_1.DEFAULT_SECURITY_POLICY };
|
|
182
|
-
}
|
|
183
|
-
return {
|
|
184
|
-
allowedImports: userPolicy.allowedImports ?? types_1.DEFAULT_SECURITY_POLICY.allowedImports,
|
|
185
|
-
blockedImports: userPolicy.blockedImports ?? types_1.DEFAULT_SECURITY_POLICY.blockedImports,
|
|
186
|
-
maxBundleSize: userPolicy.maxBundleSize ?? types_1.DEFAULT_SECURITY_POLICY.maxBundleSize,
|
|
187
|
-
maxTransformTime: userPolicy.maxTransformTime ?? types_1.DEFAULT_SECURITY_POLICY.maxTransformTime,
|
|
188
|
-
noEval: userPolicy.noEval ?? types_1.DEFAULT_SECURITY_POLICY.noEval,
|
|
189
|
-
noDynamicImports: userPolicy.noDynamicImports ?? types_1.DEFAULT_SECURITY_POLICY.noDynamicImports,
|
|
190
|
-
noRequire: userPolicy.noRequire ?? types_1.DEFAULT_SECURITY_POLICY.noRequire,
|
|
191
|
-
allowedGlobals: userPolicy.allowedGlobals ?? types_1.DEFAULT_SECURITY_POLICY.allowedGlobals,
|
|
192
|
-
};
|
|
193
|
-
}
|
|
194
|
-
/**
|
|
195
|
-
* Get line and column from source index.
|
|
196
|
-
*/
|
|
197
|
-
function getLocation(source, index) {
|
|
198
|
-
const lines = source.slice(0, index).split('\n');
|
|
199
|
-
return {
|
|
200
|
-
line: lines.length,
|
|
201
|
-
column: lines[lines.length - 1].length + 1,
|
|
202
|
-
};
|
|
203
|
-
}
|
|
204
|
-
/**
|
|
205
|
-
* Format bytes to human-readable string.
|
|
206
|
-
*/
|
|
207
|
-
function formatBytes(bytes) {
|
|
208
|
-
if (bytes < 1024)
|
|
209
|
-
return `${bytes} B`;
|
|
210
|
-
if (bytes < 1024 * 1024)
|
|
211
|
-
return `${(bytes / 1024).toFixed(1)} KB`;
|
|
212
|
-
return `${(bytes / (1024 * 1024)).toFixed(1)} MB`;
|
|
213
|
-
}
|
|
214
|
-
/**
|
|
215
|
-
* Security error thrown when policy is violated.
|
|
216
|
-
*/
|
|
217
|
-
class SecurityError extends Error {
|
|
218
|
-
violations;
|
|
219
|
-
constructor(message, violations) {
|
|
220
|
-
super(message);
|
|
221
|
-
this.name = 'SecurityError';
|
|
222
|
-
this.violations = violations;
|
|
223
|
-
}
|
|
224
|
-
}
|
|
225
|
-
exports.SecurityError = SecurityError;
|
|
226
|
-
/**
|
|
227
|
-
* Throw if any violations exist.
|
|
228
|
-
*
|
|
229
|
-
* @param violations - Array of violations to check
|
|
230
|
-
* @throws SecurityError if violations exist
|
|
231
|
-
*/
|
|
232
|
-
function throwOnViolations(violations) {
|
|
233
|
-
if (violations.length > 0) {
|
|
234
|
-
const message = violations.map((v) => v.message).join('; ');
|
|
235
|
-
throw new SecurityError(`Security policy violation: ${message}`, violations);
|
|
236
|
-
}
|
|
237
|
-
}
|
|
238
|
-
//# sourceMappingURL=policy.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"policy.js","sourceRoot":"","sources":["../../../../src/bundler/sandbox/policy.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Sandbox Security Policy\n *\n * Defines and validates security policies for bundler execution.\n *\n * @packageDocumentation\n */\n\nimport type { SecurityPolicy, SecurityViolation } from '../types';\nimport { DEFAULT_SECURITY_POLICY } from '../types';\n\n/**\n * Patterns that indicate unsafe code.\n */\nconst UNSAFE_PATTERNS = {\n eval: /\\beval\\s*\\(/g,\n functionConstructor: /\\bnew\\s+Function\\s*\\(/g,\n dynamicImport: /\\bimport\\s*\\(/g,\n require: /\\brequire\\s*\\(/g,\n processEnv: /\\bprocess\\.env\\b/g,\n globalThis: /\\bglobalThis\\b/g,\n windowLocation: /\\bwindow\\.location\\b/g,\n documentCookie: /\\bdocument\\.cookie\\b/g,\n innerHTML: /\\.innerHTML\\s*=/g,\n outerHTML: /\\.outerHTML\\s*=/g,\n document_write: /\\bdocument\\.write\\s*\\(/g,\n};\n\n/**\n * Validate source code against a security policy.\n *\n * @param source - Source code to validate\n * @param policy - Security policy to enforce\n * @returns Array of security violations (empty if valid)\n *\n * @example\n * ```typescript\n * const violations = validateSource(code, DEFAULT_SECURITY_POLICY);\n * if (violations.length > 0) {\n * throw new Error(`Security violations: ${violations.map(v => v.message).join(', ')}`);\n * }\n * ```\n */\nexport function validateSource(source: string, policy: SecurityPolicy = DEFAULT_SECURITY_POLICY): SecurityViolation[] {\n const violations: SecurityViolation[] = [];\n\n // Check for eval usage\n if (policy.noEval !== false) {\n const evalMatches = [...source.matchAll(UNSAFE_PATTERNS.eval)];\n for (const match of evalMatches) {\n violations.push({\n type: 'eval-usage',\n message: 'eval() is not allowed for security reasons',\n location: getLocation(source, match.index ?? 0),\n value: match[0],\n });\n }\n\n const fnMatches = [...source.matchAll(UNSAFE_PATTERNS.functionConstructor)];\n for (const match of fnMatches) {\n violations.push({\n type: 'eval-usage',\n message: 'new Function() is not allowed for security reasons',\n location: getLocation(source, match.index ?? 0),\n value: match[0],\n });\n }\n }\n\n // Check for dynamic imports\n if (policy.noDynamicImports !== false) {\n const matches = [...source.matchAll(UNSAFE_PATTERNS.dynamicImport)];\n for (const match of matches) {\n violations.push({\n type: 'dynamic-import',\n message: 'Dynamic imports are not allowed for security reasons',\n location: getLocation(source, match.index ?? 0),\n value: match[0],\n });\n }\n }\n\n // Check for require usage\n if (policy.noRequire !== false) {\n const matches = [...source.matchAll(UNSAFE_PATTERNS.require)];\n for (const match of matches) {\n violations.push({\n type: 'require-usage',\n message: 'require() is not allowed for security reasons',\n location: getLocation(source, match.index ?? 0),\n value: match[0],\n });\n }\n }\n\n // Validate imports\n const importViolations = validateImports(source, policy);\n violations.push(...importViolations);\n\n return violations;\n}\n\n/**\n * Validate import statements against policy.\n *\n * @param source - Source code to check\n * @param policy - Security policy\n * @returns Array of import violations\n */\nexport function validateImports(source: string, policy: SecurityPolicy = DEFAULT_SECURITY_POLICY): SecurityViolation[] {\n const violations: SecurityViolation[] = [];\n\n // Extract import statements\n const importPattern = /import\\s+(?:(?:\\{[^}]*\\}|[\\w*]+)\\s+from\\s+)?['\"]([^'\"]+)['\"]/g;\n const imports: Array<{ module: string; index: number }> = [];\n\n let match;\n while ((match = importPattern.exec(source)) !== null) {\n imports.push({ module: match[1], index: match.index });\n }\n\n // Also check for require-style imports that might slip through\n const requirePattern = /require\\s*\\(\\s*['\"]([^'\"]+)['\"]\\s*\\)/g;\n while ((match = requirePattern.exec(source)) !== null) {\n imports.push({ module: match[1], index: match.index });\n }\n\n for (const imp of imports) {\n // Check blocked imports first\n if (policy.blockedImports) {\n for (const blocked of policy.blockedImports) {\n if (blocked.test(imp.module)) {\n violations.push({\n type: 'blocked-import',\n message: `Import '${imp.module}' is blocked by security policy`,\n location: getLocation(source, imp.index),\n value: imp.module,\n });\n break;\n }\n }\n }\n\n // Check if import is in allowed list\n if (policy.allowedImports && policy.allowedImports.length > 0) {\n const isAllowed = policy.allowedImports.some((pattern) => pattern.test(imp.module));\n if (!isAllowed) {\n // Check if already reported as blocked\n const alreadyBlocked = violations.some((v) => v.type === 'blocked-import' && v.value === imp.module);\n if (!alreadyBlocked) {\n violations.push({\n type: 'disallowed-import',\n message: `Import '${imp.module}' is not in the allowed imports list`,\n location: getLocation(source, imp.index),\n value: imp.module,\n });\n }\n }\n }\n }\n\n return violations;\n}\n\n/**\n * Validate bundle size against policy.\n *\n * @param size - Bundle size in bytes\n * @param policy - Security policy\n * @returns Violation if size exceeds limit, undefined otherwise\n */\nexport function validateSize(\n size: number,\n policy: SecurityPolicy = DEFAULT_SECURITY_POLICY,\n): SecurityViolation | undefined {\n const maxSize = policy.maxBundleSize ?? DEFAULT_SECURITY_POLICY.maxBundleSize ?? 512000;\n\n if (size > maxSize) {\n return {\n type: 'size-exceeded',\n message: `Bundle size (${formatBytes(size)}) exceeds maximum allowed (${formatBytes(maxSize)})`,\n value: String(size),\n };\n }\n\n return undefined;\n}\n\n/**\n * Create a merged security policy with defaults.\n *\n * @param userPolicy - User-provided policy overrides\n * @returns Merged policy with defaults\n */\nexport function mergePolicy(userPolicy?: Partial<SecurityPolicy>): SecurityPolicy {\n if (!userPolicy) {\n return { ...DEFAULT_SECURITY_POLICY };\n }\n\n return {\n allowedImports: userPolicy.allowedImports ?? DEFAULT_SECURITY_POLICY.allowedImports,\n blockedImports: userPolicy.blockedImports ?? DEFAULT_SECURITY_POLICY.blockedImports,\n maxBundleSize: userPolicy.maxBundleSize ?? DEFAULT_SECURITY_POLICY.maxBundleSize,\n maxTransformTime: userPolicy.maxTransformTime ?? DEFAULT_SECURITY_POLICY.maxTransformTime,\n noEval: userPolicy.noEval ?? DEFAULT_SECURITY_POLICY.noEval,\n noDynamicImports: userPolicy.noDynamicImports ?? DEFAULT_SECURITY_POLICY.noDynamicImports,\n noRequire: userPolicy.noRequire ?? DEFAULT_SECURITY_POLICY.noRequire,\n allowedGlobals: userPolicy.allowedGlobals ?? DEFAULT_SECURITY_POLICY.allowedGlobals,\n };\n}\n\n/**\n * Get line and column from source index.\n */\nfunction getLocation(source: string, index: number): { line: number; column: number } {\n const lines = source.slice(0, index).split('\\n');\n return {\n line: lines.length,\n column: lines[lines.length - 1].length + 1,\n };\n}\n\n/**\n * Format bytes to human-readable string.\n */\nfunction formatBytes(bytes: number): string {\n if (bytes < 1024) return `${bytes} B`;\n if (bytes < 1024 * 1024) return `${(bytes / 1024).toFixed(1)} KB`;\n return `${(bytes / (1024 * 1024)).toFixed(1)} MB`;\n}\n\n/**\n * Security error thrown when policy is violated.\n */\nexport class SecurityError extends Error {\n readonly violations: SecurityViolation[];\n\n constructor(message: string, violations: SecurityViolation[]) {\n super(message);\n this.name = 'SecurityError';\n this.violations = violations;\n }\n}\n\n/**\n * Throw if any violations exist.\n *\n * @param violations - Array of violations to check\n * @throws SecurityError if violations exist\n */\nexport function throwOnViolations(violations: SecurityViolation[]): void {\n if (violations.length > 0) {\n const message = violations.map((v) => v.message).join('; ');\n throw new SecurityError(`Security policy violation: ${message}`, violations);\n }\n}\n"]}
|
package/src/bundler/types.d.ts
DELETED
|
@@ -1,347 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Bundler Types
|
|
3
|
-
*
|
|
4
|
-
* Type definitions for the in-memory bundler system.
|
|
5
|
-
*
|
|
6
|
-
* @packageDocumentation
|
|
7
|
-
*/
|
|
8
|
-
/**
|
|
9
|
-
* Source type for bundler input.
|
|
10
|
-
*/
|
|
11
|
-
export type SourceType = 'jsx' | 'tsx' | 'mdx' | 'html' | 'auto';
|
|
12
|
-
/**
|
|
13
|
-
* Output format for bundles.
|
|
14
|
-
*/
|
|
15
|
-
export type OutputFormat = 'iife' | 'esm' | 'cjs';
|
|
16
|
-
/**
|
|
17
|
-
* Options for bundling source code.
|
|
18
|
-
*/
|
|
19
|
-
export interface BundleOptions {
|
|
20
|
-
/**
|
|
21
|
-
* Source code to bundle.
|
|
22
|
-
*/
|
|
23
|
-
source: string;
|
|
24
|
-
/**
|
|
25
|
-
* Source type (jsx, tsx, mdx, html, or auto).
|
|
26
|
-
* @default 'auto'
|
|
27
|
-
*/
|
|
28
|
-
sourceType?: SourceType;
|
|
29
|
-
/**
|
|
30
|
-
* Output format.
|
|
31
|
-
* @default 'iife'
|
|
32
|
-
*/
|
|
33
|
-
format?: OutputFormat;
|
|
34
|
-
/**
|
|
35
|
-
* Minify output code.
|
|
36
|
-
* @default false
|
|
37
|
-
*/
|
|
38
|
-
minify?: boolean;
|
|
39
|
-
/**
|
|
40
|
-
* Generate source maps.
|
|
41
|
-
* @default false
|
|
42
|
-
*/
|
|
43
|
-
sourceMaps?: boolean | 'inline';
|
|
44
|
-
/**
|
|
45
|
-
* External modules (not bundled).
|
|
46
|
-
* @default ['react', 'react-dom']
|
|
47
|
-
*/
|
|
48
|
-
externals?: string[];
|
|
49
|
-
/**
|
|
50
|
-
* JSX configuration.
|
|
51
|
-
*/
|
|
52
|
-
jsx?: {
|
|
53
|
-
/**
|
|
54
|
-
* JSX runtime mode.
|
|
55
|
-
* @default 'automatic'
|
|
56
|
-
*/
|
|
57
|
-
runtime?: 'automatic' | 'classic';
|
|
58
|
-
/**
|
|
59
|
-
* Import source for automatic runtime.
|
|
60
|
-
* @default 'react'
|
|
61
|
-
*/
|
|
62
|
-
importSource?: string;
|
|
63
|
-
};
|
|
64
|
-
/**
|
|
65
|
-
* Security policy for bundling.
|
|
66
|
-
*/
|
|
67
|
-
security?: SecurityPolicy;
|
|
68
|
-
/**
|
|
69
|
-
* Target environment.
|
|
70
|
-
* @default 'es2020'
|
|
71
|
-
*/
|
|
72
|
-
target?: string;
|
|
73
|
-
/**
|
|
74
|
-
* Global variable name for IIFE format.
|
|
75
|
-
* @default 'Widget'
|
|
76
|
-
*/
|
|
77
|
-
globalName?: string;
|
|
78
|
-
/**
|
|
79
|
-
* Cache key override. If not provided, computed from source hash.
|
|
80
|
-
*/
|
|
81
|
-
cacheKey?: string;
|
|
82
|
-
/**
|
|
83
|
-
* Skip cache lookup.
|
|
84
|
-
* @default false
|
|
85
|
-
*/
|
|
86
|
-
skipCache?: boolean;
|
|
87
|
-
}
|
|
88
|
-
/**
|
|
89
|
-
* Options specifically for SSR bundling.
|
|
90
|
-
*/
|
|
91
|
-
export interface SSRBundleOptions extends BundleOptions {
|
|
92
|
-
/**
|
|
93
|
-
* Context data to inject during SSR.
|
|
94
|
-
*/
|
|
95
|
-
context?: Record<string, unknown>;
|
|
96
|
-
/**
|
|
97
|
-
* Component export name to render.
|
|
98
|
-
* @default 'default'
|
|
99
|
-
*/
|
|
100
|
-
componentExport?: string;
|
|
101
|
-
/**
|
|
102
|
-
* Whether to include hydration script.
|
|
103
|
-
* @default false
|
|
104
|
-
*/
|
|
105
|
-
includeHydration?: boolean;
|
|
106
|
-
}
|
|
107
|
-
/**
|
|
108
|
-
* Result of a bundle operation.
|
|
109
|
-
*/
|
|
110
|
-
export interface BundleResult {
|
|
111
|
-
/**
|
|
112
|
-
* Bundled/transformed code.
|
|
113
|
-
*/
|
|
114
|
-
code: string;
|
|
115
|
-
/**
|
|
116
|
-
* Content hash of the bundle.
|
|
117
|
-
*/
|
|
118
|
-
hash: string;
|
|
119
|
-
/**
|
|
120
|
-
* Whether result was served from cache.
|
|
121
|
-
*/
|
|
122
|
-
cached: boolean;
|
|
123
|
-
/**
|
|
124
|
-
* Bundle size in bytes.
|
|
125
|
-
*/
|
|
126
|
-
size: number;
|
|
127
|
-
/**
|
|
128
|
-
* Source map (if generated).
|
|
129
|
-
*/
|
|
130
|
-
map?: string;
|
|
131
|
-
/**
|
|
132
|
-
* Performance metrics.
|
|
133
|
-
*/
|
|
134
|
-
metrics: BundleMetrics;
|
|
135
|
-
/**
|
|
136
|
-
* Detected or specified source type.
|
|
137
|
-
*/
|
|
138
|
-
sourceType: SourceType;
|
|
139
|
-
/**
|
|
140
|
-
* Output format used.
|
|
141
|
-
*/
|
|
142
|
-
format: OutputFormat;
|
|
143
|
-
}
|
|
144
|
-
/**
|
|
145
|
-
* Performance metrics for bundling.
|
|
146
|
-
*/
|
|
147
|
-
export interface BundleMetrics {
|
|
148
|
-
/**
|
|
149
|
-
* Time to transform source (ms).
|
|
150
|
-
*/
|
|
151
|
-
transformTime: number;
|
|
152
|
-
/**
|
|
153
|
-
* Time to bundle (ms).
|
|
154
|
-
*/
|
|
155
|
-
bundleTime: number;
|
|
156
|
-
/**
|
|
157
|
-
* Total processing time (ms).
|
|
158
|
-
*/
|
|
159
|
-
totalTime: number;
|
|
160
|
-
/**
|
|
161
|
-
* Cache lookup time (ms).
|
|
162
|
-
*/
|
|
163
|
-
cacheTime?: number;
|
|
164
|
-
}
|
|
165
|
-
/**
|
|
166
|
-
* Result of SSR rendering.
|
|
167
|
-
*/
|
|
168
|
-
export interface SSRResult extends BundleResult {
|
|
169
|
-
/**
|
|
170
|
-
* Rendered HTML output.
|
|
171
|
-
*/
|
|
172
|
-
html: string;
|
|
173
|
-
/**
|
|
174
|
-
* Hydration script (if included).
|
|
175
|
-
*/
|
|
176
|
-
hydrationScript?: string;
|
|
177
|
-
/**
|
|
178
|
-
* SSR-specific metrics.
|
|
179
|
-
*/
|
|
180
|
-
ssrMetrics: {
|
|
181
|
-
/**
|
|
182
|
-
* Time to render component (ms).
|
|
183
|
-
*/
|
|
184
|
-
renderTime: number;
|
|
185
|
-
};
|
|
186
|
-
}
|
|
187
|
-
/**
|
|
188
|
-
* Security policy for bundler execution.
|
|
189
|
-
*/
|
|
190
|
-
export interface SecurityPolicy {
|
|
191
|
-
/**
|
|
192
|
-
* Allowed import patterns (regex).
|
|
193
|
-
* @default [/^react/, /^@frontmcp\/ui/]
|
|
194
|
-
*/
|
|
195
|
-
allowedImports?: RegExp[];
|
|
196
|
-
/**
|
|
197
|
-
* Blocked import patterns (regex).
|
|
198
|
-
* @default [/^fs/, /^net/, /^child_process/, /^os/, /^path/]
|
|
199
|
-
*/
|
|
200
|
-
blockedImports?: RegExp[];
|
|
201
|
-
/**
|
|
202
|
-
* Maximum bundle size in bytes.
|
|
203
|
-
* @default 512000 (500KB)
|
|
204
|
-
*/
|
|
205
|
-
maxBundleSize?: number;
|
|
206
|
-
/**
|
|
207
|
-
* Maximum transform time in ms.
|
|
208
|
-
* @default 5000 (5s)
|
|
209
|
-
*/
|
|
210
|
-
maxTransformTime?: number;
|
|
211
|
-
/**
|
|
212
|
-
* Block eval() and Function() usage.
|
|
213
|
-
* @default true
|
|
214
|
-
*/
|
|
215
|
-
noEval?: boolean;
|
|
216
|
-
/**
|
|
217
|
-
* Block dynamic imports.
|
|
218
|
-
* @default true
|
|
219
|
-
*/
|
|
220
|
-
noDynamicImports?: boolean;
|
|
221
|
-
/**
|
|
222
|
-
* Block require() usage.
|
|
223
|
-
* @default true
|
|
224
|
-
*/
|
|
225
|
-
noRequire?: boolean;
|
|
226
|
-
/**
|
|
227
|
-
* Allowed global variables.
|
|
228
|
-
* @default ['console', 'Math', 'JSON', 'Date', 'Array', 'Object', 'String', 'Number', 'Boolean', 'Promise', 'Map', 'Set', 'WeakMap', 'WeakSet', 'Symbol', 'Reflect', 'Proxy', 'Error', 'TypeError', 'RangeError', 'parseInt', 'parseFloat', 'isNaN', 'isFinite', 'encodeURI', 'encodeURIComponent', 'decodeURI', 'decodeURIComponent', 'setTimeout', 'clearTimeout', 'setInterval', 'clearInterval']
|
|
229
|
-
*/
|
|
230
|
-
allowedGlobals?: string[];
|
|
231
|
-
}
|
|
232
|
-
/**
|
|
233
|
-
* Security violation details.
|
|
234
|
-
*/
|
|
235
|
-
export interface SecurityViolation {
|
|
236
|
-
/**
|
|
237
|
-
* Type of violation.
|
|
238
|
-
*/
|
|
239
|
-
type: 'blocked-import' | 'disallowed-import' | 'eval-usage' | 'dynamic-import' | 'require-usage' | 'size-exceeded' | 'timeout' | 'blocked-global';
|
|
240
|
-
/**
|
|
241
|
-
* Human-readable message.
|
|
242
|
-
*/
|
|
243
|
-
message: string;
|
|
244
|
-
/**
|
|
245
|
-
* Location in source (if available).
|
|
246
|
-
*/
|
|
247
|
-
location?: {
|
|
248
|
-
line: number;
|
|
249
|
-
column: number;
|
|
250
|
-
};
|
|
251
|
-
/**
|
|
252
|
-
* Offending pattern/value.
|
|
253
|
-
*/
|
|
254
|
-
value?: string;
|
|
255
|
-
}
|
|
256
|
-
/**
|
|
257
|
-
* Configuration options for creating a bundler instance.
|
|
258
|
-
*/
|
|
259
|
-
export interface BundlerOptions {
|
|
260
|
-
/**
|
|
261
|
-
* Default security policy.
|
|
262
|
-
*/
|
|
263
|
-
defaultSecurity?: SecurityPolicy;
|
|
264
|
-
/**
|
|
265
|
-
* Cache configuration.
|
|
266
|
-
*/
|
|
267
|
-
cache?: {
|
|
268
|
-
/**
|
|
269
|
-
* Maximum number of cached entries.
|
|
270
|
-
* @default 100
|
|
271
|
-
*/
|
|
272
|
-
maxSize?: number;
|
|
273
|
-
/**
|
|
274
|
-
* TTL for cache entries in ms.
|
|
275
|
-
* @default 300000 (5 minutes)
|
|
276
|
-
*/
|
|
277
|
-
ttl?: number;
|
|
278
|
-
/**
|
|
279
|
-
* Disable caching entirely.
|
|
280
|
-
* @default false
|
|
281
|
-
*/
|
|
282
|
-
disabled?: boolean;
|
|
283
|
-
};
|
|
284
|
-
/**
|
|
285
|
-
* Enable verbose logging.
|
|
286
|
-
* @default false
|
|
287
|
-
*/
|
|
288
|
-
verbose?: boolean;
|
|
289
|
-
/**
|
|
290
|
-
* Custom esbuild options.
|
|
291
|
-
*/
|
|
292
|
-
esbuildOptions?: Record<string, unknown>;
|
|
293
|
-
}
|
|
294
|
-
/**
|
|
295
|
-
* Cache entry for bundled results.
|
|
296
|
-
*/
|
|
297
|
-
export interface CacheEntry {
|
|
298
|
-
/**
|
|
299
|
-
* Bundle result.
|
|
300
|
-
*/
|
|
301
|
-
result: BundleResult;
|
|
302
|
-
/**
|
|
303
|
-
* Creation timestamp.
|
|
304
|
-
*/
|
|
305
|
-
createdAt: number;
|
|
306
|
-
/**
|
|
307
|
-
* Last access timestamp.
|
|
308
|
-
*/
|
|
309
|
-
lastAccessedAt: number;
|
|
310
|
-
/**
|
|
311
|
-
* Access count.
|
|
312
|
-
*/
|
|
313
|
-
accessCount: number;
|
|
314
|
-
}
|
|
315
|
-
/**
|
|
316
|
-
* Context for transform operations.
|
|
317
|
-
*/
|
|
318
|
-
export interface TransformContext {
|
|
319
|
-
/**
|
|
320
|
-
* Source type being transformed.
|
|
321
|
-
*/
|
|
322
|
-
sourceType: SourceType;
|
|
323
|
-
/**
|
|
324
|
-
* File path (for source maps).
|
|
325
|
-
*/
|
|
326
|
-
filename?: string;
|
|
327
|
-
/**
|
|
328
|
-
* Source code.
|
|
329
|
-
*/
|
|
330
|
-
source: string;
|
|
331
|
-
/**
|
|
332
|
-
* Active security policy.
|
|
333
|
-
*/
|
|
334
|
-
security: SecurityPolicy;
|
|
335
|
-
}
|
|
336
|
-
/**
|
|
337
|
-
* Default security policy.
|
|
338
|
-
*/
|
|
339
|
-
export declare const DEFAULT_SECURITY_POLICY: SecurityPolicy;
|
|
340
|
-
/**
|
|
341
|
-
* Default bundle options.
|
|
342
|
-
*/
|
|
343
|
-
export declare const DEFAULT_BUNDLE_OPTIONS: Required<Pick<BundleOptions, 'sourceType' | 'format' | 'minify' | 'sourceMaps' | 'externals' | 'jsx' | 'target' | 'globalName' | 'skipCache'>>;
|
|
344
|
-
/**
|
|
345
|
-
* Default bundler options.
|
|
346
|
-
*/
|
|
347
|
-
export declare const DEFAULT_BUNDLER_OPTIONS: Required<BundlerOptions>;
|