16 agent tools, event handler for auto-linking, sync job every 15m. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
16 lines
604 B
JavaScript
16 lines
604 B
JavaScript
const PROJECT_URL_KEY_DELIM_RE = /[^a-z0-9]+/g;
|
|
const PROJECT_URL_KEY_TRIM_RE = /^-+|-+$/g;
|
|
export function normalizeProjectUrlKey(value) {
|
|
if (typeof value !== "string")
|
|
return null;
|
|
const normalized = value
|
|
.trim()
|
|
.toLowerCase()
|
|
.replace(PROJECT_URL_KEY_DELIM_RE, "-")
|
|
.replace(PROJECT_URL_KEY_TRIM_RE, "");
|
|
return normalized.length > 0 ? normalized : null;
|
|
}
|
|
export function deriveProjectUrlKey(name, fallback) {
|
|
return normalizeProjectUrlKey(name) ?? normalizeProjectUrlKey(fallback) ?? "project";
|
|
}
|
|
//# sourceMappingURL=project-url-key.js.map
|