Bileşenler
Provider
İçindeki her şey için dil, yazı yönü ve hareket tercihini belirler; yerleşimi değiştirmez.
- Storybook
- Storybook
- Kaynak kod
- Kaynak kod
Ne zaman kullanılır
Bölüm başlığı “Ne zaman kullanılır”Provider, uygulamanın ya da bir bölümünün dilini, yazı yönünü ve hareket tercihini tek yerden vermek içindir. Çoğu uygulamada tek bir Provider, uygulama kökünü sarar.
Ne zaman kullanılmaz
Bölüm başlığı “Ne zaman kullanılmaz”- Tema ya da marka seçmek için: Tema ve marka Provider prop’u değildir; uygulama kökünde
data-themevedata-brandöznitelikleriyle verilir. - Uygulama metinleri için: Provider yalnızca kütüphanenin kendi metinlerini (
ui.*) çevirir; ekran başlıkları ve etiketler uygulamanın işidir. - Her bileşenin çevresinde: Aynı ayarı tekrar etmeyin; ayar değişen bir bölüm yoksa tek Provider yeter.
Anatomi
Bölüm başlığı “Anatomi”import { Button, Provider } from '@bigbang/ui';
export default function Locale() { return ( <Provider locale="tr-TR"> <Button loading>Birincil buton</Button> </Provider> );}- Kapsayıcı:
display: contentsolan tek bir<div>;lang,dirvedata-motionöznitelikleri bunun üzerindedir. Kutu oluşturmaz, yerleşimi değiştirmez. - İçerik:
children; ayarlar bu alana ve altındaki her şeye uygulanır.
Davranış
Bölüm başlığı “Davranış”localevarsayılanıtr-TR,directionvarsayılanıltr,reducedMotionvarsayılanısystemdir. Provider olmadan da kütüphane Türkçe çalışır.locale:tr-TRya daen-GB. Seçim, kütüphane metinlerini (yükleniyor, tamamlandı, zorunlu, isteğe bağlı) ve kapsayıcınınlangdeğerini belirler.direction: kapsayıcıyadirverir ve Base UI’ınDirectionProvider’ını besler; ok tuşları ve açılır katmanlar yöne uyar.reducedMotion="reduce": kapsayıcıyadata-motion="reduce"verir. Token CSS’i azaltılmış değerlere geçer veuseReducedMotion()truedöner.reducedMotion="system"hareketi işletim sistemine bırakır. İkisi de hareketi geri açamaz: iç içe bir Provider, dıştakireduceayarını bozmaz.- Provider hareket tercihini de, dil ve yönü de bağlam olarak taşır; iç içe Provider yalnızca kendi alanındaki dili ve yönü değiştirir.
Yönergeler
Bölüm başlığı “Yönergeler”Tek Provider kullanın
Bölüm başlığı “Tek Provider kullanın”Ayarı uygulama kökünde bir kez verin. Ayarı farklı olan bir bölüm varsa yalnızca o bölümü sarın.
Metin dili ile ekran dilini eşleştirin
Bölüm başlığı “Metin dili ile ekran dilini eşleştirin”locale kütüphane metinlerini değiştirir, uygulama metinlerini değiştirmez. Uygulamanın kendi metinlerini de aynı dilde verin.
İçerik
Bölüm başlığı “İçerik”localedeğeri bir dil etiketidir:tr-TR,en-GB. Başka bir dil için kütüphaneye metin katalogu eklenmesi gerekir.- Kütüphane metinleri kısa tutulur: “Yükleniyor”, “Tamamlandı”, “zorunlu”, “isteğe bağlı”.
- Bir bileşenin metnini tek tek değiştirmek için ilgili prop’u (
loadingLabelgibi) kullanın; Provider tüm alanı değiştirir.
| Metin | tr-TR | en-GB |
|---|---|---|
ui.button.loading |
Yükleniyor | Loading |
ui.button.success |
Tamamlandı | Done |
ui.field.required |
zorunlu | required |
ui.field.optional |
isteğe bağlı | optional |
Malzeme
Bölüm başlığı “Malzeme”material="glass" içerideki çerçeve yüzeylerini cama çevirir: üst çubuk, açılır paneller, menüler, bildirimler, araç çubukları ve segmentli kontroller. Tablolar, formlar, kartlar, grafikler, para alanları, ipuçları ve sayfa arka planı opak kalır. Varsayılan solid. Prop verilmeyen bir Provider çevresindekinin malzemesini korur; iç içe bir material="solid" sayfanın o bölümünü opak tutar. Sistem azaltılmış saydamlık istediğinde Provider opak çizer. Bkz. Malzeme.