{"_id":"@elabs-ai/components-ai","_rev":"10-d7b9605871c2de455c3c53c8378972c3","name":"@elabs-ai/components-ai","dist-tags":{"latest":"5.5.0"},"versions":{"4.0.0":{"name":"@elabs-ai/components-ai","version":"4.0.0","license":"MIT","_id":"@elabs-ai/components-ai@4.0.0","maintainers":[{"name":"mreimitz","email":"m.reimitz.privat@gmail.com"}],"homepage":"https://github.com/mreimitz/elabs-components#readme","bugs":{"url":"https://github.com/mreimitz/elabs-components/issues"},"dist":{"shasum":"b383087b9187c092a47a3cdc948e0b99e694f227","tarball":"https://registry.npmjs.org/@elabs-ai/components-ai/-/components-ai-4.0.0.tgz","fileCount":180,"integrity":"sha512-OcuEOvlMUngZalYjF+/j3SF2XBgJ4nNgoClvg4TK7qQxWiBCnb4F2oYAcsMjDVYLCj7R7Js62fpWZpOxb0XqZw==","signatures":[{"sig":"MEUCIQCb5IDFg2pfazH2fR5OzdUE5GRDSJg5aFDhHJAD97lKHAIgL6wnnBbNJyq91KlJ2wcDyCN9ynUtKcIphHjYffSjyuk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@elabs-ai%2fcomponents-ai@4.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2668769},"type":"module","_from":"file:elabs-ai-components-ai-4.0.0.tgz","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"scripts":{"lint":"eslint .","test":"vitest run","build":"tsup","clean":"rm -rf dist .turbo coverage","typecheck":"tsc --noEmit"},"_npmUser":{"name":"mreimitz","email":"m.reimitz.privat@gmail.com"},"_resolved":"/tmp/72560d729ee05376703fea14f2494558/elabs-ai-components-ai-4.0.0.tgz","_integrity":"sha512-OcuEOvlMUngZalYjF+/j3SF2XBgJ4nNgoClvg4TK7qQxWiBCnb4F2oYAcsMjDVYLCj7R7Js62fpWZpOxb0XqZw==","repository":{"url":"git+https://github.com/mreimitz/elabs-components.git","type":"git","directory":"packages/ai"},"_npmVersion":"10.8.2","description":"<!-- brand-ui:gen:readme:start --> <!-- Generated by scripts/gen-package-readmes.mjs — do not edit inside these markers. -->","directories":{},"sideEffects":false,"_nodeVersion":"20.20.2","dependencies":{"zod":"^3.24.1","shiki":"^3.22.0","motion":"^12.26.2","nanoid":"^5.1.6","mermaid":"^11.12.2","tokenlens":"^1.3.1","streamdown":"^2.4.0","@xterm/xterm":"^6.0.0","lucide-react":"^0.577.0","media-chrome":"^4.17.2","ansi-to-react":"^6.2.6","@streamdown/cjk":"^1.0.2","@streamdown/code":"^1.1.0","@streamdown/math":"^1.0.2","@xterm/addon-fit":"^0.11.0","react-jsx-parser":"^2.2.0","@streamdown/mermaid":"^1.0.2","use-stick-to-bottom":"^1.1.3","@rive-app/react-webgl2":"^4.26.1","class-variance-authority":"^0.7.1","@radix-ui/react-use-controllable-state":"^1.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"ai":"^6.0.0","tsup":"^8.3.5","jsdom":"^25.0.1","react":"^19.0.0","eslint":"^9.17.0","vitest":"^3.0.2","react-dom":"^19.0.0","typescript":"^5.7.3","@types/react":"^19.0.2","@xyflow/react":"^12.11.1","@types/react-dom":"^19.0.2","@vitejs/plugin-react":"^4.3.4","@testing-library/react":"^16.1.0","@elabs-ai/components-ui":"4.0.0","@testing-library/jest-dom":"^6.6.3","@elabs-ai/components-icons":"4.0.0","@elabs-ai/components-charts":"4.0.0","@elabs-ai/components-tokens":"4.0.0","@testing-library/user-event":"^14.5.2","@elabs-ai/components-eslint-config":"0.1.0","@elabs-ai/components-typescript-config":"0.1.0"},"peerDependencies":{"ai":"^6.0.0","react":"^18.2.0 || ^19.0.0","react-dom":"^18.2.0 || ^19.0.0","@xyflow/react":"^12.11.1","@elabs-ai/components-ui":"4.0.0","@elabs-ai/components-tokens":"4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/components-ai_4.0.0_1786953914911_0.3191474686689655","host":"s3://npm-registry-packages-npm-production"}},"4.1.0":{"name":"@elabs-ai/components-ai","version":"4.1.0","license":"MIT","_id":"@elabs-ai/components-ai@4.1.0","maintainers":[{"name":"mreimitz","email":"m.reimitz.privat@gmail.com"}],"homepage":"https://github.com/mreimitz/elabs-components#readme","bugs":{"url":"https://github.com/mreimitz/elabs-components/issues"},"dist":{"shasum":"346193149828ae8d596506fd60949bbfa8a561d4","tarball":"https://registry.npmjs.org/@elabs-ai/components-ai/-/components-ai-4.1.0.tgz","fileCount":218,"integrity":"sha512-40cPC6cF7V/v5IbdG3fqAb8dgTTYOWzGeKnctIO0nc0yWzVVcL9RFfouk+rrin4BJF12tUqXtzeEEaivc22i3A==","signatures":[{"sig":"MEYCIQDaVs7+gvU4opB9ZOQqaBHxCmXbT+cxtogPGdS0fOx2kwIhAK/22YI4+BbrVfz7DPg613+7lpbk4qKW9awpcBqE2iYY","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@elabs-ai%2fcomponents-ai@4.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3423790},"type":"module","_from":"file:elabs-ai-components-ai-4.1.0.tgz","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"scripts":{"lint":"eslint .","test":"vitest run","build":"tsup","clean":"rm -rf dist .turbo coverage","typecheck":"tsc --noEmit"},"_npmUser":{"name":"mreimitz","email":"m.reimitz.privat@gmail.com"},"_resolved":"/tmp/abac8f1a0e5b63862a325459bc24b20f/elabs-ai-components-ai-4.1.0.tgz","_integrity":"sha512-40cPC6cF7V/v5IbdG3fqAb8dgTTYOWzGeKnctIO0nc0yWzVVcL9RFfouk+rrin4BJF12tUqXtzeEEaivc22i3A==","repository":{"url":"git+https://github.com/mreimitz/elabs-components.git","type":"git","directory":"packages/ai"},"_npmVersion":"10.8.2","description":"<!-- brand-ui:gen:readme:start --> <!-- Generated by scripts/gen-package-readmes.mjs — do not edit inside these markers. -->","directories":{},"sideEffects":false,"_nodeVersion":"20.20.2","dependencies":{"zod":"^3.24.1","shiki":"^3.22.0","motion":"^12.26.2","nanoid":"^5.1.6","tokenlens":"^1.3.1","streamdown":"^2.4.0","lucide-react":"^0.577.0","@streamdown/cjk":"^1.0.2","@streamdown/code":"^1.1.0","@streamdown/math":"^1.0.2","react-jsx-parser":"^2.2.0","@streamdown/mermaid":"^1.0.2","use-stick-to-bottom":"^1.1.3","class-variance-authority":"^0.7.1","@radix-ui/react-use-controllable-state":"^1.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"ai":"^7.0.0","tsup":"^8.3.5","jsdom":"^25.0.1","react":"^19.0.0","eslint":"^9.17.0","vitest":"^3.0.2","mermaid":"^11.12.2","react-dom":"^19.0.0","typescript":"^5.7.3","@types/react":"^19.0.2","media-chrome":"^4.17.2","@xyflow/react":"^12.11.1","@types/react-dom":"^19.0.2","@vitejs/plugin-react":"^4.3.4","@rive-app/react-webgl2":"^4.26.1","@testing-library/react":"^16.1.0","@elabs-ai/components-ui":"4.1.0","@testing-library/jest-dom":"^6.6.3","@elabs-ai/components-icons":"4.1.0","@elabs-ai/components-charts":"4.1.0","@elabs-ai/components-tokens":"4.1.0","@testing-library/user-event":"^14.5.2","@elabs-ai/components-eslint-config":"0.1.0","@elabs-ai/components-typescript-config":"0.1.0"},"peerDependencies":{"ai":"^6.0.0 || ^7.0.0","react":"^18.2.0 || ^19.0.0","mermaid":"^11.12.2","react-dom":"^18.2.0 || ^19.0.0","media-chrome":"^4.17.2","@xyflow/react":"^12.11.1","@rive-app/react-webgl2":"^4.26.1","@elabs-ai/components-ui":"4.1.0","@elabs-ai/components-icons":"4.1.0","@elabs-ai/components-tokens":"4.1.0"},"peerDependenciesMeta":{"ai":{"optional":true},"mermaid":{"optional":true},"media-chrome":{"optional":true},"@rive-app/react-webgl2":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/components-ai_4.1.0_1788862042998_0.5158704392417552","host":"s3://npm-registry-packages-npm-production"}},"4.2.0":{"name":"@elabs-ai/components-ai","version":"4.2.0","license":"MIT","_id":"@elabs-ai/components-ai@4.2.0","maintainers":[{"name":"mreimitz","email":"m.reimitz.privat@gmail.com"}],"homepage":"https://github.com/mreimitz/elabs-components#readme","bugs":{"url":"https://github.com/mreimitz/elabs-components/issues"},"dist":{"shasum":"02d5e596fc117a3f4086090a346c50912ca1e32b","tarball":"https://registry.npmjs.org/@elabs-ai/components-ai/-/components-ai-4.2.0.tgz","fileCount":238,"integrity":"sha512-NOGXRqlpGZIcGz6ipc80z4c/KivvJlJACbxELM4huuAoCjss8RQR6+aJ9/JaX8jl7/2yYgImv32DUqoQZjO+Tw==","signatures":[{"sig":"MEQCIEf//yoHRY+iCnPZKMxSB/3vV2sjFmD510k9G7T9GzfEAiAzon03i900ik4ysGK+/u51hI33ErQkTn33IXoS4LfTKg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCID9jNg1hSvzJUPuVjUHqdKL897+nFMEaMhLRDLBPB0bzAiBoKFdjIndXuynCliXZGzyYeIVWeAnaBhNjocCqACip0A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@elabs-ai%2fcomponents-ai@4.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3591041},"type":"module","_from":"file:elabs-ai-components-ai-4.2.0.tgz","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"}},"scripts":{"lint":"eslint .","test":"vitest run","build":"tsup","clean":"rm -rf dist .turbo coverage","typecheck":"tsc --noEmit"},"_npmUser":{"name":"mreimitz","email":"m.reimitz.privat@gmail.com"},"_resolved":"/tmp/1a5975091618d180d019301c044e8100/elabs-ai-components-ai-4.2.0.tgz","_integrity":"sha512-NOGXRqlpGZIcGz6ipc80z4c/KivvJlJACbxELM4huuAoCjss8RQR6+aJ9/JaX8jl7/2yYgImv32DUqoQZjO+Tw==","repository":{"url":"git+https://github.com/mreimitz/elabs-components.git","type":"git","directory":"packages/ai"},"_npmVersion":"10.9.8","description":"<!-- brand-ui:gen:readme:start --> <!-- Generated by scripts/gen-package-readmes.mjs — do not edit inside these markers. -->","directories":{},"sideEffects":false,"_nodeVersion":"22.23.2","dependencies":{"zod":"^3.24.1","shiki":"^3.22.0","motion":"^12.26.2","nanoid":"^5.1.6","tokenlens":"^1.3.1","streamdown":"^2.4.0","lucide-react":"^0.577.0","@streamdown/cjk":"^1.0.2","@streamdown/code":"^1.1.0","@streamdown/math":"^1.0.2","react-jsx-parser":"^2.2.0","@streamdown/mermaid":"^1.0.2","use-stick-to-bottom":"^1.1.3","class-variance-authority":"^0.7.1","@radix-ui/react-use-controllable-state":"^1.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"ai":"^7.0.0","tsup":"^8.3.5","jsdom":"^25.0.1","react":"^19.0.0","eslint":"^9.17.0","vitest":"^3.0.2","mermaid":"^11.12.2","react-dom":"^19.0.0","typescript":"^5.7.3","@types/react":"^19.0.2","media-chrome":"^4.17.2","@xyflow/react":"^12.11.1","@types/react-dom":"^19.0.2","@vitejs/plugin-react":"^4.3.4","@rive-app/react-webgl2":"^4.26.1","@testing-library/react":"^16.1.0","@elabs-ai/components-ui":"4.2.0","@testing-library/jest-dom":"^6.6.3","@elabs-ai/components-icons":"4.2.0","@elabs-ai/components-charts":"4.2.0","@elabs-ai/components-tokens":"4.2.0","@testing-library/user-event":"^14.5.2","@elabs-ai/components-eslint-config":"0.1.0","@elabs-ai/components-typescript-config":"0.1.0"},"peerDependencies":{"ai":"^6.0.0 || ^7.0.0","react":"^18.2.0 || ^19.0.0","mermaid":"^11.12.2","react-dom":"^18.2.0 || ^19.0.0","media-chrome":"^4.17.2","@xyflow/react":"^12.11.1","@rive-app/react-webgl2":"^4.26.1","@elabs-ai/components-ui":"4.2.0","@elabs-ai/components-icons":"4.2.0","@elabs-ai/components-tokens":"4.2.0"},"peerDependenciesMeta":{"ai":{"optional":true},"mermaid":{"optional":true},"media-chrome":{"optional":true},"@rive-app/react-webgl2":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/components-ai_4.2.0_1789514669109_0.941431704271039","host":"s3://npm-registry-packages-npm-production"}},"5.0.0":{"name":"@elabs-ai/components-ai","version":"5.0.0","license":"MIT","_id":"@elabs-ai/components-ai@5.0.0","maintainers":[{"name":"mreimitz","email":"m.reimitz.privat@gmail.com"}],"homepage":"https://github.com/mreimitz/elabs-components#readme","bugs":{"url":"https://github.com/mreimitz/elabs-components/issues"},"dist":{"shasum":"6cac7ef448af392af32eee69a3e9948e26b5260c","tarball":"https://registry.npmjs.org/@elabs-ai/components-ai/-/components-ai-5.0.0.tgz","fileCount":648,"integrity":"sha512-WDEErQie/YJBu0neHxVFb++Qz5+I5gthMRTa7f2Ugw4Nua8fricTvXSWh0uK7LXNgcgckX7hOIlIWPQpMdBnyQ==","signatures":[{"sig":"MEYCIQDR2cDVx+IvBgkblBkxXvIdVkZBnKb93MKkKYiEd9TS5QIhAOMCFZ51wsvZOgC4CWE56i0Ms2eUrI6G6NYJvSo5abs7","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQD5AZO6Kvome3GNbpm6hPid9g51GCGuqbyHb+HTN9nSdQIhAKTGjfgQ94pR7+B8eiX2rKpvgVrlj4J9uv3amkWZC/Og","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@elabs-ai%2fcomponents-ai@5.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4102585},"type":"module","_from":"file:elabs-ai-components-ai-5.0.0.tgz","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./a2ui/schema.json":"./schemas/a2ui-surface.v1.schema.json"},"scripts":{"lint":"eslint .","test":"vitest run","build":"tsup","clean":"rm -rf dist .turbo coverage","typecheck":"tsc --noEmit"},"_npmUser":{"name":"mreimitz","email":"m.reimitz.privat@gmail.com"},"_resolved":"/tmp/f06e406bbba7655d1f700af9ec070355/elabs-ai-components-ai-5.0.0.tgz","_integrity":"sha512-WDEErQie/YJBu0neHxVFb++Qz5+I5gthMRTa7f2Ugw4Nua8fricTvXSWh0uK7LXNgcgckX7hOIlIWPQpMdBnyQ==","repository":{"url":"git+https://github.com/mreimitz/elabs-components.git","type":"git","directory":"packages/ai"},"_npmVersion":"10.9.8","description":"<!-- brand-ui:gen:readme:start --> <!-- Generated by scripts/gen-package-readmes.mjs — do not edit inside these markers. -->","directories":{},"sideEffects":false,"_nodeVersion":"22.23.2","dependencies":{"zod":"^3.24.1","shiki":"^3.22.0","motion":"^12.26.2","nanoid":"^5.1.6","tokenlens":"^1.3.1","streamdown":"^2.4.0","lucide-react":"^0.577.0","@streamdown/cjk":"^1.0.2","@streamdown/code":"^1.1.0","@streamdown/math":"^1.0.2","react-jsx-parser":"^2.2.0","@streamdown/mermaid":"^1.0.2","use-stick-to-bottom":"^1.1.3","class-variance-authority":"^0.7.1","@radix-ui/react-use-controllable-state":"^1.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"ai":"^7.0.0","tsup":"^8.3.5","jsdom":"^25.0.1","react":"^19.0.0","eslint":"^9.17.0","vitest":"^3.0.2","mermaid":"^11.12.2","react-dom":"^19.0.0","typescript":"^5.7.3","@types/react":"^19.0.2","media-chrome":"^4.17.2","@xyflow/react":"^12.11.1","@types/react-dom":"^19.0.2","@vitejs/plugin-react":"^4.3.4","@rive-app/react-webgl2":"^4.26.1","@testing-library/react":"^16.1.0","@elabs-ai/components-ui":"5.0.0","@testing-library/jest-dom":"^6.6.3","@elabs-ai/components-icons":"5.0.0","@elabs-ai/components-charts":"5.0.0","@elabs-ai/components-tokens":"5.0.0","@testing-library/user-event":"^14.5.2","@elabs-ai/components-eslint-config":"0.1.0","@elabs-ai/components-typescript-config":"0.1.0"},"peerDependencies":{"ai":"^6.0.0 || ^7.0.0","react":"^18.2.0 || ^19.0.0","mermaid":"^11.12.2","react-dom":"^18.2.0 || ^19.0.0","media-chrome":"^4.17.2","@xyflow/react":"^12.11.1","@rive-app/react-webgl2":"^4.26.1","@elabs-ai/components-ui":"5.0.0","@elabs-ai/components-icons":"5.0.0","@elabs-ai/components-tokens":"5.0.0"},"peerDependenciesMeta":{"ai":{"optional":true},"mermaid":{"optional":true},"media-chrome":{"optional":true},"@rive-app/react-webgl2":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/components-ai_5.0.0_1789932779234_0.6017790171681243","host":"s3://npm-registry-packages-npm-production"}},"5.1.0":{"name":"@elabs-ai/components-ai","version":"5.1.0","license":"MIT","_id":"@elabs-ai/components-ai@5.1.0","maintainers":[{"name":"mreimitz","email":"m.reimitz.privat@gmail.com"}],"homepage":"https://github.com/mreimitz/elabs-components#readme","bugs":{"url":"https://github.com/mreimitz/elabs-components/issues"},"dist":{"shasum":"331e82fe223ffd93a2d154439ece93c197337b19","tarball":"https://registry.npmjs.org/@elabs-ai/components-ai/-/components-ai-5.1.0.tgz","fileCount":648,"integrity":"sha512-v4GhV1tDBM3jktNsYOpmdzz0TmkWVekTgGov70taY+xKESZyrYvhcubrzlVakL0mGmf4z0bZucvdoWTm1h9PTw==","signatures":[{"sig":"MEUCIBfo3Hxvmplz8Z9V66z5L2hobJOlWiHXwbRcmRXiix0UAiEA5Sj97n6rDaIpA4JZP6ImupD7f765U5dRR5Du6skhonc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIGIwM07cJENDhWOGoR2d6Yn4Tea0qgfBMdrWUhftF6FZAiAOHsU+g1aGbwNteT/MT5KLpRsPl51Pb/9ptOAafaLG1Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@elabs-ai%2fcomponents-ai@5.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4104550},"type":"module","_from":"file:elabs-ai-components-ai-5.1.0.tgz","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./a2ui/schema.json":"./schemas/a2ui-surface.v1.schema.json"},"scripts":{"lint":"eslint .","test":"vitest run","build":"tsup","clean":"rm -rf dist .turbo coverage","typecheck":"tsc --noEmit"},"_npmUser":{"name":"mreimitz","email":"m.reimitz.privat@gmail.com"},"_resolved":"/tmp/e05dc95613b77e0ba230a28fff5935e9/elabs-ai-components-ai-5.1.0.tgz","_integrity":"sha512-v4GhV1tDBM3jktNsYOpmdzz0TmkWVekTgGov70taY+xKESZyrYvhcubrzlVakL0mGmf4z0bZucvdoWTm1h9PTw==","repository":{"url":"git+https://github.com/mreimitz/elabs-components.git","type":"git","directory":"packages/ai"},"_npmVersion":"10.9.8","description":"<!-- brand-ui:gen:readme:start --> <!-- Generated by scripts/gen-package-readmes.mjs — do not edit inside these markers. -->","directories":{},"sideEffects":false,"_nodeVersion":"22.23.2","dependencies":{"zod":"^3.24.1","shiki":"^3.22.0","motion":"^12.26.2","nanoid":"^5.1.6","tokenlens":"^1.3.1","streamdown":"^2.4.0","lucide-react":"^0.577.0","@streamdown/cjk":"^1.0.2","@streamdown/code":"^1.1.0","@streamdown/math":"^1.0.2","react-jsx-parser":"^2.2.0","@streamdown/mermaid":"^1.0.2","use-stick-to-bottom":"^1.1.3","class-variance-authority":"^0.7.1","@radix-ui/react-use-controllable-state":"^1.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"ai":"^7.0.0","tsup":"^8.3.5","jsdom":"^25.0.1","react":"^19.0.0","eslint":"^9.17.0","vitest":"^3.0.2","mermaid":"^11.12.2","react-dom":"^19.0.0","typescript":"^5.7.3","@types/react":"^19.0.2","media-chrome":"^4.17.2","@xyflow/react":"^12.11.1","@types/react-dom":"^19.0.2","@vitejs/plugin-react":"^4.3.4","@rive-app/react-webgl2":"^4.26.1","@testing-library/react":"^16.1.0","@elabs-ai/components-ui":"5.1.0","@testing-library/jest-dom":"^6.6.3","@elabs-ai/components-icons":"5.1.0","@elabs-ai/components-charts":"5.1.0","@elabs-ai/components-tokens":"5.1.0","@testing-library/user-event":"^14.5.2","@elabs-ai/components-eslint-config":"0.1.0","@elabs-ai/components-typescript-config":"0.1.0"},"peerDependencies":{"ai":"^6.0.0 || ^7.0.0","react":"^18.2.0 || ^19.0.0","mermaid":"^11.12.2","react-dom":"^18.2.0 || ^19.0.0","media-chrome":"^4.17.2","@xyflow/react":"^12.11.1","@rive-app/react-webgl2":"^4.26.1","@elabs-ai/components-ui":"^5.1.0","@elabs-ai/components-icons":"^5.1.0","@elabs-ai/components-tokens":"^5.1.0"},"peerDependenciesMeta":{"ai":{"optional":true},"mermaid":{"optional":true},"media-chrome":{"optional":true},"@rive-app/react-webgl2":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/components-ai_5.1.0_1790029048466_0.42887164911178277","host":"s3://npm-registry-packages-npm-production"}},"5.2.0":{"name":"@elabs-ai/components-ai","version":"5.2.0","license":"MIT","_id":"@elabs-ai/components-ai@5.2.0","maintainers":[{"name":"mreimitz","email":"m.reimitz.privat@gmail.com"}],"homepage":"https://github.com/mreimitz/elabs-components#readme","bugs":{"url":"https://github.com/mreimitz/elabs-components/issues"},"dist":{"shasum":"44242418f7718596654f88ab5e5b3f683733c379","tarball":"https://registry.npmjs.org/@elabs-ai/components-ai/-/components-ai-5.2.0.tgz","fileCount":648,"integrity":"sha512-gE9oFMHWQCuBANqOSi5E2e3ga+R19/AV6JbiGGEcmFer2kRN+Ck8EpLl7sO3Ajiigav4L9P4PER06//uRdWVuA==","signatures":[{"sig":"MEYCIQDUfyt9COK/wJkoDRE8Jg7ZeYyxBFIvYYVEUcspr1h7NQIhAMcW0w9B4Zvn7dWARCXtAv3YdUhpNPCw5HYrRhV2WoOj","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDAjD920fL0xh6HblfSCzhawaEw6DP3fBfrGfdf0phqgQIgEFcKxh9Nktf8eU+D5uFvJ1jtV+KfMccj4T264jSUlVQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@elabs-ai%2fcomponents-ai@5.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4104550},"type":"module","_from":"file:elabs-ai-components-ai-5.2.0.tgz","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./a2ui/schema.json":"./schemas/a2ui-surface.v1.schema.json"},"scripts":{"lint":"eslint .","test":"vitest run","build":"tsup","clean":"rm -rf dist .turbo coverage","typecheck":"tsc --noEmit"},"_npmUser":{"name":"mreimitz","email":"m.reimitz.privat@gmail.com"},"_resolved":"/tmp/131e90a679dc20d6a06adea2c10a689a/elabs-ai-components-ai-5.2.0.tgz","_integrity":"sha512-gE9oFMHWQCuBANqOSi5E2e3ga+R19/AV6JbiGGEcmFer2kRN+Ck8EpLl7sO3Ajiigav4L9P4PER06//uRdWVuA==","repository":{"url":"git+https://github.com/mreimitz/elabs-components.git","type":"git","directory":"packages/ai"},"_npmVersion":"10.9.8","description":"<!-- brand-ui:gen:readme:start --> <!-- Generated by scripts/gen-package-readmes.mjs — do not edit inside these markers. -->","directories":{},"sideEffects":false,"_nodeVersion":"22.23.2","dependencies":{"zod":"^3.24.1","shiki":"^3.22.0","motion":"^12.26.2","nanoid":"^5.1.6","tokenlens":"^1.3.1","streamdown":"^2.4.0","lucide-react":"^0.577.0","@streamdown/cjk":"^1.0.2","@streamdown/code":"^1.1.0","@streamdown/math":"^1.0.2","react-jsx-parser":"^2.2.0","@streamdown/mermaid":"^1.0.2","use-stick-to-bottom":"^1.1.3","class-variance-authority":"^0.7.1","@radix-ui/react-use-controllable-state":"^1.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"ai":"^7.0.0","tsup":"^8.3.5","jsdom":"^25.0.1","react":"^19.0.0","eslint":"^9.17.0","vitest":"^3.0.2","mermaid":"^11.12.2","react-dom":"^19.0.0","typescript":"^5.7.3","@types/react":"^19.0.2","media-chrome":"^4.17.2","@xyflow/react":"^12.11.1","@types/react-dom":"^19.0.2","@vitejs/plugin-react":"^4.3.4","@rive-app/react-webgl2":"^4.26.1","@testing-library/react":"^16.1.0","@elabs-ai/components-ui":"5.2.0","@testing-library/jest-dom":"^6.6.3","@elabs-ai/components-icons":"5.2.0","@elabs-ai/components-charts":"5.2.0","@elabs-ai/components-tokens":"5.2.0","@testing-library/user-event":"^14.5.2","@elabs-ai/components-eslint-config":"0.1.0","@elabs-ai/components-typescript-config":"0.1.0"},"peerDependencies":{"ai":"^6.0.0 || ^7.0.0","react":"^18.2.0 || ^19.0.0","mermaid":"^11.12.2","react-dom":"^18.2.0 || ^19.0.0","media-chrome":"^4.17.2","@xyflow/react":"^12.11.1","@rive-app/react-webgl2":"^4.26.1","@elabs-ai/components-ui":"^5.2.0","@elabs-ai/components-icons":"^5.2.0","@elabs-ai/components-tokens":"^5.2.0"},"peerDependenciesMeta":{"ai":{"optional":true},"mermaid":{"optional":true},"media-chrome":{"optional":true},"@rive-app/react-webgl2":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/components-ai_5.2.0_1790071866564_0.5997273527859608","host":"s3://npm-registry-packages-npm-production"}},"5.3.0":{"name":"@elabs-ai/components-ai","version":"5.3.0","license":"MIT","_id":"@elabs-ai/components-ai@5.3.0","maintainers":[{"name":"mreimitz","email":"m.reimitz.privat@gmail.com"}],"homepage":"https://github.com/mreimitz/elabs-components#readme","bugs":{"url":"https://github.com/mreimitz/elabs-components/issues"},"dist":{"shasum":"18a9718d7b51535654b7be1ab1ea6b88c90959ad","tarball":"https://registry.npmjs.org/@elabs-ai/components-ai/-/components-ai-5.3.0.tgz","fileCount":648,"integrity":"sha512-dfLHKLG78OemYGK8sNzHeHfoxz33zKmpc6Dg2USElKwDQfu9Y/qN0VU3UAk/Bch7f6l7VXzwamB3zKMdee0GlQ==","signatures":[{"sig":"MEUCIQChXyc5qfv2m///R6PVZZeSY3U3NNrgejX4xhQy4B+6gwIgCk0sY6JvwfwTSZcABfEpT1cjX7qvGQlKYnVxMKST8Gs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDaU/9/vQSLYWKV7arqCYrML2IQ9oaEcWUkfMHgivydRAIhAIjlIjNESnypIyNMkT8BKdcWIm18x21fFDkZLkG155Mz","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@elabs-ai%2fcomponents-ai@5.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4104550},"type":"module","_from":"file:elabs-ai-components-ai-5.3.0.tgz","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./a2ui/schema.json":"./schemas/a2ui-surface.v1.schema.json"},"scripts":{"lint":"eslint .","test":"vitest run","build":"tsup","clean":"rm -rf dist .turbo coverage","typecheck":"tsc --noEmit"},"_npmUser":{"name":"mreimitz","email":"m.reimitz.privat@gmail.com"},"_resolved":"/tmp/2af6bb71365e83fa765c8b297fd8c3d6/elabs-ai-components-ai-5.3.0.tgz","_integrity":"sha512-dfLHKLG78OemYGK8sNzHeHfoxz33zKmpc6Dg2USElKwDQfu9Y/qN0VU3UAk/Bch7f6l7VXzwamB3zKMdee0GlQ==","repository":{"url":"git+https://github.com/mreimitz/elabs-components.git","type":"git","directory":"packages/ai"},"_npmVersion":"10.9.8","description":"<!-- brand-ui:gen:readme:start --> <!-- Generated by scripts/gen-package-readmes.mjs — do not edit inside these markers. -->","directories":{},"sideEffects":false,"_nodeVersion":"22.23.2","dependencies":{"zod":"^3.24.1","shiki":"^3.22.0","motion":"^12.26.2","nanoid":"^5.1.6","tokenlens":"^1.3.1","streamdown":"^2.4.0","lucide-react":"^0.577.0","@streamdown/cjk":"^1.0.2","@streamdown/code":"^1.1.0","@streamdown/math":"^1.0.2","react-jsx-parser":"^2.2.0","@streamdown/mermaid":"^1.0.2","use-stick-to-bottom":"^1.1.3","class-variance-authority":"^0.7.1","@radix-ui/react-use-controllable-state":"^1.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"ai":"^7.0.0","tsup":"^8.3.5","jsdom":"^25.0.1","react":"^19.0.0","eslint":"^9.17.0","vitest":"^3.0.2","mermaid":"^11.12.2","react-dom":"^19.0.0","typescript":"^5.7.3","@types/react":"^19.0.2","media-chrome":"^4.17.2","@xyflow/react":"^12.11.1","@types/react-dom":"^19.0.2","@vitejs/plugin-react":"^4.3.4","@rive-app/react-webgl2":"^4.26.1","@testing-library/react":"^16.1.0","@elabs-ai/components-ui":"5.3.0","@testing-library/jest-dom":"^6.6.3","@elabs-ai/components-icons":"5.3.0","@elabs-ai/components-charts":"5.3.0","@elabs-ai/components-tokens":"5.3.0","@testing-library/user-event":"^14.5.2","@elabs-ai/components-eslint-config":"0.1.0","@elabs-ai/components-typescript-config":"0.1.0"},"peerDependencies":{"ai":"^6.0.0 || ^7.0.0","react":"^18.2.0 || ^19.0.0","mermaid":"^11.12.2","react-dom":"^18.2.0 || ^19.0.0","media-chrome":"^4.17.2","@xyflow/react":"^12.11.1","@rive-app/react-webgl2":"^4.26.1","@elabs-ai/components-ui":"^5.3.0","@elabs-ai/components-icons":"^5.3.0","@elabs-ai/components-tokens":"^5.3.0"},"peerDependenciesMeta":{"ai":{"optional":true},"mermaid":{"optional":true},"media-chrome":{"optional":true},"@rive-app/react-webgl2":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/components-ai_5.3.0_1790083835630_0.2436773210783738","host":"s3://npm-registry-packages-npm-production"}},"5.3.1":{"name":"@elabs-ai/components-ai","version":"5.3.1","license":"MIT","_id":"@elabs-ai/components-ai@5.3.1","maintainers":[{"name":"mreimitz","email":"m.reimitz.privat@gmail.com"}],"homepage":"https://github.com/mreimitz/elabs-components#readme","bugs":{"url":"https://github.com/mreimitz/elabs-components/issues"},"dist":{"shasum":"59160570ab438484c6ab8d1e6611b83073cbcd2a","tarball":"https://registry.npmjs.org/@elabs-ai/components-ai/-/components-ai-5.3.1.tgz","fileCount":648,"integrity":"sha512-30kWcltPWtHpmsejZgI4IUFUJtlIAz991QQPdeXk57lmps3WKEkFabaFdUrgNQnSNd4gFX6NTR/+W7h3hG0soA==","signatures":[{"sig":"MEYCIQCMw6UD95uwd8LQUcyyCMLdipBfwMch9BxTV2XhLRL3ugIhAMtilwgQRbjSEC2zTwOJYeXkn0Xf0LRRi4na0QsVysvB","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIEYnMuv6RUiLXeWLm+5DUbxXIExKrm3jPElZNp2nRaoxAiEAzVLPoazlkd0/jFSaFI58T0b0Xu+KK57A4PIXiBgZ8eE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@elabs-ai%2fcomponents-ai@5.3.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4107126},"type":"module","_from":"file:elabs-ai-components-ai-5.3.1.tgz","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./a2ui/schema.json":"./schemas/a2ui-surface.v1.schema.json"},"scripts":{"lint":"eslint .","test":"vitest run","build":"tsup","clean":"rm -rf dist .turbo coverage","typecheck":"tsc --noEmit"},"_npmUser":{"name":"mreimitz","email":"m.reimitz.privat@gmail.com"},"_resolved":"/tmp/26c0f88ca695314d90cc22da6782a2cd/elabs-ai-components-ai-5.3.1.tgz","_integrity":"sha512-30kWcltPWtHpmsejZgI4IUFUJtlIAz991QQPdeXk57lmps3WKEkFabaFdUrgNQnSNd4gFX6NTR/+W7h3hG0soA==","repository":{"url":"git+https://github.com/mreimitz/elabs-components.git","type":"git","directory":"packages/ai"},"_npmVersion":"10.9.8","description":"<!-- brand-ui:gen:readme:start --> <!-- Generated by scripts/gen-package-readmes.mjs — do not edit inside these markers. -->","directories":{},"sideEffects":false,"_nodeVersion":"22.23.2","dependencies":{"zod":"^3.24.1","shiki":"^3.22.0","motion":"^12.26.2","nanoid":"^5.1.6","tokenlens":"^1.3.1","streamdown":"^2.4.0","lucide-react":"^0.577.0","@streamdown/cjk":"^1.0.2","@streamdown/code":"^1.1.0","@streamdown/math":"^1.0.2","react-jsx-parser":"^2.2.0","@streamdown/mermaid":"^1.0.2","use-stick-to-bottom":"^1.1.3","class-variance-authority":"^0.7.1","@radix-ui/react-use-controllable-state":"^1.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"ai":"^7.0.0","tsup":"^8.3.5","jsdom":"^25.0.1","react":"^19.0.0","eslint":"^9.17.0","vitest":"^3.0.2","mermaid":"^11.12.2","react-dom":"^19.0.0","typescript":"^5.7.3","@types/react":"^19.0.2","media-chrome":"^4.17.2","@xyflow/react":"^12.11.1","@types/react-dom":"^19.0.2","@vitejs/plugin-react":"^4.3.4","@rive-app/react-webgl2":"^4.26.1","@testing-library/react":"^16.1.0","@elabs-ai/components-ui":"5.3.1","@testing-library/jest-dom":"^6.6.3","@elabs-ai/components-icons":"5.3.1","@elabs-ai/components-charts":"5.3.1","@elabs-ai/components-tokens":"5.3.1","@testing-library/user-event":"^14.5.2","@elabs-ai/components-eslint-config":"0.1.0","@elabs-ai/components-typescript-config":"0.1.0"},"peerDependencies":{"ai":"^6.0.0 || ^7.0.0","react":"^18.2.0 || ^19.0.0","mermaid":"^11.12.2","react-dom":"^18.2.0 || ^19.0.0","media-chrome":"^4.17.2","@xyflow/react":"^12.11.1","@rive-app/react-webgl2":"^4.26.1","@elabs-ai/components-ui":"^5.3.1","@elabs-ai/components-icons":"^5.3.1","@elabs-ai/components-tokens":"^5.3.1"},"peerDependenciesMeta":{"ai":{"optional":true},"mermaid":{"optional":true},"media-chrome":{"optional":true},"@rive-app/react-webgl2":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/components-ai_5.3.1_1790086081548_0.7929427745929052","host":"s3://npm-registry-packages-npm-production"}},"5.4.0":{"name":"@elabs-ai/components-ai","version":"5.4.0","license":"MIT","_id":"@elabs-ai/components-ai@5.4.0","maintainers":[{"name":"mreimitz","email":"m.reimitz.privat@gmail.com"}],"homepage":"https://github.com/mreimitz/elabs-components#readme","bugs":{"url":"https://github.com/mreimitz/elabs-components/issues"},"dist":{"shasum":"cbfa40aa0f6656e6e20230ae436019fce07c388e","tarball":"https://registry.npmjs.org/@elabs-ai/components-ai/-/components-ai-5.4.0.tgz","fileCount":648,"integrity":"sha512-7tYSgpIwHgqaSexMi6tBlKOzz/Z0t5w4ns7WO2Xj143cerST1wStXu9DJnhtOk0VhsKdQ4ZtDCCrbtHDxI7LHw==","signatures":[{"sig":"MEQCIGpCMhKsyyxkARGNX6mKc9pAc1NmL08JpJ9getbzCNHcAiBvMW1s7tx5DEDbQuWmFP+qYbg+MsK4w/xu4CT8aKmpdg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDt4Rc+yx4JX+87AhruH1HMDW0su6Gr2qTsmnFQa6N8wwIhAPX0D2BSLdMWwbKYDq6H//07WJFgEzfGXiFcBXN+LJIF","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@elabs-ai%2fcomponents-ai@5.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4111276},"type":"module","_from":"file:elabs-ai-components-ai-5.4.0.tgz","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./a2ui/schema.json":"./schemas/a2ui-surface.v1.schema.json"},"scripts":{"lint":"eslint .","test":"vitest run","build":"tsup","clean":"rm -rf dist .turbo coverage","typecheck":"tsc --noEmit"},"_npmUser":{"name":"mreimitz","email":"m.reimitz.privat@gmail.com"},"_resolved":"/tmp/eb0f7bfb50741a43ee9e535bdf8020c7/elabs-ai-components-ai-5.4.0.tgz","_integrity":"sha512-7tYSgpIwHgqaSexMi6tBlKOzz/Z0t5w4ns7WO2Xj143cerST1wStXu9DJnhtOk0VhsKdQ4ZtDCCrbtHDxI7LHw==","repository":{"url":"git+https://github.com/mreimitz/elabs-components.git","type":"git","directory":"packages/ai"},"_npmVersion":"10.9.8","description":"<!-- brand-ui:gen:readme:start --> <!-- Generated by scripts/gen-package-readmes.mjs — do not edit inside these markers. -->","directories":{},"sideEffects":false,"_nodeVersion":"22.23.2","dependencies":{"zod":"^3.24.1","shiki":"^3.22.0","motion":"^12.26.2","nanoid":"^5.1.6","tokenlens":"^1.3.1","streamdown":"^2.4.0","lucide-react":"^0.577.0","@streamdown/cjk":"^1.0.2","@streamdown/code":"^1.1.0","@streamdown/math":"^1.0.2","react-jsx-parser":"^2.2.0","@streamdown/mermaid":"^1.0.2","use-stick-to-bottom":"^1.1.3","class-variance-authority":"^0.7.1","@radix-ui/react-use-controllable-state":"^1.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"ai":"^7.0.0","tsup":"^8.3.5","jsdom":"^25.0.1","react":"^19.0.0","eslint":"^9.17.0","vitest":"^3.0.2","mermaid":"^11.12.2","react-dom":"^19.0.0","typescript":"^5.7.3","@types/react":"^19.0.2","media-chrome":"^4.17.2","@xyflow/react":"^12.11.1","@types/react-dom":"^19.0.2","@vitejs/plugin-react":"^4.3.4","@rive-app/react-webgl2":"^4.26.1","@testing-library/react":"^16.1.0","@elabs-ai/components-ui":"5.4.0","@testing-library/jest-dom":"^6.6.3","@elabs-ai/components-icons":"5.4.0","@elabs-ai/components-charts":"5.4.0","@elabs-ai/components-tokens":"5.4.0","@testing-library/user-event":"^14.5.2","@elabs-ai/components-eslint-config":"0.1.0","@elabs-ai/components-typescript-config":"0.1.0"},"peerDependencies":{"ai":"^6.0.0 || ^7.0.0","react":"^18.2.0 || ^19.0.0","mermaid":"^11.12.2","react-dom":"^18.2.0 || ^19.0.0","media-chrome":"^4.17.2","@xyflow/react":"^12.11.1","@rive-app/react-webgl2":"^4.26.1","@elabs-ai/components-ui":"^5.4.0","@elabs-ai/components-icons":"^5.4.0","@elabs-ai/components-tokens":"^5.4.0"},"peerDependenciesMeta":{"ai":{"optional":true},"mermaid":{"optional":true},"media-chrome":{"optional":true},"@rive-app/react-webgl2":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/components-ai_5.4.0_1790153486753_0.9444082299183783","host":"s3://npm-registry-packages-npm-production"}},"5.5.0":{"_id":"@elabs-ai/components-ai@5.5.0","bugs":{"url":"https://github.com/mreimitz/elabs-components/issues"},"dist":{"shasum":"aea0b07d58214361cfd83264ca3af7bc2ac884c3","tarball":"https://registry.npmjs.org/@elabs-ai/components-ai/-/components-ai-5.5.0.tgz","fileCount":655,"integrity":"sha512-/0jKlofm76LJAdMiKuGOmz3sRrBbnbA6Kd2XTQCuWoPl063PHtmFMFYFaGqaoOcuktuyLs2wQzt5YK3hby0yEw==","signatures":[{"sig":"MEQCIGkE0Ow4gnnkLY419S1vhQIrQ/vKGPzJXKo1vMJfgiQ2AiBiNNy6mfjlebWFPy6/UyQTVthDgzLK7+NlP6EAxhu6+g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQCK1Ze27IHuG/5WV2gDSS1fgWykTinv5FzXmLTZHm1BKQIhAO57a2GqD8Wu8/UAQ6ZEOZbNRxmdwtd25ujnZFz+Ojyd"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@elabs-ai%2fcomponents-ai@5.5.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4077241},"name":"@elabs-ai/components-ai","type":"module","_from":"file:elabs-ai-components-ai-5.5.0.tgz","exports":{".":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"./a2ui/schema.json":"./schemas/a2ui-surface.v1.schema.json"},"license":"MIT","scripts":{"lint":"eslint .","test":"vitest run","build":"tsup","clean":"rm -rf dist .turbo coverage","typecheck":"tsc --noEmit"},"version":"5.5.0","_npmUser":{"name":"mreimitz","email":"m.reimitz.privat@gmail.com"},"homepage":"https://github.com/mreimitz/elabs-components#readme","_resolved":"/tmp/08ee2e8056d8ef1e9e12dc4a8e063554/elabs-ai-components-ai-5.5.0.tgz","_integrity":"sha512-/0jKlofm76LJAdMiKuGOmz3sRrBbnbA6Kd2XTQCuWoPl063PHtmFMFYFaGqaoOcuktuyLs2wQzt5YK3hby0yEw==","repository":{"url":"git+https://github.com/mreimitz/elabs-components.git","type":"git","directory":"packages/ai"},"_npmVersion":"10.9.8","description":"<!-- brand-ui:gen:readme:start --> <!-- Generated by scripts/gen-package-readmes.mjs — do not edit inside these markers. -->","directories":{},"maintainers":[{"name":"mreimitz","email":"m.reimitz.privat@gmail.com"}],"sideEffects":false,"_nodeVersion":"22.23.2","dependencies":{"zod":"^3.24.1","shiki":"^3.22.0","motion":"^12.26.2","nanoid":"^5.1.6","tokenlens":"^1.3.1","streamdown":"^2.4.0","lucide-react":"^0.577.0","@streamdown/cjk":"^1.0.2","@streamdown/code":"^1.1.0","@streamdown/math":"^1.0.2","react-jsx-parser":"^2.2.0","@streamdown/mermaid":"^1.0.2","use-stick-to-bottom":"^1.1.3","class-variance-authority":"^0.7.1","@radix-ui/react-use-controllable-state":"^1.2.2"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_hasShrinkwrap":false,"devDependencies":{"ai":"^7.0.0","tsup":"^8.3.5","jsdom":"^25.0.1","react":"^19.0.0","eslint":"^9.17.0","vitest":"^3.0.2","mermaid":"^11.12.2","react-dom":"^19.0.0","typescript":"^5.7.3","@types/react":"^19.0.2","@xyflow/react":"^12.11.1","@types/react-dom":"^19.0.2","@vitejs/plugin-react":"^4.3.4","@rive-app/react-webgl2":"^4.26.1","@testing-library/react":"^16.1.0","@elabs-ai/components-ui":"5.5.0","@testing-library/jest-dom":"^6.6.3","@elabs-ai/components-icons":"5.5.0","@elabs-ai/components-charts":"5.5.0","@elabs-ai/components-tokens":"5.5.0","@testing-library/user-event":"^14.5.2","@elabs-ai/components-eslint-config":"0.1.0","@elabs-ai/components-typescript-config":"0.1.0"},"peerDependencies":{"ai":"^6.0.0 || ^7.0.0","react":"^18.2.0 || ^19.0.0","mermaid":"^11.12.2","react-dom":"^18.2.0 || ^19.0.0","@xyflow/react":"^12.11.1","@rive-app/react-webgl2":"^4.26.1","@elabs-ai/components-ui":"^5.5.0","@elabs-ai/components-icons":"^5.5.0","@elabs-ai/components-tokens":"^5.5.0"},"peerDependenciesMeta":{"ai":{"optional":true},"mermaid":{"optional":true},"@rive-app/react-webgl2":{"optional":true}},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/components-ai_5.5.0_1790220999115_0.5092231253036876"}}},"time":{"created":"2026-08-17T08:05:14.375Z","modified":"2026-09-24T03:36:39.638Z","4.0.0":"2026-08-17T08:05:15.077Z","4.1.0":"2026-09-08T10:07:23.157Z","4.2.0":"2026-09-15T23:24:29.276Z","5.0.0":"2026-09-20T19:32:59.345Z","5.1.0":"2026-09-21T22:17:28.596Z","5.2.0":"2026-09-22T10:11:06.771Z","5.3.0":"2026-09-22T13:30:35.752Z","5.3.1":"2026-09-22T14:08:01.688Z","5.4.0":"2026-09-23T08:51:26.868Z","5.5.0":"2026-09-24T03:36:39.273Z"},"bugs":{"url":"https://github.com/mreimitz/elabs-components/issues"},"license":"MIT","homepage":"https://github.com/mreimitz/elabs-components#readme","repository":{"url":"git+https://github.com/mreimitz/elabs-components.git","type":"git","directory":"packages/ai"},"description":"<!-- brand-ui:gen:readme:start --> <!-- Generated by scripts/gen-package-readmes.mjs — do not edit inside these markers. -->","maintainers":[{"name":"mreimitz","email":"m.reimitz.privat@gmail.com"}],"readme":"<!-- brand-ui:gen:readme:start -->\n<!-- Generated by scripts/gen-package-readmes.mjs — do not edit inside these markers. -->\n\n# `@elabs-ai/components-ai`\n\n> ChatShell, Conversation, Message, PromptInput, Tool, Reasoning, citations.\n\nPart of **brand-ui**, a source-owned, token-driven React component system.\nPublished to the **public npm registry** under the `@elabs-ai` scope — it\ninstalls like any other npm dependency, with no registry configuration and\nno token required. See `docs/CONSUMING.md`.\n\n## Install\n\n```bash\npnpm add @elabs-ai/components-tokens @elabs-ai/components-ai\n```\n\n## Set up styling (do not skip)\n\nComponents are Tailwind v4 classes backed by semantic tokens. Two lines in\nyour CSS entry, or **everything renders unstyled** — the single most common\nmistake:\n\n```css\n@import \"@elabs-ai/components-tokens/styles.css\";\n@source \"../node_modules/@elabs-ai/components-ai/dist\";\n```\n\nThe `@source` line is required because Tailwind ignores `node_modules`. Add\none per brand-ui package you render. Then wrap your app once:\n\n```tsx\nimport { ThemeProvider } from \"@elabs-ai/components-tokens\";\n\n<ThemeProvider defaultTheme=\"light\">{children}</ThemeProvider>;\n```\n\n## This package specifically\n\n- `ai` (Vercel AI SDK) is a **types-only, optional** peer — your app owns the model calls.\n- `@xyflow/react` is a peer too (required), if you render the agent canvas.\n- `mermaid`, `@rive-app/react-webgl2` and `@xterm/xterm` + `@xterm/addon-fit` are optional peers reached only through a lazy `import()` (ADR 0019) — see \"Only install what you render\" below.\n\n## What's in it\n\n449 exported components — including `A2UI_CATALOG_SCHEMA`, `A2UI_CATALOG_VERSION`, `A2UI_COMMON_PROPS`, `A2UI_SURFACE_SCHEMA_ID`, `A2UI_VERSION`.\n\nDon't guess the API — ask the CLI:\n\n```bash\npnpm add -D @elabs-ai/components-cli\npnpm exec brand-ui search <query>   # find a component\npnpm exec brand-ui docs <Name>      # its real props, from source\n```\n\n## Using an AI coding agent?\n\nFor Claude Code, install the plugin from this repo's checkout:\n\n```\n/plugin marketplace add .\n/plugin install brand-ui\n```\n\n`brand-ui docs <Name>` returns intent, composition, state→token mappings and\nanti-patterns — tell your agent to run it instead of guessing a prop. The CLI\nalso runs as an MCP server (`brand-ui mcp`).\n\n## Full guide\n\nTailwind and Next.js wiring, per-package extras, agent enablement and a\nprompt for migrating an existing project: `docs/CONSUMING.md`.\n\n## License\n\nMIT\n\n<!-- brand-ui:gen:readme:end -->\n\n---\n\n## Only install what you render\n\nFive peers are optional. The package installs and builds with none of them —\neach is reached only through a lazy `import()` (ADR 0019), and a feature whose\npeer is absent renders an actionable message naming the package to install,\nnever a blank component or an unhandled rejection (ADR\n[0032](../../docs/ADR/0032-optional-peer-dependency-policy.md)).\n\n| Peer                                | Unlocks                                                     |\n| ----------------------------------- | ----------------------------------------------------------- |\n| `mermaid`                           | Mermaid diagrams in streamed markdown                       |\n| `@rive-app/react-webgl2`            | `Persona`'s animated avatar                                 |\n| `@xterm/xterm` + `@xterm/addon-fit` | `InteractiveTerminal`                                       |\n| `ai`                                | Types for the Vercel AI SDK's `UIMessage` — no runtime cost |\n\n```bash\npnpm add mermaid\npnpm add @rive-app/react-webgl2\npnpm add @xterm/xterm @xterm/addon-fit\npnpm add ai\n```\n\n`@xyflow/react` (the agent-canvas set) stays a **required** peer — install it\nwhenever you import from this package.\n\n**Known limitation:** `mermaid`'s bytes are always installed, even when you\nskip the peer — **two** of this package's own plain `dependencies` (not of\nyour app), `streamdown` and `@streamdown/mermaid`, each declare `mermaid` as\ntheir own plain, non-optional dependency, so every package manager resolves\nit regardless of what your app's manifest says. A hoisting layout\nadditionally makes `import(\"mermaid\")` resolve, so the runtime capability-gap\npanel never renders for you; skipping the peer still means you never have to\ndeclare `mermaid` yourself, and a genuinely unresolved engine still fails\nactionably rather than crashing. `pnpm check --rule optional-peer-transitives` (issue #94)\ntracks this as a defeated optional peer and will fail the day it is fixed\nupstream.\n\nFull detail (exact peer version ranges, per-feature notes):\n[`docs/CONSUMING.md`](../../docs/CONSUMING.md) §6.\n\n## Package detail\n\nPresentational AI/chat components — `ChatShell`, `Conversation`, `Message`,\n`PromptInput`/`Composer`, `Tool`, `Reasoning`, `Sources`, `Artifact`,\n`ContextPanel`, and the workspace/agent set.\n\n**`Composer` is the chat input. Every control the `PromptInput` family ships is\nreachable from a `Composer` prop; drop to `PromptInput` only for a bespoke\nshell.** The slots: `modelPicker` (pass a `ModelPicker` from\n`@elabs-ai/components-ui`), `mode` (`PromptInputMode`), `effort`\n(`PromptInputEffort`) and `slashCommands` (`PromptInputSlash`). The footer order\nis `attach · modelPicker · mode · effort │ voice · send`, matching\n`TerminalComposer` so the chat and console skins agree.\n\nThe components render the AI SDK `UIMessage` data model. **Your app owns the model\ncalls** (`useChat`, transport, providers) — `@elabs-ai/components-ai` imports the `ai` SDK as\n**types only**, never at runtime (D6 / ADR-0008). See `docs/DECISIONS.md` §D5.\n\nUsage, props and composition patterns live in Storybook and\n`docs/component-inventory.md`. This file covers only what you need to know when\n**deploying** it.\n\n## Network egress\n\nTwo components reach third-party origins at runtime, and several link out. Under a\nrestrictive CSP these fail — usually silently.\n\n| What                               | Origin                                                        | Directive         | Escape hatch                                                    |\n| ---------------------------------- | ------------------------------------------------------------- | ----------------- | --------------------------------------------------------------- |\n| `ModelProviderLogo` provider logos | `models.dev`                                                  | `img-src`         | `src` for a self-hosted asset, or `fallback`                    |\n| `Persona` Rive artwork             | `*.public.blob.vercel-storage.com`                            | `connect-src`     | self-host and pass `src`; blocked loads render a fallback orb   |\n| `OpenIn*` deep links               | chatgpt.com, claude.ai, cursor.com, scira.ai, t3.chat, v0.app | none (navigation) | don't render the component — note the prompt travels in the URL |\n\nFull detail, the exact CSP snippet, and the offline checklist:\n**[`docs/CSP-AND-NETWORK.md`](../../docs/CSP-AND-NETWORK.md)**.\n\n## Trusted Types\n\nUnder `require-trusted-types-for 'script'`, two transitive markdown dependencies\nresolve to `innerHTML`/`DOMParser` builds and blank content (a message containing\n`&amp;` renders empty), and Mermaid's DOMPurify installs a pass-through policy\nnamed `dompurify`.\n\nA library cannot fix this for you — it is export-condition selection in **your**\nbundler. The copy-pasteable alias snippet and the CSP directives are in\n[`docs/CSP-AND-NETWORK.md`](../../docs/CSP-AND-NETWORK.md) §2, and this repo\ndogfoods them in `apps/playground` and `apps/docs`.\n\n## Bundle size\n\nHeavy engines load on demand rather than riding in your entry chunk:\n\n- **Mermaid** (plus d3 and DOMPurify) loads on the first diagram render. Call\n  `preloadMermaid()` to warm it early on a surface you know renders diagrams.\n- **The Rive WebGL2 runtime** loads only when a `Persona` mounts.\n\nBoth are enforced by `pnpm check --rule eager-heavy-deps`. See ADR 0019. The remaining eager\nengines (React Flow, xterm) are tracked in that gate's baseline\n(the React Flow canvas set is a separate, intentional surface — see ADR 0018).\n","readmeFilename":"README.md"}