Skip to content

Commit 5c1e0a1

Browse files
feat: implement flags and form submission logic with error handling
1 parent 41b9a6c commit 5c1e0a1

File tree

3 files changed

+13
-2
lines changed

3 files changed

+13
-2
lines changed

src/app/flags.ts renamed to flags.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import { flag } from "flags/next";
55
export const weatherWidgetFlag = flag({
66
key: "weather-widget",
77
decide() {
8-
return false; // Example logic for deciding the flag
8+
// Enable the weather widget for 50% of visitors
9+
return Math.random() > 0.5;
910
},
1011
});

src/app/api/submit/route.ts renamed to src/.well-known/vercel/flags/route.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,8 @@
11
import { NextResponse } from "next/server";
2+
import { getProviderData, createFlagsDiscoveryEndpoint } from "flags/next";
3+
import * as flags from "../../../../flags";
4+
5+
export const GET = createFlagsDiscoveryEndpoint(() => getProviderData(flags));
26

37
export async function POST(req: Request) {
48
const isFeatureXEnabled =

tsconfig.json

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,12 @@
2222
"@/*": ["./src/*"]
2323
}
2424
},
25-
"include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", ".next/types/**/*.ts"],
25+
"include": [
26+
"next-env.d.ts",
27+
"**/*.ts",
28+
"**/*.tsx",
29+
".next/types/**/*.ts",
30+
"src/.well-known/vercel/flags/route.ts"
31+
],
2632
"exclude": ["node_modules"]
2733
}

0 commit comments

Comments
 (0)