Skip to content

Commit 3ceef08

Browse files
authored
Add files via upload
1 parent 885410d commit 3ceef08

1 file changed

Lines changed: 41 additions & 0 deletions

File tree

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
export function ConvertDetailsForCloseContact(
2+
details: Array<{ name: string; title: string; items: Array<any> }>
3+
) {
4+
const getSection = (name: string) =>
5+
details.find((detail) => detail.name === name);
6+
7+
const yourOrTheirDetails = (name: string) =>
8+
Object.assign(
9+
getSection(name)!.items.find((item) => item.name === "first_name"),
10+
{
11+
name,
12+
label: name.replace("Details", " details"),
13+
title: name.replace("Details", " details"),
14+
value: getSection(name)!
15+
.items.map((item) => item.value)
16+
.filter((value) => value)
17+
.join("\n")
18+
.replace("\n", " "),
19+
rawValue: "values",
20+
}
21+
);
22+
23+
const personalDetails = getSection("PersonalDetails");
24+
if (personalDetails) {
25+
personalDetails.items.unshift(yourOrTheirDetails("YourDetails"));
26+
if (getSection("TheirDetails")) {
27+
personalDetails.items.splice(2, 0, yourOrTheirDetails("TheirDetails"));
28+
}
29+
const filtered = details.filter(
30+
(detail) => detail.name && !detail.name.includes("Details")
31+
);
32+
filtered.unshift(personalDetails);
33+
return filtered.map((detail) => {
34+
const { url } = detail.items[0];
35+
if (detail.name.match(/CloseContact\d/)) return { ...detail, card: url };
36+
return detail;
37+
});
38+
}
39+
40+
return details;
41+
}

0 commit comments

Comments
 (0)