mirror of https://github.com/openclaw/openclaw.git
23 lines
502 B
TypeScript
23 lines
502 B
TypeScript
export function normalizePackageTagInput(
|
|
value: string | undefined | null,
|
|
packageNames: readonly string[],
|
|
): string | null {
|
|
const trimmed = value?.trim();
|
|
if (!trimmed) {
|
|
return null;
|
|
}
|
|
|
|
for (const packageName of packageNames) {
|
|
if (trimmed === packageName) {
|
|
return null;
|
|
}
|
|
const prefix = `${packageName}@`;
|
|
if (trimmed.startsWith(prefix)) {
|
|
const tag = trimmed.slice(prefix.length).trim();
|
|
return tag ? tag : null;
|
|
}
|
|
}
|
|
|
|
return trimmed;
|
|
}
|