refactor: share onboarding allowlist entry parsing

This commit is contained in:
Peter Steinberger
2026-03-07 23:34:42 +00:00
parent 766d76ef9a
commit f319ec2dac
6 changed files with 13 additions and 31 deletions

View File

@@ -14,6 +14,7 @@ import {
setTopLevelChannelAllowFrom,
setTopLevelChannelDmPolicyWithAllowFrom,
setTopLevelChannelGroupPolicy,
splitOnboardingEntries,
} from "openclaw/plugin-sdk/msteams";
import {
parseMSTeamsTeamEntry,
@@ -41,13 +42,6 @@ function setMSTeamsAllowFrom(cfg: OpenClawConfig, allowFrom: string[]): OpenClaw
});
}
function parseAllowFromInput(raw: string): string[] {
return raw
.split(/[\n,;]+/g)
.map((entry) => entry.trim())
.filter(Boolean);
}
function looksLikeGuid(value: string): boolean {
return /^[0-9a-fA-F-]{16,}$/.test(value);
}
@@ -102,7 +96,7 @@ async function promptMSTeamsAllowFrom(params: {
initialValue: existing[0] ? String(existing[0]) : undefined,
validate: (value) => (String(value ?? "").trim() ? undefined : "Required"),
});
const parts = parseAllowFromInput(String(entry));
const parts = splitOnboardingEntries(String(entry));
if (parts.length === 0) {
await params.prompter.note("Enter at least one user.", "MS Teams allowlist");
continue;