Documentation
01
See it in context
Preview
02
Copy a working example
Usage
---
import {
Button,
Spinner
} from '@santi020k/lumen-astro'
---
<Button disabled>
<Spinner /> Saving
</Button>
<Spinner aria-label="Loading" />---
import {
Button,
Spinner
} from '@santi020k/lumen-astro'
---
<Button disabled>
<Spinner /> Saving
</Button>
<Spinner aria-label="Loading" />import { Button, Spinner } from '@santi020k/lumen-react'
export const Example = () => (
<>
<Button disabled>
<Spinner /> Saving
</Button>
<Spinner aria-label="Loading" />
</>
)import { Button, Spinner } from '@santi020k/lumen-react'
export const Example = () => (
<>
<Button disabled>
<Spinner /> Saving
</Button>
<Spinner aria-label="Loading" />
</>
)<script type="module">
import { defineLumenElements } from '@santi020k/lumen-elements/define'
defineLumenElements()
</script>
<lumen-button disabled>
<lumen-spinner></lumen-spinner> Saving
</lumen-button>
<lumen-spinner aria-label="Loading"></lumen-spinner><script type="module">
import { defineLumenElements } from '@santi020k/lumen-elements/define'
defineLumenElements()
</script>
<lumen-button disabled>
<lumen-spinner></lumen-spinner> Saving
</lumen-button>
<lumen-spinner aria-label="Loading"></lumen-spinner>03
Choose your target
Add this component
Choose the package for your runtime. All adapters share the Lumen stylesheet. Use the matching registry command when you want a local wrapper for that framework.
pnpm add @santi020k/lumen-astropnpm add @santi020k/lumen-astrolumen add Spinnerlumen add Spinnerpnpm add @santi020k/lumen-reactpnpm add @santi020k/lumen-reactlumen add Spinner --target reactlumen add Spinner --target reactpnpm add @santi020k/lumen-elementspnpm add @santi020k/lumen-elementslumen add Spinner --target elementslumen add Spinner --target elementsAPI reference
Lumen-specific props and runtime attributes for the Astro primitive. React props follow the same names; Elements use equivalent kebab-case attributes where custom elements expose them.
| Attribute | Values | Default | Description |
|---|---|---|---|
| aria-label, aria-labelledby | string | - | Makes the spinner accessible and changes the default role to status. |
| aria-hidden | ARIA boolean string | true unless labelled | Overrides whether the loading indicator is exposed to assistive technology. |
| role | ARIA role | "status" when labelled | Overrides the generated status role. |
| class, className | string | "" | Merges custom classes with the generated ui-* root classes. |
| ...native attributes | HTML attributes | - | Forwards standard attributes to the root element unless the component consumes them. |