Skip to main content

Flow Actions

The main type of custom action is a flow action. These flow actions are highly customisable and can support a wide range of use cases. There are packaged template flows that can be used as a starting point for creating a custom flow action for a specific process, which include the required input and output variables, as applicable. These flow actions are usually exposed as buttons within the UI, which when clicked launch the flow in a modal. These are called flow modals; however, sometimes they will be embedded within a tab, or similar.

tip

Read the provided template flow's description carefully for more implementation-specific details

Creating flow modals

We provide a template for each process which utilises flow modals. These templates include the context specific inputs and outputs. Alongside these, every flow modal has a common set of outputs which are used to further control the UI after the flow has been opened. These outputs are:

Output NameTypeDescription
modalSizeTextThe size of the modal, either 'small', 'medium', 'large' or full. See SLDS for details
modalHeaderTextThe header text to display in the modal
tip

These values can be changed by the flow and the new values will be reflected in the UI

Each individual flow screen must also be configured in a specific way to ensure it works as expected within the modal. The following steps should be followed:

  • Hide the header
  • Hide the footer
  • Put the Flow Modal Navigation Controller component on the screen
    • Define the labels of the navigation buttons
  • Disable any unused navigation actions
info

Flow modals do not support pausing

Creating embedded flows

Embedded flows are much simpler to configure than flow modals, as they do not require any additional components to be added to the flow screen. The only requirement is that the flow must be configured to accept the required inputs and outputs, as defined in the template flow. These flows are expected to handle their own navigation if multiple screens are required.

info

Embedded flows do not support pausing