use convert_js::ToJs;
#[derive(Debug, Clone, Copy, ToJs)]
#[convert_js(union, rename_all = "lowercase")]
pub enum AutoComplete {
None,
Inline,
List,
Both,
}
#[derive(Debug, Clone, Copy, ToJs)]
#[convert_js(union, rename_all = "lowercase")]
pub enum MixedBool {
Bool(bool),
Mixed,
}
#[derive(Debug, Clone, Copy, ToJs)]
#[convert_js(union, rename_all = "lowercase")]
pub enum Current {
Bool(bool),
Page,
Step,
Location,
Date,
Time,
}
#[derive(Debug, Clone, Copy, ToJs)]
#[convert_js(union, rename_all = "lowercase")]
pub enum DropEffect {
None,
Copy,
Execute,
Link,
Move,
Popup,
}
#[derive(Debug, Clone, Copy, ToJs)]
#[convert_js(union, rename_all = "lowercase")]
pub enum HasPopup {
Bool(bool),
Menu,
ListBox,
Tree,
Grid,
Dialog,
}
#[derive(Debug, Clone, Copy, ToJs)]
#[convert_js(union, rename_all = "lowercase")]
pub enum Invalid {
Bool(bool),
Grammar,
Spelling,
}
#[derive(Debug, Clone, Copy, ToJs)]
#[convert_js(union, rename_all = "lowercase")]
pub enum Live {
Off,
Assertive,
Polite,
}
#[derive(Debug, Clone, Copy, ToJs)]
#[convert_js(union, rename_all = "lowercase")]
pub enum Orientation {
Horizontal,
Vertical,
}
#[derive(Debug, Clone, Copy, ToJs)]
#[convert_js(union, rename_all = "lowercase")]
pub enum Relevant {
Additions,
#[convert_js(rename = "additions removals")]
AdditionsRemovals,
#[convert_js(rename = "additions text")]
AdditionsText,
All,
Removals,
#[convert_js(rename = "removals additions")]
RemovalsAdditions,
#[convert_js(rename = "removals text")]
RemovalsText,
Text,
#[convert_js(rename = "text additions")]
TextAdditions,
#[convert_js(rename = "text removals")]
TextRemovals,
}
#[derive(Debug, Clone, Copy, ToJs)]
#[convert_js(union, rename_all = "lowercase")]
pub enum Sort {
None,
Ascending,
Descending,
Other,
}
#[derive(Debug, Clone, ToJs)]
#[convert_js(union, rename_all = "lowercase")]
pub enum Role {
Alert,
AlertDialog,
Application,
Article,
Banner,
Button,
Cell,
Checkbox,
ColumnHeader,
ComboBox,
Complementary,
ContentInfo,
Definition,
Dialog,
Directory,
Document,
Feed,
Figure,
Form,
Grid,
GridCell,
Group,
Heading,
Img,
Link,
List,
ListBox,
ListItem,
Log,
Main,
Marquee,
Math,
Menu,
Menubar,
MenuItem,
MenuItemCheckbox,
MenuItemRadio,
Navigation,
None,
Note,
Option,
Presentation,
ProgressBar,
Radio,
RadioGroup,
Region,
Row,
RowGroup,
RowHeader,
Scrollbar,
Search,
SearchBox,
Separator,
Slider,
SpinButton,
Status,
Switch,
Tab,
Table,
TabList,
TabPanel,
Term,
TextBox,
Timer,
Toolbar,
Tooltip,
Tree,
TreeGrid,
TreeItem,
Custom(String),
}
#[derive(Debug, Clone, ToJs)]
pub struct Attributes {
activedescendant: Option<String>,
atomic: Option<bool>,
autocomplete: Option<AutoComplete>,
busy: Option<bool>,
checked: Option<MixedBool>,
colcount: Option<i32>,
colindex: Option<i32>,
colspan: Option<i32>,
controls: Option<String>,
current: Option<Current>,
describedby: Option<String>,
details: Option<String>,
disabled: Option<bool>,
dropeffect: Option<DropEffect>,
errormessage: Option<String>,
expanded: Option<bool>,
flowto: Option<String>,
grabbed: Option<bool>,
haspopup: Option<HasPopup>,
hidden: Option<bool>,
invalid: Option<Invalid>,
keyshortcuts: Option<String>,
label: Option<String>,
labelledby: Option<String>,
level: Option<i32>,
live: Option<Live>,
modal: Option<bool>,
multiline: Option<bool>,
multiselectable: Option<bool>,
orientation: Option<Orientation>,
owns: Option<String>,
placeholder: Option<String>,
posinset: Option<i32>,
pressed: Option<MixedBool>,
readonly: Option<bool>,
relevant: Option<Relevant>,
required: Option<bool>,
roledescription: Option<String>,
rowcount: Option<i32>,
rowindex: Option<i32>,
rowspan: Option<i32>,
selected: Option<bool>,
setsize: Option<i32>,
sort: Option<Sort>,
valuemax: Option<f64>,
valuemin: Option<f64>,
valuenow: Option<f64>,
valuetext: Option<String>,
}