15 lines
316 B
JavaScript
15 lines
316 B
JavaScript
// nip54.ts
|
|
function normalizeIdentifier(name) {
|
|
name = name.trim().toLowerCase();
|
|
name = name.normalize("NFKC");
|
|
return Array.from(name).map((char) => {
|
|
if (/\p{Letter}/u.test(char) || /\p{Number}/u.test(char)) {
|
|
return char;
|
|
}
|
|
return "-";
|
|
}).join("");
|
|
}
|
|
export {
|
|
normalizeIdentifier
|
|
};
|