|
@@ -2,12 +2,18 @@ import React, { useEffect } from 'react';
|
|
|
import PropTypes from 'prop-types';
|
|
import PropTypes from 'prop-types';
|
|
|
|
|
|
|
|
import { EditorMode, useEditorMode } from '~/stores/ui';
|
|
import { EditorMode, useEditorMode } from '~/stores/ui';
|
|
|
|
|
+import { useIsEditable } from '~/stores/context';
|
|
|
|
|
|
|
|
const EditPage = (props) => {
|
|
const EditPage = (props) => {
|
|
|
|
|
+ const { data: isEditable } = useIsEditable();
|
|
|
const { mutate: mutateEditorMode } = useEditorMode();
|
|
const { mutate: mutateEditorMode } = useEditorMode();
|
|
|
|
|
|
|
|
// setup effect
|
|
// setup effect
|
|
|
useEffect(() => {
|
|
useEffect(() => {
|
|
|
|
|
+ if (!isEditable) {
|
|
|
|
|
+ return;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
// ignore when dom that has 'modal in' classes exists
|
|
// ignore when dom that has 'modal in' classes exists
|
|
|
if (document.getElementsByClassName('modal in').length > 0) {
|
|
if (document.getElementsByClassName('modal in').length > 0) {
|
|
|
return;
|
|
return;
|
|
@@ -17,9 +23,9 @@ const EditPage = (props) => {
|
|
|
|
|
|
|
|
// remove this
|
|
// remove this
|
|
|
props.onDeleteRender(this);
|
|
props.onDeleteRender(this);
|
|
|
- }, [mutateEditorMode, props]);
|
|
|
|
|
|
|
+ }, [isEditable, mutateEditorMode, props]);
|
|
|
|
|
|
|
|
- return <></>;
|
|
|
|
|
|
|
+ return null;
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
EditPage.propTypes = {
|
|
EditPage.propTypes = {
|