Skip to main content

ComponentData

Type Alias ComponentData 

Source
pub type ComponentData = ComponentData;

Aliased Type§

pub struct ComponentData {
    pub template: String,
    pub css: String,
    pub css_href: String,
    pub template_json: String,
    pub template_functions: String,
    pub hydration_keys: Vec<String>,
    pub navigation_keys: Vec<String>,
    pub hydration_mode: i32,
    pub navigation_mode: Option<i32>,
    pub uses_shadow_dom: bool,
    pub work_policy: i32,
}

Fields§

§template: String

Non-WebUI client-side template payload. FAST plugins store complete HTML here.

§css: String

Compiled component CSS content for the Style and Module strategies. Empty for Link and for components without CSS.

§css_href: String

External stylesheet href for the Link CSS strategy. Set to e.g. “/my-card.css” when the component has a CSS file and the build used CssStrategy::Link. Empty for Style/Module strategies and for components without CSS. Ordered style closures decide which Document or ShadowRoot owns the link.

§template_json: String

WebUI plugin JSON-safe component metadata. Stored separately from executable condition closures so handlers can emit the static metadata in application/json data blocks.

§template_functions: String

WebUI plugin component-local JavaScript condition closure array. Empty when the component has no conditions or boolean attributes.

§hydration_keys: Vec<String>

Exact @observable + @attr property keys when hydration_mode is KEYS. Existing SSR host attributes take precedence; bootstrap state fills attribute-backed properties that were not materialized on the host. Template roots already exist in the trusted SSR DOM and do not enter initial state solely because a component has authored browser code. Sorted and deduplicated; empty for NONE and ALL.

§navigation_keys: Vec<String>

Exact partial-navigation keys when navigation_mode is KEYS. Authored components use @observable + @attr property keys plus template roots. Scriptless compiled templates include only their template roots. Sorted and deduplicated; empty for NONE and ALL.

§hydration_mode: i32

How initial hydration state is selected for this component.

§navigation_mode: Option<i32>

How partial-navigation state is selected for this component. Presence is significant: protocols produced before projection metadata leave this absent, so handlers preserve full state instead of treating it as NONE.

§uses_shadow_dom: bool

Whether this component effectively uses Shadow DOM after build-time fallback and authored declarative Shadow DOM resolution.

§work_policy: i32

Compiler-owned client work policy. Zero/eager is absent on the wire.