From d509ba82a4e7159f933333b5fea35d35e066fbc3 Mon Sep 17 00:00:00 2001 From: Ricardo Dahis Date: Fri, 4 Sep 2026 12:04:53 +1000 Subject: [PATCH] feat(i18n): show spatial coverage in pt The spatial coverage field was gated behind `locale !== 'pt'`, so it rendered only on the en and es pages. The backend has always exposed `spatialCoverageNamePt` on both DatasetNode and TableNode, and the `/search/` endpoint returns pt names in both results and aggregations, so the gates were hiding data that was already there. - dataset page: drop the pt gate on the spatial coverage grid item - search result card: drop the pt gate on the metadata row, and fix the card height at 165px (it was shortened to 138px only for pt) - search sidebar: drop the pt gate on the spatial coverage filter - table page: re-enable the block, which was commented out for every locale, and add `spatialCoverageName${locale}` to the table query, which never fetched it pt/en/es translations for `spatialCoverage`, `table.spatialCoverage` and `table.notProvided` already existed in all three locale files. Co-Authored-By: Claude Opus 5 --- .../components/organisms/DatasetSearchCard.js | 10 ++-- next/components/organisms/TablePage.js | 48 +++++++++---------- next/pages/api/tables/getTable.js | 1 + next/pages/dataset/[dataset].js | 38 +++++++-------- next/pages/search.js | 28 +++++------ 5 files changed, 57 insertions(+), 68 deletions(-) diff --git a/next/components/organisms/DatasetSearchCard.js b/next/components/organisms/DatasetSearchCard.js index 754b423b..847f3d75 100644 --- a/next/components/organisms/DatasetSearchCard.js +++ b/next/components/organisms/DatasetSearchCard.js @@ -183,7 +183,7 @@ const DatasetSearchCard= ({ borderRadius="16px" overflow="hidden" width="222px" - height={locale !== 'pt' ? "165px" : "138px"} + height="165px" position="relative" _hover={{ opacity: 0.9 }} > @@ -258,11 +258,9 @@ const DatasetSearchCard= ({ {temporalCoverageText || t('notProvided')} - {locale !== 'pt' && ( - - {spatialCoverage || t('notProvided')} - - )} + + {spatialCoverage || t('notProvided')} + {resourcesText} diff --git a/next/components/organisms/TablePage.js b/next/components/organisms/TablePage.js index 71556a4a..3de02599 100644 --- a/next/components/organisms/TablePage.js +++ b/next/components/organisms/TablePage.js @@ -577,34 +577,30 @@ export default function TablePage({ id, isBDSudo, changeTab, datasetName }) { - {/* {locale !== 'pt' ? - - - - {t('table.spatialCoverage')} - - + + + + {t('table.spatialCoverage')} + + - + - - {resource?.[`spatialCoverageName${capitalize(locale)}`] - ? Object.values(resource[`spatialCoverageName${capitalize(locale)}`]) - .sort((a, b) => a.localeCompare(b, locale)) - .join(', ') - : t('table.notProvided')} - - - - : - <> - } */} + {resource?.[`spatialCoverageName${capitalize(locale)}`] + ? Object.values(resource[`spatialCoverageName${capitalize(locale)}`]) + .sort((a, b) => a.localeCompare(b, locale)) + .join(', ') + : t('table.notProvided')} + + + - {locale !== 'pt' && - - - {t('spatialCoverage')} - - - {dataset?.[`spatialCoverageName${capitalize(locale)}`] - ? Object.values(dataset[`spatialCoverageName${capitalize(locale)}`]) - .sort((a, b) => a.localeCompare(b, locale)) - .join(', ') - : t('notProvided')} - - - } + + + {t('spatialCoverage')} + + + {dataset?.[`spatialCoverageName${capitalize(locale)}`] + ? Object.values(dataset[`spatialCoverageName${capitalize(locale)}`]) + .sort((a, b) => a.localeCompare(b, locale)) + .join(', ') + : t('notProvided')} + + diff --git a/next/pages/search.js b/next/pages/search.js index 54c9d543..a701ca30 100644 --- a/next/pages/search.js +++ b/next/pages/search.js @@ -704,23 +704,19 @@ export default function SearchDatasetPage() { - {locale !== 'pt' && ( - <> - handleSelectFilter(["spatial_coverage",`${value}`])} - isLoading={!isLoading} - facet="spatial_coverage" - /> + handleSelectFilter(["spatial_coverage",`${value}`])} + isLoading={!isLoading} + facet="spatial_coverage" + /> - - - )} +