Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -37,4 +37,5 @@ jobs:
- name: Run Cypress tests that don't require auth
env:
MAPBOX_ACCESS_TOKEN: ${{ secrets.MAPBOX_ACCESS_TOKEN }}
HOST: "http://localhost:3000"
run: yarn test-unauthenticated
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ The HMDA Frontend monorepo hosts the public facing applications for the collecti
- [HMDA Platform Tools](#hmda-platform-tools)
- [HMDA Documentation](#hmda-documentation)
- [HMDA Data Publication](#hmda-data-publication)
- [HMDA Data Publication - Updates and Notes](#hmda-data-publication---updates-and-notes)
- [HMDA Data Publication - HMDA News and Updates](#hmda-data-publication---hmda-news-and-updates)
- [Development](#development)
- [Requirements](#requirements)
- [Installation](#installation)
Expand Down Expand Up @@ -112,9 +112,9 @@ The [HMDA Documentation](https://ffiec.cfpb.gov/documentation/) site provides pr
</p>
</a>

### HMDA Data Publication - Updates and Notes
### HMDA Data Publication - HMDA News and Updates

[Publication Updates and Notes](https://ffiec.cfpb.gov/data-publication/updates) provides a searchable change log of updates, releases, and corrections to published HMDA Data. Visit the [Updates and Notes FAQ](./src/data-publication/ChangeLog/README.md) for details.
[Publication HMDA News and Updates](https://ffiec.cfpb.gov/data-publication/updates) provides a searchable change log of updates, releases, and corrections to published HMDA Data. Visit the [HMDA News and Updates FAQ](./src/data-publication/ChangeLog/README.md) for details.

<a href='./readme-files/hmda-data-publication-updates.png' alt='HMDA Data Publication'>
<p align='center'>
Expand Down
14 changes: 10 additions & 4 deletions cypress/e2e/common-features/navigation.spec.js
Original file line number Diff line number Diff line change
Expand Up @@ -11,13 +11,20 @@ onlyOn(isBeta(HOST), () => {
})

onlyOn(!isBeta(HOST), () => {
describe('HMDA homepage hero navigation', { tags: ['@smoke'] }, () => {
describe.only('HMDA homepage hero navigation', { tags: ['@smoke'] }, () => {
// HMDA's homepage has four "quick links" leading to core pages
const quickLinks = [
{ text: 'News and Updates', pageHeading: 'HMDA News and Updates' },
{ text: 'Rate Spread Calculator', pageHeading: 'Rate Spread Calculator' },
{ text: 'HMDA Filing Platform', pageHeading: 'File your HMDA Data' },
{ text: 'Frequently Asked Questions', pageHeading: 'Frequently Asked Questions' },
{ text: 'Filing Instructions Guide', pageHeading: 'Filing Instructions Guide' }
{
text: 'Frequently Asked Questions',
pageHeading: 'Frequently Asked Questions',
},
{
text: 'Filing Instructions Guide',
pageHeading: 'Filing Instructions Guide',
},
]

quickLinks.forEach(({ text, pageHeading }) => {
Expand All @@ -30,5 +37,4 @@ onlyOn(!isBeta(HOST), () => {
})
})
})

})
4 changes: 2 additions & 2 deletions src/App.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -55,8 +55,8 @@ const HmdaHelp = makeAsyncComponent(
)
const UpdatesNotes = makeAsyncComponent(
() => import('./updates-notes'),
'HMDA Updates and Notes',
"Tracking releases, updates, and corrections to HMDA's publications, data products, documentation, and tools.",
'HMDA News and Updates',
"Tracking news, releases, updates, and corrections to HMDA's publications, data products, documentation, and tools.",
)

const App = () => {
Expand Down
6 changes: 5 additions & 1 deletion src/common/Header.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -105,11 +105,15 @@ const Header = ({ location: { pathname }, links = defaultLinks, ...props }) => {
{links.map((link) => {
let filingPath =
props.history.location.pathname.includes('/filing')
let newsPath =
props.history.location.pathname.includes('/updates-notes')
let isActive = false

if (link.href === '/') {
isActive = pathname === link.href
} else if (filingPath) {
} else if (filingPath && link.href.includes('/filing')) {
isActive = true
} else if (newsPath && link.href.includes('/updates-notes')) {
isActive = true
}

Expand Down
8 changes: 4 additions & 4 deletions src/common/constants/dev-config.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,12 @@
"name": "dev",
"announcement": [
{
"heading": "HMDA Platform Upgrade",
"message": "An upgrade to the HMDA Platform will be performed on Tuesday, 12/2. Anticipate downtime to the filing platform for 24-36 hours. Links to files that you may have bookmarked will have a new URL as part of this upgrade. Most notably, the fixed and adjustable APOR table file paths have changed. For any questions, contact ",
"heading": "Future HMDA News and Updates",
"message": "Due to operational constraints, the Consumer Financial Protection Bureau has discontinued its use of the GovDelivery email service on Tuesday, January 20, 2026. After that date, subscribers to the HMDA mailing list will no longer receive email notifications. To ensure you continue to have access to timely information, ",
"type": "warning",
"link": {
"url": "mailto:hmdahelp@cfpb.gov",
"text": "hmdahelp@cfpb.gov."
"url": "https://ffiec.cfpb.gov/updates-notes",
"text": "visit our HMDA News and Updates webpage."
}
},
{
Expand Down
1 change: 1 addition & 0 deletions src/common/constants/links.js
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ export const betaLinks = [

export const defaultLinks = [
{ name: 'Home', href: '/' },
{ name: 'News', href: '/updates-notes' },
{ name: 'Filing', href: '/filing' },
{ name: 'Data Browser', href: '',
submenu: [
Expand Down
8 changes: 4 additions & 4 deletions src/common/constants/prod-config.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,12 @@
"name": "prod",
"announcement": [
{
"heading": "HMDA Platform Upgrade",
"message": "An upgrade to the HMDA Platform was performed on Tuesday, 12/2. Links to files that you may have bookmarked have a new URL as part of this upgrade. Most notably, the fixed and adjustable APOR table file paths have changed. For any questions, contact ",
"heading": "Future HMDA News and Updates",
"message": "Due to operational constraints, the Consumer Financial Protection Bureau has discontinued its use of the GovDelivery email service on Tuesday, January 20, 2026. After that date, subscribers to the HMDA mailing list will no longer receive email notifications. To ensure you continue to have access to timely information, ",
"type": "warning",
"link": {
"url": "mailto:hmdahelp@cfpb.gov",
"text": "hmdahelp@cfpb.gov."
"url": "https://ffiec.cfpb.gov/updates-notes",
"text": "visit our HMDA News and Updates webpage."
}
},
{
Expand Down
2 changes: 1 addition & 1 deletion src/common/uswds/css/styles.css

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion src/common/uswds/css/styles.css.map

Large diffs are not rendered by default.

10 changes: 5 additions & 5 deletions src/common/uswds/scss/_uswds-theme-custom-styles.scss
Original file line number Diff line number Diff line change
Expand Up @@ -434,13 +434,13 @@ body {
max-width: 1500px;
padding: 0 0 0.5em 0;

@media (min-width: 40em) {
@media (min-width: 45em) {
flex-direction: row;
padding: 0;
margin: 0 auto;
}
@media (min-width: 85em) {
padding: 0 10%;
padding: 0 5%;
}

.title {
Expand All @@ -452,9 +452,9 @@ body {
display: block;
color: #fff;

@media (min-width: 40em) {
@media (min-width: 45em) {
border-width: 0 1px;
width: 35px;
min-width: 35px;

span {
transform: rotate(-90deg);
Expand Down Expand Up @@ -504,7 +504,7 @@ body {
text-align: left;
}

@media (min-width: 40em) {
@media (min-width: 45em) {
display: flex;
flex-direction: column;
align-items: center;
Expand Down
2 changes: 1 addition & 1 deletion src/data-publication/Home.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -102,7 +102,7 @@ function Home(props) {
</p>
<p className='lead'>
For information about changes to HMDA Publications visit the{' '}
<Link to='/updates-notes'>Updates and Notes</Link> page.
<Link to='/updates-notes'>News and Updates</Link> page.
</p>
</Heading>
</div>
Expand Down
6 changes: 2 additions & 4 deletions src/homepage/AnnouncementBanner.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -163,16 +163,14 @@ export function AnnouncementBanner({
}

// Temporarily add APOR announcement to the cycling announcements, see: GHE #5358
// announcements.unshift(<AporAnnouncement />)
announcements.unshift(<AporAnnouncement />)

// Display an auto-advancing, navigable carousel of announcements
return (
<OptionCarousel
id='oc-homepage-banner'

// Temporarily make the only announcement the APOR announcement, see: GHE #5358
// options={announcements}
options={[<AporAnnouncement />]}
options={announcements}

cycleTime={5}
hideIcon
Expand Down
5 changes: 2 additions & 3 deletions src/homepage/ForDataUsers/ChangeLog.jsx
Original file line number Diff line number Diff line change
@@ -1,12 +1,11 @@
import { ExpandableCard } from '../ExpandableCard'

export function ChangeLog() {
return (
<>
<article>
<h3>HMDA Updates and Notes</h3>
<h3>HMDA News and Updates</h3>
<p>
Tracking releases, updates, and corrections to HMDA publications, data
Tracking news, releases, updates, and corrections to HMDA publications, data
products, documentation, and tools.
</p>
<ul>
Expand Down
15 changes: 15 additions & 0 deletions src/homepage/QuickLinks.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,21 @@ export function QuickLinks({ hideContent }) {
<div className='title'>
<span>QuickLinks</span>
</div>
<Link to='/updates-notes'>
<svg
className='usa-icon'
aria-hidden='true'
focusable='false'
role='img'
>
<use href={`${iconSprite}#campaign`} />
</svg>{' '}
<span>
News and
<br />
Updates
</span>
</Link>
<Link to='/tools/rate-spread'>
<svg
className='usa-icon'
Expand Down
5 changes: 4 additions & 1 deletion src/updates-notes/ChangeLogTable.scss
Original file line number Diff line number Diff line change
Expand Up @@ -149,6 +149,9 @@ $rwd-bp: 960px;
&.release {
background-color: #0b6e4f;
}
&.announcement {
background-color: #c05600;
}
&.notice {
background-color: #dc731c;
color: white;
Expand Down Expand Up @@ -250,7 +253,7 @@ $rwd-bp: 960px;
}

.pill {
max-width: 100px !important;
max-width: 125px !important;
margin-bottom: 0;
}

Expand Down
7 changes: 7 additions & 0 deletions src/updates-notes/FilterBar.scss
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,13 @@
background-color: #0b6e4f;
}

/** Color - Announcement */
.pill.type.announcement:hover,
.pill.type.announcement.selected {
background-color: #c05600;
}


/** Color - Notice */
.pill.type.notice:hover,
.pill.type.notice.selected {
Expand Down
7 changes: 4 additions & 3 deletions src/updates-notes/README.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
# FAQ - Updates and Notes
# FAQ - News and Updates

## What is it?

The [Updates and Notes app](https://ffiec.cfpb.gov/updates-notes) provides a searchable change log of updates, releases, and corrections to published HMDA Data.
The [News and Updates app](https://ffiec.cfpb.gov/updates-notes) provides a searchable change log of updates, releases, and corrections to published HMDA Data.

## Do content changes require redeployment?

Expand All @@ -17,7 +17,7 @@ Add your update to the [change-log-data.json](./src/updates-notes/change-log-dat
```
{
"date": "03/10/21",
"type": "release | update | correction",
"type": "announcement | release | update | correction",
"product": "mlar | datasets | reports | documentation | tools",
"description": "This example has been created!",
"url": "https://github.com/cfpb/hmda-frontend/issues/007",
Expand All @@ -40,6 +40,7 @@ Add your update to the [change-log-data.json](./src/updates-notes/change-log-dat

- `type`

- `announcement` - Platform or project-wide announcement
- `release` - Newly released product or feature
- `update` - Update to existing product not related to an error
- `correction` - Modification to existing data to correct an error
Expand Down
12 changes: 12 additions & 0 deletions src/updates-notes/change-log-data.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,17 @@
{
"log": [
{
"date": "01/20/26",
"type": "announcement",
"product": "documentation",
"description": "Due to operational constraints, the Consumer Financial Protection Bureau has discontinued its use of the GovDelivery email service on Tuesday, January 20, 2026. After that date, subscribers to the HMDA mailing list will no longer receive email notifications. Visit our HMDA News and Updates webpage to ensure you continue to have access to timely information.",
"links": [
{
"text": "HMDA News and Updates",
"url": "https://ffiec.cfpb.gov/updates-notes"
}
]
},
{
"date": "10/06/25",
"type": "release",
Expand Down
7 changes: 4 additions & 3 deletions src/updates-notes/constants.js
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,10 @@ export const PRODUCT_NAMES = {
export const PRODUCTS = Object.keys(PRODUCT_NAMES)

export const CATEGORIES = {
correction: { order: 3 },
update: { order: 2 },
release: { order: 1 },
correction: { order: 4 },
update: { order: 3 },
release: { order: 2 },
announcement: { order: 1 },
}

export const PUB_CHANGELOG_URL =
Expand Down
4 changes: 2 additions & 2 deletions src/updates-notes/index.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ import { useRemoteJSON } from '../common/useRemoteJSON'
import { organizeChangeData } from './sortFunctions'
import './ChangeLog.scss'

/* Updates and Notes */
/* News and Updates */
function UpdatesNotes() {
const filter = useChangeLogFilter(DEFAULT_FILTERS)

Expand All @@ -19,7 +19,7 @@ function UpdatesNotes() {
defaultData: organizeChangeData(defaultData),
})

const heading = 'HMDA Updates and Notes'
const heading = 'HMDA News and Updates'

if (loading) return <LoadingState heading={heading} />

Expand Down
Loading