🐛 Fixed the Chinese name issue
This commit is contained in:
21
bin/utils/name.ts
vendored
21
bin/utils/name.ts
vendored
@@ -15,7 +15,26 @@ export function generateLinuxPackageName(name: string): string {
|
||||
}
|
||||
|
||||
export function generateIdentifierSafeName(name: string): string {
|
||||
return name.replace(/[^a-zA-Z0-9]/g, '').toLowerCase();
|
||||
const cleaned = name
|
||||
.replace(/[^a-zA-Z0-9\u4e00-\u9fff]/g, '')
|
||||
.toLowerCase();
|
||||
|
||||
if (cleaned === '') {
|
||||
const fallback = Array.from(name)
|
||||
.map(char => {
|
||||
const code = char.charCodeAt(0);
|
||||
if ((code >= 48 && code <= 57) || (code >= 65 && code <= 90) || (code >= 97 && code <= 122)) {
|
||||
return char.toLowerCase();
|
||||
}
|
||||
return code.toString(16);
|
||||
})
|
||||
.join('')
|
||||
.slice(0, 50);
|
||||
|
||||
return fallback || 'pake-app';
|
||||
}
|
||||
|
||||
return cleaned;
|
||||
}
|
||||
|
||||
export function generateWindowsFilename(name: string): string {
|
||||
|
||||
Reference in New Issue
Block a user