Skip to main content

openlark_analytics/
lib.rs

1//! # OpenLark 数据分析模块
2//!
3//! OpenLark SDK 的数据分析模块,提供飞书数据分析和搜索相关 API 的完整访问。
4//!
5//! ## 功能特性
6//!
7//! - **搜索服务**: 全文搜索、智能搜索、内容检索
8//! - **数据分析**: 数据报表、统计分析、趋势分析
9//!
10//! ## 模块组织
11//!
12//! 本模块按业务域(bizTag)组织:
13//! - `search` - 搜索服务相关 API (14 APIs)
14//!
15//! ## 使用示例
16//!
17//! ```rust,no_run
18//! use openlark_analytics::AnalyticsService;
19//! use openlark_core::prelude::Config;
20//!
21//! # async fn example() -> Result<(), Box<dyn std::error::Error>> {
22//! // 使用 builder 模式创建配置
23//! let config = Config::builder()
24//!     .app_id("app_id")
25//!     .app_secret("app_secret")
26//!     .build();
27//!
28//! let analytics_service = AnalyticsService::new(config)?;
29//!
30//! // 搜索场景(需要启用 search 和 v1 feature)
31//! # #[cfg(all(feature = "search", feature = "v1"))]
32//! let results = analytics_service
33//!     .search()
34//!     .v2()
35//!     .query()
36//!     .search()
37//!     .search_term("项目文档")
38//!     .execute()
39//!     .await?;
40//! # Ok(())
41//! # }
42//! ```
43
44#![allow(missing_docs)]
45#![allow(clippy::module_inception)]
46
47mod service;
48
49// 通用模块
50pub mod common;
51
52// 业务域模块
53#[cfg(feature = "search")]
54pub mod search;
55
56// Prelude 模块
57pub mod prelude;
58
59// 重新导出核心服务
60pub use service::AnalyticsService;
61
62// 配置类型
63pub use openlark_core::config::Config;
64
65/// 数据分析模块版本信息
66pub const VERSION: &str = env!("CARGO_PKG_VERSION");
67
68/// 数据分析服务配置别名
69pub type AnalyticsConfig = Config;
70
71#[cfg(test)]
72#[allow(unused_imports)]
73mod tests {
74    use super::*;
75
76    #[test]
77    fn test_version() {
78        assert!(!VERSION.is_empty());
79    }
80
81    #[test]
82    fn test_module_composition() {
83        // 验证模块组织正确
84        assert_eq!(VERSION, env!("CARGO_PKG_VERSION"));
85    }
86}