From bf9d50026e16d9d6a39257afcc9639b361da0eb7 Mon Sep 17 00:00:00 2001 From: Daniel Roe Date: Mon, 20 Nov 2023 22:01:24 +0000 Subject: [PATCH] fix: use `@rollup/plugin-replace` for typeof replacements --- packages/bridge/package.json | 1 + packages/bridge/src/vite/server.ts | 17 ++++++++++------- pnpm-lock.yaml | 9 ++++++--- 3 files changed, 17 insertions(+), 10 deletions(-) diff --git a/packages/bridge/package.json b/packages/bridge/package.json index 007485a3..ff6e34e1 100644 --- a/packages/bridge/package.json +++ b/packages/bridge/package.json @@ -32,6 +32,7 @@ "@nuxt/postcss8": "^1.1.3", "@nuxt/schema": "3.8.1", "@nuxt/ui-templates": "^1.3.1", + "@rollup/plugin-replace": "^5.0.5", "@unhead/ssr": "^1.8.4", "@unhead/vue": "^1.8.4", "@vitejs/plugin-legacy": "^5.0.0", diff --git a/packages/bridge/src/vite/server.ts b/packages/bridge/src/vite/server.ts index f643458f..04868669 100644 --- a/packages/bridge/src/vite/server.ts +++ b/packages/bridge/src/vite/server.ts @@ -3,6 +3,7 @@ import createVuePlugin from '@vitejs/plugin-vue2' import { logger } from '@nuxt/kit' import type { InlineConfig } from 'vite' import { joinURL, withoutLeadingSlash, withTrailingSlash } from 'ufo' +import replace from '@rollup/plugin-replace' import { initViteNodeServer } from '../vite-node' import { mergeConfig, createServer, build } from './stub-vite.cjs' import { wpfs } from './utils/wpfs' @@ -48,12 +49,7 @@ export async function buildServer (ctx: ViteBuildContext) { 'process.client': false, 'process.static': false, // use `process.client` instead. `process.browser` is deprecated - 'process.browser': false, - 'typeof window': '"undefined"', - 'typeof document': '"undefined"', - 'typeof navigator': '"undefined"', - 'typeof location': '"undefined"', - 'typeof XMLHttpRequest': '"undefined"' + 'process.browser': false }, cacheDir: resolve(ctx.nuxt.options.rootDir, 'node_modules/.cache/vite/server'), resolve: { @@ -101,7 +97,14 @@ export async function buildServer (ctx: ViteBuildContext) { }, plugins: [ jsxPlugin(), - vuePlugin + vuePlugin, + replace({ + 'typeof window': '"undefined"', + 'typeof document': '"undefined"', + 'typeof navigator': '"undefined"', + 'typeof location': '"undefined"', + 'typeof XMLHttpRequest': '"undefined"' + }) ] } as ViteOptions) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 46c55014..5f34fcc8 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -69,6 +69,9 @@ importers: '@nuxt/ui-templates': specifier: ^1.3.1 version: 1.3.1 + '@rollup/plugin-replace': + specifier: ^5.0.5 + version: 5.0.5(rollup@3.29.4) '@unhead/ssr': specifier: ^1.8.4 version: 1.8.4 @@ -4633,8 +4636,8 @@ packages: resolve: 1.22.2 rollup: 4.5.0 - /@rollup/plugin-replace@5.0.4(rollup@3.29.4): - resolution: {integrity: sha512-E2hmRnlh09K8HGT0rOnnri9OTh+BILGr7NVJGB30S4E3cLRn3J0xjdiyOZ74adPs4NiAMgrjUMGAZNJDBgsdmQ==} + /@rollup/plugin-replace@5.0.5(rollup@3.29.4): + resolution: {integrity: sha512-rYO4fOi8lMaTg/z5Jb+hKnrHHVn8j2lwkqwyS4kTRhKyWOLf2wST2sWXr4WzWiTcoHTp2sTjqUbqIj2E39slKQ==} engines: {node: '>=14.0.0'} peerDependencies: rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0 @@ -14104,7 +14107,7 @@ packages: '@rollup/plugin-commonjs': 25.0.7(rollup@3.29.4) '@rollup/plugin-json': 6.0.1(rollup@3.29.4) '@rollup/plugin-node-resolve': 15.2.3(rollup@3.29.4) - '@rollup/plugin-replace': 5.0.4(rollup@3.29.4) + '@rollup/plugin-replace': 5.0.5(rollup@3.29.4) '@rollup/pluginutils': 5.0.5(rollup@3.29.4) chalk: 5.3.0 citty: 0.1.4