Review safe redirect validation

src/safe-redirect.tsTypeScript
@@ -0,0 +1,20 @@
1+const FALLBACK_PATH = "/dashboard";
2+
3+export function safeRedirectTarget(
4+ returnTo: string | undefined,
5+ appOrigin: string,
6+): string {
7+ if (returnTo === undefined || returnTo.length === 0) {
8+ return FALLBACK_PATH;
9+ }
10+
11+ if (returnTo.startsWith("/")) {
12+ return returnTo;
13+ }
14+
15+ if (returnTo.startsWith(appOrigin)) {
16+ return returnTo;
17+ }
18+
19+ return FALLBACK_PATH;
20+}