Angular project requirements
Your app MUST be created using the NG app from the @angular/cli~17 package. It also MUST use SCSS for styling.To install the npm libraries provided by FLOWX you will need to obtain access to the private FLOWX Nexus registry. Please consult with your project DevOps.
The library uses Angular version @angular~17, npm v10.8.0 and node v18.16.9.
If you are using an older version of Angular (for example, v16), please consult the following link for update instructions:Update Angular from v16.0 to v17.0
Installing the library
Use the following command to install the renderer library and its required dependencies:angular.json:
- in order to successfully link the pdf viewer, add the following declaration in the assets property:
Initial setup
Once installed,FlxProcessModule will be imported in the AppModule as FlxProcessModule.forRoot({}).
You MUST also import the dependencies of FlxProcessModule: HttpClientModule from @angular/common/http.
Theming
Component theming is done through the@flowx/ui-theme library. The theme id is a required input for the renderer SDK component and is used to fetch the theme configuration. The id can be obtained from the admin panel in the themes section.

Authorization
Every request from the FlowX renderer SDK will be made using the HttpClientModule of the client app, which means those requests will go through every interceptor you define here. This is most important to know when building the auth method as it will be the job of the client app to intercept and decorate the requests with the necessary auth info (eg.
Authorziation: Bearer ...).It’s the responsibility of the client app to implement the authorization flow (using the OpenID Connect standard). The renderer SDK will expect the authToken to be passed to the
flx-process-renderer as an input.forRoot() call is required in the application module where the process will be rendered. The forRoot() method accepts a config argument where you can pass extra config info, register a custom component, service, or custom validators.
Custom components will be referenced by name when creating the template config for a user task.
Custom validators will be referenced by name (currentOrLastYear) in the template config panel in the validators section of each generated form field.
<flx-process-renderer></flx-process-renderer> component. A list of accepted inputs is found below:
Data and actions
Custom components will be hydrated with data through the $data input observable which must be defined in the custom component class.data -> actionsFn key.
Action names are configurable via the process editor.
Interacting with the process
Data from the process is communicated via Server Send Event protocol under the following keys:Task management component
The flx-task-management component is found in the FlxTaskManagementModule. In order to have access to it, import the module where needed:
For basic styling to work the following configuration is needed in the angular.json file:
Development
If you want to start the designer app and the flx-process-renderer library in development mode (no need to recompile the lib for every change) run the following command:./start_with_build_lib.sh
Trying to use this lib with npm link from another app will most probably fail. If (when) that happens, there are two alternatives that you can use:
- Use the build-and-sync.sh script, that builds the lib, removes the current build from the client app node_modules and copies they newly build lib to the node_modules dir of the client app:
- Use the build-and-sync:watch npm script, that builds the library and copies it to the client app’s node_module directory every time a file changes:
Running the tests
ng test

