|
@@ -10,14 +10,12 @@ import PageRevisionList from './PageHistory/PageRevisionList';
|
|
|
import AppContainer from '../services/AppContainer';
|
|
import AppContainer from '../services/AppContainer';
|
|
|
import PageContainer from '../services/PageContainer';
|
|
import PageContainer from '../services/PageContainer';
|
|
|
|
|
|
|
|
-
|
|
|
|
|
const logger = loggerFactory('growi:PageHistory');
|
|
const logger = loggerFactory('growi:PageHistory');
|
|
|
|
|
|
|
|
// set dummy value tile for using suspense
|
|
// set dummy value tile for using suspense
|
|
|
-const dummyValue = 0;
|
|
|
|
|
|
|
+let isLoaded = false;
|
|
|
|
|
|
|
|
function AppSettingsPage(props) {
|
|
function AppSettingsPage(props) {
|
|
|
- console.log(props);
|
|
|
|
|
return (
|
|
return (
|
|
|
<Suspense
|
|
<Suspense
|
|
|
fallback={(
|
|
fallback={(
|
|
@@ -33,18 +31,18 @@ function AppSettingsPage(props) {
|
|
|
function PageHistory(props) {
|
|
function PageHistory(props) {
|
|
|
|
|
|
|
|
const [errorMessage, setErrorMessage] = useState(null);
|
|
const [errorMessage, setErrorMessage] = useState(null);
|
|
|
- const [revisions, setRevisions] = useState(dummyValue);
|
|
|
|
|
|
|
+ const [revisions, setRevisions] = useState();
|
|
|
const [diffOpened, setDiffOpened] = useState(null);
|
|
const [diffOpened, setDiffOpened] = useState(null);
|
|
|
|
|
|
|
|
function fetchPageRevisionBody(revision) {
|
|
function fetchPageRevisionBody(revision) {
|
|
|
- const { appContainer } = props;
|
|
|
|
|
- const shareLinkId = props.shareLinkId || null;
|
|
|
|
|
|
|
+ const { appContainer, pageContainer } = props;
|
|
|
|
|
+ const { pageId, shareLinkId } = pageContainer.state;
|
|
|
|
|
|
|
|
if (revision.body) {
|
|
if (revision.body) {
|
|
|
return;
|
|
return;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- appContainer.apiGet('/revisions.get', { page_id: props.pageId, revision_id: revision._id, share_link_id: shareLinkId })
|
|
|
|
|
|
|
+ appContainer.apiGet('/revisions.get', { page_id: pageId, revision_id: revision._id, share_link_id: shareLinkId })
|
|
|
.then((res) => {
|
|
.then((res) => {
|
|
|
if (res.ok) {
|
|
if (res.ok) {
|
|
|
this.setState({
|
|
this.setState({
|
|
@@ -92,7 +90,7 @@ function PageHistory(props) {
|
|
|
}
|
|
}
|
|
|
});
|
|
});
|
|
|
|
|
|
|
|
- setRevisions(['huga']);
|
|
|
|
|
|
|
+ setRevisions(rev);
|
|
|
setDiffOpened(diffOpened);
|
|
setDiffOpened(diffOpened);
|
|
|
|
|
|
|
|
// load 0, and last default
|
|
// load 0, and last default
|
|
@@ -135,11 +133,11 @@ function PageHistory(props) {
|
|
|
fetchPageRevisionBody(getPreviousRevision(revision));
|
|
fetchPageRevisionBody(getPreviousRevision(revision));
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
-
|
|
|
|
|
- if (dummyValue === revisions) {
|
|
|
|
|
|
|
+ if (isLoaded) {
|
|
|
throw new Promise(async() => {
|
|
throw new Promise(async() => {
|
|
|
try {
|
|
try {
|
|
|
await retrieveRevisions();
|
|
await retrieveRevisions();
|
|
|
|
|
+ isLoaded = true;
|
|
|
}
|
|
}
|
|
|
catch (err) {
|
|
catch (err) {
|
|
|
toastError(err);
|
|
toastError(err);
|
|
@@ -177,8 +175,6 @@ PageHistory.propTypes = {
|
|
|
|
|
|
|
|
t: PropTypes.func.isRequired, // i18next
|
|
t: PropTypes.func.isRequired, // i18next
|
|
|
|
|
|
|
|
- shareLinkId: PropTypes.string,
|
|
|
|
|
- pageId: PropTypes.string,
|
|
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
const PageHistoryWrapper2 = withTranslation()(PageHistoryWrapper);
|
|
const PageHistoryWrapper2 = withTranslation()(PageHistoryWrapper);
|