UNPKG

@digital-blueprint/lunchlottery-app

Version:

[GitHub Repository](https://github.com/digital-blueprint/lunchlottery-app) | [npmjs package](https://www.npmjs.com/package/@digital-blueprint/lunchlottery-app) | [Unpkg CDN](https://unpkg.com/browse/@digital-blueprint/lunchlottery-app/)

84 lines (61 loc) 2.14 kB
## Matomo Web Component You can install this component via npm: ```bash npm i @dbp-toolkit/matomo ``` ### Usage ```html <dbp-matomo></dbp-matomo> <script type="module" src="node_modules/@dbp-toolkit/matomo/dist/dbp-matomo.js"></script> ``` Or directly via CDN: ```html <dbp-matomo></dbp-matomo> <script type="module" src="https://unpkg.com/@dbp-toolkit/matomo@0.2.4/dist/dbp-matomo.js"></script> ``` ### Attributes - `endpoint` (required): set to your _Matomo_ server - example `<dbp-matomo endpoint="https://my-matomo.tld"></dbp-matomo>` - `site-id` (required): set to your site id - example `<dbp-matomo site-id="456789"></dbp-matomo>` - `auth` object: you need to set that object property for the login-status - example auth property: `{'login-status': 'logged-in'}` - note: most often this should be an attribute that is not set directly, but subscribed at a provider - `analytics-event` object: for sending Matomo events #### Emitted attributes The component receives a `analytics-event` attribute to send Matomo events. It looks like this: ```json { "category": "the category of the event", "action": "the action of the event", "name": "the name of the event", "value": "the value of the event" } ``` ### Tracking actions ```html <dbp-provider analytics-event> <dbp-matomo subscribe="analytics-event"></dbp-matomo> <your-dbp-adapter-limt-element-component></your-dbp-adapter-limt-element-component> </dbp-provider> ``` In your AdapterLitElement component: ```javascript this.sendSetPropertyEvent('analytics-event', {category: 'my category', action: 'my action'}); ``` ### Local development ```bash # get the source git clone git@github.com:digital-blueprint/toolkit.git cd toolkit/packages/matomo # install dependencies (make sure you have npm version 4+ installed, so symlinks to the git submodules are created automatically) npm install # constantly build dist/bundle.js and run a local web-server on port 8002 npm run watch # run tests npm test # build local packages in dist directory npm run build ``` Jump to <http://localhost:8002> and you should get a demo page.