Status
Discrete progress marks with fill and border variants, explicit null progress, optional colors, and motion/react transitions.
Install
npm install @patternmode/statusimport { StatusMark } from "@patternmode/status";
import "@patternmode/status/styles.css";
export function BuildStatus() {
return (
<div>
<StatusMark
value={75}
label="Almost complete"
color="#315c4b"
trackColor="#edeae2"
/>
<StatusMark status="null" label="Not measured yet" />
</div>
);
}Core API
StatusMark
Animated SVG status mark for discrete progress steps.
value- numberNumeric progress input. Values are clamped from 0 to 100 and snapped to the nearest quarter step.
status- "null" | "empty" | "quarter" | "half" | "three-quarter" | "full"Named progress step. Use null only when progress is explicitly not yet known or measured.
tone- "neutral" | "accent" | "muted""neutral"Visual emphasis treatment. Tone changes color only.
size- "2xs" | "xs" | "sm" | "base" | "lg" | "xl" | "2xl" | "3xl""base"Patternmode size token used for the mark dimensions.
motion- "smooth" | "snap" | "reduced" | false"smooth"Transition preset for movement between progress steps.
variant- "fill" | "border""fill"Visual treatment for known progress. Null progress renders the same dashed placeholder in every variant.
color- stringOptional CSS color for active progress. Overrides tone.
trackColor- stringOptional CSS color for inactive track and placeholder structure.
label- stringAccessible label. Omit only when adjacent text already names the same state and the mark should be decorative.