@prismicio/mock 0.0.6 → 0.0.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4 -1
- package/dist/api/index.cjs +242 -122
- package/dist/api/index.cjs.map +1 -0
- package/dist/api/index.d.ts +3 -2
- package/dist/api/index.d.ts.map +1 -0
- package/dist/api/index.js +669 -0
- package/dist/api/index.js.map +1 -0
- package/dist/index.cjs +581 -571
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.ts +155 -247
- package/dist/{index.mjs → index.js} +574 -561
- package/dist/index.js.map +1 -0
- package/dist/model/index.cjs +294 -257
- package/dist/model/index.cjs.map +1 -0
- package/dist/model/index.d.ts +72 -106
- package/dist/model/index.d.ts.map +1 -0
- package/dist/model/index.js +556 -0
- package/dist/model/index.js.map +1 -0
- package/dist/value/index.cjs +500 -647
- package/dist/value/index.cjs.map +1 -0
- package/dist/value/index.d.ts +71 -129
- package/dist/value/index.d.ts.map +1 -0
- package/dist/value/index.js +1461 -0
- package/dist/value/index.js.map +1 -0
- package/package.json +30 -27
- package/src/api/query.ts +2 -2
- package/src/api/ref.ts +3 -3
- package/src/api/repository.ts +5 -5
- package/src/lib/buildContentRelationshipField.ts +6 -1
- package/src/lib/buildEmbedField.ts +16 -27
- package/src/lib/buildImageFieldImage.ts +49 -0
- package/src/lib/createFaker.ts +98 -20
- package/src/lib/generateCustomTypeId.ts +1 -1
- package/src/lib/generateFieldId.ts +1 -3
- package/src/lib/generateTags.ts +4 -12
- package/src/lib/getMockEmbedData.ts +33 -12
- package/src/lib/getMockImageData.ts +1 -1
- package/src/lib/lorem.ts +112 -0
- package/src/model/boolean.ts +1 -1
- package/src/model/buildMockGroupFieldMap.ts +65 -0
- package/src/model/color.ts +2 -2
- package/src/model/contentRelationship.ts +16 -23
- package/src/model/customType.ts +49 -48
- package/src/model/date.ts +2 -2
- package/src/model/embed.ts +2 -2
- package/src/model/geoPoint.ts +1 -1
- package/src/model/group.ts +9 -16
- package/src/model/image.ts +16 -20
- package/src/model/index.ts +2 -0
- package/src/model/integrationFields.ts +5 -3
- package/src/model/keyText.ts +2 -2
- package/src/model/link.ts +3 -3
- package/src/model/linkToMedia.ts +2 -2
- package/src/model/number.ts +2 -2
- package/src/model/richText.ts +6 -6
- package/src/model/select.ts +13 -18
- package/src/model/sharedSlice.ts +15 -42
- package/src/model/sharedSliceVariation.ts +36 -24
- package/src/model/slice.ts +19 -23
- package/src/model/sliceZone.ts +23 -59
- package/src/model/timestamp.ts +2 -2
- package/src/model/title.ts +5 -5
- package/src/model/uid.ts +2 -2
- package/src/types.ts +130 -88
- package/src/value/boolean.ts +1 -1
- package/src/value/color.ts +16 -6
- package/src/value/contentRelationship.ts +54 -39
- package/src/value/customType.ts +5 -5
- package/src/value/date.ts +25 -9
- package/src/value/embed.ts +32 -7
- package/src/value/geoPoint.ts +21 -11
- package/src/value/group.ts +31 -45
- package/src/value/image.ts +22 -9
- package/src/value/integrationFields.ts +26 -14
- package/src/value/keyText.ts +16 -6
- package/src/value/link.ts +36 -37
- package/src/value/linkToMedia.ts +19 -23
- package/src/value/number.ts +16 -6
- package/src/value/richText/embed.ts +2 -2
- package/src/value/richText/heading.ts +10 -17
- package/src/value/richText/image.ts +8 -6
- package/src/value/richText/index.ts +4 -9
- package/src/value/richText/list.ts +4 -8
- package/src/value/richText/oList.ts +4 -8
- package/src/value/richText/paragraph.ts +8 -4
- package/src/value/richText/preformatted.ts +9 -5
- package/src/value/select.ts +23 -8
- package/src/value/sharedSlice.ts +3 -3
- package/src/value/sharedSliceVariation.ts +4 -36
- package/src/value/slice.ts +3 -32
- package/src/value/sliceZone.ts +54 -69
- package/src/value/timestamp.ts +42 -16
- package/src/value/title.ts +26 -13
- package/src/value/uid.ts +2 -2
- package/dist/api/index.mjs +0 -515
- package/dist/model/index.mjs +0 -465
- package/dist/value/index.mjs +0 -1554
- package/src/lib/buildImageField.ts +0 -34
- package/src/lib/buildMockGroupFieldMap.ts +0 -84
package/dist/model/index.cjs
CHANGED
|
@@ -4,63 +4,155 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
4
4
|
|
|
5
5
|
const prismicT = require('@prismicio/types');
|
|
6
6
|
const changeCase = require('change-case');
|
|
7
|
-
const
|
|
8
|
-
const Faker = require('faker/lib/index.js');
|
|
7
|
+
const Rand = require('rand-seed');
|
|
9
8
|
|
|
10
9
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
11
10
|
|
|
12
11
|
function _interopNamespace(e) {
|
|
13
12
|
if (e && e.__esModule) return e;
|
|
14
|
-
|
|
13
|
+
const n = Object.create(null);
|
|
15
14
|
if (e) {
|
|
16
|
-
|
|
15
|
+
for (const k in e) {
|
|
17
16
|
if (k !== 'default') {
|
|
18
|
-
|
|
17
|
+
const d = Object.getOwnPropertyDescriptor(e, k);
|
|
19
18
|
Object.defineProperty(n, k, d.get ? d : {
|
|
20
19
|
enumerable: true,
|
|
21
|
-
get: function () {
|
|
22
|
-
return e[k];
|
|
23
|
-
}
|
|
20
|
+
get: function () { return e[k]; }
|
|
24
21
|
});
|
|
25
22
|
}
|
|
26
|
-
}
|
|
23
|
+
}
|
|
27
24
|
}
|
|
28
|
-
n[
|
|
25
|
+
n["default"] = e;
|
|
29
26
|
return Object.freeze(n);
|
|
30
27
|
}
|
|
31
28
|
|
|
32
29
|
const prismicT__namespace = /*#__PURE__*/_interopNamespace(prismicT);
|
|
33
30
|
const changeCase__namespace = /*#__PURE__*/_interopNamespace(changeCase);
|
|
34
|
-
const
|
|
35
|
-
const Faker__default = /*#__PURE__*/_interopDefaultLegacy(Faker);
|
|
31
|
+
const Rand__default = /*#__PURE__*/_interopDefaultLegacy(Rand);
|
|
36
32
|
|
|
37
33
|
const FAKER_SEED = 1984;
|
|
38
34
|
|
|
35
|
+
const wordsString = "lorem ipsum dolor sit amet, consectetur adipiscing elit ut aliquam, purus sit amet luctus venenatis, lectus magna fringilla urna, porttitor rhoncus dolor purus non enim praesent elementum facilisis leo, vel fringilla est ullamcorper eget nulla facilisi etiam dignissim diam quis enim lobortis scelerisque fermentum dui faucibus in ornare quam viverra orci sagittis eu volutpat odio facilisis mauris sit amet massa vitae tortor condimentum lacinia quis vel eros donec ac odio tempor orci dapibus ultrices in iaculis nunc sed augue lacus, viverra vitae congue eu, consequat ac felis donec et odio pellentesque diam volutpat commodo sed egestas egestas fringilla phasellus faucibus scelerisque eleifend donec pretium vulputate sapien nec sagittis aliquam malesuada bibendum arcu vitae elementum curabitur vitae nunc sed velit dignissim sodales ut eu sem integer vitae justo eget magna fermentum iaculis eu non diam phasellus vestibulum lorem sed risus ultricies tristique nulla aliquet enim tortor, at auctor urna nunc id cursus metus aliquam eleifend mi in nulla posuere sollicitudin aliquam ultrices sagittis orci, a scelerisque purus semper eget duis at tellus at urna condimentum mattis pellentesque id nibh tortor, id aliquet lectus proin nibh nisl, condimentum id venenatis a, condimentum vitae sapien pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas sed tempus, urna et pharetra pharetra, massa massa ultricies mi, quis hendrerit dolor magna eget est lorem ipsum dolor sit amet, consectetur adipiscing elit pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas integer eget aliquet nibh praesent tristique magna sit amet purus gravida quis blandit turpis cursus in hac habitasse platea dictumst quisque sagittis, purus sit amet volutpat consequat, mauris nunc congue nisi, vitae suscipit tellus mauris a diam maecenas sed enim ut sem viverra aliquet eget sit amet tellus cras adipiscing enim eu turpis egestas pretium aenean pharetra, magna ac placerat vestibulum, lectus mauris ultrices eros, in cursus turpis massa tincidunt dui ut ornare lectus sit amet est placerat in egestas erat imperdiet sed euismod nisi porta lorem mollis aliquam ut porttitor leo a diam sollicitudin tempor id eu nisl nunc mi ipsum, faucibus vitae aliquet nec, ullamcorper sit amet risus nullam eget felis eget nunc lobortis mattis aliquam faucibus purus in massa tempor nec feugiat nisl pretium fusce id velit ut tortor pretium viverra suspendisse potenti nullam ac tortor vitae purus faucibus ornare suspendisse sed nisi lacus, sed viverra tellus in hac habitasse platea dictumst vestibulum rhoncus est pellentesque elit ullamcorper dignissim cras tincidunt lobortis feugiat vivamus at augue eget arcu dictum varius duis at consectetur lorem donec massa sapien, faucibus et molestie ac, feugiat sed lectus vestibulum mattis ullamcorper velit sed ullamcorper morbi tincidunt ornare massa, eget egestas purus viverra accumsan in nisl nisi, scelerisque eu ultrices vitae, auctor eu augue ut lectus arcu, bibendum at varius vel, pharetra vel turpis nunc eget lorem dolor, sed viverra ipsum nunc aliquet bibendum enim, facilisis gravida neque convallis a cras semper auctor neque, vitae tempus quam pellentesque nec nam aliquam sem et tortor consequat id porta nibh venenatis cras sed felis eget velit aliquet sagittis id consectetur purus ut faucibus pulvinar elementum integer enim neque, volutpat ac tincidunt vitae, semper quis lectus nulla at volutpat diam ut venenatis tellus in metus vulputate eu scelerisque felis imperdiet proin fermentum leo vel orci porta non pulvinar neque laoreet suspendisse interdum consectetur libero, id faucibus nisl tincidunt eget nullam non nisi est, sit amet facilisis magna etiam tempor, orci eu lobortis elementum, nibh tellus molestie nunc, non blandit massa enim nec dui nunc mattis enim ut tellus elementum sagittis vitae et leo duis ut diam quam nulla porttitor massa id neque aliquam vestibulum morbi blandit cursus risus, at ultrices mi tempus imperdiet nulla malesuada pellentesque elit eget gravida cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus mauris vitae ultricies leo integer malesuada nunc vel risus commodo viverra maecenas accumsan, lacus vel facilisis volutpat, est velit egestas dui, id ornare arcu odio ut sem nulla pharetra diam sit amet nisl suscipit adipiscing bibendum est ultricies integer quis auctor elit sed vulputate mi sit amet mauris commodo quis imperdiet massa tincidunt nunc pulvinar sapien et ligula ullamcorper malesuada proin libero nunc, consequat interdum varius sit amet, mattis vulputate enim nulla aliquet porttitor lacus, luctus accumsan tortor posuere ac ut consequat semper viverra nam libero justo, laoreet sit amet cursus sit amet, dictum sit amet justo donec enim diam, vulputate ut pharetra sit amet, aliquam id diam maecenas ultricies mi eget mauris pharetra et ultrices neque ornare aenean euismod elementum nisi, quis eleifend quam adipiscing vitae proin sagittis, nisl rhoncus mattis rhoncus, urna neque viverra justo, nec ultrices dui sapien eget mi proin sed libero enim, sed faucibus turpis in eu mi bibendum neque egestas congue quisque egestas diam in arcu cursus euismod quis viverra nibh cras pulvinar mattis nunc, sed blandit libero volutpat sed cras ornare arcu dui vivamus arcu felis, bibendum ut tristique et, egestas quis ipsum suspendisse ultrices gravida dictum fusce ut placerat orci nulla pellentesque dignissim enim, sit amet venenatis urna cursus eget nunc scelerisque viverra mauris, in aliquam sem fringilla ut morbi tincidunt augue interdum velit euismod in pellentesque massa placerat duis ultricies lacus sed turpis tincidunt id aliquet risus feugiat in ante metus, dictum at tempor commodo, ullamcorper a lacus vestibulum sed arcu non odio euismod lacinia at quis risus sed vulputate odio ut enim blandit volutpat maecenas volutpat blandit aliquam etiam erat velit, scelerisque in dictum non, consectetur a erat nam at lectus urna duis convallis convallis tellus, id interdum velit laoreet id donec ultrices tincidunt arcu, non sodales neque sodales ut etiam sit amet nisl purus, in mollis nunc sed id semper risus in hendrerit gravida rutrum quisque non tellus orci, ac auctor augue mauris augue neque, gravida in fermentum et, sollicitudin ac orci phasellus egestas tellus rutrum tellus pellentesque eu tincidunt tortor aliquam nulla facilisi cras fermentum, odio eu feugiat pretium, nibh ipsum consequat nisl, vel pretium lectus quam id leo in vitae turpis massa sed elementum tempus egestas sed sed risus pretium quam vulputate dignissim suspendisse in est ante in nibh mauris, cursus mattis molestie a, iaculis at erat pellentesque adipiscing commodo elit, at imperdiet dui accumsan sit amet nulla facilisi morbi tempus iaculis urna, id volutpat lacus laoreet non curabitur gravida arcu ac tortor dignissim convallis aenean et tortor at risus viverra adipiscing at in tellus integer feugiat scelerisque varius morbi enim nunc, faucibus a pellentesque sit amet, porttitor eget dolor morbi non arcu risus, quis varius quam quisque id diam vel quam elementum pulvinar etiam non quam lacus suspendisse faucibus interdum posuere lorem ipsum dolor sit amet, consectetur adipiscing elit duis tristique sollicitudin nibh sit amet commodo nulla facilisi nullam vehicula ipsum a arcu cursus vitae congue mauris rhoncus aenean vel elit scelerisque mauris pellentesque pulvinar pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas maecenas pharetra convallis posuere morbi leo urna, molestie at elementum eu, facilisis sed odio morbi quis commodo odio aenean sed adipiscing diam donec adipiscing tristique risus nec feugiat in fermentum posuere urna nec tincidunt praesent semper feugiat nibh sed pulvinar proin gravida hendrerit lectus a molestie";
|
|
36
|
+
const loremWords = wordsString.split(" ");
|
|
37
|
+
const lorem = (length, wordOffset = 0) => {
|
|
38
|
+
const count = parseInt(length.substring(0, length.length - 1));
|
|
39
|
+
const countType = length.charAt(length.length - 1);
|
|
40
|
+
if (!isNaN(count) && (countType === "w" || countType === "c")) {
|
|
41
|
+
if (!lorem.spaceIndices.length) {
|
|
42
|
+
let startIndex = -1;
|
|
43
|
+
do {
|
|
44
|
+
const index = wordsString.indexOf(" ", startIndex + 1);
|
|
45
|
+
lorem.spaceIndices.push(index);
|
|
46
|
+
startIndex = index;
|
|
47
|
+
} while (startIndex !== -1);
|
|
48
|
+
}
|
|
49
|
+
if (countType === "c") {
|
|
50
|
+
return wordsString.substring(0, count);
|
|
51
|
+
} else {
|
|
52
|
+
let sentence = "";
|
|
53
|
+
const startSpaceIndex = lorem.spaceIndices[wordOffset % lorem.spaceIndices.length - 1];
|
|
54
|
+
const endSpaceIndex = lorem.spaceIndices[(wordOffset % lorem.spaceIndices.length + count) % lorem.spaceIndices.length - 1];
|
|
55
|
+
if (count + wordOffset % lorem.spaceIndices.length > lorem.spaceIndices.length) {
|
|
56
|
+
sentence += wordsString.substring(startSpaceIndex + 1) + " ";
|
|
57
|
+
const wraparoundCounts = Math.floor(count / lorem.spaceIndices.length) - 1;
|
|
58
|
+
for (let i = 0; i < wraparoundCounts; i++) {
|
|
59
|
+
sentence += wordsString + " ";
|
|
60
|
+
}
|
|
61
|
+
sentence += wordsString.substring(0, endSpaceIndex);
|
|
62
|
+
} else {
|
|
63
|
+
sentence = wordsString.substring(startSpaceIndex + 1, endSpaceIndex);
|
|
64
|
+
}
|
|
65
|
+
if (sentence.charAt(sentence.length - 1) === ",") {
|
|
66
|
+
return sentence.substring(0, sentence.length - 1);
|
|
67
|
+
} else {
|
|
68
|
+
return sentence.substring(0, sentence.length);
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
throw new Error("Length must be of the form `${number}w` or `${number}c`");
|
|
73
|
+
};
|
|
74
|
+
lorem.spaceIndices = [];
|
|
75
|
+
|
|
39
76
|
const createFaker = (seed = FAKER_SEED) => {
|
|
40
|
-
|
|
41
|
-
if (
|
|
42
|
-
|
|
77
|
+
const normalizedSeed = seed.toString();
|
|
78
|
+
if (createFaker.cache[normalizedSeed]) {
|
|
79
|
+
return createFaker.cache[normalizedSeed];
|
|
43
80
|
} else {
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
const cacheKey = JSON.stringify(normalizedSeed);
|
|
47
|
-
if (createFaker.cache[cacheKey]) {
|
|
48
|
-
return createFaker.cache[cacheKey];
|
|
81
|
+
const faker = new Faker(normalizedSeed);
|
|
82
|
+
return createFaker.cache[normalizedSeed] = faker;
|
|
49
83
|
}
|
|
50
|
-
const fakerInstance = new Faker__default['default']();
|
|
51
|
-
fakerInstance.locales["en"] = fakerLocaleEN__namespace;
|
|
52
|
-
fakerInstance.seed(normalizedSeed);
|
|
53
|
-
createFaker.cache[cacheKey] = fakerInstance;
|
|
54
|
-
return fakerInstance;
|
|
55
84
|
};
|
|
56
85
|
createFaker.cache = {};
|
|
86
|
+
const DAY_MS = 1e3 * 60 * 60 * 24;
|
|
87
|
+
const YEAR_MS = DAY_MS * 365;
|
|
88
|
+
const YEAR_2022_MS = 52 * (YEAR_MS + DAY_MS / 4);
|
|
89
|
+
class Faker {
|
|
90
|
+
constructor(seed) {
|
|
91
|
+
this.rand = new Rand__default["default"](seed);
|
|
92
|
+
}
|
|
93
|
+
boolean() {
|
|
94
|
+
return this.random() >= 0.5;
|
|
95
|
+
}
|
|
96
|
+
random() {
|
|
97
|
+
return this.rand.next();
|
|
98
|
+
}
|
|
99
|
+
randomElement(elements) {
|
|
100
|
+
return elements[this.range(0, elements.length)];
|
|
101
|
+
}
|
|
102
|
+
randomElements(elements) {
|
|
103
|
+
return elements.filter(() => this.boolean());
|
|
104
|
+
}
|
|
105
|
+
range(min, max) {
|
|
106
|
+
return Math.floor(this.rangeFloat(Math.ceil(min), Math.floor(max)));
|
|
107
|
+
}
|
|
108
|
+
rangeFloat(min, max) {
|
|
109
|
+
return this.random() * (max - min) + min;
|
|
110
|
+
}
|
|
111
|
+
words(length, wordOffset = this.range(0, loremWords.length)) {
|
|
112
|
+
return lorem(`${length}w`, wordOffset);
|
|
113
|
+
}
|
|
114
|
+
word() {
|
|
115
|
+
return this.randomElement(loremWords);
|
|
116
|
+
}
|
|
117
|
+
lorem(length, wordOffset = this.range(0, loremWords.length)) {
|
|
118
|
+
return lorem(length, wordOffset);
|
|
119
|
+
}
|
|
120
|
+
url() {
|
|
121
|
+
return `https://${this.word()}.example`;
|
|
122
|
+
}
|
|
123
|
+
hexColor() {
|
|
124
|
+
return `#${this.hash(6)}`;
|
|
125
|
+
}
|
|
126
|
+
hash(length) {
|
|
127
|
+
let hash = "";
|
|
128
|
+
for (let i = 0; i < length; i++) {
|
|
129
|
+
const chars = this.boolean() ? "abcdef" : "0123456789";
|
|
130
|
+
hash += chars[this.range(0, chars.length)];
|
|
131
|
+
}
|
|
132
|
+
return hash;
|
|
133
|
+
}
|
|
134
|
+
date() {
|
|
135
|
+
return new Date(YEAR_2022_MS + this.range(-YEAR_MS * 3, YEAR_MS * 3));
|
|
136
|
+
}
|
|
137
|
+
dateAfter(date) {
|
|
138
|
+
const timestamp = date.getTime();
|
|
139
|
+
return new Date(this.range(timestamp, timestamp + YEAR_MS * 3));
|
|
140
|
+
}
|
|
141
|
+
dateBefore(date) {
|
|
142
|
+
const timestamp = date.getTime();
|
|
143
|
+
return new Date(this.range(timestamp - YEAR_MS * 3, timestamp));
|
|
144
|
+
}
|
|
145
|
+
dateBetween(min, max) {
|
|
146
|
+
return new Date(this.range(min.getTime(), max.getTime()));
|
|
147
|
+
}
|
|
148
|
+
}
|
|
57
149
|
|
|
58
150
|
const boolean = (config = {}) => {
|
|
59
151
|
const faker = createFaker(config.seed);
|
|
60
152
|
return {
|
|
61
153
|
type: prismicT__namespace.CustomTypeModelFieldType.Boolean,
|
|
62
154
|
config: {
|
|
63
|
-
label: changeCase__namespace.capitalCase(faker.
|
|
155
|
+
label: changeCase__namespace.capitalCase(faker.word())
|
|
64
156
|
}
|
|
65
157
|
};
|
|
66
158
|
};
|
|
@@ -70,38 +162,58 @@ const color = (config = {}) => {
|
|
|
70
162
|
return {
|
|
71
163
|
type: prismicT__namespace.CustomTypeModelFieldType.Color,
|
|
72
164
|
config: {
|
|
73
|
-
label: changeCase__namespace.capitalCase(faker.
|
|
74
|
-
placeholder: changeCase__namespace.sentenceCase(faker.
|
|
165
|
+
label: changeCase__namespace.capitalCase(faker.word()),
|
|
166
|
+
placeholder: changeCase__namespace.sentenceCase(faker.words(3))
|
|
75
167
|
}
|
|
76
168
|
};
|
|
77
169
|
};
|
|
78
170
|
|
|
79
|
-
const generateCustomTypeId = (config) => {
|
|
80
|
-
const faker = createFaker(config.seed);
|
|
81
|
-
return changeCase__namespace.snakeCase(faker.company.bsNoun());
|
|
82
|
-
};
|
|
83
|
-
|
|
84
171
|
const contentRelationship = (config = {}) => {
|
|
85
172
|
const faker = createFaker(config.seed);
|
|
86
173
|
return {
|
|
87
174
|
type: prismicT__namespace.CustomTypeModelFieldType.Link,
|
|
88
175
|
config: {
|
|
89
|
-
label: changeCase__namespace.capitalCase(faker.
|
|
90
|
-
placeholder: changeCase__namespace.sentenceCase(faker.
|
|
176
|
+
label: changeCase__namespace.capitalCase(faker.word()),
|
|
177
|
+
placeholder: changeCase__namespace.sentenceCase(faker.words(3)),
|
|
91
178
|
select: prismicT__namespace.CustomTypeModelLinkSelectType.Document,
|
|
92
|
-
customtypes: config.
|
|
93
|
-
tags: config.
|
|
179
|
+
customtypes: config.customTypeIDs,
|
|
180
|
+
tags: config.tags
|
|
94
181
|
}
|
|
95
182
|
};
|
|
96
183
|
};
|
|
97
184
|
|
|
185
|
+
const customType = (config = {}) => {
|
|
186
|
+
var _a, _b;
|
|
187
|
+
const faker = createFaker(config.seed);
|
|
188
|
+
let label = config.label || changeCase__namespace.capitalCase(faker.words(faker.range(1, 2)));
|
|
189
|
+
let id = config.id || changeCase__namespace.snakeCase(label);
|
|
190
|
+
if (config.id && !config.label) {
|
|
191
|
+
label = changeCase__namespace.capitalCase(config.id);
|
|
192
|
+
} else if (config.label && !config.label) {
|
|
193
|
+
id = changeCase__namespace.snakeCase(config.label);
|
|
194
|
+
}
|
|
195
|
+
let json = {};
|
|
196
|
+
if ("fields" in config && config.fields) {
|
|
197
|
+
json = { Main: config.fields };
|
|
198
|
+
} else if ("tabs" in config && config.tabs) {
|
|
199
|
+
json = config.tabs;
|
|
200
|
+
}
|
|
201
|
+
return {
|
|
202
|
+
id,
|
|
203
|
+
label,
|
|
204
|
+
status: (_a = config.status) != null ? _a : faker.boolean(),
|
|
205
|
+
repeatable: (_b = config.repeatable) != null ? _b : faker.boolean(),
|
|
206
|
+
json
|
|
207
|
+
};
|
|
208
|
+
};
|
|
209
|
+
|
|
98
210
|
const date = (config = {}) => {
|
|
99
211
|
const faker = createFaker(config.seed);
|
|
100
212
|
return {
|
|
101
213
|
type: prismicT__namespace.CustomTypeModelFieldType.Date,
|
|
102
214
|
config: {
|
|
103
|
-
label: changeCase__namespace.capitalCase(faker.
|
|
104
|
-
placeholder: changeCase__namespace.sentenceCase(faker.
|
|
215
|
+
label: changeCase__namespace.capitalCase(faker.word()),
|
|
216
|
+
placeholder: changeCase__namespace.sentenceCase(faker.words(3))
|
|
105
217
|
}
|
|
106
218
|
};
|
|
107
219
|
};
|
|
@@ -111,8 +223,8 @@ const embed = (config = {}) => {
|
|
|
111
223
|
return {
|
|
112
224
|
type: prismicT__namespace.CustomTypeModelFieldType.Embed,
|
|
113
225
|
config: {
|
|
114
|
-
label: changeCase__namespace.capitalCase(faker.
|
|
115
|
-
placeholder: changeCase__namespace.sentenceCase(faker.
|
|
226
|
+
label: changeCase__namespace.capitalCase(faker.word()),
|
|
227
|
+
placeholder: changeCase__namespace.sentenceCase(faker.words(3))
|
|
116
228
|
}
|
|
117
229
|
};
|
|
118
230
|
};
|
|
@@ -122,28 +234,40 @@ const geoPoint = (config = {}) => {
|
|
|
122
234
|
return {
|
|
123
235
|
type: prismicT__namespace.CustomTypeModelFieldType.GeoPoint,
|
|
124
236
|
config: {
|
|
125
|
-
label: changeCase__namespace.capitalCase(faker.
|
|
237
|
+
label: changeCase__namespace.capitalCase(faker.word())
|
|
238
|
+
}
|
|
239
|
+
};
|
|
240
|
+
};
|
|
241
|
+
|
|
242
|
+
const group = (config = {}) => {
|
|
243
|
+
const faker = createFaker(config.seed);
|
|
244
|
+
return {
|
|
245
|
+
type: prismicT__namespace.CustomTypeModelFieldType.Group,
|
|
246
|
+
config: {
|
|
247
|
+
label: changeCase__namespace.capitalCase(faker.word()),
|
|
248
|
+
fields: config.fields || {}
|
|
126
249
|
}
|
|
127
250
|
};
|
|
128
251
|
};
|
|
129
252
|
|
|
130
253
|
const image = (config = {}) => {
|
|
131
|
-
var _a;
|
|
132
254
|
const faker = createFaker(config.seed);
|
|
133
|
-
const
|
|
255
|
+
const thumbnails = (config.thumbnailNames || []).map((name) => {
|
|
256
|
+
return {
|
|
257
|
+
name,
|
|
258
|
+
width: faker.range(500, 2e3),
|
|
259
|
+
height: faker.range(500, 2e3)
|
|
260
|
+
};
|
|
261
|
+
});
|
|
134
262
|
return {
|
|
135
263
|
type: prismicT__namespace.CustomTypeModelFieldType.Image,
|
|
136
264
|
config: {
|
|
137
|
-
label: changeCase__namespace.capitalCase(faker.
|
|
265
|
+
label: changeCase__namespace.capitalCase(faker.word()),
|
|
138
266
|
constraint: {
|
|
139
|
-
width: config.withConstraint ? faker.
|
|
140
|
-
height: config.withConstraint ? faker.
|
|
267
|
+
width: config.withConstraint ? faker.range(500, 2e3) : null,
|
|
268
|
+
height: config.withConstraint ? faker.range(500, 2e3) : null
|
|
141
269
|
},
|
|
142
|
-
thumbnails
|
|
143
|
-
name: changeCase__namespace.pascalCase(faker.company.bsNoun()),
|
|
144
|
-
width: faker.datatype.number({ min: 500, max: 2e3 }),
|
|
145
|
-
height: faker.datatype.number({ min: 500, max: 2e3 })
|
|
146
|
-
}))
|
|
270
|
+
thumbnails
|
|
147
271
|
}
|
|
148
272
|
};
|
|
149
273
|
};
|
|
@@ -153,8 +277,8 @@ const integrationFields = (config = {}) => {
|
|
|
153
277
|
return {
|
|
154
278
|
type: prismicT__namespace.CustomTypeModelFieldType.IntegrationFields,
|
|
155
279
|
config: {
|
|
156
|
-
label: changeCase__namespace.capitalCase(faker.
|
|
157
|
-
catalog: changeCase__namespace.snakeCase(faker.
|
|
280
|
+
label: changeCase__namespace.capitalCase(faker.word()),
|
|
281
|
+
catalog: config.catalog || changeCase__namespace.snakeCase(faker.words(2))
|
|
158
282
|
}
|
|
159
283
|
};
|
|
160
284
|
};
|
|
@@ -164,8 +288,8 @@ const keyText = (config = {}) => {
|
|
|
164
288
|
return {
|
|
165
289
|
type: prismicT__namespace.CustomTypeModelFieldType.Text,
|
|
166
290
|
config: {
|
|
167
|
-
label: changeCase__namespace.capitalCase(faker.
|
|
168
|
-
placeholder: changeCase__namespace.sentenceCase(faker.
|
|
291
|
+
label: changeCase__namespace.capitalCase(faker.word()),
|
|
292
|
+
placeholder: changeCase__namespace.sentenceCase(faker.words(3))
|
|
169
293
|
}
|
|
170
294
|
};
|
|
171
295
|
};
|
|
@@ -175,10 +299,10 @@ const link = (config = {}) => {
|
|
|
175
299
|
return {
|
|
176
300
|
type: prismicT__namespace.CustomTypeModelFieldType.Link,
|
|
177
301
|
config: {
|
|
178
|
-
label: changeCase__namespace.capitalCase(faker.
|
|
179
|
-
placeholder: changeCase__namespace.sentenceCase(faker.
|
|
302
|
+
label: changeCase__namespace.capitalCase(faker.word()),
|
|
303
|
+
placeholder: changeCase__namespace.sentenceCase(faker.words(3)),
|
|
180
304
|
select: null,
|
|
181
|
-
allowTargetBlank: ("allowTargetBlank" in config ? config.allowTargetBlank : faker.
|
|
305
|
+
allowTargetBlank: ("allowTargetBlank" in config ? config.allowTargetBlank : faker.boolean()) || void 0
|
|
182
306
|
}
|
|
183
307
|
};
|
|
184
308
|
};
|
|
@@ -188,8 +312,8 @@ const linkToMedia = (config = {}) => {
|
|
|
188
312
|
return {
|
|
189
313
|
type: prismicT__namespace.CustomTypeModelFieldType.Link,
|
|
190
314
|
config: {
|
|
191
|
-
label: changeCase__namespace.capitalCase(faker.
|
|
192
|
-
placeholder: changeCase__namespace.sentenceCase(faker.
|
|
315
|
+
label: changeCase__namespace.capitalCase(faker.word()),
|
|
316
|
+
placeholder: changeCase__namespace.sentenceCase(faker.words(3)),
|
|
193
317
|
select: prismicT__namespace.CustomTypeModelLinkSelectType.Media
|
|
194
318
|
}
|
|
195
319
|
};
|
|
@@ -200,8 +324,8 @@ const number = (config = {}) => {
|
|
|
200
324
|
return {
|
|
201
325
|
type: prismicT__namespace.CustomTypeModelFieldType.Number,
|
|
202
326
|
config: {
|
|
203
|
-
label: changeCase__namespace.capitalCase(faker.
|
|
204
|
-
placeholder: changeCase__namespace.sentenceCase(faker.
|
|
327
|
+
label: changeCase__namespace.capitalCase(faker.word()),
|
|
328
|
+
placeholder: changeCase__namespace.sentenceCase(faker.words(3))
|
|
205
329
|
}
|
|
206
330
|
};
|
|
207
331
|
};
|
|
@@ -209,7 +333,7 @@ const number = (config = {}) => {
|
|
|
209
333
|
const richText = (config = {}) => {
|
|
210
334
|
var _a;
|
|
211
335
|
const faker = createFaker(config.seed);
|
|
212
|
-
const blockTypes = faker.
|
|
336
|
+
const blockTypes = faker.randomElements([
|
|
213
337
|
prismicT__namespace.RichTextNodeType.heading1,
|
|
214
338
|
prismicT__namespace.RichTextNodeType.heading2,
|
|
215
339
|
prismicT__namespace.RichTextNodeType.heading3,
|
|
@@ -226,168 +350,94 @@ const richText = (config = {}) => {
|
|
|
226
350
|
prismicT__namespace.RichTextNodeType.embed,
|
|
227
351
|
prismicT__namespace.RichTextNodeType.hyperlink
|
|
228
352
|
]).join(",");
|
|
229
|
-
const blockTypeConfig = ((_a = config.withMultipleBlocks) != null ? _a : faker.
|
|
353
|
+
const blockTypeConfig = ((_a = config.withMultipleBlocks) != null ? _a : faker.boolean()) ? { multi: blockTypes } : { single: blockTypes };
|
|
230
354
|
return {
|
|
231
355
|
type: prismicT__namespace.CustomTypeModelFieldType.StructuredText,
|
|
232
356
|
config: {
|
|
233
|
-
label: changeCase__namespace.capitalCase(faker.
|
|
234
|
-
placeholder: changeCase__namespace.sentenceCase(faker.
|
|
235
|
-
allowTargetBlank: faker.
|
|
357
|
+
label: changeCase__namespace.capitalCase(faker.word()),
|
|
358
|
+
placeholder: changeCase__namespace.sentenceCase(faker.words(3)),
|
|
359
|
+
allowTargetBlank: faker.boolean() ? true : void 0,
|
|
236
360
|
...blockTypeConfig
|
|
237
361
|
}
|
|
238
362
|
};
|
|
239
363
|
};
|
|
240
364
|
|
|
241
365
|
const select = (config = {}) => {
|
|
242
|
-
var _a;
|
|
243
366
|
const faker = createFaker(config.seed);
|
|
244
|
-
const optionsCount = (_a = config.optionsCount) != null ? _a : faker.datatype.number({ min: 1, max: 5 });
|
|
245
|
-
const options = Array(optionsCount).fill(void 0).map(() => changeCase__namespace.capitalCase(faker.company.bsBuzz()));
|
|
246
367
|
return {
|
|
247
368
|
type: prismicT__namespace.CustomTypeModelFieldType.Select,
|
|
248
369
|
config: {
|
|
249
|
-
label: changeCase__namespace.capitalCase(faker.
|
|
250
|
-
placeholder: changeCase__namespace.sentenceCase(faker.
|
|
251
|
-
options,
|
|
252
|
-
default_value: config.
|
|
370
|
+
label: changeCase__namespace.capitalCase(faker.word()),
|
|
371
|
+
placeholder: changeCase__namespace.sentenceCase(faker.words(3)),
|
|
372
|
+
options: config.options || [],
|
|
373
|
+
default_value: config.defaultValue || void 0
|
|
253
374
|
}
|
|
254
375
|
};
|
|
255
376
|
};
|
|
256
377
|
|
|
257
|
-
const
|
|
378
|
+
const sharedSlice = (config = {}) => {
|
|
258
379
|
const faker = createFaker(config.seed);
|
|
380
|
+
let name = config.name || changeCase__namespace.capitalCase(faker.words(faker.range(1, 2)));
|
|
381
|
+
let id = config.id || changeCase__namespace.snakeCase(name);
|
|
382
|
+
if (config.id && !config.name) {
|
|
383
|
+
name = changeCase__namespace.pascalCase(config.id);
|
|
384
|
+
} else if (config.name && !config.name) {
|
|
385
|
+
id = changeCase__namespace.snakeCase(config.name);
|
|
386
|
+
}
|
|
259
387
|
return {
|
|
260
|
-
type: prismicT__namespace.
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
388
|
+
type: prismicT__namespace.CustomTypeModelSliceType.SharedSlice,
|
|
389
|
+
id,
|
|
390
|
+
name,
|
|
391
|
+
description: changeCase__namespace.sentenceCase(faker.words(faker.range(5, 10))),
|
|
392
|
+
variations: config.variations || []
|
|
265
393
|
};
|
|
266
394
|
};
|
|
267
395
|
|
|
268
|
-
const
|
|
269
|
-
const faker = createFaker(config.seed);
|
|
270
|
-
const single = faker.random.arrayElements([
|
|
271
|
-
"heading1",
|
|
272
|
-
"heading2",
|
|
273
|
-
"heading3",
|
|
274
|
-
"heading4",
|
|
275
|
-
"heading5",
|
|
276
|
-
"heading6"
|
|
277
|
-
]).join(",");
|
|
396
|
+
const sharedSliceChoice = () => {
|
|
278
397
|
return {
|
|
279
|
-
type: prismicT__namespace.
|
|
280
|
-
config: {
|
|
281
|
-
label: changeCase__namespace.capitalCase(faker.company.bsNoun()),
|
|
282
|
-
placeholder: changeCase__namespace.sentenceCase(faker.lorem.words(3)),
|
|
283
|
-
single,
|
|
284
|
-
allowTargetBlank: faker.datatype.boolean() ? true : void 0
|
|
285
|
-
}
|
|
398
|
+
type: prismicT__namespace.CustomTypeModelSliceType.SharedSlice
|
|
286
399
|
};
|
|
287
400
|
};
|
|
288
401
|
|
|
289
|
-
const
|
|
290
|
-
const faker = createFaker(config.seed);
|
|
291
|
-
return changeCase__namespace.snakeCase(faker.lorem.words(faker.datatype.number({ min: 1, max: 3 })));
|
|
292
|
-
};
|
|
293
|
-
|
|
294
|
-
const mockModelFns = {
|
|
295
|
-
boolean,
|
|
296
|
-
color,
|
|
297
|
-
contentRelationship,
|
|
298
|
-
date,
|
|
299
|
-
embed,
|
|
300
|
-
geoPoint,
|
|
301
|
-
image,
|
|
302
|
-
integrationFields,
|
|
303
|
-
keyText,
|
|
304
|
-
link,
|
|
305
|
-
linkToMedia,
|
|
306
|
-
number,
|
|
307
|
-
richText,
|
|
308
|
-
select,
|
|
309
|
-
timestamp,
|
|
310
|
-
title
|
|
311
|
-
};
|
|
312
|
-
const buildMockGroupFieldMap = (config = {}) => {
|
|
313
|
-
var _a;
|
|
402
|
+
const sharedSliceVariation = (config = {}) => {
|
|
314
403
|
const faker = createFaker(config.seed);
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
for (let i = 0; i < count; i++) {
|
|
322
|
-
const fieldId = generateFieldId({ seed: config.seed });
|
|
323
|
-
fields[fieldId] = mockModelFn({
|
|
324
|
-
seed: config.seed,
|
|
325
|
-
...mockModelMapConfig.config
|
|
326
|
-
});
|
|
327
|
-
}
|
|
404
|
+
let name = config.name || changeCase__namespace.capitalCase(faker.words(faker.range(1, 2)));
|
|
405
|
+
let id = config.id || changeCase__namespace.snakeCase(name);
|
|
406
|
+
if (config.id && !config.name) {
|
|
407
|
+
name = changeCase__namespace.pascalCase(config.id);
|
|
408
|
+
} else if (config.name && !config.name) {
|
|
409
|
+
id = changeCase__namespace.snakeCase(config.name);
|
|
328
410
|
}
|
|
329
|
-
return fields;
|
|
330
|
-
};
|
|
331
|
-
|
|
332
|
-
const uid = (config = {}) => {
|
|
333
|
-
const faker = createFaker(config.seed);
|
|
334
411
|
return {
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
}
|
|
342
|
-
|
|
343
|
-
const sharedSliceChoice = () => {
|
|
344
|
-
return {
|
|
345
|
-
type: prismicT__namespace.CustomTypeModelSliceType.SharedSlice
|
|
412
|
+
id,
|
|
413
|
+
name,
|
|
414
|
+
description: changeCase__namespace.sentenceCase(faker.words(faker.range(5, 10))),
|
|
415
|
+
docURL: faker.url(),
|
|
416
|
+
version: faker.hash(7),
|
|
417
|
+
primary: config.primaryFields || {},
|
|
418
|
+
items: config.itemsFields || {}
|
|
346
419
|
};
|
|
347
420
|
};
|
|
348
421
|
|
|
349
422
|
const slice = (config = {}) => {
|
|
350
|
-
var _a, _b, _c, _d, _e, _f;
|
|
351
423
|
const faker = createFaker(config.seed);
|
|
352
424
|
return {
|
|
353
425
|
type: prismicT__namespace.CustomTypeModelSliceType.Slice,
|
|
354
|
-
icon: changeCase__namespace.snakeCase(faker.
|
|
355
|
-
display: faker.
|
|
356
|
-
fieldset: changeCase__namespace.capitalCase(faker.
|
|
357
|
-
description: faker.
|
|
358
|
-
repeat:
|
|
359
|
-
|
|
360
|
-
configs: (_c = config.repeatFieldConfig) == null ? void 0 : _c.configs
|
|
361
|
-
}),
|
|
362
|
-
"non-repeat": buildMockGroupFieldMap({
|
|
363
|
-
seed: (_e = (_d = config.nonRepeatFieldConfig) == null ? void 0 : _d.seed) != null ? _e : config.seed,
|
|
364
|
-
configs: (_f = config.nonRepeatFieldConfig) == null ? void 0 : _f.configs
|
|
365
|
-
})
|
|
426
|
+
icon: changeCase__namespace.snakeCase(faker.word()),
|
|
427
|
+
display: faker.boolean() ? prismicT__namespace.CustomTypeModelSliceDisplay.Grid : prismicT__namespace.CustomTypeModelSliceDisplay.List,
|
|
428
|
+
fieldset: changeCase__namespace.capitalCase(faker.words(2)),
|
|
429
|
+
description: changeCase__namespace.sentenceCase(faker.words(faker.range(5, 10))),
|
|
430
|
+
repeat: config.repeatFields || {},
|
|
431
|
+
"non-repeat": config.nonRepeatFields || {}
|
|
366
432
|
};
|
|
367
433
|
};
|
|
368
434
|
|
|
369
435
|
const sliceZone = (config = {}) => {
|
|
370
|
-
var _a;
|
|
371
|
-
const faker = createFaker(config.seed);
|
|
372
|
-
let choices = {};
|
|
373
|
-
if ("choices" in config) {
|
|
374
|
-
choices = config.choices || {};
|
|
375
|
-
} else {
|
|
376
|
-
const choicesCount = (_a = config.choicesCount) != null ? _a : faker.datatype.number({ min: 2, max: 6 });
|
|
377
|
-
for (let i = 0; i < choicesCount; i++) {
|
|
378
|
-
const choiceId = generateFieldId({ seed: config.seed });
|
|
379
|
-
choices[choiceId] = config.withSharedSlices ? sharedSliceChoice() : slice({ seed: config.seed });
|
|
380
|
-
}
|
|
381
|
-
}
|
|
382
436
|
const labels = {};
|
|
383
|
-
for (const choiceId in choices) {
|
|
384
|
-
const choice = choices[choiceId];
|
|
437
|
+
for (const choiceId in config.choices) {
|
|
438
|
+
const choice = config.choices[choiceId];
|
|
385
439
|
if (choice.type === prismicT__namespace.CustomTypeModelSliceType.Slice) {
|
|
386
|
-
|
|
387
|
-
labels[choiceId] = Array(labelsCount).fill(void 0).map(() => ({
|
|
388
|
-
name: changeCase__namespace.capitalCase(faker.company.bsNoun()),
|
|
389
|
-
display: faker.datatype.boolean() ? prismicT__namespace.CustomTypeModelSliceDisplay.Grid : prismicT__namespace.CustomTypeModelSliceDisplay.List
|
|
390
|
-
}));
|
|
440
|
+
labels[choiceId] = [];
|
|
391
441
|
}
|
|
392
442
|
}
|
|
393
443
|
return {
|
|
@@ -395,105 +445,91 @@ const sliceZone = (config = {}) => {
|
|
|
395
445
|
fieldset: "Slice zone",
|
|
396
446
|
config: {
|
|
397
447
|
labels,
|
|
398
|
-
choices
|
|
448
|
+
choices: config.choices || {}
|
|
399
449
|
}
|
|
400
450
|
};
|
|
401
451
|
};
|
|
402
452
|
|
|
403
|
-
const
|
|
404
|
-
var _a;
|
|
453
|
+
const timestamp = (config = {}) => {
|
|
405
454
|
const faker = createFaker(config.seed);
|
|
406
|
-
const tabsCount = (_a = config.tabsCount) != null ? _a : faker.datatype.number({ min: 1, max: 3 });
|
|
407
|
-
const json = {};
|
|
408
|
-
for (let i = 0; i < tabsCount; i++) {
|
|
409
|
-
const tabName = changeCase__namespace.capitalCase(faker.lorem.word());
|
|
410
|
-
const tabFields = buildMockGroupFieldMap({
|
|
411
|
-
seed: config.seed,
|
|
412
|
-
configs: config.configs
|
|
413
|
-
});
|
|
414
|
-
if (i === 0 && config.withUID) {
|
|
415
|
-
const fieldId = generateFieldId({ seed: config.seed });
|
|
416
|
-
tabFields[fieldId] = uid();
|
|
417
|
-
}
|
|
418
|
-
if (config.withSliceZones) {
|
|
419
|
-
const sliceZoneId = generateFieldId({ seed: config.seed });
|
|
420
|
-
tabFields[sliceZoneId] = sliceZone({
|
|
421
|
-
withSharedSlices: config.withSharedSlices
|
|
422
|
-
});
|
|
423
|
-
}
|
|
424
|
-
json[tabName] = tabFields;
|
|
425
|
-
}
|
|
426
|
-
const id = generateCustomTypeId({ seed: config.seed });
|
|
427
455
|
return {
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
456
|
+
type: prismicT__namespace.CustomTypeModelFieldType.Timestamp,
|
|
457
|
+
config: {
|
|
458
|
+
label: changeCase__namespace.capitalCase(faker.word()),
|
|
459
|
+
placeholder: changeCase__namespace.sentenceCase(faker.words(3))
|
|
460
|
+
}
|
|
433
461
|
};
|
|
434
462
|
};
|
|
435
463
|
|
|
436
|
-
const
|
|
464
|
+
const title = (config = {}) => {
|
|
437
465
|
const faker = createFaker(config.seed);
|
|
438
|
-
const
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
466
|
+
const single = faker.randomElements([
|
|
467
|
+
"heading1",
|
|
468
|
+
"heading2",
|
|
469
|
+
"heading3",
|
|
470
|
+
"heading4",
|
|
471
|
+
"heading5",
|
|
472
|
+
"heading6"
|
|
473
|
+
]).join(",");
|
|
442
474
|
return {
|
|
443
|
-
type: prismicT__namespace.CustomTypeModelFieldType.
|
|
475
|
+
type: prismicT__namespace.CustomTypeModelFieldType.StructuredText,
|
|
444
476
|
config: {
|
|
445
|
-
label: changeCase__namespace.capitalCase(faker.
|
|
446
|
-
|
|
477
|
+
label: changeCase__namespace.capitalCase(faker.word()),
|
|
478
|
+
placeholder: changeCase__namespace.sentenceCase(faker.words(3)),
|
|
479
|
+
single,
|
|
480
|
+
allowTargetBlank: faker.boolean() || void 0
|
|
447
481
|
}
|
|
448
482
|
};
|
|
449
483
|
};
|
|
450
484
|
|
|
451
|
-
const
|
|
452
|
-
var _a, _b, _c, _d, _e, _f;
|
|
485
|
+
const uid = (config = {}) => {
|
|
453
486
|
const faker = createFaker(config.seed);
|
|
454
|
-
const name = changeCase__namespace.capitalCase(faker.company.bsNoun());
|
|
455
487
|
return {
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
primary: buildMockGroupFieldMap({
|
|
462
|
-
seed: (_b = (_a = config.primaryFieldConfig) == null ? void 0 : _a.seed) != null ? _b : config.seed,
|
|
463
|
-
configs: (_c = config.primaryFieldConfig) == null ? void 0 : _c.configs
|
|
464
|
-
}),
|
|
465
|
-
items: buildMockGroupFieldMap({
|
|
466
|
-
seed: (_e = (_d = config.itemsFieldConfig) == null ? void 0 : _d.seed) != null ? _e : config.seed,
|
|
467
|
-
configs: (_f = config.itemsFieldConfig) == null ? void 0 : _f.configs
|
|
468
|
-
})
|
|
488
|
+
type: prismicT__namespace.CustomTypeModelFieldType.UID,
|
|
489
|
+
config: {
|
|
490
|
+
label: changeCase__namespace.capitalCase(faker.word()),
|
|
491
|
+
placeholder: changeCase__namespace.sentenceCase(faker.words(3))
|
|
492
|
+
}
|
|
469
493
|
};
|
|
470
494
|
};
|
|
471
495
|
|
|
472
|
-
const
|
|
473
|
-
var _a;
|
|
496
|
+
const generateFieldId = (config) => {
|
|
474
497
|
const faker = createFaker(config.seed);
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
498
|
+
return changeCase__namespace.snakeCase(faker.words(faker.range(1, 3)));
|
|
499
|
+
};
|
|
500
|
+
|
|
501
|
+
const mockModelFns = {
|
|
502
|
+
boolean,
|
|
503
|
+
color,
|
|
504
|
+
contentRelationship,
|
|
505
|
+
date,
|
|
506
|
+
embed,
|
|
507
|
+
geoPoint,
|
|
508
|
+
image,
|
|
509
|
+
integrationFields,
|
|
510
|
+
keyText,
|
|
511
|
+
link,
|
|
512
|
+
linkToMedia,
|
|
513
|
+
number,
|
|
514
|
+
richText,
|
|
515
|
+
select,
|
|
516
|
+
timestamp,
|
|
517
|
+
title
|
|
518
|
+
};
|
|
519
|
+
const buildMockGroupFieldMap = (config = {}) => {
|
|
520
|
+
const faker = createFaker(config.seed);
|
|
521
|
+
const fields = {};
|
|
522
|
+
const fieldTypes = faker.randomElements(Object.keys(mockModelFns));
|
|
523
|
+
for (const fieldType of fieldTypes) {
|
|
524
|
+
const fieldId = generateFieldId({ seed: config.seed });
|
|
525
|
+
const mockModelFn = mockModelFns[fieldType];
|
|
526
|
+
fields[fieldId] = mockModelFn({ seed: config.seed });
|
|
486
527
|
}
|
|
487
|
-
return
|
|
488
|
-
type: prismicT__namespace.CustomTypeModelSliceType.SharedSlice,
|
|
489
|
-
id: changeCase__namespace.snakeCase(name),
|
|
490
|
-
name,
|
|
491
|
-
description: faker.lorem.sentence(),
|
|
492
|
-
variations
|
|
493
|
-
};
|
|
528
|
+
return fields;
|
|
494
529
|
};
|
|
495
530
|
|
|
496
531
|
exports.boolean = boolean;
|
|
532
|
+
exports.buildMockGroupFieldMap = buildMockGroupFieldMap;
|
|
497
533
|
exports.color = color;
|
|
498
534
|
exports.contentRelationship = contentRelationship;
|
|
499
535
|
exports.customType = customType;
|
|
@@ -517,3 +553,4 @@ exports.sliceZone = sliceZone;
|
|
|
517
553
|
exports.timestamp = timestamp;
|
|
518
554
|
exports.title = title;
|
|
519
555
|
exports.uid = uid;
|
|
556
|
+
//# sourceMappingURL=index.cjs.map
|