UNPKG

@prismicio/mock

Version:

Generate mock Prismic documents, fields, Slices, and models for development and testing environments

42 lines (41 loc) 1.35 kB
import { sentenceCase } from "./changeCase.js"; import { createFaker } from "./createFaker.js"; const buildImageFieldImage = (config) => { var _a, _b; if (config.state === "empty") { return { id: null, url: null, dimensions: null, alt: null, copyright: null }; } else { const faker = config.faker || createFaker(config.seed); const url = new URL(config.imageData.url); const dimensions = { width: ((_a = config.constraint) == null ? void 0 : _a.width) ?? config.imageData.width, height: ((_b = config.constraint) == null ? void 0 : _b.height) ?? config.imageData.height }; url.searchParams.set("w", dimensions.width.toString()); url.searchParams.set("h", dimensions.height.toString()); url.searchParams.set("fit", "crop"); return { id: faker.hash(11), url: url.toString(), dimensions, alt: sentenceCase(faker.words(faker.range(5, 15))), copyright: sentenceCase(faker.words(faker.range(5, 15))), edit: { x: faker.range(-dimensions.width / 2, dimensions.width / 2), y: faker.range(-dimensions.width / 2, dimensions.height / 2), zoom: faker.rangeFloat(1, 2), background: faker.hexColor() } }; } }; export { buildImageFieldImage }; //# sourceMappingURL=buildImageFieldImage.js.map