// @ts-nocheck

/**
 * 判斷壹個字符串是否為Base64編碼。
 * Base64編碼的字符串只包含A-Z、a-z、0-9、+、/ 和 = 這些字符。
 * @param {string} str - 要檢查的字符串。
 * @returns {boolean} 如果字符串是Base64編碼，返回true，否則返回false。
 */
export function isBase64(str: string): boolean {
    const base64Regex = /^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/;
    return base64Regex.test(str);
}

/**
 * 判斷壹個字符串是否為Base64編碼的data URI。
 * Base64編碼的data URI通常以"data:"開頭，後面跟著MIME類型和編碼信息，然後是Base64編碼的數據。
 * @param {string} str - 要檢查的字符串。
 * @returns {boolean} 如果字符串是Base64編碼的data URI，返回true，否則返回false。
 */
export function isBase64DataUri(str: string): boolean {
    const dataUriRegex = /^data:([a-zA-Z]+\/[a-zA-Z0-9-+.]+)(;base64)?,([a-zA-Z0-9+/]+={0,2})$/;
    return dataUriRegex.test(str);
}