import React, { useState } from 'react'; import { __ } from '@wordpress/i18n'; import { usePersistentState } from '../../data/hooks'; import { InitialData, Duration, Post } from '../../utils/admin'; import List from '../components/List'; import ManageModal from './modals/Manage'; interface Props { postTypes: InitialData['postTypes'], user: InitialData[ 'user' ], id?: number, } export default function Broadcasts( props: Props ) { const [ period, setPeriod ] = usePersistentState( 'Broadcast Manager-period', 'P7D' ); const postTypes = props.postTypes.filter( type => type.name === 'broadcast' ); const [ broadcastId, setBroadcastId ] = useState( props?.id || null ); const [ managingItem, setManagingItem ] = useState( null ); const [ refresh, setRefresh ] = useState( 0 ); const actions = { [ __( 'Edit', 'altis' ) ]: ( post: Post ) => { setManagingItem( post ); }, }; const filters = [ 'all', 'mine' ]; if ( ! postTypes[0] ) { return null; } return (
setManagingItem( 'new' ) } onManageItem={ setManagingItem } onSetPeriod={ setPeriod } onSetPostId={ setBroadcastId } /> { ( managingItem ) && ( { setManagingItem( null ); } } onSuccess={ item => { setManagingItem( item ); setBroadcastId( item.id ); setRefresh( refresh + 1 ); } } /> ) }
); }