@funnel10x/tracking 1.0.0 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -22,6 +22,16 @@ O que faz numa página:
22
22
  e nos links do checkout;
23
23
  - **o identify pelo id do contacto** num link de email ou de SMS
24
24
  (`?contact_id={{contact.id}}`);
25
+ - **o email e o telefone da pessoa, quando ela os dá** (a 1.1.0, como a
26
+ HYROS): do URL, quando o funil os passa à página seguinte (`email`, `phone`,
27
+ `phoneNumber`, `phone_number`, `tel`, `telefone`), e dos campos de email e de
28
+ telefone de qualquer form da página, à saída do campo e no envio. O telefone
29
+ ganha o indicativo do seletor de país (o intl-tel-input), que é o que um
30
+ seletor costuma esconder. Vão num evento `contact_captured` (com
31
+ `contact_source`: `url`, `field` ou `form`), cada valor uma vez por página, e
32
+ só com o PostHog a medir. Não vão ao perfil (`$set`), que passaria o browser
33
+ a pessoa identificada, o escalão mais caro do PostHog: o perfil recebe-os do
34
+ identify do servidor, uma vez por contacto;
25
35
  - **a versão do snippet em cada evento** (`tracking_version`), e, num site
26
36
  `direct`, **a versão da página e o teste** (`page_version`, `ab_test`), o
27
37
  **interruptor de consentimento** do `site.json`, e a guarda das
@@ -64,14 +74,16 @@ init({
64
74
  ```json
65
75
  {
66
76
  "rewrites": [
67
- { "source": "/_t/static/:path*", "destination": "https://us-assets.i.posthog.com/static/:path*" },
68
- { "source": "/_t/array/:path*", "destination": "https://us-assets.i.posthog.com/array/:path*" },
69
- { "source": "/_t/:path*", "destination": "https://us.i.posthog.com/:path*" }
77
+ { "source": "/_t/static/:path(.*)", "destination": "https://us-assets.i.posthog.com/static/:path" },
78
+ { "source": "/_t/array/:path(.*)", "destination": "https://us-assets.i.posthog.com/array/:path" },
79
+ { "source": "/_t/:path(.*)", "destination": "https://us.i.posthog.com/:path" }
70
80
  ]
71
81
  }
72
82
  ```
73
83
 
74
- O `_` à frente garante que não colide com um funil (a base não deixa um nome
84
+ O padrão é `:path(.*)` e não `:path*`, que não apanha a barra final dos
85
+ envios (`/e/`) e lhes responde 404 (medido em produção). O `_` à frente
86
+ garante que não colide com um funil (a base não deixa um nome
75
87
  de funil começar por `_`). **E o site leva `Referrer-Policy: strict-origin`**
76
88
  (nos `headers` do `vercel.json`): o proxy é do mesmo domínio, e com a política
77
89
  por omissão o browser manda-lhe o URL inteiro da página no `Referer`, com o
@@ -111,7 +123,10 @@ condições de consentimento da tag no GTM, se o site tiver um banner). Uma vers
111
123
  nova é uma tag nova, nunca `@1` nem `@latest`: o GTM de cada site diz que versão
112
124
  corre, e o `tracking_version` de cada evento confirma-o.
113
125
 
114
- **O form do GHL corre num iframe** de outro domínio, onde o script da página
126
+ **Numa página de um funil do GHL, o form é nativo** (sem `<form>`, cada campo
127
+ com o query key em `data-q`): o snippet escreve nos campos cujo query key é um
128
+ dos valores, e o GHL envia-os. **Um form do GHL embebido noutro site corre num
129
+ iframe** de outro domínio, onde o script da página
115
130
  não chega. O snippet passa ao iframe, pelo URL dele, os ids e os parâmetros do
116
131
  anúncio, e os campos escondidos do form lêem-nos de lá (cada campo com o
117
132
  *query key* igual ao nome). Se o form não os ler do URL, a mesma tag entra no
package/dist/gtm.html CHANGED
@@ -1,8 +1,8 @@
1
- <!-- @funnel10x/tracking@1.0.0: a tag do GTM (Custom HTML, em All Pages). Só se muda a chave; uma versão nova é um ficheiro novo. -->
1
+ <!-- @funnel10x/tracking@1.1.0: a tag do GTM (Custom HTML, em All Pages). Só se muda a chave; uma versão nova é um ficheiro novo. -->
2
2
  <script>
3
3
  window.f10xTracking = {
4
4
  key: '{{PostHog project key}}',
5
5
  checkoutHosts: []
6
6
  }
7
7
  </script>
8
- <script src="https://cdn.jsdelivr.net/npm/@funnel10x/tracking@1.0.0/dist/tag.js" integrity="sha384-Nm7hJCP+58m6xsN4HIdrEDHw8WBuAuz4VrCf4wTDQtIPTPrIp/Ath1YjpxS06DXZ" crossorigin="anonymous"></script>
8
+ <script src="https://cdn.jsdelivr.net/npm/@funnel10x/tracking@1.1.0/dist/tag.js" integrity="sha384-2ACrLX/l5RYZ+55HKpvkNM5uzAhAqQPoGWoGqj3w4mKUcSAMKYV8glWCJBbSDDD+" crossorigin="anonymous"></script>