1use serde::{Deserialize, Serialize};
4
5#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
6pub struct InsertTextDto {
7 pub position: i64,
8 pub anchor: i64,
9 pub text: String,
10}
11#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
12pub struct InsertTextResultDto {
13 pub new_position: i64,
14 pub blocks_affected: i64,
15}
16#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
17pub struct DeleteTextDto {
18 pub position: i64,
19 pub anchor: i64,
20}
21#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
22pub struct DeleteTextResultDto {
23 pub new_position: i64,
24 pub deleted_text: String,
25}
26#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
27pub struct InsertBlockDto {
28 pub position: i64,
29 pub anchor: i64,
30}
31#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
32pub struct InsertBlockResultDto {
33 pub new_position: i64,
34 pub new_block_id: i64,
35}
36#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
37pub struct InsertImageDto {
38 pub position: i64,
39 pub anchor: i64,
40 pub image_name: String,
41 pub width: i64,
42 pub height: i64,
43}
44#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
45pub struct InsertImageResultDto {
46 pub new_position: i64,
47 pub element_id: i64,
48}
49#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
50pub struct InsertFrameDto {
51 pub position: i64,
52 pub anchor: i64,
53}
54#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
55pub struct InsertFrameResultDto {
56 pub frame_id: i64,
57}
58pub use common::entities::FramePosition;
59#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
60pub struct WrapBlocksInFrameDto {
61 pub start_block_id: i64,
62 pub end_block_id: i64,
63 pub position: Option<FramePosition>,
64 pub top_margin: Option<i64>,
65 pub bottom_margin: Option<i64>,
66 pub left_margin: Option<i64>,
67 pub right_margin: Option<i64>,
68 pub padding: Option<i64>,
69 pub border: Option<i64>,
70 pub is_blockquote: Option<bool>,
71}
72#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
73pub struct WrapBlocksInFrameResultDto {
74 pub new_frame_id: i64,
75 pub new_position: i64,
76}
77#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
78pub struct UnwrapFrameDto {
79 pub frame_id: i64,
80}
81#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
82pub struct UnwrapFrameResultDto {
83 pub new_position: i64,
84}
85#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
86pub struct UnwrapBlockFromFrameDto {
87 pub block_id: i64,
88}
89#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
90pub struct UnwrapBlockFromFrameResultDto {
91 pub new_position: i64,
92}
93#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
94pub struct InsertFormattedTextDto {
95 pub position: i64,
96 pub anchor: i64,
97 pub text: String,
98 pub font_family: String,
99 pub font_point_size: i64,
100 pub font_bold: bool,
101 pub font_italic: bool,
102 pub font_underline: bool,
103 pub font_strikeout: bool,
104}
105#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
106pub struct InsertFormattedTextResultDto {
107 pub new_position: i64,
108}
109#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
110pub struct CreateListDto {
111 pub position: i64,
112 pub anchor: i64,
113 pub style: ListStyle,
114}
115
116pub use common::entities::ListStyle;
117#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
118pub struct CreateListResultDto {
119 pub list_id: i64,
120}
121#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
122pub struct InsertListDto {
123 pub position: i64,
124 pub anchor: i64,
125 pub style: ListStyle,
126}
127#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
128pub struct InsertListResultDto {
129 pub list_id: i64,
130 pub new_position: i64,
131}
132#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
133pub struct InsertFragmentDto {
134 pub position: i64,
135 pub anchor: i64,
136 pub fragment_data: String,
137}
138#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
139pub struct InsertFragmentResultDto {
140 pub new_position: i64,
141 pub blocks_added: i64,
142}
143#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
144pub struct InsertHtmlAtPositionDto {
145 pub position: i64,
146 pub anchor: i64,
147 pub html: String,
148}
149#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
150pub struct InsertHtmlAtPositionResultDto {
151 pub new_position: i64,
152 pub blocks_added: i64,
153}
154#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
155pub struct InsertMarkdownAtPositionDto {
156 pub position: i64,
157 pub anchor: i64,
158 pub markdown: String,
159}
160#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
161pub struct InsertMarkdownAtPositionResultDto {
162 pub new_position: i64,
163 pub blocks_added: i64,
164}
165#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
166pub struct InsertDjotAtPositionDto {
167 pub position: i64,
168 pub anchor: i64,
169 pub djot: String,
170}
171#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
172pub struct InsertDjotAtPositionResultDto {
173 pub new_position: i64,
174 pub blocks_added: i64,
175}
176#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
177pub struct InsertTableDto {
178 pub position: i64,
179 pub anchor: i64,
180 pub rows: i64,
181 pub columns: i64,
182}
183#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
184pub struct InsertTableResultDto {
185 pub table_id: i64,
186 pub new_position: i64,
187}
188#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
189pub struct RemoveTableDto {
190 pub table_id: i64,
191}
192#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
193pub struct InsertTableRowDto {
194 pub table_id: i64,
195 pub row_index: i64,
196}
197#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
198pub struct InsertTableRowResultDto {
199 pub new_row_count: i64,
200}
201#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
202pub struct InsertTableColumnDto {
203 pub table_id: i64,
204 pub column_index: i64,
205}
206#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
207pub struct InsertTableColumnResultDto {
208 pub new_column_count: i64,
209}
210#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
211pub struct RemoveTableRowDto {
212 pub table_id: i64,
213 pub row_index: i64,
214}
215#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
216pub struct RemoveTableRowResultDto {
217 pub new_row_count: i64,
218}
219#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
220pub struct RemoveTableColumnDto {
221 pub table_id: i64,
222 pub column_index: i64,
223}
224#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
225pub struct RemoveTableColumnResultDto {
226 pub new_column_count: i64,
227}
228#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
229pub struct MergeTableCellsDto {
230 pub table_id: i64,
231 pub start_row: i64,
232 pub start_column: i64,
233 pub end_row: i64,
234 pub end_column: i64,
235}
236#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
237pub struct MergeTableCellsResultDto {
238 pub merged_cell_id: i64,
239}
240#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
241pub struct SplitTableCellDto {
242 pub cell_id: i64,
243 pub split_rows: i64,
244 pub split_columns: i64,
245}
246#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
247pub struct SplitTableCellResultDto {
248 pub new_cell_ids: Vec<i64>,
249}
250#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
251pub struct AddBlockToListDto {
252 pub block_id: i64,
253 pub list_id: i64,
254}
255#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
256pub struct RemoveBlockFromListDto {
257 pub block_id: i64,
258}