diff --git a/services/web/frontend/js/features/ide-react/components/unsaved-docs/unsaved-docs-locked-alert.tsx b/services/web/frontend/js/features/ide-react/components/unsaved-docs/unsaved-docs-locked-alert.tsx index 3630cc5dab..18d5952435 100644 --- a/services/web/frontend/js/features/ide-react/components/unsaved-docs/unsaved-docs-locked-alert.tsx +++ b/services/web/frontend/js/features/ide-react/components/unsaved-docs/unsaved-docs-locked-alert.tsx @@ -1,9 +1,21 @@ -import { FC } from 'react' +import { FC, useEffect } from 'react' import { useTranslation } from 'react-i18next' import OLNotification from '@/features/ui/components/ol/ol-notification' +import { useEditorManagerContext } from '@/features/ide-react/context/editor-manager-context' +import { useIdeReactContext } from '@/features/ide-react/context/ide-react-context' export const UnsavedDocsLockedAlert: FC = () => { const { t } = useTranslation() + const { openDocs } = useEditorManagerContext() + const { reportError } = useIdeReactContext() + + useEffect(() => { + const { pendingOpsLength, inflightOpsLength } = openDocs.getUnsavedOpsSize() + reportError('connection-lost-with-unsaved-changes', { + pendingOpsLength, + inflightOpsLength, + }) + }, [reportError, openDocs]) return (