This repository was archived by the owner on Jun 20, 2022. It is now read-only.
File tree Expand file tree Collapse file tree 2 files changed +64
-1
lines changed
Expand file tree Collapse file tree 2 files changed +64
-1
lines changed Original file line number Diff line number Diff line change 1+ Toggler is a render-props component that provide a toggle behaviour.
2+
3+ ``` js
4+ < Toggler>
5+ {({ toggled, onToggle }) => (
6+ < Button variant= " primary" onClick= {onToggle}>
7+ {toggled ? ' ON' : ' OFF' }
8+ < / Button>
9+ )}
10+ < / Toggler>
11+ ```
12+
13+ ### Specify a value in ` onToggle `
14+
15+ ``` js
16+ < Toggler>
17+ {({ toggled, onToggle }) => (
18+ < div className= " block-list" >
19+ < div> {toggled ? ' 🌞' : ' 🌛' }< / div>
20+ < div>
21+ < Button variant= " primary" size= " sm" onClick= {() => onToggle (false )}>
22+ Night
23+ < / Button> {' ' }
24+ < Button variant= " primary" size= " sm" onClick= {() => onToggle (true )}>
25+ Day
26+ < / Button>
27+ < / div>
28+ < / div>
29+ )}
30+ < / Toggler>
31+ ```
32+
33+ ### Set the default toggle
34+
35+ You can define the default ` toggled ` value using ` defaultToggled ` property.
36+
37+ ``` js
38+ < Toggler defaultToggled>
39+ {({ toggled, onToggle }) => (
40+ < Button variant= " primary" onClick= {onToggle}>
41+ {toggled ? ' ON' : ' OFF' }
42+ < / Button>
43+ )}
44+ < / Toggler>
45+ ```
46+
47+ ### Listen for toggling
48+
49+ You can listen when the element is toggled using ` onToggle ` property.
50+
51+ ``` js
52+ < Toggler onToggle= {toggled => console .log (' Toggled' , toggled)}>
53+ {({ toggled, onToggle }) => (
54+ < Button variant= " primary" onClick= {onToggle}>
55+ {toggled ? ' ON' : ' OFF' }
56+ < / Button>
57+ )}
58+ < / Toggler>
59+ ```
Original file line number Diff line number Diff line change @@ -4,10 +4,14 @@ import { lighten } from 'polished'
44import * as theme from '../src/theme/defaultTheme'
55
66injectGlobal `
7+ body {
8+ font-family: ${ theme . fontFamily } ;
9+ }
10+
711 table {
812 width: 100%;
913 }
10-
14+
1115 [class^='rsg--preview'], [class*=' rsg--preview'] {
1216 .sui-row + .sui-row {
1317 margin-top: 1rem;
You can’t perform that action at this time.
0 commit comments