Skip to content

Contact and Privacy: use the shared settings, ContactLinks and date formatting - #212

Merged
evanbrierton merged 1 commit into
mainfrom
contact-privacy-shared-settings
Nov 10, 2026
Merged

evanbrierton merged 1 commit into
mainfrom
contact-privacy-shared-settings

Conversation

@evanbrierton

Copy link
Copy Markdown
Contributor

Closes #188

What changed

  • contact and privacy pages use getLocale, pageMetadata, routes, PageShell and getSiteSettings + ContactLinks (contact: definitions, privacy: list). Suspense boundaries and skeletons are unchanged, and the contact header still reads published content only (draft: false) so it stays static.
  • New formatLongDate(iso, locale) in lib/dates.ts with tests. It takes a locale tag like its siblings (formatShortDate), so privacy calls it with dateLocale[lang].
  • Privacy's Section, BulletList, slug, StorageGroup and WithLink move to features/privacy/components/. WithLink stays private since no other page uses it.
  • CONTACT_SETTINGS_QUERY is deleted (no users left).
  • PAGE_TEXT_QUERY / sanity/lib/pageText.ts are kept: work, talent, rentals and quote still use getPageText. Whichever of Work: add loaders and slim down the pages #185–Rentals (hidden): add loaders, a slug-based catalogue, one MAX_QTY and the feature flag #189 removes the last use deletes them, otherwise Remove dead code and add knip to CI #192.

Visible differences

  • Privacy "last updated" date: en → en-IE, so "8 November 2026" instead of "November 8, 2026". Irish is "8 Samhain 2026".
  • Privacy contact section uses the list variant: the email is text-lg with a screen-reader label, and Instagram shows if set (it didn't before). The contact-form link is now a <p> instead of an <li>.

Checks

  • typecheck, lint, test pass. format:check only flags .impeccable/hook.cache.json, which is gitignored.
  • Dev server renders /contact, /privacy, /ga/contact, /ga/privacy (200, expected dates, mailto and Instagram links).
  • e2e (contact, a11y) not run locally: the seed needs SANITY_API_WRITE_TOKEN, which isn't available here.

🤖 Generated with Claude Code

…ormatting

Both pages now read site settings through getSiteSettings and render
contact details with ContactLinks, and use getLocale, pageMetadata,
routes, PageShell and PageHeader. Privacy formats its date with a new
formatLongDate (en-IE / ga-IE) and its page-private helpers move to
features/privacy. CONTACT_SETTINGS_QUERY has no users left and is removed.

Closes #188

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
@vercel

vercel Bot commented Nov 10, 2026 •

Copy link
Copy Markdown
Contributor

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
fiu Ready Ready Preview Nov 10, 2026 9:48pm UTC

Request Review

@evanbrierton
evanbrierton merged commit 8904e63 into main Nov 10, 2026
13 checks passed
@evanbrierton
evanbrierton deleted the contact-privacy-shared-settings branch November 10, 2026 22:04
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.

Contact and Privacy: use the shared settings, ContactLinks and date formatting

1 participant