Package-level declarations
Types
Stable action identity shared by groups and action menus. Icon rendering remains caller-owned.
Optional custom visible and overflow slots for one DomposableAppBarProps action.
Overflow-aware action container; the application owns each action and its identity.
Main-axis placement. The layout's gap remains the minimum spacing for every arrangement.
A typed identity for a design-system extension. Keep the key stable across recomposition.
Immutable, typed renderer bindings. Keys are identities rather than global string names.
Product renderers receive the same portable modifier as the built-in components.
A controlled disclosure whose expanded content remains owned by the caller.
Standard Material toolbar colors or the high-emphasis expressive treatment.
Controlled semantic form shared by native Compose and HTML renderers.
Fixed-height rows; the collection's DomposableLazyGridProps.columns controls responsive width.
Resolves a DOM-owned trigger for adapters that already render it outside Compose.
Preferred side for a semantic HTML menu positioned against a DOM-owned anchor.
Resolves a preferred HTML menu side from the rendered menu root.
App-owned HTML/SVG decoration around the remaining ordered modifier chain. Render content once.
Return null for unhandled elements, allowing the attribute renderer to handle them.
Application-owned HTML adapter for an open DomposableModifierElement.
A browser anchor on HTML; opens a URI with the platform handler on Compose UI.
Opt-in rows. In measured mode rowHeight estimates rows until their actual height is known.
Semantic cell fills; renderers map these roles to their own palette.
Semantic foreground roles; renderers map these roles to their own palette.
Renderer-neutral column roles for responsive matrix layouts.
A renderer-neutral matrix cell. The icon type is supplied by the consuming design system so this model does not depend on a particular icon catalogue.
A keyed matrix row. The icon type is supplied by the consuming design system so this model stays independent of any product icon source.
Bounds of the modal surface itself rather than its modifier wrapper. Native dialogs/sheets retain platform placement; alignment adapts the HTML surface to the browser viewport. padding controls Basic/FullScreen dialog and sheet content; Material picker/alert variants retain their platform content spacing. sectionSpacing controls gaps between arranged sections in HTML modals and native Basic/FullScreen dialogs and sheet content. Native Material picker/alert variants retain their platform section spacing, as does the native sheet drag handle.
Ordered portable operations. Platform adapters preserve order, including nested padding.
Open marker for app-owned portable modifier behavior. Each renderer must handle it explicitly.
Multiple independent selected segments, with stable indices within the supplied labels.
Layout and accessibility options for a one-item-at-a-time responsive carousel.
Shared pull progress for custom indicators; progress is clamped to 0..1.
A safe, renderer-neutral node produced by parseDomposableRichHtml. The AST contains only text, allowlisted formatting elements, and a validated link destination; it never contains executable markup or arbitrary HTML attributes.
Safe, renderer-neutral rich text parsed as allowlisted markup on every platform.
Fixed cells in a horizontally scrolling collection.
A backdrop in the caller's overlay container; a dismissible scrim needs an accessible label.
A controlled wheel; identity and display labels remain owned by the caller.
Cross-renderer scroll position. Values are Compose pixels on native and CSS pixels in HTML.
Cross-renderer scroll position. Values are Compose pixels on native and CSS pixels in HTML.
Cross-renderer scroll position. Values are Compose pixels on native and CSS pixels in HTML.
App-owned values stay stable when options are reordered or their labels are translated.
One request owned by DomposableSnackbarHostState; completion is idempotent.
Serializes requests; cancelling a caller removes its active or queued snackbar.
Presentation only: the app decides when to show, dismiss or replace a message.
Stable, accessible tab data with optional generic icon and badge/content slots.
A semantic HTML table and an accessible native row/column collection.
Whether arrow-key navigation also changes the selected tab.
Portable layout details that are specific to tab rows. Null fields keep Material defaults.
Renderer-neutral text input behavior and content. New primary-constructor parameters preserve existing Kotlin source calls through defaults; binary consumers should use the next 0.x minor.
Renderer-neutral text content and appearance. New primary-constructor parameters preserve existing Kotlin source calls through defaults; binary consumers should use the next 0.x minor.
An inline run; unspecified values inherit the surrounding text's theme and appearance.
Current theme values from the nearest enclosing theme, rather than mutable global branding.
Supplemental help for an already labelled control; never its only accessible name.
A platform-neutral filled SVG path for an icon. The path is rendered using the icon's inherited content color and the component's requested size.
Browser chrome changes dynamic height; small height keeps document layouts stable while scrolling.
HTML navigation presentation; native targets retain Material navigation.
Properties
Product providers can install brand element handling once for every descendant control.
Installed by a product provider; explicit call-site renderers take precedence.
Functions
Native host interop for incremental migration. Keep this element inside Compose UI renderers.
Semantic attributes attach to the control, not to its layout wrappers.
Shared forwarding entry point used by generated or manually declared product components.
Responsive semantic table with caller-owned cells and optional row or cell actions.
Returns whether controls in the nearest DomposableForm should be interactive.
Applies portable operations in order. Child-layout operations get an outer item node so they remain effective when preceding operations add padding or styling wrappers. Application elements must have an explicit renderer; unsupported elements fail closed.
A matching decoration owns the element; returning null falls back to attribute handling.
Applies semantic attributes as ordered wrappers for raw content that has no semantic root. Existing overloads continue to leave these attributes for component roots.
Renders a reusable filled vector path as an accessible icon on native and HTML platforms.
Controlled icon toggle; the app owns selection just as it does for a checkbox.
Stable keys preserve each item's composition when the application reorders its data.
Interactive line chart. Axis labels and accessible descriptions are supplied by the caller.
HTML measures and scrolls in CSS pixels; native Compose exposes its pixel ScrollState value.
Screen chrome without imposing a state model, ViewModel, DI container, or navigator.
Optional loading/error convenience; applications can supply their own state and chrome.
Binds a DOM scrollable element to a shared scroll state, including animated commands.
Typed choices use option values, rather than translated labels, as their selection identity.
Keyed tabs with per-item enabled state, accessible names, and optional content slots.
One wrapping, selectable text value with individually styled runs on every renderer.
All three checkbox states are visible and announced consistently on native and HTML.
Accessible value bars accompanied by the caller's localized labels and value formatter.
Keeps content composed while hidden, without reserving layout space or exposing its semantics. Useful for retaining an adaptive list's local UI state while showing its detail on a narrow window.
Keeps content composed while hidden, without reserving layout space or exposing its semantics. Useful for retaining an adaptive list's local UI state while showing its detail on a narrow window.
Keeps content composed while hidden, without reserving layout space or exposing its semantics. Useful for retaining an adaptive list's local UI state while showing its detail on a narrow window.
Applies app-owned attributes and styles directly to the rendered HTML element.
Anchors an HTML menu to an existing trigger without adding a wrapper around that trigger.
Prefers a side when it fits; otherwise the menu uses its normal viewport-aware placement.
Resolves the preferred side from the rendered menu root; this modifier is JS-only.
Caps a scrollable region without expanding shorter content.
A content-sized document that fills at least the chosen viewport height.
Insets are logical: start/end follow the platform's layout direction.
Parses a deliberately small formatting vocabulary. Active-content subtrees, unknown tags, and all attributes other than a validated anchor href are dropped. Renderers should build their own text/DOM nodes from the returned AST and must not insert the source with innerHTML.
Install inside a native Box content lambda so child alignment resolves natively.
Install inside a native Column content lambda so child weights and horizontal alignment resolve natively.
Nested providers replace individual keys and inherit the rest of their parent's bindings.
Provides a form submit action to custom input renderers and their descendants.
Install inside a native Row content lambda so child weights and vertical alignment resolve natively.
Returns an up-to-date submit action for a text field's Done/Go IME callback or a submit control. It does not submit automatically, so a control cannot accidentally submit twice.
Returns the current enclosing form action for standard input renderers' IME callbacks, or null when the input is outside a DomposableForm.
Clockwise visual rotation in degrees, without changing measured layout size.
Returns a safe relative, web, email, or telephone link target, or null when it is unsafe. The returned value is intended for a renderer-created anchor element, never HTML interpolation.
Serializes the parser's fixed safe vocabulary for native document engines and editor boundaries.
Visual transform around the center; measured layout size is unchanged. Negative values mirror content.
Native elevation or a CSS shadow. Does not clip content; use clip separately when needed.
Appends a native-only operation without replacing the portable operations already in the chain.
Native-only conversion. Application elements require an explicit renderer and are never dropped.
Bounds content using the host viewport, rather than its parent's available height. subtract reserves app-owned chrome. Native uses the current window size for both units; HTML uses dvh/svh. Neither includes additional safe-area padding automatically.
Must be consumed by a row or column child renderer.