Skip to main content

text_document_frontend/commands/
document_search_commands.rs

1// Generated by Qleany v1.4.8 from frontend_feature_commands.tera
2
3//! DocumentSearch feature commands
4
5use crate::app_context::AppContext;
6use anyhow::{Context, Result};
7use document_search::{
8    FindAllDto, FindAllResultDto, FindResultDto, FindTextDto, ReplaceRangesDto,
9    ReplaceRangesResultDto, ReplaceResultDto, ReplaceTextDto, document_search_controller,
10};
11
12pub fn find_text(ctx: &AppContext, dto: &FindTextDto) -> Result<FindResultDto> {
13    document_search_controller::find_text(&ctx.db_context, &ctx.event_hub, dto).context("find_text")
14}
15
16pub fn find_all(ctx: &AppContext, dto: &FindAllDto) -> Result<FindAllResultDto> {
17    document_search_controller::find_all(&ctx.db_context, &ctx.event_hub, dto).context("find_all")
18}
19
20pub fn replace_text(
21    ctx: &AppContext,
22    stack_id: Option<u64>,
23    dto: &ReplaceTextDto,
24) -> Result<ReplaceResultDto> {
25    let mut undo_redo_manager = ctx.undo_redo_manager.lock();
26    document_search_controller::replace_text(
27        &ctx.db_context,
28        &ctx.event_hub,
29        &mut undo_redo_manager,
30        stack_id,
31        dto,
32    )
33    .context("replace_text")
34}
35
36pub fn replace_ranges(
37    ctx: &AppContext,
38    stack_id: Option<u64>,
39    dto: &ReplaceRangesDto,
40) -> Result<ReplaceRangesResultDto> {
41    let mut undo_redo_manager = ctx.undo_redo_manager.lock();
42    document_search_controller::replace_ranges(
43        &ctx.db_context,
44        &ctx.event_hub,
45        &mut undo_redo_manager,
46        stack_id,
47        dto,
48    )
49}