Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion env.template
Original file line number Diff line number Diff line change
Expand Up @@ -14,4 +14,5 @@ GATSBY_TURNSTILE_SITE_KEY=
GATSBY_TURNSTILE_SECRET_KEY=
GATSBY_TURNSTILE_API_URL=https://challenges.cloudflare.com/turnstile/v0/siteverify
GATSBY_ELECTION_SINCE_YEAR=
GATSBY_ELECTION_TO_SHOW=
GATSBY_ELECTION_TO_SHOW=
GOOGLE_TAGMANAGER_ID=
26 changes: 25 additions & 1 deletion gatsby-browser.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,13 @@

import { browserWrapper } from "./src/state/ReduxWrapper"

import CookieManager from "./src/utils/cookies/CookieManager";
import KlaroProvider from "./src/utils/cookies/providers/KlaroProvider";
import cookieServices from "./src/utils/cookies/services";
import TagManager from "./src/utils/tag-manager/TagManager";
import GoogleTagManagerProvider from "./src/utils/tag-manager/providers/GoogleTagManagerProvider";
import smoothscroll from 'smoothscroll-polyfill'

// @see wrapRootElement
export const wrapRootElement = browserWrapper;

Expand All @@ -12,4 +19,21 @@ window.SPONSORED_PROJECT_ID = process.env.GATSBY_SPONSORED_PROJECT_ID

export const onRouteUpdate = ({ location, prevLocation }) => {

}
}

export const onClientEntry = () => {
// var set at document level
// prevents widget color flashing from defaults to fetched by widget from marketing api
// smooth scroll polyfill needed for Safari
smoothscroll.polyfill();

// Initialize TagManager and add GoogleTagManagerProvider
const tagManager = new TagManager();
const googleTagManagerProvider = new GoogleTagManagerProvider();
tagManager.addProvider(googleTagManagerProvider);

// Initialize Cookie Manager with Klaro provider
const klaroProvider = new KlaroProvider();
const cookieManager = new CookieManager(klaroProvider, cookieServices);
cookieManager.show();
};
Loading