- We’re introducing a new
<Input />
component that lets users edit text directly in your widget. - We’re introducing 2 new hooks
useStickable
anduseStickableHost
to allow widgets to interact more seamlessly with other objects on the canvas.- Stickable widgets stick to other objects on the canvas
- Stickable Hosts allow other other stickable objects to be stuck on the widget (eg. Stamps)
- Widgets now support undo/redo functionality. For more details, see this guide.
- Image URLs passed to
<Image />
no longer require CORs headers, any image URL just works! - Widgets now support JSX fragments! You’ll need to update your tsconfig.json to specify the new
jsxFragmentFactory
. <Ellipse />
now supports anarcData
prop to enable rendering donuts and half circles.- We updated the visual appearance of a selected and hovered widget on the canvas
- We now show the widget’s icon as well as a link for users to learn more about the widget when the widget is hovered.
- We added a
<Line />
component for drawing basic lines inside a widget. <Frame />
children now support x/y constraints for absolute positioning within the frame.
Bug fixes:
- Types for the
key
prop in custom components no longer need to be declared. - Lazy default state initializer is allowed to use the Plugin API. This is useful for initializing synced state values to things like
figma.currentUser
orfigma.activeUsers
.
Additionally, we updated the Plugin API with new methods for WidgetNode
to read the information of nodes stuck to the widget, or the node the widget is stuck to (if applicable). We hope these methods complement the new “stickable” hooks above.