@prismicio/client
Version:
The official JavaScript + TypeScript client library for Prismic
25 lines (24 loc) • 1.41 kB
JavaScript
import { PrismicMigrationAsset } from "../types/migration/Asset.js";
import { PrismicMigrationDocument } from "../types/migration/Document.js";
import { LinkType } from "../types/value/link.js";
import { RichTextNodeType } from "../types/value/richText.js";
import { prismicDocument } from "./isValue.js";
const contentRelationship = (value) => {
return value instanceof PrismicMigrationDocument || prismicDocument(value) || typeof value === "object" && value !== null && "link_type" in value && value.link_type === LinkType.Document && "id" in value && (contentRelationship(value.id) || typeof value.id === "function");
};
const image = (value) => {
return value instanceof PrismicMigrationAsset || typeof value === "object" && value !== null && "id" in value && Object.values(value).every((maybeThumbnail) => maybeThumbnail instanceof PrismicMigrationAsset);
};
const linkToMedia = (value) => {
return typeof value === "object" && value !== null && "id" in value && value.id instanceof PrismicMigrationAsset && "link_type" in value && value.link_type === LinkType.Media;
};
const rtImageNode = (value) => {
return typeof value === "object" && value !== null && "id" in value && value.id instanceof PrismicMigrationAsset && "type" in value && value.type === RichTextNodeType.image;
};
export {
contentRelationship,
image,
linkToMedia,
rtImageNode
};
//# sourceMappingURL=isMigrationValue.js.map