UNPKG

@prismicio/mock

Version:

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

48 lines (47 loc) 1.7 kB
"use strict"; Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" }); const prismic = require("@prismicio/client"); const changeCase = require("../lib/changeCase.cjs"); const createFaker = require("../lib/createFaker.cjs"); const link = require("../model/link.cjs"); function _interopNamespaceDefault(e) { const n = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } }); if (e) { for (const k in e) { if (k !== "default") { const d = Object.getOwnPropertyDescriptor(e, k); Object.defineProperty(n, k, d.get ? d : { enumerable: true, get: () => e[k] }); } } } n.default = e; return Object.freeze(n); } const prismic__namespace = /* @__PURE__ */ _interopNamespaceDefault(prismic); const linkToMedia = (config) => { var _a; const faker = config.faker || createFaker.createFaker(config.seed); if (config.state === "empty") { return { link_type: prismic__namespace.LinkType.Media }; } else { const model = config.model || link.link({ faker }); return { link_type: prismic__namespace.LinkType.Media, id: faker.hash(11), name: `${changeCase.snakeCase(faker.words(faker.range(1, 2)))}.example`, kind: changeCase.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 ?? (((_a = model.config) == null ? void 0 : _a.allowText) && faker.boolean()) ? { text: changeCase.sentenceCase(faker.words(2)) } : {} }; } }; exports.linkToMedia = linkToMedia; //# sourceMappingURL=linkToMedia.cjs.map