@lidofinance/analytics-matomo
Matomo analytics. You can read about Matomo there.
Installation
yarn add @lidofinance/analytics-matomo
Cookie
Module does not send matomo event if cookie forbids.
If you need to send matomo event, you should set cookie with one of key:
- 'LIDO_WIDGET__COOKIES_ALLOWED' soon will be deprecated
- 'cookie-allowed' use it
and cookie value must be 'yes'.
document.cookie = 'cookie-allowed=yes'
Usage
Init Matomo
Variant 1
- Make sure that
window contains __env__;
- Make sure that
window.__env__ contains matomoHost something like window.__env__.matomoHost='https://matomo.somedomain.com/';
- Just import any from
@lidofinance/analytics-matomo, for example:
import { trackEvent } from '@lidofinance/analytics-matomo'
If you can't provide matomoHost to window.__env__ see Variant 2.
Variant 2
- Import
initMatomo from @lidofinance/analytics-matomo;
- Run
initMatomo with parameter matomoHost: string like below:
import { initMatomo } from '@lidofinance/analytics-matomo'
initMatomo('https://matomo.somedomain.com/')
You can also pass any matomo configuration as a second argument
initMatomo('https://matomo.somedomain.com/', [
['option', true],
['option'],
['option', false],
['option', 'value'],
])
Track event
import { callMatomo, trackEvent, wrapWithEventTrack } from '@lidofinance/analytics-matomo'
const matomoSomeEvent: MatomoEventType = [
'Some_Stacking_Widget',
'Push "Some" button',
'some_widget_some_button_clicked',
]
callMatomo('trackEvent', ...matomoSomeEvent)
trackEvent(...matomoSomeEvent)
const someHandler = wrapWithEventTrack(matomoSomeEvent, (arg1, arg2) => {
})
someHandler('some_value1', 'some_value2')