Alert
Genel görünümimport { Alert, AlertAction } from '@nili/ui';Bu, kütüphanenin kendi genel görünüm sayfası — canlı olarak render ediliyor. Üstten dili veya temayı değiştirin, o da değişir.
Durumlar
Beş anlam. error varsayılan olarak kesintili duyurulur; diğerleri bir duraklamayı bekler.
import { Alert } from "@nili/ui"
export function Example() {
return (
<>
<Alert status="error" title="Something went wrong." />
<Alert status="warning" title="Your trial ends in 3 days." />
<Alert status="success" title="Payment received." />
<Alert status="info" title="A new version is available." />
<Alert status="feature" title="Try the new dashboard." />
</>
)
}Görünümler
filled, light, lighter ve stroke. En yükseği filled — onu gerçekten böleni bildirmeye saklayın.
import { Alert } from "@nili/ui"
export function Example() {
return (
<>
<Alert appearance="filled" status="info" title="Filled" />
<Alert appearance="light" status="info" title="Light" />
<Alert appearance="lighter" status="info" title="Lighter" />
<Alert appearance="stroke" status="info" title="Stroke" />
</>
)
}Boyutlar
x-small, simge boşluğu olmayan tek satırdır; large açıklama ve eylem taşır.
Ekipteki herkes artık görebilir.
import { Alert } from "@nili/ui"
export function Example() {
return (
<>
<Alert size="x-small" status="success" title="Saved." />
<Alert size="small" status="success" title="Saved." />
<Alert
size="large"
status="success"
title="Saved."
description="Your changes are live for everyone on the team."
/>
</>
)
}Eylemler, simgeler ve kapatma
actions en çok iki satır içi eylem alır. icon varsayılan simge için true, onu değiştirmek için bir düğüm, kaldırmak için false kabul eder. dismissible için dismissLabel gerekir — bir ✕’in erişilebilir adı yoktur.
import { Alert, Icon } from "@nili/ui"
import { RiSparkling2Line } from "@remixicon/react"
export function Example() {
const [open, setOpen] = useState(true)
return (
<>
<Alert
status="warning"
appearance="stroke"
size="large"
title={t('actions.planTitle')}
description={t('actions.planBody')}
actions={[
{ label: "Upgrade", href: "#" },
{ label: "Dismiss", onClick: () => setOpen(false) },
]}
dismissible
dismissLabel={t('close')}
onDismiss={() => setOpen(false)}
/>
{/* Custom icon */}
<Alert
status="feature"
title={t('actions.feature')}
icon={<Icon icon={RiSparkling2Line} />}
/>
{/* No icon */}
<Alert status="info" title="No icon." icon={false} />
</>
)
}Alert
extends Omit< ComponentPropsWithoutRef<'div'>, 'title' | 'children' >
Varyant eksenleri — bileşenin cva tanımından
| Prop | Tip | Varsayılan | Notlar |
|---|---|---|---|
| status | error | warning | success | info | feature | info | |
| appearance | filled | light | lighter | stroke | filled | Renamed from `style`, which shadowed React's `style` (`CSSProperties`). |
| size | x-small | small | large | small |
Diğer proplar
| Prop | Tip | Varsayılan | Notlar |
|---|---|---|---|
| children | ReactNode | — | |
| aria-label | string | — | |
| title* | ReactNode | — | |
| description | ReactNode | — | |
| icon | boolean | ReactNode | true | `true` shows the default glyph for `status`; pass a node to override it; `false` hides it. The default glyph is decorative — the alert's meaning is carried by `role`, not by the picture. |
| actions | AlertAction[] | — | Up to two inline actions. Replaces the unused `linkButton`/`doubleLink`. |
| dismissible | boolean | false | Shows a close button. Requires `dismissLabel` for the accessible name. |
| onDismiss | () => void | — | |
| dismissLabel | string | Dismiss | Accessible name for the close button, e.g. `'Close'`. |
| urgency | assertive | polite | off | — | How assistive tech announces this alert. - `'assertive'` (default for `error`) interrupts the user immediately. - `'polite'` waits for a pause — right for success and info. - `'off'` for alerts rendered statically on page load, which should not be announced at all. |
AlertAction
AlertClose
dahiliVaryant eksenleri — bileşenin cva tanımından
| Prop | Tip | Varsayılan | Notlar |
|---|---|---|---|
| size | x-small | small | large | small |
AlertIcon
dahiliVaryant eksenleri — bileşenin cva tanımından
| Prop | Tip | Varsayılan | Notlar |
|---|---|---|---|
| status | error | warning | success | info | feature | info | |
| appearance | filled | light | lighter | stroke | filled | |
| size | x-small | small | large | small |