UNPKG

nuxt

Version:

Nuxt is a free and open-source framework with an intuitive and extendable way to create type-safe, performant and production-grade full-stack web applications and websites with Vue.js.

17 lines (16 loc) 537 B
import { hasProtocol } from "ufo"; import { defineNuxtRouteMiddleware } from "../composables/router.js"; import { getRouteRules } from "../composables/manifest.js"; export default defineNuxtRouteMiddleware(async (to) => { if (import.meta.server || import.meta.test) { return; } const rules = await getRouteRules({ path: to.path }); if (rules.redirect) { if (hasProtocol(rules.redirect, { acceptRelative: true })) { window.location.href = rules.redirect; return false; } return rules.redirect; } });