[web] save doc to sessionStorage while editing offline (#35519)

* save doc to session storage when offline
* scope offline doc backup key to user id
* clear offline doc backups on logout
* handle anonymous users
* include trackChanges

GitOrigin-RevId: 3fe6a1523cb10cf76a1fcf4ee46790f6673bd84f
This commit is contained in:
Kristina
2026-09-17 11:30:42 +00:00
committed by Copybot
parent bbac293414
commit 76e004b3e2
6 changed files with 538 additions and 1 deletions
@@ -8,6 +8,7 @@ import NavDropdownLinkItem from './nav-dropdown-link-item'
import { useDsNavStyle } from '@/features/project-list/components/use-is-ds-nav'
import { SignOut } from '@phosphor-icons/react'
import ThemeToggle from '@/features/project-list/components/sidebar/theme-toggle'
import { OfflineDocBackup } from '@/features/ide-react/editor/offline-doc-backup'
export function AccountMenuItems({
sessionUser,
@@ -61,7 +62,12 @@ export function AccountMenuItems({
<span>{t('log_out')}</span>
{dsNavStyle && <SignOut size={16} />}
</OLDropdownItem>
<form id={logOutFormId} method="POST" action="/logout">
<form
id={logOutFormId}
method="POST"
action="/logout"
onSubmit={() => OfflineDocBackup.clearAll()}
>
<input type="hidden" name="_csrf" value={getMeta('ol-csrfToken')} />
</form>
</DropdownListItem>