/**
 * 在 HTTP 非安全上下文中 `crypto.randomUUID` 可能不存在（如 http://域名）。
 * 提供降级实现，避免打开文件等流程报错。
 */
export function randomId(): string {
  const c = typeof globalThis !== 'undefined' ? globalThis.crypto : undefined
  if (c && typeof c.randomUUID === 'function') {
    try {
      return c.randomUUID()
    } catch {
      /* fall through */
    }
  }
  const t = Date.now().toString(36)
  const r = Math.random().toString(36).slice(2, 12)
  const r2 = Math.random().toString(36).slice(2, 8)
  return `${t}-${r}${r2}`
}
