Initial aishare service
This commit is contained in:
+22
@@ -0,0 +1,22 @@
|
||||
const STOP_CHARS = /['"`]/g;
|
||||
|
||||
export function slugify(input: string, fallback = "chatgpt-share"): string {
|
||||
const base = input
|
||||
.normalize("NFKD")
|
||||
.replace(STOP_CHARS, "")
|
||||
.toLowerCase()
|
||||
.replace(/[^a-z0-9]+/g, "-")
|
||||
.replace(/^-+|-+$/g, "")
|
||||
.replace(/-{2,}/g, "-")
|
||||
.slice(0, 80);
|
||||
|
||||
return base || fallback;
|
||||
}
|
||||
|
||||
export function displayTitleFromSlug(slug: string): string {
|
||||
return slug
|
||||
.split("-")
|
||||
.filter(Boolean)
|
||||
.map((part) => part.charAt(0).toUpperCase() + part.slice(1))
|
||||
.join(" ");
|
||||
}
|
||||
Reference in New Issue
Block a user