UNPKG

one

Version:

One is a new React Framework that makes Vite serve both native and web.

37 lines (36 loc) 1.2 kB
import { appendBaseUrl } from "../fork/getPathFromState-mods.mjs"; import { stripGroupSegmentsFromPath } from "../router/matchers.mjs"; import { useOneRouter } from "../router/router.mjs"; function eventShouldPreventDefault(e) { if (e?.defaultPrevented) return false; if ("button" in e && !e.metaKey && !e.altKey && !e.ctrlKey && !e.shiftKey && (e.button == null || e.button === 0) && [void 0, null, "", "self"].includes(e.currentTarget.target)) return true; return false; } function useLinkTo(props) { const { linkTo } = useOneRouter(); const onPress = e => { const event = props.replace ? "REPLACE" : "PUSH"; let shouldHandle = false; if (!e) shouldHandle = e ? !e.defaultPrevented : true;else if (eventShouldPreventDefault(e)) { e.preventDefault(); shouldHandle = true; } if (shouldHandle) { const options = props.mask ? { mask: { href: props.mask } } : void 0; linkTo(props.href, event, options); } }; return { href: appendBaseUrl(stripGroupSegmentsFromPath(props.mask || props.href) || "/"), role: "link", onPress }; } export { useLinkTo }; //# sourceMappingURL=useLinkTo.mjs.map