chore: removes frontend ui logic, unnecessary when overwriting document on unpublish

This commit is contained in:
Jarrod Flesch
2022-11-29 15:19:50 -05:00
parent e6f1c6fc7b
commit afe2ed2ebc
3 changed files with 8 additions and 19 deletions

View File

@@ -1,4 +1,4 @@
import React, { useCallback, useEffect, useState } from 'react';
import React, { useCallback, useState } from 'react';
import { toast } from 'react-toastify';
import { Modal, useModal } from '@faceless-ui/modal';
import { useTranslation } from 'react-i18next';
@@ -31,8 +31,7 @@ const Status: React.FC<Props> = () => {
routes: { api },
} = useConfig();
const [processing, setProcessing] = useState(false);
const [canRestore, setCanRestore] = useState(false);
const { reset: resetForm, validateForm } = useForm();
const { reset: resetForm } = useForm();
const locale = useLocale();
const { t, i18n } = useTranslation('version');
@@ -115,22 +114,13 @@ const Status: React.FC<Props> = () => {
}
}, [collection, global, publishedDoc, serverURL, api, id, i18n, locale, resetForm, getVersions, t, toggleModal, revertModalSlug, unPublishModalSlug]);
useEffect(() => {
async function checkWasValid() {
const wasValid = await validateForm(publishedDoc);
setCanRestore(wasValid);
}
checkWasValid();
}, [publishedDoc, validateForm]);
if (statusToRender) {
return (
<div className={baseClass}>
<div className={`${baseClass}__value-wrap`}>
<span className={`${baseClass}__value`}>{statusToRender}</span>
{statusToRender === 'Published' && (
<React.Fragment>
<span className={`${baseClass}__value`}>{statusToRender}</span>
&nbsp;&mdash;&nbsp;
<Button
onClick={() => toggleModal(unPublishModalSlug)}
@@ -162,9 +152,8 @@ const Status: React.FC<Props> = () => {
</Modal>
</React.Fragment>
)}
{canRestore && statusToRender === 'Changed' && (
{statusToRender === 'Changed' && (
<React.Fragment>
<span className={`${baseClass}__value`}>{statusToRender}</span>
&nbsp;&mdash;&nbsp;
<Button
onClick={() => toggleModal(revertModalSlug)}

View File

@@ -71,10 +71,10 @@ const Form: React.FC<Props> = (props) => {
contextRef.current.fields = fields;
contextRef.current.dispatchFields = dispatchFields;
const validateForm = useCallback(async (fieldsToValidate: any) => {
const validateForm = useCallback(async () => {
const validatedFieldState = {};
let isValid = true;
const data = fieldsToValidate || contextRef.current.getData();
const data = contextRef.current.getData();
const validationPromises = Object.entries(contextRef.current.fields).map(async ([path, field]) => {
const validatedField = {
@@ -108,7 +108,7 @@ const Form: React.FC<Props> = (props) => {
await Promise.all(validationPromises);
if (!fieldsToValidate && !isDeepEqual(contextRef.current.fields, validatedFieldState)) {
if (!isDeepEqual(contextRef.current.fields, validatedFieldState)) {
dispatchFields({ type: 'REPLACE_STATE', state: validatedFieldState });
}

View File

@@ -51,7 +51,7 @@ export type SubmitOptions = {
export type DispatchFields = React.Dispatch<any>
export type Submit = (options?: SubmitOptions, e?: React.FormEvent<HTMLFormElement>) => Promise<void>;
export type ValidateForm = (fieldsToValidate?: any) => Promise<boolean>;
export type ValidateForm = () => Promise<boolean>;
export type CreateFormData = (overrides?: any) => FormData;
export type GetFields = () => Fields;
export type GetField = (path: string) => Field;