import React from "react"; import { AppState } from "../types"; import { ActionManager } from "../actions/manager"; import { t, setLanguage } from "../i18n"; import Stack from "./Stack"; import { LanguageList } from "./LanguageList"; import { showSelectedShapeActions } from "../element"; import { ExcalidrawElement } from "../element/types"; import { FixedSideContainer } from "./FixedSideContainer"; import { Island } from "./Island"; import { HintViewer } from "./HintViewer"; import { calculateScrollCenter } from "../scene"; import { SelectedShapeActions, ShapesSwitcher } from "./Actions"; import { Section } from "./Section"; import { RoomDialog } from "./RoomDialog"; import { SCROLLBAR_WIDTH, SCROLLBAR_MARGIN } from "../scene/scrollbars"; import { LockIcon } from "./LockIcon"; import { LoadingMessage } from "./LoadingMessage"; type MobileMenuProps = { appState: AppState; actionManager: ActionManager; exportButton: React.ReactNode; setAppState: any; elements: readonly ExcalidrawElement[]; setElements: any; onRoomCreate: () => void; onRoomDestroy: () => void; onLockToggle: () => void; }; export function MobileMenu({ appState, elements, setElements, actionManager, exportButton, setAppState, onRoomCreate, onRoomDestroy, onLockToggle, }: MobileMenuProps) { return ( <> {appState.isLoading && }
{(heading) => ( {heading} )}
{appState.openMenu === "canvas" ? (
{actionManager.renderAction("loadScene")} {actionManager.renderAction("saveScene")} {exportButton} {actionManager.renderAction("clearCanvas")} {actionManager.renderAction("changeViewBackgroundColor")}
{t("labels.language")} { setLanguage(lng); setAppState({}); }} />
) : appState.openMenu === "shape" && showSelectedShapeActions(appState, elements) ? (
) : null}
); }