2022-04-28 09:19:20 +03:00
import React from 'react' ;
import { ComponentStory , ComponentMeta } from '@storybook/react' ;
2022-09-03 21:38:52 +03:00
import ActionButtonRow from './ActionButtonRow' ;
import ActionButton from '../ActionButton/ActionButton' ;
2022-04-28 09:19:20 +03:00
export default {
2022-05-18 00:24:48 +03:00
title : 'owncast/Components/Action Buttons/Buttons Row' ,
2022-05-08 02:13:06 +03:00
component : ActionButtonRow ,
2022-05-13 06:52:19 +03:00
parameters : {
docs : {
description : {
component : ` This is a horizontal row of buttons that could be statically created by the Owncast application (such as Notify, Follow) or are user-generated external actions (Donate, Learn more, etc).
There can be any number of buttons , including zero . They should wrap if needed and handle resizing . ` ,
} ,
} ,
} ,
2022-05-08 02:13:06 +03:00
} as ComponentMeta < typeof ActionButtonRow > ;
2022-04-28 09:19:20 +03:00
// eslint-disable-next-line @typescript-eslint/no-unused-vars
2022-05-12 09:31:31 +03:00
const Template : ComponentStory < typeof ActionButtonRow > = args = > {
const { buttons } = args as any ;
return < ActionButtonRow > { buttons } < / ActionButtonRow > ;
} ;
2022-04-28 09:19:20 +03:00
// eslint-disable-next-line @typescript-eslint/no-unused-vars
2022-05-08 02:13:06 +03:00
const actions = [
{
2022-04-28 09:19:20 +03:00
url : 'https://owncast.online/docs' ,
title : 'Documentation' ,
description : 'Owncast Documentation' ,
icon : 'https://owncast.online/images/logo.svg' ,
color : '#5232c8' ,
openExternally : false ,
} ,
2022-05-08 02:13:06 +03:00
{
2022-04-28 09:19:20 +03:00
url : 'https://opencollective.com/embed/owncast/donate' ,
title : 'Support Owncast' ,
description : 'Contribute to Owncast' ,
icon : 'https://opencollective.com/static/images/opencollective-icon.svg' ,
color : '#2b4863' ,
openExternally : false ,
} ,
2022-05-08 02:13:06 +03:00
] ;
const buttons = actions . map ( action = > < ActionButton action = { action } / > ) ;
export const Example1 = Template . bind ( { } ) ;
Example1 . args = {
buttons ,
2022-04-28 09:19:20 +03:00
} ;