@prismicio/client
Version:
The official JavaScript + TypeScript client library for Prismic
78 lines (77 loc) • 1.78 kB
JavaScript
const isNonNullish = (input) => {
return input != null;
};
const isNonEmptyArray = (input) => {
return !!input.length;
};
const richText = (field) => {
if (!isNonNullish(field)) {
return false;
} else if (field.length === 1 && "text" in field[0]) {
return !!field[0].text;
} else {
return !!field.length;
}
};
const title = richText;
const imageThumbnail = (thumbnail) => {
return isNonNullish(thumbnail) && !!thumbnail.url;
};
const image = imageThumbnail;
const link = (field) => {
return isNonNullish(field) && ("id" in field || "url" in field);
};
const linkToMedia = link;
const contentRelationship = link;
const date = isNonNullish;
const timestamp = isNonNullish;
const color = isNonNullish;
const number = isNonNullish;
const keyText = (field) => {
return isNonNullish(keyText) && !!field;
};
const select = isNonNullish;
const embed = (field) => {
return isNonNullish(field) && !!field.embed_url;
};
const geoPoint = (field) => {
return isNonNullish(field) && "longitude" in field;
};
const table = isNonNullish;
const integration = isNonNullish;
const integrationField = integration;
const integrationFields = integration;
const repeatable = (repeatable2) => {
return isNonNullish(repeatable2) && isNonEmptyArray(repeatable2);
};
const group = (group2) => {
return isNonNullish(group2) && isNonEmptyArray(group2);
};
const sliceZone = (slices) => {
return isNonNullish(slices) && isNonEmptyArray(slices);
};
export {
color,
contentRelationship,
date,
embed,
geoPoint,
group,
image,
imageThumbnail,
integration,
integrationField,
integrationFields,
keyText,
link,
linkToMedia,
number,
repeatable,
richText,
select,
sliceZone,
table,
timestamp,
title
};
//# sourceMappingURL=isFilled.js.map