@prismicio/mock
Version:
Generate mock Prismic documents, fields, Slices, and models for development and testing environments
27 lines (26 loc) • 992 B
JavaScript
import { sentenceCase, snakeCase } from "../lib/changeCase.js";
import { createFaker } from "../lib/createFaker.js";
import { link } from "../model/link.js";
import * as prismic from "@prismicio/client";
//#region src/value/linkToMedia.ts
const linkToMedia = (config) => {
const faker = config.faker || createFaker(config.seed);
if (config.state === "empty") return { link_type: prismic.LinkType.Media };
else {
const model = config.model || link({ faker });
return {
link_type: prismic.LinkType.Media,
id: faker.hash(11),
name: `${snakeCase(faker.words(faker.range(1, 2)))}.example`,
kind: snakeCase(faker.word()),
url: faker.url(),
size: faker.range(500, 3e3).toString(),
height: faker.range(500, 3e3).toString(),
width: faker.range(500, 3e3).toString(),
...config.withText ?? (model.config?.allowText && faker.boolean()) ? { text: sentenceCase(faker.words(2)) } : {}
};
}
};
//#endregion
export { linkToMedia };
//# sourceMappingURL=linkToMedia.js.map