Data display
ChangeSummary
Compares explicit current and proposed values before a user confirms a change.
01
See it and copy it
Framework example
Choose Astro, React, or Elements to compare native usage against the shared visual output. Each example assumes the framework-level setup is already complete.
Review changes
1 changed field
- OwnerChanged
- BeforeAlice
- AfterBob
- StatusUnchanged
- BeforeActive
- AfterActive
View ChangeSummary code
Framework usage
Switch targets to compare the adapter code. This live preview runs the Astro example. React and Elements use their own behavior APIs; complete the matching framework setup before copying an example.---
import { ChangeSummary } from '@santi020k/lumen-astro'
---
<ChangeSummary
label="Review changes"
summary="1 changed field"
items={[
{ id: 'owner', label: 'Owner', before: 'Alice', after: 'Bob', changed: true },
{ id: 'status', label: 'Status', before: 'Active', after: 'Active', changed: false }
]}
/>import { ChangeSummary } from '@santi020k/lumen-react'
export const Example = () => (
<>
<ChangeSummary
label="Review changes"
summary="1 changed field"
items={[
{ id: 'owner', label: 'Owner', before: 'Alice', after: 'Bob', changed: true },
{ id: 'status', label: 'Status', before: 'Active', after: 'Active', changed: false }
]}
/>
</>
)<lumen-change-summary id="review" label="Review changes" summary="1 changed field"></lumen-change-summary>
<script type="module">
import { defineLumenChangeSummary } from '@santi020k/lumen-elements/components/dashboard'
defineLumenChangeSummary()
document.getElementById('review').items = [
{ id: 'owner', label: 'Owner', before: 'Alice', after: 'Bob', changed: true }
]
</script>02
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 ChangeSummarylumen add ChangeSummarypnpm add @santi020k/lumen-reactpnpm add @santi020k/lumen-reactlumen add ChangeSummary --target reactlumen add ChangeSummary --target reactpnpm add @santi020k/lumen-elementspnpm add @santi020k/lumen-elementslumen add ChangeSummary --target elementslumen add ChangeSummary --target elementsAPI reference
Lumen-specific props and runtime attributes for the Astro primitive. Use the framework differences above and the copyable examples for React composition and Elements attributes; the public adapter types define their supported contracts.
| Attribute | Values | Default | Description |
|---|---|---|---|
| items | readonly LumenChangeSummaryItem[] | [] | Explicit IDs, labels, before/after display values, and application-owned changed state. |
| label, summary | string | Changes, optional | Names the comparison and supplies localized count text. |
| beforeLabel, afterLabel, changedLabel, unchangedLabel | string | English labels | Localizes the visible comparison labels. |
| 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. |