dioxus_provider/
lib.rs

1#![doc = include_str!("../README.md")]
2
3// Core modules
4pub mod cache;
5pub mod errors;
6pub mod global;
7pub mod hooks;
8pub mod injection;
9pub mod mutation;
10pub mod platform;
11pub mod refresh;
12pub mod types;
13
14pub mod prelude {
15    //! The prelude exports all the most common types and functions for using dioxus-provider.
16
17    // The main provider trait and the macro
18    pub use crate::hooks::Provider;
19    pub use dioxus_provider_macros::{mutation, provider};
20
21    // The core hook for using providers
22    pub use crate::hooks::use_provider;
23
24    // Hooks for manual cache management
25    pub use crate::hooks::use_clear_provider_cache;
26    pub use crate::hooks::use_invalidate_provider;
27    pub use crate::hooks::use_provider_cache;
28
29    // The async state enum, needed for matching
30    pub use crate::cache::ProviderState;
31
32    // Global initialization
33    pub use crate::global::init_global_providers;
34
35    // Dependency Injection
36    pub use crate::injection::{
37        clear_dependencies, has_dependency, init_dependency_injection, inject, register_dependency,
38    };
39
40    // Mutation system - Manual Implementation Pattern
41    pub use crate::mutation::{
42        Mutation, MutationState, provider_cache_key, provider_cache_key_simple, use_mutation,
43        use_optimistic_mutation,
44    };
45
46    // Error types
47    pub use crate::errors::{
48        ApiError, ApiResult, DatabaseError, DatabaseResult, ProviderError, ProviderResult,
49        UserError, UserResult,
50    };
51}