fresh
fresh copied to clipboard
fix(router): prevent 404 for routes consisting solely of an optional parameter
This PR fixes an issue where if a route would start with an optional parameter and would not be followed by any other segments it wouldn't be able to match without the parameter being present.
Prior to this PR creating a route like /[[name]].tsx would result in a url pattern like {/:name}? which would work for /foo but would fail for /
After this PR, the pattern will now be /{:name}? which matches correctly for both / and /foo
Routes containing more segments like /[[name]]/bar.tsx were unaffected and will retain the same pattern as before.