feat: add coolify deployment and meta tracking

This commit is contained in:
9a0ffedc5b31823b
2026-05-02 22:41:33 +00:00
parent 5c47bdecb6
commit 6b325702b1
13 changed files with 308 additions and 32 deletions

63
tests/meta.test.ts Normal file
View File

@@ -0,0 +1,63 @@
import { describe, expect, it } from 'vitest';
import { buildMetaCapiPayload, contactEventParams, pageViewEventParams } from '../src/lib/meta';
describe('Meta tracking helpers', () => {
it('builds rich Contact event params for vehicle inquiries', () => {
expect(
contactEventParams({
channel: 'whatsapp',
make: 'BMW',
model: '320d',
slug: 'bmw-320d-2018-vilnius',
price: 12500,
}),
).toEqual({
content_category: 'Vehicle',
content_name: 'BMW 320d',
content_ids: ['bmw-320d-2018-vilnius'],
contact_channel: 'whatsapp',
currency: 'EUR',
value: 12500,
});
});
it('builds PageView params with content context', () => {
expect(pageViewEventParams('/automobiliai/bmw-320d-2018-vilnius')).toEqual({
content_category: 'VehicleListing',
page_path: '/automobiliai/bmw-320d-2018-vilnius',
});
});
it('keeps generic contact page inquiries separate from vehicle listing contacts', () => {
expect(contactEventParams({ channel: 'phone' })).toEqual({
content_category: 'SiteContact',
contact_channel: 'phone',
});
});
it('builds a CAPI-ready browser payload with dedupe event id', () => {
const payload = buildMetaCapiPayload({
eventName: 'Contact',
eventId: 'contact-123',
eventSourceUrl: 'https://auto.juozas.lt/automobiliai/bmw-320d-2018-vilnius',
userAgent: 'Mozilla/5.0',
fbp: 'fb.1.123',
fbc: 'fb.1.456',
customData: { content_name: 'BMW 320d' },
});
expect(payload).toMatchObject({
event_name: 'Contact',
event_id: 'contact-123',
action_source: 'website',
event_source_url: 'https://auto.juozas.lt/automobiliai/bmw-320d-2018-vilnius',
user_data: {
client_user_agent: 'Mozilla/5.0',
fbp: 'fb.1.123',
fbc: 'fb.1.456',
},
custom_data: { content_name: 'BMW 320d' },
});
expect(payload.event_time).toBeTypeOf('number');
});
});