1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
| interface FlowNodeMapping {
| formId?: string;
| formMapping?: {
| departmentField?: string;
| fillToForm?: boolean;
| };
| }
|
| export function getFormMappingDepartmentFields(flowNodes: Record<string, FlowNodeMapping> | undefined, formId: string | undefined): string[] {
| if (!flowNodes || !formId) return [];
| return [
| ...new Set(
| Object.values(flowNodes)
| .filter((node) => node?.formMapping?.fillToForm && (!node.formId || node.formId === formId))
| .map((node) => node.formMapping?.departmentField)
| .filter((field): field is string => typeof field === 'string' && !!field),
| ),
| ];
| }
|
|