@prismicio/mock
Version:
Generate mock Prismic documents, fields, Slices, and models for development and testing environments
40 lines (39 loc) • 1.7 kB
JavaScript
const require_runtime = require("../_virtual/_rolldown/runtime.cjs");
const require_changeCase = require("../lib/changeCase.cjs");
const require_createFaker = require("../lib/createFaker.cjs");
let _prismicio_client = require("@prismicio/client");
_prismicio_client = require_runtime.__toESM(_prismicio_client);
//#region src/model/richText.ts
const richText = (config) => {
const faker = config.faker || require_createFaker.createFaker(config.seed);
const blockTypes = faker.randomElements([
_prismicio_client.RichTextNodeType.heading1,
_prismicio_client.RichTextNodeType.heading2,
_prismicio_client.RichTextNodeType.heading3,
_prismicio_client.RichTextNodeType.heading4,
_prismicio_client.RichTextNodeType.heading5,
_prismicio_client.RichTextNodeType.heading6,
_prismicio_client.RichTextNodeType.paragraph,
_prismicio_client.RichTextNodeType.preformatted,
_prismicio_client.RichTextNodeType.strong,
_prismicio_client.RichTextNodeType.em,
_prismicio_client.RichTextNodeType.listItem,
_prismicio_client.RichTextNodeType.oListItem,
_prismicio_client.RichTextNodeType.image,
_prismicio_client.RichTextNodeType.embed,
_prismicio_client.RichTextNodeType.hyperlink
]).join(",");
const blockTypeConfig = config.withMultipleBlocks ?? faker.boolean() ? { multi: blockTypes } : { single: blockTypes };
return {
type: _prismicio_client.CustomTypeModelFieldType.StructuredText,
config: {
label: require_changeCase.capitalCase(faker.word()),
placeholder: require_changeCase.sentenceCase(faker.words(3)),
allowTargetBlank: faker.boolean() ? true : void 0,
...blockTypeConfig
}
};
};
//#endregion
exports.richText = richText;
//# sourceMappingURL=richText.cjs.map