figwire
Version:
Bidirectional IPC communication between UI and core in Figma plugins. Lightweight and typed.
21 lines (18 loc) • 575 B
JavaScript
import { A as API, c as createClient } from './create-client-Djmi8zIv.js';
const pluginPostFn = (message) => figma.ui.postMessage(message);
const pluginReceiveFn = (callback) => figma.ui.on("message", callback);
const pluginApiInstance = new API(
"plugin",
pluginPostFn,
pluginReceiveFn
);
function defineApi(methods) {
for (const [name, method] of Object.entries(methods)) {
pluginApiInstance.registerMethod(name, method);
}
return methods;
}
function client() {
return createClient(pluginApiInstance);
}
export { client, defineApi, pluginApiInstance };