]> git.localhorst.tv Git - alttp.git/blob - resources/js/components/episodes/RestreamDialog.js
basic channel crew
[alttp.git] / resources / js / components / episodes / RestreamDialog.js
1 import PropTypes from 'prop-types';
2 import React from 'react';
3 import { Modal } from 'react-bootstrap';
4 import { useTranslation } from 'react-i18next';
5
6 import RestreamAddForm from './RestreamAddForm';
7 import RestreamEditForm from './RestreamEditForm';
8
9 const RestreamDialog = ({
10         channel,
11         episode,
12         onHide,
13         onRemoveRestream,
14         onSubmit,
15         show,
16 }) => {
17         const { t } = useTranslation();
18
19         return <Modal className="restream-dialog" onHide={onHide} show={show}>
20                 <Modal.Header closeButton>
21                         <Modal.Title>
22                                 {t('episodes.restreamDialog.title')}
23                         </Modal.Title>
24                 </Modal.Header>
25                 {channel ?
26                         <RestreamEditForm
27                                 channel={channel}
28                                 episode={episode}
29                                 onCancel={onHide}
30                                 onRemoveRestream={onRemoveRestream}
31                         />
32                 :
33                         <RestreamAddForm
34                                 episode={episode}
35                                 onCancel={onHide}
36                                 onSubmit={onSubmit}
37                         />
38                 }
39         </Modal>;
40 };
41
42 RestreamDialog.propTypes = {
43         channel: PropTypes.shape({
44         }),
45         episode: PropTypes.shape({
46         }),
47         onHide: PropTypes.func,
48         onRemoveRestream: PropTypes.func,
49         onSubmit: PropTypes.func,
50         show: PropTypes.bool,
51 };
52
53 export default RestreamDialog;