You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
27 lines
591 B
27 lines
591 B
use bs62; |
|
use ring::rand::SecureRandom; |
|
use serde::{Deserialize, Serialize}; |
|
|
|
#[derive(Serialize, Deserialize, Clone)] |
|
pub struct Note { |
|
pub meta: String, |
|
pub contents: String, |
|
pub views: Option<u8>, |
|
pub expiration: Option<u32>, |
|
} |
|
|
|
#[derive(Serialize, Deserialize, Clone)] |
|
pub struct NoteInfo {} |
|
|
|
#[derive(Serialize, Deserialize, Clone)] |
|
pub struct NotePublic { |
|
pub meta: String, |
|
pub contents: String, |
|
} |
|
|
|
pub fn generate_id() -> String { |
|
let mut id: [u8; 32] = [0; 32]; |
|
let sr = ring::rand::SystemRandom::new(); |
|
let _ = sr.fill(&mut id); |
|
return bs62::encode_data(&id); |
|
}
|
|
|