Tema Oluşturma
Tema Oluşturma
Temaları kullanma ve özelleştirme
RainbowKit UI'yi markanıza uyacak şekilde ayarlayabilirsiniz. Birkaç önceden tanımlanmış vurgu rengi ve kenar yarıçapı konfigürasyonlarından seçim yapabilirsiniz.
3 yerleşik tema fonksiyonu bulunmaktadır:
lightTheme
(varsayılan)
darkTheme
midnightTheme
Bir tema fonksiyonu bir tema nesnesi döndürür. Nesneyi RainbowKitProvider
'ın theme
özelliğine geçirebilirsiniz.
import { RainbowKitProvider , darkTheme } from '@rainbow-me/rainbowkit' ;
export const App = ( ) => (
< RainbowKitProvider theme = { darkTheme ( ) } { ... etc} >
{ }
</ RainbowKitProvider >
) ;
İsterseniz, accentColor
, accentColorForeground
, borderRadius
, fontStack
ve overlayBlur
'u özelleştirebilmek için içlerine geçirebilirsiniz.
import { RainbowKitProvider , darkTheme } from '@rainbow-me/rainbowkit' ;
export const App = ( ) => (
< RainbowKitProvider
theme = { darkTheme ( {
accentColor : '#7b3fe4' ,
accentColorForeground : 'white' ,
borderRadius : 'small' ,
fontStack : 'system' ,
overlayBlur : 'small' ,
} ) }
{ ... etc}
>
{ }
</ RainbowKitProvider >
) ;
Dahili tema fonksiyonları ayrıca bir seçenekler nesnesini kabul eder, size birkaç farklı görsel stilden seçme imkanı sunar.
Prop Type Default accentColor
Information string
"#0E76FD"
accentColorForeground
Information string
"white"
borderRadius
Information enum
Information large
fontStack
Information enum
Information rounded
overlayBlur
Information enum
Information none
Örneğin, koyu temayı mor bir aksan rengi ve orta
bir kenar yarıçapı ölçeği ile özelleştirmek için:
import { RainbowKitProvider , darkTheme } from '@rainbow-me/rainbowkit' ;
const App = ( ) => {
return (
< RainbowKitProvider
theme = { darkTheme ( {
accentColor: '#7b3fe4' ,
accentColorForeground: 'white' ,
borderRadius: 'medium' ,
} ) }
{ ... etc}
>
{ }
</ RainbowKitProvider >
) ;
} ;
Her tema ayrıca (mavi
, yeşil
, turuncu
, pembe
, mor
, kırmızı
) olmak üzere birçok aksan rengi ön ayarını seçenekler nesnesine yayabilir. Örneğin, pembe
aksan rengi ön ayarını kullanmak için:
import { RainbowKitProvider , darkTheme } from '@rainbow-me/rainbowkit' ;
const App = ( ) => {
return (
< RainbowKitProvider
theme = { darkTheme ( {
... darkTheme. accentColors . pink ,
} ) }
{ ... etc}
>
{ }
</ RainbowKitProvider >
) ;
} ;
theme
prop'unun farklı yollarını kullanabilirsiniz.
darkTheme
temasını kullanın.
import { RainbowKitProvider , darkTheme } from '@rainbow-me/rainbowkit' ;
export const App = ( ) => (
< RainbowKitProvider theme = { darkTheme ( ) } { ... etc} >
{ }
</ RainbowKitProvider >
) ;
midnightTheme
temasını kullanın.
import {
RainbowKitProvider ,
midnightTheme,
} from '@rainbow-me/rainbowkit' ;
export const App = ( ) => (
< RainbowKitProvider theme = { midnightTheme ( ) } { ... etc} >
{ }
</ RainbowKitProvider >
) ;
accentColor
config'ını çeşitli yollarla kullanabilirsiniz.
Vurgu rengini özel bir mor değere ayarlayın.
import { RainbowKitProvider , darkTheme } from '@rainbow-me/rainbowkit' ;
const App = ( ) => {
return (
< RainbowKitProvider
theme = { darkTheme ( {
accentColor: '#7b3fe4' ,
accentColorForeground: 'white' ,
} ) }
{ ... etc}
>
{ }
</ RainbowKitProvider >
) ;
} ;
Vurgu rengini dahili green
ön ayarına ayarlayın.
import { RainbowKitProvider , darkTheme } from '@rainbow-me/rainbowkit' ;
const App = ( ) => {
return (
< RainbowKitProvider
theme = { darkTheme ( {
... darkTheme. accentColors . green ,
} ) }
{ ... etc}
>
{ }
</ RainbowKitProvider >
) ;
} ;
borderRadius
config'ini farklı şekillerde kullanabilirsiniz.
Kenar yarıçapını medium
olarak ayarlayın.
import { RainbowKitProvider , darkTheme } from '@rainbow-me/rainbowkit' ;
const App = ( ) => {
return (
< RainbowKitProvider
theme = { darkTheme ( {
borderRadius: 'medium' ,
} ) }
{ ... etc}
>
{ }
</ RainbowKitProvider >
) ;
} ;
Kenar yarıçapını none
olarak ayarlayın.
import { RainbowKitProvider , darkTheme } from '@rainbow-me/rainbowkit' ;
const App = ( ) => {
return (
< RainbowKitProvider
theme = { darkTheme ( {
borderRadius: 'none' ,
} ) }
{ ... etc}
>
{ }
</ RainbowKitProvider >
) ;
} ;
Hatırlatma: mevcut kenar yarıçapı değerleri: large
(varsayılan), medium
, small
ve none
.
Varsayılan olarak, fontStack
rounded
olarak ayarlanmıştır. Ama işte fontStack
konfigürasyonunu nasıl kullanabileceğiniz.
Font yığınını system
olarak ayarlayın.
import { RainbowKitProvider , darkTheme } from '@rainbow-me/rainbowkit' ;
const App = ( ) => {
return (
< RainbowKitProvider
theme = { darkTheme ( {
fontStack: 'system' ,
} ) }
{ ... etc}
>
{ }
</ RainbowKitProvider >
) ;
} ;
Varsayılan olarak, overlayBlur
none
olarak ayarlanmıştır. Ama işte overlayBlur
konfigürasyonunu nasıl kullanabileceğiniz.
Üst örtü bulanıklığını small
olarak ayarlayın.
import { RainbowKitProvider , darkTheme } from '@rainbow-me/rainbowkit' ;
const App = ( ) => {
return (
< RainbowKitProvider
theme = { darkTheme ( {
overlayBlur: 'small' ,
} ) }
{ ... etc}
>
{ }
</ RainbowKitProvider >
) ;
} ;
accentColor
, borderRadius
ve fontStack
propsları ile farklı temaları nasıl kullanabileceğinizin birkaç farklı yolu.
lightTheme
temasını kullanın
Vurgu rengini özel mor değeri olarak ayarlayın
Kenar yarıçapını medium
olarak ayarlayın
Yazı tipi yığınını system
olarak ayarlayın
import { RainbowKitProvider , lightTheme } from '@rainbow-me/rainbowkit' ;
const App = ( ) => {
return (
< RainbowKitProvider
theme = { lightTheme ( {
accentColor: '#7b3fe4' ,
accentColorForeground: 'white' ,
borderRadius: 'medium' ,
fontStack: 'system' ,
} ) }
{ ... etc}
>
{ }
</ RainbowKitProvider >
) ;
} ;
midnightTheme
temasını kullanın
Vurgu rengini yerleşik pink
ön ayara ayarlayın.
Kenar yuvarlaklığını small
olarak ayarlayın
Yazı tipi yığınını system
olarak ayarlayın
import {
RainbowKitProvider ,
midnightTheme,
} from '@rainbow-me/rainbowkit' ;
const App = ( ) => {
return (
< RainbowKitProvider
theme = { midnightTheme ( {
... midnightTheme. accentColors . pink ,
borderRadius: 'small' ,
fontStack: 'system' ,
} ) }
{ ... etc}
>
{ }
</ RainbowKitProvider >
) ;
} ;
Uygulamanız ışık ve karanlık modlar arasında geçiş yapmak için standart prefers-color-scheme: dark
medya sorgusunu kullanıyorsa, seçeneğe bağlı olarak lightMode
ve darkMode
değerlerini içeren dinamik bir tema nesnesi sağlayabilirsiniz.
import {
RainbowKitProvider ,
lightTheme,
darkTheme,
} from '@rainbow-me/rainbowkit' ;
const App = ( ) => (
< RainbowKitProvider
theme = { {
lightMode: lightTheme ( ) ,
darkMode: darkTheme ( ) ,
} }
{ ... etc}
>
{ }
</ RainbowKitProvider >
) ;