diff --git a/static/adwright.js b/static/adwright.js index c724132..212ea76 100644 --- a/static/adwright.js +++ b/static/adwright.js @@ -694,7 +694,34 @@ } else if (tool === "adwright_list_recipes") { NS.state.data.recipes = payload.recipes || []; } else if (tool === "adwright_get_connections_status") { - NS.state.data.connections = payload.connections || []; + // Real adwright-mcp returns {meta:{connected,account_id,...}, woo:{connected,store_url,...}} + // Legacy mock returned {connections:[...]}. Support both. + if (Array.isArray(payload.connections)) { + NS.state.data.connections = payload.connections; + } else { + const out = []; + if (payload.meta) { + const m = payload.meta; + out.push({ + id: "meta", + name: m.account_name ? "Meta — " + m.account_name : "Meta (Facebook + Instagram)", + status: m.connected ? "ok" : "down", + ok: !!m.connected, + detail: m.connected ? `${m.account_id} · ${m.currency} · spent ${m.amount_spent || 0}` : (m.error || "not connected"), + }); + } + if (payload.woo) { + const w = payload.woo; + out.push({ + id: "woo", + name: "WooCommerce" + (w.store_url ? " — " + w.store_url.replace(/^https?:\/\//, "") : ""), + status: w.connected ? "ok" : "down", + ok: !!w.connected, + detail: w.connected ? `WC ${w.wc_version || "?"} · WP ${w.wp_version || "?"} · ${w.currency || ""}` : (w.error || "not connected"), + }); + } + NS.state.data.connections = out; + } } }