From 1effded2dc29c9b8988f141dfde4fbe7e4f411d8 Mon Sep 17 00:00:00 2001 From: Hiroshi Ogawa Date: Wed, 15 Nov 2023 18:07:17 +0900 Subject: [PATCH 1/3] fix(remix-dev/vite): support `nonce` prop for `LiveReload` component --- integration/vite-dev-test.ts | 5 ++++- packages/remix-dev/vite/plugin.ts | 3 ++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/integration/vite-dev-test.ts b/integration/vite-dev-test.ts index ebed5d87669..0edf0593afa 100644 --- a/integration/vite-dev-test.ts +++ b/integration/vite-dev-test.ts @@ -56,7 +56,7 @@ test.describe("Vite dev", () => { - + ); @@ -268,6 +268,9 @@ test.describe("Vite dev", () => { await expect(hmrStatus).toHaveText("HMR updated: yes"); await expect(input).toHaveValue("stateful"); + // check LiveReload script has nonce + await expect(page.locator(`script[nonce="1234"]`)).toBeAttached(); + // Ensure no errors after HMR expect(pageErrors).toEqual([]); }); diff --git a/packages/remix-dev/vite/plugin.ts b/packages/remix-dev/vite/plugin.ts index c9c76d350c1..4fd7f76dca6 100644 --- a/packages/remix-dev/vite/plugin.ts +++ b/packages/remix-dev/vite/plugin.ts @@ -850,7 +850,8 @@ export const remixVitePlugin: RemixVitePlugin = (options = {}) => { `export const LiveReload = ${ viteCommand !== "serve" } ? () => null : `, - '() => createElement("script", {', + '({ nonce = undefined }) => createElement("script", {', + " nonce,", " dangerouslySetInnerHTML: { ", " __html: `window.__remixLiveReloadEnabled = true`", " }", From 36ec0d4c52de3fb332ed6a0e02d2a86ae15bbe87 Mon Sep 17 00:00:00 2001 From: Hiroshi Ogawa Date: Wed, 15 Nov 2023 19:45:24 +0900 Subject: [PATCH 2/3] chore: changeset --- .changeset/famous-points-punch.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changeset/famous-points-punch.md diff --git a/.changeset/famous-points-punch.md b/.changeset/famous-points-punch.md new file mode 100644 index 00000000000..fe5ffa63daf --- /dev/null +++ b/.changeset/famous-points-punch.md @@ -0,0 +1,5 @@ +--- +"@remix-run/dev": patch +--- + +Fix LiveReload's nonce prop From 872eb8e191918d2efaac9e2bb0b05881ccab8ba5 Mon Sep 17 00:00:00 2001 From: Mark Dalgleish Date: Mon, 20 Nov 2023 11:19:27 +1100 Subject: [PATCH 3/3] edit changeset --- .changeset/famous-points-punch.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.changeset/famous-points-punch.md b/.changeset/famous-points-punch.md index fe5ffa63daf..c4912f2c448 100644 --- a/.changeset/famous-points-punch.md +++ b/.changeset/famous-points-punch.md @@ -2,4 +2,4 @@ "@remix-run/dev": patch --- -Fix LiveReload's nonce prop +Support `nonce` prop on `LiveReload` component in Vite dev