* Register `pageleave` listener earlier
Currently, pageleave listener is only registered when a successful
response is received from plausible API.
After this change pageleave listener is registered immediately when
pageview is triggered, hopefully increasing capture rate.
* Codespell
* improve tracker test util to handle custom props
* track pageleave props
* make test util more powerful
* also test with pageview-props extension
* add test for sending props on hash navigation
* simplify tracker logic around currentPageLeaveURL
* clarify the intent of a timeout by extracting a fn
* bugfix: stop sending pageleaves from ignored pages
+ fix the test to actually fail if this doesn't work.
* refactor: drop expectCustomEvent in favour of the new test util
* add test for pageleave props ingestion
* add query tests
* improve test util readability
* move util function to util module
* move playwright config file to tracker dir root
* update Playwright + add gitignores
* Playwright: enable reuseExistingServer (non-CI env)
* store tracker src copies to avoid re-compilation in dev env
* test pageleave on simple navigation
* fix test util fn
* rename local_test npm script
* make test util able to expect multiple requests
* test pageleaves in SPAs
* test pageleave with manual URL
* test pageleave not sent in manual when pageview not triggered
* extend util fn to refute event requests
* test pageleaves not sent in excluded hash pages
* store hashes instead of file copies to detect /tracker/src changes
* drop async
* speed up test suite