mirror of
https://github.com/vercel/commerce.git
synced 2025-07-23 04:36:49 +00:00
feat: Age gate
This commit is contained in:
25
app/hooks/use-age-confirmation.tsx
Normal file
25
app/hooks/use-age-confirmation.tsx
Normal file
@@ -0,0 +1,25 @@
|
||||
import { useEffect, useState } from 'react';
|
||||
|
||||
import Cookies from 'js-cookie';
|
||||
|
||||
const COOKIE_NAME = 'age_confirm';
|
||||
|
||||
export const useAgeConfirmation = () => {
|
||||
const [ageConfirmed, setAgeConfirmed] = useState(true);
|
||||
|
||||
useEffect(() => {
|
||||
if (!Cookies.get(COOKIE_NAME)) {
|
||||
setAgeConfirmed(false);
|
||||
}
|
||||
}, []);
|
||||
|
||||
const confirmAge = () => {
|
||||
setAgeConfirmed(true);
|
||||
Cookies.set(COOKIE_NAME, 'confirmed', { expires: 365 });
|
||||
};
|
||||
|
||||
return {
|
||||
ageConfirmed,
|
||||
onAgeConfirmed: confirmAge
|
||||
};
|
||||
};
|
Reference in New Issue
Block a user