@prismicio/mock
Version:
Generate mock Prismic documents, fields, Slices, and models for development and testing environments
1 lines • 1.61 kB
Source Map (JSON)
{"version":3,"file":"contentRelationship.cjs","sources":["../../../src/model/contentRelationship.ts"],"sourcesContent":["import * as prismic from \"@prismicio/client\";\n\nimport { capitalCase, sentenceCase } from \"../lib/changeCase\";\nimport { createFaker } from \"../lib/createFaker\";\n\nimport { MockModelConfig } from \"../types\";\n\nexport type MockContentRelationshipModelConfig<\n\tCustomTypeIDs extends string = string,\n\tTags extends string = string,\n> = {\n\tcustomTypeIDs?: readonly CustomTypeIDs[];\n\ttags?: readonly Tags[];\n} & MockModelConfig;\n\nexport const contentRelationship = <\n\tCustomTypeIDs extends string,\n\tTags extends string,\n>(\n\tconfig: MockContentRelationshipModelConfig<CustomTypeIDs, Tags>,\n): prismic.CustomTypeModelContentRelationshipField<CustomTypeIDs, Tags> => {\n\tconst faker = config.faker || createFaker(config.seed);\n\n\treturn {\n\t\ttype: prismic.CustomTypeModelFieldType.Link,\n\t\tconfig: {\n\t\t\tlabel: capitalCase(faker.word()),\n\t\t\tplaceholder: sentenceCase(faker.words(3)),\n\t\t\tselect: prismic.CustomTypeModelLinkSelectType.Document,\n\t\t\tcustomtypes: config.customTypeIDs,\n\t\t\ttags: config.tags,\n\t\t},\n\t};\n};\n"],"names":["createFaker","prismic","capitalCase","sentenceCase"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAea,MAAA,sBAAsB,CAIlC,WACyE;AACzE,QAAM,QAAQ,OAAO,SAASA,YAAAA,YAAY,OAAO,IAAI;AAE9C,SAAA;AAAA,IACN,MAAMC,mBAAQ,yBAAyB;AAAA,IACvC,QAAQ;AAAA,MACP,OAAOC,WAAA,YAAY,MAAM,MAAM;AAAA,MAC/B,aAAaC,WAAAA,aAAa,MAAM,MAAM,CAAC,CAAC;AAAA,MACxC,QAAQF,mBAAQ,8BAA8B;AAAA,MAC9C,aAAa,OAAO;AAAA,MACpB,MAAM,OAAO;AAAA,IACb;AAAA,EAAA;AAEH;;"}