UNPKG

@prismicio/mock

Version:

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

52 lines (51 loc) 1.49 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"); 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 patterns = { short: { minItems: 1, maxItems: 3 }, medium: { minItems: 3, maxItems: 6 }, long: { minItems: 6, maxItems: 12 } }; const list = (config) => { const faker = config.faker || createFaker.createFaker(config.seed); const patternKey = config.pattern || faker.randomElement(Object.keys(patterns)); const pattern = patterns[patternKey]; const itemsCount = faker.range(pattern.minItems, pattern.maxItems); return Array(itemsCount).fill(void 0).map(() => { return { type: prismic__namespace.RichTextNodeType.listItem, text: changeCase.sentenceCase(faker.words(faker.range(5, 15))), spans: [] }; }); }; exports.list = list; //# sourceMappingURL=list.cjs.map