@prismicio/mock 0.2.0 → 0.3.1
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 +1 -1
- package/dist/api/createAPIMockFactory.cjs.map +1 -1
- package/dist/api/createAPIMockFactory.d.ts +4 -4
- package/dist/api/createAPIMockFactory.js.map +1 -1
- package/dist/api/query.cjs.map +1 -1
- package/dist/api/query.d.ts +3 -3
- package/dist/api/query.js.map +1 -1
- package/dist/api/ref.cjs.map +1 -1
- package/dist/api/ref.d.ts +2 -2
- package/dist/api/ref.js.map +1 -1
- package/dist/api/repository.cjs.map +1 -1
- package/dist/api/repository.d.ts +3 -3
- package/dist/api/repository.js.map +1 -1
- package/dist/api/tags.cjs.map +1 -1
- package/dist/api/tags.d.ts +2 -2
- package/dist/api/tags.js.map +1 -1
- package/dist/lib/PRNG.cjs +11 -0
- package/dist/lib/PRNG.cjs.map +1 -1
- package/dist/lib/PRNG.js +11 -0
- package/dist/lib/PRNG.js.map +1 -1
- package/dist/lib/buildAlternativeLanguage.cjs.map +1 -1
- package/dist/lib/buildAlternativeLanguage.d.ts +3 -3
- package/dist/lib/buildAlternativeLanguage.js.map +1 -1
- package/dist/lib/buildContentRelationshipField.cjs +3 -3
- package/dist/lib/buildContentRelationshipField.cjs.map +1 -1
- package/dist/lib/buildContentRelationshipField.d.ts +3 -3
- package/dist/lib/buildContentRelationshipField.js +2 -2
- package/dist/lib/buildContentRelationshipField.js.map +1 -1
- package/dist/lib/buildEmbedField.cjs.map +1 -1
- package/dist/lib/buildEmbedField.d.ts +3 -3
- package/dist/lib/buildEmbedField.js.map +1 -1
- package/dist/lib/buildImageFieldImage.cjs.map +1 -1
- package/dist/lib/buildImageFieldImage.d.ts +4 -4
- package/dist/lib/buildImageFieldImage.js.map +1 -1
- package/dist/lib/createFaker.cjs.map +1 -1
- package/dist/lib/createFaker.js.map +1 -1
- package/dist/lib/lorem.cjs.map +1 -1
- package/dist/lib/lorem.js.map +1 -1
- package/dist/lib/valueForModel.cjs +23 -23
- package/dist/lib/valueForModel.cjs.map +1 -1
- package/dist/lib/valueForModel.d.ts +3 -3
- package/dist/lib/valueForModel.js +22 -22
- package/dist/lib/valueForModel.js.map +1 -1
- package/dist/lib/valueForModelMap.cjs +21 -21
- package/dist/lib/valueForModelMap.cjs.map +1 -1
- package/dist/lib/valueForModelMap.d.ts +5 -5
- package/dist/lib/valueForModelMap.js +20 -20
- package/dist/lib/valueForModelMap.js.map +1 -1
- package/dist/model/boolean.cjs +3 -3
- package/dist/model/boolean.cjs.map +1 -1
- package/dist/model/boolean.d.ts +2 -2
- package/dist/model/boolean.js +2 -2
- package/dist/model/boolean.js.map +1 -1
- package/dist/model/buildMockGroupFieldMap.cjs +2 -2
- package/dist/model/buildMockGroupFieldMap.cjs.map +1 -1
- package/dist/model/buildMockGroupFieldMap.js +2 -2
- package/dist/model/buildMockGroupFieldMap.js.map +1 -1
- package/dist/model/color.cjs +3 -3
- package/dist/model/color.cjs.map +1 -1
- package/dist/model/color.d.ts +2 -2
- package/dist/model/color.js +2 -2
- package/dist/model/color.js.map +1 -1
- package/dist/model/contentRelationship.cjs +4 -4
- package/dist/model/contentRelationship.cjs.map +1 -1
- package/dist/model/contentRelationship.d.ts +2 -2
- package/dist/model/contentRelationship.js +3 -3
- package/dist/model/contentRelationship.js.map +1 -1
- package/dist/model/createModelMockFactory.cjs +3 -3
- package/dist/model/createModelMockFactory.cjs.map +1 -1
- package/dist/model/createModelMockFactory.d.ts +25 -25
- package/dist/model/createModelMockFactory.js +3 -3
- package/dist/model/createModelMockFactory.js.map +1 -1
- package/dist/model/customType.cjs.map +1 -1
- package/dist/model/customType.d.ts +4 -4
- package/dist/model/customType.js.map +1 -1
- package/dist/model/date.cjs +3 -3
- package/dist/model/date.cjs.map +1 -1
- package/dist/model/date.d.ts +2 -2
- package/dist/model/date.js +2 -2
- package/dist/model/date.js.map +1 -1
- package/dist/model/embed.cjs +3 -3
- package/dist/model/embed.cjs.map +1 -1
- package/dist/model/embed.d.ts +2 -2
- package/dist/model/embed.js +2 -2
- package/dist/model/embed.js.map +1 -1
- package/dist/model/geoPoint.cjs +3 -3
- package/dist/model/geoPoint.cjs.map +1 -1
- package/dist/model/geoPoint.d.ts +2 -2
- package/dist/model/geoPoint.js +2 -2
- package/dist/model/geoPoint.js.map +1 -1
- package/dist/model/group.cjs +3 -3
- package/dist/model/group.cjs.map +1 -1
- package/dist/model/group.d.ts +2 -2
- package/dist/model/group.js +2 -2
- package/dist/model/group.js.map +1 -1
- package/dist/model/image.cjs +3 -3
- package/dist/model/image.cjs.map +1 -1
- package/dist/model/image.d.ts +2 -2
- package/dist/model/image.js +2 -2
- package/dist/model/image.js.map +1 -1
- package/dist/model/index.cjs +2 -2
- package/dist/model/index.d.ts +1 -1
- package/dist/model/index.js +2 -2
- package/dist/model/{integrationFields.cjs → integration.cjs} +6 -6
- package/dist/model/integration.cjs.map +1 -0
- package/dist/model/integration.d.ts +6 -0
- package/dist/model/{integrationFields.js → integration.js} +5 -5
- package/dist/model/integration.js.map +1 -0
- package/dist/model/keyText.cjs +3 -3
- package/dist/model/keyText.cjs.map +1 -1
- package/dist/model/keyText.d.ts +2 -2
- package/dist/model/keyText.js +2 -2
- package/dist/model/keyText.js.map +1 -1
- package/dist/model/link.cjs +3 -3
- package/dist/model/link.cjs.map +1 -1
- package/dist/model/link.d.ts +2 -2
- package/dist/model/link.js +2 -2
- package/dist/model/link.js.map +1 -1
- package/dist/model/linkToMedia.cjs +4 -4
- package/dist/model/linkToMedia.cjs.map +1 -1
- package/dist/model/linkToMedia.d.ts +2 -2
- package/dist/model/linkToMedia.js +3 -3
- package/dist/model/linkToMedia.js.map +1 -1
- package/dist/model/number.cjs +3 -3
- package/dist/model/number.cjs.map +1 -1
- package/dist/model/number.d.ts +2 -2
- package/dist/model/number.js +2 -2
- package/dist/model/number.js.map +1 -1
- package/dist/model/richText.cjs +18 -18
- package/dist/model/richText.cjs.map +1 -1
- package/dist/model/richText.d.ts +2 -2
- package/dist/model/richText.js +17 -17
- package/dist/model/richText.js.map +1 -1
- package/dist/model/select.cjs +3 -3
- package/dist/model/select.cjs.map +1 -1
- package/dist/model/select.d.ts +2 -2
- package/dist/model/select.js +2 -2
- package/dist/model/select.js.map +1 -1
- package/dist/model/sharedSlice.cjs +3 -3
- package/dist/model/sharedSlice.cjs.map +1 -1
- package/dist/model/sharedSlice.d.ts +3 -3
- package/dist/model/sharedSlice.js +2 -2
- package/dist/model/sharedSlice.js.map +1 -1
- package/dist/model/sharedSliceChoice.cjs +3 -3
- package/dist/model/sharedSliceChoice.cjs.map +1 -1
- package/dist/model/sharedSliceChoice.d.ts +2 -2
- package/dist/model/sharedSliceChoice.js +2 -2
- package/dist/model/sharedSliceChoice.js.map +1 -1
- package/dist/model/sharedSliceVariation.cjs.map +1 -1
- package/dist/model/sharedSliceVariation.d.ts +2 -2
- package/dist/model/sharedSliceVariation.js.map +1 -1
- package/dist/model/slice.cjs +4 -4
- package/dist/model/slice.cjs.map +1 -1
- package/dist/model/slice.d.ts +2 -2
- package/dist/model/slice.js +3 -3
- package/dist/model/slice.js.map +1 -1
- package/dist/model/sliceZone.cjs +4 -4
- package/dist/model/sliceZone.cjs.map +1 -1
- package/dist/model/sliceZone.d.ts +3 -3
- package/dist/model/sliceZone.js +3 -3
- package/dist/model/sliceZone.js.map +1 -1
- package/dist/model/timestamp.cjs +3 -3
- package/dist/model/timestamp.cjs.map +1 -1
- package/dist/model/timestamp.d.ts +2 -2
- package/dist/model/timestamp.js +2 -2
- package/dist/model/timestamp.js.map +1 -1
- package/dist/model/title.cjs +3 -3
- package/dist/model/title.cjs.map +1 -1
- package/dist/model/title.d.ts +2 -2
- package/dist/model/title.js +2 -2
- package/dist/model/title.js.map +1 -1
- package/dist/model/uid.cjs +3 -3
- package/dist/model/uid.cjs.map +1 -1
- package/dist/model/uid.d.ts +2 -2
- package/dist/model/uid.js +2 -2
- package/dist/model/uid.js.map +1 -1
- package/dist/types.d.ts +18 -18
- package/dist/value/boolean.cjs.map +1 -1
- package/dist/value/boolean.d.ts +3 -3
- package/dist/value/boolean.js.map +1 -1
- package/dist/value/color.cjs.map +1 -1
- package/dist/value/color.d.ts +4 -4
- package/dist/value/color.js.map +1 -1
- package/dist/value/contentRelationship.cjs +3 -3
- package/dist/value/contentRelationship.cjs.map +1 -1
- package/dist/value/contentRelationship.d.ts +5 -5
- package/dist/value/contentRelationship.js +2 -2
- package/dist/value/contentRelationship.js.map +1 -1
- package/dist/value/createValueMockFactory.cjs +3 -3
- package/dist/value/createValueMockFactory.cjs.map +1 -1
- package/dist/value/createValueMockFactory.d.ts +26 -26
- package/dist/value/createValueMockFactory.js +3 -3
- package/dist/value/createValueMockFactory.js.map +1 -1
- package/dist/value/customType.cjs +4 -4
- package/dist/value/customType.cjs.map +1 -1
- package/dist/value/customType.d.ts +4 -4
- package/dist/value/customType.js +3 -3
- package/dist/value/customType.js.map +1 -1
- package/dist/value/date.cjs.map +1 -1
- package/dist/value/date.d.ts +4 -4
- package/dist/value/date.js.map +1 -1
- package/dist/value/embed.cjs.map +1 -1
- package/dist/value/embed.d.ts +4 -4
- package/dist/value/embed.js.map +1 -1
- package/dist/value/geoPoint.cjs.map +1 -1
- package/dist/value/geoPoint.d.ts +4 -4
- package/dist/value/geoPoint.js.map +1 -1
- package/dist/value/group.cjs.map +1 -1
- package/dist/value/group.d.ts +4 -4
- package/dist/value/group.js.map +1 -1
- package/dist/value/image.cjs.map +1 -1
- package/dist/value/image.d.ts +4 -4
- package/dist/value/image.js.map +1 -1
- package/dist/value/index.cjs +4 -4
- package/dist/value/index.d.ts +2 -2
- package/dist/value/index.js +2 -2
- package/dist/value/{integrationFields.cjs → integration.cjs} +3 -3
- package/dist/value/integration.cjs.map +1 -0
- package/dist/value/integration.d.ts +7 -0
- package/dist/value/integration.js +8 -0
- package/dist/value/integration.js.map +1 -0
- package/dist/value/keyText.cjs.map +1 -1
- package/dist/value/keyText.d.ts +4 -4
- package/dist/value/keyText.js.map +1 -1
- package/dist/value/link.cjs +9 -9
- package/dist/value/link.cjs.map +1 -1
- package/dist/value/link.d.ts +5 -5
- package/dist/value/link.js +8 -8
- package/dist/value/link.js.map +1 -1
- package/dist/value/linkToMedia.cjs +4 -4
- package/dist/value/linkToMedia.cjs.map +1 -1
- package/dist/value/linkToMedia.d.ts +4 -4
- package/dist/value/linkToMedia.js +3 -3
- package/dist/value/linkToMedia.js.map +1 -1
- package/dist/value/number.cjs.map +1 -1
- package/dist/value/number.d.ts +4 -4
- package/dist/value/number.js.map +1 -1
- package/dist/value/richText/embed.cjs +3 -3
- package/dist/value/richText/embed.cjs.map +1 -1
- package/dist/value/richText/embed.d.ts +2 -2
- package/dist/value/richText/embed.js +2 -2
- package/dist/value/richText/embed.js.map +1 -1
- package/dist/value/richText/heading.cjs +8 -8
- package/dist/value/richText/heading.cjs.map +1 -1
- package/dist/value/richText/heading.d.ts +2 -2
- package/dist/value/richText/heading.js +7 -7
- package/dist/value/richText/heading.js.map +1 -1
- package/dist/value/richText/image.cjs +3 -3
- package/dist/value/richText/image.cjs.map +1 -1
- package/dist/value/richText/image.d.ts +2 -2
- package/dist/value/richText/image.js +2 -2
- package/dist/value/richText/image.js.map +1 -1
- package/dist/value/richText/index.cjs +14 -14
- package/dist/value/richText/index.cjs.map +1 -1
- package/dist/value/richText/index.d.ts +4 -4
- package/dist/value/richText/index.js +13 -13
- package/dist/value/richText/index.js.map +1 -1
- package/dist/value/richText/list.cjs +3 -3
- package/dist/value/richText/list.cjs.map +1 -1
- package/dist/value/richText/list.d.ts +2 -2
- package/dist/value/richText/list.js +2 -2
- package/dist/value/richText/list.js.map +1 -1
- package/dist/value/richText/oList.cjs +3 -3
- package/dist/value/richText/oList.cjs.map +1 -1
- package/dist/value/richText/oList.d.ts +2 -2
- package/dist/value/richText/oList.js +2 -2
- package/dist/value/richText/oList.js.map +1 -1
- package/dist/value/richText/paragraph.cjs +3 -3
- package/dist/value/richText/paragraph.cjs.map +1 -1
- package/dist/value/richText/paragraph.d.ts +2 -2
- package/dist/value/richText/paragraph.js +2 -2
- package/dist/value/richText/paragraph.js.map +1 -1
- package/dist/value/richText/preformatted.cjs +3 -3
- package/dist/value/richText/preformatted.cjs.map +1 -1
- package/dist/value/richText/preformatted.d.ts +2 -2
- package/dist/value/richText/preformatted.js +2 -2
- package/dist/value/richText/preformatted.js.map +1 -1
- package/dist/value/select.cjs.map +1 -1
- package/dist/value/select.d.ts +4 -4
- package/dist/value/select.js.map +1 -1
- package/dist/value/sharedSlice.cjs.map +1 -1
- package/dist/value/sharedSlice.d.ts +3 -3
- package/dist/value/sharedSlice.js.map +1 -1
- package/dist/value/sharedSliceVariation.cjs.map +1 -1
- package/dist/value/sharedSliceVariation.d.ts +3 -3
- package/dist/value/sharedSliceVariation.js.map +1 -1
- package/dist/value/slice.cjs.map +1 -1
- package/dist/value/slice.d.ts +3 -3
- package/dist/value/slice.js.map +1 -1
- package/dist/value/sliceZone.cjs +4 -4
- package/dist/value/sliceZone.cjs.map +1 -1
- package/dist/value/sliceZone.d.ts +4 -4
- package/dist/value/sliceZone.js +3 -3
- package/dist/value/sliceZone.js.map +1 -1
- package/dist/value/timestamp.cjs.map +1 -1
- package/dist/value/timestamp.d.ts +4 -4
- package/dist/value/timestamp.js.map +1 -1
- package/dist/value/title.cjs +1 -0
- package/dist/value/title.cjs.map +1 -1
- package/dist/value/title.d.ts +4 -4
- package/dist/value/title.js +1 -0
- package/dist/value/title.js.map +1 -1
- package/dist/value/uid.cjs.map +1 -1
- package/dist/value/uid.d.ts +3 -3
- package/dist/value/uid.js.map +1 -1
- package/package.json +20 -15
- package/src/api/createAPIMockFactory.ts +2 -2
- package/src/api/query.ts +4 -4
- package/src/api/ref.ts +3 -3
- package/src/api/repository.ts +4 -4
- package/src/api/tags.ts +2 -2
- package/src/lib/buildAlternativeLanguage.ts +4 -4
- package/src/lib/buildContentRelationshipField.ts +5 -5
- package/src/lib/buildEmbedField.ts +19 -20
- package/src/lib/buildImageFieldImage.ts +7 -7
- package/src/lib/valueForModel.ts +27 -27
- package/src/lib/valueForModelMap.ts +26 -26
- package/src/model/boolean.ts +3 -3
- package/src/model/buildMockGroupFieldMap.ts +2 -2
- package/src/model/color.ts +3 -3
- package/src/model/contentRelationship.ts +4 -4
- package/src/model/createModelMockFactory.ts +8 -13
- package/src/model/customType.ts +13 -13
- package/src/model/date.ts +3 -3
- package/src/model/embed.ts +3 -3
- package/src/model/geoPoint.ts +3 -3
- package/src/model/group.ts +3 -3
- package/src/model/image.ts +3 -3
- package/src/model/index.ts +1 -1
- package/src/model/{integrationFields.ts → integration.ts} +6 -6
- package/src/model/keyText.ts +3 -3
- package/src/model/link.ts +3 -3
- package/src/model/linkToMedia.ts +4 -4
- package/src/model/number.ts +3 -3
- package/src/model/richText.ts +21 -21
- package/src/model/select.ts +3 -3
- package/src/model/sharedSlice.ts +5 -5
- package/src/model/sharedSliceChoice.ts +3 -3
- package/src/model/sharedSliceVariation.ts +2 -2
- package/src/model/slice.ts +5 -5
- package/src/model/sliceZone.ts +8 -8
- package/src/model/timestamp.ts +3 -3
- package/src/model/title.ts +3 -3
- package/src/model/uid.ts +3 -3
- package/src/types.ts +101 -101
- package/src/value/boolean.ts +4 -4
- package/src/value/color.ts +7 -7
- package/src/value/contentRelationship.ts +12 -12
- package/src/value/createValueMockFactory.ts +47 -50
- package/src/value/customType.ts +10 -10
- package/src/value/date.ts +7 -7
- package/src/value/embed.ts +10 -10
- package/src/value/geoPoint.ts +7 -7
- package/src/value/group.ts +7 -7
- package/src/value/image.ts +8 -8
- package/src/value/index.ts +2 -2
- package/src/value/integration.ts +32 -0
- package/src/value/keyText.ts +7 -7
- package/src/value/link.ts +25 -25
- package/src/value/linkToMedia.ts +9 -9
- package/src/value/number.ts +7 -7
- package/src/value/richText/embed.ts +3 -3
- package/src/value/richText/heading.ts +19 -19
- package/src/value/richText/image.ts +3 -3
- package/src/value/richText/index.ts +23 -23
- package/src/value/richText/list.ts +3 -3
- package/src/value/richText/oList.ts +3 -3
- package/src/value/richText/paragraph.ts +3 -3
- package/src/value/richText/preformatted.ts +3 -3
- package/src/value/select.ts +8 -8
- package/src/value/sharedSlice.ts +3 -3
- package/src/value/sharedSliceVariation.ts +3 -3
- package/src/value/slice.ts +3 -3
- package/src/value/sliceZone.ts +8 -8
- package/src/value/timestamp.ts +7 -7
- package/src/value/title.ts +7 -7
- package/src/value/uid.ts +4 -4
- package/dist/model/integrationFields.cjs.map +0 -1
- package/dist/model/integrationFields.d.ts +0 -6
- package/dist/model/integrationFields.js.map +0 -1
- package/dist/value/integrationFields.cjs.map +0 -1
- package/dist/value/integrationFields.d.ts +0 -7
- package/dist/value/integrationFields.js +0 -8
- package/dist/value/integrationFields.js.map +0 -1
- package/src/value/integrationFields.ts +0 -32
package/dist/value/sliceZone.cjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const
|
|
3
|
+
const prismic = require("@prismicio/client");
|
|
4
4
|
const createFaker = require("../lib/createFaker.cjs");
|
|
5
5
|
const slice = require("./slice.cjs");
|
|
6
6
|
const sharedSlice = require("./sharedSlice.cjs");
|
|
@@ -21,7 +21,7 @@ function _interopNamespaceDefault(e) {
|
|
|
21
21
|
n.default = e;
|
|
22
22
|
return Object.freeze(n);
|
|
23
23
|
}
|
|
24
|
-
const
|
|
24
|
+
const prismic__namespace = /* @__PURE__ */ _interopNamespaceDefault(prismic);
|
|
25
25
|
const sliceZone = (config) => {
|
|
26
26
|
var _a;
|
|
27
27
|
if (config.state === "empty") {
|
|
@@ -38,7 +38,7 @@ const sliceZone = (config) => {
|
|
|
38
38
|
const choiceLabels = ((_c = (_b = model.config) == null ? void 0 : _b.labels) == null ? void 0 : _c[choiceType]) || [];
|
|
39
39
|
const choiceLabel = faker.randomElement(choiceLabels);
|
|
40
40
|
switch (choiceModel.type) {
|
|
41
|
-
case
|
|
41
|
+
case prismic__namespace.CustomTypeModelSliceType.Slice: {
|
|
42
42
|
return slice.slice({
|
|
43
43
|
faker,
|
|
44
44
|
model: choiceModel,
|
|
@@ -48,7 +48,7 @@ const sliceZone = (config) => {
|
|
|
48
48
|
itemsFieldConfigs: config.itemsFieldConfigs
|
|
49
49
|
});
|
|
50
50
|
}
|
|
51
|
-
case
|
|
51
|
+
case prismic__namespace.CustomTypeModelSliceType.SharedSlice: {
|
|
52
52
|
const sharedSliceModel = (_d = config.sharedSliceModels) == null ? void 0 : _d.find((sharedSliceModel2) => sharedSliceModel2.id === choiceType);
|
|
53
53
|
if (sharedSliceModel) {
|
|
54
54
|
return sharedSlice.sharedSlice({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sliceZone.cjs","sources":["../../../src/value/sliceZone.ts"],"sourcesContent":["import * as
|
|
1
|
+
{"version":3,"file":"sliceZone.cjs","sources":["../../../src/value/sliceZone.ts"],"sourcesContent":["import * as prismic from \"@prismicio/client\";\n\nimport { createFaker } from \"../lib/createFaker\";\nimport { ValueForModelMapConfigs } from \"../lib/valueForModelMap\";\n\nimport { MockValueConfig, MockValueStateConfig, ModelValue } from \"../types\";\n\nimport * as modelGen from \"../model\";\n\nimport { slice } from \"./slice\";\nimport { sharedSlice } from \"./sharedSlice\";\n\nexport type MockSliceZoneValueConfig<\n\tModel extends prismic.CustomTypeModelSliceZoneField = prismic.CustomTypeModelSliceZoneField,\n\tState extends prismic.FieldState = prismic.FieldState,\n> = {\n\tsharedSliceModels?: prismic.SharedSliceModel[];\n\titemsCount?: State extends \"empty\" ? 0 : number;\n\tprimaryFieldConfigs?: ValueForModelMapConfigs;\n\titemsFieldConfigs?: ValueForModelMapConfigs;\n} & MockValueConfig<Model> &\n\tMockValueStateConfig<State>;\n\nexport const sliceZone = <\n\tModel extends prismic.CustomTypeModelSliceZoneField = prismic.CustomTypeModelSliceZoneField,\n\tState extends prismic.FieldState = prismic.FieldState,\n>(\n\tconfig: MockSliceZoneValueConfig<Model, State>,\n): ModelValue<Model, State> => {\n\tif (config.state === \"empty\") {\n\t\treturn [] as ModelValue<Model, State>;\n\t} else {\n\t\tconst faker = config.faker || createFaker(config.seed);\n\n\t\tconst model = config.model || modelGen.sliceZone({ faker });\n\n\t\tif (model.config?.choices && Object.keys(model.config.choices).length > 0) {\n\t\t\tconst itemsCount = config.itemsCount ?? faker.range(1, 6);\n\n\t\t\treturn Array(itemsCount)\n\t\t\t\t.fill(undefined)\n\t\t\t\t.map(() => {\n\t\t\t\t\tconst choices =\n\t\t\t\t\t\t(model.config?.choices && Object.entries(model.config.choices)) ||\n\t\t\t\t\t\t[];\n\t\t\t\t\tconst [choiceType, choiceModel] = faker.randomElement(choices);\n\n\t\t\t\t\tconst choiceLabels = model.config?.labels?.[choiceType] || [];\n\t\t\t\t\tconst choiceLabel = faker.randomElement(choiceLabels);\n\n\t\t\t\t\tswitch (choiceModel.type) {\n\t\t\t\t\t\tcase prismic.CustomTypeModelSliceType.Slice: {\n\t\t\t\t\t\t\treturn slice({\n\t\t\t\t\t\t\t\tfaker,\n\t\t\t\t\t\t\t\tmodel: choiceModel,\n\t\t\t\t\t\t\t\ttype: choiceType,\n\t\t\t\t\t\t\t\tlabel: choiceLabel ? choiceLabel.name : null,\n\t\t\t\t\t\t\t\tprimaryFieldConfigs: config.primaryFieldConfigs,\n\t\t\t\t\t\t\t\titemsFieldConfigs: config.itemsFieldConfigs,\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tcase prismic.CustomTypeModelSliceType.SharedSlice: {\n\t\t\t\t\t\t\tconst sharedSliceModel = config.sharedSliceModels?.find(\n\t\t\t\t\t\t\t\t(sharedSliceModel) => sharedSliceModel.id === choiceType,\n\t\t\t\t\t\t\t);\n\n\t\t\t\t\t\t\tif (sharedSliceModel) {\n\t\t\t\t\t\t\t\treturn sharedSlice({\n\t\t\t\t\t\t\t\t\tfaker,\n\t\t\t\t\t\t\t\t\tmodel: sharedSliceModel,\n\t\t\t\t\t\t\t\t\tprimaryFieldConfigs: config.primaryFieldConfigs,\n\t\t\t\t\t\t\t\t\titemsFieldConfigs: config.itemsFieldConfigs,\n\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t\t.filter(\n\t\t\t\t\t(slice): slice is NonNullable<typeof slice> => slice !== undefined,\n\t\t\t\t) as ModelValue<Model, State>;\n\t\t} else {\n\t\t\treturn [] as unknown as ModelValue<Model, State>;\n\t\t}\n\t}\n};\n"],"names":["createFaker","modelGen.sliceZone","_a","prismic","slice","sharedSliceModel","sharedSlice"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAuBa,MAAA,YAAY,CAIxB,WAC6B;;AACzB,MAAA,OAAO,UAAU,SAAS;AAC7B,WAAO;SACD;AACN,UAAM,QAAQ,OAAO,SAASA,YAAAA,YAAY,OAAO,IAAI;AAErD,UAAM,QAAQ,OAAO,SAASC,YAAAA,UAAmB,EAAE,OAAO;AAEtD,UAAA,WAAM,WAAN,mBAAc,YAAW,OAAO,KAAK,MAAM,OAAO,OAAO,EAAE,SAAS,GAAG;AAC1E,YAAM,aAAa,OAAO,cAAc,MAAM,MAAM,GAAG,CAAC;AAExD,aAAO,MAAM,UAAU,EACrB,KAAK,MAAS,EACd,IAAI,MAAK;;AACH,cAAA,YACJC,MAAA,MAAM,WAAN,gBAAAA,IAAc,YAAW,OAAO,QAAQ,MAAM,OAAO,OAAO,KAC7D,CAAA;AACD,cAAM,CAAC,YAAY,WAAW,IAAI,MAAM,cAAc,OAAO;AAE7D,cAAM,iBAAe,iBAAM,WAAN,mBAAc,WAAd,mBAAuB,gBAAe;AACrD,cAAA,cAAc,MAAM,cAAc,YAAY;AAEpD,gBAAQ,YAAY,MAAM;AAAA,UACzB,KAAKC,mBAAQ,yBAAyB,OAAO;AAC5C,mBAAOC,YAAM;AAAA,cACZ;AAAA,cACA,OAAO;AAAA,cACP,MAAM;AAAA,cACN,OAAO,cAAc,YAAY,OAAO;AAAA,cACxC,qBAAqB,OAAO;AAAA,cAC5B,mBAAmB,OAAO;AAAA,YAAA,CAC1B;AAAA,UACD;AAAA,UAED,KAAKD,mBAAQ,yBAAyB,aAAa;AAC5C,kBAAA,oBAAmB,YAAO,sBAAP,mBAA0B,KAClD,CAACE,sBAAqBA,kBAAiB,OAAO;AAG/C,gBAAI,kBAAkB;AACrB,qBAAOC,wBAAY;AAAA,gBAClB;AAAA,gBACA,OAAO;AAAA,gBACP,qBAAqB,OAAO;AAAA,gBAC5B,mBAAmB,OAAO;AAAA,cAAA,CAC1B;AAAA,YACD;AAAA,UACD;AAAA,QACD;AAAA,MAAA,CACD,EACA,OACA,CAACF,WAA8CA,WAAU,MAAS;AAAA,IAAA,OAE9D;AACN,aAAO;IACP;AAAA,EACD;AACF;;"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import * as
|
|
1
|
+
import * as prismic from "@prismicio/client";
|
|
2
2
|
import { ValueForModelMapConfigs } from "../lib/valueForModelMap";
|
|
3
3
|
import { MockValueConfig, MockValueStateConfig, ModelValue } from "../types";
|
|
4
|
-
export type MockSliceZoneValueConfig<Model extends
|
|
5
|
-
sharedSliceModels?:
|
|
4
|
+
export type MockSliceZoneValueConfig<Model extends prismic.CustomTypeModelSliceZoneField = prismic.CustomTypeModelSliceZoneField, State extends prismic.FieldState = prismic.FieldState> = {
|
|
5
|
+
sharedSliceModels?: prismic.SharedSliceModel[];
|
|
6
6
|
itemsCount?: State extends "empty" ? 0 : number;
|
|
7
7
|
primaryFieldConfigs?: ValueForModelMapConfigs;
|
|
8
8
|
itemsFieldConfigs?: ValueForModelMapConfigs;
|
|
9
9
|
} & MockValueConfig<Model> & MockValueStateConfig<State>;
|
|
10
|
-
export declare const sliceZone: <Model extends
|
|
10
|
+
export declare const sliceZone: <Model extends prismic.CustomTypeModelSliceZoneField<Record<string, prismic.CustomTypeModelSlice<Record<string, prismic.CustomTypeModelFieldForGroup>, Record<string, prismic.CustomTypeModelFieldForGroup>> | prismic.CustomTypeModelSharedSlice | prismic.CustomTypeModelLegacySlice>> = prismic.CustomTypeModelSliceZoneField<Record<string, prismic.CustomTypeModelSlice<Record<string, prismic.CustomTypeModelFieldForGroup>, Record<string, prismic.CustomTypeModelFieldForGroup>> | prismic.CustomTypeModelSharedSlice | prismic.CustomTypeModelLegacySlice>>, State extends prismic.FieldState = prismic.FieldState>(config: MockSliceZoneValueConfig<Model, State>) => ModelValue<Model, State>;
|
package/dist/value/sliceZone.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import * as
|
|
1
|
+
import * as prismic from "@prismicio/client";
|
|
2
2
|
import { createFaker } from "../lib/createFaker.js";
|
|
3
3
|
import { slice } from "./slice.js";
|
|
4
4
|
import { sharedSlice } from "./sharedSlice.js";
|
|
@@ -19,7 +19,7 @@ const sliceZone = (config) => {
|
|
|
19
19
|
const choiceLabels = ((_c = (_b = model.config) == null ? void 0 : _b.labels) == null ? void 0 : _c[choiceType]) || [];
|
|
20
20
|
const choiceLabel = faker.randomElement(choiceLabels);
|
|
21
21
|
switch (choiceModel.type) {
|
|
22
|
-
case
|
|
22
|
+
case prismic.CustomTypeModelSliceType.Slice: {
|
|
23
23
|
return slice({
|
|
24
24
|
faker,
|
|
25
25
|
model: choiceModel,
|
|
@@ -29,7 +29,7 @@ const sliceZone = (config) => {
|
|
|
29
29
|
itemsFieldConfigs: config.itemsFieldConfigs
|
|
30
30
|
});
|
|
31
31
|
}
|
|
32
|
-
case
|
|
32
|
+
case prismic.CustomTypeModelSliceType.SharedSlice: {
|
|
33
33
|
const sharedSliceModel = (_d = config.sharedSliceModels) == null ? void 0 : _d.find((sharedSliceModel2) => sharedSliceModel2.id === choiceType);
|
|
34
34
|
if (sharedSliceModel) {
|
|
35
35
|
return sharedSlice({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sliceZone.js","sources":["../../../src/value/sliceZone.ts"],"sourcesContent":["import * as
|
|
1
|
+
{"version":3,"file":"sliceZone.js","sources":["../../../src/value/sliceZone.ts"],"sourcesContent":["import * as prismic from \"@prismicio/client\";\n\nimport { createFaker } from \"../lib/createFaker\";\nimport { ValueForModelMapConfigs } from \"../lib/valueForModelMap\";\n\nimport { MockValueConfig, MockValueStateConfig, ModelValue } from \"../types\";\n\nimport * as modelGen from \"../model\";\n\nimport { slice } from \"./slice\";\nimport { sharedSlice } from \"./sharedSlice\";\n\nexport type MockSliceZoneValueConfig<\n\tModel extends prismic.CustomTypeModelSliceZoneField = prismic.CustomTypeModelSliceZoneField,\n\tState extends prismic.FieldState = prismic.FieldState,\n> = {\n\tsharedSliceModels?: prismic.SharedSliceModel[];\n\titemsCount?: State extends \"empty\" ? 0 : number;\n\tprimaryFieldConfigs?: ValueForModelMapConfigs;\n\titemsFieldConfigs?: ValueForModelMapConfigs;\n} & MockValueConfig<Model> &\n\tMockValueStateConfig<State>;\n\nexport const sliceZone = <\n\tModel extends prismic.CustomTypeModelSliceZoneField = prismic.CustomTypeModelSliceZoneField,\n\tState extends prismic.FieldState = prismic.FieldState,\n>(\n\tconfig: MockSliceZoneValueConfig<Model, State>,\n): ModelValue<Model, State> => {\n\tif (config.state === \"empty\") {\n\t\treturn [] as ModelValue<Model, State>;\n\t} else {\n\t\tconst faker = config.faker || createFaker(config.seed);\n\n\t\tconst model = config.model || modelGen.sliceZone({ faker });\n\n\t\tif (model.config?.choices && Object.keys(model.config.choices).length > 0) {\n\t\t\tconst itemsCount = config.itemsCount ?? faker.range(1, 6);\n\n\t\t\treturn Array(itemsCount)\n\t\t\t\t.fill(undefined)\n\t\t\t\t.map(() => {\n\t\t\t\t\tconst choices =\n\t\t\t\t\t\t(model.config?.choices && Object.entries(model.config.choices)) ||\n\t\t\t\t\t\t[];\n\t\t\t\t\tconst [choiceType, choiceModel] = faker.randomElement(choices);\n\n\t\t\t\t\tconst choiceLabels = model.config?.labels?.[choiceType] || [];\n\t\t\t\t\tconst choiceLabel = faker.randomElement(choiceLabels);\n\n\t\t\t\t\tswitch (choiceModel.type) {\n\t\t\t\t\t\tcase prismic.CustomTypeModelSliceType.Slice: {\n\t\t\t\t\t\t\treturn slice({\n\t\t\t\t\t\t\t\tfaker,\n\t\t\t\t\t\t\t\tmodel: choiceModel,\n\t\t\t\t\t\t\t\ttype: choiceType,\n\t\t\t\t\t\t\t\tlabel: choiceLabel ? choiceLabel.name : null,\n\t\t\t\t\t\t\t\tprimaryFieldConfigs: config.primaryFieldConfigs,\n\t\t\t\t\t\t\t\titemsFieldConfigs: config.itemsFieldConfigs,\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tcase prismic.CustomTypeModelSliceType.SharedSlice: {\n\t\t\t\t\t\t\tconst sharedSliceModel = config.sharedSliceModels?.find(\n\t\t\t\t\t\t\t\t(sharedSliceModel) => sharedSliceModel.id === choiceType,\n\t\t\t\t\t\t\t);\n\n\t\t\t\t\t\t\tif (sharedSliceModel) {\n\t\t\t\t\t\t\t\treturn sharedSlice({\n\t\t\t\t\t\t\t\t\tfaker,\n\t\t\t\t\t\t\t\t\tmodel: sharedSliceModel,\n\t\t\t\t\t\t\t\t\tprimaryFieldConfigs: config.primaryFieldConfigs,\n\t\t\t\t\t\t\t\t\titemsFieldConfigs: config.itemsFieldConfigs,\n\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t\t.filter(\n\t\t\t\t\t(slice): slice is NonNullable<typeof slice> => slice !== undefined,\n\t\t\t\t) as ModelValue<Model, State>;\n\t\t} else {\n\t\t\treturn [] as unknown as ModelValue<Model, State>;\n\t\t}\n\t}\n};\n"],"names":["modelGen.sliceZone","_a","sharedSliceModel","slice"],"mappings":";;;;;AAuBa,MAAA,YAAY,CAIxB,WAC6B;;AACzB,MAAA,OAAO,UAAU,SAAS;AAC7B,WAAO;SACD;AACN,UAAM,QAAQ,OAAO,SAAS,YAAY,OAAO,IAAI;AAErD,UAAM,QAAQ,OAAO,SAASA,YAAmB,EAAE,OAAO;AAEtD,UAAA,WAAM,WAAN,mBAAc,YAAW,OAAO,KAAK,MAAM,OAAO,OAAO,EAAE,SAAS,GAAG;AAC1E,YAAM,aAAa,OAAO,cAAc,MAAM,MAAM,GAAG,CAAC;AAExD,aAAO,MAAM,UAAU,EACrB,KAAK,MAAS,EACd,IAAI,MAAK;;AACH,cAAA,YACJC,MAAA,MAAM,WAAN,gBAAAA,IAAc,YAAW,OAAO,QAAQ,MAAM,OAAO,OAAO,KAC7D,CAAA;AACD,cAAM,CAAC,YAAY,WAAW,IAAI,MAAM,cAAc,OAAO;AAE7D,cAAM,iBAAe,iBAAM,WAAN,mBAAc,WAAd,mBAAuB,gBAAe;AACrD,cAAA,cAAc,MAAM,cAAc,YAAY;AAEpD,gBAAQ,YAAY,MAAM;AAAA,UACzB,KAAK,QAAQ,yBAAyB,OAAO;AAC5C,mBAAO,MAAM;AAAA,cACZ;AAAA,cACA,OAAO;AAAA,cACP,MAAM;AAAA,cACN,OAAO,cAAc,YAAY,OAAO;AAAA,cACxC,qBAAqB,OAAO;AAAA,cAC5B,mBAAmB,OAAO;AAAA,YAAA,CAC1B;AAAA,UACD;AAAA,UAED,KAAK,QAAQ,yBAAyB,aAAa;AAC5C,kBAAA,oBAAmB,YAAO,sBAAP,mBAA0B,KAClD,CAACC,sBAAqBA,kBAAiB,OAAO;AAG/C,gBAAI,kBAAkB;AACrB,qBAAO,YAAY;AAAA,gBAClB;AAAA,gBACA,OAAO;AAAA,gBACP,qBAAqB,OAAO;AAAA,gBAC5B,mBAAmB,OAAO;AAAA,cAAA,CAC1B;AAAA,YACD;AAAA,UACD;AAAA,QACD;AAAA,MAAA,CACD,EACA,OACA,CAACC,WAA8CA,WAAU,MAAS;AAAA,IAAA,OAE9D;AACN,aAAO;IACP;AAAA,EACD;AACF;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"timestamp.cjs","sources":["../../../src/value/timestamp.ts"],"sourcesContent":["import * as
|
|
1
|
+
{"version":3,"file":"timestamp.cjs","sources":["../../../src/value/timestamp.ts"],"sourcesContent":["import * as prismic from \"@prismicio/client\";\n\nimport { createFaker } from \"../lib/createFaker\";\n\nimport { MockValueStateConfig, MockValueConfig } from \"../types\";\n\nexport type MockTimestampValueConfig<\n\tModel extends prismic.CustomTypeModelTimestampField = prismic.CustomTypeModelTimestampField,\n\tState extends prismic.FieldState = prismic.FieldState,\n> = {\n\tafter?: Date;\n\tbefore?: Date;\n} & MockValueConfig<Model> &\n\tMockValueStateConfig<State>;\n\nexport type MockTimestampValue<\n\tState extends prismic.FieldState = prismic.FieldState,\n> = prismic.TimestampField<State>;\n\nexport const timestamp = <\n\tModel extends prismic.CustomTypeModelTimestampField = prismic.CustomTypeModelTimestampField,\n\tState extends prismic.FieldState = \"filled\",\n>(\n\tconfig: MockTimestampValueConfig<Model, State>,\n): MockTimestampValue<State> => {\n\tconst faker = config.faker || createFaker(config.seed);\n\n\tif (config.state === \"empty\") {\n\t\treturn null as MockTimestampValue<State>;\n\t} else {\n\t\tlet date: Date;\n\n\t\t// Working with Date objects produces non-deterministic values;\n\t\t// machines can return different values due to differing\n\t\t// timezones and other unknown factors. To get around this, we\n\t\t// can can remove time from the given values and only use their dates.\n\t\tconst after = config.after\n\t\t\t? new Date(config.after.toISOString().split(\"T\")[0])\n\t\t\t: undefined;\n\t\tconst before = config.before\n\t\t\t? new Date(config.before.toISOString().split(\"T\")[0])\n\t\t\t: undefined;\n\n\t\tif (after && before) {\n\t\t\tdate = faker.dateBetween(after, before);\n\t\t} else if (after) {\n\t\t\tdate = faker.dateAfter(after);\n\t\t} else if (before) {\n\t\t\tdate = faker.dateBefore(before);\n\t\t} else {\n\t\t\tdate = faker.date();\n\t\t}\n\n\t\treturn date.toISOString() as MockTimestampValue<State>;\n\t}\n};\n"],"names":["createFaker"],"mappings":";;;AAmBa,MAAA,YAAY,CAIxB,WAC8B;AAC9B,QAAM,QAAQ,OAAO,SAASA,YAAAA,YAAY,OAAO,IAAI;AAEjD,MAAA,OAAO,UAAU,SAAS;AACtB,WAAA;AAAA,EAAA,OACD;AACF,QAAA;AAMJ,UAAM,QAAQ,OAAO,QAClB,IAAI,KAAK,OAAO,MAAM,YAAa,EAAC,MAAM,GAAG,EAAE,CAAC,CAAC,IACjD;AACH,UAAM,SAAS,OAAO,SACnB,IAAI,KAAK,OAAO,OAAO,YAAa,EAAC,MAAM,GAAG,EAAE,CAAC,CAAC,IAClD;AAEH,QAAI,SAAS,QAAQ;AACb,aAAA,MAAM,YAAY,OAAO,MAAM;AAAA,eAC5B,OAAO;AACV,aAAA,MAAM,UAAU,KAAK;AAAA,eAClB,QAAQ;AACX,aAAA,MAAM,WAAW,MAAM;AAAA,IAAA,OACxB;AACN,aAAO,MAAM;IACb;AAED,WAAO,KAAK;EACZ;AACF;;"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import * as
|
|
1
|
+
import * as prismic from "@prismicio/client";
|
|
2
2
|
import { MockValueStateConfig, MockValueConfig } from "../types";
|
|
3
|
-
export type MockTimestampValueConfig<Model extends
|
|
3
|
+
export type MockTimestampValueConfig<Model extends prismic.CustomTypeModelTimestampField = prismic.CustomTypeModelTimestampField, State extends prismic.FieldState = prismic.FieldState> = {
|
|
4
4
|
after?: Date;
|
|
5
5
|
before?: Date;
|
|
6
6
|
} & MockValueConfig<Model> & MockValueStateConfig<State>;
|
|
7
|
-
export type MockTimestampValue<State extends
|
|
8
|
-
export declare const timestamp: <Model extends
|
|
7
|
+
export type MockTimestampValue<State extends prismic.FieldState = prismic.FieldState> = prismic.TimestampField<State>;
|
|
8
|
+
export declare const timestamp: <Model extends prismic.CustomTypeModelTimestampField = prismic.CustomTypeModelTimestampField, State extends prismic.FieldState = "filled">(config: MockTimestampValueConfig<Model, State>) => prismic.TimestampField<State>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"timestamp.js","sources":["../../../src/value/timestamp.ts"],"sourcesContent":["import * as
|
|
1
|
+
{"version":3,"file":"timestamp.js","sources":["../../../src/value/timestamp.ts"],"sourcesContent":["import * as prismic from \"@prismicio/client\";\n\nimport { createFaker } from \"../lib/createFaker\";\n\nimport { MockValueStateConfig, MockValueConfig } from \"../types\";\n\nexport type MockTimestampValueConfig<\n\tModel extends prismic.CustomTypeModelTimestampField = prismic.CustomTypeModelTimestampField,\n\tState extends prismic.FieldState = prismic.FieldState,\n> = {\n\tafter?: Date;\n\tbefore?: Date;\n} & MockValueConfig<Model> &\n\tMockValueStateConfig<State>;\n\nexport type MockTimestampValue<\n\tState extends prismic.FieldState = prismic.FieldState,\n> = prismic.TimestampField<State>;\n\nexport const timestamp = <\n\tModel extends prismic.CustomTypeModelTimestampField = prismic.CustomTypeModelTimestampField,\n\tState extends prismic.FieldState = \"filled\",\n>(\n\tconfig: MockTimestampValueConfig<Model, State>,\n): MockTimestampValue<State> => {\n\tconst faker = config.faker || createFaker(config.seed);\n\n\tif (config.state === \"empty\") {\n\t\treturn null as MockTimestampValue<State>;\n\t} else {\n\t\tlet date: Date;\n\n\t\t// Working with Date objects produces non-deterministic values;\n\t\t// machines can return different values due to differing\n\t\t// timezones and other unknown factors. To get around this, we\n\t\t// can can remove time from the given values and only use their dates.\n\t\tconst after = config.after\n\t\t\t? new Date(config.after.toISOString().split(\"T\")[0])\n\t\t\t: undefined;\n\t\tconst before = config.before\n\t\t\t? new Date(config.before.toISOString().split(\"T\")[0])\n\t\t\t: undefined;\n\n\t\tif (after && before) {\n\t\t\tdate = faker.dateBetween(after, before);\n\t\t} else if (after) {\n\t\t\tdate = faker.dateAfter(after);\n\t\t} else if (before) {\n\t\t\tdate = faker.dateBefore(before);\n\t\t} else {\n\t\t\tdate = faker.date();\n\t\t}\n\n\t\treturn date.toISOString() as MockTimestampValue<State>;\n\t}\n};\n"],"names":[],"mappings":";AAmBa,MAAA,YAAY,CAIxB,WAC8B;AAC9B,QAAM,QAAQ,OAAO,SAAS,YAAY,OAAO,IAAI;AAEjD,MAAA,OAAO,UAAU,SAAS;AACtB,WAAA;AAAA,EAAA,OACD;AACF,QAAA;AAMJ,UAAM,QAAQ,OAAO,QAClB,IAAI,KAAK,OAAO,MAAM,YAAa,EAAC,MAAM,GAAG,EAAE,CAAC,CAAC,IACjD;AACH,UAAM,SAAS,OAAO,SACnB,IAAI,KAAK,OAAO,OAAO,YAAa,EAAC,MAAM,GAAG,EAAE,CAAC,CAAC,IAClD;AAEH,QAAI,SAAS,QAAQ;AACb,aAAA,MAAM,YAAY,OAAO,MAAM;AAAA,eAC5B,OAAO;AACV,aAAA,MAAM,UAAU,KAAK;AAAA,eAClB,QAAQ;AACX,aAAA,MAAM,WAAW,MAAM;AAAA,IAAA,OACxB;AACN,aAAO,MAAM;IACb;AAED,WAAO,KAAK;EACZ;AACF;"}
|
package/dist/value/title.cjs
CHANGED
package/dist/value/title.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"title.cjs","sources":["../../../src/value/title.ts"],"sourcesContent":["import * as
|
|
1
|
+
{"version":3,"file":"title.cjs","sources":["../../../src/value/title.ts"],"sourcesContent":["import * as prismic from \"@prismicio/client\";\n\nimport { createFaker } from \"../lib/createFaker\";\n\nimport { MockValueConfig, MockValueStateConfig } from \"../types\";\n\nimport { heading, MockRichTextHeadingValueConfig } from \"./richText/heading\";\n\nexport type MockTitleValueConfig<\n\tModel extends prismic.CustomTypeModelTitleField = prismic.CustomTypeModelTitleField,\n\tState extends prismic.FieldState = prismic.FieldState,\n> = {\n\tpattern?: MockRichTextHeadingValueConfig[\"pattern\"];\n} & MockValueConfig<Model> &\n\tMockValueStateConfig<State>;\n\nexport type MockTitleValue<\n\tState extends prismic.FieldState = prismic.FieldState,\n> = prismic.TitleField<State>;\n\nexport const title = <\n\tModel extends prismic.CustomTypeModelTitleField = prismic.CustomTypeModelTitleField,\n\tState extends prismic.FieldState = \"filled\",\n>(\n\tconfig: MockTitleValueConfig<Model, State>,\n): MockTitleValue<State> => {\n\tconst faker = config.faker || createFaker(config.seed);\n\n\tif (config.state === \"empty\") {\n\t\treturn [] as MockTitleValue<State>;\n\t} else {\n\t\treturn [\n\t\t\t// eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n\t\t\theading({\n\t\t\t\tfaker,\n\t\t\t\tmodel: config.model,\n\t\t\t\tpattern: config.pattern,\n\t\t\t})!,\n\t\t] as MockTitleValue<State>;\n\t}\n};\n"],"names":["createFaker","heading"],"mappings":";;;;AAoBa,MAAA,QAAQ,CAIpB,WAC0B;AAC1B,QAAM,QAAQ,OAAO,SAASA,YAAAA,YAAY,OAAO,IAAI;AAEjD,MAAA,OAAO,UAAU,SAAS;AAC7B,WAAO;SACD;AACC,WAAA;AAAA;AAAA,MAENC,gBAAQ;AAAA,QACP;AAAA,QACA,OAAO,OAAO;AAAA,QACd,SAAS,OAAO;AAAA,MAAA,CAChB;AAAA,IAAA;AAAA,EAEF;AACF;;"}
|
package/dist/value/title.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import * as
|
|
1
|
+
import * as prismic from "@prismicio/client";
|
|
2
2
|
import { MockValueConfig, MockValueStateConfig } from "../types";
|
|
3
3
|
import { MockRichTextHeadingValueConfig } from "./richText/heading";
|
|
4
|
-
export type MockTitleValueConfig<Model extends
|
|
4
|
+
export type MockTitleValueConfig<Model extends prismic.CustomTypeModelTitleField = prismic.CustomTypeModelTitleField, State extends prismic.FieldState = prismic.FieldState> = {
|
|
5
5
|
pattern?: MockRichTextHeadingValueConfig["pattern"];
|
|
6
6
|
} & MockValueConfig<Model> & MockValueStateConfig<State>;
|
|
7
|
-
export type MockTitleValue<State extends
|
|
8
|
-
export declare const title: <Model extends
|
|
7
|
+
export type MockTitleValue<State extends prismic.FieldState = prismic.FieldState> = prismic.TitleField<State>;
|
|
8
|
+
export declare const title: <Model extends prismic.CustomTypeModelRichTextSingleField = prismic.CustomTypeModelRichTextSingleField, State extends prismic.FieldState = "filled">(config: MockTitleValueConfig<Model, State>) => prismic.TitleField<State>;
|
package/dist/value/title.js
CHANGED
package/dist/value/title.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"title.js","sources":["../../../src/value/title.ts"],"sourcesContent":["import * as
|
|
1
|
+
{"version":3,"file":"title.js","sources":["../../../src/value/title.ts"],"sourcesContent":["import * as prismic from \"@prismicio/client\";\n\nimport { createFaker } from \"../lib/createFaker\";\n\nimport { MockValueConfig, MockValueStateConfig } from \"../types\";\n\nimport { heading, MockRichTextHeadingValueConfig } from \"./richText/heading\";\n\nexport type MockTitleValueConfig<\n\tModel extends prismic.CustomTypeModelTitleField = prismic.CustomTypeModelTitleField,\n\tState extends prismic.FieldState = prismic.FieldState,\n> = {\n\tpattern?: MockRichTextHeadingValueConfig[\"pattern\"];\n} & MockValueConfig<Model> &\n\tMockValueStateConfig<State>;\n\nexport type MockTitleValue<\n\tState extends prismic.FieldState = prismic.FieldState,\n> = prismic.TitleField<State>;\n\nexport const title = <\n\tModel extends prismic.CustomTypeModelTitleField = prismic.CustomTypeModelTitleField,\n\tState extends prismic.FieldState = \"filled\",\n>(\n\tconfig: MockTitleValueConfig<Model, State>,\n): MockTitleValue<State> => {\n\tconst faker = config.faker || createFaker(config.seed);\n\n\tif (config.state === \"empty\") {\n\t\treturn [] as MockTitleValue<State>;\n\t} else {\n\t\treturn [\n\t\t\t// eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n\t\t\theading({\n\t\t\t\tfaker,\n\t\t\t\tmodel: config.model,\n\t\t\t\tpattern: config.pattern,\n\t\t\t})!,\n\t\t] as MockTitleValue<State>;\n\t}\n};\n"],"names":[],"mappings":";;AAoBa,MAAA,QAAQ,CAIpB,WAC0B;AAC1B,QAAM,QAAQ,OAAO,SAAS,YAAY,OAAO,IAAI;AAEjD,MAAA,OAAO,UAAU,SAAS;AAC7B,WAAO;SACD;AACC,WAAA;AAAA;AAAA,MAEN,QAAQ;AAAA,QACP;AAAA,QACA,OAAO,OAAO;AAAA,QACd,SAAS,OAAO;AAAA,MAAA,CAChB;AAAA,IAAA;AAAA,EAEF;AACF;"}
|
package/dist/value/uid.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"uid.cjs","sources":["../../../src/value/uid.ts"],"sourcesContent":["import * as
|
|
1
|
+
{"version":3,"file":"uid.cjs","sources":["../../../src/value/uid.ts"],"sourcesContent":["import * as prismic from \"@prismicio/client\";\nimport * as changeCase from \"change-case\";\n\nimport { createFaker } from \"../lib/createFaker\";\n\nimport { MockValueConfig } from \"../types\";\n\nexport type MockUIDValueConfig<\n\tModel extends prismic.CustomTypeModelUIDField = prismic.CustomTypeModelUIDField,\n> = MockValueConfig<Model>;\n\nexport const uid = <\n\tModel extends prismic.CustomTypeModelUIDField = prismic.CustomTypeModelUIDField,\n>(\n\tconfig: MockUIDValueConfig<Model>,\n): NonNullable<prismic.PrismicDocument[\"uid\"]> => {\n\tconst faker = config.faker || createFaker(config.seed);\n\n\treturn changeCase.snakeCase(faker.words(faker.range(1, 3)));\n};\n"],"names":["createFaker","changeCase"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAWa,MAAA,MAAM,CAGlB,WACgD;AAChD,QAAM,QAAQ,OAAO,SAASA,YAAAA,YAAY,OAAO,IAAI;AAE9C,SAAAC,sBAAW,UAAU,MAAM,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,CAAC;AAC3D;;"}
|
package/dist/value/uid.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import * as
|
|
1
|
+
import * as prismic from "@prismicio/client";
|
|
2
2
|
import { MockValueConfig } from "../types";
|
|
3
|
-
export type MockUIDValueConfig<Model extends
|
|
4
|
-
export declare const uid: <Model extends
|
|
3
|
+
export type MockUIDValueConfig<Model extends prismic.CustomTypeModelUIDField = prismic.CustomTypeModelUIDField> = MockValueConfig<Model>;
|
|
4
|
+
export declare const uid: <Model extends prismic.CustomTypeModelUIDField = prismic.CustomTypeModelUIDField>(config: MockUIDValueConfig<Model>) => NonNullable<prismic.PrismicDocument["uid"]>;
|
package/dist/value/uid.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"uid.js","sources":["../../../src/value/uid.ts"],"sourcesContent":["import * as
|
|
1
|
+
{"version":3,"file":"uid.js","sources":["../../../src/value/uid.ts"],"sourcesContent":["import * as prismic from \"@prismicio/client\";\nimport * as changeCase from \"change-case\";\n\nimport { createFaker } from \"../lib/createFaker\";\n\nimport { MockValueConfig } from \"../types\";\n\nexport type MockUIDValueConfig<\n\tModel extends prismic.CustomTypeModelUIDField = prismic.CustomTypeModelUIDField,\n> = MockValueConfig<Model>;\n\nexport const uid = <\n\tModel extends prismic.CustomTypeModelUIDField = prismic.CustomTypeModelUIDField,\n>(\n\tconfig: MockUIDValueConfig<Model>,\n): NonNullable<prismic.PrismicDocument[\"uid\"]> => {\n\tconst faker = config.faker || createFaker(config.seed);\n\n\treturn changeCase.snakeCase(faker.words(faker.range(1, 3)));\n};\n"],"names":[],"mappings":";;AAWa,MAAA,MAAM,CAGlB,WACgD;AAChD,QAAM,QAAQ,OAAO,SAAS,YAAY,OAAO,IAAI;AAE9C,SAAA,WAAW,UAAU,MAAM,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,CAAC;AAC3D;"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@prismicio/mock",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.1",
|
|
4
4
|
"description": "Generate mock Prismic documents, fields, Slices, and models for development and testing environments",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"typescript",
|
|
@@ -53,32 +53,37 @@
|
|
|
53
53
|
"release:alpha:dry": "standard-version --release-as major --prerelease alpha --dry-run",
|
|
54
54
|
"release:dry": "standard-version --dry-run",
|
|
55
55
|
"size": "size-limit",
|
|
56
|
-
"test": "npm run lint && npm run unit && npm run build && npm run size",
|
|
56
|
+
"test": "npm run lint && npm run types && npm run unit && npm run build && npm run size",
|
|
57
|
+
"types": "tsc --noEmit",
|
|
57
58
|
"unit": "nyc --reporter=lcovonly --reporter=text --exclude-after-remap=false ava"
|
|
58
59
|
},
|
|
59
60
|
"dependencies": {
|
|
60
|
-
"@prismicio/types": "^0.2.4",
|
|
61
61
|
"change-case": "^4.1.2"
|
|
62
62
|
},
|
|
63
63
|
"devDependencies": {
|
|
64
|
-
"@
|
|
65
|
-
"@
|
|
66
|
-
"@
|
|
67
|
-
"
|
|
68
|
-
"
|
|
64
|
+
"@prismicio/client": "^7.0.1",
|
|
65
|
+
"@size-limit/preset-small-lib": "^8.2.4",
|
|
66
|
+
"@types/node": "^20.3.0",
|
|
67
|
+
"@typescript-eslint/eslint-plugin": "^5.59.8",
|
|
68
|
+
"@typescript-eslint/parser": "^5.59.8",
|
|
69
|
+
"ava": "^5.3.0",
|
|
70
|
+
"esbuild": "^0.17.19",
|
|
69
71
|
"esbuild-register": "^3.4.2",
|
|
70
|
-
"eslint": "^8.
|
|
71
|
-
"eslint-config-prettier": "^8.
|
|
72
|
+
"eslint": "^8.41.0",
|
|
73
|
+
"eslint-config-prettier": "^8.8.0",
|
|
72
74
|
"eslint-plugin-prettier": "^4.2.1",
|
|
73
75
|
"eslint-plugin-tsdoc": "^0.2.17",
|
|
74
76
|
"nyc": "^15.1.0",
|
|
75
|
-
"prettier": "^2.8.
|
|
77
|
+
"prettier": "^2.8.8",
|
|
76
78
|
"prettier-plugin-jsdoc": "^0.4.2",
|
|
77
|
-
"size-limit": "^8.
|
|
79
|
+
"size-limit": "^8.2.4",
|
|
78
80
|
"standard-version": "^9.5.0",
|
|
79
|
-
"typescript": "^
|
|
80
|
-
"vite": "^4.
|
|
81
|
-
"vite-plugin-sdk": "^0.1.
|
|
81
|
+
"typescript": "^5.0.4",
|
|
82
|
+
"vite": "^4.3.9",
|
|
83
|
+
"vite-plugin-sdk": "^0.1.1"
|
|
84
|
+
},
|
|
85
|
+
"peerDependencies": {
|
|
86
|
+
"@prismicio/client": "^7"
|
|
82
87
|
},
|
|
83
88
|
"engines": {
|
|
84
89
|
"node": ">=12.7.0"
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import * as
|
|
1
|
+
import * as prismic from "@prismicio/client";
|
|
2
2
|
|
|
3
3
|
import { createFaker, Faker } from "../lib/createFaker";
|
|
4
4
|
|
|
@@ -34,7 +34,7 @@ export class APIMockFactory {
|
|
|
34
34
|
return this.faker.seed;
|
|
35
35
|
}
|
|
36
36
|
|
|
37
|
-
query<Document extends
|
|
37
|
+
query<Document extends prismic.PrismicDocument = prismic.PrismicDocument>(
|
|
38
38
|
config?: WithoutFakerConfig<MockRestApiQueryConfig<Document>>,
|
|
39
39
|
) {
|
|
40
40
|
return query({ ...config, faker: this.faker });
|
package/src/api/query.ts
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import * as
|
|
1
|
+
import * as prismic from "@prismicio/client";
|
|
2
2
|
|
|
3
3
|
import { createFaker } from "../lib/createFaker";
|
|
4
4
|
|
|
5
5
|
import { MockRestApiConfig } from "../types";
|
|
6
6
|
|
|
7
7
|
export type MockRestApiQueryConfig<
|
|
8
|
-
Document extends
|
|
8
|
+
Document extends prismic.PrismicDocument = prismic.PrismicDocument,
|
|
9
9
|
> = {
|
|
10
10
|
documents?: Document[];
|
|
11
11
|
page?: number;
|
|
@@ -13,10 +13,10 @@ export type MockRestApiQueryConfig<
|
|
|
13
13
|
} & MockRestApiConfig;
|
|
14
14
|
|
|
15
15
|
export const query = <
|
|
16
|
-
Document extends
|
|
16
|
+
Document extends prismic.PrismicDocument = prismic.PrismicDocument,
|
|
17
17
|
>(
|
|
18
18
|
config: MockRestApiQueryConfig<Document>,
|
|
19
|
-
):
|
|
19
|
+
): prismic.Query<Document> => {
|
|
20
20
|
const faker = config.faker || createFaker(config.seed);
|
|
21
21
|
|
|
22
22
|
const documents = config.documents || [];
|
package/src/api/ref.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import * as
|
|
1
|
+
import * as prismic from "@prismicio/client";
|
|
2
2
|
import * as changeCase from "change-case";
|
|
3
3
|
|
|
4
4
|
import { createFaker } from "../lib/createFaker";
|
|
@@ -11,7 +11,7 @@ export type MockRestApiRefConfig<IsScheduled extends boolean = false> = {
|
|
|
11
11
|
} & MockRestApiConfig;
|
|
12
12
|
|
|
13
13
|
export type MockRestApiRefValue<IsScheduled extends boolean = false> = Omit<
|
|
14
|
-
|
|
14
|
+
prismic.Ref,
|
|
15
15
|
"scheduledAt"
|
|
16
16
|
> &
|
|
17
17
|
(IsScheduled extends true
|
|
@@ -23,7 +23,7 @@ export const ref = <IsScheduled extends boolean = false>(
|
|
|
23
23
|
): MockRestApiRefValue<IsScheduled> => {
|
|
24
24
|
const faker = config.faker || createFaker(config.seed);
|
|
25
25
|
|
|
26
|
-
const value:
|
|
26
|
+
const value: prismic.Ref = {
|
|
27
27
|
id: faker.hash(16),
|
|
28
28
|
ref: faker.hash(16),
|
|
29
29
|
isMasterRef: config.isMasterRef ?? false,
|
package/src/api/repository.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import * as
|
|
1
|
+
import * as prismic from "@prismicio/client";
|
|
2
2
|
import * as changeCase from "change-case";
|
|
3
3
|
|
|
4
4
|
import { createFaker } from "../lib/createFaker";
|
|
@@ -8,20 +8,20 @@ import { MockRestApiConfig } from "../types";
|
|
|
8
8
|
import { ref } from "./ref";
|
|
9
9
|
|
|
10
10
|
export type MockRestApiRepositoryConfig = {
|
|
11
|
-
customTypeModels?:
|
|
11
|
+
customTypeModels?: prismic.CustomTypeModel[];
|
|
12
12
|
withReleases?: boolean;
|
|
13
13
|
} & MockRestApiConfig;
|
|
14
14
|
|
|
15
15
|
export const repository = (
|
|
16
16
|
config: MockRestApiRepositoryConfig,
|
|
17
|
-
):
|
|
17
|
+
): prismic.Repository => {
|
|
18
18
|
const faker = config.faker || createFaker(config.seed);
|
|
19
19
|
|
|
20
20
|
const types = (config.customTypeModels || []).reduce((acc, model) => {
|
|
21
21
|
acc[model.id] = model.label || model.id;
|
|
22
22
|
|
|
23
23
|
return acc;
|
|
24
|
-
}, {} as
|
|
24
|
+
}, {} as prismic.Repository["types"]);
|
|
25
25
|
|
|
26
26
|
return {
|
|
27
27
|
refs: [
|
package/src/api/tags.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import * as
|
|
1
|
+
import * as prismic from "@prismicio/client";
|
|
2
2
|
|
|
3
3
|
import { createFaker } from "../lib/createFaker";
|
|
4
4
|
import { generateTags } from "../lib/generateTags";
|
|
@@ -7,7 +7,7 @@ import { MockRestApiConfig } from "../types";
|
|
|
7
7
|
|
|
8
8
|
export type MockRestApiTagsConfig = MockRestApiConfig;
|
|
9
9
|
|
|
10
|
-
export const tags = (config: MockRestApiTagsConfig):
|
|
10
|
+
export const tags = (config: MockRestApiTagsConfig): prismic.Tags => {
|
|
11
11
|
const faker = config.faker || createFaker(config.seed);
|
|
12
12
|
|
|
13
13
|
return generateTags({
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import * as
|
|
1
|
+
import * as prismic from "@prismicio/client";
|
|
2
2
|
|
|
3
|
-
type BuildEmbedFieldConfig<Document extends
|
|
3
|
+
type BuildEmbedFieldConfig<Document extends prismic.PrismicDocument> = {
|
|
4
4
|
document: Document;
|
|
5
5
|
};
|
|
6
6
|
|
|
7
7
|
export const buildAlternativeLanguage = <
|
|
8
|
-
Document extends
|
|
8
|
+
Document extends prismic.PrismicDocument,
|
|
9
9
|
>(
|
|
10
10
|
config: BuildEmbedFieldConfig<Document>,
|
|
11
|
-
):
|
|
11
|
+
): prismic.AlternateLanguage<Document["type"], Document["lang"]> => {
|
|
12
12
|
return {
|
|
13
13
|
id: config.document.id,
|
|
14
14
|
type: config.document.type,
|
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
import * as
|
|
1
|
+
import * as prismic from "@prismicio/client";
|
|
2
2
|
|
|
3
|
-
type BuildEmbedFieldConfig<Document extends
|
|
3
|
+
type BuildEmbedFieldConfig<Document extends prismic.PrismicDocument> = {
|
|
4
4
|
document: Document;
|
|
5
5
|
};
|
|
6
6
|
|
|
7
7
|
export const buildContentRelationshipField = <
|
|
8
|
-
Document extends
|
|
8
|
+
Document extends prismic.PrismicDocument,
|
|
9
9
|
>(
|
|
10
10
|
config: BuildEmbedFieldConfig<Document>,
|
|
11
|
-
):
|
|
11
|
+
): prismic.ContentRelationshipField<
|
|
12
12
|
Document["type"],
|
|
13
13
|
Document["lang"],
|
|
14
14
|
never,
|
|
15
15
|
"filled"
|
|
16
16
|
> => {
|
|
17
17
|
return {
|
|
18
|
-
link_type:
|
|
18
|
+
link_type: prismic.LinkType.Document,
|
|
19
19
|
id: config.document.id,
|
|
20
20
|
uid: config.document.uid || undefined,
|
|
21
21
|
type: config.document.type,
|
|
@@ -1,36 +1,35 @@
|
|
|
1
|
-
import * as
|
|
1
|
+
import * as prismic from "@prismicio/client";
|
|
2
2
|
|
|
3
3
|
import { createFaker, Faker } from "../lib/createFaker";
|
|
4
4
|
|
|
5
5
|
import { Seed } from "../types";
|
|
6
6
|
|
|
7
|
-
type BuildEmbedFieldConfig<
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
);
|
|
7
|
+
type BuildEmbedFieldConfig<Data extends prismic.AnyOEmbed = prismic.AnyOEmbed> =
|
|
8
|
+
{
|
|
9
|
+
url?: string;
|
|
10
|
+
html?: string;
|
|
11
|
+
data: Data;
|
|
12
|
+
} & (
|
|
13
|
+
| {
|
|
14
|
+
seed: Seed;
|
|
15
|
+
faker?: never;
|
|
16
|
+
}
|
|
17
|
+
| {
|
|
18
|
+
faker: Faker;
|
|
19
|
+
seed?: never;
|
|
20
|
+
}
|
|
21
|
+
);
|
|
23
22
|
|
|
24
23
|
export const buildEmbedField = <
|
|
25
|
-
Data extends
|
|
24
|
+
Data extends prismic.AnyOEmbed = prismic.AnyOEmbed,
|
|
26
25
|
>(
|
|
27
26
|
config: BuildEmbedFieldConfig<Data>,
|
|
28
|
-
):
|
|
27
|
+
): prismic.EmbedField<Data, "filled"> => {
|
|
29
28
|
const faker = config.faker || createFaker(config.seed);
|
|
30
29
|
|
|
31
30
|
return {
|
|
32
31
|
embed_url: config.url ?? faker.url(),
|
|
33
32
|
html: `<div>embed html</div>`,
|
|
34
33
|
...config.data,
|
|
35
|
-
} as
|
|
34
|
+
} as prismic.EmbedField<Data, "filled">;
|
|
36
35
|
};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import * as
|
|
1
|
+
import * as prismic from "@prismicio/client";
|
|
2
2
|
import * as changeCase from "change-case";
|
|
3
3
|
|
|
4
4
|
import { createFaker, Faker } from "../lib/createFaker";
|
|
@@ -6,11 +6,11 @@ import { createFaker, Faker } from "../lib/createFaker";
|
|
|
6
6
|
import { MockValueStateConfig, MockImageData, Seed } from "../types";
|
|
7
7
|
|
|
8
8
|
type BuildImageFieldConfig<
|
|
9
|
-
State extends
|
|
9
|
+
State extends prismic.FieldState = prismic.FieldState,
|
|
10
10
|
> = {
|
|
11
11
|
imageData: MockImageData;
|
|
12
12
|
constraint?: NonNullable<
|
|
13
|
-
|
|
13
|
+
prismic.CustomTypeModelImageField["config"]
|
|
14
14
|
>["constraint"];
|
|
15
15
|
} & (
|
|
16
16
|
| {
|
|
@@ -25,17 +25,17 @@ type BuildImageFieldConfig<
|
|
|
25
25
|
Pick<MockValueStateConfig<State>, "state">;
|
|
26
26
|
|
|
27
27
|
export const buildImageFieldImage = <
|
|
28
|
-
State extends
|
|
28
|
+
State extends prismic.FieldState = prismic.FieldState,
|
|
29
29
|
>(
|
|
30
30
|
config: BuildImageFieldConfig<State>,
|
|
31
|
-
):
|
|
31
|
+
): prismic.ImageFieldImage<State> => {
|
|
32
32
|
if (config.state === "empty") {
|
|
33
33
|
return {
|
|
34
34
|
url: null,
|
|
35
35
|
dimensions: null,
|
|
36
36
|
alt: null,
|
|
37
37
|
copyright: null,
|
|
38
|
-
} as
|
|
38
|
+
} as prismic.ImageFieldImage<State>;
|
|
39
39
|
} else {
|
|
40
40
|
const faker = config.faker || createFaker(config.seed);
|
|
41
41
|
|
|
@@ -55,6 +55,6 @@ export const buildImageFieldImage = <
|
|
|
55
55
|
dimensions,
|
|
56
56
|
alt: changeCase.sentenceCase(faker.words(faker.range(5, 15))),
|
|
57
57
|
copyright: changeCase.sentenceCase(faker.words(faker.range(5, 15))),
|
|
58
|
-
} as
|
|
58
|
+
} as prismic.ImageFieldImage<State>;
|
|
59
59
|
}
|
|
60
60
|
};
|