summaryrefslogtreecommitdiff
path: root/packages/integrations/vercel/src/lib/env.ts
diff options
context:
space:
mode:
authorGravatar Nathaniel Blackburn <support@nblackburn.uk> 2023-05-15 07:13:47 +0100
committerGravatar GitHub <noreply@github.com> 2023-05-15 14:13:47 +0800
commit06ca3702f88ed18a063d2abbbb231615f9f97154 (patch)
tree92eb4c572e7ef566492479f9752178b11f9af535 /packages/integrations/vercel/src/lib/env.ts
parenta1bac1d5b64506a1cc929492fa977210bf25f9fe (diff)
downloadastro-06ca3702f88ed18a063d2abbbb231615f9f97154.tar.gz
astro-06ca3702f88ed18a063d2abbbb231615f9f97154.tar.zst
astro-06ca3702f88ed18a063d2abbbb231615f9f97154.zip
Inject analytics env (#6876)
Diffstat (limited to 'packages/integrations/vercel/src/lib/env.ts')
-rw-r--r--packages/integrations/vercel/src/lib/env.ts15
1 files changed, 15 insertions, 0 deletions
diff --git a/packages/integrations/vercel/src/lib/env.ts b/packages/integrations/vercel/src/lib/env.ts
new file mode 100644
index 000000000..01d8c76a5
--- /dev/null
+++ b/packages/integrations/vercel/src/lib/env.ts
@@ -0,0 +1,15 @@
+/**
+ * While Vercel adds the `PUBLIC_` prefix for their `VERCEL_` env vars by default, some env vars
+ * like `VERCEL_ANALYTICS_ID` aren't, so handle them here so that it works correctly in runtime.
+ */
+export function exposeEnv(envs: string[]): Record<string, unknown> {
+ const mapped: Record<string, unknown> = {};
+
+ envs
+ .filter((env) => process.env[env])
+ .forEach((env) => {
+ mapped[`import.meta.env.PUBLIC_${env}`] = JSON.stringify(process.env[env]);
+ });
+
+ return mapped;
+}