diff --git a/packages/html/src/elements.rs b/packages/html/src/elements.rs
index 5f5ff59c5..2e0000693 100644
--- a/packages/html/src/elements.rs
+++ b/packages/html/src/elements.rs
@@ -1,4 +1,5 @@
#![allow(non_upper_case_globals)]
+use crate::{map_global_attributes, map_svg_attributes};
use crate::{GlobalAttributes, SvgAttributes};
use dioxus_rsx::HotReloadingContext;
@@ -218,7 +219,7 @@ macro_rules! builder_constructors {
}
);
)*
- None
+ map_global_attributes(attribute).or_else(|| map_svg_attributes(attribute))
}
fn map_element(element: &str) -> Option<(&'static str, Option<&'static str>)> {
diff --git a/packages/html/src/global_attributes.rs b/packages/html/src/global_attributes.rs
index 5c4ac42e8..cd4e8f44a 100644
--- a/packages/html/src/global_attributes.rs
+++ b/packages/html/src/global_attributes.rs
@@ -2,70 +2,135 @@
use crate::AttributeDiscription;
-macro_rules! no_namespace_trait_methods {
+macro_rules! trait_method {
(
- $(
+ (
$(#[$attr:meta])*
$name:ident;
- )*
+ )
) => {
- $(
- $(#[$attr])*
- const $name: AttributeDiscription = (
- stringify!($name),
- None,
- false
- );
- )*
+ $(#[$attr])*
+ const $name: AttributeDiscription = (
+ stringify!($name),
+ None,
+ false
+ );
};
-}
-macro_rules! style_trait_methods {
(
- $(
+ (
$(#[$attr:meta])*
- $name:ident: $lit:literal,
- )*
+ $name:ident: $lit:literal;
+ )
) => {
- $(
- $(#[$attr])*
- const $name: AttributeDiscription = (
- $lit,
- Some("style"),
- false
- );
- )*
+ $(#[$attr])*
+ const $name: AttributeDiscription = (
+ $lit,
+ None,
+ false
+ );
};
-}
-macro_rules! aria_trait_methods {
(
- $(
+ (
$(#[$attr:meta])*
- $name:ident: $lit:literal,
- )*
+ $name:ident: $lit:literal, $ns:literal;
+ )
) => {
- $(
- $(#[$attr])*
- const $name: AttributeDiscription = (
- $lit,
- None,
- false
- );
- )*
+ $(#[$attr])*
+ const $name: AttributeDiscription = (
+ $lit,
+ Some($ns),
+ false
+ );
};
}
-pub trait GlobalAttributes {
- /// Prevent the default action for this element.
- ///
- /// For more information, see the MDN docs:
- ///
+macro_rules! trait_method_mapping {
+ (
+ $matching:ident;
+ (
+ $(#[$attr:meta])*
+ $name:ident;
+ )
+ ) => {
+ if $matching == stringify!($name) {
+ return Some((stringify!($name), None));
+ }
+ };
+ (
+ $matching:ident;
+ (
+ $(#[$attr:meta])*
+ $name:ident: $lit:literal;
+ )
+ ) => {
+ if $matching == stringify!($name) {
+ return Some(($lit, None));
+ }
+ };
+ (
+ $matching:ident;
+ (
+ $(#[$attr:meta])*
+ $name:ident: $lit:literal, $ns:literal;
+ )
+ ) => {
+ if $matching == stringify!($name) {
+ return Some(($lit, Some($ns)));
+ }
+ };
+}
- const prevent_default: AttributeDiscription = ("dioxus-prevent-default", None, false);
+macro_rules! trait_methods {
+ (
+ $(#[$attr:meta])*
+ $trait:ident;
+ $fn:ident;
+ $(
+ $tokens:tt,
+ )*
+ ) => {
+ pub trait $trait {
+ $(
+ trait_method! {
+ $tokens
+ }
+ )*
+ }
- no_namespace_trait_methods! {
+ pub(crate) fn $fn(attr: &str) -> Option<(&'static str, Option<&'static str>)> {
+ $(
+ trait_method_mapping! {
+ attr;
+ $tokens
+ }
+ )*
+ None
+ }
+ };
+}
+trait_methods! {
+ GlobalAttributes;
+ map_global_attributes;
+ (
+ /// Prevent the default action for this element.
+ ///
+ /// For more information, see the MDN docs:
+ ///
+ prevent_default: "dioxus-prevent-default";
+ ),
+ (
+ ///
accesskey;
+ ),
+ (
+ ///
autocapitalize;
+ ),
+ (
+ ///
autofocus;
+ ),
+ (
/// The HTML class attribute is used to specify a class for an HTML element.
///
/// ## Details
@@ -94,39 +159,117 @@ pub trait GlobalAttributes {
/// padding: 10px;
/// }
/// ```
+ ///
class;
+ ),
+ (
+ ///
contenteditable;
+ ),
+ (
+ ///
data;
+ ),
+ (
+ ///
dir;
+ ),
+ (
+ ///
draggable;
+ ),
+ (
+ ///
enterkeyhint;
+ ),
+ (
+ ///
exportparts;
+ ),
+ (
+ ///
hidden;
+ ),
+ (
+ ///
id;
+ ),
+ (
+ ///
inputmode;
+ ),
+ (
+ ///
is;
+ ),
+ (
+ ///
itemid;
+ ),
+ (
+ ///
itemprop;
+ ),
+ (
+ ///
itemref;
+ ),
+ (
+ ///
itemscope;
+ ),
+ (
+ ///
itemtype;
+ ),
+ (
+ ///
lang;
+ ),
+ (
+ ///
nonce;
+ ),
+ (
+ ///
part;
+ ),
+ (
+ ///
role;
+ ),
+ (
+ ///
slot;
+ ),
+ (
+ ///
spellcheck;
+ ),
+ (
+ ///
style;
+ ),
+ (
+ ///
tabindex;
+ ),
+ (
+ ///
title;
+ ),
+ (
+ ///
translate;
+ ),
+ (
/// dangerous_inner_html is Dioxus's replacement for using innerHTML in the browser DOM. In general, setting
/// HTML from code is risky because it’s easy to inadvertently expose your users to a cross-site scripting (XSS)
/// attack. So, you can set HTML directly from Dioxus, but you have to type out dangerous_inner_html to remind
/// yourself that it’s dangerous
dangerous_inner_html;
- }
+ ),
// This macro creates an explicit method call for each of the style attributes.
//
@@ -134,725 +277,2834 @@ pub trait GlobalAttributes {
// actual name of the attribute generated.
//
// This roughly follows the html spec
- style_trait_methods! {
- align_content: "align-content",
- align_items: "align-items",
- align_self: "align-self",
- alignment_adjust: "alignment-adjust",
- alignment_baseline: "alignment-baseline",
- all: "all",
- alt: "alt",
- animation: "animation",
- animation_delay: "animation-delay",
- animation_direction: "animation-direction",
- animation_duration: "animation-duration",
- animation_fill_mode: "animation-fill-mode",
- animation_iteration_count: "animation-iteration-count",
- animation_name: "animation-name",
- animation_play_state: "animation-play-state",
- animation_timing_function: "animation-timing-function",
- azimuth: "azimuth",
- backface_visibility: "backface-visibility",
- background: "background",
- background_attachment: "background-attachment",
- background_clip: "background-clip",
- background_color: "background-color",
- background_image: "background-image",
- background_origin: "background-origin",
- background_position: "background-position",
- background_repeat: "background-repeat",
- background_size: "background-size",
- background_blend_mode: "background-blend-mode",
- baseline_shift: "baseline-shift",
- bleed: "bleed",
- bookmark_label: "bookmark-label",
- bookmark_level: "bookmark-level",
- bookmark_state: "bookmark-state",
- border: "border",
- border_color: "border-color",
- border_style: "border-style",
- border_width: "border-width",
- border_bottom: "border-bottom",
- border_bottom_color: "border-bottom-color",
- border_bottom_style: "border-bottom-style",
- border_bottom_width: "border-bottom-width",
- border_left: "border-left",
- border_left_color: "border-left-color",
- border_left_style: "border-left-style",
- border_left_width: "border-left-width",
- border_right: "border-right",
- border_right_color: "border-right-color",
- border_right_style: "border-right-style",
- border_right_width: "border-right-width",
- border_top: "border-top",
- border_top_color: "border-top-color",
- border_top_style: "border-top-style",
- border_top_width: "border-top-width",
- border_collapse: "border-collapse",
- border_image: "border-image",
- border_image_outset: "border-image-outset",
- border_image_repeat: "border-image-repeat",
- border_image_slice: "border-image-slice",
- border_image_source: "border-image-source",
- border_image_width: "border-image-width",
- border_radius: "border-radius",
- border_bottom_left_radius: "border-bottom-left-radius",
- border_bottom_right_radius: "border-bottom-right-radius",
- border_top_left_radius: "border-top-left-radius",
- border_top_right_radius: "border-top-right-radius",
- border_spacing: "border-spacing",
- bottom: "bottom",
- box_decoration_break: "box-decoration-break",
- box_shadow: "box-shadow",
- box_sizing: "box-sizing",
- box_snap: "box-snap",
- break_after: "break-after",
- break_before: "break-before",
- break_inside: "break-inside",
- buffered_rendering: "buffered-rendering",
- caption_side: "caption-side",
- clear: "clear",
- clear_side: "clear-side",
- clip: "clip",
- clip_path: "clip-path",
- clip_rule: "clip-rule",
- color: "color",
- color_adjust: "color-adjust",
- color_correction: "color-correction",
- color_interpolation: "color-interpolation",
- color_interpolation_filters: "color-interpolation-filters",
- color_profile: "color-profile",
- color_rendering: "color-rendering",
- column_fill: "column-fill",
- column_gap: "column-gap",
- column_rule: "column-rule",
- column_rule_color: "column-rule-color",
- column_rule_style: "column-rule-style",
- column_rule_width: "column-rule-width",
- column_span: "column-span",
- columns: "columns",
- column_count: "column-count",
- column_width: "column-width",
- contain: "contain",
- content: "content",
- counter_increment: "counter-increment",
- counter_reset: "counter-reset",
- counter_set: "counter-set",
- cue: "cue",
- cue_after: "cue-after",
- cue_before: "cue-before",
- cursor: "cursor",
- direction: "direction",
- display: "display",
- display_inside: "display-inside",
- display_outside: "display-outside",
- display_extras: "display-extras",
- display_box: "display-box",
- dominant_baseline: "dominant-baseline",
- elevation: "elevation",
- empty_cells: "empty-cells",
- enable_background: "enable-background",
- fill: "fill",
- fill_opacity: "fill-opacity",
- fill_rule: "fill-rule",
- filter: "filter",
- float: "float",
- float_defer_column: "float-defer-column",
- float_defer_page: "float-defer-page",
- float_offset: "float-offset",
- float_wrap: "float-wrap",
- flow_into: "flow-into",
- flow_from: "flow-from",
- flex: "flex",
- flex_basis: "flex-basis",
- flex_grow: "flex-grow",
- flex_shrink: "flex-shrink",
- flex_flow: "flex-flow",
- flex_direction: "flex-direction",
- flex_wrap: "flex-wrap",
- flood_color: "flood-color",
- flood_opacity: "flood-opacity",
- font: "font",
- font_family: "font-family",
- font_size: "font-size",
- font_stretch: "font-stretch",
- font_style: "font-style",
- font_weight: "font-weight",
- font_feature_settings: "font-feature-settings",
- font_kerning: "font-kerning",
- font_language_override: "font-language-override",
- font_size_adjust: "font-size-adjust",
- font_synthesis: "font-synthesis",
- font_variant: "font-variant",
- font_variant_alternates: "font-variant-alternates",
- font_variant_caps: "font-variant-caps",
- font_variant_east_asian: "font-variant-east-asian",
- font_variant_ligatures: "font-variant-ligatures",
- font_variant_numeric: "font-variant-numeric",
- font_variant_position: "font-variant-position",
- footnote_policy: "footnote-policy",
- glyph_orientation_horizontal: "glyph-orientation-horizontal",
- glyph_orientation_vertical: "glyph-orientation-vertical",
- grid: "grid",
- grid_auto_flow: "grid-auto-flow",
- grid_auto_columns: "grid-auto-columns",
- grid_auto_rows: "grid-auto-rows",
- grid_template: "grid-template",
- grid_template_areas: "grid-template-areas",
- grid_template_columns: "grid-template-columns",
- grid_template_rows: "grid-template-rows",
- grid_area: "grid-area",
- grid_column: "grid-column",
- grid_column_start: "grid-column-start",
- grid_column_end: "grid-column-end",
- grid_row: "grid-row",
- grid_row_start: "grid-row-start",
- grid_row_end: "grid-row-end",
- hanging_punctuation: "hanging-punctuation",
- height: "height",
- hyphenate_character: "hyphenate-character",
- hyphenate_limit_chars: "hyphenate-limit-chars",
- hyphenate_limit_last: "hyphenate-limit-last",
- hyphenate_limit_lines: "hyphenate-limit-lines",
- hyphenate_limit_zone: "hyphenate-limit-zone",
- hyphens: "hyphens",
- icon: "icon",
- image_orientation: "image-orientation",
- image_resolution: "image-resolution",
- image_rendering: "image-rendering",
- ime: "ime",
- ime_align: "ime-align",
- ime_mode: "ime-mode",
- ime_offset: "ime-offset",
- ime_width: "ime-width",
- initial_letters: "initial-letters",
- inline_box_align: "inline-box-align",
- isolation: "isolation",
- justify_content: "justify-content",
- justify_items: "justify-items",
- justify_self: "justify-self",
- kerning: "kerning",
- left: "left",
- letter_spacing: "letter-spacing",
- lighting_color: "lighting-color",
- line_box_contain: "line-box-contain",
- line_break: "line-break",
- line_grid: "line-grid",
- line_height: "line-height",
- line_slack: "line-slack",
- line_snap: "line-snap",
- list_style: "list-style",
- list_style_image: "list-style-image",
- list_style_position: "list-style-position",
- list_style_type: "list-style-type",
- margin: "margin",
- margin_bottom: "margin-bottom",
- margin_left: "margin-left",
- margin_right: "margin-right",
- margin_top: "margin-top",
- marker: "marker",
- marker_end: "marker-end",
- marker_mid: "marker-mid",
- marker_pattern: "marker-pattern",
- marker_segment: "marker-segment",
- marker_start: "marker-start",
- marker_knockout_left: "marker-knockout-left",
- marker_knockout_right: "marker-knockout-right",
- marker_side: "marker-side",
- marks: "marks",
- marquee_direction: "marquee-direction",
- marquee_play_count: "marquee-play-count",
- marquee_speed: "marquee-speed",
- marquee_style: "marquee-style",
- mask: "mask",
- mask_image: "mask-image",
- mask_repeat: "mask-repeat",
- mask_position: "mask-position",
- mask_clip: "mask-clip",
- mask_origin: "mask-origin",
- mask_size: "mask-size",
- mask_box: "mask-box",
- mask_box_outset: "mask-box-outset",
- mask_box_repeat: "mask-box-repeat",
- mask_box_slice: "mask-box-slice",
- mask_box_source: "mask-box-source",
- mask_box_width: "mask-box-width",
- mask_type: "mask-type",
- max_height: "max-height",
- max_lines: "max-lines",
- max_width: "max-width",
- min_height: "min-height",
- min_width: "min-width",
- mix_blend_mode: "mix-blend-mode",
- nav_down: "nav-down",
- nav_index: "nav-index",
- nav_left: "nav-left",
- nav_right: "nav-right",
- nav_up: "nav-up",
- object_fit: "object-fit",
- object_position: "object-position",
- offset_after: "offset-after",
- offset_before: "offset-before",
- offset_end: "offset-end",
- offset_start: "offset-start",
- opacity: "opacity",
- order: "order",
- orphans: "orphans",
- outline: "outline",
- outline_color: "outline-color",
- outline_style: "outline-style",
- outline_width: "outline-width",
- outline_offset: "outline-offset",
- overflow: "overflow",
- overflow_x: "overflow-x",
- overflow_y: "overflow-y",
- overflow_style: "overflow-style",
- overflow_wrap: "overflow-wrap",
- padding: "padding",
- padding_bottom: "padding-bottom",
- padding_left: "padding-left",
- padding_right: "padding-right",
- padding_top: "padding-top",
- page: "page",
- page_break_after: "page-break-after",
- page_break_before: "page-break-before",
- page_break_inside: "page-break-inside",
- paint_order: "paint-order",
- pause: "pause",
- pause_after: "pause-after",
- pause_before: "pause-before",
- perspective: "perspective",
- perspective_origin: "perspective-origin",
- pitch: "pitch",
- pitch_range: "pitch-range",
- play_during: "play-during",
- pointer_events: "pointer-events",
- position: "position",
- quotes: "quotes",
- region_fragment: "region-fragment",
- resize: "resize",
- rest: "rest",
- rest_after: "rest-after",
- rest_before: "rest-before",
- richness: "richness",
- right: "right",
- ruby_align: "ruby-align",
- ruby_merge: "ruby-merge",
- ruby_position: "ruby-position",
- scroll_behavior: "scroll-behavior",
- scroll_snap_coordinate: "scroll-snap-coordinate",
- scroll_snap_destination: "scroll-snap-destination",
- scroll_snap_points_x: "scroll-snap-points-x",
- scroll_snap_points_y: "scroll-snap-points-y",
- scroll_snap_type: "scroll-snap-type",
- shape_image_threshold: "shape-image-threshold",
- shape_inside: "shape-inside",
- shape_margin: "shape-margin",
- shape_outside: "shape-outside",
- shape_padding: "shape-padding",
- shape_rendering: "shape-rendering",
- size: "size",
- speak: "speak",
- speak_as: "speak-as",
- speak_header: "speak-header",
- speak_numeral: "speak-numeral",
- speak_punctuation: "speak-punctuation",
- speech_rate: "speech-rate",
- stop_color: "stop-color",
- stop_opacity: "stop-opacity",
- stress: "stress",
- string_set: "string-set",
- stroke: "stroke",
- stroke_dasharray: "stroke-dasharray",
- stroke_dashoffset: "stroke-dashoffset",
- stroke_linecap: "stroke-linecap",
- stroke_linejoin: "stroke-linejoin",
- stroke_miterlimit: "stroke-miterlimit",
- stroke_opacity: "stroke-opacity",
- stroke_width: "stroke-width",
- tab_size: "tab-size",
- table_layout: "table-layout",
- text_align: "text-align",
- text_align_all: "text-align-all",
- text_align_last: "text-align-last",
- text_anchor: "text-anchor",
- text_combine_upright: "text-combine-upright",
- text_decoration: "text-decoration",
- text_decoration_color: "text-decoration-color",
- text_decoration_line: "text-decoration-line",
- text_decoration_style: "text-decoration-style",
- text_decoration_skip: "text-decoration-skip",
- text_emphasis: "text-emphasis",
- text_emphasis_color: "text-emphasis-color",
- text_emphasis_style: "text-emphasis-style",
- text_emphasis_position: "text-emphasis-position",
- text_emphasis_skip: "text-emphasis-skip",
- text_height: "text-height",
- text_indent: "text-indent",
- text_justify: "text-justify",
- text_orientation: "text-orientation",
- text_overflow: "text-overflow",
- text_rendering: "text-rendering",
- text_shadow: "text-shadow",
- text_size_adjust: "text-size-adjust",
- text_space_collapse: "text-space-collapse",
- text_spacing: "text-spacing",
- text_transform: "text-transform",
- text_underline_position: "text-underline-position",
- text_wrap: "text-wrap",
- top: "top",
- touch_action: "touch-action",
- transform: "transform",
- transform_box: "transform-box",
- transform_origin: "transform-origin",
- transform_style: "transform-style",
- transition: "transition",
- transition_delay: "transition-delay",
- transition_duration: "transition-duration",
- transition_property: "transition-property",
- unicode_bidi: "unicode-bidi",
- vector_effect: "vector-effect",
- vertical_align: "vertical-align",
- visibility: "visibility",
- voice_balance: "voice-balance",
- voice_duration: "voice-duration",
- voice_family: "voice-family",
- voice_pitch: "voice-pitch",
- voice_range: "voice-range",
- voice_rate: "voice-rate",
- voice_stress: "voice-stress",
- voice_volumn: "voice-volumn",
- volume: "volume",
- white_space: "white-space",
- widows: "widows",
- width: "width",
- will_change: "will-change",
- word_break: "word-break",
- word_spacing: "word-spacing",
- word_wrap: "word-wrap",
- wrap_flow: "wrap-flow",
- wrap_through: "wrap-through",
- writing_mode: "writing-mode",
- gap: "gap",
- list_styler_type: "list-style-type",
- row_gap: "row-gap",
- transition_timing_function: "transition-timing-function",
- user_select: "user-select",
- webkit_user_select: "-webkit-user-select",
- z_index : "z-index",
- }
- aria_trait_methods! {
- aria_current: "aria-current",
- aria_details: "aria-details",
- aria_disabled: "aria-disabled",
- aria_hidden: "aria-hidden",
- aria_invalid: "aria-invalid",
- aria_keyshortcuts: "aria-keyshortcuts",
- aria_label: "aria-label",
- aria_roledescription: "aria-roledescription",
- // Widget Attributes
- aria_autocomplete: "aria-autocomplete",
- aria_checked: "aria-checked",
- aria_expanded: "aria-expanded",
- aria_haspopup: "aria-haspopup",
- aria_level: "aria-level",
- aria_modal: "aria-modal",
- aria_multiline: "aria-multiline",
- aria_multiselectable: "aria-multiselectable",
- aria_orientation: "aria-orientation",
- aria_placeholder: "aria-placeholder",
- aria_pressed: "aria-pressed",
- aria_readonly: "aria-readonly",
- aria_required: "aria-required",
- aria_selected: "aria-selected",
- aria_sort: "aria-sort",
- aria_valuemax: "aria-valuemax",
- aria_valuemin: "aria-valuemin",
- aria_valuenow: "aria-valuenow",
- aria_valuetext: "aria-valuetext",
- // Live Region Attributes
- aria_atomic: "aria-atomic",
- aria_busy: "aria-busy",
- aria_live: "aria-live",
- aria_relevant: "aria-relevant",
+ (
+ ///
+ align_content: "align-content", "style";
+ ),
+ (
+ ///
+ align_items: "align-items", "style";
+ ),
+ (
+ ///
+ align_self: "align-self", "style";
+ ),
+ (
+ ///
+ alignment_adjust: "alignment-adjust", "style";
+ ),
+ (
+ ///
+ alignment_baseline: "alignment-baseline", "style";
+ ),
+ (
+ ///
+ all: "all", "style";
+ ),
+ (
+ ///
+ alt: "alt", "style";
+ ),
+ (
+ ///
+ animation: "animation", "style";
+ ),
+ (
+ ///
+ animation_delay: "animation-delay", "style";
+ ),
+ (
+ ///
+ animation_direction: "animation-direction", "style";
+ ),
+ (
+ ///
+ animation_duration: "animation-duration", "style";
+ ),
+ (
+ ///
+ animation_fill_mode: "animation-fill-mode", "style";
+ ),
+ (
+ ///
+ animation_iteration_count: "animation-iteration-count", "style";
+ ),
+ (
+ ///
+ animation_name: "animation-name", "style";
+ ),
+ (
+ ///
+ animation_play_state: "animation-play-state", "style";
+ ),
+ (
+ ///
+ animation_timing_function: "animation-timing-function", "style";
+ ),
+ (
+ ///
+ azimuth: "azimuth", "style";
+ ),
+ (
+ ///
+ backface_visibility: "backface-visibility", "style";
+ ),
+ (
+ ///
+ background: "background", "style";
+ ),
+ (
+ ///
+ background_attachment: "background-attachment", "style";
+ ),
+ (
+ ///
+ background_clip: "background-clip", "style";
+ ),
+ (
+ ///
+ background_color: "background-color", "style";
+ ),
+ (
+ ///
+ background_image: "background-image", "style";
+ ),
+ (
+ ///
+ background_origin: "background-origin", "style";
+ ),
+ (
+ ///
+ background_position: "background-position", "style";
+ ),
+ (
+ ///
+ background_repeat: "background-repeat", "style";
+ ),
+ (
+ ///
+ background_size: "background-size", "style";
+ ),
+ (
+ ///
+ background_blend_mode: "background-blend-mode", "style";
+ ),
+ (
+ ///
+ baseline_shift: "baseline-shift", "style";
+ ),
+ (
+ ///
+ bleed: "bleed", "style";
+ ),
+ (
+ ///
+ bookmark_label: "bookmark-label", "style";
+ ),
+ (
+ ///
+ bookmark_level: "bookmark-level", "style";
+ ),
+ (
+ ///
+ bookmark_state: "bookmark-state", "style";
+ ),
+ (
+ ///
+ border: "border", "style";
+ ),
+ (
+ ///
+ border_color: "border-color", "style";
+ ),
+ (
+ ///
+ border_style: "border-style", "style";
+ ),
+ (
+ ///
+ border_width: "border-width", "style";
+ ),
+ (
+ ///
+ border_bottom: "border-bottom", "style";
+ ),
+ (
+ ///
+ border_bottom_color: "border-bottom-color", "style";
+ ),
+ (
+ ///
+ border_bottom_style: "border-bottom-style", "style";
+ ),
+ (
+ ///
+ border_bottom_width: "border-bottom-width", "style";
+ ),
+ (
+ ///
+ border_left: "border-left", "style";
+ ),
+ (
+ ///
+ border_left_color: "border-left-color", "style";
+ ),
+ (
+ ///
+ border_left_style: "border-left-style", "style";
+ ),
+ (
+ ///
+ border_left_width: "border-left-width", "style";
+ ),
+ (
+ ///
+ border_right: "border-right", "style";
+ ),
+ (
+ ///
+ border_right_color: "border-right-color", "style";
+ ),
+ (
+ ///
+ border_right_style: "border-right-style", "style";
+ ),
+ (
+ ///
+ border_right_width: "border-right-width", "style";
+ ),
+ (
+ ///
+ border_top: "border-top", "style";
+ ),
+ (
+ ///
+ border_top_color: "border-top-color", "style";
+ ),
+ (
+ ///
+ border_top_style: "border-top-style", "style";
+ ),
+ (
+ ///
+ border_top_width: "border-top-width", "style";
+ ),
+ (
+ ///
+ border_collapse: "border-collapse", "style";
+ ),
+ (
+ ///
+ border_image: "border-image", "style";
+ ),
+ (
+ ///
+ border_image_outset: "border-image-outset", "style";
+ ),
+ (
+ ///
+ border_image_repeat: "border-image-repeat", "style";
+ ),
+ (
+ ///
+ border_image_slice: "border-image-slice", "style";
+ ),
+ (
+ ///
+ border_image_source: "border-image-source", "style";
+ ),
+ (
+ ///
+ border_image_width: "border-image-width", "style";
+ ),
+ (
+ ///
+ border_radius: "border-radius", "style";
+ ),
+ (
+ ///
+ border_bottom_left_radius: "border-bottom-left-radius", "style";
+ ),
+ (
+ ///
+ border_bottom_right_radius: "border-bottom-right-radius", "style";
+ ),
+ (
+ ///
+ border_top_left_radius: "border-top-left-radius", "style";
+ ),
+ (
+ ///
+ border_top_right_radius: "border-top-right-radius", "style";
+ ),
+ (
+ ///
+ border_spacing: "border-spacing", "style";
+ ),
+ (
+ ///
+ bottom: "bottom", "style";
+ ),
+ (
+ ///
+ box_decoration_break: "box-decoration-break", "style";
+ ),
+ (
+ ///
+ box_shadow: "box-shadow", "style";
+ ),
+ (
+ ///
+ box_sizing: "box-sizing", "style";
+ ),
+ (
+ ///
+ box_snap: "box-snap", "style";
+ ),
+ (
+ ///
+ break_after: "break-after", "style";
+ ),
+ (
+ ///
+ break_before: "break-before", "style";
+ ),
+ (
+ ///
+ break_inside: "break-inside", "style";
+ ),
+ (
+ ///
+ buffered_rendering: "buffered-rendering", "style";
+ ),
+ (
+ ///
+ caption_side: "caption-side", "style";
+ ),
+ (
+ ///
+ clear: "clear", "style";
+ ),
+ (
+ ///
+ clear_side: "clear-side", "style";
+ ),
+ (
+ ///
+ clip: "clip", "style";
+ ),
+ (
+ ///
+ clip_path: "clip-path", "style";
+ ),
+ (
+ ///
+ clip_rule: "clip-rule", "style";
+ ),
+ (
+ ///
+ color: "color", "style";
+ ),
+ (
+ ///
+ color_adjust: "color-adjust", "style";
+ ),
+ (
+ ///
+ color_correction: "color-correction", "style";
+ ),
+ (
+ ///
+ color_interpolation: "color-interpolation", "style";
+ ),
+ (
+ ///
+ color_interpolation_filters: "color-interpolation-filters", "style";
+ ),
+ (
+ ///
+ color_profile: "color-profile", "style";
+ ),
+ (
+ ///
+ color_rendering: "color-rendering", "style";
+ ),
+ (
+ ///
+ column_fill: "column-fill", "style";
+ ),
+ (
+ ///
+ column_gap: "column-gap", "style";
+ ),
+ (
+ ///
+ column_rule: "column-rule", "style";
+ ),
+ (
+ ///
+ column_rule_color: "column-rule-color", "style";
+ ),
+ (
+ ///
+ column_rule_style: "column-rule-style", "style";
+ ),
+ (
+ ///
+ column_rule_width: "column-rule-width", "style";
+ ),
+ (
+ ///
+ column_span: "column-span", "style";
+ ),
+ (
+ ///
+ columns: "columns", "style";
+ ),
+ (
+ ///
+ column_count: "column-count", "style";
+ ),
+ (
+ ///
+ column_width: "column-width", "style";
+ ),
+ (
+ ///
+ contain: "contain", "style";
+ ),
+ (
+ ///
+ content: "content", "style";
+ ),
+ (
+ ///
+ counter_increment: "counter-increment", "style";
+ ),
+ (
+ ///
+ counter_reset: "counter-reset", "style";
+ ),
+ (
+ ///
+ counter_set: "counter-set", "style";
+ ),
+ (
+ ///
+ cue: "cue", "style";
+ ),
+ (
+ ///
+ cue_after: "cue-after", "style";
+ ),
+ (
+ ///
+ cue_before: "cue-before", "style";
+ ),
+ (
+ ///
+ cursor: "cursor", "style";
+ ),
+ (
+ ///
+ direction: "direction", "style";
+ ),
+ (
+ ///
+ display: "display", "style";
+ ),
+ (
+ ///
+ display_inside: "display-inside", "style";
+ ),
+ (
+ ///
+ display_outside: "display-outside", "style";
+ ),
+ (
+ ///
+ display_extras: "display-extras", "style";
+ ),
+ (
+ ///
+ display_box: "display-box", "style";
+ ),
+ (
+ ///
+ dominant_baseline: "dominant-baseline", "style";
+ ),
+ (
+ ///
+ elevation: "elevation", "style";
+ ),
+ (
+ ///
+ empty_cells: "empty-cells", "style";
+ ),
+ (
+ ///
+ enable_background: "enable-background", "style";
+ ),
+ (
+ ///
+ fill: "fill", "style";
+ ),
+ (
+ ///
+ fill_opacity: "fill-opacity", "style";
+ ),
+ (
+ ///
+ fill_rule: "fill-rule", "style";
+ ),
+ (
+ ///
+ filter: "filter", "style";
+ ),
+ (
+ ///
+ float: "float", "style";
+ ),
+ (
+ ///
+ float_defer_column: "float-defer-column", "style";
+ ),
+ (
+ ///
+ float_defer_page: "float-defer-page", "style";
+ ),
+ (
+ ///
+ float_offset: "float-offset", "style";
+ ),
+ (
+ ///
+ float_wrap: "float-wrap", "style";
+ ),
+ (
+ ///
+ flow_into: "flow-into", "style";
+ ),
+ (
+ ///
+ flow_from: "flow-from", "style";
+ ),
+ (
+ ///
+ flex: "flex", "style";
+ ),
+ (
+ ///
+ flex_basis: "flex-basis", "style";
+ ),
+ (
+ ///
+ flex_grow: "flex-grow", "style";
+ ),
+ (
+ ///
+ flex_shrink: "flex-shrink", "style";
+ ),
+ (
+ ///
+ flex_flow: "flex-flow", "style";
+ ),
+ (
+ ///
+ flex_direction: "flex-direction", "style";
+ ),
+ (
+ ///
+ flex_wrap: "flex-wrap", "style";
+ ),
+ (
+ ///
+ flood_color: "flood-color", "style";
+ ),
+ (
+ ///
+ flood_opacity: "flood-opacity", "style";
+ ),
+ (
+ ///
+ font: "font", "style";
+ ),
+ (
+ ///
+ font_family: "font-family", "style";
+ ),
+ (
+ ///
+ font_size: "font-size", "style";
+ ),
+ (
+ ///
+ font_stretch: "font-stretch", "style";
+ ),
+ (
+ ///
+ font_style: "font-style", "style";
+ ),
+ (
+ ///
+ font_weight: "font-weight", "style";
+ ),
+ (
+ ///
+ font_feature_settings: "font-feature-settings", "style";
+ ),
+ (
+ ///
+ font_kerning: "font-kerning", "style";
+ ),
+ (
+ ///
+ font_language_override: "font-language-override", "style";
+ ),
+ (
+ ///
+ font_size_adjust: "font-size-adjust", "style";
+ ),
+ (
+ ///
+ font_synthesis: "font-synthesis", "style";
+ ),
+ (
+ ///
+ font_variant: "font-variant", "style";
+ ),
+ (
+ ///
+ font_variant_alternates: "font-variant-alternates", "style";
+ ),
+ (
+ ///
+ font_variant_caps: "font-variant-caps", "style";
+ ),
+ (
+ ///
+ font_variant_east_asian: "font-variant-east-asian", "style";
+ ),
+ (
+ ///
+ font_variant_ligatures: "font-variant-ligatures", "style";
+ ),
+ (
+ ///
+ font_variant_numeric: "font-variant-numeric", "style";
+ ),
+ (
+ ///
+ font_variant_position: "font-variant-position", "style";
+ ),
+ (
+ ///
+ footnote_policy: "footnote-policy", "style";
+ ),
+ (
+ ///
+ glyph_orientation_horizontal: "glyph-orientation-horizontal", "style";
+ ),
+ (
+ ///
+ glyph_orientation_vertical: "glyph-orientation-vertical", "style";
+ ),
+ (
+ ///
+ grid: "grid", "style";
+ ),
+ (
+ ///
+ grid_auto_flow: "grid-auto-flow", "style";
+ ),
+ (
+ ///
+ grid_auto_columns: "grid-auto-columns", "style";
+ ),
+ (
+ ///
+ grid_auto_rows: "grid-auto-rows", "style";
+ ),
+ (
+ ///
+ grid_template: "grid-template", "style";
+ ),
+ (
+ ///
+ grid_template_areas: "grid-template-areas", "style";
+ ),
+ (
+ ///
+ grid_template_columns: "grid-template-columns", "style";
+ ),
+ (
+ ///
+ grid_template_rows: "grid-template-rows", "style";
+ ),
+ (
+ ///
+ grid_area: "grid-area", "style";
+ ),
+ (
+ ///
+ grid_column: "grid-column", "style";
+ ),
+ (
+ ///
+ grid_column_start: "grid-column-start", "style";
+ ),
+ (
+ ///
+ grid_column_end: "grid-column-end", "style";
+ ),
+ (
+ ///
+ grid_row: "grid-row", "style";
+ ),
+ (
+ ///
+ grid_row_start: "grid-row-start", "style";
+ ),
+ (
+ ///
+ grid_row_end: "grid-row-end", "style";
+ ),
+ (
+ ///
+ hanging_punctuation: "hanging-punctuation", "style";
+ ),
+ (
+ ///
+ height: "height", "style";
+ ),
+ (
+ ///
+ hyphenate_character: "hyphenate-character", "style";
+ ),
+ (
+ ///
+ hyphenate_limit_chars: "hyphenate-limit-chars", "style";
+ ),
+ (
+ ///
+ hyphenate_limit_last: "hyphenate-limit-last", "style";
+ ),
+ (
+ ///
+ hyphenate_limit_lines: "hyphenate-limit-lines", "style";
+ ),
+ (
+ ///
+ hyphenate_limit_zone: "hyphenate-limit-zone", "style";
+ ),
+ (
+ ///
+ hyphens: "hyphens", "style";
+ ),
+ (
+ ///
+ icon: "icon", "style";
+ ),
+ (
+ ///
+ image_orientation: "image-orientation", "style";
+ ),
+ (
+ ///
+ image_resolution: "image-resolution", "style";
+ ),
+ (
+ ///
+ image_rendering: "image-rendering", "style";
+ ),
+ (
+ ///
+ ime: "ime", "style";
+ ),
+ (
+ ///
+ ime_align: "ime-align", "style";
+ ),
+ (
+ ///
+ ime_mode: "ime-mode", "style";
+ ),
+ (
+ ///
+ ime_offset: "ime-offset", "style";
+ ),
+ (
+ ///
+ ime_width: "ime-width", "style";
+ ),
+ (
+ ///
+ initial_letters: "initial-letters", "style";
+ ),
+ (
+ ///
+ inline_box_align: "inline-box-align", "style";
+ ),
+ (
+ ///
+ isolation: "isolation", "style";
+ ),
+ (
+ ///
+ justify_content: "justify-content", "style";
+ ),
+ (
+ ///
+ justify_items: "justify-items", "style";
+ ),
+ (
+ ///
+ justify_self: "justify-self", "style";
+ ),
+ (
+ ///
+ kerning: "kerning", "style";
+ ),
+ (
+ ///
+ left: "left", "style";
+ ),
+ (
+ ///
+ letter_spacing: "letter-spacing", "style";
+ ),
+ (
+ ///
+ lighting_color: "lighting-color", "style";
+ ),
+ (
+ ///
+ line_box_contain: "line-box-contain", "style";
+ ),
+ (
+ ///
+ line_break: "line-break", "style";
+ ),
+ (
+ ///
+ line_grid: "line-grid", "style";
+ ),
+ (
+ ///
+ line_height: "line-height", "style";
+ ),
+ (
+ ///
+ line_slack: "line-slack", "style";
+ ),
+ (
+ ///
+ line_snap: "line-snap", "style";
+ ),
+ (
+ ///
+ list_style: "list-style", "style";
+ ),
+ (
+ ///
+ list_style_image: "list-style-image", "style";
+ ),
+ (
+ ///
+ list_style_position: "list-style-position", "style";
+ ),
+ (
+ ///
+ list_style_type: "list-style-type", "style";
+ ),
+ (
+ ///
+ margin: "margin", "style";
+ ),
+ (
+ ///
+ margin_bottom: "margin-bottom", "style";
+ ),
+ (
+ ///
+ margin_left: "margin-left", "style";
+ ),
+ (
+ ///
+ margin_right: "margin-right", "style";
+ ),
+ (
+ ///
+ margin_top: "margin-top", "style";
+ ),
+ (
+ ///
+ marker: "marker", "style";
+ ),
+ (
+ ///
+ marker_end: "marker-end", "style";
+ ),
+ (
+ ///
+ marker_mid: "marker-mid", "style";
+ ),
+ (
+ ///
+ marker_pattern: "marker-pattern", "style";
+ ),
+ (
+ ///
+ marker_segment: "marker-segment", "style";
+ ),
+ (
+ ///
+ marker_start: "marker-start", "style";
+ ),
+ (
+ ///
+ marker_knockout_left: "marker-knockout-left", "style";
+ ),
+ (
+ ///
+ marker_knockout_right: "marker-knockout-right", "style";
+ ),
+ (
+ ///