chore: update yarn.lock and refactor SettingsTab component

- Added "@typescript-eslint/visitor-keys@npm:8.43.0" to yarn.lock.
- Refactored getVirtualIndexes in DraggableVirtualList to use item.index.
- Replaced useSettings with usePreference for codeFancyBlock in SettingsTab.
- Updated Switch component to use setCodeFancyBlock directly.
This commit is contained in:
fullex 2025-09-16 11:56:10 +08:00
parent 182ac3bc98
commit ffe897d58c
3 changed files with 13 additions and 23 deletions

View File

@ -122,7 +122,7 @@ function DraggableVirtualList<T>({
resizeItem: (index, size) => virtualizer.resizeItem(index, size),
getTotalSize: () => virtualizer.getTotalSize(),
getVirtualItems: () => virtualizer.getVirtualItems(),
getVirtualIndexes: () => virtualizer.getVirtualIndexes()
getVirtualIndexes: () => virtualizer.getVirtualItems().map((item) => item.index)
}),
[virtualizer]
)

View File

@ -11,14 +11,11 @@ import { useCodeStyle } from '@renderer/context/CodeStyleProvider'
import { useTheme } from '@renderer/context/ThemeProvider'
import { useAssistant } from '@renderer/hooks/useAssistant'
import { useProvider } from '@renderer/hooks/useProvider'
import { useSettings } from '@renderer/hooks/useSettings'
import useTranslate from '@renderer/hooks/useTranslate'
import { SettingDivider, SettingRow, SettingRowTitle } from '@renderer/pages/settings'
import AssistantSettingsPopup from '@renderer/pages/settings/AssistantSettings'
import { CollapsibleSettingGroup } from '@renderer/pages/settings/SettingGroup'
import { getDefaultModel } from '@renderer/services/AssistantService'
import { useAppDispatch } from '@renderer/store'
import { setCodeFancyBlock } from '@renderer/store/settings'
import { Assistant, AssistantSettings, CodeStyleVarious, MathEngine } from '@renderer/types'
import { modalConfirm } from '@renderer/utils'
import { getSendMessageShortcutLabel } from '@renderer/utils/input'
@ -85,6 +82,7 @@ const SettingsTab: FC<Props> = (props) => {
enabled: 'chat.code.execution.enabled',
timeoutMinutes: 'chat.code.execution.timeout_minutes'
})
const [codeFancyBlock, setCodeFancyBlock] = usePreference('chat.code.fancy_block')
const { assistant, updateAssistantSettings } = useAssistant(props.assistant.id)
const { provider } = useProvider(assistant.model.provider)
@ -103,10 +101,6 @@ const SettingsTab: FC<Props> = (props) => {
const { t } = useTranslation()
const dispatch = useAppDispatch()
const { codeFancyBlock } = useSettings()
const onUpdateAssistantSettings = (settings: Partial<AssistantSettings>) => {
updateAssistantSettings(settings)
}
@ -446,11 +440,7 @@ const SettingsTab: FC<Props> = (props) => {
{t('chat.settings.code_fancy_block.label')}
<HelpTooltip title={t('chat.settings.code_fancy_block.tip')} />
</SettingRowTitleSmall>
<Switch
size="small"
checked={codeFancyBlock}
onChange={(checked) => dispatch(setCodeFancyBlock(checked))}
/>
<Switch size="small" checked={codeFancyBlock} onChange={(checked) => setCodeFancyBlock(checked)} />
</SettingRow>
<SettingDivider />
<SettingRow>

View File

@ -14051,6 +14051,16 @@ __metadata:
languageName: node
linkType: hard
"@typescript-eslint/visitor-keys@npm:8.43.0":
version: 8.43.0
resolution: "@typescript-eslint/visitor-keys@npm:8.43.0"
dependencies:
"@typescript-eslint/types": "npm:8.43.0"
eslint-visitor-keys: "npm:^4.2.1"
checksum: 10c0/5d576eaf7bea41933ba726f4b24410bd3fc2521ef286967c3dc630c6a90fabff2a2d7c4d12cb841d3f946d2e5e6fb2605e7edd84e3360308fe379dbf2b8dc2fa
languageName: node
linkType: hard
"@typescript/native-preview-darwin-arm64@npm:7.0.0-dev.20250915.1":
version: 7.0.0-dev.20250915.1
resolution: "@typescript/native-preview-darwin-arm64@npm:7.0.0-dev.20250915.1"
@ -14132,16 +14142,6 @@ __metadata:
languageName: node
linkType: hard
"@typescript-eslint/visitor-keys@npm:8.43.0":
version: 8.43.0
resolution: "@typescript-eslint/visitor-keys@npm:8.43.0"
dependencies:
"@typescript-eslint/types": "npm:8.43.0"
eslint-visitor-keys: "npm:^4.2.1"
checksum: 10c0/5d576eaf7bea41933ba726f4b24410bd3fc2521ef286967c3dc630c6a90fabff2a2d7c4d12cb841d3f946d2e5e6fb2605e7edd84e3360308fe379dbf2b8dc2fa
languageName: node
linkType: hard
"@uiw/codemirror-extensions-basic-setup@npm:4.25.1":
version: 4.25.1
resolution: "@uiw/codemirror-extensions-basic-setup@npm:4.25.1"