@prismicio/next
Version:
Helpers to integrate Prismic into Next.js apps
30 lines (29 loc) • 1.31 kB
JavaScript
const require_runtime = require("./_virtual/_rolldown/runtime.cjs");
const require_resolveDefaultExport = require("./lib/resolveDefaultExport.cjs");
let _prismicio_client = require("@prismicio/client");
let react = require("react");
let react_jsx_runtime = require("react/jsx-runtime");
let next_link_js = require("next/link.js");
next_link_js = require_runtime.__toESM(next_link_js);
//#region src/PrismicNextLink.tsx
const PrismicNextLink = (0, react.forwardRef)(function PrismicNextLink(props, ref) {
const { field, document, linkResolver, children, ...restProps } = props;
const { href: computedHref, rel: computedRel, ...attrs } = (0, _prismicio_client.asLinkAttrs)(field ?? document, {
linkResolver,
rel: typeof restProps.rel === "function" ? restProps.rel : void 0
});
const href = ("href" in restProps ? restProps.href : computedHref) || "";
let rel = computedRel;
if ("rel" in restProps && typeof restProps.rel !== "function") rel = restProps.rel;
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_resolveDefaultExport.resolveDefaultExport(next_link_js.default), {
ref,
...attrs,
...restProps,
href,
rel,
children: "children" in props ? children : field?.text
});
});
//#endregion
exports.PrismicNextLink = PrismicNextLink;
//# sourceMappingURL=PrismicNextLink.cjs.map