İçeriğe geç
BigBang

Sık açılanlar

    ↑↓Gezin↵AçEscKapat
    EN

    Bileşenler

    SaveBar

    Formda kaydedilmemiş değişiklik varken alttan yükselen, Kaydet ve Vazgeç düğmeli çubuk.

    Storybook
    Storybook
    Kaynak kod
    Kaynak kod

    SaveBar, uzun ayar ve düzenleme sayfalarında değişikliklerin kaydedilmediğini hatırlatmak içindir. Kaydet düğmesi sayfanın neresinde olunursa olsun erişilebilir kalır.

    • Anında uygulanan ayarlar için: her değişiklik hemen kaydediliyorsa çubuğa gerek yoktur.
    • Kısa formlar için: formun altındaki Kaydet düğmesi görünüyorsa yeterlidir.
    • Çok adımlı akışlar için: WizardFooter kullanın.

    Alanı değiştirin; çubuk aşağıdan yükselir.

    import { SaveBar, TextInput } from '@bigbang/ui';
    import { useState } from 'react';
    export default function Default() {
    const [saved, setSaved] = useState('Kullanıcı 1');
    const [value, setValue] = useState('Kullanıcı 1');
    const [saving, setSaving] = useState(false);
    return (
    <div className="flex h-72 flex-col overflow-auto rounded-lg border border-line-subtle">
    <div className="flex-1 p-xl">
    <TextInput label="Görünen ad" description="Alanı değiştirin; çubuk aşağıdan yükselir." value={value} onValueChange={(next) => setValue(String(next))} className="max-w-sm" />
    </div>
    <SaveBar
    position="sticky"
    warnOnLeave={false}
    open={value !== saved}
    saving={saving}
    onDiscard={() => setValue(saved)}
    onSave={() => {
    setSaving(true);
    window.setTimeout(() => {
    setSaving(false);
    setSaved(value);
    }, 700);
    }}
    />
    </div>
    );
    }
    1. Çubuk: Altta, sayfa genişliğinde.
    2. Mesaj: Bilgi simgesi ve “Kaydedilmemiş değişiklikleriniz var”.
    3. Vazgeç: İkincil düğme; değişiklikleri geri alır.
    4. Kaydet: Birincil düğme; yükleniyor ve kaydedildi durumları.
    • open doğru olunca çubuk aşağıdan yükselerek gelir; kapanınca daha hızlı iner.
    • Kapalı çubuk inert olur: odaklanılmaz, okunmaz.
    • Açılınca mesaj kibarca duyurulur.
    • saving sırasında Kaydet döner gösterge gösterir ve Vazgeç kapanır. saved başarı durumunu gösterir; ardından open’ı kapatın.
    • Açıkken sayfadan ayrılmak tarayıcının onay sorusunu açar (warnOnLeave).
    • Değişiklik yoksa çubuğu göstermeyin; open’ı gerçek farka bağlayın.
    • Vazgeç’i geri alınamaz bir silme gibi göstermeyin; yalnızca kaydedilmemiş değişiklikleri atar.
    • Sabit çubuk sayfanın altını örter; sayfanın altına çubuk yüksekliği kadar boşluk bırakın ya da sticky kullanın.
    Türkçe İngilizce
    Kaydedilmemiş değişiklikleriniz var You have unsaved changes
    Kaydet / Vazgeç Save / Discard
    Kaydedildi Saved

    Provider material="glass" altında çubuk cama döner. material="solid" onu opak tutar.

    • Form: Kaydetmeden önce denetim.
    • Button: Yükleniyor ve başarı durumları.