Commit c19e8786 by pangchong

style(aiAssistant): 优化代码格式和排版一致性

- 调整常量中 keywords 和 highlights 数组格式,保持单行书写
- 代码中删除多余空行,统一同类声明写法
- 解构赋值保持在一行,提升代码简洁性
- 规范长表达式换行,确保每行字符限制范围内
- 移除 types.ts 文件末尾多余空行,保持文件整洁
parent 0871b91b
...@@ -1256,21 +1256,7 @@ export const FAQ_DATABASE: FaqItem[] = [ ...@@ -1256,21 +1256,7 @@ export const FAQ_DATABASE: FaqItem[] = [
category: 'settings', category: 'settings',
categoryName: '设置与快捷键', categoryName: '设置与快捷键',
title: '如何移动工卡智能助手悬浮球?悬浮球如何磁力吸边?', title: '如何移动工卡智能助手悬浮球?悬浮球如何磁力吸边?',
keywords: [ keywords: ['智能助手', '悬浮球', '吸边', '移动助手', '磁力吸边', 'ai位置', 'ai助手', '拖动小助手', 'ai', 'znzs', 'xfq', 'xb', 'clxb'],
'智能助手',
'悬浮球',
'吸边',
'移动助手',
'磁力吸边',
'ai位置',
'ai助手',
'拖动小助手',
'ai',
'znzs',
'xfq',
'xb',
'clxb'
],
synonyms: ['怎么拖动智能小助手', '悬浮客服可以挪动吗', '小助手吸附边缘', '悬浮图标位置调整'], synonyms: ['怎么拖动智能小助手', '悬浮客服可以挪动吗', '小助手吸附边缘', '悬浮图标位置调整'],
answer: '智能工卡助手悬浮球支持自由拖动与智能磁力吸边自适应:', answer: '智能工卡助手悬浮球支持自由拖动与智能磁力吸边自适应:',
steps: [ steps: [
...@@ -1278,9 +1264,7 @@ export const FAQ_DATABASE: FaqItem[] = [ ...@@ -1278,9 +1264,7 @@ export const FAQ_DATABASE: FaqItem[] = [
'【磁力吸附】:松开鼠标或触摸后,悬浮球会自动根据屏幕中线判断,平滑吸附停靠到最近的左侧或右侧边缘(吸边间距 16px)。', '【磁力吸附】:松开鼠标或触摸后,悬浮球会自动根据屏幕中线判断,平滑吸附停靠到最近的左侧或右侧边缘(吸边间距 16px)。',
'【自适应窗口与控制台】:悬浮球采用响应式边缘停靠机制,无论打开/关闭浏览器 F12 控制台还是缩放窗口,都会紧贴边缘,永不脱轨或滞留在屏幕中央。' '【自适应窗口与控制台】:悬浮球采用响应式边缘停靠机制,无论打开/关闭浏览器 F12 控制台还是缩放窗口,都会紧贴边缘,永不脱轨或滞留在屏幕中央。'
], ],
highlights: [ highlights: ['悬浮球靠右吸附时,气泡与提示语向左侧展开;靠左吸附时自动反转方向(头像在左、气泡向右),确保不遮挡主要编辑界面。'],
'悬浮球靠右吸附时,气泡与提示语向左侧展开;靠左吸附时自动反转方向(头像在左、气泡向右),确保不遮挡主要编辑界面。'
],
relatedQuestions: ['faq_theme_settings', 'faq_keyboard_shortcuts'] relatedQuestions: ['faq_theme_settings', 'faq_keyboard_shortcuts']
} }
] ]
......
...@@ -3,7 +3,6 @@ import { FAQ_CATEGORIES, FAQ_DATABASE, HOT_QUESTIONS } from '../constants' ...@@ -3,7 +3,6 @@ import { FAQ_CATEGORIES, FAQ_DATABASE, HOT_QUESTIONS } from '../constants'
import { useEditorStore } from '@/store/editor' import { useEditorStore } from '@/store/editor'
import { useAiAssistantStore, type DockSide, type AnchorY } from '@/store/aiAssistant' import { useAiAssistantStore, type DockSide, type AnchorY } from '@/store/aiAssistant'
/** /**
* 文本清洗规范化 * 文本清洗规范化
*/ */
...@@ -220,19 +219,8 @@ export const useAiAssistant = () => { ...@@ -220,19 +219,8 @@ export const useAiAssistant = () => {
const aiStore = useAiAssistantStore() const aiStore = useAiAssistantStore()
// 解构 Pinia 响应式状态 // 解构 Pinia 响应式状态
const { const { isOpen, isMinimized, unreadCount, activeCategory, badgeSide, badgeAnchorY, badgeOffsetY, badgePos, winPos, winHasMoved, messageList } =
isOpen, storeToRefs(aiStore)
isMinimized,
unreadCount,
activeCategory,
badgeSide,
badgeAnchorY,
badgeOffsetY,
badgePos,
winPos,
winHasMoved,
messageList
} = storeToRefs(aiStore)
// 本地 UI 交互临时状态 // 本地 UI 交互临时状态
const inputQuery = ref('') const inputQuery = ref('')
...@@ -316,8 +304,7 @@ export const useAiAssistant = () => { ...@@ -316,8 +304,7 @@ export const useAiAssistant = () => {
const badgeW = badgeRef.value?.offsetWidth || 240 const badgeW = badgeRef.value?.offsetWidth || 240
const badgeH = badgeRef.value?.offsetHeight || 56 const badgeH = badgeRef.value?.offsetHeight || 56
const curX = badgeSide.value === 'left' ? 16 : Math.max(16, winW - badgeW - 16) const curX = badgeSide.value === 'left' ? 16 : Math.max(16, winW - badgeW - 16)
const curY = const curY = badgeAnchorY.value === 'top' ? badgeOffsetY.value : Math.max(16, winH - badgeOffsetY.value - badgeH)
badgeAnchorY.value === 'top' ? badgeOffsetY.value : Math.max(16, winH - badgeOffsetY.value - badgeH)
aiStore.setBadgePos({ x: curX, y: curY }) aiStore.setBadgePos({ x: curX, y: curY })
if (!winHasMoved.value) { if (!winHasMoved.value) {
...@@ -351,8 +338,7 @@ export const useAiAssistant = () => { ...@@ -351,8 +338,7 @@ export const useAiAssistant = () => {
// 响应视口变化,同步最新绝对像素坐标 // 响应视口变化,同步最新绝对像素坐标
const curX = badgeSide.value === 'left' ? 16 : Math.max(16, winW - badgeW - 16) const curX = badgeSide.value === 'left' ? 16 : Math.max(16, winW - badgeW - 16)
const curY = const curY = badgeAnchorY.value === 'top' ? badgeOffsetY.value : Math.max(16, winH - badgeOffsetY.value - badgeH)
badgeAnchorY.value === 'top' ? badgeOffsetY.value : Math.max(16, winH - badgeOffsetY.value - badgeH)
aiStore.setBadgePos({ x: curX, y: curY }) aiStore.setBadgePos({ x: curX, y: curY })
const dialogW = isMinimized.value ? 320 : 390 const dialogW = isMinimized.value ? 320 : 390
......
...@@ -21,4 +21,3 @@ export interface AiAssistantState { ...@@ -21,4 +21,3 @@ export interface AiAssistantState {
winHasMoved: boolean winHasMoved: boolean
messageList: ChatMessage[] messageList: ChatMessage[]
} }
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