Skip to content
20 changes: 12 additions & 8 deletions dist/latest/cloudflare.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
/* Simple Analytics - Privacy-first analytics (docs.simpleanalytics.com/script; 2026-10-15; 2af5; v12) */
/* Simple Analytics - Privacy-first analytics (docs.simpleanalytics.com/script; 2026-10-15; 5f31; v12) */
/* eslint-env browser */

(function (
Expand Down Expand Up @@ -543,13 +543,17 @@
var page = {};
var lastSendPath;

var getReferrer = function () {
var getReferrer = function (raw) {
// Customers can overwrite their referrer, here we check for that
var overwrittenReferrer =
overwriteOptions.referrer || attr(scriptElement, "referrer");
var referrer =
overwriteOptions.referrer ||
attr(scriptElement, "referrer") ||
doc.referrer ||
"";

if (raw) return referrer;
return (
(overwrittenReferrer || doc.referrer || "")
referrer
.replace(locationHostname, definedHostname)
.replace(/^https?:\/\/((m|l|w{2,3}([0-9]+)?)\.)?([^?#]+)(.*)$/, "$4")
.replace(/^([^/]+)$/, "$1") || undefinedVar
Expand Down Expand Up @@ -800,11 +804,11 @@
currentReferrerHostname == locationHostname
: falseVar;

// We set unique variable based on pushstate or back navigation, if no match we check the referrer
// Only the first pageview can use a Cloudflare referrer as a unique arrival.
page.unique =
/__cf_/.test(getReferrer()) || isPushState || userNavigated
isPushState || userNavigated
? falseVar
: !sameSite;
: !sameSite || (!pages && /[?&]__cf_/.test(getReferrer(trueVar)));

metadata = appendMetadata(metadata, {
type: pageviewText,
Expand Down
4 changes: 2 additions & 2 deletions dist/latest/custom/app.js

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion dist/latest/custom/app.js.map

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions dist/latest/custom/e.js

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion dist/latest/custom/e.js.map

Large diffs are not rendered by default.

20 changes: 12 additions & 8 deletions dist/latest/custom/latest.dev.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
/* Simple Analytics - Privacy-first analytics (docs.simpleanalytics.com/script; 2026-10-15; ee41; v12) */
/* Simple Analytics - Privacy-first analytics (docs.simpleanalytics.com/script; 2026-10-15; 25ef; v12) */
/* eslint-env browser */

(function (
Expand Down Expand Up @@ -543,13 +543,17 @@
var page = {};
var lastSendPath;

var getReferrer = function () {
var getReferrer = function (raw) {
// Customers can overwrite their referrer, here we check for that
var overwrittenReferrer =
overwriteOptions.referrer || attr(scriptElement, "referrer");
var referrer =
overwriteOptions.referrer ||
attr(scriptElement, "referrer") ||
doc.referrer ||
"";

if (raw) return referrer;
return (
(overwrittenReferrer || doc.referrer || "")
referrer
.replace(locationHostname, definedHostname)
.replace(/^https?:\/\/((m|l|w{2,3}([0-9]+)?)\.)?([^?#]+)(.*)$/, "$4")
.replace(/^([^/]+)$/, "$1") || undefinedVar
Expand Down Expand Up @@ -800,11 +804,11 @@
currentReferrerHostname == locationHostname
: falseVar;

// We set unique variable based on pushstate or back navigation, if no match we check the referrer
// Only the first pageview can use a Cloudflare referrer as a unique arrival.
page.unique =
/__cf_/.test(getReferrer()) || isPushState || userNavigated
isPushState || userNavigated
? falseVar
: !sameSite;
: !sameSite || (!pages && /[?&]__cf_/.test(getReferrer(trueVar)));

metadata = appendMetadata(metadata, {
type: pageviewText,
Expand Down
4 changes: 2 additions & 2 deletions dist/latest/custom/latest.js

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion dist/latest/custom/latest.js.map

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion dist/latest/custom/light.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion dist/latest/custom/light.js.map

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions dist/latest/custom/proxy.js

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion dist/latest/custom/proxy.js.map

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions dist/latest/hello.js

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion dist/latest/hello.js.map

Large diffs are not rendered by default.

20 changes: 12 additions & 8 deletions dist/latest/latest.dev.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
/* Simple Analytics - Privacy-first analytics (docs.simpleanalytics.com/script; 2026-10-15; 0e2c; v12) */
/* Simple Analytics - Privacy-first analytics (docs.simpleanalytics.com/script; 2026-10-15; 233d; v12) */
/* eslint-env browser */

(function (
Expand Down Expand Up @@ -543,13 +543,17 @@
var page = {};
var lastSendPath;

var getReferrer = function () {
var getReferrer = function (raw) {
// Customers can overwrite their referrer, here we check for that
var overwrittenReferrer =
overwriteOptions.referrer || attr(scriptElement, "referrer");
var referrer =
overwriteOptions.referrer ||
attr(scriptElement, "referrer") ||
doc.referrer ||
"";

if (raw) return referrer;
return (
(overwrittenReferrer || doc.referrer || "")
referrer
.replace(locationHostname, definedHostname)
.replace(/^https?:\/\/((m|l|w{2,3}([0-9]+)?)\.)?([^?#]+)(.*)$/, "$4")
.replace(/^([^/]+)$/, "$1") || undefinedVar
Expand Down Expand Up @@ -800,11 +804,11 @@
currentReferrerHostname == locationHostname
: falseVar;

// We set unique variable based on pushstate or back navigation, if no match we check the referrer
// Only the first pageview can use a Cloudflare referrer as a unique arrival.
page.unique =
/__cf_/.test(getReferrer()) || isPushState || userNavigated
isPushState || userNavigated
? falseVar
: !sameSite;
: !sameSite || (!pages && /[?&]__cf_/.test(getReferrer(trueVar)));

metadata = appendMetadata(metadata, {
type: pageviewText,
Expand Down
4 changes: 2 additions & 2 deletions dist/latest/latest.js

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion dist/latest/latest.js.map

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion dist/latest/light.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion dist/latest/light.js.map

Large diffs are not rendered by default.

Loading
Loading