mirror of
https://github.com/vercel/commerce.git
synced 2025-07-22 20:26:49 +00:00
Add hook to include accept cookies functionality
This commit is contained in:
26
lib/hooks/useAcceptCookies.ts
Normal file
26
lib/hooks/useAcceptCookies.ts
Normal file
@@ -0,0 +1,26 @@
|
||||
import { useEffect, useState } from 'react'
|
||||
import Cookies from 'js-cookie'
|
||||
|
||||
const COOKIE_NAME = 'accept_cookies'
|
||||
|
||||
export const useAcceptCookies = () => {
|
||||
const [acceptedCookies, setAcceptedCookies] = useState(true)
|
||||
|
||||
useEffect(() => {
|
||||
if (!Cookies.get(COOKIE_NAME)) {
|
||||
setAcceptedCookies(false)
|
||||
}
|
||||
}, [])
|
||||
|
||||
const acceptCookies = () => {
|
||||
setAcceptedCookies(true)
|
||||
Cookies.set(COOKIE_NAME, 'accepted', {
|
||||
expires: 365,
|
||||
})
|
||||
}
|
||||
|
||||
return {
|
||||
acceptedCookies,
|
||||
onAcceptCookies: acceptCookies,
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user