import { Button, Classes, Dialog, FileInput, FormGroup, HTMLSelect, InputGroup, Intent, Navbar, NavbarGroup } from "@blueprintjs/core"; import { observer } from "mobx-react"; import React, { ChangeEvent, KeyboardEvent } from "react"; import { saveCurrentQuestToFile, setCurrentAreaId } from "../../actions/quest-editor/questEditor"; import { loadFile } from "../../actions/quest-editor/loadFile"; import { questEditorStore } from "../../stores/QuestEditorStore"; import { EntityInfoComponent } from "./EntityInfoComponent"; import './QuestEditorComponent.css'; import { QuestInfoComponent } from "./QuestInfoComponent"; import { RendererComponent } from "./RendererComponent"; @observer export class QuestEditorComponent extends React.Component<{}, { filename?: string, saveDialogOpen: boolean, saveDialogFilename: string }> { state = { filename: undefined, saveDialogOpen: false, saveDialogFilename: 'Untitled', }; render() { const quest = questEditorStore.currentQuest; const model = questEditorStore.currentModel; const areas = quest && Array.from(quest.areaVariants).map(a => a.area); const area = questEditorStore.currentArea; const areaId = area && String(area.id); return (