mirror of
https://github.com/cloudflare/vinext.git
synced 2026-05-09 08:25:34 +02:00
[GH-ISSUE #299] bug: missing default viewport meta tag when only themeColor is exported #74
Labels
No labels
enhancement
enhancement
good first issue
help wanted
nextjs-tracking
nextjs-tracking
pull-request
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/vinext#74
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @Divkix on GitHub (Mar 6, 2026).
Original GitHub issue: https://github.com/cloudflare/vinext/issues/299
Description
When a user exports a viewport config with only
themeColor(nowidth/initialScale), vinext does not render a<meta name="viewport">tag at all, breaking mobile rendering.Root Cause
mergeViewport()starts from an empty object{}. When the merged result is truthy (e.g.{ themeColor: "#000" }), the??fallback at call sites never triggers, soViewportHeadreceives nowidth/initialScaleand skips the viewport meta tag entirely.Next.js seeds with
{ width: "device-width", initialScale: 1 }viacreateDefaultViewport(). vinext doesn't.Reproduction
Expected:
<meta name="viewport" content="width=device-width, initial-scale=1">is rendered (matching Next.js behavior).Actual: No
<meta name="viewport">tag is rendered. Only<meta name="theme-color">appears.Bug Flow
Fix
Seed
mergeViewportwithDEFAULT_VIEWPORTmatching Next.js defaults:{ width: "device-width", initialScale: 1 }.