@prismicio/mock
Version:
Generate mock Prismic documents, fields, Slices, and models for development and testing environments
1 lines • 1.17 kB
Source Map (JSON)
{"version":3,"file":"buildEmbedField.cjs","sources":["../../../src/lib/buildEmbedField.ts"],"sourcesContent":["import * as prismic from \"@prismicio/client\";\n\nimport { createFaker, Faker } from \"../lib/createFaker\";\n\nimport { Seed } from \"../types\";\n\ntype BuildEmbedFieldConfig<Data extends prismic.AnyOEmbed = prismic.AnyOEmbed> =\n\t{\n\t\turl?: string;\n\t\thtml?: string;\n\t\tdata: Data;\n\t} & (\n\t\t| {\n\t\t\t\tseed: Seed;\n\t\t\t\tfaker?: never;\n\t\t }\n\t\t| {\n\t\t\t\tfaker: Faker;\n\t\t\t\tseed?: never;\n\t\t }\n\t);\n\nexport const buildEmbedField = <\n\tData extends prismic.AnyOEmbed = prismic.AnyOEmbed,\n>(\n\tconfig: BuildEmbedFieldConfig<Data>,\n): prismic.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 prismic.EmbedField<Data, \"filled\">;\n};\n"],"names":["createFaker"],"mappings":";;;AAsBa,MAAA,kBAAkB,CAG9B,WACuC;AACvC,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;;"}