ui library

Classes

Angle
AppBinding
Main class that provide services (also known as "bindings").
AsyncSnapshot<T>
Immutable representation of the most recent interaction with an asynchronous computation.
AttrCheck
Audio
BackgroundImage
The background-image CSS property sets one or more background images on an element.
BackgroundPosition
The background-position CSS property sets the initial position for each background image. The position is relative to the position layer set by background-origin.
BackgroundRepeat
The background-repeat CSS property sets how background images are repeated. A background image can be repeated along the horizontal and vertical axes, or not repeated at all.
BackgroundSize
The background-size CSS property sets the size of the element's background image. The image can be left to its natural size, stretched, or constrained to fit the available space.
BlockStyleRule
Border
BorderRadius
BorderSide
BoxShadow
BreakLine
BuildableElement
An Element that has multiple children and a build method.
BuildableRenderObjectElement
BuildContext
The BuildContext supplied to a Components build() method.
Builder
A stateless utility component whose build method uses its builder callback to create the component's child.
BuildOwner
CachingIterable<E>
A lazy caching version of Iterable.
Center
ChangeNotifier
A class that can be extended or mixed in that provides a change notification API using VoidCallback for notifications.
ClientAnnotation
ClientTarget<T extends Component>
The target configuration for a @client component. DO NOT USE DIRECTLY. Use the generated defaultJasprOptions instead.
Color
Colors
Column
Component
Describes the configuration for an Element.
Container
CssUtility
Cursor
Curve
DecoderAnnotation
Document
DomComponent
Represents a html element in the DOM
DomElement
EdgeInsets
Element
An instantiation of a Component at a particular location in the tree.
EncoderAnnotation
Factory<T>
A factory interface that also reports the type of the created objects.
Flex
FlexBasis
FontFaceStyleRule
FontFamilies
FontFamily
FontStyle
Fragment
A utility component that renders its children without any wrapper element.
FutureBuilder<T>
Component that builds itself based on the latest snapshot of interaction with a Future.
GlobalKey<T extends State<StatefulComponent>>
A key that is unique across the entire app.
GlobalObjectKey<T extends State<StatefulComponent>>
A global key that takes its identity from the object used as its value.
Grid
GridAreas
GridGap
GridPlacement
GridTemplate
GridTrack
GridTracks
Heading
Image
ImageStyle
Import
Define a platform specific import with auto-generated stubbing.
ImportStyleRule
InheritedComponent
Base class for components that efficiently propagate information down the tree.
InheritedElement
An Element that uses an InheritedComponent as its configuration.
InheritedModel<T>
InheritedModelElement<T>
Jaspr
Main class for initializing the jaspr framework.
JasprOptions
Global options for configuring jaspr. DO NOT USE DIRECTLY. Use the generated defaultJasprOptions instead.
Key
A Key is an identifier for Components, Elements and SemanticsNodes.
KeyframesStyleRule
LayerStyleRule
LeafElement
LeafRenderObjectElement
LinePlacement
Listenable
An object that maintains a list of listeners.
ListenableBuilder
ListItem
ListItemMarker
ListView
LocalKey
A key that is not a GlobalKey.
MediaQuery
MediaStyleRule
NestedStyleRule
Notification
A notification that can bubble up the component tree.
ObserverComponent
Base class for components that observes the build execution of it's descendants in the Component tree.
ObserverElement
An Element that uses an ObserverComponent as its configuration. You can override willRebuildElement, didRebuildElement and didUnmountElement to execute the required logic.
Outline
OutlineWidth
Overflow
OverflowValue
Padding
Page
Position
ProxyComponent
ProxyElement
An Element that has multiple children based on a proxy list.
ProxyRenderObjectElement
Radius
RawNode
RawNodeElement
RawText
Renders its input as raw HTML.
RenderObject
Row
Selector
SkipContent
SkipContentElement
Spacer
State<T extends StatefulComponent>
The logic and internal state for a StatefulComponent.
StatefulBuilder
A platonic component that both has state and calls a closure to obtain its child component.
StatefulComponent
A component that has mutable state.
StatefulElement
An Element that uses a StatefulComponent as its configuration.
StatelessComponent
A component that does not require mutable state.
StatelessElement
An Element that uses a StatelessComponent as its configuration.
StreamBuilder<T>
Component that builds itself based on the latest snapshot of interaction with a Stream.
StreamBuilderBase<T, S>
Base class for components that build themselves based on interaction with a specified Stream.
Style
Renders the provided StyleRules into css and wraps them with a <style> element.
StyleRule
Styles
Represents a set of css styles by pairs of property and value.
StylesMixin<T>
SupportsStyleRule
SyncAnnotation
SynchronousFuture<T>
A Future whose then implementation calls the callback immediately.
Text
Represents a plain text node with no additional properties.
TextDecoration
TextDecorationLine
TextDecorationThickness
TextElement
TextParagraph
TextShadow
TextSpan
TrackRepeat
TrackSize
Transform
Transition
UniqueKey
A key that is only equal to itself.
Unit
ValueKey<T>
A key that uses a value of a particular type to identify itself.
ValueListenable<T>
An interface for subclasses of Listenable that expose a value.
ValueListenableBuilder<T>
ValueNotifier<T>
A ChangeNotifier that holds a single value.
Video
ZIndex

Enums

AlignItems
AlignSelf
AutoComplete
Indicates whether input elements can by default have their values automatically completed by the browser. autocomplete attributes on form elements override it on <form>.
BackgroundAlignX
BackgroundAlignY
BackgroundAttachment
The background-attachment CSS property sets whether a background image's position is fixed within the viewport, or scrolls with its containing block.
BackgroundAxisRepeat
The background-repeat CSS property sets how background images are repeated.
BackgroundClip
The background-clip CSS property sets whether an element's background extends underneath its border box, padding box, or content box.
BackgroundOrigin
The background-origin CSS property sets the background's origin: from the border start, inside the border, or inside the padding.
BorderStyle
BoxSizing
ButtonType
Defines the default behavior of a button.
Combinator
ConnectionState
The state of connection to an asynchronous computation.
CrossOrigin
Indicates if the fetching of the media must be done using a CORS request. Media data from a CORS request can be reused in the <canvas> element without being marked "tainted". If the crossorigin attribute is not specified, then a non-CORS request is sent (without the Origin request header), and the browser marks the media as tainted and restricts access to its data, preventing its usage in <canvas> elements. If the crossorigin attribute is specified, then a CORS request is sent (with the Origin request header); but if the server does not opt into allowing cross-origin access to the media data by the origin site (by not sending any Access-Control-Allow-Origin response header, or by not including the site's origin in any Access-Control-Allow-Origin response header it does send), then the browser blocks the media from loading, and logs a CORS error to the devtools console.
Display
The display CSS property sets whether an element is treated as a block or inline element and the layout used for its children, such as flow layout, grid or flex.
FlexDirection
FlexWrap
FontWeight
FormEncType
The MIME type of a form submission.
FormMethod
The HTTP method to submit a form with.
ImportPlatform
InputType
The type for an <input> element.
JustifyContent
ListStyle
ListStylePosition
ListType
MediaLoading
Indicates how the browser should load the media. Loading is only deferred when JavaScript is enabled.
NumberingType
The numbering type for a list element.
Orientation
OutlineStyle
Preload
Intended to provide a hint to the browser about what the author thinks will lead to the best user experience when loading a media object. The default value is different for each browser. The spec advises it to be set to Preload.metadata.
ReferrerPolicy
The Referrer-Policy controls how much referrer information (sent with the Referer header) should be included with requests.
SchedulerPhase
SpellCheck
Specifies whether an element is subject to spell checking by the underlying browser/OS.
StepJump
Target
The name/keyword for a browsing context (a tab, window, or <iframe>).
TextAlign
TextDecorationLineKeyword
TextDecorationStyle
TextOverflow
TextTransform
TextWrap
Indicates how the control wraps text.
Visibility
WhiteSpace

Mixins

ComponentsBinding
Main app binding, controls the root component and global state
NotifiableElementMixin
Mixin this class to allow receiving Notification objects dispatched by child elements.
OnFirstBuild
Mixin on StatelessComponent that performs some async task on the first build
PreloadStateMixin<T extends StatefulComponent>
Mixin on State that preloads state on the server
RenderObjectElement
SchedulerBinding
SyncStateMixin<T extends StatefulComponent, U>
Mixin on State that syncs state data from the server to the client.
ViewTransitionMixin<T extends StatefulComponent>

Extension Types

Event
The Event interface represents an event which takes place on an EventTarget.

Constants

client → const ClientAnnotation
Used to annotate a client component.
css → const CssUtility
Styling utility to create nested style definitions.
cssBlockInset → const String
cssPropSpace → const String
decoder → const DecoderAnnotation
Used to annotate an decoder function for a custom model.
encoder → const EncoderAnnotation
Used to annotate an encoder function for a custom model.
factory → const _Factory
Used to annotate an instance or static method m. Indicates that m must either be abstract or must return a newly allocated object or null. In addition, every method that either implements or overrides m is implicitly annotated with this same annotation.
immutable → const Immutable
Used to annotate a class C. Indicates that C and all subtypes of C must be immutable.
kDebugMode → const bool
A constant that is true if the application was compiled in debug mode.
kGenerateMode → const bool
A constant that is true if the application is running in static-site-generation mode.
kIsWasm → const bool
A constant that is true if the application was compiled to WebAssembly.
kIsWeb → const bool
A constant that is true if the application was compiled to run on the web.
kReleaseMode → const bool
A constant that is true if the application was compiled in release mode.
kVerboseMode → const bool
A constant that is true if the application was run in verbose mode.
mustCallSuper → const _MustCallSuper
Used to annotate an instance member (method, getter, setter, operator, or field) m. Indicates that every invocation of a member that overrides m must also invoke m. In addition, every method that overrides m is implicitly annotated with this same annotation.
nonVirtual → const _NonVirtual
Used to annotate an instance member (method, getter, setter, operator, or field) m in a class C or mixin M. Indicates that m should not be overridden in any classes that extend or mixin C or M.
optionalTypeArgs → const _OptionalTypeArgs
Used to annotate a class, mixin, extension, function, method, or typedef declaration C. Indicates that any type arguments declared on C are to be treated as optional.
protected → const _Protected
Used to annotate an instance member in a class or mixin which is meant to be visible only within the declaring library, and to other instance members of the class or mixin, and their subtypes.
required → const Required
Used to annotate a named parameter p in a method or function f. Indicates that every invocation of f must include an argument corresponding to p, despite the fact that p would otherwise be an optional parameter.
sync → const SyncAnnotation
visibleForTesting → const _VisibleForTesting
Used to annotate a declaration that was made public, so that it is more visible than otherwise necessary, to make code testable.

Functions

a(List<Component> children, {String? download, required String href, Target? target, String? type, ReferrerPolicy? referrerPolicy, Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <a> HTML element (or anchor element), with its href attribute, creates a hyperlink to web pages, files, email addresses, locations in the same page, or anything else a URL can address.
article(List<Component> children, {Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <article> HTML element represents a self-contained composition in a document, page, application, or site, which is intended to be independently distributable or reusable (e.g., in syndication). Examples include: a forum post, a magazine or newspaper article, or a blog entry, a product card, a user-submitted comment, an interactive widget or gadget, or any other independent item of content.
aside(List<Component> children, {Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <aside> HTML element represents a portion of a document whose content is only indirectly related to the document's main content. Asides are frequently presented as sidebars or call-out boxes.
audio(List<Component> children, {bool? autoplay, bool? controls, CrossOrigin? crossOrigin, bool? loop, bool? muted, Preload? preload, String? src, Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <audio> HTML element is used to embed sound content in documents. It may contain one or more audio sources, represented using the src attribute or the <source> element: the browser will choose the most suitable one. It can also be the destination for streamed media, using a MediaStream.
b(List<Component> children, {Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <b> HTML element is used to draw the reader's attention to the element's contents, which are not otherwise granted special importance. This was formerly known as the Boldface element, and most browsers still draw the text in boldface. However, you should not use <b> for styling text; instead, you should use the CSS font-weight property to create boldface text, or the <strong> element to indicate that text is of special importance.
blockquote(List<Component> children, {String? cite, Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <blockquote> HTML element indicates that the enclosed text is an extended quotation. Usually, this is rendered visually by indentation. A URL for the source of the quotation may be given using the cite attribute, while a text representation of the source can be given using the <cite> element.
body(List<Component> children, {Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <body> HTML element represents the content of an HTML document. There can be only one <body> element in a document.
br({Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <br> HTML element produces a line break in text (carriage-return). It is useful for writing a poem or an address, where the division of lines is significant.
button(List<Component> children, {bool? autofocus, bool? disabled, ButtonType? type, VoidCallback? onClick, Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <button> HTML element is an interactive element activated by a user with a mouse, keyboard, finger, voice command, or other assistive technology. Once activated, it then performs a programmable action, such as submitting a form or opening a dialog.
circle(List<Component> children, {String? cx, String? cy, String? r, Color? fill, Color? stroke, String? strokeWidth, Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <circle> SVG element is an SVG basic shape, used to draw circles based on a center point and a radius.
code(List<Component> children, {Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <code> HTML element displays its contents styled in a fashion intended to indicate that the text is a short fragment of computer code. By default, the content text is displayed using the user agent's default monospace font.
datalist(List<Component> children, {Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <datalist> HTML element contains a set of <option> elements that represent the permissible or recommended options available to choose from within other controls.
details(List<Component> children, {bool? open, Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <details> HTML element creates a disclosure widget in which information is visible only when the widget is toggled into an "open" state. A summary or label must be provided using the <summary> element.
dialog(List<Component> children, {bool? open, Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <dialog> HTML element represents a dialog box or other interactive component, such as a dismissible alert, inspector, or subwindow.
div(List<Component> children, {Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <div> HTML element is the generic container for flow content. It has no effect on the content or layout until styled in some way using CSS (e.g. styling is directly applied to it, or some kind of layout model like Flexbox is applied to its parent element).
ellipse(List<Component> children, {String? cx, String? cy, String? rx, String? ry, Color? fill, Color? stroke, String? strokeWidth, Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <ellipse> element is an SVG basic shape, used to create ellipses based on a center coordinate, and both their x and y radius.
em(List<Component> children, {Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <em> HTML element marks text that has stress emphasis. The <em> element can be nested, with each level of nesting indicating a greater degree of emphasis.
embed({required String src, String? type, int? width, int? height, Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <embed> HTML element embeds external content at the specified point in the document. This content is provided by an external application or other source of interactive content such as a browser plug-in.
events<V1, V2>({VoidCallback? onClick, ValueChanged<V1>? onInput, ValueChanged<V2>? onChange}) EventCallbacks
Helper function to provide typed event handlers to the events property of html components.
fieldset(List<Component> children, {String? name, bool? disabled, Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <fieldset> HTML element is used to group several controls as well as labels (<label>) within a web form.
The <footer> HTML element represents a footer for its nearest ancestor sectioning content or sectioning root element. A <footer> typically contains information about the author of the section, copyright data or links to related documents.
form(List<Component> children, {String? action, FormMethod? method, FormEncType? encType, AutoComplete? autoComplete, String? name, bool? noValidate, Target? target, Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <form> HTML element represents a document section containing interactive controls for submitting information.
h1(List<Component> children, {Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <h1> to <h6> HTML elements represent six levels of section headings. <h1> is the highest section level and <h6> is the lowest.
h2(List<Component> children, {Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <h1> to <h6> HTML elements represent six levels of section headings. <h1> is the highest section level and <h6> is the lowest.
h3(List<Component> children, {Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <h1> to <h6> HTML elements represent six levels of section headings. <h1> is the highest section level and <h6> is the lowest.
h4(List<Component> children, {Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <h1> to <h6> HTML elements represent six levels of section headings. <h1> is the highest section level and <h6> is the lowest.
h5(List<Component> children, {Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <h1> to <h6> HTML elements represent six levels of section headings. <h1> is the highest section level and <h6> is the lowest.
h6(List<Component> children, {Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <h1> to <h6> HTML elements represent six levels of section headings. <h1> is the highest section level and <h6> is the lowest.
The <head> HTML element contains machine-readable information (metadata) about the document, like its title, scripts, and style sheets.
The <header> HTML element represents introductory content, typically a group of introductory or navigational aids. It may contain some heading elements but also a logo, a search form, an author name, and other elements.
hr({Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <hr> HTML element represents a thematic break between paragraph-level elements: for example, a change of scene in a story, or a shift of topic within a section.
html(List<Component> children, {Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <html> HTML element represents the root (top-level element) of an HTML document, so it is also referred to as the root element. All other elements must be descendants of this element.
i(List<Component> children, {Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <i> HTML element represents a range of text that is set off from the normal text for some reason, such as idiomatic text, technical terms, taxonomical designations, among others. Historically, these have been presented using italicized type, which is the original source of the <i> naming of this element.
iframe(List<Component> children, {required String src, String? allow, String? csp, MediaLoading? loading, String? name, String? sandbox, ReferrerPolicy? referrerPolicy, int? width, int? height, Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <iframe> HTML element represents a nested browsing context, embedding another HTML page into the current one.
img({String? alt, CrossOrigin? crossOrigin, int? width, int? height, MediaLoading? loading, required String src, ReferrerPolicy? referrerPolicy, Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <img> HTML element embeds an image into the document.
input(List<Component> children, {InputType? type, String? name, String? value, bool? disabled, ValueChanged? onInput, ValueChanged? onChange, Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <input> HTML element is used to create interactive controls for web-based forms in order to accept data from the user; a wide variety of types of input data and control widgets are available, depending on the device and user agent. The <input> element is one of the most powerful and complex in all of HTML due to the sheer number of combinations of input types and attributes.
label(List<Component> children, {String? htmlFor, Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <label> HTML element represents a caption for an item in a user interface.
legend(List<Component> children, {Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <legend> HTML element represents a caption for the content of its parent <fieldset>.
lerpDuration(Duration a, Duration b, double t) Duration
Linearly interpolate between two Durations.
li(List<Component> children, {int? value, Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <li> HTML element is used to represent an item in a list. It must be contained in a parent element: an ordered list (<ol>), an unordered list (<ul>), or a menu (<menu>). In menus and unordered lists, list items are usually displayed using bullet points. In ordered lists, they are usually displayed with an ascending counter on the left, such as a number or letter.
line(List<Component> children, {String? x1, String? y1, String? x2, String? y2, Color? fill, Color? stroke, String? strokeWidth, Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <line> element is an SVG basic shape used to create a line connecting two points.
The <link> HTML element specifies relationships between the current document and an external resource. This element is most commonly used to link to stylesheets, but is also used to establish site icons (both "favicon" style icons and icons for the home screen and apps on mobile devices) among other things.
main_(List<Component> children, {Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <main> HTML element represents the primary content of a document, distinct from content that is repeated across multiple pages such as site headers, footers, and navigation bars.
meter(List<Component> children, {double? value, double? min, double? max, double? low, double? high, double? optimum, Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <meter> HTML element represents either a scalar value within a known range or a fractional value.
The <nav> HTML element represents a section of a page whose purpose is to provide navigation links, either within the current document or to other documents. Common examples of navigation sections are menus, tables of contents, and indexes.
object(List<Component> children, {String? data, String? name, String? type, int? width, int? height, Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <object> HTML element represents an external resource, which can be treated as an image, a nested browsing context, or a resource to be handled by a plugin.
objectRuntimeType(Object? object, String optimizedValue) String
Framework code should use this method in favor of calling toString on Object.runtimeType.
ol(List<Component> children, {bool? reversed, int? start, NumberingType? type, Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <ol> HTML element represents an ordered list of items — typically rendered as a numbered list.
optgroup(List<Component> children, {required String label, bool? disabled, Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <optgroup> HTML element creates a grouping of options within a <select> element.
option(List<Component> children, {String? label, String? value, bool? selected, bool? disabled, Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <option> HTML element is used to define an item contained in a <select>, an <optgroup>, or a <datalist> element. As such, <option> can represent menu items in popups and other lists of items in an HTML document.
p(List<Component> children, {Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <p> HTML element represents a paragraph. Paragraphs are usually represented in visual media as blocks of text separated from adjacent blocks by blank lines and/or first-line indentation, but HTML paragraphs can be any structural grouping of related content, such as images or form fields.
path(List<Component> children, {String? d, Color? fill, Color? stroke, String? strokeWidth, Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <path> SVG element is the generic element to define a shape. All the basic shapes can be created with a path element.
polygon(List<Component> children, {String? points, Color? fill, Color? stroke, String? strokeWidth, Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <polygon> element defines a closed shape consisting of a set of connected straight line segments. The last point is connected to the first point.
polyline(List<Component> children, {String? points, Color? fill, Color? stroke, String? strokeWidth, Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <polyline> SVG element is an SVG basic shape that creates straight lines connecting several points. Typically a polyline is used to create open shapes as the last point doesn't have to be connected to the first point.
pre(List<Component> children, {Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <pre> HTML element represents preformatted text which is to be presented exactly as written in the HTML file. The text is typically rendered using a non-proportional, or monospaced, font. Whitespace inside this element is displayed as written.
progress(List<Component> children, {double? value, double? max, Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <progress> HTML element displays an indicator showing the completion progress of a task, typically displayed as a progress bar.
raw(String text) Component
Utility method to create a RawText component.
rect(List<Component> children, {String? x, String? y, String? width, String? height, Color? fill, Color? stroke, String? strokeWidth, Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <rect> element is a basic SVG shape that draws rectangles, defined by their position, width, and height. The rectangles may have their corners rounded.
s(List<Component> children, {Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <s> HTML element renders text with a strikethrough, or a line through it. Use the <s> element to represent things that are no longer relevant or no longer accurate. However, <s> is not appropriate when indicating document edits; for that, use the <del> and <ins> elements, as appropriate.
script(List<Component> children, {bool? async, bool? defer, required String src, Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <script> HTML element is used to embed executable code or data; this is typically used to embed or refer to JavaScript code. The <script> element can also be used with other languages, such as WebGL's GLSL shader programming language and JSON.
section(List<Component> children, {Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <section> HTML element represents a generic standalone section of a document, which doesn't have a more specific semantic element to represent it. Sections should always have a heading, with very few exceptions.
select(List<Component> children, {String? name, bool? multiple, bool? required, bool? disabled, bool? autofocus, String? autocomplete, int? size, ValueChanged<List<String>>? onInput, ValueChanged<List<String>>? onChange, Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <select> HTML element represents a control that provides a menu of options.
small(List<Component> children, {Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <small> HTML element represents side-comments and small print, like copyright and legal text, independent of its styled presentation. By default, it renders text within it one font-size smaller, such as from small to x-small.
source({String? type, String? src, Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <source> HTML element specifies multiple media resources for the <picture>, the <audio> element, or the <video> element. It is an empty element, meaning that it has no content and does not have a closing tag. It is commonly used to offer the same media content in multiple file formats in order to provide compatibility with a broad range of browsers given their differing support for image file formats and media file formats.
span(List<Component> children, {Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <span> HTML element is a generic inline container for phrasing content, which does not inherently represent anything. It can be used to group elements for styling purposes (using the class or id attributes), or because they share attribute values, such as lang. It should be used only when no other semantic element is appropriate. <span> is very much like a <div> element, but <div> is a block-level element whereas a <span> is an inline element.
strong(List<Component> children, {Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <strong> HTML element indicates that its contents have strong importance, seriousness, or urgency. Browsers typically render the contents in bold type.
summary(List<Component> children, {Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <summary> HTML element specifies a summary, caption, or legend for a <details> element's disclosure box. Clicking the <summary> element toggles the state of the parent <details> element open and closed.
svg(List<Component> children, {String? viewBox, Unit? width, Unit? height, Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <svg> element is a container that defines a new coordinate system and viewport. It is used as the outermost element of SVG documents, but it can also be used to embed an SVG fragment inside an SVG or HTML document.
text(String text) Component
Utility method to create a Text component.
textarea(List<Component> children, {AutoComplete? autoComplete, bool? autofocus, int? cols, bool? disabled, int? minLength, String? name, String? placeholder, bool? readonly, bool? required, int? rows, SpellCheck? spellCheck, TextWrap? wrap, ValueChanged<String>? onInput, ValueChanged<String>? onChange, Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <textarea> HTML element represents a multi-line plain-text editing control, useful when you want to allow users to enter a sizeable amount of free-form text, for example a comment on a review or feedback form.
u(List<Component> children, {Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <u> HTML element represents a span of inline text which should be rendered in a way that indicates that it has a non-textual annotation. This is rendered by default as a simple solid underline, but may be altered using CSS.
ul(List<Component> children, {Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <ul> HTML element represents an unordered list of items, typically rendered as a bulleted list.
unallowedList(Selector selector) bool
video(List<Component> children, {bool? autoplay, bool? controls, CrossOrigin? crossOrigin, bool? loop, bool? muted, String? poster, Preload? preload, String? src, int? width, int? height, Key? key, String? id, String? classes, Styles? styles, Map<String, String>? attributes, Map<String, EventCallback>? events}) Component
The <video> HTML element embeds a media player which supports video playback into the document. You can use <video> for audio content as well, but the <audio> element may provide a more appropriate user experience.

Typedefs

AsyncCallback = Future<void> Function()
Signature of callbacks that have no arguments and return no data, but that return a Future to indicate when their work is complete.
AsyncComponentBuilder<T> = Iterable<Component> Function(BuildContext context, AsyncSnapshot<T> snapshot)
Signature for strategies that build components based on asynchronous interaction.
AsyncValueGetter<T> = Future<T> Function()
Signature for callbacks that are to asynchronously report a value on demand.
AsyncValueSetter<T> = Future<void> Function(T value)
Signature for callbacks that report that a value has been set and return a Future that completes when the value has been saved.
ComponentBuilder = Iterable<Component> Function(BuildContext context)
Signature for a function that creates a component, e.g. StatelessComponent.build or State.build.
ElementVisitor = void Function(Element element)
Signature for the callback to BuildContext.visitChildElements.
EventCallback = void Function(Event event)
EventCallbacks = Map<String, EventCallback>
IterableFilter<T> = Iterable<T> Function(Iterable<T> input)
Signature for callbacks that filter an iterable.
RenderObjectVisitor = void Function(RenderObject child)
Signature for a function that is called for each RenderObject.
SingleComponentBuilder = Component Function(BuildContext context)
StatefulComponentBuilder = Iterable<Component> Function(BuildContext context, StateSetter setState)
Signature for the builder callback used by StatefulBuilder.
StateSetter = void Function(VoidCallback fn)
The signature of State.setState functions.
ValueChanged<T> = void Function(T value)
Signature for callbacks that report that an underlying value has changed.
ValueGetter<T> = T Function()
Signature for callbacks that are to report a value on demand.
ValueSetter<T> = void Function(T value)
Signature for callbacks that report that a value has been set.
VoidCallback = void Function()
Signature of callbacks that have no arguments and return no data.