Spinner component is an animated icon that lets users know content or result of an action is being loaded.
import { Spinner } from "@kesko/components";
export default () => <Spinner size="md" />;<span class="k-spinner" role="status" aria-label="Loading" style="color: var(--k-color-accent)">
<span aria-hidden="true"></span>
<span aria-hidden="true"></span>
<span aria-hidden="true"></span>
<span aria-hidden="true"></span>
</span>import { Spinner, Stack } from "@kesko/components";
export default () => (
<Stack direction="row" gap="md" align="center" style={{ color: "var(--k-color-accent)" }}>
<Spinner size="sm" />
<Spinner size="md" />
<Spinner size="lg" />
<Spinner size="xl" />
<Spinner size="2xl" />
</Stack>
);<div class="k-stack k-stack-row k-stack-align-center" style="color: var(--k-color-accent); gap: var(--k-space-md)">
<span class="k-spinner k-spinner-sm" role="status" aria-label="Loading">
<span aria-hidden="true"></span>
<span aria-hidden="true"></span>
<span aria-hidden="true"></span>
<span aria-hidden="true"></span>
</span>
<span class="k-spinner" role="status" aria-label="Loading">
<span aria-hidden="true"></span>
<span aria-hidden="true"></span>
<span aria-hidden="true"></span>
<span aria-hidden="true"></span>
</span>
<span class="k-spinner k-spinner-lg" role="status" aria-label="Loading">
<span aria-hidden="true"></span>
<span aria-hidden="true"></span>
<span aria-hidden="true"></span>
<span aria-hidden="true"></span>
</span>
<span class="k-spinner k-spinner-xl" role="status" aria-label="Loading">
<span aria-hidden="true"></span>
<span aria-hidden="true"></span>
<span aria-hidden="true"></span>
<span aria-hidden="true"></span>
</span>
<span class="k-spinner k-spinner-2xl" role="status" aria-label="Loading">
<span aria-hidden="true"></span>
<span aria-hidden="true"></span>
<span aria-hidden="true"></span>
<span aria-hidden="true"></span>
</span>
</div>Props
| Name | Type | Default | Description |
|---|---|---|---|
size | "sm" | "md" | "lg" | "xl" | "2xl" | "md" | The size of the spinner. |
label | string | "Loading" | Accessible label for the spinner. Defaults to "Loading". |
CSS custom properties
CSS custom properties provide finer-grained control than props. Prefer the props API when it suits your need.
| Name | Description | Default |
|---|---|---|
--k-spinner-color | Overrides the spinner color. | currentColor |
--k-spinner-size | Overrides the spinner size. | var(--k-size-component-spinner) |