UNPKG

preload-next

Version:

A Preload Link Component for Next.js to handle seamless page transitions

30 lines (29 loc) 991 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.linkClicked = void 0; var is_local_url_1 = require("next/dist/shared/lib/router/utils/is-local-url"); function isModifiedEvent(event) { var target = event.currentTarget.target; return ((target && target !== "_self") || event.metaKey || event.ctrlKey || event.shiftKey || event.altKey || (event.nativeEvent && event.nativeEvent.which === 2)); } function linkClicked(e, router, href, as, replace, shallow, scroll, locale) { var nodeName = e.currentTarget.nodeName; if (nodeName === "A" && (isModifiedEvent(e) || !(0, is_local_url_1.isLocalURL)(href))) { return; } e.preventDefault(); if (scroll == null && as.indexOf("#") >= 0) { scroll = false; } router[replace ? "replace" : "push"](href, as, { shallow: shallow, locale: locale, scroll: scroll, }); } exports.linkClicked = linkClicked;