Skip to main content

alibi_sqlx/
lib.rs

1//! `SQLx` integration for Alibi.
2//!
3//! [`SqlxStore`] persists every auth table through an application's own
4//! SQLite or PostgreSQL pool. Application-owned models derive
5//! `sqlx::FromRow` and [`AuthEntity`].
6
7extern crate self as alibi_sqlx;
8
9mod error;
10mod integer;
11pub use integer::Integer;
12mod number;
13pub use number::Number;
14
15pub mod hooks;
16
17pub mod json_metadata;
18
19pub mod model;
20
21pub mod organization_models;
22pub use organization_models::OrganizationModels;
23
24pub mod pool;
25
26pub mod rate_limit;
27
28pub mod schema;
29
30pub mod additional_fields;
31
32mod sql;
33
34pub mod store;
35
36pub mod value;
37
38#[doc(hidden)]
39pub use alibi_core as __private_core;
40pub use alibi_sqlx_macros::{AuthEntity, SqlxModel};
41pub use hooks::{
42    DatabaseHooks, HookControl, SqlxBackend, SqlxHookConnection, SqlxHookContext,
43    SqlxHookContextExt, current_request_hook_context,
44};
45pub use json_metadata::JsonMetadata;
46pub use model::{ActiveRow, ActiveValue, ColumnDef, SqlxModel};
47pub use pool::{Engine, SqlxPool, SqlxRow, SqlxTransaction, SqlxTransactionGuard};
48pub use rate_limit::SqlxRateLimitStorage;
49pub use schema::{SqlxAccountModel, SqlxSessionModel, SqlxUserModel, SqlxVerificationModel};
50pub use sqlx;
51pub use store::SqlxStore;
52pub use value::{ColumnKind, SqlValue, SqlxValue};