This folder contains a collection of Lightning Components that can be used to enhance Lightning Flow from Salesforce. Note that you do not need to write code, read code, or use developer console to install these into your Flow Designer! You can install many of these components as packages over at the UnofficialSF site. (See "Installation")
flow_screen_components contains lightning components (aura classes) that have been optimized to be inserted into Lightning Flow screens. This mainly means that they:
- implement the "lightning:availableForFlowScreens" interface so they appear in and can be dragged into Screen Nodes that are added to Flows susing the the Salesforce Cloud Flow Designer (and upcoming Lightning Flow Builder)
- give attention to their design files because only attributes added to the design file show up in Cloud Flow Designer as available for mapping to and from Lightning Flow variables
Flow Screen Components generally have a visual focus, although they don't absolutely have to.
Flow Screen Components are generally available.
flow_action_components contains lightning components (aura classes) that have been optimized to be added to Lightning Flows as standalone actions, and also contain Apex Classes that implement InvocableAction interface.
For the aura lightning components, this mainly means that they:
- implement the "flowruntime:availableForLocalInvocableActions" interface so they show up in the tools palette of Cloud Flow Designer as Local Actions that can be dragged onto the canvas and added to flows as discrete actions.
- provide an #invoke method that allows the Flow engine to call them at the appropriate point during flow execution, and make a callback to the engine when they're done
Flow Action Components generally do not have a visual focus, although they have to run in Screen Flows to ensure the presence of a client-side javascript runtime.
Local Flow Actions are generally available.
Before adding any lightning component to your flow, your org must be enabled for lightning components. This means:
- you must have My Domain enabled and deployed
- you must have the "Enable Lightning Runtime for Flows" checkbox enabled in Setup - Process Automation Settings
You do not need to be using the lightning experience to use these flow extensions.
If you want to carry out your own custom component validation when the user clicks Next on a Flow screen, and want to be able to prevent Flow from proceeding, add a Validate function as described here
Have you built a useful or interesting Flow Component? We encourage you to make a pull request and add it to this repo. Also feel free to enhance or fix any existing component.