|
@@ -1,9 +1,11 @@
|
|
|
import React from 'react'
|
|
import React from 'react'
|
|
|
import PropTypes from 'prop-types'
|
|
import PropTypes from 'prop-types'
|
|
|
|
|
+import { useTranslation } from 'react-i18next'
|
|
|
import MenuButton from './menu-button'
|
|
import MenuButton from './menu-button'
|
|
|
import CobrandingLogo from './cobranding-logo'
|
|
import CobrandingLogo from './cobranding-logo'
|
|
|
import BackToProjectsButton from './back-to-projects-button'
|
|
import BackToProjectsButton from './back-to-projects-button'
|
|
|
import ChatToggleButton from './chat-toggle-button'
|
|
import ChatToggleButton from './chat-toggle-button'
|
|
|
|
|
+import LayoutDropdownButton from './layout-dropdown-button'
|
|
|
import OnlineUsersWidget from './online-users-widget'
|
|
import OnlineUsersWidget from './online-users-widget'
|
|
|
import ProjectNameEditableLabel from './project-name-editable-label'
|
|
import ProjectNameEditableLabel from './project-name-editable-label'
|
|
|
import TrackChangesToggleButton from './track-changes-toggle-button'
|
|
import TrackChangesToggleButton from './track-changes-toggle-button'
|
|
@@ -18,6 +20,7 @@ const PublishButton = publishModalModules?.import.default
|
|
|
const ToolbarHeader = React.memo(function ToolbarHeader({
|
|
const ToolbarHeader = React.memo(function ToolbarHeader({
|
|
|
cobranding,
|
|
cobranding,
|
|
|
onShowLeftMenuClick,
|
|
onShowLeftMenuClick,
|
|
|
|
|
+ handleChangeLayout,
|
|
|
chatIsOpen,
|
|
chatIsOpen,
|
|
|
toggleChatOpen,
|
|
toggleChatOpen,
|
|
|
reviewPanelOpen,
|
|
reviewPanelOpen,
|
|
@@ -33,17 +36,24 @@ const ToolbarHeader = React.memo(function ToolbarHeader({
|
|
|
renameProject,
|
|
renameProject,
|
|
|
hasRenamePermissions,
|
|
hasRenamePermissions,
|
|
|
openShareModal,
|
|
openShareModal,
|
|
|
|
|
+ pdfLayout,
|
|
|
pdfViewIsOpen,
|
|
pdfViewIsOpen,
|
|
|
pdfButtonIsVisible,
|
|
pdfButtonIsVisible,
|
|
|
togglePdfView,
|
|
togglePdfView,
|
|
|
trackChangesVisible,
|
|
trackChangesVisible,
|
|
|
|
|
+ view,
|
|
|
}) {
|
|
}) {
|
|
|
|
|
+ const { t } = useTranslation()
|
|
|
const shouldDisplayPublishButton = hasPublishPermissions && PublishButton
|
|
const shouldDisplayPublishButton = hasPublishPermissions && PublishButton
|
|
|
const shouldDisplayTrackChangesButton =
|
|
const shouldDisplayTrackChangesButton =
|
|
|
trackChangesVisible && !isRestrictedTokenMember
|
|
trackChangesVisible && !isRestrictedTokenMember
|
|
|
|
|
|
|
|
return (
|
|
return (
|
|
|
- <header className="toolbar toolbar-header toolbar-with-labels">
|
|
|
|
|
|
|
+ <header
|
|
|
|
|
+ className="toolbar toolbar-header toolbar-with-labels"
|
|
|
|
|
+ role="navigation"
|
|
|
|
|
+ aria-label={t('project_layout_sharing_submission')}
|
|
|
|
|
+ >
|
|
|
<div className="toolbar-left">
|
|
<div className="toolbar-left">
|
|
|
<MenuButton onClick={onShowLeftMenuClick} />
|
|
<MenuButton onClick={onShowLeftMenuClick} />
|
|
|
{cobranding && cobranding.logoImgUrl && (
|
|
{cobranding && cobranding.logoImgUrl && (
|
|
@@ -67,6 +77,14 @@ const ToolbarHeader = React.memo(function ToolbarHeader({
|
|
|
<div className="toolbar-right">
|
|
<div className="toolbar-right">
|
|
|
<OnlineUsersWidget onlineUsers={onlineUsers} goToUser={goToUser} />
|
|
<OnlineUsersWidget onlineUsers={onlineUsers} goToUser={goToUser} />
|
|
|
|
|
|
|
|
|
|
+ {window.showPdfDetach && (
|
|
|
|
|
+ <LayoutDropdownButton
|
|
|
|
|
+ handleChangeLayout={handleChangeLayout}
|
|
|
|
|
+ pdfLayout={pdfLayout}
|
|
|
|
|
+ view={view}
|
|
|
|
|
+ />
|
|
|
|
|
+ )}
|
|
|
|
|
+
|
|
|
{shouldDisplayTrackChangesButton && (
|
|
{shouldDisplayTrackChangesButton && (
|
|
|
<TrackChangesToggleButton
|
|
<TrackChangesToggleButton
|
|
|
onClick={toggleReviewPanelOpen}
|
|
onClick={toggleReviewPanelOpen}
|
|
@@ -98,6 +116,7 @@ const ToolbarHeader = React.memo(function ToolbarHeader({
|
|
|
|
|
|
|
|
ToolbarHeader.propTypes = {
|
|
ToolbarHeader.propTypes = {
|
|
|
onShowLeftMenuClick: PropTypes.func.isRequired,
|
|
onShowLeftMenuClick: PropTypes.func.isRequired,
|
|
|
|
|
+ handleChangeLayout: PropTypes.func.isRequired,
|
|
|
cobranding: PropTypes.object,
|
|
cobranding: PropTypes.object,
|
|
|
chatIsOpen: PropTypes.bool,
|
|
chatIsOpen: PropTypes.bool,
|
|
|
toggleChatOpen: PropTypes.func.isRequired,
|
|
toggleChatOpen: PropTypes.func.isRequired,
|
|
@@ -114,10 +133,12 @@ ToolbarHeader.propTypes = {
|
|
|
renameProject: PropTypes.func.isRequired,
|
|
renameProject: PropTypes.func.isRequired,
|
|
|
hasRenamePermissions: PropTypes.bool,
|
|
hasRenamePermissions: PropTypes.bool,
|
|
|
openShareModal: PropTypes.func.isRequired,
|
|
openShareModal: PropTypes.func.isRequired,
|
|
|
|
|
+ pdfLayout: PropTypes.string.isRequired,
|
|
|
pdfViewIsOpen: PropTypes.bool,
|
|
pdfViewIsOpen: PropTypes.bool,
|
|
|
pdfButtonIsVisible: PropTypes.bool,
|
|
pdfButtonIsVisible: PropTypes.bool,
|
|
|
togglePdfView: PropTypes.func.isRequired,
|
|
togglePdfView: PropTypes.func.isRequired,
|
|
|
trackChangesVisible: PropTypes.bool,
|
|
trackChangesVisible: PropTypes.bool,
|
|
|
|
|
+ view: PropTypes.string,
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
export default ToolbarHeader
|
|
export default ToolbarHeader
|