<Arrange> <IconButton icon={<IconHeart />}/> <IconButton icon={<IconPlus />}/> <IconButton icon={<IconSwitch />}/> </Arrange>
() => { const [activeDevice, setActiveDevice] = React.useState('desktop'); return ( <Arrange> <IconButton icon={<IconMonitor />} isActive={activeDevice === 'desktop'} onClick={() => setActiveDevice('desktop')} /> <IconButton icon={<IconPhone />} isActive={activeDevice === 'phone'} onClick={() => setActiveDevice('phone')} /> </Arrange> ); }
<Arrange> <IconButton variant="neutral" icon={<IconFolder />}/> <IconButton variant="danger" icon={<IconTrash />}/> </Arrange>
<Arrange> <IconButton icon={<IconArrowLeft />} isDisabled/> <IconButton icon={<IconArrowRight />}/> </Arrange>
Use the trimSides
prop to remove side space, keeping the size snug around the icon.
<Box className="grn-card-container" maxWidth="34ch"> <Box className="grn-card" padding="var(--grn-card-padding)" radius="var(--grn-card-radius)" shadow="m" borderSide="all" > <Stack gap="m" borderSide="all" borderColor="pink" borderWidth="1px" > <Arrange justifyContent="space-between" alignItems="top"> <Text size="l" weight="medium" trimTop>{demoText.s}</Text> <IconButton trimSides icon={<IconUpload />} /> </Arrange> <Text>{demoText.m}</Text> <Arrange justifyContent="space-between"> <IconButton trimSides icon={<IconArrowLeft />} /> <IconButton trimSides icon={<IconArrowRight />} /> </Arrange> </Stack> </Box> </Box>
<IconButton icon={<IconPlus />} onClick={() => alert('Nice')}/>
<Arrange gap="s"> <IconButton icon={<IconPlus />} onClick={() => console.log('clicked')}/> <IconButton icon={<IconPlus />} tag="a" href="https://flodesk.com" target="_blank"/> <IconButton icon={<IconPlus />} tag="span"/> </Arrange>