suggestions behind features flag only

This commit is contained in:
Priec
2025-08-15 00:06:54 +02:00
parent 67512ac151
commit b2aa966588
2 changed files with 6 additions and 1 deletions

View File

@@ -2,6 +2,7 @@
//! Simplified user interface - only business data, no UI state //! Simplified user interface - only business data, no UI state
use anyhow::Result; use anyhow::Result;
#[cfg(feature = "suggestions")]
use async_trait::async_trait; use async_trait::async_trait;
/// User implements this - only business data, no UI state /// User implements this - only business data, no UI state
@@ -51,6 +52,7 @@ pub trait DataProvider {
} }
/// Optional: User implements this for suggestions data /// Optional: User implements this for suggestions data
#[cfg(feature = "suggestions")]
#[async_trait] #[async_trait]
pub trait SuggestionsProvider { pub trait SuggestionsProvider {
/// Fetch suggestions (user's business logic) /// Fetch suggestions (user's business logic)
@@ -58,6 +60,7 @@ pub trait SuggestionsProvider {
-> Result<Vec<SuggestionItem>>; -> Result<Vec<SuggestionItem>>;
} }
#[cfg(feature = "suggestions")]
#[derive(Debug, Clone)] #[derive(Debug, Clone)]
pub struct SuggestionItem { pub struct SuggestionItem {
pub display_text: String, pub display_text: String,

View File

@@ -25,7 +25,9 @@ pub use canvas::CursorManager;
// Main API exports // Main API exports
pub use editor::FormEditor; pub use editor::FormEditor;
pub use data_provider::{DataProvider, SuggestionsProvider, SuggestionItem}; pub use data_provider::DataProvider;
#[cfg(feature = "suggestions")]
pub use data_provider::{SuggestionsProvider, SuggestionItem};
// UI state (read-only access for users) // UI state (read-only access for users)
pub use canvas::state::EditorState; pub use canvas::state::EditorState;