mirror of
https://github.com/naturalcrit/homebrewery.git
synced 2026-09-24 05:12:57 +00:00
Revert "track changes to pages in brewrenderer"
This reverts commit dd863c9219.
This commit is contained in:
@@ -85,7 +85,6 @@ const BrewPage = (props)=>{
|
|||||||
|
|
||||||
//v=====--------------------< Brew Renderer Component >-------------------=====v//
|
//v=====--------------------< Brew Renderer Component >-------------------=====v//
|
||||||
let renderedPages = [];
|
let renderedPages = [];
|
||||||
let renderedPageTexts = [];
|
|
||||||
const pageTemplates = [];
|
const pageTemplates = [];
|
||||||
let rawPages = [];
|
let rawPages = [];
|
||||||
|
|
||||||
@@ -93,7 +92,6 @@ const BrewRenderer = (props)=>{
|
|||||||
props = {
|
props = {
|
||||||
text : '',
|
text : '',
|
||||||
style : '',
|
style : '',
|
||||||
version : 1,
|
|
||||||
renderer : 'legacy',
|
renderer : 'legacy',
|
||||||
lang : '',
|
lang : '',
|
||||||
errors : [],
|
errors : [],
|
||||||
@@ -232,15 +230,12 @@ const BrewRenderer = (props)=>{
|
|||||||
|
|
||||||
if(rawPages.length != renderedPages.length) { // Re-render all pages when page count changes
|
if(rawPages.length != renderedPages.length) { // Re-render all pages when page count changes
|
||||||
renderedPages.length = 0;
|
renderedPages.length = 0;
|
||||||
renderedPageTexts.length = 0;
|
|
||||||
pageTemplates.length = 0;
|
pageTemplates.length = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Render currently-edited page first so cross-page effects (variables, links) can propagate out first
|
// Render currently-edited page first so cross-page effects (variables, links) can propagate out first
|
||||||
if(rawPages.length > props.currentEditorCursorPageNum -1) {
|
if(rawPages.length > props.currentEditorCursorPageNum -1)
|
||||||
renderedPages[props.currentEditorCursorPageNum - 1] = renderPage(rawPages[props.currentEditorCursorPageNum - 1], props.currentEditorCursorPageNum - 1);
|
renderedPages[props.currentEditorCursorPageNum - 1] = renderPage(rawPages[props.currentEditorCursorPageNum - 1], props.currentEditorCursorPageNum - 1);
|
||||||
renderedPageTexts[props.currentEditorCursorPageNum - 1] = rawPages[props.currentEditorCursorPageNum - 1];
|
|
||||||
}
|
|
||||||
|
|
||||||
_.forEach(rawPages, (page, index)=>{
|
_.forEach(rawPages, (page, index)=>{
|
||||||
const varsOnPageRegex = /([!$]?)\[((?!\s*\])(?:\\.|[^\[\]\\])+)\]/g; // Find out if there are any vars on the page.
|
const varsOnPageRegex = /([!$]?)\[((?!\s*\])(?:\\.|[^\[\]\\])+)\]/g; // Find out if there are any vars on the page.
|
||||||
@@ -248,12 +243,8 @@ const BrewRenderer = (props)=>{
|
|||||||
!props.hoisted &&
|
!props.hoisted &&
|
||||||
(page.match(varsOnPageRegex)); // forceRender forces pages outside of the PPR range to render if true.
|
(page.match(varsOnPageRegex)); // forceRender forces pages outside of the PPR range to render if true.
|
||||||
// This is necessary on the first load to fully populate the variable table.
|
// This is necessary on the first load to fully populate the variable table.
|
||||||
|
if((isInView(index) || !renderedPages[index] || forceRender) && typeof window !== 'undefined'){
|
||||||
const pageTextChanged = renderedPageTexts[index] !== page;
|
renderedPages[index] = renderPage(page, index); // Render any page not yet rendered, but only re-render those in PPR range
|
||||||
|
|
||||||
if(((isInView(index) && pageTextChanged) || !renderedPages[index] || forceRender) && typeof window !== 'undefined') {
|
|
||||||
renderedPages[index] = renderPage(page, index); // Render any page not yet rendered, but only re-render changed pages in PPR range
|
|
||||||
renderedPageTexts[index] = page;
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
if(!props.hoisted) { props.hoisted = true; } // Only fully hoist once.
|
if(!props.hoisted) { props.hoisted = true; } // Only fully hoist once.
|
||||||
@@ -322,10 +313,7 @@ const BrewRenderer = (props)=>{
|
|||||||
};
|
};
|
||||||
|
|
||||||
const renderedStyle = useMemo(()=>renderStyle(), [props.style, props.themeBundle]);
|
const renderedStyle = useMemo(()=>renderStyle(), [props.style, props.themeBundle]);
|
||||||
renderedPages = useMemo(
|
renderedPages = useMemo(()=>renderPages(), [props.text, displayOptions]);
|
||||||
()=>renderPages(),
|
|
||||||
[props.version, props.currentBrewRendererPageNum, props.currentEditorCursorPageNum, displayOptions]
|
|
||||||
);
|
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<>
|
<>
|
||||||
|
|||||||
@@ -289,7 +289,6 @@ const EditPage = (props)=>{
|
|||||||
text={currentBrew.text}
|
text={currentBrew.text}
|
||||||
style={currentBrew.style}
|
style={currentBrew.style}
|
||||||
renderer={currentBrew.renderer}
|
renderer={currentBrew.renderer}
|
||||||
version={currentBrew.version}
|
|
||||||
themeBundle={themeBundle}
|
themeBundle={themeBundle}
|
||||||
errors={HTMLErrors}
|
errors={HTMLErrors}
|
||||||
lang={currentBrew.lang}
|
lang={currentBrew.lang}
|
||||||
|
|||||||
@@ -138,7 +138,6 @@ const HomePage =(props)=>{
|
|||||||
text={currentBrew.text}
|
text={currentBrew.text}
|
||||||
style={currentBrew.style}
|
style={currentBrew.style}
|
||||||
renderer={currentBrew.renderer}
|
renderer={currentBrew.renderer}
|
||||||
version={currentBrew.version}
|
|
||||||
themeBundle={themeBundle}
|
themeBundle={themeBundle}
|
||||||
onPageChange={setCurrentBrewRendererPageNum}
|
onPageChange={setCurrentBrewRendererPageNum}
|
||||||
currentEditorCursorPageNum={currentEditorCursorPageNum}
|
currentEditorCursorPageNum={currentEditorCursorPageNum}
|
||||||
|
|||||||
@@ -183,7 +183,6 @@ const NewPage = (props)=>{
|
|||||||
text={currentBrew.text}
|
text={currentBrew.text}
|
||||||
style={currentBrew.style}
|
style={currentBrew.style}
|
||||||
renderer={currentBrew.renderer}
|
renderer={currentBrew.renderer}
|
||||||
version={currentBrew.version}
|
|
||||||
themeBundle={themeBundle}
|
themeBundle={themeBundle}
|
||||||
errors={HTMLErrors}
|
errors={HTMLErrors}
|
||||||
lang={currentBrew.lang}
|
lang={currentBrew.lang}
|
||||||
|
|||||||
@@ -159,7 +159,6 @@ const SharePage = (props)=>{
|
|||||||
style={currentBrew.style}
|
style={currentBrew.style}
|
||||||
lang={currentBrew.lang}
|
lang={currentBrew.lang}
|
||||||
renderer={currentBrew.renderer}
|
renderer={currentBrew.renderer}
|
||||||
version={currentBrew.version}
|
|
||||||
theme={currentBrew.theme}
|
theme={currentBrew.theme}
|
||||||
themeBundle={themeBundle}
|
themeBundle={themeBundle}
|
||||||
onPageChange={handleBrewRendererPageChange}
|
onPageChange={handleBrewRendererPageChange}
|
||||||
|
|||||||
Reference in New Issue
Block a user