Commit 93b2fe08 by pangchong

style(aiAssistant): 优化组件代码格式和内容关键词配置

- 调整 AiAssistant 组件内元素的换行和缩进,提升代码可读性
- 统一列表项和文本间留空,改善界面显示格式
- 扩充常用功能关键词数组,增加拼音首字母、别名等匹配项
- 优化复制文本格式,避免多余换行,增强内容粘贴体验
- 更新主题配置文档格式,优化表格排列和对齐,提升文档易读性
parent 5bf68247
......@@ -79,72 +79,70 @@
- **状态/提示色**:使用 `text-danger` (或 `text-danger-x``text-danger-6` 对应系统错误色)、`text-success` (成功色)、`text-warning` (警示色),严禁使用 `text-red-600` 等固定原生色。
- **特定技术手册/PDF呈现例外**:在渲染特定技术手册节点(如 `DocNodeRenderer` 内的 `WARNING`, `CAUTION`, `NOTE`, `EFFECT`, `CONEFFECT`, `SBEFF`, `SBEFFC`, `REFBLOCK`, `REFINT`, `REFEXT`, `GRPHCREF`, `EIN` 以及 PDF 特定的表格、签字点等)时,其渲染样式必须严格以手册/PDF规范文件下的物理颜色、物理边框或字体样式定义为主(例如:警告 `WARNING` 必须为固定红 `red`,警戒 `CAUTION` 必须为 `#ff6a00`,注意 `NOTE` 必须为蓝色 `blue`,适用性说明 `EFFECT` / `SBEFF` 等必须为红色斜体 `color: red; font-style: italic;`,引用及功能号 `REFBLOCK` / `REFINT` / `REFEXT` / `GRPHCREF` / `EIN` 等必须为蓝色 `color: blue`,且功能号 `EIN` 必须带下划线,签字表必须是硬编码的 `border-black` 黑实线等)。对于此类具有强制色彩与表现形式规范的节点,**必须使用具体的物理样式属性(如 style="color: red;")进行精确定制,严禁使用 Tailwind/Naive UI 随暗黑模式等主题自适应的颜色类名或变量(如 text-primary, text-danger, text-red-600 等)**,以确保手册呈现的技术准确性与 PDF 导出的一致性。其他常规 UI 框架及骨架情况方可采用系统内置主题配置。
### 主题配置完整参考 (基于 `tailwind.ui.config.ts`)
系统内置的亮暗主题色彩体系如下,可通过 `useThemeVars()` 或自适应 CSS/Tailwind 变量使用:
#### 1. 核心语义与容器颜色 (Core & Container Tokens)
| 属性名称 (`GlobalThemeOverrides['common']`) | 亮色主题 (Light) | 暗色主题 (Dark) | 对应 Tailwind / 用途说明 |
| :--- | :--- | :--- | :--- |
| **primaryColor** | `#165DFF` | `#3c7eff` | `bg-primary` / `text-primary` 主题主色 (第 6 级) |
| **primaryColorHover** | `#4080FF` | `#7fe7c4` | `hover:bg-primary-hover` 悬浮主色 |
| **primaryColorPressed** | `#0E42D2` | `#5acea7` | `active:bg-primary-pressed` 点击激活主色 |
| **primaryColorSuppl** | `#94BFFF` | `rgb(42, 148, 125)` | 辅助主色 |
| **infoColor** | `#2080f0` | `#70c0e8` | `bg-info` / `text-info` 信息状态色 |
| **successColor** | `#00B42A` | `#3c7eff` | `bg-success` / `text-success` 成功状态色 |
| **warningColor** | `#FF7D00` | `#f2c97d` | `bg-warning` / `text-warning` 警示状态色 |
| **errorColor** | `#F53F3F` | `#e88080` | `bg-danger` / `text-danger` 错误/危险色 |
| **dividerColor** | `#e8eaed` | `rgba(255, 255, 255, 0.09)` | `border-divider` 分割线颜色 |
| **borderColor** | `#dee2e6` | `rgba(255, 255, 255, 0.24)` | `border-base` 基础边框颜色 |
| **bodyColor** | `#f5f7fa` | `rgb(16, 16, 20)` | `bg-body` 页面底色 |
| **cardColor** | `#fff` | `rgb(24, 24, 28)` | `bg-card` 卡片容器背景色 |
| **modalColor** | `#fff` | `rgb(44, 44, 50)` | 对话框与弹窗背景色 |
| **popoverColor** | `#fff` | `rgb(72, 72, 78)` | 气泡悬浮窗背景色 |
| **tableColor** | `#fff` | `rgb(24, 24, 28)` | 表格单元格背景色 |
| **tableHeaderColor** | `rgb(250, 250, 252)` | `rgba(255, 255, 255, 0.06)` | 表格表头背景色 |
| **inputColor** | `rgba(255, 255, 255, 1)` | `rgba(255, 255, 255, 0.1)` | 输入框背景色 |
| **actionColor** | `rgb(250, 250, 252)` | `rgba(255, 255, 255, 0.06)` | 动作操作区背景色 |
| **tabColor** | `rgb(247, 247, 250)` | `rgba(255, 255, 255, 0.04)` | Tab 栏背景色 |
| **codeColor** | `rgb(244, 244, 248)` | `rgba(255, 255, 255, 0.12)` | 代码块背景色 |
| **hoverColor** | `rgb(243, 243, 245)` | `rgba(255, 255, 255, 0.09)` | 通用悬浮高亮色 |
| **pressedColor** | `rgb(237, 237, 239)` | `rgba(255, 255, 255, 0.05)` | 通用按下激活色 |
| **tagColor** | `#eee` | `rgba(51, 51, 51, 1)` | 标签默认背景色 |
| 属性名称 (`GlobalThemeOverrides['common']`) | 亮色主题 (Light) | 暗色主题 (Dark) | 对应 Tailwind / 用途说明 |
| :------------------------------------------ | :----------------------- | :-------------------------- | :----------------------------------------------- |
| **primaryColor** | `#165DFF` | `#3c7eff` | `bg-primary` / `text-primary` 主题主色 (第 6 级) |
| **primaryColorHover** | `#4080FF` | `#7fe7c4` | `hover:bg-primary-hover` 悬浮主色 |
| **primaryColorPressed** | `#0E42D2` | `#5acea7` | `active:bg-primary-pressed` 点击激活主色 |
| **primaryColorSuppl** | `#94BFFF` | `rgb(42, 148, 125)` | 辅助主色 |
| **infoColor** | `#2080f0` | `#70c0e8` | `bg-info` / `text-info` 信息状态色 |
| **successColor** | `#00B42A` | `#3c7eff` | `bg-success` / `text-success` 成功状态色 |
| **warningColor** | `#FF7D00` | `#f2c97d` | `bg-warning` / `text-warning` 警示状态色 |
| **errorColor** | `#F53F3F` | `#e88080` | `bg-danger` / `text-danger` 错误/危险色 |
| **dividerColor** | `#e8eaed` | `rgba(255, 255, 255, 0.09)` | `border-divider` 分割线颜色 |
| **borderColor** | `#dee2e6` | `rgba(255, 255, 255, 0.24)` | `border-base` 基础边框颜色 |
| **bodyColor** | `#f5f7fa` | `rgb(16, 16, 20)` | `bg-body` 页面底色 |
| **cardColor** | `#fff` | `rgb(24, 24, 28)` | `bg-card` 卡片容器背景色 |
| **modalColor** | `#fff` | `rgb(44, 44, 50)` | 对话框与弹窗背景色 |
| **popoverColor** | `#fff` | `rgb(72, 72, 78)` | 气泡悬浮窗背景色 |
| **tableColor** | `#fff` | `rgb(24, 24, 28)` | 表格单元格背景色 |
| **tableHeaderColor** | `rgb(250, 250, 252)` | `rgba(255, 255, 255, 0.06)` | 表格表头背景色 |
| **inputColor** | `rgba(255, 255, 255, 1)` | `rgba(255, 255, 255, 0.1)` | 输入框背景色 |
| **actionColor** | `rgb(250, 250, 252)` | `rgba(255, 255, 255, 0.06)` | 动作操作区背景色 |
| **tabColor** | `rgb(247, 247, 250)` | `rgba(255, 255, 255, 0.04)` | Tab 栏背景色 |
| **codeColor** | `rgb(244, 244, 248)` | `rgba(255, 255, 255, 0.12)` | 代码块背景色 |
| **hoverColor** | `rgb(243, 243, 245)` | `rgba(255, 255, 255, 0.09)` | 通用悬浮高亮色 |
| **pressedColor** | `rgb(237, 237, 239)` | `rgba(255, 255, 255, 0.05)` | 通用按下激活色 |
| **tagColor** | `#eee` | `rgba(51, 51, 51, 1)` | 标签默认背景色 |
#### 2. 文字、图标与状态颜色 (Text, Icons & Interactive)
| 属性名称 | 亮色主题 (Light) | 暗色主题 (Dark) | 对应 Tailwind / 用途说明 |
| :--- | :--- | :--- | :--- |
| **textColorBase** | `#000` | `#fff` | 基础文字绝对黑/白基准色 |
| **textColor1** | `#1D2129` | `rgba(255, 255, 255, 0.9)` | `text-color1` / `text-primary` 主标题与重要正文 |
| **textColor2** | `#4E5969` | `rgba(255, 255, 255, 0.82)` | `text-color2` / `text-regular` 次要文字与常规描述 |
| **textColor3** | `#86909C` | `rgba(255, 255, 255, 0.52)` | `text-color3` / `text-secondary` 辅助说明与次要标签 |
| **textColorDisabled** | `#C9CDD4` | `rgba(255, 255, 255, 0.38)` | `text-color4` 禁用状态文字 |
| **placeholderColor** | `rgba(194, 194, 194, 1)` | `rgba(255, 255, 255, 0.38)` | 占位符提示文字颜色 |
| **iconColor** | `rgba(194, 194, 194, 1)` | `rgba(255, 255, 255, 0.38)` | 默认图标颜色 |
| **iconColorHover** | `rgba(146, 146, 146, 1)` | `rgba(255, 255, 255, 0.475)` | 图标悬浮颜色 |
| **scrollbarColor** | `rgba(0, 0, 0, 0.25)` | `rgba(255, 255, 255, 0.2)` | 滚动条轨道与滑块颜色 |
| 属性名称 | 亮色主题 (Light) | 暗色主题 (Dark) | 对应 Tailwind / 用途说明 |
| :-------------------- | :----------------------- | :--------------------------- | :-------------------------------------------------- |
| **textColorBase** | `#000` | `#fff` | 基础文字绝对黑/白基准色 |
| **textColor1** | `#1D2129` | `rgba(255, 255, 255, 0.9)` | `text-color1` / `text-primary` 主标题与重要正文 |
| **textColor2** | `#4E5969` | `rgba(255, 255, 255, 0.82)` | `text-color2` / `text-regular` 次要文字与常规描述 |
| **textColor3** | `#86909C` | `rgba(255, 255, 255, 0.52)` | `text-color3` / `text-secondary` 辅助说明与次要标签 |
| **textColorDisabled** | `#C9CDD4` | `rgba(255, 255, 255, 0.38)` | `text-color4` 禁用状态文字 |
| **placeholderColor** | `rgba(194, 194, 194, 1)` | `rgba(255, 255, 255, 0.38)` | 占位符提示文字颜色 |
| **iconColor** | `rgba(194, 194, 194, 1)` | `rgba(255, 255, 255, 0.38)` | 默认图标颜色 |
| **iconColorHover** | `rgba(146, 146, 146, 1)` | `rgba(255, 255, 255, 0.475)` | 图标悬浮颜色 |
| **scrollbarColor** | `rgba(0, 0, 0, 0.25)` | `rgba(255, 255, 255, 0.2)` | 滚动条轨道与滑块颜色 |
#### 3. 填充、边框与背景梯度体系 (Fill, Border, Text & Bg Scales)
| 变量分类 | 梯度级别 | 亮色主题 (Light) | 暗色主题 (Dark) | 对应 Tailwind 类名 |
| :--- | :--- | :--- | :--- | :--- |
| **填充色阶 (Fill)** | `colorFill1`<br>`colorFill2`<br>`colorFill3`<br>`colorFill4` | `#f7f8fa`<br>`#f2f3f5`<br>`#e5e6eb`<br>`#c9cdd4` | `#17171a`<br>`#2e2e30`<br>`#484849`<br>`#5f5f60` | `bg-fill-1` (最浅/浅灰底)<br>`bg-fill-2` (卡片/次级背景)<br>`bg-fill-3` (悬浮/激活背景)<br>`bg-fill-4` (深阶填充) |
| **边框色阶 (Border)** | `colorBorder1`<br>`colorBorder2`<br>`colorBorder3`<br>`colorBorder4` | `#f2f3f5`<br>`#e5e6eb`<br>`#c9cdd4`<br>`#86909c` | `#2e2e30`<br>`#484849`<br>`#5f5f60`<br>`#929293` | `border-color1` (极浅细线)<br>`border-color2` (常规卡片边框)<br>`border-color3` (输入框/高亮边框)<br>`border-color4` (深色强边框) |
| **文字色阶 (Text)** | `colorText1`<br>`colorText2`<br>`colorText3`<br>`colorText4` | `#1d2129`<br>`#4e5969`<br>`#86909c`<br>`#c9cdd4` | `#f6f6f6`<br>`#c5c5c5`<br>`#929293`<br>`#5f5f60` | `text-color1` (主标题正文)<br>`text-color2` (常规文字)<br>`text-color3` (辅助弱文字)<br>`text-color4` (极弱/禁用文字) |
| **背景层级 (Bg)** | `colorBg1` ~ `colorBg5` | 全部为 `#ffffff` | `#17171A`<br>`#232324`<br>`#2A2A2B`<br>`#313132`<br>`#373739` | `bg-bg1` ~ `bg-bg5` (暗黑模式由浅至深的5级层叠背景) |
| 变量分类 | 梯度级别 | 亮色主题 (Light) | 暗色主题 (Dark) | 对应 Tailwind 类名 |
| :-------------------- | :------------------------------------------------------------------- | :----------------------------------------------- | :------------------------------------------------------------ | :-------------------------------------------------------------------------------------------------------------------------------- |
| **填充色阶 (Fill)** | `colorFill1`<br>`colorFill2`<br>`colorFill3`<br>`colorFill4` | `#f7f8fa`<br>`#f2f3f5`<br>`#e5e6eb`<br>`#c9cdd4` | `#17171a`<br>`#2e2e30`<br>`#484849`<br>`#5f5f60` | `bg-fill-1` (最浅/浅灰底)<br>`bg-fill-2` (卡片/次级背景)<br>`bg-fill-3` (悬浮/激活背景)<br>`bg-fill-4` (深阶填充) |
| **边框色阶 (Border)** | `colorBorder1`<br>`colorBorder2`<br>`colorBorder3`<br>`colorBorder4` | `#f2f3f5`<br>`#e5e6eb`<br>`#c9cdd4`<br>`#86909c` | `#2e2e30`<br>`#484849`<br>`#5f5f60`<br>`#929293` | `border-color1` (极浅细线)<br>`border-color2` (常规卡片边框)<br>`border-color3` (输入框/高亮边框)<br>`border-color4` (深色强边框) |
| **文字色阶 (Text)** | `colorText1`<br>`colorText2`<br>`colorText3`<br>`colorText4` | `#1d2129`<br>`#4e5969`<br>`#86909c`<br>`#c9cdd4` | `#f6f6f6`<br>`#c5c5c5`<br>`#929293`<br>`#5f5f60` | `text-color1` (主标题正文)<br>`text-color2` (常规文字)<br>`text-color3` (辅助弱文字)<br>`text-color4` (极弱/禁用文字) |
| **背景层级 (Bg)** | `colorBg1` ~ `colorBg5` | 全部为 `#ffffff` | `#17171A`<br>`#232324`<br>`#2A2A2B`<br>`#313132`<br>`#373739` | `bg-bg1` ~ `bg-bg5` (暗黑模式由浅至深的5级层叠背景) |
#### 4. 1~7 级色阶体系 (Arco / Tailwind Color Scales)
| 体系名称 | 亮色色阶 (Light: 1 $\rightarrow$ 7) | 暗色色阶 (Dark: 1 $\rightarrow$ 7) | 对应 Tailwind 扩展类名 |
| :--- | :--- | :--- | :--- |
| **主色阶 (Primary)** | `#E8F3FF` $\rightarrow$ `#BEDAFF` $\rightarrow$ `#94BFFF` $\rightarrow$ `#6AA1FF` $\rightarrow$ `#4080FF` $\rightarrow$ **`#165DFF` (6)** $\rightarrow$ `#000D4D` | `#000d4d` $\rightarrow$ `#041b79` $\rightarrow$ `#0e32a6` $\rightarrow$ `#1d4dd2` $\rightarrow$ `#306fff` $\rightarrow$ **`#3c7eff` (6)** $\rightarrow$ `#689fff` | `bg-primary-1` ~ `bg-primary-7`<br>`text-primary-1` ~ `text-primary-7` |
| 体系名称 | 亮色色阶 (Light: 1 $\rightarrow$ 7) | 暗色色阶 (Dark: 1 $\rightarrow$ 7) | 对应 Tailwind 扩展类名 |
| :--------------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------- | :--------------------------------------------------------------------- |
| **主色阶 (Primary)** | `#E8F3FF` $\rightarrow$ `#BEDAFF` $\rightarrow$ `#94BFFF` $\rightarrow$ `#6AA1FF` $\rightarrow$ `#4080FF` $\rightarrow$ **`#165DFF` (6)** $\rightarrow$ `#000D4D` | `#000d4d` $\rightarrow$ `#041b79` $\rightarrow$ `#0e32a6` $\rightarrow$ `#1d4dd2` $\rightarrow$ `#306fff` $\rightarrow$ **`#3c7eff` (6)** $\rightarrow$ `#689fff` | `bg-primary-1` ~ `bg-primary-7`<br>`text-primary-1` ~ `text-primary-7` |
| **成功色阶 (Success)** | `#E8FFEA` $\rightarrow$ `#AFF0B5` $\rightarrow$ `#7BE188` $\rightarrow$ `#4CD263` $\rightarrow$ `#23C343` $\rightarrow$ **`#00B42A` (6)** $\rightarrow$ `#004D1C` | `#004d1c` $\rightarrow$ `#046625` $\rightarrow$ `#0a802d` $\rightarrow$ `#129a37` $\rightarrow$ `#1db440` $\rightarrow$ **`#27c346` (6)** $\rightarrow$ `#50d266` | `bg-success-1` ~ `bg-success-7`<br>`text-success-1` ~ `text-success-7` |
| **警示色阶 (Warning)** | `#FFF3E8` $\rightarrow$ `#FDDDC3` $\rightarrow$ `#FCC59F` $\rightarrow$ `#F99057` $\rightarrow$ `#F99057` $\rightarrow$ **`#F77234` (6)** $\rightarrow$ `#CC5120` | `#4d1b00` $\rightarrow$ `#793004` $\rightarrow$ `#a64b0a` $\rightarrow$ `#d26913` $\rightarrow$ `#ff8d1f` $\rightarrow$ **`#ff9626` (6)** $\rightarrow$ `#ffb357` | `bg-warning-1` ~ `bg-warning-7`<br>`text-warning-1` ~ `text-warning-7` |
| **错误色阶 (Danger)** | `#FFECE8` $\rightarrow$ `#FDCDC5` $\rightarrow$ `#FBACA3` $\rightarrow$ `#F98981` $\rightarrow$ `#F76560` $\rightarrow$ **`#F53F3F` (6)** $\rightarrow$ `#CB272D` | `#4d000a` $\rightarrow$ `#770611` $\rightarrow$ `#a1161f` $\rightarrow$ `#cb2e34` $\rightarrow$ `#f54e4e` $\rightarrow$ **`#f76965` (6)** $\rightarrow$ `#f98d86` | `bg-danger-1` ~ `bg-danger-7`<br>`text-danger-1` ~ `text-danger-7` |
| **链接色阶 (Link)** | `#E8F7FF` $\rightarrow$ `#C3E7FE` $\rightarrow$ `#9FD4FD` $\rightarrow$ `#7BC0FC` $\rightarrow$ `#57A9FB` $\rightarrow$ **`#3491FA` (6)** $\rightarrow$ `#206CCF` | `#000d4d` $\rightarrow$ `#041b79` $\rightarrow$ `#0e32a6` $\rightarrow$ `#1d4dd2` $\rightarrow$ `#306fff` $\rightarrow$ **`#3c7eff` (6)** $\rightarrow$ `#689fff` | `bg-link-1` ~ `bg-link-7`<br>`text-link-1` ~ `text-link-7` |
| **错误色阶 (Danger)** | `#FFECE8` $\rightarrow$ `#FDCDC5` $\rightarrow$ `#FBACA3` $\rightarrow$ `#F98981` $\rightarrow$ `#F76560` $\rightarrow$ **`#F53F3F` (6)** $\rightarrow$ `#CB272D` | `#4d000a` $\rightarrow$ `#770611` $\rightarrow$ `#a1161f` $\rightarrow$ `#cb2e34` $\rightarrow$ `#f54e4e` $\rightarrow$ **`#f76965` (6)** $\rightarrow$ `#f98d86` | `bg-danger-1` ~ `bg-danger-7`<br>`text-danger-1` ~ `text-danger-7` |
| **链接色阶 (Link)** | `#E8F7FF` $\rightarrow$ `#C3E7FE` $\rightarrow$ `#9FD4FD` $\rightarrow$ `#7BC0FC` $\rightarrow$ `#57A9FB` $\rightarrow$ **`#3491FA` (6)** $\rightarrow$ `#206CCF` | `#000d4d` $\rightarrow$ `#041b79` $\rightarrow$ `#0e32a6` $\rightarrow$ `#1d4dd2` $\rightarrow$ `#306fff` $\rightarrow$ **`#3c7eff` (6)** $\rightarrow$ `#689fff` | `bg-link-1` ~ `bg-link-7`<br>`text-link-1` ~ `text-link-7` |
---
......@@ -380,4 +378,3 @@ export const COMPOSITE_CONTAINER_MAP: Record<string, string[]> = {
- `keywords` 必须同时覆盖中文全称、行业英文术语及**全拼与拼音首字母缩写**(例如:表格配置 `['表格', 'table', 'bg', 'biaoge']`,附图 `['附图', 'graphic', 'ft', 'futu', 'tp']`)。
- `contextTags` 必须准确配置关联的 XML 标签名(如 `PARAC``TABLE``GRAPHIC``SIGNOFF` 等),以确保用户在编辑器或节点树中选中特定标签时,AI 助手能自动触发上下文感知推荐。
- **快捷动作绑定 (`actions`)**:若新增或修改的功能支持从 AI 助手气泡中一键呼出(通过 `eventBus` 触发,如 `trigger_insert_graphic``trigger_open_settings``trigger_undo` 等),必须在 `actions` 字段中配置对应的快捷动作按钮,实现“问答即操作”的闭环体验。
......@@ -172,7 +172,22 @@ export const FAQ_DATABASE: FaqItem[] = [
category: 'insert',
categoryName: '元素与排版',
title: '如何插入单选 / 多选项组(SELECTION)?',
keywords: ['单选', '多选', '选项组', 'selection', 'checkbox', 'radio', '选择题', '勾选项', '符合性', 'xx', 'xuanxiang', 'dx', 'danxuan', 'duoxuan'],
keywords: [
'单选',
'多选',
'选项组',
'selection',
'checkbox',
'radio',
'选择题',
'勾选项',
'符合性',
'xx',
'xuanxiang',
'dx',
'danxuan',
'duoxuan'
],
synonyms: ['怎么加勾选框', '添加单选框', '插入选项', '添加符合性检查', '多选框'],
answer: '选项组用于在工卡执行中提供符合性判断(如“合格/不合格”、“换件/原装”)。',
steps: [
......@@ -274,7 +289,21 @@ export const FAQ_DATABASE: FaqItem[] = [
category: 'insert',
categoryName: '元素与排版',
title: '如何在文本中插入交叉引用(REFBLOCK / REFINT)与功能号(EIN)?',
keywords: ['引用', 'refblock', 'refint', 'refext', 'ein', '功能号', 'grphcref', '交叉引用', '附图引用', 'yy', 'yinyong', 'gnh', 'gongnenghao'],
keywords: [
'引用',
'refblock',
'refint',
'refext',
'ein',
'功能号',
'grphcref',
'交叉引用',
'附图引用',
'yy',
'yinyong',
'gnh',
'gongnenghao'
],
synonyms: ['怎么加引用', '怎么关联其他章节', '插入功能号', '图纸引用', '添加适用性'],
answer: '在富文本编辑段落(PARAC/PARA)中,支持插入符合航空标准的一系列行内引用与标识:',
steps: [
......@@ -1032,7 +1061,22 @@ export const FAQ_DATABASE: FaqItem[] = [
category: 'settings',
categoryName: '设置与快捷键',
title: '工卡 XML 编辑器有哪些常用快捷键?',
keywords: ['快捷键', '键盘快捷键', 'ctrl+z', 'ctrl+y', 'ctrl+shift+d', 'ctrl+f', '撤销', '重做', '主题切换', 'shortcuts', 'kjj', 'kuaijiejian', 'cx', 'chexiao'],
keywords: [
'快捷键',
'键盘快捷键',
'ctrl+z',
'ctrl+y',
'ctrl+shift+d',
'ctrl+f',
'撤销',
'重做',
'主题切换',
'shortcuts',
'kjj',
'kuaijiejian',
'cx',
'chexiao'
],
synonyms: ['有哪些按键操作', '撤销重做快捷键', '快捷键列表', '搜索快捷键', '深色模式快捷键'],
answer: '熟练使用快捷键可大幅提升工卡编写效率:',
steps: [
......@@ -1069,7 +1113,22 @@ export const FAQ_DATABASE: FaqItem[] = [
category: 'settings',
categoryName: '设置与快捷键',
title: '如何切换暗黑模式、主题色或调整字号?',
keywords: ['暗黑模式', '黑夜模式', '明亮模式', '主题色', '换皮肤', '字体大小', '字号', '偏好设置', '皮肤', 'ah', 'anhei', 'zhuti', 'zt', 'zh'],
keywords: [
'暗黑模式',
'黑夜模式',
'明亮模式',
'主题色',
'换皮肤',
'字体大小',
'字号',
'偏好设置',
'皮肤',
'ah',
'anhei',
'zhuti',
'zt',
'zh'
],
synonyms: ['怎么开夜间模式', '怎么改颜色', '字体太小怎么变大', '偏好设置在哪里', '改字体'],
answer: '系统支持极高自由度的界面个性化定制与偏好管理:',
steps: [
......
......@@ -672,9 +672,7 @@ export const useAiAssistant = () => {
textToCopy = `【${msg.faq.title}】\n${msg.faq.answer}`
if (msg.faq.steps && msg.faq.steps.length > 0) {
const parsed = parseStepItems(msg.faq.steps)
textToCopy +=
`\n\n操作指引:\n` +
parsed.map((s) => (s.isSubItem ? ` • ${s.text}` : `${s.stepNumber}. ${s.text}`)).join('\n')
textToCopy += `\n\n操作指引:\n` + parsed.map((s) => (s.isSubItem ? ` • ${s.text}` : `${s.stepNumber}. ${s.text}`)).join('\n')
}
if (msg.faq.highlights && msg.faq.highlights.length > 0) {
textToCopy += `\n\n提示:\n` + msg.faq.highlights.map((h) => `• ${h}`).join('\n')
......
......@@ -296,7 +296,9 @@
</div>
<!-- 主步骤 (带序号) -->
<div v-else class="text-[11px] text-color2 flex items-start gap-1.5 leading-relaxed">
<span class="font-bold shrink-0" :style="{ color: themeVars.primaryColor }">{{ step.stepNumber }}.</span>
<span class="font-bold shrink-0" :style="{ color: themeVars.primaryColor }">
{{ step.stepNumber }}.
</span>
<span class="flex-1 text-left break-words">{{ step.text }}</span>
</div>
</template>
......@@ -381,7 +383,8 @@
@click="handleAskQuestion(getRelatedFaq(rId)!.title)"
>
<span class="flex-1 leading-relaxed text-left break-words">
<span :style="{ color: themeVars.primaryColor }">🔹</span> {{ getRelatedFaq(rId)!.title }}
<span :style="{ color: themeVars.primaryColor }">🔹</span>
{{ getRelatedFaq(rId)!.title }}
</span>
<n-icon
class="text-color3 group-hover:text-color1 transition-colors shrink-0 ml-1.5 opacity-60 group-hover:opacity-100"
......@@ -408,7 +411,9 @@
<button
type="button"
class="flex items-center gap-1 px-1.5 py-0.5 rounded border border-divider transition-colors focus:outline-none"
:class="msg.feedback === 'helpful' ? 'font-bold' : 'hover:border-color3 text-color3 hover:text-color1'"
:class="
msg.feedback === 'helpful' ? 'font-bold' : 'hover:border-color3 text-color3 hover:text-color1'
"
:style="
msg.feedback === 'helpful'
? {
......@@ -426,7 +431,9 @@
<button
type="button"
class="flex items-center gap-1 px-1.5 py-0.5 rounded border border-divider transition-colors focus:outline-none"
:class="msg.feedback === 'unhelpful' ? 'font-bold' : 'hover:border-color3 text-color3 hover:text-color1'"
:class="
msg.feedback === 'unhelpful' ? 'font-bold' : 'hover:border-color3 text-color3 hover:text-color1'
"
:style="
msg.feedback === 'unhelpful'
? {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment