Skip to main content

eventky_app_specs/
lib.rs

1mod common;
2pub mod constants;
3mod models;
4pub mod traits;
5mod utils;
6mod validation;
7
8// Re-export constants
9pub use constants::{
10    EVENTKY_PATH, MAX_ATTENDEE_URI_LENGTH, MAX_CALENDAR_AUTHORS, MAX_CALENDAR_DESCRIPTION_LENGTH,
11    MAX_CALENDAR_NAME_LENGTH, MAX_CALENDAR_URIS, MAX_EVENT_DESCRIPTION_LENGTH, MAX_EVENT_LOCATIONS,
12    MAX_EVENT_SUMMARY_LENGTH, MAX_EVENT_UID_LENGTH, MAX_LOCATION_DESCRIPTION_LENGTH,
13    MAX_LOCATION_LABEL_LENGTH, MAX_LOCATION_URI_LENGTH, MIN_EVENT_SUMMARY_LENGTH,
14    MIN_EVENT_UID_LENGTH, PROTOCOL, PUBLIC_PATH,
15};
16
17// Re-export domain types
18pub use models::attendee::PubkyAppAttendee;
19pub use models::calendar::{PubkyAppCalendar, StyledDescription};
20pub use models::event::PubkyAppEvent;
21pub use models::location::{EventLocation, EventLocationKind};
22pub use models::EventkyAppObject;
23
24// Re-export from pubky-app-specs base crate
25pub use pubky_app_specs::PubkyId;
26
27// Re-export utils & validation for consumers
28pub use utils::*;
29pub use validation::*;
30
31// WASM module (only compiled on wasm32)
32#[cfg(target_arch = "wasm32")]
33mod wasm;
34#[cfg(target_arch = "wasm32")]
35pub use wasm::*;