ngx-matomo-client
Version:
Matomo (fka. Piwik) client for Angular applications
67 lines (66 loc) • 3.44 kB
TypeScript
import { OnChanges, OnInit, SimpleChanges } from '@angular/core';
import { DomSanitizer, SafeResourceUrl } from '@angular/platform-browser';
import { InternalMatomoConfiguration } from '../tracker/configuration';
import { CssSizeInput } from '../utils/coercion';
import * as i0 from "@angular/core";
/**
* Basic opt-out form, based on an iframe auto-generated by Matomo.
*
* <b>WARNING:</b> By default, this component assumes the tracker url set in MatomoConfiguration is
* safe to be used as an iframe `src`. You have to make sure that this url is safe before using this
* component!
*
* Note: This component relies on the matomo-generated opt-out form, which is deprecated
* since Matomo version 4.12.0. It will be marked as deprecated soon.
*
* @see https://developer.matomo.org/changelog#new-privacy-opt-out-options
*/
export declare class MatomoOptOutFormComponent implements OnInit, OnChanges {
private readonly sanitizer;
private readonly config;
private _defaultServerUrl?;
private _defaultServerUrlInitialized;
private _border;
private _width;
private _height;
private _iframeSrc;
private _serverUrlOverride?;
/**
* Set a custom locale for the opt-out form
* <br>
* Default is the current app locale available in LOCALE_ID token
*/
locale: string;
/** Font color (note that Matomo currently only supports hexadecimal without leading hash notation) */
color: string;
/** Background color (note that Matomo currently only supports hexadecimal without leading hash notation) */
backgroundColor: string;
fontSize: string;
fontFamily: string;
constructor(sanitizer: DomSanitizer, config: Promise<InternalMatomoConfiguration>, locale?: string);
get serverUrl(): SafeResourceUrl | undefined;
/**
* Set a custom Matomo server url to be used for iframe generation
* <br>
* By default, tracker url is retrieved from MatomoConfiguration.
* <br>
* <b>WARNING:</b> This component assumes the url you provide is safe to be used as an iframe
* `src`. You have to make sure that this url is safe before using this component!
*/
set serverUrl(value: SafeResourceUrl | undefined);
get iframeSrc(): SafeResourceUrl | undefined;
get height(): string;
set height(value: string);
get width(): string;
set width(value: string);
get border(): string;
set border(value: string);
ngOnInit(): void;
ngOnChanges(changes: SimpleChanges): void;
private updateUrl;
static ngAcceptInputType_border: CssSizeInput;
static ngAcceptInputType_width: CssSizeInput;
static ngAcceptInputType_height: CssSizeInput;
static ɵfac: i0.ɵɵFactoryDeclaration<MatomoOptOutFormComponent, [null, null, { optional: true; }]>;
static ɵcmp: i0.ɵɵComponentDeclaration<MatomoOptOutFormComponent, "matomo-opt-out-form", never, { "locale": { "alias": "locale"; "required": false; }; "color": { "alias": "color"; "required": false; }; "backgroundColor": { "alias": "backgroundColor"; "required": false; }; "fontSize": { "alias": "fontSize"; "required": false; }; "fontFamily": { "alias": "fontFamily"; "required": false; }; "serverUrl": { "alias": "serverUrl"; "required": false; }; "height": { "alias": "height"; "required": false; }; "width": { "alias": "width"; "required": false; }; "border": { "alias": "border"; "required": false; }; }, {}, never, never, true, never>;
}