From 8f19080e1961006626b5520a81812289033af782 Mon Sep 17 00:00:00 2001 From: Eric Spishak-Thomas Date: Thu, 14 Nov 2024 13:23:50 -0500 Subject: [PATCH 1/4] Make access defensive. `process` may not exist in all frameworks, this ensures things will continue to work as expected. --- packages/web/src/generic.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/web/src/generic.ts b/packages/web/src/generic.ts index 509a387..857d6c8 100644 --- a/packages/web/src/generic.ts +++ b/packages/web/src/generic.ts @@ -69,7 +69,8 @@ function inject( } if (props.endpoint) { script.dataset.endpoint = props.endpoint; - } else if (process.env[basepathVariableName]) { + // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition -- process doesn't exist in all frameworks + } else if (process?.env?.[basepathVariableName]) { script.dataset.endpoint = `/${process.env[basepathVariableName]}/_vercel/insights`; } if (props.dsn) { From d4b8739707a3a50ee15a7af9819c20a29b3f1ce1 Mon Sep 17 00:00:00 2001 From: Eric Spishak-Thomas Date: Fri, 15 Nov 2024 12:16:56 -0500 Subject: [PATCH 2/4] Correctly check if global exists. --- packages/web/src/generic.ts | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/packages/web/src/generic.ts b/packages/web/src/generic.ts index 857d6c8..5a92723 100644 --- a/packages/web/src/generic.ts +++ b/packages/web/src/generic.ts @@ -69,9 +69,13 @@ function inject( } if (props.endpoint) { script.dataset.endpoint = props.endpoint; + } else if ( + // eslint-disable-next-line @typescript-eslint/prefer-optional-chain -- process doesn't exist in all frameworks + typeof process !== 'undefined' && // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition -- process doesn't exist in all frameworks - } else if (process?.env?.[basepathVariableName]) { - script.dataset.endpoint = `/${process.env[basepathVariableName]}/_vercel/insights`; + process.env?.[basepathVariableName] + ) { + script.dataset.endpoint = `/${process.env[basepathVariableName]}/_vercel/speed-insights/vitals`; } if (props.dsn) { script.dataset.dsn = props.dsn; From 59c9f53163cfe1bf300ee2e7721a517f68f71807 Mon Sep 17 00:00:00 2001 From: Eric Spishak-Thomas Date: Wed, 20 Nov 2024 12:55:15 -0500 Subject: [PATCH 3/4] Directly access environment variable. Bracket access worked in dev mode but not production. --- packages/web/src/generic.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/web/src/generic.ts b/packages/web/src/generic.ts index 5a92723..585ef4a 100644 --- a/packages/web/src/generic.ts +++ b/packages/web/src/generic.ts @@ -73,9 +73,9 @@ function inject( // eslint-disable-next-line @typescript-eslint/prefer-optional-chain -- process doesn't exist in all frameworks typeof process !== 'undefined' && // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition -- process doesn't exist in all frameworks - process.env?.[basepathVariableName] + process.env?.NEXT_PUBLIC_WEB_ANALYTICS_BASEPATH ) { - script.dataset.endpoint = `/${process.env[basepathVariableName]}/_vercel/speed-insights/vitals`; + script.dataset.endpoint = `/${process.env.NEXT_PUBLIC_WEB_ANALYTICS_BASEPATH}/_vercel/speed-insights/vitals`; } if (props.dsn) { script.dataset.dsn = props.dsn; From d56848cfb4e974f681d3c37653887c782ae56e1d Mon Sep 17 00:00:00 2001 From: Eric Spishak-Thomas Date: Wed, 20 Nov 2024 12:56:25 -0500 Subject: [PATCH 4/4] Bump version. --- packages/web/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/web/package.json b/packages/web/package.json index 4d17fbf..98353e5 100644 --- a/packages/web/package.json +++ b/packages/web/package.json @@ -1,6 +1,6 @@ { "name": "@vercel/analytics", - "version": "1.5.0-canary.1", + "version": "1.5.0-canary.2", "description": "Gain real-time traffic insights with Vercel Web Analytics", "keywords": [ "analytics",