suggestions behind features flag only
This commit is contained in:
@@ -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,
|
||||||
|
|||||||
@@ -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;
|
||||||
|
|||||||
Reference in New Issue
Block a user