module.exports = withAuthorizationPrefix

const atob = require('atob-lite')

const REGEX_IS_BASIC_AUTH = /^[\w-]+:/

function withAuthorizationPrefix (authorization) {
  if (/^(basic|bearer|token) /i.test(authorization)) {
    return authorization
  }

  try {
    if (REGEX_IS_BASIC_AUTH.test(atob(authorization))) {
      return `basic ${authorization}`
    }
  } catch (error) { }

  if (authorization.split(/\./).length === 3) {
    return `bearer ${authorization}`
  }

  return `token ${authorization}`
}
