components library
Carpenter foundation plus reusable basic and behavioural UI components.
Classes
- AngleUnit
- A physical angle that can be converted without a rendering context.
- Application
- The root of a Carpenter application.
- CarpenterActionDescriptor
- Immutable application action metadata used by Carpenter surfaces to project consistent label, icon, availability, semantics, shortcut, and invocation.
- CarpenterActionPalette
- State palette for one semantic action color family.
- CarpenterActionStyle
- Resolved colors for one action after semantic role, prominence, and widget state have been applied.
- CarpenterActionTheme
- Resolves semantic action color roles, prominence, and interaction state without requiring components to choose raw colors.
- CarpenterAdaptiveContext
-
CarpenterAsyncAutosuggest<
T> - Async lifecycle wrapper for CarpenterAutosuggest with debounce and stale-result protection.
-
CarpenterAttachment<
T> -
CarpenterAttachmentList<
T> -
CarpenterAutosuggest<
T> - An editable controlled field offering optional suggestions for free text.
- CarpenterAvatar
- Compact identity primitive for initials, images or arbitrary avatar content.
- CarpenterAvatarGroup
- Compact overlapping identity group with an automatic overflow avatar.
- CarpenterAvatarItem
- Identity data for one entry in a CarpenterAvatarGroup, using an image and/or initials.
- CarpenterBadge
- Compact supplementary label or count. Use status indicators for business status.
- CarpenterButton
- Semantic text action with optional icon, keyboard/focus handling, and caller-controlled execution feedback.
- CarpenterCalendar
- Controlled month calendar used by date inputs and page-level scheduling UI.
- CarpenterCancellationSignal
- Cancellation signal shared by asynchronous Carpenter behaviours.
- CarpenterCapabilityScope
- CarpenterCard
- A semantic surface grouping one related block of content.
- CarpenterCheckbox
- Controlled selection control with unchecked, checked, and mixed presentation.
- CarpenterColorPicker
- Opaque RGB color picker with HSV surface and HEX/RGB inputs.
-
CarpenterComboBox<
T> - An editable controlled field whose query may resolve to one selected option.
- CarpenterContentTheme
- Semantic foreground palette for non-interactive content.
- CarpenterControl
- Behaviour-only primitive for custom interactive Carpenter components.
- CarpenterControlState
- Public snapshot of the shared Carpenter interaction state.
- CarpenterDateInput
- Controlled date field with masked manual entry and an adaptive picker action.
- CarpenterDateRange
- CarpenterDateRangeInput
- Controlled inclusive date range field with a mask and adaptive picker action.
- CarpenterDialog
- A controlled modal composition container with trapped keyboard focus.
- CarpenterDragController
-
CarpenterDraggable<
T> - Typed pointer drag source backed by Flutter's drag recognizers and Carpenter sessions.
-
CarpenterDragPayload<
T> - CarpenterDragScope
- Shared drag-and-drop runtime for coordinated sources and targets.
- CarpenterDragSession
-
CarpenterDropDetails<
T> - CarpenterDropdown
- A controlled action-menu trigger.
-
CarpenterDropTarget<
T> - Typed drop target with operation negotiation and before/inside/after geometry.
-
CarpenterDropTargetState<
T> - CarpenterExpander
- Collapsible content surface retained from the previous workbench API.
- CarpenterFeedbackStyle
- Resolved passive feedback colors for one semantic feedback role.
- CarpenterFeedbackTheme
- Maps FeedbackColorRole values to resolved passive feedback styles.
- CarpenterFieldFeedback
- Semantic supporting feedback for a Carpenter field.
- CarpenterFieldShell
- Shared semantic frame for Carpenter field controls.
- CarpenterFieldStyle
- Resolved field colors after availability, focus, hover, and validation state have been applied.
- CarpenterFieldTheme
- Semantic field palette and state resolver shared by Carpenter input controls.
-
CarpenterFileCandidate<
T> -
CarpenterFileDropData<
T> -
CarpenterFileDropZone<
T> - Standalone file drop surface. Link it to a CarpenterFileInput by giving both widgets the same CarpenterFileIntakeController.
-
CarpenterFileInput<
T> - Input-shaped file selector that is also a typed Carpenter drop target.
-
CarpenterFileIntakeController<
T> - Event bridge used by platform adapters and linked drop zones.
- CarpenterFocusTheme
- CarpenterIcon
- CarpenterIconButton
- Icon-only semantic action that requires an explicit accessible name.
- CarpenterIconData
- Base contract for non-Flutter icon sources rendered by Carpenter.
- CarpenterIcons
- Minimal framework-independent glyph ids retained for adapters and examples. Applications may replace these with their own icon font or icon package.
- CarpenterInput
- CarpenterInputCapabilities
- CarpenterInputMask
- CarpenterInspector
- Recursive readable presentation for map/list payloads and diagnostic data.
- CarpenterLink
- An inline semantic navigation action.
- CarpenterLoader
- Indeterminate circular activity indicator without Material dependency.
- CarpenterMaskedInput
- Text input that applies a semantic mask while reusing the standard Carpenter field pipeline.
- CarpenterMenu
- A keyboard- and pointer-operable list of semantic actions.
- CarpenterMenuItem
- One action presented by a CarpenterMenu.
- CarpenterMotionTheme
- CarpenterNotice
- CarpenterNumberInput
- Controlled numeric field with locale-tolerant decimal parsing.
-
CarpenterOption<
T> - Immutable selectable option with stable identity, value, display text, accessibility label, and availability.
- CarpenterOverlayTheme
- CarpenterPopover
- A controlled, interactive container attached to an anchor.
- CarpenterProgress
- Linear progress indicator.
-
CarpenterRadio<
T> - One mutually exclusive choice inside a matching CarpenterRadioGroup.
-
CarpenterRadioGroup<
T> - Controlled group of mutually exclusive radio choices with shared selection and keyboard navigation.
-
CarpenterRequestGate<
C extends CarpenterCancellationSignal> - Owns the generic "latest request wins" lifecycle used by async UI data.
-
CarpenterRequestLease<
C extends CarpenterCancellationSignal> - One asynchronous request admitted by a CarpenterRequestGate.
- CarpenterSearchCancellation
- Cooperative cancellation signal for one suggestion request. Cancelling notifies listeners once but does not abort HTTP or other transport work automatically.
-
CarpenterSelect<
T> - A controlled field for selecting exactly one value from typed options.
-
CarpenterSelectionButtonGroup<
T> - Controlled single-choice group for switching one local content scope.
-
CarpenterSelectionButtonOption<
T> - Descriptor for one choice in a controlled CarpenterSelectionButtonGroup.
- CarpenterSelectionPalette
- Selected-state palette for one SelectionColorRole.
- CarpenterSelectionStyle
- Resolved colors for a selectable control after role, selection, hover, and disabled state have been applied.
- CarpenterSelectionTheme
- Resolves selection controls from semantic color role, selected state, and WidgetState values.
- CarpenterShape
- Directional start/end shape descriptor for controls that may join a group.
- CarpenterShapeTheme
- CarpenterSizeTheme
- CarpenterSpacingTheme
- CarpenterStatusIndicator
- CarpenterSurfaceTheme
- CarpenterSwitch
- Controlled binary setting with a visible label and optional supporting description.
- CarpenterTag
- Compact semantic tag backed by the current status-indicator primitive.
- CarpenterText
- CarpenterTextArea
- CarpenterTheme
- Inherited boundary that exposes CarpenterThemeData to descendant Carpenter components.
- CarpenterThemeData
- Immutable semantic theme assembled from generated Carpenter tokens for one brightness, contrast, and density combination.
- CarpenterTime
- CarpenterTimeInput
- Controlled 24-hour field with masked manual entry and an adaptive picker action.
- CarpenterToast
- The semantic visual representation of one toast notification.
- CarpenterToastDescriptor
- CarpenterToasterController
- Imperatively manages transient toast presentation, not application state.
- CarpenterToastRegion
- Hosts a bounded visible toast stack and queues the controller remainder.
- CarpenterToggleButton
- Binary action button whose selected state is controlled by the caller.
- CarpenterTooltip
- Short, non-interactive supplemental text for an anchored control.
- CarpenterTypographyTheme
- Resolves semantic Carpenter typography roles and component text treatments into Flutter TextStyle values using the active unit scale.
- CarpenterUploadProgress
- Determinate upload progress presentation. The caller owns transfer state and updates value; this widget does not start or monitor an upload.
- CarpenterViewportPolicy
- Degrees
- An angle expressed in degrees.
- Em
-
A value relative to the effective
emof the current element. - GravityIcon
- Compatibility wrapper around the generic CarpenterIcon renderer.
- GravityIconData
- A reference to one SVG from Carpenter's bundled Gravity icon set.
- GravityIcons
- Bundled Gravity UI icon catalog.
- LengthUnit
- A physical length that can be resolved in a typography context.
- LengthUnitContext
- Runtime values required to resolve relative length units.
- LoadingBoundary
- Owns a loading scope and lets its parent choose the loading presentation.
- LoadingController
-
UI-agnostic handle exposed to descendants through
BuildContext.loading. - LoadingCubit
- Compatibility name for code written against Carpenter's former Bloc-backed loading implementation.
- LoadingNotifier
- Framework-neutral loading state owner.
- LoadingScope
- Dependency-injection boundary for loading state.
- LoadingState
- Immutable snapshot of the operations currently owned by a loading scope.
- Milliseconds
- A duration expressed in milliseconds.
- PaletteTokens
- Px
- An absolute logical-pixel value.
- Radians
- An angle expressed in radians.
- Rem
-
A value relative to the root
remconfigured for the widget subtree. - Seconds
- A duration expressed in seconds.
- TimeUnit
- A physical time value that can be converted to a Dart Duration.
- Turns
- An angle expressed in complete turns.
- Unit
- A typed physical UI quantity.
- UnitsHandle
-
Resolves typed units and mutates the local
emdeclaration of an element. - UnitsRoot
-
Configures the root
remvalue for a subtree.
Enums
- ActionColorRole
- Semantic color family for interactive actions.
- ActionColorSlot
- Theme slot resolved for an action color family and prominence.
- ActionExecutionPhase
- Presentation phase of an asynchronous or externally tracked action.
- ActionProminence
- Visual emphasis of an action, independent from its semantic color role.
- CarpenterActionIconPosition
- Position of an action icon relative to its label.
- CarpenterAttachmentPhase
- CarpenterCardSurfaceRole
- Semantic background role for a CarpenterCard.
- CarpenterDensity
- Global density preference used by semantic sizing and spacing resolution.
- CarpenterDragActivation
- CarpenterDragOperation
- CarpenterDropAxis
- CarpenterDropPosition
- CarpenterNoticeTone
- Semantic feedback surface for page and action-level messages.
- CarpenterTagTone
- Semantic tag tone retained from the previous Carpenter API.
- CarpenterToastPlacement
- CarpenterViewportClass
- CheckboxValue
- Tri-state checkbox value.
- ContentColorRole
- Semantic foreground color for non-action content.
- ContrastMode
- Requested contrast level for semantic Carpenter colors.
- ControlSize
- Semantic size scale used by compact controls.
- DialogDismissPolicy
- Policy controlling which implicit gestures may dismiss a dialog.
- FeedbackColorRole
- Semantic color family for passive feedback and status presentation.
- FieldAvailability
- Interaction availability of an input field.
- FieldSize
- Semantic size scale used by fields and field-like controls.
- IconSize
- Semantic size scale used by icons.
- OptionsLoadState
- Loading state for option-producing controls such as selects and suggestions.
- OverlayPlacement
- Preferred placement of anchored overlay content relative to its anchor.
- SelectionColorRole
- Semantic color family for selection indicators and selected surfaces.
- ShapeRole
- Semantic endpoint shape used by grouped surfaces and controls.
- ToastDuration
- Semantic lifetime of transient toast feedback.
- TooltipDelay
- Semantic delay before tooltip presentation.
- TypographyEmphasis
- Semantic weight applied within a TypographyRole.
- TypographyRole
- Semantic typography family chosen independently from emphasis and color.
Extensions
- LoadingBuildContext on BuildContext
- UnitLiterals on num
- Numeric literals for typed units.
- UnitsBuildContext on BuildContext
-
Adds
context.units(...),context.units.set(...), andcontext.units.reset().
Constants
- palette → const PaletteTokens
Functions
-
carpenterFileDragPayload<
T> ({required Iterable< CarpenterFileCandidate< files, Object? id, Set<T> >CarpenterDragOperation> allowedOperations = const {CarpenterDragOperation.copy, CarpenterDragOperation.move}}) → CarpenterDragPayload<CarpenterFileDropData< T> > -
carpenterFormatDate(
DateTime value) → String -
carpenterFormatDateRange(
CarpenterDateRange value) → String -
carpenterFormatRgbHex(
Color color) → String -
carpenterFormatTime(
CarpenterTime value) → String -
carpenterParseDate(
String value) → DateTime? -
carpenterParseDateRange(
String value) → CarpenterDateRange? -
carpenterParseRgbColor(
String source) → Color? -
carpenterParseTime(
String value) → CarpenterTime? -
showCarpenterDialog<
T> ({required BuildContext context, required String title, required Widget content, required CarpenterDialogActionsBuilder< T> actionsBuilder, DialogDismissPolicy dismissPolicy = DialogDismissPolicy.escapeOnly, String? semanticLabel, FocusNode? initialFocusNode}) → Future<T?> - Opens a typed Carpenter modal route and completes with the value supplied to an action's CarpenterDialogClose.
Typedefs
- CarpenterControlBuilder = Widget Function(BuildContext context, CarpenterControlState state)
-
CarpenterDialogActionsBuilder<
T> = List< CarpenterActionDescriptor> Function(CarpenterDialogClose<T> close) -
CarpenterDialogClose<
T> = void Function([T? result]) - CarpenterDragCanceledCallback = void Function(Velocity velocity, Offset offset)
- CarpenterDragSessionCallback = void Function(CarpenterDragSession? session)
-
CarpenterDropAcceptance<
T> = bool Function(CarpenterDropDetails< T> details) -
CarpenterDropCallback<
T> = void Function(CarpenterDropDetails< T> details) -
CarpenterDropTargetBuilder<
T> = Widget Function(BuildContext context, CarpenterDropTargetState< T> state) -
CarpenterFileAcceptance<
T> = bool Function(CarpenterFileCandidate< T> file) -
CarpenterFilesChanged<
T> = void Function(List< CarpenterFileCandidate< files)T> > - CarpenterIconSource = Object
- Value accepted by Carpenter icon slots.
- CarpenterInspectorFieldFilter = bool Function(String key, Object? value)
- CarpenterInspectorLabelBuilder = String Function(String key)
- CarpenterInspectorScalarBuilder = String Function(Object? value)
-
CarpenterSuggestionLoader<
T> = Future< List< Function(String query, CarpenterSearchCancellation cancellation)CarpenterOption< >T> > - Loads options for a trimmed query and a per-request cancellation signal. Return the complete suggestion list for that query. The autosuggest owns the signal and ignores cancelled or superseded completions; the loader owns any transport resources.
-
CarpenterValueEquality<
T> = bool Function(T first, T second) - LoadingBoundaryBuilder = Widget Function(BuildContext context, LoadingState state, Widget child)
- Builds UI around a locally-owned LoadingNotifier.
Exceptions / Errors
- MissingUnitContextException
- Thrown when a relative unit lacks required runtime context.
- UnitParseException
- A parse failure with the source representation that caused it.