SystemNotice
Display a centred inline status message with colour schemas, an optional icon, and a loading state.
SystemNotice is a client component that renders a compact, centred message strip, such as "Saving…" or "Connection restored". It can optionally show an animated loading indicator and dividers above and below.
Import#
import { SystemNotice } from "@reactberry/system/blocks";
Usage#
import { SystemNotice } from "@reactberry/system/blocks";
import { Box } from "@reactberry/system/elements";
export default function SyncStatus({ syncing }: { syncing: boolean }) {
return (
<Box width="100%">
<SystemNotice
message={syncing ? "Syncing changes" : "All changes saved"}
loading={syncing}
colorSchema={syncing ? "default" : "success"}
/>
</Box>
);
}
Examples#
Loading state#
loading shows an animated dots icon before the message and hides icon.
Icon and dividers#
Pass any React node as icon; showBreaks adds a Divider above and below the notice.
API#
SystemNotice#
| Prop | Type | Default | Description |
|---|---|---|---|
message* | ReactNode | — | Notice content |
loading | boolean | false | Shows an animated dots icon before the message. When |
showBreaks | boolean | false | Renders a |
colorSchema | string | default | Sets |
icon | ReactNode | — | Element shown before the message when not loading |
Any other props (BoxProps) are spread onto the outer Text element (rendered as a div) after the schema styles, so skin, color, and the defaults p="s", my="xs", shape="rounded", fontSize="s" and fontWeight="medium" can be overridden.
Accessibility#
- The notice has no ARIA live region role. Add
role="status"oraria-livethrough spread props if updates should be announced.
Notes#
- Schema mapping:
defaultusesskin="panel"with secondary text;success,error, andinfouse the matching.subtleskin with primary text;warninguseswarning.subtlewithpalette.yellows.10text.