Skip to content

Commit 0b1844e

Browse files
DamianGlowaladanielroe
andauthoredOct 19, 2022
feat!: update viewer dev middleware to be compatible with h3@0.8 (#545)
Co-authored-by: Daniel Roe <daniel@roe.dev>
1 parent 1766484 commit 0b1844e

File tree

3 files changed

+22
-6
lines changed

3 files changed

+22
-6
lines changed
 

‎package.json

+1
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@
3333
"clear-module": "^4.1.2",
3434
"consola": "^2.15.3",
3535
"defu": "^6.1.0",
36+
"h3": "^0.8.1",
3637
"postcss": "^8.4.16",
3738
"postcss-custom-properties": "^12.1.8",
3839
"postcss-nesting": "^10.1.10",

‎src/module.ts

+6-6
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ import {
1515
isNuxt3, findPath, requireModule
1616
} from '@nuxt/kit'
1717
import { Config } from 'tailwindcss'
18+
import { eventHandler, sendRedirect } from 'h3'
1819
import { name, version } from '../package.json'
1920
import vitePlugin from './hmr'
2021
import defaultTailwindConfig from './tailwind.config'
@@ -231,13 +232,12 @@ export default defineNuxtModule<ModuleOptions>({
231232
const { withTrailingSlash, withoutTrailingSlash } = await import('ufo')
232233
const routerPrefix = isNuxt3() ? route : undefined
233234
const _viewerDevMiddleware = createServer({ tailwindConfigProvider: () => tailwindConfig, routerPrefix }).asMiddleware()
234-
const viewerDevMiddleware = (req, res) => {
235-
if (req.originalUrl === withoutTrailingSlash(route)) {
236-
res.writeHead(301, { Location: withTrailingSlash(req.originalUrl) })
237-
return res.end()
235+
const viewerDevMiddleware = eventHandler((event) => {
236+
if (event.req.url === withoutTrailingSlash(route)) {
237+
return sendRedirect(event, withTrailingSlash(event.req.url), 301)
238238
}
239-
_viewerDevMiddleware(req, res)
240-
}
239+
_viewerDevMiddleware(event.req, event.res)
240+
})
241241
if (isNuxt3()) { addDevServerHandler({ route, handler: viewerDevMiddleware }) }
242242
if (isNuxt2()) { nuxt.options.serverMiddleware.push({ route, handler: viewerDevMiddleware }) }
243243
nuxt.hook('listen', (_, listener) => {

‎yarn.lock

+15
Original file line numberDiff line numberDiff line change
@@ -4203,6 +4203,16 @@ h3@^0.7.12, h3@^0.7.21:
42034203
radix3 "^0.1.2"
42044204
ufo "^0.8.5"
42054205

4206+
h3@^0.8.1:
4207+
version "0.8.1"
4208+
resolved "https://registry.yarnpkg.com/h3/-/h3-0.8.1.tgz#e9992f09dd1abcf2c190d4cd068febf9bddafd41"
4209+
integrity sha512-HWTShxx4RKpse3f2h5KOWTEAIZLKq9SHWaVBZkOhBH+fH8uRGYY1iNO7VDwImFwARtR/Pg+bVI8feXX9NIdQRQ==
4210+
dependencies:
4211+
cookie-es "^0.5.0"
4212+
destr "^1.1.1"
4213+
radix3 "^0.2.1"
4214+
ufo "^0.8.5"
4215+
42064216
handlebars@^4.7.7:
42074217
version "4.7.7"
42084218
resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.7.7.tgz#9ce33416aad02dbd6c8fafa8240d5d98004945a1"
@@ -7155,6 +7165,11 @@ radix3@^0.1.2:
71557165
resolved "https://registry.yarnpkg.com/radix3/-/radix3-0.1.2.tgz#5f7351af7fc5e4b1d9a1b14a7266b6a4a8cac0ba"
71567166
integrity sha512-Mpfd/OuX0zoJ6ojLD/RTOHvJPg6e6PjINtmYzV87kIXc5iUtDz34i7gg4SV4XjqRJTmSiYO/g9i/mKWGf4z8wg==
71577167

7168+
radix3@^0.2.1:
7169+
version "0.2.1"
7170+
resolved "https://registry.yarnpkg.com/radix3/-/radix3-0.2.1.tgz#77e66a41c7ba5600a8bc137fd259ef661d314418"
7171+
integrity sha512-FnhArTl5Tq7dodiLeSPKrDUyCQuJqEncP8cKdyy399g8F/cz7GH6FmzA3Rkosu2IZMkpswFFwXfb2ERSiL06pg==
7172+
71587173
randombytes@^2.1.0:
71597174
version "2.1.0"
71607175
resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a"

0 commit comments

Comments
 (0)
Please sign in to comment.