Docs Components Commerce

OrderStatusTracker

React example follows below.
ts
const orderStatusTrackerFixture = {
id: "order-status-tracker",
// current=2 (0-based) puts two steps done, one active, one still upcoming —
// exercises all three step states plus both connector segments at once.
steps: ["Placed", "Packed", "Shipped", "Delivered"],
current: 2,
} satisfies {
id: string;
steps: string[];
current: number;
};
import { OrderStatusTracker } from "@grassroot/ui-react";
export default function OrderStatusTrackerDemo() {
return (
<div>
<OrderStatusTracker
steps={orderStatusTrackerFixture.steps}
current={orderStatusTrackerFixture.current}
/>
</div>
);
}
ts
<script setup lang="ts">
const orderStatusTrackerFixture = {
id: "order-status-tracker",
// current=2 (0-based) puts two steps done, one active, one still upcoming —
// exercises all three step states plus both connector segments at once.
steps: ["Placed", "Packed", "Shipped", "Delivered"],
current: 2,
} satisfies {
id: string;
steps: string[];
current: number;
};
import { OrderStatusTracker } from "@grassroot/ui-vue";
</script>
<template>
<div>
<OrderStatusTracker
:steps="orderStatusTrackerFixture.steps"
:current="orderStatusTrackerFixture.current"
/>
</div>
</template>
ts
import { Component } from "@angular/core";
const orderStatusTrackerFixture = {
id: "order-status-tracker",
// current=2 (0-based) puts two steps done, one active, one still upcoming —
// exercises all three step states plus both connector segments at once.
steps: ["Placed", "Packed", "Shipped", "Delivered"],
current: 2,
} satisfies {
id: string;
steps: string[];
current: number;
};
import { GrassrootOrderStatusTracker } from "@grassroot/ui-angular";
@Component({
selector: "app-order-status-tracker-demo",
standalone: true,
imports: [GrassrootOrderStatusTracker],
template: `
<div>
<grassroot-order-status-tracker [steps]="fixture.steps" [current]="fixture.current" />
</div>
`,
})
export class OrderStatusTrackerDemoComponent {
protected readonly fixture = orderStatusTrackerFixture;
}
export default OrderStatusTrackerDemoComponent;
ts
<script lang="ts">
import { OrderStatusTracker } from "@grassroot/ui-svelte";
const orderStatusTrackerFixture = {
id: "order-status-tracker",
// current=2 (0-based) puts two steps done, one active, one still upcoming —
// exercises all three step states plus both connector segments at once.
steps: ["Placed", "Packed", "Shipped", "Delivered"],
current: 2,
} satisfies {
id: string;
steps: string[];
current: number;
};
</script>
<div>
<OrderStatusTracker
steps={orderStatusTrackerFixture.steps}
current={orderStatusTrackerFixture.current}
/>
</div>
ts
/** @jsxImportSource solid-js */
const orderStatusTrackerFixture = {
id: "order-status-tracker",
// current=2 (0-based) puts two steps done, one active, one still upcoming —
// exercises all three step states plus both connector segments at once.
steps: ["Placed", "Packed", "Shipped", "Delivered"],
current: 2,
} satisfies {
id: string;
steps: string[];
current: number;
};
import { OrderStatusTracker } from "@grassroot/ui-solid";
export default function OrderStatusTrackerDemo() {
return (
<div>
<OrderStatusTracker
steps={orderStatusTrackerFixture.steps}
current={orderStatusTrackerFixture.current}
/>
</div>
);
}

Installation

API Reference

Import

import { OrderStatusTracker } from "@grassroot/ui-react";

Props

Prop
Type
Default
Requirement
Description
steps
string[]
required
current
number
required
0-based index of the current step.
className
string | undefined
optional
Prop
steps
Type
string[]
Default
Requirement
required
Description
Prop
current
Type
number
Default
Requirement
required
Description
0-based index of the current step.
Prop
className
Type
string | undefined
Default
Requirement
optional
Description

Import

import { OrderStatusTracker } from "@grassroot/ui-vue";

Props

Prop
Type
Default
Requirement
steps
string[]
required
current
number
required
Prop
steps
Type
string[]
Default
Requirement
required
Prop
current
Type
number
Default
Requirement
required

Import

import { Component } from "@angular/core";
import { GrassrootOrderStatusTracker } from "@grassroot/ui-angular";

Props

Prop
Type
Default
Requirement
steps
string[]
required
current
number
required
Prop
steps
Type
string[]
Default
Requirement
required
Prop
current
Type
number
Default
Requirement
required

Import

import { OrderStatusTracker } from "@grassroot/ui-svelte";

Props

Prop
Type
Default
Requirement
steps
string[]
required
current
number
required
className
string
optional
Prop
steps
Type
string[]
Default
Requirement
required
Prop
current
Type
number
Default
Requirement
required
Prop
className
Type
string
Default
Requirement
optional

Import

import { OrderStatusTracker } from "@grassroot/ui-solid";

Props

Prop
Type
Default
Requirement
steps
string[]
required
current
number
required
className
string
optional
Prop
steps
Type
string[]
Default
Requirement
required
Prop
current
Type
number
Default
Requirement
required
Prop
className
Type
string
Default
Requirement
optional