mirror of
https://github.com/naturalcrit/homebrewery.git
synced 2026-01-18 05:42:48 +00:00
Convert renderNavBar and render
This commit is contained in:
@@ -42,7 +42,7 @@ const EditPage = (props) => {
|
|||||||
brew: DEFAULT_BREW_LOAD,
|
brew: DEFAULT_BREW_LOAD,
|
||||||
...props
|
...props
|
||||||
};
|
};
|
||||||
const editor = useRef(null);
|
const editorRef = useRef(null);
|
||||||
const savedBrew = useRef(_.cloneDeep(props.brew));
|
const savedBrew = useRef(_.cloneDeep(props.brew));
|
||||||
const warningTimer = useRef(null);
|
const warningTimer = useRef(null);
|
||||||
|
|
||||||
@@ -107,7 +107,7 @@ const EditPage = (props) => {
|
|||||||
};
|
};
|
||||||
|
|
||||||
const handleSplitMove = () => {
|
const handleSplitMove = () => {
|
||||||
editor.current?.update();
|
editorRef.current?.update();
|
||||||
};
|
};
|
||||||
|
|
||||||
const handleEditorViewPageChange = (pageNumber) => {
|
const handleEditorViewPageChange = (pageNumber) => {
|
||||||
@@ -371,24 +371,23 @@ const EditPage = (props) => {
|
|||||||
setIsSaving(false);
|
setIsSaving(false);
|
||||||
};
|
};
|
||||||
|
|
||||||
renderNavbar : function(){
|
const renderNavbar = ()=>{
|
||||||
const shareLink = this.processShareId();
|
const shareLink = processShareId();
|
||||||
|
|
||||||
return <Navbar>
|
return <Navbar>
|
||||||
<Nav.section>
|
<Nav.section>
|
||||||
<Nav.item className='brewTitle'>{this.state.brew.title}</Nav.item>
|
<Nav.item className='brewTitle'>{currentBrew.title}</Nav.item>
|
||||||
</Nav.section>
|
</Nav.section>
|
||||||
|
|
||||||
<Nav.section>
|
<Nav.section>
|
||||||
{this.renderGoogleDriveIcon()}
|
{renderGoogleDriveIcon()}
|
||||||
{this.state.error ?
|
{error
|
||||||
<ErrorNavItem error={this.state.error} clearError={this.clearError}></ErrorNavItem> :
|
? <ErrorNavItem error={error} clearError={clearError} />
|
||||||
<Nav.dropdown className='save-menu'>
|
: <Nav.dropdown className='save-menu'>
|
||||||
{this.renderSaveButton()}
|
{renderSaveButton()}
|
||||||
{this.renderAutoSaveButton()}
|
{renderAutoSaveButton()}
|
||||||
</Nav.dropdown>
|
</Nav.dropdown>}
|
||||||
}
|
<NewBrewItem/>
|
||||||
<NewBrew />
|
|
||||||
<HelpNavItem/>
|
<HelpNavItem/>
|
||||||
<Nav.dropdown>
|
<Nav.dropdown>
|
||||||
<Nav.item color='teal' icon='fas fa-share-alt'>
|
<Nav.item color='teal' icon='fas fa-share-alt'>
|
||||||
@@ -400,63 +399,64 @@ const EditPage = (props) => {
|
|||||||
<Nav.item color='blue' onClick={()=>{navigator.clipboard.writeText(`${global.config.baseUrl}/share/${shareLink}`);}}>
|
<Nav.item color='blue' onClick={()=>{navigator.clipboard.writeText(`${global.config.baseUrl}/share/${shareLink}`);}}>
|
||||||
copy url
|
copy url
|
||||||
</Nav.item>
|
</Nav.item>
|
||||||
<Nav.item color='blue' href={this.getRedditLink()} newTab={true} rel='noopener noreferrer'>
|
<Nav.item color='blue' href={getRedditLink()} newTab={true} rel='noopener noreferrer'>
|
||||||
post to reddit
|
post to reddit
|
||||||
</Nav.item>
|
</Nav.item>
|
||||||
</Nav.dropdown>
|
</Nav.dropdown>
|
||||||
<PrintNavItem />
|
<PrintNavItem />
|
||||||
<VaultNavItem />
|
<VaultNavItem />
|
||||||
<RecentNavItem brew={this.state.brew} storageKey='edit' />
|
<RecentNavItem brew={currentBrew} storageKey='edit' />
|
||||||
<Account />
|
<AccountNavItem/>
|
||||||
</Nav.section>
|
</Nav.section>
|
||||||
|
|
||||||
</Navbar>;
|
</Navbar>;
|
||||||
},
|
};
|
||||||
|
|
||||||
render : function(){
|
return (
|
||||||
return <div className='editPage sitePage'>
|
<div className='editPage sitePage'>
|
||||||
<Meta name='robots' content='noindex, nofollow' />
|
<Meta name='robots' content='noindex, nofollow' />
|
||||||
{this.renderNavbar()}
|
|
||||||
|
|
||||||
{this.props.brew.lock && <LockNotification shareId={this.props.brew.shareId} message={this.props.brew.lock.editMessage} reviewRequested={this.props.brew.lock.reviewRequested} />}
|
{renderNavbar()}
|
||||||
|
|
||||||
|
{currentBrew.lock && <LockNotification shareId={currentBrew.shareId} message={currentBrew.lock.editMessage} reviewRequested={currentBrew.lock.reviewRequested}/>}
|
||||||
|
|
||||||
<div className='content'>
|
<div className='content'>
|
||||||
<SplitPane onDragFinish={this.handleSplitMove}>
|
<SplitPane onDragFinish={handleSplitMove}>
|
||||||
<Editor
|
<Editor
|
||||||
ref={this.editor}
|
ref={editorRef}
|
||||||
brew={this.state.brew}
|
brew={currentBrew}
|
||||||
onTextChange={this.handleTextChange}
|
onTextChange={handleTextChange}
|
||||||
onStyleChange={this.handleStyleChange}
|
onStyleChange={handleStyleChange}
|
||||||
onSnipChange={this.handleSnipChange}
|
onSnipChange={handleSnipChange}
|
||||||
onMetaChange={this.handleMetaChange}
|
onMetaChange={handleMetaChange}
|
||||||
reportError={setError}
|
reportError={setError}
|
||||||
renderer={this.state.brew.renderer}
|
renderer={currentBrew.renderer}
|
||||||
userThemes={this.props.userThemes}
|
userThemes={props.userThemes}
|
||||||
themeBundle={this.state.themeBundle}
|
themeBundle={themeBundle}
|
||||||
updateBrew={this.updateBrew}
|
updateBrew={updateBrew}
|
||||||
onCursorPageChange={this.handleEditorCursorPageChange}
|
onCursorPageChange={handleEditorCursorPageChange}
|
||||||
onViewPageChange={this.handleEditorViewPageChange}
|
onViewPageChange={handleEditorViewPageChange}
|
||||||
currentEditorViewPageNum={this.state.currentEditorViewPageNum}
|
currentEditorViewPageNum={currentEditorViewPageNum}
|
||||||
currentEditorCursorPageNum={this.state.currentEditorCursorPageNum}
|
currentEditorCursorPageNum={currentEditorCursorPageNum}
|
||||||
currentBrewRendererPageNum={this.state.currentBrewRendererPageNum}
|
currentBrewRendererPageNum={currentBrewRendererPageNum}
|
||||||
/>
|
/>
|
||||||
<BrewRenderer
|
<BrewRenderer
|
||||||
text={this.state.brew.text}
|
text={currentBrew.text}
|
||||||
style={this.state.brew.style}
|
style={currentBrew.style}
|
||||||
renderer={this.state.brew.renderer}
|
renderer={currentBrew.renderer}
|
||||||
theme={this.state.brew.theme}
|
theme={currentBrew.theme}
|
||||||
themeBundle={this.state.themeBundle}
|
themeBundle={themeBundle}
|
||||||
errors={this.state.htmlErrors}
|
errors={HTMLErrors}
|
||||||
lang={this.state.brew.lang}
|
lang={currentBrew.lang}
|
||||||
onPageChange={this.handleBrewRendererPageChange}
|
onPageChange={handleBrewRendererPageChange}
|
||||||
currentEditorViewPageNum={this.state.currentEditorViewPageNum}
|
currentEditorViewPageNum={currentEditorViewPageNum}
|
||||||
currentEditorCursorPageNum={this.state.currentEditorCursorPageNum}
|
currentEditorCursorPageNum={currentEditorCursorPageNum}
|
||||||
currentBrewRendererPageNum={this.state.currentBrewRendererPageNum}
|
currentBrewRendererPageNum={currentBrewRendererPageNum}
|
||||||
allowPrint={true}
|
allowPrint={true}
|
||||||
/>
|
/>
|
||||||
</SplitPane>
|
</SplitPane>
|
||||||
</div>
|
</div>
|
||||||
</div>;
|
</div>
|
||||||
}
|
);
|
||||||
});
|
};
|
||||||
|
|
||||||
module.exports = EditPage;
|
module.exports = EditPage;
|
||||||
|
|||||||
Reference in New Issue
Block a user