2024-03-25 10:28:15 +00:00
|
|
|
|
|
|
|
class PayPalInsights {
|
|
|
|
|
|
|
|
constructor() {
|
|
|
|
window.paypalInsightDataLayer = window.paypalInsightDataLayer || [];
|
|
|
|
document.paypalInsight = () => {
|
|
|
|
paypalInsightDataLayer.push(arguments);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @returns {PayPalInsights}
|
|
|
|
*/
|
2024-04-11 17:14:22 +01:00
|
|
|
static init() {
|
2024-03-25 10:28:15 +00:00
|
|
|
if (!PayPalInsights.instance) {
|
|
|
|
PayPalInsights.instance = new PayPalInsights();
|
|
|
|
}
|
|
|
|
return PayPalInsights.instance;
|
|
|
|
}
|
|
|
|
|
2024-04-11 17:14:22 +01:00
|
|
|
static track(eventName, data) {
|
|
|
|
PayPalInsights.init();
|
2024-03-25 10:28:15 +00:00
|
|
|
paypalInsight('event', eventName, data);
|
|
|
|
}
|
|
|
|
|
|
|
|
static config (clientId, data) {
|
2024-04-11 17:14:22 +01:00
|
|
|
PayPalInsights.init();
|
2024-03-25 10:28:15 +00:00
|
|
|
paypalInsight('config', clientId, data);
|
|
|
|
}
|
|
|
|
|
|
|
|
static setSessionId (sessionId) {
|
2024-04-11 17:14:22 +01:00
|
|
|
PayPalInsights.init();
|
2024-03-25 10:28:15 +00:00
|
|
|
paypalInsight('set', { session_id: sessionId });
|
|
|
|
}
|
|
|
|
|
|
|
|
static trackJsLoad () {
|
2024-04-11 17:14:22 +01:00
|
|
|
PayPalInsights.track('js_load', { timestamp: Date.now() });
|
2024-03-25 10:28:15 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static trackBeginCheckout (data) {
|
2024-04-11 17:14:22 +01:00
|
|
|
PayPalInsights.track('begin_checkout', data);
|
2024-03-25 10:28:15 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static trackSubmitCheckoutEmail (data) {
|
2024-04-11 17:14:22 +01:00
|
|
|
PayPalInsights.track('submit_checkout_email', data);
|
2024-03-25 10:28:15 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static trackSelectPaymentMethod (data) {
|
2024-04-11 17:14:22 +01:00
|
|
|
PayPalInsights.track('select_payment_method', data);
|
2024-03-25 10:28:15 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
static trackEndCheckout (data) {
|
2024-04-11 17:14:22 +01:00
|
|
|
PayPalInsights.track('end_checkout', data);
|
2024-03-25 10:28:15 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
export default PayPalInsights;
|