MCPcopy Create free account
hub / github.com/TanStack/cli / getRawRegistry

Function getRawRegistry

packages/create/src/registry.ts:56–87  ·  view source on GitHub ↗
(
  registryUrl?: string,
)

Source from the content-addressed store, hash-verified

54}
55
56export async function getRawRegistry(
57 registryUrl?: string,
58): Promise<Registry | undefined> {
59 const regUrl = registryUrl || process.env.CTA_REGISTRY
60 if (regUrl) {
61 const url = handleSpecialURL(regUrl)
62 const registry = (await fetch(url).then((res) => res.json())) as Registry
63 const parsedRegistry = registrySchema.parse(registry)
64
65 if (!parsedRegistry.starters && parsedRegistry.templates) {
66 parsedRegistry.starters = parsedRegistry.templates
67 }
68
69 if (!parsedRegistry.templates && parsedRegistry.starters) {
70 parsedRegistry.templates = parsedRegistry.starters
71 }
72
73 for (const addOn of parsedRegistry['add-ons'] || []) {
74 addOn.url = absolutizeUrl(url, addOn.url)
75 }
76 for (const template of parsedRegistry.templates || []) {
77 template.url = absolutizeUrl(url, template.url)
78 if (template.banner) {
79 template.banner = absolutizeUrl(url, template.banner)
80 }
81 }
82
83 parsedRegistry.starters = parsedRegistry.templates
84
85 return parsedRegistry
86 }
87}
88
89async function getAddOns(registry: Registry): Promise<Array<AddOn>> {
90 const addOns: Array<AddOn> = []

Callers 5

resolveStarterSpecifierFunction · 0.90
listTemplateChoicesFunction · 0.90
getRegistryAddOnsFunction · 0.85
getRegistryStartersFunction · 0.85
getRegistryFunction · 0.85

Calls 3

handleSpecialURLFunction · 0.85
absolutizeUrlFunction · 0.85
jsonMethod · 0.80

Tested by

no test coverage detected