mirror of
https://gitee.com/mateos/mateclaw.git
synced 2026-09-14 03:33:43 +08:00
- Extract create/edit modal into ChannelEditModal.vue (defineAsyncComponent), shrinking Channels.vue from 1438 to 370 lines and dropping ~30KB from the initial route chunk. - Move side-effect logic into composables: useWeixinQrcodePoll (QR + 2s status poll, auto-cleanup) and useWecomBotAuth (lazy SDK script with module-level promise dedupe). Pure config-JSON helpers move to utils/channelConfigJson.ts. - Switch i18n locales from static imports to dynamic import keyed by current locale; applyLocale becomes async to avoid first-render flicker. - /channels route opts into keep-alive (meta.keepAlive=true). Channels.vue pauses status polling in onDeactivated and resumes in onActivated, with an isActive guard to prevent late-resolving timers from leaking after navigation. - Initial load goes from serial 3-RTT to Promise.all + 4-card el-skeleton. |
||
|---|---|---|
| .. | ||
| Doctor | ||
| layout | ||
| Memory | ||
| Onboarding | ||
| Security | ||
| Settings | ||
| Wiki | ||
| AgentContext.vue | ||
| Agents.vue | ||
| Channels.vue | ||
| ChatConsole.vue | ||
| CronJobs.vue | ||
| Dashboard.vue | ||
| Datasources.vue | ||
| Login.vue | ||
| McpServers.vue | ||
| Plugins.vue | ||
| Sessions.vue | ||
| SkillMarket.vue | ||
| TokenUsage.vue | ||
| Tools.vue | ||