lockbook_server_lib/
utils.rs1use crate::ServerError;
2use lockbook_shared::account::MAX_USERNAME_LENGTH;
3use lockbook_shared::api::{GetBuildInfoError, GetBuildInfoResponse};
4use shadow_rs::shadow;
5
6shadow!(build_info);
7
8pub fn username_is_valid(username: &str) -> bool {
9 !username.is_empty()
10 && username.len() <= MAX_USERNAME_LENGTH
11 && username
12 .to_lowercase()
13 .chars()
14 .all(|c| c.is_ascii_lowercase() || c.is_ascii_digit())
15}
16
17pub fn get_build_info() -> Result<GetBuildInfoResponse, ServerError<GetBuildInfoError>> {
18 Ok(GetBuildInfoResponse {
19 build_version: env!("CARGO_PKG_VERSION").to_string(),
20 git_commit_hash: build_info::COMMIT_HASH.to_string(),
21 })
22}