in plugin-api/MetaflowPluginAPI.js [15:50]
function messageHandler(event) {
if (event.data && event.data.type) {
switch (event.data.type) {
case 'ReadyToRender': {
if (!initialised) {
Metaflow.parameters = event.data.config;
Metaflow.resource = event.data.resource;
Metaflow.settings = event.data.settings;
PluginInfo.manifest = event.data.config;
PluginInfo.slot = event.data.config?.config?.slot;
initialised = true;
if (onReadyFn) {
onReadyFn(Metaflow.parameters, Metaflow.resource, Metaflow.settings);
}
}
return;
}
case 'DataUpdate': {
for (const listener of DataListeners) {
if (event.data.path && listener.paths.includes(event.data.path)) {
listener.callback(event.data);
}
}
return;
}
case 'EventUpdate': {
for (const listener of EventListeners) {
listener(event.data);
}
return;
}
default:
return;
}
}
}