Skip to main content

Hello,


I have installed Mixpanel in Figma to track events, and I would like to track an event when the user exits the plugin. I have written the following code:


figma.on('close', () => {
figma.ui.postMessage({
type: 'bg:exit',
});
});

In the UI, I retrieve the message to send the event to Mixpanel :


  React.useEffect(() => {
// This is how we read messages sent from the plugin controller
window.onmessage = async (event) => {
const {type, message} = event.data.pluginMessage;
switch (type) {
case 'bg:exit':
mixpanel.track('leave-app'); //
break;
...

However, I believe that once we exit, the UI closes, and the event is never sent. I tried adding a sleep function in the close event, but that didn’t work either. Does anyone have any ideas?


(Note: “Sleep” in this context likely refers to a delay or pause in the code execution.)

Hey @Guizixo , as per the documentation, we cannot emit and perform any callbacks or asynchronous operations on the “close” event, even though I am struggling too with a flow for loggin out a user on close of the plugin.


I’m also interested in this - did anyone get a working solution?