Skip to content

[WV-4547] Election Finder UI iter #2#4821

Merged
DaleMcGrew merged 3 commits into
wevote:developfrom
ric0de:WV-4547ElectionFinder2
May 20, 2026
Merged

[WV-4547] Election Finder UI iter #2#4821
DaleMcGrew merged 3 commits into
wevote:developfrom
ric0de:WV-4547ElectionFinder2

Conversation

@ric0de
Copy link
Copy Markdown
Contributor

@ric0de ric0de commented May 20, 2026

  • ElectionFinderHeader: state label now renders after the breadcrumbs (was above the H1), so the layout reads Election Finder → breadcrumb → STATE → election title → date.
  • ElectionFinderForElection:
    • 3-crumb breadcrumb: ← Election Finder Home / Upcoming|Past Elections - State (N) / Election Name - Date (officeCount).
    • Election title now shows office count, e.g. State Primary (2).
    • Date rendered below the title via a new ElectionDetailDate styled component (matches state label color so the two frame the title in the same hue).
    • Empty-state copy split: No results found. is preserved for search-no-match; a new Our team hasn't assembled the data for this election yet. We usually have election data 45 days before each election. message appears when the election has zero offices and no active search.
  • ElectionFinderStateLabel: slightly larger state label scoped to the Finder (extends shared ElectionStateLabel) so Ballot pages keep the original size.
  • DRY: extracted formatDateLong into new dateHelpers.js; refactored ElectionFinderHome and ElectionFinderForState to import it (drops two duplicate copies).

**Depends on: ([WV-2660] Election Finder iter 1). I'll rebase this branch once that lands so the diff collapses to a single commit.

ric0de and others added 3 commits May 19, 2026 16:23
- ElectionFinderHeader: state label now renders after the breadcrumbs (was above the h1) so the layout reads Election Finder -> breadcrumb -> STATE -> election title -> date
- ElectionFinderForElection:
  - 3-crumb breadcrumb (Election Finder Home / Upcoming|Past Elections - State (N) / Election Name - Date (officeCount))
  - Election title now shows office count e.g. "State Primary (2)"
  - Date rendered below the title via new ElectionDetailDate styled component (matches the state label color so they bracket the title)
  - Empty-state copy split: "No results found." remains for search-no-match; new "Our team hasn't assembled the data for this election yet..." copy when the election has zero offices and no active search
- Slightly larger ElectionFinderStateLabel scoped to the Finder so Ballot pages keep the original size
- Extract formatDateLong to new dateHelpers.js; refactor ElectionFinderHome + ElectionFinderForState to import it (drops two duplicate copies)
@DaleMcGrew
Copy link
Copy Markdown
Member

👍

@DaleMcGrew DaleMcGrew merged commit 3faceaf into wevote:develop May 20, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants