mirror of
https://github.com/AmruthPillai/Reactive-Resume.git
synced 2026-08-19 21:11:45 +10:00
When a user pastes a large value (e.g. '1224') into the margin input field, the value bypasses the HTML <input type='number' max='100'> and gets stored directly into resume metadata. The PDF renderer then cannot handle an absurdly large margin, crashing the builder entirely. This fix adds two layers of defense: 1. Zod schema: add .max(100) to marginX and marginY in pageSchema, so any value > 100 is rejected at the validation level. 2. Input handler: clamp the onChange value to [0, 100] so the input never even temporarily stores an out-of-range value. The same pattern can apply to any other numeric inputs that need a reasonable upper bound. Fixes: #3263