40 / 59 · Generative
Order tracking
An order status card with a delivery timeline, badges per step, and quick actions.
Your order is on its way and should arrive today.
- Order placedDone
Today at 9:02 AM
- PackedDone
Today at 9:41 AM
- Out for deliveryIn progress
Estimated 2:00 to 4:00 PM
Installation
npm install @assistant-ui/react-generative-ui
Usage
import { renderGenerativeUI } from "@assistant-ui/react-generative-ui";
<div data-aui-theme="elements">
{renderGenerativeUI(spec, library, { status: "done" })}
</div>Spec
Commerce{
"$type": "Card",
"title": "Order #48213",
"children": [
{
"$type": "Alert",
"$key": "alert",
"tone": "success",
"title": "Order confirmed",
"description": "Your order is on its way and should arrive today."
},
{
"$type": "ListView",
"$key": "timeline",
"children": [
{
"$type": "ListViewItem",
"$key": "placed",
"$action": {
"type": "view_order_event",
"eventId": "placed"
},
"children": {
"$type": "Row",
"justify": "between",
"children": [
{
"$type": "Col",
"$key": "label",
"gap": 1,
"children": [
{
"$type": "Text",
"$key": "title",
"value": "Order placed",
"weight": "medium"
},
{
"$type": "Caption",
"$key": "time",
"value": "Today at 9:02 AM"
}
]
},
{
"$type": "Badge",
"$key": "badge",
"value": "Done",
"variant": "success"
}
]
}
},
{
"$type": "ListViewItem",
"$key": "packed",
"$action": {
"type": "view_order_event",
"eventId": "packed"
},
"children": {
"$type": "Row",
"justify": "between",
"children": [
{
"$type": "Col",
"$key": "label",
"gap": 1,
"children": [
{
"$type": "Text",
"$key": "title",
"value": "Packed",
"weight": "medium"
},
{
"$type": "Caption",
"$key": "time",
"value": "Today at 9:41 AM"
}
]
},
{
"$type": "Badge",
"$key": "badge",
"value": "Done",
"variant": "success"
}
]
}
},
{
"$type": "ListViewItem",
"$key": "transit",
"$action": {
"type": "view_order_event",
"eventId": "transit"
},
"children": {
"$type": "Row",
"justify": "between",
"children": [
{
"$type": "Col",
"$key": "label",
"gap": 1,
"children": [
{
"$type": "Text",
"$key": "title",
"value": "Out for delivery",
"weight": "medium"
},
{
"$type": "Caption",
"$key": "time",
"value": "Estimated 2:00 to 4:00 PM"
}
]
},
{
"$type": "Badge",
"$key": "badge",
"value": "In progress",
"variant": "info"
}
]
}
}
]
},
{
"$type": "Divider",
"$key": "divider"
},
{
"$type": "Row",
"$key": "actions",
"justify": "end",
"children": [
{
"$type": "Button",
"$key": "track",
"label": "Track package",
"buttonStyle": "outline",
"$action": {
"type": "track_order",
"orderId": "48213"
}
},
{
"$type": "Button",
"$key": "support",
"label": "Contact support",
"buttonStyle": "ghost",
"$action": {
"type": "contact_support",
"orderId": "48213"
}
}
]
}
]
}