// @ts-nocheck import { CONFIG } from './config.js'; const BASE = CONFIG.ZHONGTAI_BASE; const DEFAULT_ID = 'default'; const SAVE_DEBOUNCE_MS = 800; let _saveTimer = null; let _lastMessages = null; export async function load(id = DEFAULT_ID) { try { const r = await fetch(`${BASE}/conversations?id=${encodeURIComponent(id)}`); if (!r.ok) return []; const data = await r.json(); return Array.isArray(data.messages) ? data.messages : []; } catch (e) { console.warn('[conversation] load 失败,回退空:', e.message); return []; } } export function save(messages, id = DEFAULT_ID) { _lastMessages = messages; if (_saveTimer) clearTimeout(_saveTimer); _saveTimer = setTimeout(() => { _saveTimer = null; _doSave(_lastMessages, id); }, SAVE_DEBOUNCE_MS); } async function _doSave(messages, id) { try { const r = await fetch(`${BASE}/conversations?id=${encodeURIComponent(id)}`, { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ messages }), }); return r.ok; } catch (e) { console.warn('[conversation] save 失败:', e.message); return false; } } export async function clear(id = DEFAULT_ID) { if (_saveTimer) { clearTimeout(_saveTimer); _saveTimer = null; } try { const r = await fetch(`${BASE}/conversations?id=${encodeURIComponent(id)}`, { method: 'DELETE', }); if (r.ok) return true; } catch (e) {} return _doSave([], id); } export async function list() { try { const r = await fetch(`${BASE}/conversations/list`); if (!r.ok) return []; const data = await r.json(); return data.conversations || []; } catch (e) { return []; } }