Files
openclaw/src/plugins/contracts/shared.ts
2026-04-06 22:21:00 +01:00

17 lines
436 B
TypeScript

export function uniqueStrings(
values: readonly string[] | undefined,
normalize: (value: string) => string = (value) => value,
): string[] {
const result: string[] = [];
const seen = new Set<string>();
for (const value of values ?? []) {
const normalized = normalize(value);
if (!normalized || seen.has(normalized)) {
continue;
}
seen.add(normalized);
result.push(normalized);
}
return result;
}