Pramod_Bug#384 : show "NA" for missing email in contact list view #171

Merged
vikas.nale merged 2 commits from pramod_Bug-#384 into Feature_Directory 2025-06-02 07:55:33 +00:00
2 changed files with 40 additions and 33 deletions

View File

@ -33,7 +33,7 @@ const CardViewDirectory = ({
(contact?.name || "").trim().split(" ")[1]?.charAt(0) || ""
}
/>{" "}
<span className="text-heading fs-6"> {contact.name}</span>
<span className="text-heading fs-6"> {contact?.name}</span>
</div>
<div>
{IsActive && (
@ -68,7 +68,7 @@ const CardViewDirectory = ({
<li>
<a
className="dropdown-item px-2 cursor-pointer py-1"
onClick={() => IsDeleted(contact.id)}
onClick={() => IsDeleted(contact?.id)}
>
<i className="bx bx-trash text-danger bx-xs me-2"></i>
<span className="align-left">Delete</span>
@ -95,17 +95,16 @@ const CardViewDirectory = ({
</div>
<ul className="list-inline m-0 ps-4 d-flex align-items-start">
<li className="list-inline-item me-1 small">
<i className="fa-solid fa-briefcase me-2"></i>
</li>
<li className="list-inline-item text-break small">
{contact.organization}
</li>
</ul>
<li className="list-inline-item me-1 small">
<i className="fa-solid fa-briefcase me-2"></i>
</li>
<li className="list-inline-item text-break small">
{contact.organization}
</li>
</ul>
</div>
<div
className="card-footer text-start px-1 py-1"
className={`card-footer text-start px-1 py-1 ${IsActive && "cursor-pointer"}`}
onClick={() => {
if (IsActive) {
setIsOpenModalNote(true);
@ -114,17 +113,16 @@ const CardViewDirectory = ({
}}
>
<hr className="my-0" />
{contact.contactEmails[0] && (
<ul className="list-unstyled my-1 d-flex align-items-start">
<li className="me-2">
<i className="bx bx-envelope bx-xs mt-1"></i>
</li>
<li className="flex-grow-1 text-break small">
{contact.contactEmails[0].emailAddress}
</li>
</ul>
)}
{contact.contactEmails[0] && (
<ul className="list-unstyled my-1 d-flex align-items-start">
<li className="me-2">
<i className="bx bx-envelope bx-xs mt-1"></i>
</li>
<li className="flex-grow-1 text-break small">
{contact.contactEmails[0].emailAddress}
</li>
</ul>
)}
{contact.contactPhones[0] && (
<ul className="list-inline m-0 ">
@ -141,17 +139,26 @@ const CardViewDirectory = ({
</ul>
)}
<ul className="list-inline m-0">
<li className="list-inline-item me-2 my-1">
<i className="fa-solid fa-tag fs-6"></i>
</li>
<li className="list-inline-item text-small active">
{contact.contactCategory.name}
</li>
</ul>
{contact?.contactCategory?.name ? (
<ul className="list-inline m-0">
<li className="list-inline-item me-2 my-1">
<i className="fa-solid fa-tag fs-6"></i>
</li>
<li className="list-inline-item text-small active">
{contact?.contactCategory?.name}
</li>
</ul>
) : (
<ul className="list-inline m-0">
<li className="list-inline-item me-2 my-1">
<i className="fa-solid fa-tag fs-6"></i>
</li>
<li className="list-inline-item text-small active">Other</li>
</ul>
)}
<ul className="list-inline m-0">
{contact.bucketIds?.map((bucketId) => (
{contact?.bucketIds?.map((bucketId) => (
<li key={bucketId} className="list-inline-item me-1">
<span
className="badge bg-label-primary rounded-pill d-flex align-items-center gap-1"

View File

@ -47,7 +47,7 @@ const ListViewDirectory = ({
<td className="px-2" style={{ width: "20%" }}>
<div className="d-flex flex-column align-items-start text-truncate">
{contact.contactEmails?.map((email, index) => (
{contact.contactEmails.length > 0 ? (contact.contactEmails?.map((email, index) => (
<span key={email.id} className="text-truncate">
<i
className={getEmailIcon(email.label)}
@ -60,7 +60,7 @@ const ListViewDirectory = ({
{email.emailAddress}
</a>
</span>
))}
))):(<span className="small-text m-0 px-2">NA</span>)}
</div>
</td>