quanti-cookie-bar
v1.1.3
Published
``` npm install quanti-cookie-bar ```
Readme
Dokumentace - Quanti Cookie Bar
Instalace
npm install quanti-cookie-barVložení na web
<script setup>
import { QuantiCookieBar } from 'quanti-cookie-bar';
import "quanti-cookie-bar/style.css";
</script>
<template>
<div>
<QuantiCookieBar />
</div>
</template>Požadavky na Node.js
Node.js 18.x.xnebo
Node.js 20.x.xUpozornění
Pro správné fungování cookie lišty je třeba mít ve svém projektu implementováno GTM (Google Tag Manager) a všechny scripty, které chcete spouštět na základě cookies musíte mít vložené přes GTM. Pokud ve vašem projektu GTM nemáte, tak cookie lišta nebude posílat do GTM souhlasy/ nesouhlasy uživatelů.
Obecné fungování cookie lišty
Cookie lišta funguje v kooperácií s Google Tag Managerom (GTM). Je připravena na Consent Mode 2.0. Pozri sekci "Upozornění". Užívateľov výber sa ukladá do localStorage. Keď sa prvotne načíta stránka, tak cookie lišta automaticky pošle zamietnuté súhlasy (consent_default). Následne sa pozrie do localStoragu či už užívateľ v minulosti nejaké súhlasy potvrdzoval, ak áno, tak pošle do GTM aktualizáciu consentov (event: consent_update) a cookie lišta sa nezobrazí. Ak cookie lišta v localStorage nenájde žiadne súhlasy, tak sa užívateľovi zobrazí.
Detailní fungování naleznete v článku na ForDevs. https://fordevs.cz/clanky/jak-na-cookies-a-cookie-listu-pro-web
Nastavení v GTM
V GTM je třeba container přepnout do režimu "Povolit přehled souhlasu". správce -> Nastavení kontejneru -> Povolit přehled souhlasu. Následně u každé značky v GTM můžeme specifikovat při jakých souhlasech se má spustit. Značky -> Konfigurace značky -> Nastavení souhlasu. Můžeme si specifikovat vlastní událost ve spouštěčích -> consent_update. Tento event vystřeluje cookie lišta v momentě, kdy uživatel zvolí souhlas/nesouhlas.
Možnosti nastavení a eventy
CSS
Cookie lištu lze nastavovat pomocí změny v css proměnných. K dispozici jsou tyto proměnné a výchozí hodnoty:
--cookie-bar-padding: 2.5rem 0; /* 40px */
--cookie-bar-color-primary: #df2686;
--cookie-bar-color-primary-hover: #cb1573;
--cookie-bar-color-light: #fff;
--cookie-bar-color-dark: #000;
--cookie-bar-color-gray-light: #d3d3d3;
--cookie-bar-color-icons: #000;
--cookie-bar-button-radius: 0;
--cookie-bar-button-height: 2.5rem; /* 40px */
--cookie-bar-max-width: 71.25rem; /* 1140px */
--cookie-bar-overlay-z-index: 100;
--cookie-bar-z-index: 1000;Propsy
Povolené propsy a jejich výchozí hodnoty:
title: {
type: String,
default: 'Dám si cookies 🍪',
},
description: {
type: String,
default: `Chtěli bychom Vám poskytnout ty nejlepší zážitky z našeho webu. K tomu používáme soubory cookies, abyste zde našli vše, s čím jste za námi přišli. Díky nim můžeme analyzovat provoz webu a neustále jej zlepšovat. <a href="/cookies" class="cookie-bar__link">Více o cookies.</a>`,
},
buttonTexts: {
type: Object,
default: {
acceptAll: 'Přijmout vše',
rejectAll: 'Odmítnout',
customSelect: 'Vyberu podle sebe',
acceptSelect: 'Povolit výběr',
}
},
cookiesLogo: {
type: String,
default: null,
},
functionalTexts: {
type: Object,
default: {
title: 'Nezbytné',
perex: 'pro správnou funkci webu',
alwaysActive: 'vždy aktivní',
description: 'Nezbytné cookies pomáhají našemu webu k tomu, abychom vám mohli poskytnout pohodlný zážitek z návštěvy. Tyto cookies jsou potřebné,aby web fungoval správně.',
}
},
analyticsTexts: {
type: Object,
default: {
title: 'Analytické',
perex: 'k měření a analýze dat',
description: 'Analytické cookies nám pomáhají porozumět, jak návštěvníci používají náš web. Díky nim můžeme zlepšovat výkon stránky.',
}
},
adTexts: {
type: Object,
default: {
title: 'Marketingové',
perex: 'pro zobrazení relevantní nabídky',
description: 'Marketingové cookies nám pomáhají zobrazovat relevantní obsah a reklamy, které pro vás mohou být zajímavé a užitečné.',
}
},
forceCookieOpen: {
type: Boolean,
default: false,
},Emity
Emity, které vystřeluje komponenta a na které je možné se odchytit:
backdropClick -> klik uživatele na overlay, nemá ve výchozím stavu žádnou funkčnost
backdropClickacceptAll -> uživatel udělí souhlas se všemi cookies
acceptAllrejectAll -> uživatel zamítne všechny cookies
rejectAllcustomSelect -> uživatel si otevře možnosti vlastního nastavení cookies
customSelectacceptSelect -> uživatel potvrdí své vlastní nastavení cookies
acceptSelectcloseCookieBar -> uživatel zavře cookie lištu nebo se cookie lišta zavře vybráním jedné z možností
closeCookieBarZnovuotevření cookie lišty
Znovuotevření cookie lišty je možné vyvolat pomocí propsy forceCookieOpen: boolean:
:forceCookieOpen="true"