openclaw
Version:
Multi-channel AI gateway with extensible messaging integrations
17 lines (16 loc) • 589 B
JavaScript
import { a as normalizeLowercaseStringOrEmpty } from "./string-coerce-mnp54Vah.js";
//#region src/cli/profile-utils.ts
const PROFILE_NAME_RE = /^[a-z0-9][a-z0-9_-]{0,63}$/i;
function isValidProfileName(value) {
if (!value) return false;
return PROFILE_NAME_RE.test(value);
}
function normalizeProfileName(raw) {
const profile = raw?.trim();
if (!profile) return null;
if (normalizeLowercaseStringOrEmpty(profile) === "default") return null;
if (!isValidProfileName(profile)) return null;
return profile;
}
//#endregion
export { normalizeProfileName as n, isValidProfileName as t };