Skip to main content

Version 1, Update 2

Released -
  • We’re introducing a new <Input /> component that lets users edit text directly in your widget.
  • We’re introducing 2 new hooks useStickable and useStickableHost 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 an arcData 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 or figma.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.