43 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			43 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
'use client'
 | 
						|
 | 
						|
import { useNavigation } from '../../context/Navigation/provider'
 | 
						|
import { workspaces } from '../../context/Navigation/types'
 | 
						|
import { useProject } from '../../context/Project/provider'
 | 
						|
import DocumentCanvas from '../DocumentCanvas'
 | 
						|
import { StageProvider } from '../DocumentCanvas/context/provider'
 | 
						|
import NoSelectedDocument from './NoSelectedDocument'
 | 
						|
import TextEditor from './TextEditor'
 | 
						|
 | 
						|
const MainWorkspace = () => {
 | 
						|
  const { getSelectedDocument, selectedDocumentId } = useProject()
 | 
						|
  const { selectedWorkspace } = useNavigation()
 | 
						|
 | 
						|
  const renderSelectedWorkSpace = () => {
 | 
						|
    if (selectedWorkspace === workspaces.TEXTEDITOR) return <TextEditor />
 | 
						|
    else return !selectedDocumentId
 | 
						|
      ? <NoSelectedDocument />
 | 
						|
      : <StageProvider>
 | 
						|
        <DocumentCanvas />
 | 
						|
      </StageProvider>
 | 
						|
  }
 | 
						|
 | 
						|
  return <main className=" bg-gray-100 min-h-[calc(100vh-118px)] ml-64 overflow-y-scroll">
 | 
						|
    <div className='flex-1'>
 | 
						|
      <div className="py-1">
 | 
						|
        <div className="mx-auto  px-4 sm:px-6 md:px-8">
 | 
						|
          <div className="py-1">
 | 
						|
            <div className="mx-auto px-4 sm:px-6 md:px-8">
 | 
						|
              {!getSelectedDocument()?.id ? <h1 className="text-2xl mt-2 font-semibold text-gray-900">
 | 
						|
                Image Processor
 | 
						|
              </h1> : ''}
 | 
						|
            </div>
 | 
						|
            {renderSelectedWorkSpace()}
 | 
						|
          </div>
 | 
						|
        </div>
 | 
						|
      </div>
 | 
						|
    </div>
 | 
						|
  </main>
 | 
						|
}
 | 
						|
 | 
						|
export default MainWorkspace
 |