Skip to content
Snippets Groups Projects
Select Git revision
  • 14e4cda43dd0ba907e87640e80a6745b8e465324
  • develop default
  • master protected
  • feature/frontend-tests
  • 0.110
  • 0.109
  • 0.108
  • 0.107
  • 0.106
  • 0.105
  • 0.104
  • 0.103
  • 0.102
  • 0.101
  • 0.100
  • 0.99
  • 0.98
  • 0.97
  • 0.96
  • 0.95
  • 0.94
  • 0.93
  • 0.92
  • 0.91
24 results

MatomoProvider.tsx

Blame
  • MatomoProvider.tsx 804 B
    import React, { createContext, useContext } from 'react'
    import MatomoTracker, { createInstance } from 'compendium/matomo/MatomoTracker'
    import { consentContext } from 'compendium/providers/ConsentProvider'
    
    export interface MatomoProviderProps {
        children?: React.ReactNode
    }
    
    export const MatomoContext = createContext<MatomoTracker | null>(null)
    
    const MatomoProvider: React.FC<MatomoProviderProps> = function ({
        children
    }) {
        const Context = MatomoContext
    
        const consent = useContext(consentContext).consent
    
        const matomoInstance = createInstance({
            urlBase: 'https://prod-swd-webanalytics01.geant.org/',
            siteId: 1,
            disabled: !consent
        });
    
        return <Context.Provider value={matomoInstance}>{children}</Context.Provider>
    }
    
    export default MatomoProvider