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}
58#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
59pub struct InsertFormattedTextDto {
60 pub position: i64,
61 pub anchor: i64,
62 pub text: String,
63 pub font_family: String,
64 pub font_point_size: i64,
65 pub font_bold: bool,
66 pub font_italic: bool,
67 pub font_underline: bool,
68 pub font_strikeout: bool,
69}
70#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
71pub struct InsertFormattedTextResultDto {
72 pub new_position: i64,
73}
74#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
75pub struct CreateListDto {
76 pub position: i64,
77 pub anchor: i64,
78 pub style: ListStyle,
79}
80
81pub use common::entities::ListStyle;
82#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
83pub struct CreateListResultDto {
84 pub list_id: i64,
85}
86#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
87pub struct InsertListDto {
88 pub position: i64,
89 pub anchor: i64,
90 pub style: ListStyle,
91}
92#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
93pub struct InsertListResultDto {
94 pub list_id: i64,
95 pub new_position: i64,
96}
97#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
98pub struct InsertFragmentDto {
99 pub position: i64,
100 pub anchor: i64,
101 pub fragment_data: String,
102}
103#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
104pub struct InsertFragmentResultDto {
105 pub new_position: i64,
106 pub blocks_added: i64,
107}
108#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
109pub struct InsertHtmlAtPositionDto {
110 pub position: i64,
111 pub anchor: i64,
112 pub html: String,
113}
114#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
115pub struct InsertHtmlAtPositionResultDto {
116 pub new_position: i64,
117 pub blocks_added: i64,
118}
119#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
120pub struct InsertMarkdownAtPositionDto {
121 pub position: i64,
122 pub anchor: i64,
123 pub markdown: String,
124}
125#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
126pub struct InsertMarkdownAtPositionResultDto {
127 pub new_position: i64,
128 pub blocks_added: i64,
129}