2024-01-01 14:58:21 -05:00
|
|
|
// Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.
|
2023-10-03 19:05:06 -04:00
|
|
|
|
2024-05-23 17:26:23 -04:00
|
|
|
use deno_npm::npm_rc::RegistryConfig;
|
2024-07-17 19:37:31 -04:00
|
|
|
use http::header;
|
2024-05-23 17:26:23 -04:00
|
|
|
|
|
|
|
// TODO(bartlomieju): support more auth methods besides token and basic auth
|
|
|
|
pub fn maybe_auth_header_for_npm_registry(
|
|
|
|
registry_config: &RegistryConfig,
|
|
|
|
) -> Option<(header::HeaderName, header::HeaderValue)> {
|
|
|
|
if let Some(token) = registry_config.auth_token.as_ref() {
|
|
|
|
return Some((
|
|
|
|
header::AUTHORIZATION,
|
|
|
|
header::HeaderValue::from_str(&format!("Bearer {}", token)).unwrap(),
|
|
|
|
));
|
|
|
|
}
|
|
|
|
|
|
|
|
if let Some(auth) = registry_config.auth.as_ref() {
|
|
|
|
return Some((
|
|
|
|
header::AUTHORIZATION,
|
|
|
|
header::HeaderValue::from_str(&format!("Basic {}", auth)).unwrap(),
|
|
|
|
));
|
|
|
|
}
|
|
|
|
|
|
|
|
None
|
|
|
|
}
|