@prismicio/mock
Version:
Generate mock Prismic documents, fields, Slices, and models for development and testing environments
26 lines (25 loc) • 974 B
JavaScript
import { capitalCase, pascalCase, sentenceCase, snakeCase } from "../lib/changeCase.js";
import { createFaker } from "../lib/createFaker.js";
import { getMockImageData } from "../lib/getMockImageData.js";
//#region src/model/sharedSliceVariation.ts
const sharedSliceVariation = (config) => {
const faker = config.faker || createFaker(config.seed);
let name = config.name || capitalCase(faker.words(faker.range(1, 2)));
let id = config.id || snakeCase(name);
if (config.id && !config.name) name = pascalCase(config.id);
else if (config.name && !config.id) id = snakeCase(config.name);
const imageData = getMockImageData({ faker });
return {
id,
name,
description: sentenceCase(faker.words(faker.range(5, 10))),
docURL: faker.url(),
version: faker.hash(7),
primary: config.primaryFields || {},
items: config.itemsFields || {},
imageUrl: imageData.url
};
};
//#endregion
export { sharedSliceVariation };
//# sourceMappingURL=sharedSliceVariation.js.map