mirror of
https://github.com/overleaf/overleaf.git
synced 2024-11-29 02:53:48 -05:00
Merge pull request #15347 from overleaf/ii-ide-page-prototype-chat-pane
Chat for React IDE page GitOrigin-RevId: 2a34e754a810fd6ef07e4213ad1d31d5e8e54b4c
This commit is contained in:
parent
9b6f83dfd4
commit
5c7fbdceac
4 changed files with 10 additions and 4 deletions
|
@ -16,6 +16,7 @@ import { getJSON, postJSON } from '../../../infrastructure/fetch-json'
|
||||||
import { appendMessage, prependMessages } from '../utils/message-list-appender'
|
import { appendMessage, prependMessages } from '../utils/message-list-appender'
|
||||||
import useBrowserWindow from '../../../shared/hooks/use-browser-window'
|
import useBrowserWindow from '../../../shared/hooks/use-browser-window'
|
||||||
import { useLayoutContext } from '../../../shared/context/layout-context'
|
import { useLayoutContext } from '../../../shared/context/layout-context'
|
||||||
|
import { useIdeContext } from '@/shared/context/ide-context'
|
||||||
|
|
||||||
const PAGE_SIZE = 50
|
const PAGE_SIZE = 50
|
||||||
|
|
||||||
|
@ -226,7 +227,7 @@ export function ChatProvider({ children }) {
|
||||||
}, [])
|
}, [])
|
||||||
|
|
||||||
// Handling receiving messages over the socket
|
// Handling receiving messages over the socket
|
||||||
const socket = window._ide?.socket
|
const { socket } = useIdeContext()
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
if (!socket) return
|
if (!socket) return
|
||||||
|
|
||||||
|
|
|
@ -3,12 +3,12 @@ import useEventListener from '@/shared/hooks/use-event-listener'
|
||||||
import { useCallback, useEffect, useState } from 'react'
|
import { useCallback, useEffect, useState } from 'react'
|
||||||
import { Alerts } from '@/features/ide-react/components/alerts/alerts'
|
import { Alerts } from '@/features/ide-react/components/alerts/alerts'
|
||||||
import { useLayoutContext } from '@/shared/context/layout-context'
|
import { useLayoutContext } from '@/shared/context/layout-context'
|
||||||
import PlaceholderChat from '@/features/ide-react/components/layout/placeholder/placeholder-chat'
|
|
||||||
import PlaceholderHistory from '@/features/ide-react/components/layout/placeholder/placeholder-history'
|
import PlaceholderHistory from '@/features/ide-react/components/layout/placeholder/placeholder-history'
|
||||||
import MainLayout from '@/features/ide-react/components/layout/main-layout'
|
import MainLayout from '@/features/ide-react/components/layout/main-layout'
|
||||||
import { EditorAndSidebar } from '@/features/ide-react/components/editor-and-sidebar'
|
import { EditorAndSidebar } from '@/features/ide-react/components/editor-and-sidebar'
|
||||||
import EditorLeftMenu from '@/features/editor-left-menu/components/editor-left-menu'
|
import EditorLeftMenu from '@/features/editor-left-menu/components/editor-left-menu'
|
||||||
import EditorNavigationToolbar from '@/features/ide-react/components/editor-navigation-toolbar'
|
import EditorNavigationToolbar from '@/features/ide-react/components/editor-navigation-toolbar'
|
||||||
|
import ChatPane from '@/features/chat/components/chat-pane'
|
||||||
import { useLayoutEventTracking } from '@/features/ide-react/hooks/use-layout-event-tracking'
|
import { useLayoutEventTracking } from '@/features/ide-react/hooks/use-layout-event-tracking'
|
||||||
import useSocketListeners from '@/features/ide-react/hooks/use-socket-listeners'
|
import useSocketListeners from '@/features/ide-react/hooks/use-socket-listeners'
|
||||||
|
|
||||||
|
@ -57,7 +57,7 @@ export default function IdePage() {
|
||||||
<EditorLeftMenu />
|
<EditorLeftMenu />
|
||||||
<MainLayout
|
<MainLayout
|
||||||
headerContent={<EditorNavigationToolbar />}
|
headerContent={<EditorNavigationToolbar />}
|
||||||
chatContent={<PlaceholderChat />}
|
chatContent={<ChatPane />}
|
||||||
mainContent={mainContent}
|
mainContent={mainContent}
|
||||||
chatIsOpen={chatIsOpen}
|
chatIsOpen={chatIsOpen}
|
||||||
shouldPersistLayout
|
shouldPersistLayout
|
||||||
|
|
|
@ -10,7 +10,7 @@ export default function populateLayoutScope(store: ReactScopeValueStore) {
|
||||||
store.set('toggleHistory', () => {})
|
store.set('toggleHistory', () => {})
|
||||||
|
|
||||||
store.set('openFile', null)
|
store.set('openFile', null)
|
||||||
store.set('ui.chatOpen', false)
|
store.persisted('ui.chatOpen', false, 'ui.chatOpen')
|
||||||
store.persisted('ui.reviewPanelOpen', false, reviewPanelStorageKey)
|
store.persisted('ui.reviewPanelOpen', false, reviewPanelStorageKey)
|
||||||
store.set('ui.leftMenuShown', false)
|
store.set('ui.leftMenuShown', false)
|
||||||
store.set('ui.pdfLayout', 'sideBySide')
|
store.set('ui.pdfLayout', 'sideBySide')
|
||||||
|
|
|
@ -7,6 +7,11 @@
|
||||||
left: 0;
|
left: 0;
|
||||||
right: 0;
|
right: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.chat {
|
||||||
|
position: relative;
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.ide-react-main {
|
.ide-react-main {
|
||||||
|
|
Loading…
Reference in a new issue