-
Notifications
You must be signed in to change notification settings - Fork 1
/
constants.rs
82 lines (76 loc) · 2.32 KB
/
constants.rs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
use std::ffi::OsStr;
use serde::{Deserialize, Serialize};
pub struct Constants {
pub max_comment_length: usize,
pub max_sendamount: i64,
pub min_sendamount: i64,
pub relays: [&'static str; 14],
}
pub const CONSTANTS: Constants = Constants {
relays: [
"wss://nostr.foundrydigital.com",
"wss://eden.nostr.land",
"wss://relay.damus.io",
"wss://relay.snort.social",
"wss://nos.lol",
"wss://relay.current.fyi",
"wss://relay.nostr.info",
"wss://nostr.zebedee.cloud",
"wss://nostr.fmt.wiz.biz",
"wss://relay.nostr.bg",
"wss://nostr.mom",
"wss://nostr.bitcoiner.social",
"wss://nostr.oxtr.dev",
"wss://no.str.cr",
],
max_comment_length: 280,
max_sendamount: 10000000000,
min_sendamount: 1000,
};
#[allow(non_camel_case_types)]
pub enum EnvVariables {
USERNAME,
DOMAIN,
CERT_PATH,
MACAROON_PATH,
CERT_HEX,
MACAROON_HEX,
SOCKET,
HOST,
PORT,
INCLUDE_HOP_HINTS,
NOSTR_PRIVATE_KEY,
NIP_05_PUBKEY,
RELAYS,
MAX_SENDABLE,
}
impl AsRef<OsStr> for EnvVariables {
fn as_ref(&self) -> &OsStr {
match self {
EnvVariables::DOMAIN => OsStr::new("DOMAIN"),
EnvVariables::PORT => OsStr::new("PORT"),
EnvVariables::USERNAME => OsStr::new("USERNAME"),
EnvVariables::CERT_PATH => OsStr::new("CERT_PATH"),
EnvVariables::MACAROON_PATH => OsStr::new("MACAROON_PATH"),
EnvVariables::CERT_HEX => OsStr::new("CERT_HEX"),
EnvVariables::MACAROON_HEX => OsStr::new("MACAROON_HEX"),
EnvVariables::SOCKET => OsStr::new("SOCKET"),
EnvVariables::HOST => OsStr::new("HOST"),
EnvVariables::INCLUDE_HOP_HINTS => OsStr::new("INCLUDE_HOP_HINTS"),
EnvVariables::NOSTR_PRIVATE_KEY => OsStr::new("NOSTR_PRIVATE_KEY"),
EnvVariables::NIP_05_PUBKEY => OsStr::new("NIP_05_PUBKEY"),
EnvVariables::RELAYS => OsStr::new("RELAYS"),
EnvVariables::MAX_SENDABLE => OsStr::new("MAX_SENDABLE"),
}
}
}
#[derive(Serialize, Deserialize)]
pub(crate) struct Nip05EventDetails {
pub content: String,
pub created_at: u64,
pub id: String,
pub kind: u16,
pub pubkey: String,
pub tags: Vec<String>,
pub sig: String,
}