1 viewer
Back to Components
Component · Input

Action

Button-like action that can navigate to views or invoke runtime connections.

Category
Input
Slots
3
States
2
Writer
Shared
cre8.primitive.action

Preview

Live renderShared SSR + WASM writers
<Row gap="12px">
  <Action href="/view" intent="primary" label="View Documentation" />
  <Action
    href="/view/components"
    intent="ghost"
    label="Inspect Components"
  />
</Row>

Variants

States and intents

Anatomy

The named parts of the rendered markup. Recipes style these hooks, and every renderer keeps them stable.

SlotDOM class
root.primitive-action
label—
result—
3 rows
Hydration markers
data-cre8-control

States and platforms

The states the contract publishes, the platforms it declares, and the style recipes that dress it.

States
disabledloading
Platforms
webnativeruntime-node
Recipes
unstyledruntime-console

Renderers

Shared writer
Action renders through the one writer the server and the WASM DOM share, so both emit the same markup.

Every tag in the example above renders through a shared writer.

Declared adapters. A status is the manifest's declaration, not a measured parity result.

TargetRendererStatus
webreactexperimental
runtime-nodeview-nodeready
ssrhtml-form-controlready
terminalterminal-actionplanned
nativenative-adapterexperimental
5 rows

Accessibility

Keeps native button semantics for navigation and connection triggers, and upgrades inline forms to dialog semantics.

  • Actions with form fields expose an accessible dialog name and labelled fields.
  • Connection success and failure states announce through status and alert semantics.