feat: prepare Zhinian desktop client for pilot release

This commit is contained in:
inman
2026-04-29 10:23:20 +08:00
parent f9361e686a
commit 47b83b79fc
149 changed files with 15341 additions and 3590 deletions

View File

@@ -81,7 +81,7 @@ export function ChannelConfigModal({
onChannelSaved,
}: ChannelConfigModalProps) {
const { t } = useTranslation('channels');
const { channels, addChannel, fetchChannels } = useChannelsStore();
const { fetchChannels } = useChannelsStore();
const [selectedType, setSelectedType] = useState<ChannelType | null>(initialSelectedType);
const [configValues, setConfigValues] = useState<Record<string, string>>({});
const [channelName, setChannelName] = useState('');
@@ -192,23 +192,9 @@ export function ChannelConfigModal({
}, [selectedType, loadingConfig, showChannelName]);
const finishSave = useCallback(async (channelType: ChannelType) => {
const displayName = showChannelName && channelName.trim()
? channelName.trim()
: CHANNEL_NAMES[channelType];
const existingChannel = channels.find((channel) => channel.type === channelType);
if (!existingChannel) {
await addChannel({
type: channelType,
name: displayName,
token: meta?.configFields[0]?.key ? configValues[meta.configFields[0].key] : undefined,
});
} else {
await fetchChannels();
}
await fetchChannels();
await onChannelSaved?.(channelType);
}, [addChannel, channelName, channels, configValues, fetchChannels, meta?.configFields, onChannelSaved, showChannelName]);
}, [fetchChannels, onChannelSaved]);
const finishSaveRef = useRef(finishSave);
const onCloseRef = useRef(onClose);