UNPKG

gatsby-theme-advanced

Version:
22 lines (21 loc) 1 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const react_1 = __importDefault(require("react")); const gatsby_1 = require("gatsby"); const config_1 = require("../../config"); const Link = ({ to, href, className, children, activeClassName, noBasePath, ariaLabel, }) => { const config = (0, config_1.useConfig)(); const url = href || to; const isInternalUrl = /^\/(?!\/)/.test(url); // Append basePath when dealing with internal URLs const internalUrl = !noBasePath ? (0, config_1.withBasePath)(config, url) : url; return isInternalUrl ? (<gatsby_1.Link activeClassName={activeClassName} className={className} to={internalUrl} aria-label={ariaLabel}> {children} </gatsby_1.Link>) : (<a className={className} href={url} aria-label={ariaLabel}> {children} </a>); }; exports.default = Link;