hehe_core/utils/
encoding.rs

1use base64::{engine::general_purpose::STANDARD as BASE64, Engine};
2use bytes::Bytes;
3
4pub fn encode_base64(data: &[u8]) -> String {
5    BASE64.encode(data)
6}
7
8pub fn decode_base64(data: &str) -> Result<Bytes, base64::DecodeError> {
9    BASE64.decode(data).map(Bytes::from)
10}
11
12pub fn encode_base64_url_safe(data: &[u8]) -> String {
13    base64::engine::general_purpose::URL_SAFE_NO_PAD.encode(data)
14}
15
16pub fn decode_base64_url_safe(data: &str) -> Result<Bytes, base64::DecodeError> {
17    base64::engine::general_purpose::URL_SAFE_NO_PAD
18        .decode(data)
19        .map(Bytes::from)
20}