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

Function createTemplateFile

packages/create/src/template-file.ts:50–217  ·  view source on GitHub ↗
(environment: Environment, options: Options)

Source from the content-addressed store, hash-verified

48}
49
50export function createTemplateFile(environment: Environment, options: Options) {
51 function getPackageManagerAddScript(
52 packageName: string,
53 isDev: boolean = false,
54 ) {
55 return formatCommand(
56 getPackageManagerInstallCommand(
57 options.packageManager,
58 packageName,
59 isDev,
60 ),
61 )
62 }
63 function getPackageManagerRunScript(
64 scriptName: string,
65 args: Array<string> = [],
66 ) {
67 return formatCommand(
68 getPackageManagerScriptCommand(options.packageManager, [
69 scriptName,
70 ...args,
71 ]),
72 )
73 }
74 function getPackageManagerExecuteScript(
75 pkg: string,
76 args: Array<string> = [],
77 ) {
78 return formatCommand(
79 getPackageManagerExecuteCommand(options.packageManager, pkg, args),
80 )
81 }
82
83 class IgnoreFileError extends Error {
84 constructor() {
85 super('ignoreFile')
86 this.name = 'IgnoreFileError'
87 }
88 }
89
90 // Collect integrations and tag them with source add-on for attribution
91 const integrations: Array<IntegrationWithSource> = []
92 for (const addOn of options.chosenAddOns) {
93 if (addOn.integrations) {
94 for (const integration of addOn.integrations) {
95 integrations.push({
96 ...integration,
97 _sourceId: addOn.id,
98 _sourceName: addOn.name,
99 })
100 }
101 }
102 }
103
104 const routes: Array<Required<AddOn>['routes'][number]> = []
105 for (const addOn of options.chosenAddOns) {
106 if (addOn.routes) {
107 routes.push(...addOn.routes)

Callers 5

writeFilesFunction · 0.70
writeFilesFunction · 0.70

Calls 7

renderFunction · 0.85
errorMethod · 0.80
toStringMethod · 0.80
relativePathFunction · 0.70
convertDotFilesAndPathsFunction · 0.70
normalizeSourceExtensionFunction · 0.70
replaceMethod · 0.65

Tested by

no test coverage detected