UNPKG

@vizertech/nextjs-capi

Version:

NextJS 13 Wrapper for fb pixel and capi for graph v17.0 API

43 lines (42 loc) 1.77 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.fbPageView = exports.fbEvent = void 0; const uuid_1 = require("uuid"); const debug_1 = __importDefault(require("./lib/debug")); //pixel client only pageView event to trigger on any route change function fbPageView() { (0, debug_1.default)('Evento Cliente: PageView'); window.fbq('track', 'PageView'); } exports.fbPageView = fbPageView; //facebook custom event with capi and or pixel function fbEvent(event, isTest = false, testEventCode, enablePixel = false) { const eventId = event.event_id ? event.event_id : (0, uuid_1.v4)(); if (enablePixel === true) { const pixelData = { data: event }; window.fbq('track', event.event_name, pixelData, { eventID: eventId }); (0, debug_1.default)(`Client Side Event: ${event.event_name}`); (0, debug_1.default)(`Client Side Payload: ${JSON.stringify(pixelData)}`); (0, debug_1.default)(`Client Side Event ID: ${eventId}`); } setTimeout(() => { fetch('/api/events', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify(event) }).then((response) => { (0, debug_1.default)(`Server Side Event: ${event.event_name} (${response.status})`); (0, debug_1.default)(`Server Side Payload: ${JSON.stringify(event)}`); }).catch((error) => { (0, debug_1.default)(`Server Side Event Error: ${event.event_name} (${error.status})`); }); }, 250); } exports.fbEvent = fbEvent;