@prismicio/client
Version:
The official JavaScript + TypeScript client library for Prismic
1 lines • 1.39 kB
Source Map (JSON)
{"version":3,"file":"getRepositoryName.cjs","sources":["../../src/getRepositoryName.ts"],"sourcesContent":["import { PrismicError } from \"./errors/PrismicError\"\n\n/**\n * Get a Prismic repository's name from its standard Prismic Document API or\n * GraphQL endpoint.\n *\n * @param repositoryEndpoint - Prismic Document API endpoint for the repository.\n *\n * @returns The Prismic repository's name.\n *\n * @throws {@link Error} Thrown if an invalid Prismic Document API endpoint is\n * provided.\n */\nexport const getRepositoryName = (repositoryEndpoint: string): string => {\n\ttry {\n\t\tconst hostname = new URL(repositoryEndpoint).hostname\n\n\t\tif (\n\t\t\thostname.endsWith(\"prismic.io\") || // Production\n\t\t\thostname.endsWith(\"wroom.io\") || // Staging\n\t\t\thostname.endsWith(\"wroom.test\") // Dev\n\t\t) {\n\t\t\treturn hostname.split(\".\")[0]\n\t\t}\n\t} catch {}\n\n\tthrow new PrismicError(\n\t\t`An invalid Prismic Document API endpoint was provided: ${repositoryEndpoint}`,\n\t\tundefined,\n\t\tundefined,\n\t)\n}\n"],"names":["PrismicError"],"mappings":";;;AAaa,MAAA,oBAAoB,CAAC,uBAAsC;AACnE,MAAA;AACH,UAAM,WAAW,IAAI,IAAI,kBAAkB,EAAE;AAG5C,QAAA,SAAS,SAAS,YAAY;AAAA,IAC9B,SAAS,SAAS,UAAU;AAAA,IAC5B,SAAS,SAAS,YAAY,GAC7B;AACD,aAAO,SAAS,MAAM,GAAG,EAAE,CAAC;AAAA,IAAA;AAAA,EAC7B,QACO;AAAA,EAAA;AAER,QAAM,IAAIA,aACT,aAAA,0DAA0D,kBAAkB,IAC5E,QACA,MAAS;AAEX;;"}