// @ts-nocheck
// export function toLowercaseSeparator(key: string) {
//   return key.replace(/([A-Z])/g, '-$1').toLowerCase();
// }

/**
 * 將字符串轉換為指定連接符的命名約定
 * @param str 要轉換的字符串
 * @param separator 指定的連接符，默認為 "-"
 * @returns 轉換後的字符串
 */
export function kebabCase(str : string, separator : string = "-") : string {
	return str
		
		// #ifdef APP-IOS || APP-ANDROID
		.replace(/[A-Z]/g, (match : string, _ : number, _ : string) : string => `${separator}${match.toLowerCase()}`) // 將大寫字母替換為連接符加小寫字母
		// #endif
		// #ifndef APP-IOS || APP-ANDROID
		.replace(/[A-Z]/g, (match : string) : string => `${separator}${match.toLowerCase()}`) // 將大寫字母替換為連接符加小寫字母
		// #endif
		.replace(/[\s_-]+/g, separator) // 將空格、下劃線和短橫線替換為指定連接符
		.replace(new RegExp(`^${separator}|${separator}$`, "g"), "") // 刪除開頭和結尾的連接符
		.toLowerCase(); // 將結果轉換為全小寫
}