@prismicio/mock 0.1.1 → 0.2.0
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/dist/api/createAPIMockFactory.cjs +40 -0
- package/dist/api/createAPIMockFactory.cjs.map +1 -0
- package/dist/api/createAPIMockFactory.d.ts +23 -0
- package/dist/api/createAPIMockFactory.js +40 -0
- package/dist/api/createAPIMockFactory.js.map +1 -0
- package/dist/api/index.cjs +10 -672
- package/dist/api/index.cjs.map +1 -1
- package/dist/api/index.d.ts +8 -82
- package/dist/api/index.js +9 -671
- package/dist/api/index.js.map +1 -1
- package/dist/api/query.cjs +23 -0
- package/dist/api/query.cjs.map +1 -0
- package/dist/api/query.d.ts +8 -0
- package/dist/api/query.js +23 -0
- package/dist/api/query.js.map +1 -0
- package/dist/api/ref.cjs +37 -0
- package/dist/api/ref.cjs.map +1 -0
- package/dist/api/ref.d.ts +12 -0
- package/dist/api/ref.js +20 -0
- package/dist/api/ref.js.map +1 -0
- package/dist/api/repository.cjs +58 -0
- package/dist/api/repository.cjs.map +1 -0
- package/dist/api/repository.d.ts +7 -0
- package/dist/api/repository.js +41 -0
- package/dist/api/repository.js.map +1 -0
- package/dist/api/tags.cjs +14 -0
- package/dist/api/tags.cjs.map +1 -0
- package/dist/api/tags.d.ts +4 -0
- package/dist/api/tags.js +14 -0
- package/dist/api/tags.js.map +1 -0
- package/dist/constants.d.ts +2 -0
- package/dist/createMockFactory.cjs +33 -0
- package/dist/createMockFactory.cjs.map +1 -0
- package/dist/createMockFactory.d.ts +22 -0
- package/dist/createMockFactory.js +33 -0
- package/dist/createMockFactory.js.map +1 -0
- package/dist/index.cjs +19 -1988
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +7 -688
- package/dist/index.js +19 -1950
- package/dist/index.js.map +1 -1
- package/dist/lib/PRNG.cjs +44 -0
- package/dist/lib/PRNG.cjs.map +1 -0
- package/dist/lib/PRNG.d.ts +48 -0
- package/dist/lib/PRNG.js +44 -0
- package/dist/lib/PRNG.js.map +1 -0
- package/dist/lib/buildAlternativeLanguage.cjs +12 -0
- package/dist/lib/buildAlternativeLanguage.cjs.map +1 -0
- package/dist/lib/buildAlternativeLanguage.d.ts +6 -0
- package/dist/lib/buildAlternativeLanguage.js +12 -0
- package/dist/lib/buildAlternativeLanguage.js.map +1 -0
- package/dist/lib/buildContentRelationshipField.cjs +35 -0
- package/dist/lib/buildContentRelationshipField.cjs.map +1 -0
- package/dist/lib/buildContentRelationshipField.d.ts +6 -0
- package/dist/lib/buildContentRelationshipField.js +18 -0
- package/dist/lib/buildContentRelationshipField.js.map +1 -0
- package/dist/lib/buildEmbedField.cjs +13 -0
- package/dist/lib/buildEmbedField.cjs.map +1 -0
- package/dist/lib/buildEmbedField.d.ts +19 -0
- package/dist/lib/buildEmbedField.js +13 -0
- package/dist/lib/buildEmbedField.js.map +1 -0
- package/dist/lib/buildImageFieldImage.cjs +50 -0
- package/dist/lib/buildImageFieldImage.cjs.map +1 -0
- package/dist/lib/buildImageFieldImage.d.ts +15 -0
- package/dist/lib/buildImageFieldImage.js +33 -0
- package/dist/lib/buildImageFieldImage.js.map +1 -0
- package/dist/lib/createFaker.cjs +83 -0
- package/dist/lib/createFaker.cjs.map +1 -0
- package/dist/lib/createFaker.d.ts +24 -0
- package/dist/lib/createFaker.js +83 -0
- package/dist/lib/createFaker.js.map +1 -0
- package/dist/lib/generateCustomTypeId.cjs +27 -0
- package/dist/lib/generateCustomTypeId.cjs.map +1 -0
- package/dist/lib/generateCustomTypeId.d.ts +11 -0
- package/dist/lib/generateCustomTypeId.js +10 -0
- package/dist/lib/generateCustomTypeId.js.map +1 -0
- package/dist/lib/generateFieldId.cjs +27 -0
- package/dist/lib/generateFieldId.cjs.map +1 -0
- package/dist/lib/generateFieldId.d.ts +11 -0
- package/dist/lib/generateFieldId.js +10 -0
- package/dist/lib/generateFieldId.js.map +1 -0
- package/dist/lib/generateTags.cjs +27 -0
- package/dist/lib/generateTags.cjs.map +1 -0
- package/dist/lib/generateTags.d.ts +14 -0
- package/dist/lib/generateTags.js +10 -0
- package/dist/lib/generateTags.js.map +1 -0
- package/dist/lib/getMockEmbedData.cjs +88 -0
- package/dist/lib/getMockEmbedData.cjs.map +1 -0
- package/dist/lib/getMockEmbedData.d.ts +11 -0
- package/dist/lib/getMockEmbedData.js +88 -0
- package/dist/lib/getMockEmbedData.js.map +1 -0
- package/dist/lib/getMockImageData.cjs +91 -0
- package/dist/lib/getMockImageData.cjs.map +1 -0
- package/dist/lib/getMockImageData.d.ts +11 -0
- package/dist/lib/getMockImageData.js +91 -0
- package/dist/lib/getMockImageData.js.map +1 -0
- package/dist/lib/lorem.cjs +45 -0
- package/dist/lib/lorem.cjs.map +1 -0
- package/dist/lib/lorem.d.ts +49 -0
- package/dist/lib/lorem.js +45 -0
- package/dist/lib/lorem.js.map +1 -0
- package/dist/lib/valueForModel.cjs +191 -0
- package/dist/lib/valueForModel.cjs.map +1 -0
- package/dist/lib/valueForModel.d.ts +15 -0
- package/dist/lib/valueForModel.js +174 -0
- package/dist/lib/valueForModel.js.map +1 -0
- package/dist/lib/valueForModelMap.cjs +93 -0
- package/dist/lib/valueForModelMap.cjs.map +1 -0
- package/dist/lib/valueForModelMap.d.ts +37 -0
- package/dist/lib/valueForModelMap.js +76 -0
- package/dist/lib/valueForModelMap.js.map +1 -0
- package/dist/model/boolean.cjs +34 -0
- package/dist/model/boolean.cjs.map +1 -0
- package/dist/model/boolean.d.ts +4 -0
- package/dist/model/boolean.js +16 -0
- package/dist/model/boolean.js.map +1 -0
- package/dist/model/buildMockGroupFieldMap.cjs +51 -0
- package/dist/model/buildMockGroupFieldMap.cjs.map +1 -0
- package/dist/model/buildMockGroupFieldMap.d.ts +3 -0
- package/dist/model/buildMockGroupFieldMap.js +51 -0
- package/dist/model/buildMockGroupFieldMap.js.map +1 -0
- package/dist/model/color.cjs +35 -0
- package/dist/model/color.cjs.map +1 -0
- package/dist/model/color.d.ts +4 -0
- package/dist/model/color.js +17 -0
- package/dist/model/color.js.map +1 -0
- package/dist/model/contentRelationship.cjs +38 -0
- package/dist/model/contentRelationship.cjs.map +1 -0
- package/dist/model/contentRelationship.d.ts +7 -0
- package/dist/model/contentRelationship.js +20 -0
- package/dist/model/contentRelationship.js.map +1 -0
- package/dist/model/createModelMockFactory.cjs +124 -0
- package/dist/model/createModelMockFactory.cjs.map +1 -0
- package/dist/model/createModelMockFactory.d.ts +64 -0
- package/dist/model/createModelMockFactory.js +124 -0
- package/dist/model/createModelMockFactory.js.map +1 -0
- package/dist/model/customType.cjs +46 -0
- package/dist/model/customType.cjs.map +1 -0
- package/dist/model/customType.d.ts +17 -0
- package/dist/model/customType.js +29 -0
- package/dist/model/customType.js.map +1 -0
- package/dist/model/date.cjs +35 -0
- package/dist/model/date.cjs.map +1 -0
- package/dist/model/date.d.ts +4 -0
- package/dist/model/date.js +17 -0
- package/dist/model/date.js.map +1 -0
- package/dist/model/embed.cjs +35 -0
- package/dist/model/embed.cjs.map +1 -0
- package/dist/model/embed.d.ts +4 -0
- package/dist/model/embed.js +17 -0
- package/dist/model/embed.js.map +1 -0
- package/dist/model/geoPoint.cjs +34 -0
- package/dist/model/geoPoint.cjs.map +1 -0
- package/dist/model/geoPoint.d.ts +4 -0
- package/dist/model/geoPoint.js +16 -0
- package/dist/model/geoPoint.js.map +1 -0
- package/dist/model/group.cjs +35 -0
- package/dist/model/group.cjs.map +1 -0
- package/dist/model/group.d.ts +6 -0
- package/dist/model/group.js +17 -0
- package/dist/model/group.js.map +1 -0
- package/dist/model/image.cjs +46 -0
- package/dist/model/image.cjs.map +1 -0
- package/dist/model/image.d.ts +7 -0
- package/dist/model/image.js +28 -0
- package/dist/model/image.js.map +1 -0
- package/dist/model/index.cjs +54 -725
- package/dist/model/index.cjs.map +1 -1
- package/dist/model/index.d.ts +26 -220
- package/dist/model/index.js +38 -709
- package/dist/model/index.js.map +1 -1
- package/dist/model/integrationFields.cjs +35 -0
- package/dist/model/integrationFields.cjs.map +1 -0
- package/dist/model/integrationFields.d.ts +6 -0
- package/dist/model/integrationFields.js +17 -0
- package/dist/model/integrationFields.js.map +1 -0
- package/dist/model/keyText.cjs +35 -0
- package/dist/model/keyText.cjs.map +1 -0
- package/dist/model/keyText.d.ts +4 -0
- package/dist/model/keyText.js +17 -0
- package/dist/model/keyText.js.map +1 -0
- package/dist/model/link.cjs +37 -0
- package/dist/model/link.cjs.map +1 -0
- package/dist/model/link.d.ts +13 -0
- package/dist/model/link.js +19 -0
- package/dist/model/link.js.map +1 -0
- package/dist/model/linkToMedia.cjs +36 -0
- package/dist/model/linkToMedia.cjs.map +1 -0
- package/dist/model/linkToMedia.d.ts +4 -0
- package/dist/model/linkToMedia.js +18 -0
- package/dist/model/linkToMedia.js.map +1 -0
- package/dist/model/number.cjs +35 -0
- package/dist/model/number.cjs.map +1 -0
- package/dist/model/number.d.ts +4 -0
- package/dist/model/number.js +17 -0
- package/dist/model/number.js.map +1 -0
- package/dist/model/richText.cjs +55 -0
- package/dist/model/richText.cjs.map +1 -0
- package/dist/model/richText.d.ts +6 -0
- package/dist/model/richText.js +37 -0
- package/dist/model/richText.js.map +1 -0
- package/dist/model/select.cjs +37 -0
- package/dist/model/select.cjs.map +1 -0
- package/dist/model/select.d.ts +7 -0
- package/dist/model/select.js +19 -0
- package/dist/model/select.js.map +1 -0
- package/dist/model/sharedSlice.cjs +42 -0
- package/dist/model/sharedSlice.cjs.map +1 -0
- package/dist/model/sharedSlice.d.ts +8 -0
- package/dist/model/sharedSlice.js +24 -0
- package/dist/model/sharedSlice.js.map +1 -0
- package/dist/model/sharedSliceChoice.cjs +27 -0
- package/dist/model/sharedSliceChoice.cjs.map +1 -0
- package/dist/model/sharedSliceChoice.d.ts +2 -0
- package/dist/model/sharedSliceChoice.js +10 -0
- package/dist/model/sharedSliceChoice.js.map +1 -0
- package/dist/model/sharedSliceVariation.cjs +45 -0
- package/dist/model/sharedSliceVariation.cjs.map +1 -0
- package/dist/model/sharedSliceVariation.d.ts +9 -0
- package/dist/model/sharedSliceVariation.js +28 -0
- package/dist/model/sharedSliceVariation.js.map +1 -0
- package/dist/model/slice.cjs +37 -0
- package/dist/model/slice.cjs.map +1 -0
- package/dist/model/slice.d.ts +7 -0
- package/dist/model/slice.js +19 -0
- package/dist/model/slice.js.map +1 -0
- package/dist/model/sliceZone.cjs +39 -0
- package/dist/model/sliceZone.cjs.map +1 -0
- package/dist/model/sliceZone.d.ts +6 -0
- package/dist/model/sliceZone.js +22 -0
- package/dist/model/sliceZone.js.map +1 -0
- package/dist/model/timestamp.cjs +35 -0
- package/dist/model/timestamp.cjs.map +1 -0
- package/dist/model/timestamp.d.ts +4 -0
- package/dist/model/timestamp.js +17 -0
- package/dist/model/timestamp.js.map +1 -0
- package/dist/model/title.cjs +45 -0
- package/dist/model/title.cjs.map +1 -0
- package/dist/model/title.d.ts +4 -0
- package/dist/model/title.js +27 -0
- package/dist/model/title.js.map +1 -0
- package/dist/model/uid.cjs +35 -0
- package/dist/model/uid.cjs.map +1 -0
- package/dist/model/uid.d.ts +4 -0
- package/dist/model/uid.js +17 -0
- package/dist/model/uid.js.map +1 -0
- package/dist/types.d.ts +77 -0
- package/dist/value/boolean.cjs +9 -0
- package/dist/value/boolean.cjs.map +1 -0
- package/dist/value/boolean.d.ts +4 -0
- package/dist/value/boolean.js +9 -0
- package/dist/value/boolean.js.map +1 -0
- package/dist/value/color.cjs +9 -0
- package/dist/value/color.cjs.map +1 -0
- package/dist/value/color.d.ts +5 -0
- package/dist/value/color.js +9 -0
- package/dist/value/color.js.map +1 -0
- package/dist/value/contentRelationship.cjs +63 -0
- package/dist/value/contentRelationship.cjs.map +1 -0
- package/dist/value/contentRelationship.d.ts +11 -0
- package/dist/value/contentRelationship.js +46 -0
- package/dist/value/contentRelationship.js.map +1 -0
- package/dist/value/createValueMockFactory.cjs +119 -0
- package/dist/value/createValueMockFactory.cjs.map +1 -0
- package/dist/value/createValueMockFactory.d.ts +63 -0
- package/dist/value/createValueMockFactory.js +119 -0
- package/dist/value/createValueMockFactory.js.map +1 -0
- package/dist/value/customType.cjs +66 -0
- package/dist/value/customType.cjs.map +1 -0
- package/dist/value/customType.d.ts +9 -0
- package/dist/value/customType.js +48 -0
- package/dist/value/customType.js.map +1 -0
- package/dist/value/date.cjs +15 -0
- package/dist/value/date.cjs.map +1 -0
- package/dist/value/date.d.ts +6 -0
- package/dist/value/date.js +15 -0
- package/dist/value/date.js.map +1 -0
- package/dist/value/document.d.ts +1 -0
- package/dist/value/embed.cjs +17 -0
- package/dist/value/embed.cjs.map +1 -0
- package/dist/value/embed.d.ts +9 -0
- package/dist/value/embed.js +17 -0
- package/dist/value/embed.js.map +1 -0
- package/dist/value/geoPoint.cjs +12 -0
- package/dist/value/geoPoint.cjs.map +1 -0
- package/dist/value/geoPoint.d.ts +5 -0
- package/dist/value/geoPoint.js +12 -0
- package/dist/value/geoPoint.js.map +1 -0
- package/dist/value/group.cjs +24 -0
- package/dist/value/group.cjs.map +1 -0
- package/dist/value/group.d.ts +9 -0
- package/dist/value/group.js +24 -0
- package/dist/value/group.js.map +1 -0
- package/dist/value/image.cjs +34 -0
- package/dist/value/image.cjs.map +1 -0
- package/dist/value/image.d.ts +5 -0
- package/dist/value/image.js +34 -0
- package/dist/value/image.js.map +1 -0
- package/dist/value/index.cjs +49 -1492
- package/dist/value/index.cjs.map +1 -1
- package/dist/value/index.d.ts +48 -260
- package/dist/value/index.js +48 -1491
- package/dist/value/index.js.map +1 -1
- package/dist/value/integrationFields.cjs +8 -0
- package/dist/value/integrationFields.cjs.map +1 -0
- package/dist/value/integrationFields.d.ts +7 -0
- package/dist/value/integrationFields.js +8 -0
- package/dist/value/integrationFields.js.map +1 -0
- package/dist/value/keyText.cjs +27 -0
- package/dist/value/keyText.cjs.map +1 -0
- package/dist/value/keyText.d.ts +5 -0
- package/dist/value/keyText.js +10 -0
- package/dist/value/keyText.js.map +1 -0
- package/dist/value/link.cjs +65 -0
- package/dist/value/link.cjs.map +1 -0
- package/dist/value/link.d.ts +13 -0
- package/dist/value/link.js +48 -0
- package/dist/value/link.js.map +1 -0
- package/dist/value/linkToMedia.cjs +43 -0
- package/dist/value/linkToMedia.cjs.map +1 -0
- package/dist/value/linkToMedia.d.ts +6 -0
- package/dist/value/linkToMedia.js +25 -0
- package/dist/value/linkToMedia.js.map +1 -0
- package/dist/value/number.cjs +9 -0
- package/dist/value/number.cjs.map +1 -0
- package/dist/value/number.d.ts +5 -0
- package/dist/value/number.js +9 -0
- package/dist/value/number.js.map +1 -0
- package/dist/value/richText/embed.cjs +34 -0
- package/dist/value/richText/embed.cjs.map +1 -0
- package/dist/value/richText/embed.d.ts +5 -0
- package/dist/value/richText/embed.js +17 -0
- package/dist/value/richText/embed.js.map +1 -0
- package/dist/value/richText/heading.cjs +72 -0
- package/dist/value/richText/heading.cjs.map +1 -0
- package/dist/value/richText/heading.d.ts +22 -0
- package/dist/value/richText/heading.js +54 -0
- package/dist/value/richText/heading.js.map +1 -0
- package/dist/value/richText/image.cjs +41 -0
- package/dist/value/richText/image.cjs.map +1 -0
- package/dist/value/richText/image.d.ts +5 -0
- package/dist/value/richText/image.js +24 -0
- package/dist/value/richText/image.js.map +1 -0
- package/dist/value/richText/index.cjs +91 -0
- package/dist/value/richText/index.cjs.map +1 -0
- package/dist/value/richText/index.d.ts +22 -0
- package/dist/value/richText/index.js +74 -0
- package/dist/value/richText/index.js.map +1 -0
- package/dist/value/richText/list.cjs +52 -0
- package/dist/value/richText/list.cjs.map +1 -0
- package/dist/value/richText/list.d.ts +21 -0
- package/dist/value/richText/list.js +34 -0
- package/dist/value/richText/list.js.map +1 -0
- package/dist/value/richText/oList.cjs +52 -0
- package/dist/value/richText/oList.cjs.map +1 -0
- package/dist/value/richText/oList.d.ts +21 -0
- package/dist/value/richText/oList.js +34 -0
- package/dist/value/richText/oList.js.map +1 -0
- package/dist/value/richText/paragraph.cjs +47 -0
- package/dist/value/richText/paragraph.cjs.map +1 -0
- package/dist/value/richText/paragraph.d.ts +18 -0
- package/dist/value/richText/paragraph.js +29 -0
- package/dist/value/richText/paragraph.js.map +1 -0
- package/dist/value/richText/preformatted.cjs +47 -0
- package/dist/value/richText/preformatted.cjs.map +1 -0
- package/dist/value/richText/preformatted.d.ts +18 -0
- package/dist/value/richText/preformatted.js +29 -0
- package/dist/value/richText/preformatted.js.map +1 -0
- package/dist/value/select.cjs +18 -0
- package/dist/value/select.cjs.map +1 -0
- package/dist/value/select.d.ts +5 -0
- package/dist/value/select.js +18 -0
- package/dist/value/select.js.map +1 -0
- package/dist/value/sharedSlice.cjs +20 -0
- package/dist/value/sharedSlice.cjs.map +1 -0
- package/dist/value/sharedSlice.d.ts +5 -0
- package/dist/value/sharedSlice.js +20 -0
- package/dist/value/sharedSlice.js.map +1 -0
- package/dist/value/sharedSliceVariation.cjs +32 -0
- package/dist/value/sharedSliceVariation.cjs.map +1 -0
- package/dist/value/sharedSliceVariation.d.ts +11 -0
- package/dist/value/sharedSliceVariation.js +32 -0
- package/dist/value/sharedSliceVariation.js.map +1 -0
- package/dist/value/slice.cjs +49 -0
- package/dist/value/slice.cjs.map +1 -0
- package/dist/value/slice.d.ts +11 -0
- package/dist/value/slice.js +32 -0
- package/dist/value/slice.js.map +1 -0
- package/dist/value/sliceZone.cjs +70 -0
- package/dist/value/sliceZone.cjs.map +1 -0
- package/dist/value/sliceZone.d.ts +10 -0
- package/dist/value/sliceZone.js +53 -0
- package/dist/value/sliceZone.js.map +1 -0
- package/dist/value/timestamp.cjs +25 -0
- package/dist/value/timestamp.cjs.map +1 -0
- package/dist/value/timestamp.d.ts +8 -0
- package/dist/value/timestamp.js +25 -0
- package/dist/value/timestamp.js.map +1 -0
- package/dist/value/title.cjs +20 -0
- package/dist/value/title.cjs.map +1 -0
- package/dist/value/title.d.ts +8 -0
- package/dist/value/title.js +20 -0
- package/dist/value/title.js.map +1 -0
- package/dist/value/uid.cjs +27 -0
- package/dist/value/uid.cjs.map +1 -0
- package/dist/value/uid.d.ts +4 -0
- package/dist/value/uid.js +10 -0
- package/dist/value/uid.js.map +1 -0
- package/package.json +19 -19
- package/src/lib/PRNG.ts +88 -0
- package/src/lib/createFaker.ts +7 -8
- package/src/lib/lorem.ts +1 -2
- package/dist/api/index.d.ts.map +0 -1
- package/dist/model/index.d.ts.map +0 -1
- package/dist/value/index.d.ts.map +0 -1
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The following code is a modified version of Prando from `zeh/prando` on
|
|
3
|
+
* GitHub.
|
|
4
|
+
*
|
|
5
|
+
* Source:
|
|
6
|
+
* https://github.com/zeh/prando/blob/acc2a3c09df12a41b5c82fbf44e49e070e6f60ac/src/Prando.ts
|
|
7
|
+
*
|
|
8
|
+
* The MIT License (MIT)
|
|
9
|
+
*
|
|
10
|
+
* Copyright (c) 2016 Zeh Fernando
|
|
11
|
+
*
|
|
12
|
+
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
13
|
+
* of this software and associated documentation files (the "Software"), to deal
|
|
14
|
+
* in the Software without restriction, including without limitation the rights
|
|
15
|
+
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
16
|
+
* copies of the Software, and to permit persons to whom the Software is
|
|
17
|
+
* furnished to do so, subject to the following conditions:
|
|
18
|
+
*
|
|
19
|
+
* The above copyright notice and this permission notice shall be included in
|
|
20
|
+
* all copies or substantial portions of the Software.
|
|
21
|
+
*
|
|
22
|
+
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
23
|
+
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
24
|
+
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
25
|
+
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
26
|
+
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
27
|
+
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
28
|
+
* SOFTWARE.
|
|
29
|
+
*/
|
|
30
|
+
/**
|
|
31
|
+
* Pseudorandom number generator.
|
|
32
|
+
*/
|
|
33
|
+
export declare class PRNG {
|
|
34
|
+
private _value;
|
|
35
|
+
/**
|
|
36
|
+
* Generate a new pseudo-random number generator.
|
|
37
|
+
*
|
|
38
|
+
* @param seed - A number or string seed that determines which pseudo-random
|
|
39
|
+
* number sequence will be created.
|
|
40
|
+
*/
|
|
41
|
+
constructor(seed: number | string);
|
|
42
|
+
/**
|
|
43
|
+
* Generates a pseudo-random number.
|
|
44
|
+
*
|
|
45
|
+
* @returns The generated pseudo-random number.
|
|
46
|
+
*/
|
|
47
|
+
next(): number;
|
|
48
|
+
}
|
package/dist/lib/PRNG.js
ADDED
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
3
|
+
var __publicField = (obj, key, value) => {
|
|
4
|
+
__defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
5
|
+
return value;
|
|
6
|
+
};
|
|
7
|
+
const MIN = -2147483648;
|
|
8
|
+
const MAX = 2147483647;
|
|
9
|
+
const xorshift = (value) => {
|
|
10
|
+
value ^= value << 13;
|
|
11
|
+
value ^= value >> 17;
|
|
12
|
+
value ^= value << 5;
|
|
13
|
+
return value;
|
|
14
|
+
};
|
|
15
|
+
class PRNG {
|
|
16
|
+
constructor(seed) {
|
|
17
|
+
__publicField(this, "_value");
|
|
18
|
+
if (typeof seed === "string") {
|
|
19
|
+
let hash = 0;
|
|
20
|
+
if (seed) {
|
|
21
|
+
const l = seed.length;
|
|
22
|
+
for (let i = 0; i < l; i++) {
|
|
23
|
+
hash = (hash << 5) - hash + seed.charCodeAt(i);
|
|
24
|
+
hash |= 0;
|
|
25
|
+
hash = xorshift(hash);
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
this._value = hash;
|
|
29
|
+
} else {
|
|
30
|
+
this._value = seed;
|
|
31
|
+
}
|
|
32
|
+
if (this._value === 0) {
|
|
33
|
+
this._value = 1;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
next() {
|
|
37
|
+
this._value = xorshift(this._value);
|
|
38
|
+
return (this._value - MIN) / (MAX - MIN);
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
export {
|
|
42
|
+
PRNG
|
|
43
|
+
};
|
|
44
|
+
//# sourceMappingURL=PRNG.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PRNG.js","sources":["../../../src/lib/PRNG.ts"],"sourcesContent":["/**\n * The following code is a modified version of Prando from `zeh/prando` on\n * GitHub.\n *\n * Source:\n * https://github.com/zeh/prando/blob/acc2a3c09df12a41b5c82fbf44e49e070e6f60ac/src/Prando.ts\n *\n * The MIT License (MIT)\n *\n * Copyright (c) 2016 Zeh Fernando\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n * SOFTWARE.\n */\n\nconst MIN = -2147483648; // Int32 min\nconst MAX = 2147483647; // Int32 max\n\nconst xorshift = (value: number): number => {\n\t// Xorshift*32\n\t// Based on George Marsaglia's work: http://www.jstatsoft.org/v08/i14/paper\n\tvalue ^= value << 13;\n\tvalue ^= value >> 17;\n\tvalue ^= value << 5;\n\n\treturn value;\n};\n\n/**\n * Pseudorandom number generator.\n */\nexport class PRNG {\n\tprivate _value: number;\n\n\t/**\n\t * Generate a new pseudo-random number generator.\n\t *\n\t * @param seed - A number or string seed that determines which pseudo-random\n\t * number sequence will be created.\n\t */\n\tconstructor(seed: number | string) {\n\t\tif (typeof seed === \"string\") {\n\t\t\tlet hash = 0;\n\t\t\tif (seed) {\n\t\t\t\tconst l = seed.length;\n\t\t\t\tfor (let i = 0; i < l; i++) {\n\t\t\t\t\thash = (hash << 5) - hash + seed.charCodeAt(i);\n\t\t\t\t\thash |= 0;\n\t\t\t\t\thash = xorshift(hash);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tthis._value = hash;\n\t\t} else {\n\t\t\tthis._value = seed;\n\t\t}\n\n\t\tif (this._value === 0) {\n\t\t\tthis._value = 1;\n\t\t}\n\t}\n\n\t/**\n\t * Generates a pseudo-random number.\n\t *\n\t * @returns The generated pseudo-random number.\n\t */\n\tpublic next(): number {\n\t\tthis._value = xorshift(this._value);\n\n\t\treturn (this._value - MIN) / (MAX - MIN);\n\t}\n}\n"],"names":[],"mappings":";;;;;;AA8BA,MAAM,MAAM;AACZ,MAAM,MAAM;AAEZ,MAAM,WAAW,CAAC,UAAyB;AAG1C,WAAS,SAAS;AAClB,WAAS,SAAS;AAClB,WAAS,SAAS;AAEX,SAAA;AACR;MAKa,KAAI;AAAA,EAShB,YAAY,MAAqB;AARzB;AASH,QAAA,OAAO,SAAS,UAAU;AAC7B,UAAI,OAAO;AACX,UAAI,MAAM;AACT,cAAM,IAAI,KAAK;AACf,iBAAS,IAAI,GAAG,IAAI,GAAG,KAAK;AAC3B,kBAAQ,QAAQ,KAAK,OAAO,KAAK,WAAW,CAAC;AACrC,kBAAA;AACR,iBAAO,SAAS,IAAI;AAAA,QACpB;AAAA,MACD;AAED,WAAK,SAAS;AAAA,IAAA,OACR;AACN,WAAK,SAAS;AAAA,IACd;AAEG,QAAA,KAAK,WAAW,GAAG;AACtB,WAAK,SAAS;AAAA,IACd;AAAA,EACF;AAAA,EAOO,OAAI;AACL,SAAA,SAAS,SAAS,KAAK,MAAM;AAE1B,YAAA,KAAK,SAAS,QAAQ,MAAM;AAAA,EACrC;AACA;"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const buildAlternativeLanguage = (config) => {
|
|
4
|
+
return {
|
|
5
|
+
id: config.document.id,
|
|
6
|
+
type: config.document.type,
|
|
7
|
+
lang: config.document.lang,
|
|
8
|
+
uid: config.document.uid || void 0
|
|
9
|
+
};
|
|
10
|
+
};
|
|
11
|
+
exports.buildAlternativeLanguage = buildAlternativeLanguage;
|
|
12
|
+
//# sourceMappingURL=buildAlternativeLanguage.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"buildAlternativeLanguage.cjs","sources":["../../../src/lib/buildAlternativeLanguage.ts"],"sourcesContent":["import * as prismicT from \"@prismicio/types\";\n\ntype BuildEmbedFieldConfig<Document extends prismicT.PrismicDocument> = {\n\tdocument: Document;\n};\n\nexport const buildAlternativeLanguage = <\n\tDocument extends prismicT.PrismicDocument,\n>(\n\tconfig: BuildEmbedFieldConfig<Document>,\n): prismicT.AlternateLanguage<Document[\"type\"], Document[\"lang\"]> => {\n\treturn {\n\t\tid: config.document.id,\n\t\ttype: config.document.type,\n\t\tlang: config.document.lang,\n\t\tuid: config.document.uid || undefined,\n\t};\n};\n"],"names":[],"mappings":";;AAMa,MAAA,2BAA2B,CAGvC,WACmE;AAC5D,SAAA;AAAA,IACN,IAAI,OAAO,SAAS;AAAA,IACpB,MAAM,OAAO,SAAS;AAAA,IACtB,MAAM,OAAO,SAAS;AAAA,IACtB,KAAK,OAAO,SAAS,OAAO;AAAA,EAAA;AAE9B;;"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import * as prismicT from "@prismicio/types";
|
|
2
|
+
type BuildEmbedFieldConfig<Document extends prismicT.PrismicDocument> = {
|
|
3
|
+
document: Document;
|
|
4
|
+
};
|
|
5
|
+
export declare const buildAlternativeLanguage: <Document_1 extends prismicT.PrismicDocument<Record<string, any>, string, string>>(config: BuildEmbedFieldConfig<Document_1>) => prismicT.AlternateLanguage<Document_1["type"], Document_1["lang"]>;
|
|
6
|
+
export {};
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
const buildAlternativeLanguage = (config) => {
|
|
2
|
+
return {
|
|
3
|
+
id: config.document.id,
|
|
4
|
+
type: config.document.type,
|
|
5
|
+
lang: config.document.lang,
|
|
6
|
+
uid: config.document.uid || void 0
|
|
7
|
+
};
|
|
8
|
+
};
|
|
9
|
+
export {
|
|
10
|
+
buildAlternativeLanguage
|
|
11
|
+
};
|
|
12
|
+
//# sourceMappingURL=buildAlternativeLanguage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"buildAlternativeLanguage.js","sources":["../../../src/lib/buildAlternativeLanguage.ts"],"sourcesContent":["import * as prismicT from \"@prismicio/types\";\n\ntype BuildEmbedFieldConfig<Document extends prismicT.PrismicDocument> = {\n\tdocument: Document;\n};\n\nexport const buildAlternativeLanguage = <\n\tDocument extends prismicT.PrismicDocument,\n>(\n\tconfig: BuildEmbedFieldConfig<Document>,\n): prismicT.AlternateLanguage<Document[\"type\"], Document[\"lang\"]> => {\n\treturn {\n\t\tid: config.document.id,\n\t\ttype: config.document.type,\n\t\tlang: config.document.lang,\n\t\tuid: config.document.uid || undefined,\n\t};\n};\n"],"names":[],"mappings":"AAMa,MAAA,2BAA2B,CAGvC,WACmE;AAC5D,SAAA;AAAA,IACN,IAAI,OAAO,SAAS;AAAA,IACpB,MAAM,OAAO,SAAS;AAAA,IACtB,MAAM,OAAO,SAAS;AAAA,IACtB,KAAK,OAAO,SAAS,OAAO;AAAA,EAAA;AAE9B;"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const prismicT = require("@prismicio/types");
|
|
4
|
+
function _interopNamespaceDefault(e) {
|
|
5
|
+
const n = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } });
|
|
6
|
+
if (e) {
|
|
7
|
+
for (const k in e) {
|
|
8
|
+
if (k !== "default") {
|
|
9
|
+
const d = Object.getOwnPropertyDescriptor(e, k);
|
|
10
|
+
Object.defineProperty(n, k, d.get ? d : {
|
|
11
|
+
enumerable: true,
|
|
12
|
+
get: () => e[k]
|
|
13
|
+
});
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
n.default = e;
|
|
18
|
+
return Object.freeze(n);
|
|
19
|
+
}
|
|
20
|
+
const prismicT__namespace = /* @__PURE__ */ _interopNamespaceDefault(prismicT);
|
|
21
|
+
const buildContentRelationshipField = (config) => {
|
|
22
|
+
return {
|
|
23
|
+
link_type: prismicT__namespace.LinkType.Document,
|
|
24
|
+
id: config.document.id,
|
|
25
|
+
uid: config.document.uid || void 0,
|
|
26
|
+
type: config.document.type,
|
|
27
|
+
tags: config.document.tags,
|
|
28
|
+
lang: config.document.lang,
|
|
29
|
+
url: config.document.url || void 0,
|
|
30
|
+
slug: config.document.slugs[0],
|
|
31
|
+
isBroken: false
|
|
32
|
+
};
|
|
33
|
+
};
|
|
34
|
+
exports.buildContentRelationshipField = buildContentRelationshipField;
|
|
35
|
+
//# sourceMappingURL=buildContentRelationshipField.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"buildContentRelationshipField.cjs","sources":["../../../src/lib/buildContentRelationshipField.ts"],"sourcesContent":["import * as prismicT from \"@prismicio/types\";\n\ntype BuildEmbedFieldConfig<Document extends prismicT.PrismicDocument> = {\n\tdocument: Document;\n};\n\nexport const buildContentRelationshipField = <\n\tDocument extends prismicT.PrismicDocument,\n>(\n\tconfig: BuildEmbedFieldConfig<Document>,\n): prismicT.RelationField<\n\tDocument[\"type\"],\n\tDocument[\"lang\"],\n\tnever,\n\t\"filled\"\n> => {\n\treturn {\n\t\tlink_type: prismicT.LinkType.Document,\n\t\tid: config.document.id,\n\t\tuid: config.document.uid || undefined,\n\t\ttype: config.document.type,\n\t\ttags: config.document.tags,\n\t\tlang: config.document.lang,\n\t\turl: config.document.url || undefined,\n\t\tslug: config.document.slugs[0],\n\t\tisBroken: false,\n\t};\n};\n"],"names":["prismicT"],"mappings":";;;;;;;;;;;;;;;;;;;;AAMa,MAAA,gCAAgC,CAG5C,WAMG;AACI,SAAA;AAAA,IACN,WAAWA,oBAAS,SAAS;AAAA,IAC7B,IAAI,OAAO,SAAS;AAAA,IACpB,KAAK,OAAO,SAAS,OAAO;AAAA,IAC5B,MAAM,OAAO,SAAS;AAAA,IACtB,MAAM,OAAO,SAAS;AAAA,IACtB,MAAM,OAAO,SAAS;AAAA,IACtB,KAAK,OAAO,SAAS,OAAO;AAAA,IAC5B,MAAM,OAAO,SAAS,MAAM;AAAA,IAC5B,UAAU;AAAA,EAAA;AAEZ;;"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import * as prismicT from "@prismicio/types";
|
|
2
|
+
type BuildEmbedFieldConfig<Document extends prismicT.PrismicDocument> = {
|
|
3
|
+
document: Document;
|
|
4
|
+
};
|
|
5
|
+
export declare const buildContentRelationshipField: <Document_1 extends prismicT.PrismicDocument<Record<string, any>, string, string>>(config: BuildEmbedFieldConfig<Document_1>) => prismicT.FilledContentRelationshipField<Document_1["type"], Document_1["lang"], never>;
|
|
6
|
+
export {};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import * as prismicT from "@prismicio/types";
|
|
2
|
+
const buildContentRelationshipField = (config) => {
|
|
3
|
+
return {
|
|
4
|
+
link_type: prismicT.LinkType.Document,
|
|
5
|
+
id: config.document.id,
|
|
6
|
+
uid: config.document.uid || void 0,
|
|
7
|
+
type: config.document.type,
|
|
8
|
+
tags: config.document.tags,
|
|
9
|
+
lang: config.document.lang,
|
|
10
|
+
url: config.document.url || void 0,
|
|
11
|
+
slug: config.document.slugs[0],
|
|
12
|
+
isBroken: false
|
|
13
|
+
};
|
|
14
|
+
};
|
|
15
|
+
export {
|
|
16
|
+
buildContentRelationshipField
|
|
17
|
+
};
|
|
18
|
+
//# sourceMappingURL=buildContentRelationshipField.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"buildContentRelationshipField.js","sources":["../../../src/lib/buildContentRelationshipField.ts"],"sourcesContent":["import * as prismicT from \"@prismicio/types\";\n\ntype BuildEmbedFieldConfig<Document extends prismicT.PrismicDocument> = {\n\tdocument: Document;\n};\n\nexport const buildContentRelationshipField = <\n\tDocument extends prismicT.PrismicDocument,\n>(\n\tconfig: BuildEmbedFieldConfig<Document>,\n): prismicT.RelationField<\n\tDocument[\"type\"],\n\tDocument[\"lang\"],\n\tnever,\n\t\"filled\"\n> => {\n\treturn {\n\t\tlink_type: prismicT.LinkType.Document,\n\t\tid: config.document.id,\n\t\tuid: config.document.uid || undefined,\n\t\ttype: config.document.type,\n\t\ttags: config.document.tags,\n\t\tlang: config.document.lang,\n\t\turl: config.document.url || undefined,\n\t\tslug: config.document.slugs[0],\n\t\tisBroken: false,\n\t};\n};\n"],"names":[],"mappings":";AAMa,MAAA,gCAAgC,CAG5C,WAMG;AACI,SAAA;AAAA,IACN,WAAW,SAAS,SAAS;AAAA,IAC7B,IAAI,OAAO,SAAS;AAAA,IACpB,KAAK,OAAO,SAAS,OAAO;AAAA,IAC5B,MAAM,OAAO,SAAS;AAAA,IACtB,MAAM,OAAO,SAAS;AAAA,IACtB,MAAM,OAAO,SAAS;AAAA,IACtB,KAAK,OAAO,SAAS,OAAO;AAAA,IAC5B,MAAM,OAAO,SAAS,MAAM;AAAA,IAC5B,UAAU;AAAA,EAAA;AAEZ;"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const createFaker = require("./createFaker.cjs");
|
|
4
|
+
const buildEmbedField = (config) => {
|
|
5
|
+
const faker = config.faker || createFaker.createFaker(config.seed);
|
|
6
|
+
return {
|
|
7
|
+
embed_url: config.url ?? faker.url(),
|
|
8
|
+
html: `<div>embed html</div>`,
|
|
9
|
+
...config.data
|
|
10
|
+
};
|
|
11
|
+
};
|
|
12
|
+
exports.buildEmbedField = buildEmbedField;
|
|
13
|
+
//# sourceMappingURL=buildEmbedField.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"buildEmbedField.cjs","sources":["../../../src/lib/buildEmbedField.ts"],"sourcesContent":["import * as prismicT from \"@prismicio/types\";\n\nimport { createFaker, Faker } from \"../lib/createFaker\";\n\nimport { Seed } from \"../types\";\n\ntype BuildEmbedFieldConfig<\n\tData extends prismicT.AnyOEmbed = prismicT.AnyOEmbed,\n> = {\n\turl?: string;\n\thtml?: string;\n\tdata: Data;\n} & (\n\t| {\n\t\t\tseed: Seed;\n\t\t\tfaker?: never;\n\t }\n\t| {\n\t\t\tfaker: Faker;\n\t\t\tseed?: never;\n\t }\n);\n\nexport const buildEmbedField = <\n\tData extends prismicT.AnyOEmbed = prismicT.AnyOEmbed,\n>(\n\tconfig: BuildEmbedFieldConfig<Data>,\n): prismicT.EmbedField<Data, \"filled\"> => {\n\tconst faker = config.faker || createFaker(config.seed);\n\n\treturn {\n\t\tembed_url: config.url ?? faker.url(),\n\t\thtml: `<div>embed html</div>`,\n\t\t...config.data,\n\t} as prismicT.EmbedField<Data, \"filled\">;\n};\n"],"names":["createFaker"],"mappings":";;;AAuBa,MAAA,kBAAkB,CAG9B,WACwC;AACxC,QAAM,QAAQ,OAAO,SAASA,YAAAA,YAAY,OAAO,IAAI;AAE9C,SAAA;AAAA,IACN,WAAW,OAAO,OAAO,MAAM,IAAK;AAAA,IACpC,MAAM;AAAA,IACN,GAAG,OAAO;AAAA,EAAA;AAEZ;;"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import * as prismicT from "@prismicio/types";
|
|
2
|
+
import { Faker } from "../lib/createFaker";
|
|
3
|
+
import { Seed } from "../types";
|
|
4
|
+
type BuildEmbedFieldConfig<Data extends prismicT.AnyOEmbed = prismicT.AnyOEmbed> = {
|
|
5
|
+
url?: string;
|
|
6
|
+
html?: string;
|
|
7
|
+
data: Data;
|
|
8
|
+
} & ({
|
|
9
|
+
seed: Seed;
|
|
10
|
+
faker?: never;
|
|
11
|
+
} | {
|
|
12
|
+
faker: Faker;
|
|
13
|
+
seed?: never;
|
|
14
|
+
});
|
|
15
|
+
export declare const buildEmbedField: <Data extends prismicT.AnyOEmbed = prismicT.AnyOEmbed>(config: BuildEmbedFieldConfig<Data>) => Data & {
|
|
16
|
+
embed_url: string;
|
|
17
|
+
html: string | null;
|
|
18
|
+
};
|
|
19
|
+
export {};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { createFaker } from "./createFaker.js";
|
|
2
|
+
const buildEmbedField = (config) => {
|
|
3
|
+
const faker = config.faker || createFaker(config.seed);
|
|
4
|
+
return {
|
|
5
|
+
embed_url: config.url ?? faker.url(),
|
|
6
|
+
html: `<div>embed html</div>`,
|
|
7
|
+
...config.data
|
|
8
|
+
};
|
|
9
|
+
};
|
|
10
|
+
export {
|
|
11
|
+
buildEmbedField
|
|
12
|
+
};
|
|
13
|
+
//# sourceMappingURL=buildEmbedField.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"buildEmbedField.js","sources":["../../../src/lib/buildEmbedField.ts"],"sourcesContent":["import * as prismicT from \"@prismicio/types\";\n\nimport { createFaker, Faker } from \"../lib/createFaker\";\n\nimport { Seed } from \"../types\";\n\ntype BuildEmbedFieldConfig<\n\tData extends prismicT.AnyOEmbed = prismicT.AnyOEmbed,\n> = {\n\turl?: string;\n\thtml?: string;\n\tdata: Data;\n} & (\n\t| {\n\t\t\tseed: Seed;\n\t\t\tfaker?: never;\n\t }\n\t| {\n\t\t\tfaker: Faker;\n\t\t\tseed?: never;\n\t }\n);\n\nexport const buildEmbedField = <\n\tData extends prismicT.AnyOEmbed = prismicT.AnyOEmbed,\n>(\n\tconfig: BuildEmbedFieldConfig<Data>,\n): prismicT.EmbedField<Data, \"filled\"> => {\n\tconst faker = config.faker || createFaker(config.seed);\n\n\treturn {\n\t\tembed_url: config.url ?? faker.url(),\n\t\thtml: `<div>embed html</div>`,\n\t\t...config.data,\n\t} as prismicT.EmbedField<Data, \"filled\">;\n};\n"],"names":[],"mappings":";AAuBa,MAAA,kBAAkB,CAG9B,WACwC;AACxC,QAAM,QAAQ,OAAO,SAAS,YAAY,OAAO,IAAI;AAE9C,SAAA;AAAA,IACN,WAAW,OAAO,OAAO,MAAM,IAAK;AAAA,IACpC,MAAM;AAAA,IACN,GAAG,OAAO;AAAA,EAAA;AAEZ;"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const changeCase = require("change-case");
|
|
4
|
+
const createFaker = require("./createFaker.cjs");
|
|
5
|
+
function _interopNamespaceDefault(e) {
|
|
6
|
+
const n = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } });
|
|
7
|
+
if (e) {
|
|
8
|
+
for (const k in e) {
|
|
9
|
+
if (k !== "default") {
|
|
10
|
+
const d = Object.getOwnPropertyDescriptor(e, k);
|
|
11
|
+
Object.defineProperty(n, k, d.get ? d : {
|
|
12
|
+
enumerable: true,
|
|
13
|
+
get: () => e[k]
|
|
14
|
+
});
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
n.default = e;
|
|
19
|
+
return Object.freeze(n);
|
|
20
|
+
}
|
|
21
|
+
const changeCase__namespace = /* @__PURE__ */ _interopNamespaceDefault(changeCase);
|
|
22
|
+
const buildImageFieldImage = (config) => {
|
|
23
|
+
var _a, _b;
|
|
24
|
+
if (config.state === "empty") {
|
|
25
|
+
return {
|
|
26
|
+
url: null,
|
|
27
|
+
dimensions: null,
|
|
28
|
+
alt: null,
|
|
29
|
+
copyright: null
|
|
30
|
+
};
|
|
31
|
+
} else {
|
|
32
|
+
const faker = config.faker || createFaker.createFaker(config.seed);
|
|
33
|
+
const url = new URL(config.imageData.url);
|
|
34
|
+
const dimensions = {
|
|
35
|
+
width: ((_a = config.constraint) == null ? void 0 : _a.width) ?? config.imageData.width,
|
|
36
|
+
height: ((_b = config.constraint) == null ? void 0 : _b.height) ?? config.imageData.height
|
|
37
|
+
};
|
|
38
|
+
url.searchParams.set("w", dimensions.width.toString());
|
|
39
|
+
url.searchParams.set("h", dimensions.height.toString());
|
|
40
|
+
url.searchParams.set("fit", "crop");
|
|
41
|
+
return {
|
|
42
|
+
url: url.toString(),
|
|
43
|
+
dimensions,
|
|
44
|
+
alt: changeCase__namespace.sentenceCase(faker.words(faker.range(5, 15))),
|
|
45
|
+
copyright: changeCase__namespace.sentenceCase(faker.words(faker.range(5, 15)))
|
|
46
|
+
};
|
|
47
|
+
}
|
|
48
|
+
};
|
|
49
|
+
exports.buildImageFieldImage = buildImageFieldImage;
|
|
50
|
+
//# sourceMappingURL=buildImageFieldImage.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"buildImageFieldImage.cjs","sources":["../../../src/lib/buildImageFieldImage.ts"],"sourcesContent":["import * as prismicT from \"@prismicio/types\";\nimport * as changeCase from \"change-case\";\n\nimport { createFaker, Faker } from \"../lib/createFaker\";\n\nimport { MockValueStateConfig, MockImageData, Seed } from \"../types\";\n\ntype BuildImageFieldConfig<\n\tState extends prismicT.FieldState = prismicT.FieldState,\n> = {\n\timageData: MockImageData;\n\tconstraint?: NonNullable<\n\t\tprismicT.CustomTypeModelImageField[\"config\"]\n\t>[\"constraint\"];\n} & (\n\t| {\n\t\t\tseed: Seed;\n\t\t\tfaker?: never;\n\t }\n\t| {\n\t\t\tfaker: Faker;\n\t\t\tseed?: never;\n\t }\n) &\n\tPick<MockValueStateConfig<State>, \"state\">;\n\nexport const buildImageFieldImage = <\n\tState extends prismicT.FieldState = prismicT.FieldState,\n>(\n\tconfig: BuildImageFieldConfig<State>,\n): prismicT.ImageFieldImage<State> => {\n\tif (config.state === \"empty\") {\n\t\treturn {\n\t\t\turl: null,\n\t\t\tdimensions: null,\n\t\t\talt: null,\n\t\t\tcopyright: null,\n\t\t} as prismicT.ImageFieldImage<State>;\n\t} else {\n\t\tconst faker = config.faker || createFaker(config.seed);\n\n\t\tconst url = new URL(config.imageData.url);\n\n\t\tconst dimensions = {\n\t\t\twidth: config.constraint?.width ?? config.imageData.width,\n\t\t\theight: config.constraint?.height ?? config.imageData.height,\n\t\t};\n\n\t\turl.searchParams.set(\"w\", dimensions.width.toString());\n\t\turl.searchParams.set(\"h\", dimensions.height.toString());\n\t\turl.searchParams.set(\"fit\", \"crop\");\n\n\t\treturn {\n\t\t\turl: url.toString(),\n\t\t\tdimensions,\n\t\t\talt: changeCase.sentenceCase(faker.words(faker.range(5, 15))),\n\t\t\tcopyright: changeCase.sentenceCase(faker.words(faker.range(5, 15))),\n\t\t} as prismicT.ImageFieldImage<State>;\n\t}\n};\n"],"names":["createFaker","changeCase"],"mappings":";;;;;;;;;;;;;;;;;;;;;AA0Ba,MAAA,uBAAuB,CAGnC,WACoC;;AAChC,MAAA,OAAO,UAAU,SAAS;AACtB,WAAA;AAAA,MACN,KAAK;AAAA,MACL,YAAY;AAAA,MACZ,KAAK;AAAA,MACL,WAAW;AAAA,IAAA;AAAA,SAEN;AACN,UAAM,QAAQ,OAAO,SAASA,YAAAA,YAAY,OAAO,IAAI;AAErD,UAAM,MAAM,IAAI,IAAI,OAAO,UAAU,GAAG;AAExC,UAAM,aAAa;AAAA,MAClB,SAAO,YAAO,eAAP,mBAAmB,UAAS,OAAO,UAAU;AAAA,MACpD,UAAQ,YAAO,eAAP,mBAAmB,WAAU,OAAO,UAAU;AAAA,IAAA;AAGvD,QAAI,aAAa,IAAI,KAAK,WAAW,MAAM,UAAU;AACrD,QAAI,aAAa,IAAI,KAAK,WAAW,OAAO,UAAU;AAClD,QAAA,aAAa,IAAI,OAAO,MAAM;AAE3B,WAAA;AAAA,MACN,KAAK,IAAI,SAAU;AAAA,MACnB;AAAA,MACA,KAAKC,sBAAW,aAAa,MAAM,MAAM,MAAM,MAAM,GAAG,EAAE,CAAC,CAAC;AAAA,MAC5D,WAAWA,sBAAW,aAAa,MAAM,MAAM,MAAM,MAAM,GAAG,EAAE,CAAC,CAAC;AAAA,IAAA;AAAA,EAEnE;AACF;;"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import * as prismicT from "@prismicio/types";
|
|
2
|
+
import { Faker } from "../lib/createFaker";
|
|
3
|
+
import { MockValueStateConfig, MockImageData, Seed } from "../types";
|
|
4
|
+
type BuildImageFieldConfig<State extends prismicT.FieldState = prismicT.FieldState> = {
|
|
5
|
+
imageData: MockImageData;
|
|
6
|
+
constraint?: NonNullable<prismicT.CustomTypeModelImageField["config"]>["constraint"];
|
|
7
|
+
} & ({
|
|
8
|
+
seed: Seed;
|
|
9
|
+
faker?: never;
|
|
10
|
+
} | {
|
|
11
|
+
faker: Faker;
|
|
12
|
+
seed?: never;
|
|
13
|
+
}) & Pick<MockValueStateConfig<State>, "state">;
|
|
14
|
+
export declare const buildImageFieldImage: <State extends prismicT.FieldState = prismicT.FieldState>(config: BuildImageFieldConfig<State>) => prismicT.ImageFieldImage<State>;
|
|
15
|
+
export {};
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import * as changeCase from "change-case";
|
|
2
|
+
import { createFaker } from "./createFaker.js";
|
|
3
|
+
const buildImageFieldImage = (config) => {
|
|
4
|
+
var _a, _b;
|
|
5
|
+
if (config.state === "empty") {
|
|
6
|
+
return {
|
|
7
|
+
url: null,
|
|
8
|
+
dimensions: null,
|
|
9
|
+
alt: null,
|
|
10
|
+
copyright: null
|
|
11
|
+
};
|
|
12
|
+
} else {
|
|
13
|
+
const faker = config.faker || createFaker(config.seed);
|
|
14
|
+
const url = new URL(config.imageData.url);
|
|
15
|
+
const dimensions = {
|
|
16
|
+
width: ((_a = config.constraint) == null ? void 0 : _a.width) ?? config.imageData.width,
|
|
17
|
+
height: ((_b = config.constraint) == null ? void 0 : _b.height) ?? config.imageData.height
|
|
18
|
+
};
|
|
19
|
+
url.searchParams.set("w", dimensions.width.toString());
|
|
20
|
+
url.searchParams.set("h", dimensions.height.toString());
|
|
21
|
+
url.searchParams.set("fit", "crop");
|
|
22
|
+
return {
|
|
23
|
+
url: url.toString(),
|
|
24
|
+
dimensions,
|
|
25
|
+
alt: changeCase.sentenceCase(faker.words(faker.range(5, 15))),
|
|
26
|
+
copyright: changeCase.sentenceCase(faker.words(faker.range(5, 15)))
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
};
|
|
30
|
+
export {
|
|
31
|
+
buildImageFieldImage
|
|
32
|
+
};
|
|
33
|
+
//# sourceMappingURL=buildImageFieldImage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"buildImageFieldImage.js","sources":["../../../src/lib/buildImageFieldImage.ts"],"sourcesContent":["import * as prismicT from \"@prismicio/types\";\nimport * as changeCase from \"change-case\";\n\nimport { createFaker, Faker } from \"../lib/createFaker\";\n\nimport { MockValueStateConfig, MockImageData, Seed } from \"../types\";\n\ntype BuildImageFieldConfig<\n\tState extends prismicT.FieldState = prismicT.FieldState,\n> = {\n\timageData: MockImageData;\n\tconstraint?: NonNullable<\n\t\tprismicT.CustomTypeModelImageField[\"config\"]\n\t>[\"constraint\"];\n} & (\n\t| {\n\t\t\tseed: Seed;\n\t\t\tfaker?: never;\n\t }\n\t| {\n\t\t\tfaker: Faker;\n\t\t\tseed?: never;\n\t }\n) &\n\tPick<MockValueStateConfig<State>, \"state\">;\n\nexport const buildImageFieldImage = <\n\tState extends prismicT.FieldState = prismicT.FieldState,\n>(\n\tconfig: BuildImageFieldConfig<State>,\n): prismicT.ImageFieldImage<State> => {\n\tif (config.state === \"empty\") {\n\t\treturn {\n\t\t\turl: null,\n\t\t\tdimensions: null,\n\t\t\talt: null,\n\t\t\tcopyright: null,\n\t\t} as prismicT.ImageFieldImage<State>;\n\t} else {\n\t\tconst faker = config.faker || createFaker(config.seed);\n\n\t\tconst url = new URL(config.imageData.url);\n\n\t\tconst dimensions = {\n\t\t\twidth: config.constraint?.width ?? config.imageData.width,\n\t\t\theight: config.constraint?.height ?? config.imageData.height,\n\t\t};\n\n\t\turl.searchParams.set(\"w\", dimensions.width.toString());\n\t\turl.searchParams.set(\"h\", dimensions.height.toString());\n\t\turl.searchParams.set(\"fit\", \"crop\");\n\n\t\treturn {\n\t\t\turl: url.toString(),\n\t\t\tdimensions,\n\t\t\talt: changeCase.sentenceCase(faker.words(faker.range(5, 15))),\n\t\t\tcopyright: changeCase.sentenceCase(faker.words(faker.range(5, 15))),\n\t\t} as prismicT.ImageFieldImage<State>;\n\t}\n};\n"],"names":[],"mappings":";;AA0Ba,MAAA,uBAAuB,CAGnC,WACoC;;AAChC,MAAA,OAAO,UAAU,SAAS;AACtB,WAAA;AAAA,MACN,KAAK;AAAA,MACL,YAAY;AAAA,MACZ,KAAK;AAAA,MACL,WAAW;AAAA,IAAA;AAAA,SAEN;AACN,UAAM,QAAQ,OAAO,SAAS,YAAY,OAAO,IAAI;AAErD,UAAM,MAAM,IAAI,IAAI,OAAO,UAAU,GAAG;AAExC,UAAM,aAAa;AAAA,MAClB,SAAO,YAAO,eAAP,mBAAmB,UAAS,OAAO,UAAU;AAAA,MACpD,UAAQ,YAAO,eAAP,mBAAmB,WAAU,OAAO,UAAU;AAAA,IAAA;AAGvD,QAAI,aAAa,IAAI,KAAK,WAAW,MAAM,UAAU;AACrD,QAAI,aAAa,IAAI,KAAK,WAAW,OAAO,UAAU;AAClD,QAAA,aAAa,IAAI,OAAO,MAAM;AAE3B,WAAA;AAAA,MACN,KAAK,IAAI,SAAU;AAAA,MACnB;AAAA,MACA,KAAK,WAAW,aAAa,MAAM,MAAM,MAAM,MAAM,GAAG,EAAE,CAAC,CAAC;AAAA,MAC5D,WAAW,WAAW,aAAa,MAAM,MAAM,MAAM,MAAM,GAAG,EAAE,CAAC,CAAC;AAAA,IAAA;AAAA,EAEnE;AACF;"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
4
|
+
var __publicField = (obj, key, value) => {
|
|
5
|
+
__defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
6
|
+
return value;
|
|
7
|
+
};
|
|
8
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
9
|
+
const lorem = require("./lorem.cjs");
|
|
10
|
+
const PRNG = require("./PRNG.cjs");
|
|
11
|
+
const createFaker = (seed) => {
|
|
12
|
+
return new Faker(seed);
|
|
13
|
+
};
|
|
14
|
+
const DAY_MS = 1e3 * 60 * 60 * 24;
|
|
15
|
+
const YEAR_MS = DAY_MS * 365;
|
|
16
|
+
const YEAR_2022_MS = 52 * (YEAR_MS + DAY_MS / 4);
|
|
17
|
+
class Faker {
|
|
18
|
+
constructor(seed) {
|
|
19
|
+
__publicField(this, "seed");
|
|
20
|
+
__publicField(this, "prng");
|
|
21
|
+
this.seed = seed;
|
|
22
|
+
this.prng = new PRNG.PRNG(seed.toString());
|
|
23
|
+
}
|
|
24
|
+
random() {
|
|
25
|
+
return this.prng.next();
|
|
26
|
+
}
|
|
27
|
+
boolean() {
|
|
28
|
+
return this.random() >= 0.5;
|
|
29
|
+
}
|
|
30
|
+
randomElement(elements) {
|
|
31
|
+
return elements[this.range(0, elements.length)];
|
|
32
|
+
}
|
|
33
|
+
randomElements(elements) {
|
|
34
|
+
const alwaysInclude = this.randomElement(elements);
|
|
35
|
+
return elements.filter((element) => element === alwaysInclude || this.boolean());
|
|
36
|
+
}
|
|
37
|
+
range(min, max) {
|
|
38
|
+
return Math.floor(this.rangeFloat(Math.ceil(min), Math.floor(max)));
|
|
39
|
+
}
|
|
40
|
+
rangeFloat(min, max) {
|
|
41
|
+
return this.random() * (max - min) + min;
|
|
42
|
+
}
|
|
43
|
+
words(length, wordOffset = this.range(0, lorem.loremWords.length)) {
|
|
44
|
+
return lorem.lorem(`${length}w`, wordOffset);
|
|
45
|
+
}
|
|
46
|
+
word() {
|
|
47
|
+
return this.randomElement(lorem.loremWords);
|
|
48
|
+
}
|
|
49
|
+
lorem(length, wordOffset = this.range(0, lorem.loremWords.length)) {
|
|
50
|
+
return lorem.lorem(length, wordOffset);
|
|
51
|
+
}
|
|
52
|
+
url() {
|
|
53
|
+
return `https://${this.word()}.example`;
|
|
54
|
+
}
|
|
55
|
+
hexColor() {
|
|
56
|
+
return `#${this.hash(6)}`;
|
|
57
|
+
}
|
|
58
|
+
hash(length) {
|
|
59
|
+
let hash = "";
|
|
60
|
+
for (let i = 0; i < length; i++) {
|
|
61
|
+
const chars = this.boolean() ? "abcdef" : "0123456789";
|
|
62
|
+
hash += chars[this.range(0, chars.length)];
|
|
63
|
+
}
|
|
64
|
+
return hash;
|
|
65
|
+
}
|
|
66
|
+
date() {
|
|
67
|
+
return new Date(YEAR_2022_MS + this.range(-YEAR_MS * 3, YEAR_MS * 3));
|
|
68
|
+
}
|
|
69
|
+
dateAfter(date) {
|
|
70
|
+
const timestamp = date.getTime();
|
|
71
|
+
return new Date(this.range(timestamp, timestamp + YEAR_MS * 3));
|
|
72
|
+
}
|
|
73
|
+
dateBefore(date) {
|
|
74
|
+
const timestamp = date.getTime();
|
|
75
|
+
return new Date(this.range(timestamp - YEAR_MS * 3, timestamp));
|
|
76
|
+
}
|
|
77
|
+
dateBetween(min, max) {
|
|
78
|
+
return new Date(this.range(min.getTime(), max.getTime()));
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
exports.Faker = Faker;
|
|
82
|
+
exports.createFaker = createFaker;
|
|
83
|
+
//# sourceMappingURL=createFaker.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createFaker.cjs","sources":["../../../src/lib/createFaker.ts"],"sourcesContent":["import { Seed } from \"../types\";\n\nimport { lorem, loremWords } from \"./lorem\";\nimport { PRNG } from \"./PRNG\";\n\nexport const createFaker = (seed: Seed): Faker => {\n\treturn new Faker(seed);\n};\n\nconst DAY_MS = 1000 * 60 * 60 * 24;\nconst YEAR_MS = DAY_MS * 365;\nconst YEAR_2022_MS = 52 * (YEAR_MS + DAY_MS / 4);\n\nexport class Faker {\n\tseed: Seed;\n\n\tprivate prng: PRNG;\n\n\tconstructor(seed: Seed) {\n\t\tthis.seed = seed;\n\n\t\tthis.prng = new PRNG(seed.toString());\n\t}\n\n\trandom(): number {\n\t\treturn this.prng.next();\n\t}\n\n\tboolean(): boolean {\n\t\treturn this.random() >= 0.5;\n\t}\n\n\trandomElement<T>(elements: readonly T[]): T {\n\t\treturn elements[this.range(0, elements.length)];\n\t}\n\n\trandomElements<T>(elements: readonly T[]): T[] {\n\t\tconst alwaysInclude = this.randomElement(elements);\n\n\t\treturn elements.filter(\n\t\t\t(element) => element === alwaysInclude || this.boolean(),\n\t\t);\n\t}\n\n\trange(min: number, max: number): number {\n\t\treturn Math.floor(this.rangeFloat(Math.ceil(min), Math.floor(max)));\n\t}\n\n\trangeFloat(min: number, max: number): number {\n\t\treturn this.random() * (max - min) + min;\n\t}\n\n\twords(length: number, wordOffset = this.range(0, loremWords.length)): string {\n\t\treturn lorem(`${length}w`, wordOffset);\n\t}\n\n\tword(): string {\n\t\treturn this.randomElement(loremWords);\n\t}\n\n\tlorem(\n\t\tlength: Parameters<typeof lorem>[0],\n\t\twordOffset = this.range(0, loremWords.length),\n\t): string {\n\t\treturn lorem(length, wordOffset);\n\t}\n\n\turl(): string {\n\t\treturn `https://${this.word()}.example`;\n\t}\n\n\thexColor(): string {\n\t\treturn `#${this.hash(6)}`;\n\t}\n\n\thash(length: number): string {\n\t\tlet hash = \"\";\n\n\t\tfor (let i = 0; i < length; i++) {\n\t\t\tconst chars = this.boolean() ? \"abcdef\" : \"0123456789\";\n\n\t\t\thash += chars[this.range(0, chars.length)];\n\t\t}\n\n\t\treturn hash;\n\t}\n\n\tdate(): Date {\n\t\treturn new Date(YEAR_2022_MS + this.range(-YEAR_MS * 3, YEAR_MS * 3));\n\t}\n\n\tdateAfter(date: Date): Date {\n\t\tconst timestamp = date.getTime();\n\n\t\treturn new Date(this.range(timestamp, timestamp + YEAR_MS * 3));\n\t}\n\n\tdateBefore(date: Date): Date {\n\t\tconst timestamp = date.getTime();\n\n\t\treturn new Date(this.range(timestamp - YEAR_MS * 3, timestamp));\n\t}\n\n\tdateBetween(min: Date, max: Date): Date {\n\t\treturn new Date(this.range(min.getTime(), max.getTime()));\n\t}\n}\n"],"names":["PRNG","loremWords","lorem"],"mappings":";;;;;;;;;;AAKa,MAAA,cAAc,CAAC,SAAqB;AACzC,SAAA,IAAI,MAAM,IAAI;AACtB;AAEA,MAAM,SAAS,MAAO,KAAK,KAAK;AAChC,MAAM,UAAU,SAAS;AACzB,MAAM,eAAe,MAAM,UAAU,SAAS;MAEjC,MAAK;AAAA,EAKjB,YAAY,MAAU;AAJtB;AAEQ;AAGP,SAAK,OAAO;AAEZ,SAAK,OAAO,IAAIA,KAAAA,KAAK,KAAK,SAAU,CAAA;AAAA,EACrC;AAAA,EAEA,SAAM;AACE,WAAA,KAAK,KAAK;EAClB;AAAA,EAEA,UAAO;AACC,WAAA,KAAK,OAAY,KAAA;AAAA,EACzB;AAAA,EAEA,cAAiB,UAAsB;AACtC,WAAO,SAAS,KAAK,MAAM,GAAG,SAAS,MAAM;AAAA,EAC9C;AAAA,EAEA,eAAkB,UAAsB;AACjC,UAAA,gBAAgB,KAAK,cAAc,QAAQ;AAE1C,WAAA,SAAS,OACf,CAAC,YAAY,YAAY,iBAAiB,KAAK,SAAS;AAAA,EAE1D;AAAA,EAEA,MAAM,KAAa,KAAW;AAC7B,WAAO,KAAK,MAAM,KAAK,WAAW,KAAK,KAAK,GAAG,GAAG,KAAK,MAAM,GAAG,CAAC,CAAC;AAAA,EACnE;AAAA,EAEA,WAAW,KAAa,KAAW;AAClC,WAAO,KAAK,OAAY,KAAA,MAAM,OAAO;AAAA,EACtC;AAAA,EAEA,MAAM,QAAgB,aAAa,KAAK,MAAM,GAAGC,MAAAA,WAAW,MAAM,GAAC;AAC3D,WAAAC,MAAAA,MAAM,GAAG,WAAW,UAAU;AAAA,EACtC;AAAA,EAEA,OAAI;AACI,WAAA,KAAK,cAAcD,MAAAA,UAAU;AAAA,EACrC;AAAA,EAEA,MACC,QACA,aAAa,KAAK,MAAM,GAAGA,MAAAA,WAAW,MAAM,GAAC;AAEtC,WAAAC,MAAA,MAAM,QAAQ,UAAU;AAAA,EAChC;AAAA,EAEA,MAAG;AACK,WAAA,WAAW,KAAK,KAAI;AAAA,EAC5B;AAAA,EAEA,WAAQ;AACA,WAAA,IAAI,KAAK,KAAK,CAAC;AAAA,EACvB;AAAA,EAEA,KAAK,QAAc;AAClB,QAAI,OAAO;AAEX,aAAS,IAAI,GAAG,IAAI,QAAQ,KAAK;AAChC,YAAM,QAAQ,KAAK,QAAS,IAAG,WAAW;AAE1C,cAAQ,MAAM,KAAK,MAAM,GAAG,MAAM,MAAM;AAAA,IACxC;AAEM,WAAA;AAAA,EACR;AAAA,EAEA,OAAI;AACI,WAAA,IAAI,KAAK,eAAe,KAAK,MAAM,CAAC,UAAU,GAAG,UAAU,CAAC,CAAC;AAAA,EACrE;AAAA,EAEA,UAAU,MAAU;AACb,UAAA,YAAY,KAAK;AAEhB,WAAA,IAAI,KAAK,KAAK,MAAM,WAAW,YAAY,UAAU,CAAC,CAAC;AAAA,EAC/D;AAAA,EAEA,WAAW,MAAU;AACd,UAAA,YAAY,KAAK;AAEhB,WAAA,IAAI,KAAK,KAAK,MAAM,YAAY,UAAU,GAAG,SAAS,CAAC;AAAA,EAC/D;AAAA,EAEA,YAAY,KAAW,KAAS;AACxB,WAAA,IAAI,KAAK,KAAK,MAAM,IAAI,WAAW,IAAI,QAAS,CAAA,CAAC;AAAA,EACzD;AACA;;;"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { Seed } from "../types";
|
|
2
|
+
import { lorem } from "./lorem";
|
|
3
|
+
export declare const createFaker: (seed: Seed) => Faker;
|
|
4
|
+
export declare class Faker {
|
|
5
|
+
seed: Seed;
|
|
6
|
+
private prng;
|
|
7
|
+
constructor(seed: Seed);
|
|
8
|
+
random(): number;
|
|
9
|
+
boolean(): boolean;
|
|
10
|
+
randomElement<T>(elements: readonly T[]): T;
|
|
11
|
+
randomElements<T>(elements: readonly T[]): T[];
|
|
12
|
+
range(min: number, max: number): number;
|
|
13
|
+
rangeFloat(min: number, max: number): number;
|
|
14
|
+
words(length: number, wordOffset?: number): string;
|
|
15
|
+
word(): string;
|
|
16
|
+
lorem(length: Parameters<typeof lorem>[0], wordOffset?: number): string;
|
|
17
|
+
url(): string;
|
|
18
|
+
hexColor(): string;
|
|
19
|
+
hash(length: number): string;
|
|
20
|
+
date(): Date;
|
|
21
|
+
dateAfter(date: Date): Date;
|
|
22
|
+
dateBefore(date: Date): Date;
|
|
23
|
+
dateBetween(min: Date, max: Date): Date;
|
|
24
|
+
}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
3
|
+
var __publicField = (obj, key, value) => {
|
|
4
|
+
__defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
5
|
+
return value;
|
|
6
|
+
};
|
|
7
|
+
import { lorem, loremWords } from "./lorem.js";
|
|
8
|
+
import { PRNG } from "./PRNG.js";
|
|
9
|
+
const createFaker = (seed) => {
|
|
10
|
+
return new Faker(seed);
|
|
11
|
+
};
|
|
12
|
+
const DAY_MS = 1e3 * 60 * 60 * 24;
|
|
13
|
+
const YEAR_MS = DAY_MS * 365;
|
|
14
|
+
const YEAR_2022_MS = 52 * (YEAR_MS + DAY_MS / 4);
|
|
15
|
+
class Faker {
|
|
16
|
+
constructor(seed) {
|
|
17
|
+
__publicField(this, "seed");
|
|
18
|
+
__publicField(this, "prng");
|
|
19
|
+
this.seed = seed;
|
|
20
|
+
this.prng = new PRNG(seed.toString());
|
|
21
|
+
}
|
|
22
|
+
random() {
|
|
23
|
+
return this.prng.next();
|
|
24
|
+
}
|
|
25
|
+
boolean() {
|
|
26
|
+
return this.random() >= 0.5;
|
|
27
|
+
}
|
|
28
|
+
randomElement(elements) {
|
|
29
|
+
return elements[this.range(0, elements.length)];
|
|
30
|
+
}
|
|
31
|
+
randomElements(elements) {
|
|
32
|
+
const alwaysInclude = this.randomElement(elements);
|
|
33
|
+
return elements.filter((element) => element === alwaysInclude || this.boolean());
|
|
34
|
+
}
|
|
35
|
+
range(min, max) {
|
|
36
|
+
return Math.floor(this.rangeFloat(Math.ceil(min), Math.floor(max)));
|
|
37
|
+
}
|
|
38
|
+
rangeFloat(min, max) {
|
|
39
|
+
return this.random() * (max - min) + min;
|
|
40
|
+
}
|
|
41
|
+
words(length, wordOffset = this.range(0, loremWords.length)) {
|
|
42
|
+
return lorem(`${length}w`, wordOffset);
|
|
43
|
+
}
|
|
44
|
+
word() {
|
|
45
|
+
return this.randomElement(loremWords);
|
|
46
|
+
}
|
|
47
|
+
lorem(length, wordOffset = this.range(0, loremWords.length)) {
|
|
48
|
+
return lorem(length, wordOffset);
|
|
49
|
+
}
|
|
50
|
+
url() {
|
|
51
|
+
return `https://${this.word()}.example`;
|
|
52
|
+
}
|
|
53
|
+
hexColor() {
|
|
54
|
+
return `#${this.hash(6)}`;
|
|
55
|
+
}
|
|
56
|
+
hash(length) {
|
|
57
|
+
let hash = "";
|
|
58
|
+
for (let i = 0; i < length; i++) {
|
|
59
|
+
const chars = this.boolean() ? "abcdef" : "0123456789";
|
|
60
|
+
hash += chars[this.range(0, chars.length)];
|
|
61
|
+
}
|
|
62
|
+
return hash;
|
|
63
|
+
}
|
|
64
|
+
date() {
|
|
65
|
+
return new Date(YEAR_2022_MS + this.range(-YEAR_MS * 3, YEAR_MS * 3));
|
|
66
|
+
}
|
|
67
|
+
dateAfter(date) {
|
|
68
|
+
const timestamp = date.getTime();
|
|
69
|
+
return new Date(this.range(timestamp, timestamp + YEAR_MS * 3));
|
|
70
|
+
}
|
|
71
|
+
dateBefore(date) {
|
|
72
|
+
const timestamp = date.getTime();
|
|
73
|
+
return new Date(this.range(timestamp - YEAR_MS * 3, timestamp));
|
|
74
|
+
}
|
|
75
|
+
dateBetween(min, max) {
|
|
76
|
+
return new Date(this.range(min.getTime(), max.getTime()));
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
export {
|
|
80
|
+
Faker,
|
|
81
|
+
createFaker
|
|
82
|
+
};
|
|
83
|
+
//# sourceMappingURL=createFaker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createFaker.js","sources":["../../../src/lib/createFaker.ts"],"sourcesContent":["import { Seed } from \"../types\";\n\nimport { lorem, loremWords } from \"./lorem\";\nimport { PRNG } from \"./PRNG\";\n\nexport const createFaker = (seed: Seed): Faker => {\n\treturn new Faker(seed);\n};\n\nconst DAY_MS = 1000 * 60 * 60 * 24;\nconst YEAR_MS = DAY_MS * 365;\nconst YEAR_2022_MS = 52 * (YEAR_MS + DAY_MS / 4);\n\nexport class Faker {\n\tseed: Seed;\n\n\tprivate prng: PRNG;\n\n\tconstructor(seed: Seed) {\n\t\tthis.seed = seed;\n\n\t\tthis.prng = new PRNG(seed.toString());\n\t}\n\n\trandom(): number {\n\t\treturn this.prng.next();\n\t}\n\n\tboolean(): boolean {\n\t\treturn this.random() >= 0.5;\n\t}\n\n\trandomElement<T>(elements: readonly T[]): T {\n\t\treturn elements[this.range(0, elements.length)];\n\t}\n\n\trandomElements<T>(elements: readonly T[]): T[] {\n\t\tconst alwaysInclude = this.randomElement(elements);\n\n\t\treturn elements.filter(\n\t\t\t(element) => element === alwaysInclude || this.boolean(),\n\t\t);\n\t}\n\n\trange(min: number, max: number): number {\n\t\treturn Math.floor(this.rangeFloat(Math.ceil(min), Math.floor(max)));\n\t}\n\n\trangeFloat(min: number, max: number): number {\n\t\treturn this.random() * (max - min) + min;\n\t}\n\n\twords(length: number, wordOffset = this.range(0, loremWords.length)): string {\n\t\treturn lorem(`${length}w`, wordOffset);\n\t}\n\n\tword(): string {\n\t\treturn this.randomElement(loremWords);\n\t}\n\n\tlorem(\n\t\tlength: Parameters<typeof lorem>[0],\n\t\twordOffset = this.range(0, loremWords.length),\n\t): string {\n\t\treturn lorem(length, wordOffset);\n\t}\n\n\turl(): string {\n\t\treturn `https://${this.word()}.example`;\n\t}\n\n\thexColor(): string {\n\t\treturn `#${this.hash(6)}`;\n\t}\n\n\thash(length: number): string {\n\t\tlet hash = \"\";\n\n\t\tfor (let i = 0; i < length; i++) {\n\t\t\tconst chars = this.boolean() ? \"abcdef\" : \"0123456789\";\n\n\t\t\thash += chars[this.range(0, chars.length)];\n\t\t}\n\n\t\treturn hash;\n\t}\n\n\tdate(): Date {\n\t\treturn new Date(YEAR_2022_MS + this.range(-YEAR_MS * 3, YEAR_MS * 3));\n\t}\n\n\tdateAfter(date: Date): Date {\n\t\tconst timestamp = date.getTime();\n\n\t\treturn new Date(this.range(timestamp, timestamp + YEAR_MS * 3));\n\t}\n\n\tdateBefore(date: Date): Date {\n\t\tconst timestamp = date.getTime();\n\n\t\treturn new Date(this.range(timestamp - YEAR_MS * 3, timestamp));\n\t}\n\n\tdateBetween(min: Date, max: Date): Date {\n\t\treturn new Date(this.range(min.getTime(), max.getTime()));\n\t}\n}\n"],"names":[],"mappings":";;;;;;;;AAKa,MAAA,cAAc,CAAC,SAAqB;AACzC,SAAA,IAAI,MAAM,IAAI;AACtB;AAEA,MAAM,SAAS,MAAO,KAAK,KAAK;AAChC,MAAM,UAAU,SAAS;AACzB,MAAM,eAAe,MAAM,UAAU,SAAS;MAEjC,MAAK;AAAA,EAKjB,YAAY,MAAU;AAJtB;AAEQ;AAGP,SAAK,OAAO;AAEZ,SAAK,OAAO,IAAI,KAAK,KAAK,SAAU,CAAA;AAAA,EACrC;AAAA,EAEA,SAAM;AACE,WAAA,KAAK,KAAK;EAClB;AAAA,EAEA,UAAO;AACC,WAAA,KAAK,OAAY,KAAA;AAAA,EACzB;AAAA,EAEA,cAAiB,UAAsB;AACtC,WAAO,SAAS,KAAK,MAAM,GAAG,SAAS,MAAM;AAAA,EAC9C;AAAA,EAEA,eAAkB,UAAsB;AACjC,UAAA,gBAAgB,KAAK,cAAc,QAAQ;AAE1C,WAAA,SAAS,OACf,CAAC,YAAY,YAAY,iBAAiB,KAAK,SAAS;AAAA,EAE1D;AAAA,EAEA,MAAM,KAAa,KAAW;AAC7B,WAAO,KAAK,MAAM,KAAK,WAAW,KAAK,KAAK,GAAG,GAAG,KAAK,MAAM,GAAG,CAAC,CAAC;AAAA,EACnE;AAAA,EAEA,WAAW,KAAa,KAAW;AAClC,WAAO,KAAK,OAAY,KAAA,MAAM,OAAO;AAAA,EACtC;AAAA,EAEA,MAAM,QAAgB,aAAa,KAAK,MAAM,GAAG,WAAW,MAAM,GAAC;AAC3D,WAAA,MAAM,GAAG,WAAW,UAAU;AAAA,EACtC;AAAA,EAEA,OAAI;AACI,WAAA,KAAK,cAAc,UAAU;AAAA,EACrC;AAAA,EAEA,MACC,QACA,aAAa,KAAK,MAAM,GAAG,WAAW,MAAM,GAAC;AAEtC,WAAA,MAAM,QAAQ,UAAU;AAAA,EAChC;AAAA,EAEA,MAAG;AACK,WAAA,WAAW,KAAK,KAAI;AAAA,EAC5B;AAAA,EAEA,WAAQ;AACA,WAAA,IAAI,KAAK,KAAK,CAAC;AAAA,EACvB;AAAA,EAEA,KAAK,QAAc;AAClB,QAAI,OAAO;AAEX,aAAS,IAAI,GAAG,IAAI,QAAQ,KAAK;AAChC,YAAM,QAAQ,KAAK,QAAS,IAAG,WAAW;AAE1C,cAAQ,MAAM,KAAK,MAAM,GAAG,MAAM,MAAM;AAAA,IACxC;AAEM,WAAA;AAAA,EACR;AAAA,EAEA,OAAI;AACI,WAAA,IAAI,KAAK,eAAe,KAAK,MAAM,CAAC,UAAU,GAAG,UAAU,CAAC,CAAC;AAAA,EACrE;AAAA,EAEA,UAAU,MAAU;AACb,UAAA,YAAY,KAAK;AAEhB,WAAA,IAAI,KAAK,KAAK,MAAM,WAAW,YAAY,UAAU,CAAC,CAAC;AAAA,EAC/D;AAAA,EAEA,WAAW,MAAU;AACd,UAAA,YAAY,KAAK;AAEhB,WAAA,IAAI,KAAK,KAAK,MAAM,YAAY,UAAU,GAAG,SAAS,CAAC;AAAA,EAC/D;AAAA,EAEA,YAAY,KAAW,KAAS;AACxB,WAAA,IAAI,KAAK,KAAK,MAAM,IAAI,WAAW,IAAI,QAAS,CAAA,CAAC;AAAA,EACzD;AACA;"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
+
const changeCase = require("change-case");
|
|
4
|
+
const createFaker = require("./createFaker.cjs");
|
|
5
|
+
function _interopNamespaceDefault(e) {
|
|
6
|
+
const n = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } });
|
|
7
|
+
if (e) {
|
|
8
|
+
for (const k in e) {
|
|
9
|
+
if (k !== "default") {
|
|
10
|
+
const d = Object.getOwnPropertyDescriptor(e, k);
|
|
11
|
+
Object.defineProperty(n, k, d.get ? d : {
|
|
12
|
+
enumerable: true,
|
|
13
|
+
get: () => e[k]
|
|
14
|
+
});
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
n.default = e;
|
|
19
|
+
return Object.freeze(n);
|
|
20
|
+
}
|
|
21
|
+
const changeCase__namespace = /* @__PURE__ */ _interopNamespaceDefault(changeCase);
|
|
22
|
+
const generateCustomTypeId = (config) => {
|
|
23
|
+
const faker = config.faker || createFaker.createFaker(config.seed);
|
|
24
|
+
return changeCase__namespace.snakeCase(faker.words(faker.range(1, 3)));
|
|
25
|
+
};
|
|
26
|
+
exports.generateCustomTypeId = generateCustomTypeId;
|
|
27
|
+
//# sourceMappingURL=generateCustomTypeId.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generateCustomTypeId.cjs","sources":["../../../src/lib/generateCustomTypeId.ts"],"sourcesContent":["import * as changeCase from \"change-case\";\n\nimport { createFaker, Faker } from \"../lib/createFaker\";\n\nimport { Seed } from \"../types\";\n\ntype GenerateFieldIdConfig =\n\t| {\n\t\t\tseed: Seed;\n\t\t\tfaker?: never;\n\t }\n\t| {\n\t\t\tfaker: Faker;\n\t\t\tseed?: never;\n\t };\n\nexport const generateCustomTypeId = (config: GenerateFieldIdConfig): string => {\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":";;;;;;;;;;;;;;;;;;;;;AAgBa,MAAA,uBAAuB,CAAC,WAAyC;AAC7E,QAAM,QAAQ,OAAO,SAASA,YAAAA,YAAY,OAAO,IAAI;AAE9C,SAAAC,sBAAW,UAAU,MAAM,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,CAAC;AAC3D;;"}
|