Skip to main content

text_document_formatting/
dtos.rs

1// Generated by Qleany v1.5.1 from feature_dtos.tera
2
3use common::entities::TextDirection;
4use serde::{Deserialize, Serialize};
5
6#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
7pub struct SetTextFormatDto {
8    pub position: i64,
9    pub anchor: i64,
10    pub font_family: Option<String>,
11    pub font_point_size: Option<i64>,
12    pub font_weight: Option<i64>,
13    pub font_bold: Option<bool>,
14    pub font_italic: Option<bool>,
15    pub font_underline: Option<bool>,
16    pub font_overline: Option<bool>,
17    pub font_strikeout: Option<bool>,
18    pub letter_spacing: Option<i64>,
19    pub word_spacing: Option<i64>,
20    pub underline_style: Option<UnderlineStyle>,
21    pub vertical_alignment: Option<CharVerticalAlignment>,
22}
23
24#[derive(Serialize, Deserialize, Default, Clone, Debug, PartialEq, Eq)]
25pub enum UnderlineStyle {
26    #[default]
27    NoUnderline,
28    SingleUnderline,
29    DashUnderline,
30    DotLine,
31    DashDotLine,
32    DashDotDotLine,
33    WaveUnderline,
34    SpellCheckUnderline,
35}
36
37#[derive(Serialize, Deserialize, Default, Clone, Debug, PartialEq, Eq)]
38pub enum CharVerticalAlignment {
39    #[default]
40    Normal,
41    SuperScript,
42    SubScript,
43    Middle,
44    Bottom,
45    Top,
46    Baseline,
47}
48#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
49pub struct MergeTextFormatDto {
50    pub position: i64,
51    pub anchor: i64,
52    pub font_family: Option<String>,
53    pub font_bold: Option<bool>,
54    pub font_italic: Option<bool>,
55    pub font_underline: Option<bool>,
56    pub font_strikeout: Option<bool>,
57}
58#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
59pub struct SetBlockFormatDto {
60    pub position: i64,
61    pub anchor: i64,
62    pub alignment: Option<Alignment>,
63    pub heading_level: Option<i64>,
64    pub indent: Option<i64>,
65    pub marker: Option<MarkerType>,
66    pub line_height: Option<i64>,
67    pub non_breakable_lines: Option<bool>,
68    pub direction: Option<TextDirection>,
69    pub background_color: Option<String>,
70    pub is_code_block: Option<bool>,
71    pub code_language: Option<String>,
72    pub hyphenate: Option<bool>,
73    pub language: Option<String>,
74    pub top_margin: Option<i64>,
75    pub bottom_margin: Option<i64>,
76    pub left_margin: Option<i64>,
77    pub right_margin: Option<i64>,
78    /// First-line indent in pixels. Shifts only the first wrapped
79    /// line of the block right by this much; subsequent lines stay
80    /// flush with the block's left margin. Mirrors
81    /// `Block.fmt_text_indent`.
82    pub text_indent: Option<i64>,
83}
84
85#[derive(Serialize, Deserialize, Default, Clone, Debug, PartialEq, Eq)]
86pub enum Alignment {
87    #[default]
88    Left,
89    Right,
90    Center,
91    Justify,
92}
93
94#[derive(Serialize, Deserialize, Default, Clone, Debug, PartialEq, Eq)]
95pub enum MarkerType {
96    #[default]
97    NoMarker,
98    Unchecked,
99    Checked,
100}
101#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
102pub struct SetFrameFormatDto {
103    pub position: i64,
104    pub anchor: i64,
105    pub frame_id: i64,
106    pub height: Option<i64>,
107    pub width: Option<i64>,
108    pub top_margin: Option<i64>,
109    pub bottom_margin: Option<i64>,
110    pub left_margin: Option<i64>,
111    pub right_margin: Option<i64>,
112    pub padding: Option<i64>,
113    pub border: Option<i64>,
114    pub is_blockquote: Option<bool>,
115}
116#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
117pub struct SetTableFormatDto {
118    pub table_id: i64,
119    pub border: Option<i64>,
120    pub cell_spacing: Option<i64>,
121    pub cell_padding: Option<i64>,
122    pub width: Option<i64>,
123    pub alignment: Option<Alignment>,
124}
125#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
126pub struct SetTableCellFormatDto {
127    pub cell_id: i64,
128    pub padding: Option<i64>,
129    pub border: Option<i64>,
130    pub vertical_alignment: Option<CellVerticalAlignment>,
131    pub background_color: Option<String>,
132}
133
134pub use common::entities::ListStyle;
135
136#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
137pub struct SetListFormatDto {
138    pub list_id: i64,
139    pub style: Option<ListStyle>,
140    pub indent: Option<i64>,
141    pub prefix: Option<String>,
142    pub suffix: Option<String>,
143}
144
145#[derive(Serialize, Deserialize, Default, Clone, Debug, PartialEq, Eq)]
146pub enum CellVerticalAlignment {
147    #[default]
148    Top,
149    Middle,
150    Bottom,
151}