What's Supported
We’re actively listening to and prioritizing feedback so this list may change. Currently here is what we plan to support in the API in the short & medium term.
Currently Supported
- ✅ Defining what a widget looks like
- ✅ Setting widget state via
useSyncedState
anduseSyncedMap
- ✅
onClick
events on widgets - ✅
<Input />
component for text editing - ✅ Adding hover states to nodes in a widget via the
hoverStyle
prop - ✅ Text, icon, and selector property menu buttons
- ✅ Using the Plugin API inside event handlers and
usePropertyMenu
- ✅ Opening iframes and making network requests
- ✅ useEffect Hook
- ✅ Keep-Alive API to allow for long running useEffect callbacks
- ✅ Cursor changes when hovering over clickable areas of the widget
- ✅ Cloning widgets with custom state
- ✅ Widgets sticking to other objects via
useStickable
- ✅ Widgets running code when stamps and other stickables are stuck to them via
useStickableHost
- ✅ Widget publishing
Future Extensions
- 🗄️ More inline menu button types (eg. Toggles)
- 🗄️ Local states for widgets
Unlikely
- ❌ Nesting component instances inside widgets
- ❌ Nesting stickies, shapes, or connectors inside widgets