zhongrj
2025-11-24 276323dce9613867abb3f58a4cc2abbfb2fd0dea
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
import PropTypes from 'prop-types';
import { Component } from "react";
import { Modal } from "react-bootstrap";
import NewTaskPanel from "webodm/components/NewTaskPanel";
 
import "./ConfigureNewTaskDialog.scss";
 
export default class ConfigureNewTaskDialog extends Component {
    static defaultProps = {
 
    };
    static propTypes = {
        onHide: PropTypes.func.isRequired,
        onSaveTask: PropTypes.func.isRequired,
        ddbRes: PropTypes.object,
      }
 
    handleTaskName = () => {
        return new Promise((resolve) => {
            resolve(ddbRes ? ddbRes.name : null);
        });
    }
 
    render() {
        const {
            onHide,
            onSaveTask,
            ddbRes,
        } = this.props;
 
        return (
            <Modal className={"new-task"} onHide={onHide} show={true} dialogClassName="modal-newtask">
                <Modal.Header closeButton>
                    <Modal.Title>
                        Import from DroneDB
                    </Modal.Title>
                </Modal.Header>
                <Modal.Body>
                    <NewTaskPanel
                         onSave={onSaveTask}
                         onCancel={onHide}
                         filesCount={ddbRes ? ddbRes.images_count : 0}
                         getFiles={() => []}
                         showResize={false}
                         suggestedTaskName={this.handleTaskName}
                     />
                </Modal.Body>
            </Modal>
        );
    }
}