受限生成式界面
Generative UI / Component Registry
把结构化结果映射成已注册的卡片、图表或表单。
核对官方来源
从明确注册的组件与属性渲染,不执行生成的代码。状态:已完成(示例)
app.mjs
import { mount } from '@sofish/ui/browser';
const view = mount(
document.querySelector('#example'),
'generative-ui'
);
view.element.addEventListener('ui:change', event => {
console.log(event.detail.value);
});
// view.update({ ...nextProps });
// view.destroy();什么时候用
数据需要交互展示,并且可用组件及动作有明确边界。
什么时候不用
不要把模型生成的任意代码直接视为可信应用界面。
COMPONENT API
属性与事件
传入业务数据,通过事件连接你的应用。
| 属性 | 默认值 |
|---|---|
label | "从已注册组件中渲染" |
value | "task" |
views | [{"id":"task","label":"任务视图","component":"alert","props":{"title":"核对官方来源","description":"状态:已完成(示例)"}},{"id":"decision","label":"决策视图","component":"a |
note | "从明确注册的组件与属性渲染,不执行生成的代码。" |
事件
ui:change ui:error
INTERACTION NOTES
交互与可访问性
- 生成后仍需保持标签、顺序与焦点。
- 更新组件时避免打断用户正在操作的表单。
和相似组件的区别
受限渲染选择既有组件;Artifacts 可只是静态产物,协议描述也不等于组件实现。
RESEARCH & ALTERNATIVES
官方实现映射
以下是上游生态对同类交互的实现。上方运行的是 UI 自己的组件。
关键状态
React / Next.js、Web Components · 来源核验