Skip to content

Commit 4a09e7a

Browse files
committed
feat: add extractName function to improve resource ID generation
- Introduced a new utility function, extractName, to retrieve the name of a resource from either its name property or its function's name. - Updated the generateResourceId function to utilize extractName, enhancing the logic for generating resource IDs based on available names.
1 parent 09415f0 commit 4a09e7a

1 file changed

Lines changed: 11 additions & 3 deletions

File tree

src/pull.ts

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -119,10 +119,18 @@ function slugify(name: string): string {
119119
.replace(/-+/g, "-");
120120
}
121121

122+
function extractName(resource: VapiResource): string | undefined {
123+
if (resource.name) return resource.name;
124+
// Tools store their name under function.name
125+
const fn = resource.function as Record<string, unknown> | undefined;
126+
if (fn?.name && typeof fn.name === "string") return fn.name;
127+
return undefined;
128+
}
129+
122130
function generateResourceId(resource: VapiResource, existingIds: Set<string>): string {
123-
// Use name if available, otherwise use type + short id
124-
const baseName = resource.name
125-
? slugify(resource.name)
131+
const name = extractName(resource);
132+
const baseName = name
133+
? slugify(name)
126134
: `resource-${resource.id.slice(0, 8)}`;
127135

128136
let resourceId = baseName;

0 commit comments

Comments
 (0)