@szjy/ai-coms 0.1.12 → 0.1.13
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/README.md +40 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.mjs +1598 -1120
- package/dist/index.umd.js +3 -2
- package/dist/packages/api/mock.d.ts +16 -0
- package/dist/packages/components/AiChat/src/custom-ui/actions/postMessage.d.ts +12 -0
- package/dist/packages/components/AiChat/src/custom-ui/components/button.d.ts +9 -0
- package/dist/packages/components/AiChat/src/custom-ui/components/list.d.ts +8 -0
- package/dist/packages/components/AiChat/src/custom-ui/events.d.ts +27 -0
- package/dist/packages/components/AiChat/src/custom-ui/index.d.ts +7 -0
- package/dist/packages/components/AiChat/src/custom-ui/parse.d.ts +11 -0
- package/dist/packages/components/AiChat/src/custom-ui/registry.d.ts +8 -0
- package/dist/packages/components/AiChat/src/custom-ui/render.d.ts +18 -0
- package/dist/packages/components/AiChat/src/custom-ui/types.d.ts +84 -0
- package/dist/packages/components/AiChat/src/index.vue.d.ts +56 -3
- package/dist/packages/components/AiChat/src/transform/index.d.ts +2 -1
- package/dist/packages/components/AiChatPlain/src/index.vue.d.ts +52 -1
- package/dist/style.css +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -309,6 +309,46 @@ const handleMessagePostRender = (container: HTMLElement, textContent: string) =>
|
|
|
309
309
|
> 完整教程见 [`docs/message-post-render.md`](docs/message-post-render.md)。
|
|
310
310
|
|
|
311
311
|
|
|
312
|
+
---
|
|
313
|
+
|
|
314
|
+
### szjy-ui fence:AI 结构化输出渲染为可交互组件(驱动 BIM 沙盘等外部页面)
|
|
315
|
+
|
|
316
|
+
AI 响应中的 ```` ```szjy-ui ```` fence 块(JSON)会渲染为可交互组件(内置 `list` 容器 / `button`),用户点击触发动作(内置 `postMessage`),把 `actionParams` 原样作为消息体发送到目标窗口——典型场景为 BIM 沙盘构件定位(`BIM_SANDBOX` 协议,详见《BIM沙盘外部通信文档》)。
|
|
317
|
+
|
|
318
|
+
```vue
|
|
319
|
+
<template>
|
|
320
|
+
<!-- 聊天与沙盘同窗口:target 默认 self 即可 -->
|
|
321
|
+
<sz-ai-chat llmName="dify-openai" ... />
|
|
322
|
+
|
|
323
|
+
<!-- 宿主页嵌沙盘 iframe:指定目标窗口与真实源 -->
|
|
324
|
+
<sz-ai-chat
|
|
325
|
+
:customUi="{ postMessage: { target: () => sandboxIframe.contentWindow, targetOrigin: 'http://172.17.102.17:5174' } }"
|
|
326
|
+
/>
|
|
327
|
+
</template>
|
|
328
|
+
```
|
|
329
|
+
|
|
330
|
+
````
|
|
331
|
+
```szjy-ui
|
|
332
|
+
{
|
|
333
|
+
"title": "构件列表",
|
|
334
|
+
"type": "list",
|
|
335
|
+
"gap": 12,
|
|
336
|
+
"items": [
|
|
337
|
+
{ "type": "button", "props": { "type": "primary", "content": "查看构件1" },
|
|
338
|
+
"action": "postMessage",
|
|
339
|
+
"actionParams": { "type": "BIM_SANDBOX", "action": "locateComponent", "payload": { "wbsCode": "CHKSLDY-SD-001" } } }
|
|
340
|
+
]
|
|
341
|
+
}
|
|
342
|
+
```
|
|
343
|
+
````
|
|
344
|
+
|
|
345
|
+
特性:流式中 JSON 未完整时降级为代码块、完成后自动切换;回执反馈(成功/失败就地展示,未就绪自动重试);组件/动作均注册表模式,宿主可用 `registerSzjyUiComponent` / `registerSzjyUiAction` 扩展。
|
|
346
|
+
|
|
347
|
+
配套 **Mock 模式**(不调真实后端):`llmName="standard"` + `:mockResponse="文本"` 即可流式输出自定义响应(内置样例 `DEFAULT_MOCK_RESPONSE`),examples 第 4 个 tab「BIM 沙盘 Mock 联调」提供完整联调环境(mock 编辑 + 沙盘 iframe + 协议消息日志)。
|
|
348
|
+
|
|
349
|
+
> 完整文档见 [`docs/szjy-ui-fence.md`](docs/szjy-ui-fence.md)。
|
|
350
|
+
|
|
351
|
+
|
|
312
352
|
---
|
|
313
353
|
|
|
314
354
|
### 项目维护规范
|
package/dist/index.d.ts
CHANGED
|
@@ -5,6 +5,8 @@ export * from './packages/common/custom-render/index';
|
|
|
5
5
|
export * from './packages/common/audio/opfs-cache';
|
|
6
6
|
export * from './packages/common/audio/voice-manager';
|
|
7
7
|
export * from './packages/common/audio/recorder';
|
|
8
|
+
export * from './packages/components/AiChat/src/custom-ui';
|
|
9
|
+
export { createMockStylized, DEFAULT_MOCK_RESPONSE } from './packages/api/mock';
|
|
8
10
|
export { default as create } from './packages/components/create';
|
|
9
11
|
declare const _default: {
|
|
10
12
|
install(app: App): void;
|