tree_table/args/
args_item.rs1use crate::Val;
2use alloc::string::String;
3use alloc::vec::Vec;
4
5#[cfg(feature = "serde")]
6use crate::statics::default_emit_event_for_api;
7#[cfg(feature = "serde")]
8use crate::statics::default_save_selection_for_api;
9#[cfg(feature = "serde")]
10use crate::statics::default_undo_for_api;
11#[cfg(feature = "serde")]
12use crate::statics::get_true;
13
14#[cfg_attr(feature = "tsify", derive(tsify::Tsify))]
15#[cfg_attr(feature = "tsify", tsify(from_wasm_abi))]
16#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
17#[derive(Debug, Clone, PartialEq)]
18pub struct ItemArgs {
19 pub item: String,
20 pub iid: Option<String>,
21 pub val: Option<Val>,
22 pub vals: Option<Vec<(String, Val)>>,
23 pub open: Option<bool>,
24 #[cfg_attr(feature = "serde", serde(default = "get_true"))]
25 pub ignore_fmt_errs: bool,
26 #[cfg_attr(feature = "serde", serde(default))]
27 pub fmt_normalize: bool,
28 #[cfg_attr(feature = "serde", serde(default = "default_emit_event_for_api"))]
29 pub emit: bool,
30 #[cfg_attr(feature = "serde", serde(default = "default_undo_for_api"))]
31 pub undo: bool,
32 #[cfg_attr(feature = "serde", serde(default = "default_save_selection_for_api"))]
33 pub save_selection: bool,
34}
35
36#[cfg_attr(feature = "tsify", derive(tsify::Tsify))]
37#[cfg_attr(feature = "tsify", tsify(from_wasm_abi))]
38#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
39#[derive(Debug, Clone, PartialEq)]
40pub struct ItemResult {
41 pub pos: u64,
42 pub val: Val,
43 pub values: Vec<Val>,
44 pub open: bool,
45}