analytics/test/plausible_web/controllers
hq1 c81cb16933
Snippet integration verification (#4106)
* Allow running browserless.io locally

* Compile tailwind classes based on extra/ too

* Add browserless runtime configuration

* Ignore verification events on ingestion

* Improve extracting HTML text in tests

* Update dependencies

- Floki will be used on production to parse site contents
- Req will be used to handle redundant stuff like retrying etc.

* Add shuttle SVG to generic components

Later on we'll use it to indicate verification errors

* Connect live socket & allow skipping awaiting the first pageview

* Connect live socket in general settings

* Implement verification checks & diagnostics

* Stub remote services with Req for testing

* Change snippet screen copy

* Update tracker script, so that:

1. headless browsers aren't ignored if `window.__plausible` is defined
2. callback optionally supplies the event response HTTP status

This will be later used to check whether the server acknowledged
the verification event.

* Implement LiveView verification UI

* Embed the verification UIs into settings and onboarding

* Implement browserless puppeteer verification script

It:
 - tries to visit the site
 - defines window.__plausible, so the tracker doesn't ignore test events
 - sends a verification event and instruments the callback
 - awaits the callback to fire and returns the result

* Improve diagnostics for CSP

Only report CSP error if the snippet is already found

* Put verification behind a feature flag/env setting

* Contact Us hint only for Enterprise Edition

* For headless code, use JS context instead of EEx interpolation

* Update diagnostics test with WordPress scenarios

* Shorten exception/throw interception

* Rename test

* Tidy up

* Bust URL always on headless check

* Update moduledoc

* Detect official Plausible WordPress Plugin

and act accordingly on diagnostics interoperation

* Stop using 'rating' in favour of 'interpretation'

* Only report CSP error if no proxy is likely

* Update CHANGELOG

* Allow event-* attributes on snippet elements

* Improve naive GTM detection, not to confuse it with GA4

* Update lib/plausible/verification.ex

Co-authored-by: Adrian Gruntkowski <adrian.gruntkowski@gmail.com>

* Update test/plausible/site/verification/checks_test.exs

Co-authored-by: Adrian Gruntkowski <adrian.gruntkowski@gmail.com>

* s/perform_wrapped/perform_safe

* Update lib/plausible/verification/checks/installation.ex

Co-authored-by: Adrian Gruntkowski <adrian.gruntkowski@gmail.com>

* Remove garbage

---------

Co-authored-by: Adrian Gruntkowski <adrian.gruntkowski@gmail.com>
2024-05-23 15:00:50 +02:00
..
api Return warning when imported stats are skipped in Stats API due to unsupported query (#4116) 2024-05-21 11:45:18 +02:00
auth_controller Remove custom domains support + update build options (#3559) 2023-11-29 11:04:54 +01:00
CSVs Ignore sessions without entry/exit pages when breaking down entry/exit pages (#3933) 2024-03-26 09:01:07 +02:00
site remove Plausible Analytics metions from CE (#4121) 2024-05-23 09:43:01 +02:00
admin_auth_controller_test.exs Rename internal build symbols (#3942) 2024-04-29 08:05:33 +02:00
admin_controller_test.exs Rename internal build symbols (#3942) 2024-04-29 08:05:33 +02:00
auth_controller_sync_test.exs Rename internal build symbols (#3942) 2024-04-29 08:05:33 +02:00
auth_controller_test.exs Rename internal build symbols (#3942) 2024-04-29 08:05:33 +02:00
avatar_controller_test.exs Remove custom domains support + update build options (#3559) 2023-11-29 11:04:54 +01:00
billing_controller_test.exs Make hello@plausible.io clickable (#3746) 2024-02-01 09:43:21 +01:00
error_report_controller_test.exs Rename internal build symbols (#3942) 2024-04-29 08:05:33 +02:00
google_analytics_controller_test.exs Implement resumable GA4 imports to work around rate limiting (#4049) 2024-04-30 18:06:18 +02:00
invitation_controller_test.exs Rename internal build symbols (#3942) 2024-04-29 08:05:33 +02:00
page_controller_test.exs remove Plausible Analytics metions from CE (#4121) 2024-05-23 09:43:01 +02:00
site_controller_test.exs Handle s3 timeout on settings page (#4036) 2024-05-13 10:17:27 +02:00
stats_controller_test.exs Snippet integration verification (#4106) 2024-05-23 15:00:50 +02:00
unsubscribe_controller_test.exs Remove custom domains support + update build options (#3559) 2023-11-29 11:04:54 +01:00