From a6bb481ab18cc2c3bf6fbd8b239217b1baff3200 Mon Sep 17 00:00:00 2001 From: AmirReza Jamali Date: Sun, 17 May 2026 11:04:51 +0330 Subject: [PATCH] refactor(tender-procurement-section): improve code readability and formatting - Reformatted the TenderProcurementSection component for better readability by adjusting indentation and line breaks. - Enhanced the structure of related notice IDs and duration parts for clarity. - Updated ShowcaseSection components to maintain consistent formatting and improve visual alignment. - Ensured consistent use of props and improved overall code organization. --- .../components/tender-procurement-section.tsx | 118 +++++++++++++----- 1 file changed, 87 insertions(+), 31 deletions(-) diff --git a/src/app/tenders/[details]/components/tender-procurement-section.tsx b/src/app/tenders/[details]/components/tender-procurement-section.tsx index 25eb88b..b141ca1 100644 --- a/src/app/tenders/[details]/components/tender-procurement-section.tsx +++ b/src/app/tenders/[details]/components/tender-procurement-section.tsx @@ -50,15 +50,21 @@ function formatAddressLines(addr: TTenderAddress | undefined): string[] { return lines; } -export function TenderProcurementSection({ tender }: TenderProcurementSectionProps) { - const relatedNoticeIds = uniqueTrimmedNoticeIds(tender.related_notice_publication_ids); +export function TenderProcurementSection({ + tender, +}: TenderProcurementSectionProps) { + const relatedNoticeIds = uniqueTrimmedNoticeIds( + tender.related_notice_publication_ids, + ); const noticeTypeCode = tender.notice_type_code?.trim(); const mainCpv = - tender.main_classification_display?.trim() || tender.main_classification?.trim(); + tender.main_classification_display?.trim() || + tender.main_classification?.trim(); const noticePubId = tender.notice_publication_id?.trim(); - const durationParts = [tender.duration?.trim(), tender.duration_unit?.trim()].filter( - Boolean, - ); + const durationParts = [ + tender.duration?.trim(), + tender.duration_unit?.trim(), + ].filter(Boolean); const durationLabel = durationParts.join(" "); const buyer = tender.buyer_organization; @@ -67,15 +73,14 @@ export function TenderProcurementSection({ tender }: TenderProcurementSectionPro const showBuyerExtended = hasBuyerExtendedDetails(tender); return ( -
+
Procurement
{isNonEmptyTrimmed(tender.tender_id) ? ( - {tender.tender_id} + + {tender.tender_id} + ) : null} @@ -96,12 +101,17 @@ export function TenderProcurementSection({ tender }: TenderProcurementSectionPro SHOWCASE_CENTERED_BODY.className, )} > - {buyer.name} + + {buyer.name} + ) : null} {noticePubId ? ( - + + {tender.procurement_project_id} @@ -123,7 +136,10 @@ export function TenderProcurementSection({ tender }: TenderProcurementSectionPro ) : null} {isNonEmptyTrimmed(tender.contract_folder_id) ? ( - + {tender.contract_folder_id} @@ -131,7 +147,10 @@ export function TenderProcurementSection({ tender }: TenderProcurementSectionPro ) : null} {isNonEmptyTrimmed(tender.contract_notice_id) ? ( - + {tender.contract_notice_id} @@ -139,7 +158,10 @@ export function TenderProcurementSection({ tender }: TenderProcurementSectionPro ) : null} {isNonEmptyTrimmed(tender.notice_identifier) ? ( - + {tender.notice_identifier} @@ -156,18 +178,25 @@ export function TenderProcurementSection({ tender }: TenderProcurementSectionPro {isNonEmptyTrimmed(tender.gazette_id) ? ( - {tender.gazette_id} + + {tender.gazette_id} + ) : null} {isNonEmptyTrimmed(tender.form_type) ? ( - {tender.form_type} + + {tender.form_type} + ) : null} {isNonEmptyTrimmed(tender.notice_sub_type_code) ? ( - + {tender.notice_sub_type_code} @@ -176,13 +205,17 @@ export function TenderProcurementSection({ tender }: TenderProcurementSectionPro {isNonEmptyTrimmed(tender.source) ? ( - {tender.source} + + {tender.source} + ) : null} {isNonEmptyTrimmed(tender.procedure_code) ? ( - {tender.procedure_code} + + {tender.procedure_code} + ) : null} @@ -196,18 +229,28 @@ export function TenderProcurementSection({ tender }: TenderProcurementSectionPro {noticeTypeCode ? ( - {noticeTypeCode} + + {noticeTypeCode} + ) : null} {mainCpv ? ( - - {mainCpv} + + + {mainCpv} + ) : null} {isNonEmptyTrimmed(tender.estimated_value_vat_basis) ? ( - + {tender.estimated_value_vat_basis} @@ -216,7 +259,9 @@ export function TenderProcurementSection({ tender }: TenderProcurementSectionPro {durationLabel ? ( - {durationLabel} + + {durationLabel} + ) : null} @@ -255,11 +300,16 @@ export function TenderProcurementSection({ tender }: TenderProcurementSectionPro
{isNonEmptyTrimmed(buyer.company_id) ? ( - {buyer.company_id} + + {buyer.company_id} + ) : null} {isValidHttpUrl(buyer.website_uri) ? ( - + ) : null} {isNonEmptyTrimmed(buyer.contact_telephone) ? ( - + {buyer.contact_telephone} ) : null} {isNonEmptyTrimmed(buyer.contact_email) ? ( - +