Physical switch that allows users to turn things on or off. Used for applying system states, presenting binary options and activating a state.
<%= pb_rails("title", props: { size: 4, text: "Which of the following vehicles do you own?" }) %> <br> <%= pb_rails("caption", props: { text: "Car" }) %> <%= pb_rails("toggle", props: { size: "sm", checked: false, name: "vehicle", value: "car" }) %> <br> <%= pb_rails("caption", props: { text: "Bike" }) %> <%= pb_rails("toggle", props: { size: "sm", checked: false, name: "vehicle", value: "bike" }) %>
<%= pb_rails("title", props: { size: 4, text: "Select one option:" }) %> <br> <%= pb_rails("caption", props: { text: "Walk" }) %> <%= pb_rails("toggle", props: { size: "sm" }) do %> <input type="radio" name="modes of transportation" value="walk"> <% end %> <br/> <%= pb_rails("caption", props: { text: "Bike" }) %> <%= pb_rails("toggle", props: { size: "sm" }) do %> <input type="radio" name="modes of transportation" value="bike"> <% end %> <br/> <%= pb_rails("caption", props: { text: "Ride" }) %> <%= pb_rails("toggle", props: { size: "sm" }) do %> <input type="radio" name="modes of transportation" value="ride"> <% end %>
Avoid using if there is a selection with no action/execution that follows or if actions need to be confirmed before being applied.
Avoid using for opposing options (ie having an option on each side of toggle and the side that it is flipped to is the option that is selected).
| Props | Type | Values |
|---|---|---|
align_content |
enum | responsive
|
start
end
center
spaceBetween
spaceAround
spaceEvenly
|
align_items |
enum | responsive
|
start
end
center
|
border_radius |
enum
|
none
xs
sm
md
lg
xl
rounded
|
cursor |
enum
|
auto
default
none
contextMenu
help
pointer
progress
wait
cell
|
dark |
boolean
|
true
false
|
flex |
enum | responsive
|
auto
initial
0
1
2
3
4
5
6
7
8
9
10
11
12
none
|
flex_direction |
enum | responsive
|
row
column
rowReverse
columnReverse
|
flex_wrap |
enum | responsive
|
wrap
nowrap
wrapReverse
|
justify_content |
enum | responsive
|
start
end
center
spaceBetween
spaceAround
spaceEvenly
|
line_height |
enum
|
loosest
looser
loose
normal
tight
tighter
tightest
|
margin_right |
array
|
none
xxs
xs
sm
md
lg
xl
|
margin_left |
array
|
none
xxs
xs
sm
md
lg
xl
|
margin_top |
array
|
none
xxs
xs
sm
md
lg
xl
|
margin_bottom |
array
|
none
xxs
xs
sm
md
lg
xl
|
margin_x |
array
|
none
xxs
xs
sm
md
lg
xl
|
margin_y |
array
|
none
xxs
xs
sm
md
lg
xl
|
margin |
array
|
none
xxs
xs
sm
md
lg
xl
|
width |
string
|
|
min_width |
string
|
|
max_width |
string
|
|
gap |
string | responsive
|
|
column_gap |
string | responsive
|
|
row_gap |
string | responsive
|
|
number_spacing |
enum
|
tabular
|
order |
enum | responsive
|
none
first
1
2
3
4
5
6
7
8
9
10
11
12
|
overflow_x |
enum
|
scroll
visible
hidden
auto
|
overflow_y |
enum
|
scroll
visible
hidden
auto
|
overflow |
enum
|
scroll
visible
hidden
auto
|
padding_right |
array
|
none
xxs
xs
sm
md
lg
xl
|
padding_left |
array
|
none
xxs
xs
sm
md
lg
xl
|
padding_top |
array
|
none
xxs
xs
sm
md
lg
xl
|
padding_bottom |
array
|
none
xxs
xs
sm
md
lg
xl
|
padding_x |
array
|
none
xxs
xs
sm
md
lg
xl
|
padding_y |
array
|
none
xxs
xs
sm
md
lg
xl
|
padding |
array
|
none
xxs
xs
sm
md
lg
xl
|
position |
enum
|
relative
absolute
fixed
sticky
static
|
shadow |
enum
|
none
deep
deeper
deepest
|
text_align |
enum | responsive
|
start
end
left
right
center
justify
justifyAll
matchParent
|
truncate |
enum
|
none
1
2
3
4
5
|
vertical_align |
enum | responsive
|
baseline
super
top
middle
bottom
sub
text-top
text-bottom
|
z_index |
enum | responsive
|
1
2
3
4
5
6
7
8
9
10
max
|
top |
enum | object
|
xxs
xs
sm
md
lg
xl
xxl
|
inset |
boolean
|
true
false
|
right |
enum | object
|
xxs
xs
sm
md
lg
xl
xxl
|
bottom |
enum | object
|
xxs
xs
sm
md
lg
xl
xxl
|
left |
enum | object
|
xxs
xs
sm
md
lg
xl
xxl
|
height |
string
|
|
max_height |
string
|
|
min_height |
string
|
|
hover |
object
|
|
group_hover |
boolean
|
true
false
|
| Props | Type | Values | Default |
|---|---|---|---|
checked |
boolean
|
true
false
|
false
|
disabled |
boolean
|
true
false
|
false
|
name |
string
|
||
on_change |
reactnode
|
||
size |
enum
|
sm
md
|
sm
|
value |
string
|
||
input_options |
string
|