Backend
1. controller/channel.go
• Always hydrate `ChannelInfo` from DB in `UpdateChannel`, keeping `IsMultiKey` true so `MultiKeySize` is recalculated.
2. model/channel.go
• getKeys(): accept both newline-separated keys and JSON array (`[ {...}, {...} ]`).
• Update(): reuse new parser-logic to recalc `MultiKeySize`; prune stale indices in `MultiKeyStatusList`.
Frontend
1. pages/Channel/EditChannel.js
• `handleVertexUploadChange`
– Reset `vertexErroredNames` on every change so the “ignored files” prompt always re-appears.
– In single-key mode keep only the last file; in batch mode keep all valid files.
– Parse files, display “以下文件解析失败,已忽略:…”.
• Batch-toggle checkbox
– When switching from batch→single while multiple files are present, show a confirm dialog and retain only the first file (synchronises state, form and local caches).
• On opening the “new channel” side-sheet, clear `vertexErroredNames` to restore error prompts.
Result
• “已启用 x/x” count updates immediately after editing multi-key channels.
• Vertex-AI key upload works intuitively: proper error feedback, no duplicated files, and safe down-switch from batch to single mode.
| Name |
Last commit
|
Last Update |
|---|---|---|
| .. | ||
| About | Loading commit data... | |
| Channel | Loading commit data... | |
| Chat | Loading commit data... | |
| Chat2Link | Loading commit data... | |
| Detail | Loading commit data... | |
| Home | Loading commit data... | |
| Log | Loading commit data... | |
| Midjourney | Loading commit data... | |
| NotFound | Loading commit data... | |
| Playground | Loading commit data... | |
| Pricing | Loading commit data... | |
| Redemption | Loading commit data... | |
| Setting | Loading commit data... | |
| Setup | Loading commit data... | |
| Task | Loading commit data... | |
| Token | Loading commit data... | |
| TopUp | Loading commit data... | |
| User | Loading commit data... |