MCPcopy Index your code
hub / github.com/simstudioai/sim / resolveCreateTarget

Function resolveCreateTarget

apps/sim/lib/copilot/vfs/resource-writer.ts:100–128  ·  view source on GitHub ↗
(
  workspaceId: string,
  path: string
)

Source from the content-addressed store, hash-verified

98}
99
100async function resolveCreateTarget(
101 workspaceId: string,
102 path: string
103): Promise<ResolvedCreateTarget> {
104 const parsed = parseWorkspaceFileCreatePath(path)
105 const folderId =
106 parsed.folderSegments.length > 0
107 ? await findWorkspaceFileFolderIdByPath(workspaceId, parsed.folderSegments, {
108 includeReservedSystemFolders: true,
109 })
110 : null
111
112 if (parsed.folderSegments.length > 0 && !folderId) {
113 throw new Error(
114 `Directory not yet created: ${displayFolderPath(parsed.folderSegments)}. Create the directory first, then retry the file write.`
115 )
116 }
117
118 const existing = await getWorkspaceFileByName(workspaceId, parsed.fileName, { folderId })
119 if (existing) {
120 throw new Error(`File already exists at ${parsed.vfsPath}. Use mode "overwrite" to update it.`)
121 }
122
123 return {
124 fileName: parsed.fileName,
125 folderId,
126 vfsPath: parsed.vfsPath,
127 }
128}
129
130function vfsPathForRecord(record: WorkspaceFileRecord): string {
131 return canonicalWorkspaceFilePath({ folderPath: record.folderPath, name: record.name })

Callers 2

writeWorkspaceFileByPathFunction · 0.85

Calls 4

getWorkspaceFileByNameFunction · 0.90
displayFolderPathFunction · 0.85

Tested by

no test coverage detected