@prismicio/mock
Version:
Generate mock Prismic documents, fields, Slices, and models for development and testing environments
42 lines (41 loc) • 1.45 kB
JavaScript
;
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 sharedSlice = (config) => {
const faker = config.faker || createFaker.createFaker(config.seed);
let name = config.name || changeCase.capitalCase(faker.words(faker.range(1, 2)));
let id = config.id || changeCase.snakeCase(name);
if (config.id && !config.name) {
name = changeCase.pascalCase(config.id);
} else if (config.name && !config.name) {
id = changeCase.snakeCase(config.name);
}
return {
type: prismic__namespace.CustomTypeModelSliceType.SharedSlice,
id,
name,
description: changeCase.sentenceCase(faker.words(faker.range(5, 10))),
variations: config.variations || []
};
};
exports.sharedSlice = sharedSlice;
//# sourceMappingURL=sharedSlice.cjs.map