mirror of
https://github.com/CherryHQ/cherry-studio.git
synced 2026-01-05 12:29:44 +08:00
feat(AgentToolingSettings): improve modal styling and accessibility
- Add text color classes to modal title and list items for better visibility - Apply background and border styling to modal content - Use modal hook pattern for consistency
This commit is contained in:
parent
b7d97cca69
commit
e2a0792e2d
@ -108,6 +108,7 @@ export const AgentToolingSettings: FC<AgentToolingSettingsProps> = ({ agent, upd
|
|||||||
const { t } = useTranslation()
|
const { t } = useTranslation()
|
||||||
const client = useAgentClient()
|
const client = useAgentClient()
|
||||||
const { mcpServers: allServers } = useMCPServers()
|
const { mcpServers: allServers } = useMCPServers()
|
||||||
|
const [modal, contextHolder] = Modal.useModal()
|
||||||
|
|
||||||
const [configuration, setConfiguration] = useState<AgentConfigurationState>(defaultConfiguration)
|
const [configuration, setConfiguration] = useState<AgentConfigurationState>(defaultConfiguration)
|
||||||
const [selectedMode, setSelectedMode] = useState<PermissionMode>(defaultConfiguration.permission_mode)
|
const [selectedMode, setSelectedMode] = useState<PermissionMode>(defaultConfiguration.permission_mode)
|
||||||
@ -192,8 +193,12 @@ export const AgentToolingSettings: FC<AgentToolingSettingsProps> = ({ agent, upd
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (removedDefaults.length > 0) {
|
if (removedDefaults.length > 0) {
|
||||||
Modal.confirm({
|
modal.confirm({
|
||||||
title: t('agent.settings.tooling.permissionMode.confirmChange.title', 'Change permission mode?'),
|
title: (
|
||||||
|
<span className="text-foreground">
|
||||||
|
{t('agent.settings.tooling.permissionMode.confirmChange.title', 'Change permission mode?')}
|
||||||
|
</span>
|
||||||
|
),
|
||||||
content: (
|
content: (
|
||||||
<div className="flex flex-col gap-2">
|
<div className="flex flex-col gap-2">
|
||||||
<p className="text-foreground-500 text-sm">
|
<p className="text-foreground-500 text-sm">
|
||||||
@ -207,7 +212,11 @@ export const AgentToolingSettings: FC<AgentToolingSettingsProps> = ({ agent, upd
|
|||||||
<ul className="mt-1 list-disc pl-4">
|
<ul className="mt-1 list-disc pl-4">
|
||||||
{removedDefaults.map((id) => {
|
{removedDefaults.map((id) => {
|
||||||
const tool = availableTools.find((item) => item.id === id)
|
const tool = availableTools.find((item) => item.id === id)
|
||||||
return <li key={id}>{tool?.name ?? id}</li>
|
return (
|
||||||
|
<li className="text-foreground" key={id}>
|
||||||
|
{tool?.name ?? id}
|
||||||
|
</li>
|
||||||
|
)
|
||||||
})}
|
})}
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
@ -215,13 +224,27 @@ export const AgentToolingSettings: FC<AgentToolingSettingsProps> = ({ agent, upd
|
|||||||
),
|
),
|
||||||
okText: t('common.confirm'),
|
okText: t('common.confirm'),
|
||||||
cancelText: t('common.cancel'),
|
cancelText: t('common.cancel'),
|
||||||
onOk: applyChange
|
onOk: applyChange,
|
||||||
|
classNames: {
|
||||||
|
content: 'bg-background! border! border-solid! rounded border-grey border-default-200!'
|
||||||
|
}
|
||||||
})
|
})
|
||||||
} else {
|
} else {
|
||||||
void applyChange()
|
void applyChange()
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
[agent, selectedMode, isUpdatingMode, availableTools, userAddedIds, autoToolIds, configuration, updateAgent, t]
|
[
|
||||||
|
agent,
|
||||||
|
selectedMode,
|
||||||
|
isUpdatingMode,
|
||||||
|
availableTools,
|
||||||
|
userAddedIds,
|
||||||
|
autoToolIds,
|
||||||
|
configuration,
|
||||||
|
updateAgent,
|
||||||
|
modal,
|
||||||
|
t
|
||||||
|
]
|
||||||
)
|
)
|
||||||
|
|
||||||
const handleToggleTool = useCallback(
|
const handleToggleTool = useCallback(
|
||||||
@ -300,6 +323,7 @@ export const AgentToolingSettings: FC<AgentToolingSettingsProps> = ({ agent, upd
|
|||||||
|
|
||||||
return (
|
return (
|
||||||
<SettingsContainer>
|
<SettingsContainer>
|
||||||
|
{contextHolder}
|
||||||
<SettingsItem>
|
<SettingsItem>
|
||||||
<SettingsTitle>
|
<SettingsTitle>
|
||||||
{t('agent.settings.tooling.steps.permissionMode.title', 'Step 1 · Permission mode')}
|
{t('agent.settings.tooling.steps.permissionMode.title', 'Step 1 · Permission mode')}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user