feat(settings): 🧑💻 add cookie lib
This commit is contained in:
parent
746d39c775
commit
ea62de33d0
28
src/utils/cookies.js
Normal file
28
src/utils/cookies.js
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
// https://grafikart.fr/tutoriels/javascript-cookies-2079
|
||||||
|
/**
|
||||||
|
* Récupère les données associées à un cookie
|
||||||
|
* @param {string} name Nom du cookie à récupérer
|
||||||
|
* @return {string|null}
|
||||||
|
*/
|
||||||
|
export const getCookie = (name) => {
|
||||||
|
const cookies = document.cookie.split('; ')
|
||||||
|
const value = cookies
|
||||||
|
.find(c => c.startsWith(name + '='))
|
||||||
|
?.split('=')[1]
|
||||||
|
if (value === undefined) {
|
||||||
|
return null
|
||||||
|
}
|
||||||
|
return decodeURIComponent(value)
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Créer ou modifie la valeur d'un cookie avec une durée spécifique
|
||||||
|
* @param {string} name Nom du cookie
|
||||||
|
* @param {string} value Value du cookie
|
||||||
|
* @param {number} days Durée de vie du cookie (en jours)
|
||||||
|
*/
|
||||||
|
export const setCookie = (name, value, days) => {
|
||||||
|
const date = new Date()
|
||||||
|
date.setDate(date.getDate() + days)
|
||||||
|
document.cookie = `${name}=${encodeURIComponent(value)}; expires=${date.toUTCString()};`
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user