Skip to main content

text_document_frontend/commands/
document_editing_commands.rs

1// Generated by Qleany v1.5.1 from frontend_feature_commands.tera
2
3//! DocumentEditing feature commands
4
5use crate::app_context::AppContext;
6use anyhow::{Context, Result};
7use document_editing::{
8    AddBlockToListDto, CreateListDto, CreateListResultDto, DeleteTextDto, DeleteTextResultDto,
9    InsertBlockDto, InsertBlockResultDto, InsertFormattedTextDto, InsertFormattedTextResultDto,
10    InsertFragmentDto, InsertFragmentResultDto, InsertFrameDto, InsertFrameResultDto,
11    InsertHtmlAtPositionDto, InsertHtmlAtPositionResultDto, InsertImageDto, InsertImageResultDto,
12    InsertListDto, InsertListResultDto, InsertMarkdownAtPositionDto,
13    InsertMarkdownAtPositionResultDto, InsertTableColumnDto, InsertTableColumnResultDto,
14    InsertTableDto, InsertTableResultDto, InsertTableRowDto, InsertTableRowResultDto,
15    InsertTextDto, InsertTextResultDto, MergeTableCellsDto, MergeTableCellsResultDto,
16    RemoveBlockFromListDto, RemoveTableColumnDto, RemoveTableColumnResultDto, RemoveTableDto,
17    RemoveTableRowDto, RemoveTableRowResultDto, SplitTableCellDto, SplitTableCellResultDto,
18    document_editing_controller,
19};
20
21pub fn insert_text(
22    ctx: &AppContext,
23    stack_id: Option<u64>,
24    dto: &InsertTextDto,
25) -> Result<InsertTextResultDto> {
26    let mut undo_redo_manager = ctx.undo_redo_manager.lock().unwrap();
27    document_editing_controller::insert_text(
28        &ctx.db_context,
29        &ctx.event_hub,
30        &mut undo_redo_manager,
31        stack_id,
32        dto,
33    )
34    .context("insert_text")
35}
36
37pub fn delete_text(
38    ctx: &AppContext,
39    stack_id: Option<u64>,
40    dto: &DeleteTextDto,
41) -> Result<DeleteTextResultDto> {
42    let mut undo_redo_manager = ctx.undo_redo_manager.lock().unwrap();
43    document_editing_controller::delete_text(
44        &ctx.db_context,
45        &ctx.event_hub,
46        &mut undo_redo_manager,
47        stack_id,
48        dto,
49    )
50    .context("delete_text")
51}
52
53pub fn insert_block(
54    ctx: &AppContext,
55    stack_id: Option<u64>,
56    dto: &InsertBlockDto,
57) -> Result<InsertBlockResultDto> {
58    let mut undo_redo_manager = ctx.undo_redo_manager.lock().unwrap();
59    document_editing_controller::insert_block(
60        &ctx.db_context,
61        &ctx.event_hub,
62        &mut undo_redo_manager,
63        stack_id,
64        dto,
65    )
66    .context("insert_block")
67}
68
69pub fn insert_image(
70    ctx: &AppContext,
71    stack_id: Option<u64>,
72    dto: &InsertImageDto,
73) -> Result<InsertImageResultDto> {
74    let mut undo_redo_manager = ctx.undo_redo_manager.lock().unwrap();
75    document_editing_controller::insert_image(
76        &ctx.db_context,
77        &ctx.event_hub,
78        &mut undo_redo_manager,
79        stack_id,
80        dto,
81    )
82    .context("insert_image")
83}
84
85pub fn insert_frame(
86    ctx: &AppContext,
87    stack_id: Option<u64>,
88    dto: &InsertFrameDto,
89) -> Result<InsertFrameResultDto> {
90    let mut undo_redo_manager = ctx.undo_redo_manager.lock().unwrap();
91    document_editing_controller::insert_frame(
92        &ctx.db_context,
93        &ctx.event_hub,
94        &mut undo_redo_manager,
95        stack_id,
96        dto,
97    )
98    .context("insert_frame")
99}
100
101pub fn insert_formatted_text(
102    ctx: &AppContext,
103    stack_id: Option<u64>,
104    dto: &InsertFormattedTextDto,
105) -> Result<InsertFormattedTextResultDto> {
106    let mut undo_redo_manager = ctx.undo_redo_manager.lock().unwrap();
107    document_editing_controller::insert_formatted_text(
108        &ctx.db_context,
109        &ctx.event_hub,
110        &mut undo_redo_manager,
111        stack_id,
112        dto,
113    )
114    .context("insert_formatted_text")
115}
116
117pub fn create_list(
118    ctx: &AppContext,
119    stack_id: Option<u64>,
120    dto: &CreateListDto,
121) -> Result<CreateListResultDto> {
122    let mut undo_redo_manager = ctx.undo_redo_manager.lock().unwrap();
123    document_editing_controller::create_list(
124        &ctx.db_context,
125        &ctx.event_hub,
126        &mut undo_redo_manager,
127        stack_id,
128        dto,
129    )
130    .context("create_list")
131}
132
133pub fn insert_list(
134    ctx: &AppContext,
135    stack_id: Option<u64>,
136    dto: &InsertListDto,
137) -> Result<InsertListResultDto> {
138    let mut undo_redo_manager = ctx.undo_redo_manager.lock().unwrap();
139    document_editing_controller::insert_list(
140        &ctx.db_context,
141        &ctx.event_hub,
142        &mut undo_redo_manager,
143        stack_id,
144        dto,
145    )
146    .context("insert_list")
147}
148
149pub fn insert_fragment(
150    ctx: &AppContext,
151    stack_id: Option<u64>,
152    dto: &InsertFragmentDto,
153) -> Result<InsertFragmentResultDto> {
154    let mut undo_redo_manager = ctx.undo_redo_manager.lock().unwrap();
155    document_editing_controller::insert_fragment(
156        &ctx.db_context,
157        &ctx.event_hub,
158        &mut undo_redo_manager,
159        stack_id,
160        dto,
161    )
162    .context("insert_fragment")
163}
164
165pub fn insert_html_at_position(
166    ctx: &AppContext,
167    stack_id: Option<u64>,
168    dto: &InsertHtmlAtPositionDto,
169) -> Result<InsertHtmlAtPositionResultDto> {
170    let mut undo_redo_manager = ctx.undo_redo_manager.lock().unwrap();
171    document_editing_controller::insert_html_at_position(
172        &ctx.db_context,
173        &ctx.event_hub,
174        &mut undo_redo_manager,
175        stack_id,
176        dto,
177    )
178    .context("insert_html_at_position")
179}
180
181pub fn insert_markdown_at_position(
182    ctx: &AppContext,
183    stack_id: Option<u64>,
184    dto: &InsertMarkdownAtPositionDto,
185) -> Result<InsertMarkdownAtPositionResultDto> {
186    let mut undo_redo_manager = ctx.undo_redo_manager.lock().unwrap();
187    document_editing_controller::insert_markdown_at_position(
188        &ctx.db_context,
189        &ctx.event_hub,
190        &mut undo_redo_manager,
191        stack_id,
192        dto,
193    )
194    .context("insert_markdown_at_position")
195}
196
197pub fn insert_table(
198    ctx: &AppContext,
199    stack_id: Option<u64>,
200    dto: &InsertTableDto,
201) -> Result<InsertTableResultDto> {
202    let mut undo_redo_manager = ctx.undo_redo_manager.lock().unwrap();
203    document_editing_controller::insert_table(
204        &ctx.db_context,
205        &ctx.event_hub,
206        &mut undo_redo_manager,
207        stack_id,
208        dto,
209    )
210    .context("insert_table")
211}
212
213pub fn remove_table(ctx: &AppContext, stack_id: Option<u64>, dto: &RemoveTableDto) -> Result<()> {
214    let mut undo_redo_manager = ctx.undo_redo_manager.lock().unwrap();
215    document_editing_controller::remove_table(
216        &ctx.db_context,
217        &ctx.event_hub,
218        &mut undo_redo_manager,
219        stack_id,
220        dto,
221    )
222    .context("remove_table")
223}
224
225pub fn insert_table_row(
226    ctx: &AppContext,
227    stack_id: Option<u64>,
228    dto: &InsertTableRowDto,
229) -> Result<InsertTableRowResultDto> {
230    let mut undo_redo_manager = ctx.undo_redo_manager.lock().unwrap();
231    document_editing_controller::insert_table_row(
232        &ctx.db_context,
233        &ctx.event_hub,
234        &mut undo_redo_manager,
235        stack_id,
236        dto,
237    )
238    .context("insert_table_row")
239}
240
241pub fn insert_table_column(
242    ctx: &AppContext,
243    stack_id: Option<u64>,
244    dto: &InsertTableColumnDto,
245) -> Result<InsertTableColumnResultDto> {
246    let mut undo_redo_manager = ctx.undo_redo_manager.lock().unwrap();
247    document_editing_controller::insert_table_column(
248        &ctx.db_context,
249        &ctx.event_hub,
250        &mut undo_redo_manager,
251        stack_id,
252        dto,
253    )
254    .context("insert_table_column")
255}
256
257pub fn remove_table_row(
258    ctx: &AppContext,
259    stack_id: Option<u64>,
260    dto: &RemoveTableRowDto,
261) -> Result<RemoveTableRowResultDto> {
262    let mut undo_redo_manager = ctx.undo_redo_manager.lock().unwrap();
263    document_editing_controller::remove_table_row(
264        &ctx.db_context,
265        &ctx.event_hub,
266        &mut undo_redo_manager,
267        stack_id,
268        dto,
269    )
270    .context("remove_table_row")
271}
272
273pub fn remove_table_column(
274    ctx: &AppContext,
275    stack_id: Option<u64>,
276    dto: &RemoveTableColumnDto,
277) -> Result<RemoveTableColumnResultDto> {
278    let mut undo_redo_manager = ctx.undo_redo_manager.lock().unwrap();
279    document_editing_controller::remove_table_column(
280        &ctx.db_context,
281        &ctx.event_hub,
282        &mut undo_redo_manager,
283        stack_id,
284        dto,
285    )
286    .context("remove_table_column")
287}
288
289pub fn merge_table_cells(
290    ctx: &AppContext,
291    stack_id: Option<u64>,
292    dto: &MergeTableCellsDto,
293) -> Result<MergeTableCellsResultDto> {
294    let mut undo_redo_manager = ctx.undo_redo_manager.lock().unwrap();
295    document_editing_controller::merge_table_cells(
296        &ctx.db_context,
297        &ctx.event_hub,
298        &mut undo_redo_manager,
299        stack_id,
300        dto,
301    )
302    .context("merge_table_cells")
303}
304
305pub fn split_table_cell(
306    ctx: &AppContext,
307    stack_id: Option<u64>,
308    dto: &SplitTableCellDto,
309) -> Result<SplitTableCellResultDto> {
310    let mut undo_redo_manager = ctx.undo_redo_manager.lock().unwrap();
311    document_editing_controller::split_table_cell(
312        &ctx.db_context,
313        &ctx.event_hub,
314        &mut undo_redo_manager,
315        stack_id,
316        dto,
317    )
318    .context("split_table_cell")
319}
320
321pub fn add_block_to_list(
322    ctx: &AppContext,
323    stack_id: Option<u64>,
324    dto: &AddBlockToListDto,
325) -> Result<()> {
326    let mut undo_redo_manager = ctx.undo_redo_manager.lock().unwrap();
327    document_editing_controller::add_block_to_list(
328        &ctx.db_context,
329        &ctx.event_hub,
330        &mut undo_redo_manager,
331        stack_id,
332        dto,
333    )
334    .context("add_block_to_list")
335}
336
337pub fn remove_block_from_list(
338    ctx: &AppContext,
339    stack_id: Option<u64>,
340    dto: &RemoveBlockFromListDto,
341) -> Result<()> {
342    let mut undo_redo_manager = ctx.undo_redo_manager.lock().unwrap();
343    document_editing_controller::remove_block_from_list(
344        &ctx.db_context,
345        &ctx.event_hub,
346        &mut undo_redo_manager,
347        stack_id,
348        dto,
349    )
350    .context("remove_block_from_list")
351}