the directory browser (showDirectoryPicker), file save (createWritable), and save-as (showSaveFilePicker) all use the File System Access API which only exists in Chrome and Edge. on Firefox/Safari these throw a TypeError and the user gets nothing.
the "fallback" is literally toast.info('Switch to Edge/Chrome!'), that's it.
What breaks on Firefox:
- clicking "Open Directory" in file browser => crash
- clicking "Save" in file editor => crash
- clicking "Save As" in file editor => the file-saver fallback exists but hardcodes MIME to application/json for all file types
- saving a .graphml from toolbar => crash
Bonus problems while we're at it:
file extension blocklist is case-sensitive: .PNG and .JPEG pass through
no file size limit. drop a huge file and the tab freezes
File objects get JSON.stringify'd to localStorage as {} (line 42 of fileBrowser) ,they don't serialize