const links = [{
title: 'test',
link: 'test
}, {
title: 'test',
link: 'test
}]
<LinkList links={links} />
<Avatar />
<Avatar loading={true} width={'60px'} />
<Avatar src="/static/demo-images/edge-avatar.jpg" status='available'/>
<UserProfileBox user={{username: 'demo-user', profile: { bio: 'My bio is something special'}}} />
<StackedAvatars
maxItems={2}
title="Users"
users={[
{
id: 1,
profile: {
picture: {
path: 'https://loremflickr.com/240/240/food?random=3',
},
},
},
{
id: 2,
profile: {
picture: {
path: 'https://loremflickr.com/240/240/food?random=1',
},
},
},
{ id: 3 },
]}
width="50px"
/>
<Badge>42</Badge>
<Badge alt >42</Badge>
<Badge secondary >42</Badge>
<Badge success >42</Badge>
<Badge warning >42</Badge>
<Badge alert >42</Badge>
<Badge alert featured>42</Badge>
<Card>Content</Card>
<Card alt >Content</Card>
<Card secondary >Content</Card>
<Card success >Content</Card>
<Card warning >Content</Card>
<Card alert >Content</Card>
<Card alert featured>Content</Card>
<ReactionCounter type='like' count={10} />
<Loading />
<LoadingPlaceholder />
<LoadingPlaceholder width={'100px'} height={'100px'} borderRadius={'100%'} />
<Toggle />
<ThemeSelector selectedTheme='Light' />
See Content Types documentation for more details
Lorem ipsum dolor sit amet, Lorem ipsum dolor sit amet, Lorem ipsum dolor sit amet, Lorem ipsum dolor sit amet,
<ContentSummaryView type={demoContentType} content={demoContent} />
A "gracefully" loading image. If multiple images are passed it will display a carousel.
<Image srcs={['https://loremflickr.com/240/240/cars?random=1']} />
<Image srcs={[{
url: 'https://loremflickr.com/240/240/cars?random=2',
quote: 'An amazing picture'
}]} />
<select><option>Example</option></select>
<input type="text" placeholder="Example input"></input>
<textarea placeholder="Example textarea"></textarea>
See the documentation for more information about dynamic fields
Drag and drop files
Upload a single image
{dynamicFields.map((f) => {
return (
<DynamicField
field={f}
value={state[f.name]}
onChange={(val) => { setState({...state, [f.name]: val})}}
/>
)
})}
A field for wrapping the representation of dynamic data
This is an example of data
This is an example of data
{dynamicValues.map(item => {
return (
<DynamicFieldView field={item.field} value={item.value} typeDefinition={{slug: 'test'}} />
)
})}
<EmailsInput placeholder="Add some emails" />
<PasswordStrength password='he!sS.S1asd' />
| User | Last Activity | Actions | |
|---|---|---|---|
| | rafael@etereo.io | Today | |
| | hayder@etereo.io | Today | |
| | rafael@etereo.io | Today | |
| | hayder@etereo.io | Today | |
| | rafael@etereo.io | Today |
<Table
//Header Sections
headerCells={[
<TableCellHeader>User</TableCellHeader>,
<TableCellHeader>Email</TableCellHeader>,
<TableCellHeader>Last Activity</TableCellHeader>,
<TableCellHeader>Actions</TableCellHeader>,
]}
>
//Body Content Unit
<TableRowBody>
<TableCellBody>
<Avatar/> User Name
</TableCellBody>
<TableCellBody>
user@user.com
</TableCellBody>
<TableCellBody>
Today
</TableCellBody>
<TableCellBody>
<Button>Delete</Button>
</TableCellBody>
</TableRowBody>
</Table>
const { value: tab, onChange: handleTabChange } = useTab('account')
const tabs = useMemo(
() => [
{
id: 'account',
label: 'Account',
content: 'Account tab',
},
{
id: 'likes',
label: 'likes',
counter: 5,
content: 'Tab with counter',
},
{
id: 'profile',
label: 'Profile',
disabled: true,
content: 'You can see tab label but cannot see content'
},
{
id: 'private',
label: 'Private tab',
show: false,
content: 'This tab will not be shown because of "show" property',
},
],
[]
)
<Editor defaultValue="Some default value" label="Rich text editor"/>
<VideoRecorder />
Drag and drop files
<Upload />
<Map />
<EmojiPicker onSelect={() => null} />
Social Share
shareUrl defaults to window.location
<SocialShare shareUrl='' />