@tfdesign/b-end 1.1.0 → 1.1.2

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tfdesign/b-end",
3
- "version": "1.1.0",
3
+ "version": "1.1.2",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "description": "TFDS B-end React components + Tailwind v4 theme.css; self-contained npm install (no monorepo clone required).",
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: tfds
3
- description: "体服B端设计系统 v1.1.0,支持一键调用TFDS组件生成符合体服设计规范的UI组件与页面。"
3
+ description: "体服B端设计系统 v1.1.2,支持一键调用TFDS组件生成符合体服设计规范的UI组件与页面。"
4
4
  disable-model-invocation: true
5
5
  metadata:
6
6
  version: "3"
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "system": "b-end",
3
3
  "skill": "tfds",
4
- "generatedAt": "2026-05-14T14:00:01.732Z",
4
+ "generatedAt": "2026-05-14T17:33:55.296Z",
5
5
  "summary": "B 端 COMPONENTS 37 条 + 列表页模板 4 + PATTERNS 6;import 一律来自 @tfdesign/b-end。",
6
6
  "components": [
7
7
  {
@@ -7449,7 +7449,7 @@
7449
7449
  "kind": "page-pattern",
7450
7450
  "name": "Copilot 助手",
7451
7451
  "category": "page-pattern",
7452
- "description": "适用于对象详情、产物预览、策略画布、配置编辑等“主工作区 + AI 侧助”的混合协作页。左侧 Copilot 面板可通过顶栏按钮一键展开/收起,右侧为主内容区。",
7452
+ "description": "适用于对象详情、产物预览、策略画布、配置编辑等“AI 对话 + 最终结果产物详情”的混合协作页。左侧 Copilot 面板可通过顶栏按钮一键展开/收起,右侧白色大面板为左侧 AI 对话沉淀出的最终结果产物详情区。",
7453
7453
  "import": {
7454
7454
  "from": "@tfdesign/b-end",
7455
7455
  "default": "CopilotPagePattern"
@@ -7467,8 +7467,8 @@
7467
7467
  "tag"
7468
7468
  ],
7469
7469
  "rules": [
7470
- "【五模板定位】本模板只用于“对象 / 产物 / 编辑器是主角,AI 是辅助”的页面:策略画布、Prompt/配置编辑、报告预览、文档产物、批测结果、运行数据等。若页面主角是 AI 消息流,改用 `ChatConversationPattern`;若用户尚未进入上下文只是从输入框开始,改用 `ChatHomePagePattern`;若第一步是管理一批对象,改用 `BasePageFramePattern`;若是真实 IM 往返,改用 `IMConversationPattern`。",
7471
- "【布局 Recipe】必须按 `LAYOUT_RECIPES.md` 选择 `copilot-workbench`:页面级 header 直接坐灰底;对象 / 产物 / 编辑器所在主工作区进入白色 WorkSurface;AI 面板只是辅助区,不改变主工作区优先级。",
7470
+ "【五模板定位】本模板只用于“左侧 AI 对话驱动,右侧最终结果产物详情是主角”的页面:策略画布、Prompt/配置编辑、报告预览、文档产物、批测结果、运行数据等。若页面主角是 AI 消息流,改用 `ChatConversationPattern`;若用户尚未进入上下文只是从输入框开始,改用 `ChatHomePagePattern`;若第一步是管理一批对象,改用 `BasePageFramePattern`;若是真实 IM 往返,改用 `IMConversationPattern`。",
7471
+ "【布局 Recipe】必须按 `LAYOUT_RECIPES.md` 选择 `copilot-workbench`:页面级 header 直接坐灰底;右侧白色 WorkSurface 承载左侧 AI 对话沉淀出的最终结果产物详情;AI 面板提供追问、分析和生成入口,不改变右侧产物详情区的主工作区优先级。",
7472
7472
  "【组件选型门禁】页面级顶导栏动作必须用 `Button`,页面级切换用 `Tabs variant=\"pill\"` 或内容区 `Tabs variant=\"line/segment\"`;Copilot 输入用 `ChatInput`;编辑区标题用 `FormTitle`;Prompt/JSON/代码/长文本主编辑区用 `TextArea variant=\"code\" fillHeight`;数值参数用 `InputNumber`;枚举用 `Select`;布尔即时开关用 `Switch`;状态用 `Tag`。禁止手写编辑器、参数输入、状态徽标或 AI 侧栏。",
7473
7473
  "【整体风格】默认沿用基础页面框架:浅灰底(blueGrey-200)承载页面元信息和主工作区;内容区用纯白大卡片(12px 圆角、无浅灰描边)做区块分层;业务页面根容器贴浏览器边缘,不额外加外圈圆角或描边",
7474
7474
  "【⭐ 灰底裸顶导栏样板(标杆,其他页面要学)】顶导栏的所有元素(返回按钮 + 主策略名称 + 居中 Pill Tabs + 版本徽章 + 主次操作)**全部直接坐灰底**,无任何白卡背景容器,仅有 `shrink-0 px-4 py-4` 的内边距。这是 TFDS 整个设计系统中页面级 header 的标杆模式:白卡承载\"工作区内容\",灰底承载\"页面元数据 / 切换 / 触发动作\"。⛔ 严禁把\"标题 + 操作按钮\"包成 `<div bg=surface rounded-lg>` 白卡——会让页面变成上下两张同等大小的白卡、主从混乱。无论是列表页 / 编辑器 / Playground / Dashboard,页面级 header 都要照此模式裸放灰底。详见 LAYOUT_RULES § 1.5 + SKILL.md § 3.6。",
@@ -7476,7 +7476,8 @@
7476
7476
  "【OLA AI按钮】渐变边框胶囊,点击切换 Copilot 展开/收起;展开时边框加深以示激活态",
7477
7477
  "【Copilot面板】宽 280px,固定在内容区左侧;含标题栏(新会话文字+图标按钮组)、欢迎态(头像+OLA AI标题+欢迎语+快捷建议chips)、底部 ChatInput",
7478
7478
  "【快捷建议 chips】白色半透明圆角卡片,右侧箭头图标,hover 加深背景",
7479
- "【主内容白卡】flex-1撑满,顶部二级Tab栏(灰底+border-bottom)含策略画布Tab+流程数据Switch+操作按钮",
7479
+ "【最终结果产物详情白卡】右侧白色大面板 `flex-1` 撑满,是左侧 AI 对话沉淀出的最终结果产物详情区;顶部二级Tab栏(灰底+border-bottom)承载产物类型/视图切换,如策略画布Tab、流程数据Switch和操作按钮",
7480
+ "【详情区顶部自定义】右侧最终结果产物详情区顶部栏里的图标、标题文案、开关、次级按钮、主按钮和图标按钮都必须跟随具体场景自定义展示;`策略画布`、`流程数据`、`流程单测`、`批量测试` 只是示例占位,不应硬编码到所有 Copilot 页面。",
7480
7481
  "【布局防溢出】外层 `w-full min-w-0 max-w-full` + flex-col,内容区 `flex-wrap` / `min-w-0` 保证窄屏不横向溢出;Copilot shrink-0 且宽度可收缩,白卡 `flex-1 min-w-0`;仅框架层白卡保持纯白背景、不加浅灰描边,内部组件描边保持原样"
7481
7482
  ],
7482
7483
  "code": "// 见 CopilotPagePattern.jsx",
@@ -7500,6 +7501,15 @@
7500
7501
  "OLA AI 触发按钮",
7501
7502
  "混合协作",
7502
7503
  "上下文结果面板",
7504
+ "最终结果产物详情",
7505
+ "最终产物详情区",
7506
+ "AI 对话结果详情",
7507
+ "左侧 AI 对话最终结果",
7508
+ "产物详情白卡",
7509
+ "详情区顶部自定义",
7510
+ "产物顶部栏自定义",
7511
+ "自定义产物标题",
7512
+ "自定义产物操作按钮",
7503
7513
  "右侧/顶部 AI 协助",
7504
7514
  "边查看边追问",
7505
7515
  "左主内容右 AI",
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "system": "b-end",
3
3
  "skill": "tfds",
4
- "generatedAt": "2026-05-14T14:00:01.732Z",
4
+ "generatedAt": "2026-05-14T17:33:55.296Z",
5
5
  "purpose": "轻量组件与页面模板目录。AI 先读本文件做选型;确定命中组件后,再到 components.index.json 按 id 读取 props / rules / examples。",
6
6
  "counts": {
7
7
  "total": 47,
@@ -1728,7 +1728,7 @@
1728
1728
  "kind": "page-pattern",
1729
1729
  "name": "Copilot 助手",
1730
1730
  "category": "page-pattern",
1731
- "description": "适用于对象详情、产物预览、策略画布、配置编辑等“主工作区 + AI 侧助”的混合协作页。左侧 Copilot 面板可通过顶栏按钮一键展开/收起,右侧为主内容区。",
1731
+ "description": "适用于对象详情、产物预览、策略画布、配置编辑等“AI 对话 + 最终结果产物详情”的混合协作页。左侧 Copilot 面板可通过顶栏按钮一键展开/收起,右侧白色大面板为左侧 AI 对话沉淀出的最终结果产物详情区。",
1732
1732
  "import": {
1733
1733
  "from": "@tfdesign/b-end",
1734
1734
  "default": "CopilotPagePattern"
@@ -1753,13 +1753,13 @@
1753
1753
  "OLA AI 触发按钮",
1754
1754
  "混合协作",
1755
1755
  "上下文结果面板",
1756
- "右侧/顶部 AI 协助",
1757
- "边查看边追问",
1758
- "左主内容右 AI",
1759
- "AI 侧边栏",
1760
- "灰底裸顶导栏"
1756
+ "最终结果产物详情",
1757
+ "最终产物详情区",
1758
+ "AI 对话结果详情",
1759
+ "左侧 AI 对话最终结果",
1760
+ "产物详情白卡"
1761
1761
  ],
1762
- "ruleCount": 11,
1762
+ "ruleCount": 12,
1763
1763
  "exampleCount": 0,
1764
1764
  "hasCode": true,
1765
1765
  "detailRef": "components.index.json#copilot-page"
@@ -408,28 +408,15 @@ function TopBarLead({ copilotOpen, onToggleCopilot }) {
408
408
  variant="outline-black"
409
409
  radius="full"
410
410
  onClick={onToggleCopilot}
411
- className="shrink-0 border-transparent bg-[image:var(--gradient-ai-fill-2)] p-[1.5px] hover:bg-[image:var(--gradient-ai-fill-2)] active:bg-[image:var(--gradient-ai-fill-2)] focus-visible:outline-[var(--color-brand-200)]"
411
+ className="shrink-0 !h-[40px] !gap-2 !border-transparent !px-4 !py-0 hover:!border-transparent active:!scale-100 focus-visible:outline-[var(--color-brand-200)]"
412
412
  style={{
413
+ border: '1.5px solid transparent',
414
+ background: 'var(--gradient-ai-fill-1) padding-box, var(--gradient-ai-fill-2) border-box',
413
415
  boxShadow: '0 0 0 1px rgba(255,255,255,0.6) inset',
414
416
  }}
415
417
  >
416
- <span
417
- className="inline-flex items-center gap-2 rounded-full"
418
- style={{
419
- height: '34px',
420
- padding: '0 14px',
421
- borderRadius: '999px',
422
- background: 'var(--gradient-ai-fill-1)',
423
- fontSize: '14px',
424
- fontWeight: 600,
425
- color: 'var(--foreground, #0F1C35)',
426
- fontFamily: 'inherit',
427
- userSelect: 'none',
428
- }}
429
- >
430
- <img src={catcatSvg} alt="OLA AI" style={{ width: '20px', height: '20px', display: 'block' }} />
431
- <span>OLA AI</span>
432
- </span>
418
+ <img src={catcatSvg} alt="OLA AI" style={{ width: '20px', height: '20px', display: 'block' }} />
419
+ <span>OLA AI</span>
433
420
  </Button>
434
421
  )}
435
422
  </>
@@ -306,13 +306,16 @@ export default function ChatHomePage() {
306
306
  {
307
307
  id: 'copilot-page',
308
308
  name: 'Copilot 助手',
309
- description: '适用于对象详情、产物预览、策略画布、配置编辑等“主工作区 + AI 侧助”的混合协作页。左侧 Copilot 面板可通过顶栏按钮一键展开/收起,右侧为主内容区。',
309
+ description: '适用于对象详情、产物预览、策略画布、配置编辑等“AI 对话 + 最终结果产物详情”的混合协作页。左侧 Copilot 面板可通过顶栏按钮一键展开/收起,右侧白色大面板为左侧 AI 对话沉淀出的最终结果产物详情区。',
310
310
  keywords: [
311
311
  'Copilot 页面', 'Copilot 助手', 'Copilot 协同页', 'Copilot 详情页', 'AI 协同详情页',
312
312
  '左 Copilot 右内容', '左 AI 右画布', 'AI 辅助编辑',
313
313
  '策略画布 + AI', '配置编辑 + AI', '流程画布 + Copilot', '编辑页 + AI 助手',
314
314
  '展开 Copilot', '收起 Copilot', 'OLA AI 触发按钮',
315
- '混合协作', '上下文结果面板', '右侧/顶部 AI 协助',
315
+ '混合协作', '上下文结果面板',
316
+ '最终结果产物详情', '最终产物详情区', 'AI 对话结果详情', '左侧 AI 对话最终结果', '产物详情白卡',
317
+ '详情区顶部自定义', '产物顶部栏自定义', '自定义产物标题', '自定义产物操作按钮',
318
+ '右侧/顶部 AI 协助',
316
319
  // 错误信号词
317
320
  '边查看边追问', '左主内容右 AI', 'AI 侧边栏',
318
321
  // 灰底裸顶导栏(页面级 header 不包白卡)的标杆样本——其他页面要学这个模式
@@ -324,8 +327,8 @@ export default function ChatHomePage() {
324
327
  previewPadding: 0,
325
328
  components: ['button', 'tabs', 'chat-input', 'switch', 'icon', 'form-title', 'textarea', 'input-number', 'select', 'tag'],
326
329
  rules: [
327
- '【五模板定位】本模板只用于“对象 / 产物 / 编辑器是主角,AI 是辅助”的页面:策略画布、Prompt/配置编辑、报告预览、文档产物、批测结果、运行数据等。若页面主角是 AI 消息流,改用 `ChatConversationPattern`;若用户尚未进入上下文只是从输入框开始,改用 `ChatHomePagePattern`;若第一步是管理一批对象,改用 `BasePageFramePattern`;若是真实 IM 往返,改用 `IMConversationPattern`。',
328
- '【布局 Recipe】必须按 `LAYOUT_RECIPES.md` 选择 `copilot-workbench`:页面级 header 直接坐灰底;对象 / 产物 / 编辑器所在主工作区进入白色 WorkSurface;AI 面板只是辅助区,不改变主工作区优先级。',
330
+ '【五模板定位】本模板只用于“左侧 AI 对话驱动,右侧最终结果产物详情是主角”的页面:策略画布、Prompt/配置编辑、报告预览、文档产物、批测结果、运行数据等。若页面主角是 AI 消息流,改用 `ChatConversationPattern`;若用户尚未进入上下文只是从输入框开始,改用 `ChatHomePagePattern`;若第一步是管理一批对象,改用 `BasePageFramePattern`;若是真实 IM 往返,改用 `IMConversationPattern`。',
331
+ '【布局 Recipe】必须按 `LAYOUT_RECIPES.md` 选择 `copilot-workbench`:页面级 header 直接坐灰底;右侧白色 WorkSurface 承载左侧 AI 对话沉淀出的最终结果产物详情;AI 面板提供追问、分析和生成入口,不改变右侧产物详情区的主工作区优先级。',
329
332
  '【组件选型门禁】页面级顶导栏动作必须用 `Button`,页面级切换用 `Tabs variant="pill"` 或内容区 `Tabs variant="line/segment"`;Copilot 输入用 `ChatInput`;编辑区标题用 `FormTitle`;Prompt/JSON/代码/长文本主编辑区用 `TextArea variant="code" fillHeight`;数值参数用 `InputNumber`;枚举用 `Select`;布尔即时开关用 `Switch`;状态用 `Tag`。禁止手写编辑器、参数输入、状态徽标或 AI 侧栏。',
330
333
  '【整体风格】默认沿用基础页面框架:浅灰底(blueGrey-200)承载页面元信息和主工作区;内容区用纯白大卡片(12px 圆角、无浅灰描边)做区块分层;业务页面根容器贴浏览器边缘,不额外加外圈圆角或描边',
331
334
  '【⭐ 灰底裸顶导栏样板(标杆,其他页面要学)】顶导栏的所有元素(返回按钮 + 主策略名称 + 居中 Pill Tabs + 版本徽章 + 主次操作)**全部直接坐灰底**,无任何白卡背景容器,仅有 `shrink-0 px-4 py-4` 的内边距。这是 TFDS 整个设计系统中页面级 header 的标杆模式:白卡承载"工作区内容",灰底承载"页面元数据 / 切换 / 触发动作"。⛔ 严禁把"标题 + 操作按钮"包成 `<div bg=surface rounded-lg>` 白卡——会让页面变成上下两张同等大小的白卡、主从混乱。无论是列表页 / 编辑器 / Playground / Dashboard,页面级 header 都要照此模式裸放灰底。详见 LAYOUT_RULES § 1.5 + SKILL.md § 3.6。',
@@ -333,7 +336,8 @@ export default function ChatHomePage() {
333
336
  '【OLA AI按钮】渐变边框胶囊,点击切换 Copilot 展开/收起;展开时边框加深以示激活态',
334
337
  '【Copilot面板】宽 280px,固定在内容区左侧;含标题栏(新会话文字+图标按钮组)、欢迎态(头像+OLA AI标题+欢迎语+快捷建议chips)、底部 ChatInput',
335
338
  '【快捷建议 chips】白色半透明圆角卡片,右侧箭头图标,hover 加深背景',
336
- '【主内容白卡】flex-1撑满,顶部二级Tab栏(灰底+border-bottom)含策略画布Tab+流程数据Switch+操作按钮',
339
+ '【最终结果产物详情白卡】右侧白色大面板 `flex-1` 撑满,是左侧 AI 对话沉淀出的最终结果产物详情区;顶部二级Tab栏(灰底+border-bottom)承载产物类型/视图切换,如策略画布Tab、流程数据Switch和操作按钮',
340
+ '【详情区顶部自定义】右侧最终结果产物详情区顶部栏里的图标、标题文案、开关、次级按钮、主按钮和图标按钮都必须跟随具体场景自定义展示;`策略画布`、`流程数据`、`流程单测`、`批量测试` 只是示例占位,不应硬编码到所有 Copilot 页面。',
337
341
  '【布局防溢出】外层 `w-full min-w-0 max-w-full` + flex-col,内容区 `flex-wrap` / `min-w-0` 保证窄屏不横向溢出;Copilot shrink-0 且宽度可收缩,白卡 `flex-1 min-w-0`;仅框架层白卡保持纯白背景、不加浅灰描边,内部组件描边保持原样',
338
342
  ],
339
343
  code: `// 见 CopilotPagePattern.jsx`,