import React from 'react' import * as gtag from 'utils/gtag' import { Tldraw, TldrawApp, useFileSystem } from '@tldraw/tldraw' import { useAccountHandlers } from 'hooks/useAccountHandlers' declare const window: Window & { app: TldrawApp } interface EditorProps { id?: string isUser?: boolean isSponsor?: boolean } export default function Editor({ id = 'home', isUser = false, isSponsor = false }: EditorProps) { const handleMount = React.useCallback((app: TldrawApp) => { window.app = app }, []) // Send events to gtag as actions. const handlePersist = React.useCallback((_app: TldrawApp, reason?: string) => { gtag.event({ action: reason ?? '', category: 'editor', label: reason ?? 'persist', value: 0, }) }, []) const fileSystemEvents = useFileSystem() const { onSignIn, onSignOut } = useAccountHandlers() return (