fix(admin): slugify without /u flag (ES5 target) — keep Persian/Arabic via literal ranges
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -45,13 +45,14 @@ const inputCls = "w-full rounded-lg border border-[#262b40] bg-[#0c0e1a] px-3 py
|
|||||||
|
|
||||||
const PAGE_SIZE = 25;
|
const PAGE_SIZE = 25;
|
||||||
|
|
||||||
/** URL-safe slug; keeps unicode letters (incl. Persian) + digits, spaces → "-". */
|
/** URL-safe slug; keeps Latin, digits and Persian/Arabic letters, spaces → "-".
|
||||||
|
* Uses explicit unicode ranges (no /u flag) for older TS targets. */
|
||||||
export function slugify(s: string): string {
|
export function slugify(s: string): string {
|
||||||
return s
|
return s
|
||||||
.trim()
|
.trim()
|
||||||
.toLowerCase()
|
.toLowerCase()
|
||||||
.replace(/\s+/g, "-")
|
.replace(/\s+/g, "-")
|
||||||
.replace(/[^\p{L}\p{N}-]+/gu, "")
|
.replace(/[^a-z0-9-ۿݐ-ݿﭐ-﷿ﹰ--]+/g, "")
|
||||||
.replace(/-+/g, "-")
|
.replace(/-+/g, "-")
|
||||||
.replace(/^-|-$/g, "");
|
.replace(/^-|-$/g, "");
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user