@assistant-ui/react-devtools
Version:
React development tools for assistant-ui components
50 lines • 1.4 kB
JavaScript
// src/ExtensionHost.ts
import { DevToolsHost } from "./DevToolsHost.js";
var ExtensionHost = class {
devToolsHost;
messageListener;
constructor() {
this.devToolsHost = new DevToolsHost((message) => {
console.log("[ExtensionHost] Sending message to iframe:", message);
window.postMessage(
{
source: "assistant-ui-devtools-page",
payload: message
},
"*"
);
});
this.messageListener = (event) => {
if (event.source !== window) return;
if (event.data.source === "assistant-ui-devtools-iframe") {
console.log("[ExtensionHost] Received message from iframe:", {
source: event.data.source,
payload: event.data.payload,
fullData: event.data
});
this.devToolsHost.onReceiveMessage(event.data.payload);
}
};
window.addEventListener("message", this.messageListener);
setTimeout(() => {
console.log("[ExtensionHost] Announcing connection to iframe");
window.postMessage(
{
source: "assistant-ui-devtools-page",
payload: {
type: "host-connected"
}
},
"*"
);
}, 100);
}
destroy() {
window.removeEventListener("message", this.messageListener);
this.devToolsHost.destroy();
}
};
export {
ExtensionHost
};
//# sourceMappingURL=ExtensionHost.js.map