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
use once_cell::sync::Lazy;

mod account;
mod accounts;
mod algorithm;
pub mod database;
pub mod i18n;
pub mod keyring;
mod otp;
mod otp_uri;
mod provider;
mod providers;
mod search_provider;
mod settings;

pub static RUNTIME: Lazy<tokio::runtime::Runtime> =
    Lazy::new(|| tokio::runtime::Runtime::new().unwrap());
pub static SETTINGS: Lazy<Settings> = Lazy::new(Settings::default);
pub static FAVICONS_PATH: Lazy<std::path::PathBuf> = Lazy::new(|| {
    gtk::glib::user_cache_dir()
        .join("authenticator")
        .join("favicons")
});

pub use self::{
    account::Account,
    accounts::AccountsModel,
    algorithm::{Algorithm, Method},
    keyring::SECRET_SERVICE,
    otp::OTP,
    otp_uri::OTPUri,
    provider::{DieselProvider, Provider, ProviderPatch},
    providers::ProvidersModel,
    search_provider::{start, SearchProviderAction},
    settings::Settings,
};