@prismicio/client
Version:
The official JavaScript + TypeScript client library for Prismic
33 lines (31 loc) • 1.1 kB
JavaScript
import { LinkType } from "../types/value/link.js";
//#region src/helpers/documentToLinkField.ts
/**
* Converts a document into a link field, this is useful when crawling the API
* for document links
*
* @typeParam TDocument - Specific interface of the provided document
*
* @param prismicDocument - A document coming from Prismic
*
* @returns The equivalent link field to use with `asLink()`
*
* @internal
*/
const documentToLinkField = (prismicDocument) => {
var _prismicDocument$slug;
return {
link_type: LinkType.Document,
id: prismicDocument.id,
uid: prismicDocument.uid || void 0,
type: prismicDocument.type,
tags: prismicDocument.tags,
lang: prismicDocument.lang,
url: prismicDocument.url == null ? void 0 : prismicDocument.url,
slug: (_prismicDocument$slug = prismicDocument.slugs) === null || _prismicDocument$slug === void 0 ? void 0 : _prismicDocument$slug[0],
...prismicDocument.data && Object.keys(prismicDocument.data).length > 0 ? { data: prismicDocument.data } : {}
};
};
//#endregion
export { documentToLinkField };
//# sourceMappingURL=documentToLinkField.js.map