diff --git a/packages/matomo/src/matomo.js b/packages/matomo/src/matomo.js index ba7bb7188a033cbbc18a80d2f5a4b7a6c866e893..0f99c2aa73462ef98167c5a7f0fa770145e33b0e 100644 --- a/packages/matomo/src/matomo.js +++ b/packages/matomo/src/matomo.js @@ -155,6 +155,29 @@ export class MatomoElement extends DBPLitElement { that.pushEvent(['trackEvent', 'UnhandledRejection', name]); }); + // https://developer.mozilla.org/en-US/docs/Web/API/Element/securitypolicyviolation_event + window.addEventListener('securitypolicyviolation', (e) => { + let attrs = [ + 'blockedURI', + 'columnNumber', + 'disposition', + 'documentURI', + 'effectiveDirective', + 'lineNumber', + 'originalPolicy', + 'referrer', + 'sample', + 'sourceFile', + 'statusCode', + 'violatedDirective', + ]; + let payload = {}; + for (let attr of attrs) { + payload[attr] = e[attr]; + } + this.pushEvent(['trackEvent', 'SecurityPolicyViolation', JSON.stringify(payload)]); + }); + this.isRunning = true; if (this.lastEvent.length > 0) { console.log(