feat: Add CookiesContext to +Page component

This commit is contained in:
Gauthier Daniels 2025-04-18 16:48:50 +02:00
parent 78e9df72f7
commit 3d5cc75984
3 changed files with 6 additions and 34 deletions

View File

@ -1,25 +0,0 @@
import type { PageContext } from "vike/types";
import { getTelefuncContext } from "@/lib/getTelefuncContext";
import { CookieParser } from "@/services/CookieParser";
type ConsentCookies = keyof PageContext["cookies"]["consent"];
export async function onUpdateConsentCookie(cookieName: ConsentCookies, cookieValue: boolean) {
const context = getTelefuncContext();
const { reply } = context;
CookieParser.set(reply, cookieName, cookieValue.toString(), 365);
return { ok: true, message: "Updated consent cookie", cookieName, cookieValue };
}
export async function onAcceptAllConsentCookie() {
const context = getTelefuncContext();
const { reply } = context;
CookieParser.set(reply, "analytics", "true", 365);
CookieParser.set(reply, "customization", "true", 365);
return { ok: true, message: "Updated consents cookies" };
}

View File

@ -1,8 +1,11 @@
import { Link } from "@/components/common/Link";
import { CookiesContext } from "@/components/common/Cookies";
import { Button } from "@/components/syntax/Button";
import React from "react";
import { Link } from "@/components/common/Link";
import React, { useContext } from "react";
export function Page() {
const { setIsOpen } = useContext(CookiesContext);
return (
<div className="flex flex-col gap-4 p-4">
<h1 className="font-display text-3xl tracking-tight text-slate-900 dark:text-white">
@ -79,13 +82,7 @@ export function Page() {
paragraphe.
</p>
<Button
variant="secondary"
className="w-max max-w-full"
onClick={() => {
// TODO
}}
>
<Button variant="secondary" className="w-max max-w-full" onClick={() => setIsOpen(true)}>
Paramétrer les cookies
</Button>

View File