diff --git a/demo/collections/AllFields.ts b/demo/collections/AllFields.ts index c704cf266f..e043cec164 100644 --- a/demo/collections/AllFields.ts +++ b/demo/collections/AllFields.ts @@ -28,7 +28,7 @@ const AllFields: CollectionConfig = { }, description: CollectionDescription, }, - revisions: { + versions: { maxPerDoc: 20, retainDeleted: true, drafts: false, diff --git a/demo/collections/Localized.ts b/demo/collections/Localized.ts index a220b61f33..bc40b53579 100644 --- a/demo/collections/Localized.ts +++ b/demo/collections/Localized.ts @@ -43,7 +43,7 @@ const LocalizedPosts: CollectionConfig = { ], enableRichTextRelationship: true, }, - revisions: { + versions: { maxPerDoc: 5, retainDeleted: false, drafts: { diff --git a/src/admin/components/Routes.tsx b/src/admin/components/Routes.tsx index 9c5baf33eb..847ff2abcc 100644 --- a/src/admin/components/Routes.tsx +++ b/src/admin/components/Routes.tsx @@ -9,8 +9,8 @@ import { requests } from '../api'; import Loading from './elements/Loading'; import StayLoggedIn from './modals/StayLoggedIn'; import Unlicensed from './views/Unlicensed'; -import Revisions from './views/Revisions'; -import Revision from './views/Revision'; +import Versions from './views/Versions'; +import Version from './views/Version'; const Dashboard = lazy(() => import('./views/Dashboard')); const ForgotPassword = lazy(() => import('./views/ForgotPassword')); @@ -204,16 +204,16 @@ const Routes = () => { />, ]; - if (collection.revisions) { + if (collection.versions) { routesToReturn.push( { - if (permissions?.collections?.[collection.slug]?.readRevisions?.permission) { + if (permissions?.collections?.[collection.slug]?.readVersions?.permission) { return ( - @@ -227,13 +227,13 @@ const Routes = () => { routesToReturn.push( { - if (permissions?.collections?.[collection.slug]?.readRevisions?.permission) { + if (permissions?.collections?.[collection.slug]?.readVersions?.permission) { return ( - @@ -271,16 +271,16 @@ const Routes = () => { />, ]; - if (global.revisions) { + if (global.versions) { routesToReturn.push( { - if (permissions?.globals?.[global.slug]?.readRevisions?.permission) { + if (permissions?.globals?.[global.slug]?.readVersions?.permission) { return ( - @@ -293,13 +293,13 @@ const Routes = () => { ); routesToReturn.push( { - if (permissions?.globals?.[global.slug]?.readRevisions?.permission) { + if (permissions?.globals?.[global.slug]?.readVersions?.permission) { return ( - diff --git a/src/admin/components/elements/RevisionsCount/index.scss b/src/admin/components/elements/VersionsCount/index.scss similarity index 80% rename from src/admin/components/elements/RevisionsCount/index.scss rename to src/admin/components/elements/VersionsCount/index.scss index a5b04b4772..641148f574 100644 --- a/src/admin/components/elements/RevisionsCount/index.scss +++ b/src/admin/components/elements/VersionsCount/index.scss @@ -1,6 +1,6 @@ @import '../../../scss/styles.scss'; -.revisions-count__button { +.versions-count__button { font-weight: 600; &:hover { diff --git a/src/admin/components/elements/RevisionsCount/index.tsx b/src/admin/components/elements/VersionsCount/index.tsx similarity index 74% rename from src/admin/components/elements/RevisionsCount/index.tsx rename to src/admin/components/elements/VersionsCount/index.tsx index ee0839aec1..96d49544da 100644 --- a/src/admin/components/elements/RevisionsCount/index.tsx +++ b/src/admin/components/elements/VersionsCount/index.tsx @@ -6,14 +6,14 @@ import { Props } from './types'; import './index.scss'; -const baseClass = 'revisions-count'; +const baseClass = 'versions-count'; -const Revisions: React.FC = ({ collection, global, id, submissionCount }) => { +const Versions: React.FC = ({ collection, global, id, submissionCount }) => { const { serverURL, routes: { admin, api } } = useConfig(); let initialParams; let fetchURL: string; - let revisionsURL: string; + let versionsURL: string; if (collection) { initialParams = { @@ -24,13 +24,13 @@ const Revisions: React.FC = ({ collection, global, id, submissionCount }) }, }; - fetchURL = `${serverURL}${api}/${collection.slug}/revisions`; - revisionsURL = `${admin}/collections/${collection.slug}/${id}/revisions`; + fetchURL = `${serverURL}${api}/${collection.slug}/versions`; + versionsURL = `${admin}/collections/${collection.slug}/${id}/versions`; } if (global) { - fetchURL = `${serverURL}${api}/globals/${global.slug}/revisions`; - revisionsURL = `${admin}/globals/${global.slug}/revisions`; + fetchURL = `${serverURL}${api}/globals/${global.slug}/versions`; + versionsURL = `${admin}/globals/${global.slug}/versions`; } const [{ data, isLoading }, { setParams }] = usePayloadAPI(fetchURL, { @@ -58,7 +58,7 @@ const Revisions: React.FC = ({ collection, global, id, submissionCount }) {data.docs.length === 0 && ( - No revisions found + No versions found )} {data?.docs?.length > 0 && ( @@ -67,11 +67,11 @@ const Revisions: React.FC = ({ collection, global, id, submissionCount }) className={`${baseClass}__button`} buttonStyle="none" el="link" - to={revisionsURL} + to={versionsURL} > {data.totalDocs} {' '} - revision + version {data.totalDocs > 1 && 's'} {' '} found @@ -82,10 +82,10 @@ const Revisions: React.FC = ({ collection, global, id, submissionCount }) )} {isLoading && ( - Loading revisions... + Loading versions... )} ); }; -export default Revisions; +export default Versions; diff --git a/src/admin/components/elements/RevisionsCount/types.ts b/src/admin/components/elements/VersionsCount/types.ts similarity index 100% rename from src/admin/components/elements/RevisionsCount/types.ts rename to src/admin/components/elements/VersionsCount/types.ts diff --git a/src/admin/components/views/Global/Default.tsx b/src/admin/components/views/Global/Default.tsx index b42fb558a2..361959af21 100644 --- a/src/admin/components/views/Global/Default.tsx +++ b/src/admin/components/views/Global/Default.tsx @@ -10,7 +10,7 @@ import CopyToClipboard from '../../elements/CopyToClipboard'; import Meta from '../../utilities/Meta'; import fieldTypes from '../../forms/field-types'; import LeaveWithoutSaving from '../../modals/LeaveWithoutSaving'; -import RevisionsCount from '../../elements/RevisionsCount'; +import VersionsCount from '../../elements/VersionsCount'; import { Props } from './types'; import './index.scss'; @@ -27,7 +27,7 @@ const DefaultGlobalView: React.FC = (props) => { const { fields, preview, - revisions, + versions, label, admin: { description, @@ -101,10 +101,10 @@ const DefaultGlobalView: React.FC = (props) => { {data && (
    - {revisions && ( + {versions && (
  • -
    Revisions
    - Versions + diff --git a/src/admin/components/views/Revision/Compare/index.scss b/src/admin/components/views/Version/Compare/index.scss similarity index 92% rename from src/admin/components/views/Revision/Compare/index.scss rename to src/admin/components/views/Version/Compare/index.scss index 259e890e17..385c383fcc 100644 --- a/src/admin/components/views/Revision/Compare/index.scss +++ b/src/admin/components/views/Version/Compare/index.scss @@ -1,6 +1,6 @@ @import '../../../../scss/styles.scss'; -.compare-revision { +.compare-version { &__error-loading { border: 1px solid $color-red; min-height: base(2); diff --git a/src/admin/components/views/Revision/Compare/index.tsx b/src/admin/components/views/Version/Compare/index.tsx similarity index 92% rename from src/admin/components/views/Revision/Compare/index.tsx rename to src/admin/components/views/Version/Compare/index.tsx index 70d15b933d..2fef4ba8bc 100644 --- a/src/admin/components/views/Revision/Compare/index.tsx +++ b/src/admin/components/views/Version/Compare/index.tsx @@ -9,7 +9,7 @@ import { publishedVersionOption } from '../shared'; import './index.scss'; -const baseClass = 'compare-revision'; +const baseClass = 'compare-version'; const maxResultsPerRequest = 10; @@ -17,7 +17,7 @@ const baseOptions = [ publishedVersionOption, ]; -const CompareRevision: React.FC = (props) => { +const CompareVersion: React.FC = (props) => { const { onChange, value, baseURL, parentID } = props; const { @@ -81,12 +81,12 @@ const CompareRevision: React.FC = (props) => { return (
    - Compare revision against: + Compare version against:
    {!errorLoading && ( { getResults({ lastLoadedPage: lastLoadedPage + 1 }); @@ -104,4 +104,4 @@ const CompareRevision: React.FC = (props) => { ); }; -export default CompareRevision; +export default CompareVersion; diff --git a/src/admin/components/views/Revision/Compare/types.ts b/src/admin/components/views/Version/Compare/types.ts similarity index 100% rename from src/admin/components/views/Revision/Compare/types.ts rename to src/admin/components/views/Version/Compare/types.ts diff --git a/src/admin/components/views/Revision/RenderFieldsToDiff/Label/index.scss b/src/admin/components/views/Version/RenderFieldsToDiff/Label/index.scss similarity index 100% rename from src/admin/components/views/Revision/RenderFieldsToDiff/Label/index.scss rename to src/admin/components/views/Version/RenderFieldsToDiff/Label/index.scss diff --git a/src/admin/components/views/Revision/RenderFieldsToDiff/Label/index.tsx b/src/admin/components/views/Version/RenderFieldsToDiff/Label/index.tsx similarity index 100% rename from src/admin/components/views/Revision/RenderFieldsToDiff/Label/index.tsx rename to src/admin/components/views/Version/RenderFieldsToDiff/Label/index.tsx diff --git a/src/admin/components/views/Revision/RenderFieldsToDiff/fields/Iterable/index.scss b/src/admin/components/views/Version/RenderFieldsToDiff/fields/Iterable/index.scss similarity index 100% rename from src/admin/components/views/Revision/RenderFieldsToDiff/fields/Iterable/index.scss rename to src/admin/components/views/Version/RenderFieldsToDiff/fields/Iterable/index.scss diff --git a/src/admin/components/views/Revision/RenderFieldsToDiff/fields/Iterable/index.tsx b/src/admin/components/views/Version/RenderFieldsToDiff/fields/Iterable/index.tsx similarity index 82% rename from src/admin/components/views/Revision/RenderFieldsToDiff/fields/Iterable/index.tsx rename to src/admin/components/views/Version/RenderFieldsToDiff/fields/Iterable/index.tsx index 830d9e3099..116167d82c 100644 --- a/src/admin/components/views/Revision/RenderFieldsToDiff/fields/Iterable/index.tsx +++ b/src/admin/components/views/Version/RenderFieldsToDiff/fields/Iterable/index.tsx @@ -10,7 +10,7 @@ import './index.scss'; const baseClass = 'iterable-diff'; const Iterable: React.FC = ({ - revision, + version, comparison, permissions, field, @@ -18,9 +18,9 @@ const Iterable: React.FC = ({ locales, fieldComponents, }) => { - const revisionRowCount = Array.isArray(revision) ? revision.length : 0; + const versionRowCount = Array.isArray(version) ? version.length : 0; const comparisonRowCount = Array.isArray(comparison) ? comparison.length : 0; - const maxRows = Math.max(revisionRowCount, comparisonRowCount); + const maxRows = Math.max(versionRowCount, comparisonRowCount); return (
    @@ -35,7 +35,7 @@ const Iterable: React.FC = ({ {maxRows > 0 && ( {Array.from(Array(maxRows).keys()).map((row, i) => { - const revisionRow = revision?.[i] || {}; + const versionRow = version?.[i] || {}; const comparisonRow = comparison?.[i] || {}; let subFields: Field[] = []; @@ -51,19 +51,19 @@ const Iterable: React.FC = ({ }, ]; - if (revisionRow?.blockType === comparisonRow?.blockType) { - const matchedBlock = field.blocks.find((block) => block.slug === revisionRow?.blockType) || { fields: [] }; + if (versionRow?.blockType === comparisonRow?.blockType) { + const matchedBlock = field.blocks.find((block) => block.slug === versionRow?.blockType) || { fields: [] }; subFields = [ ...subFields, ...matchedBlock.fields, ]; } else { - const matchedRevisionBlock = field.blocks.find((block) => block.slug === revisionRow?.blockType) || { fields: [] }; + const matchedVersionBlock = field.blocks.find((block) => block.slug === versionRow?.blockType) || { fields: [] }; const matchedComparisonBlock = field.blocks.find((block) => block.slug === comparisonRow?.blockType) || { fields: [] }; subFields = getUniqueListBy([ ...subFields, - ...matchedRevisionBlock.fields, + ...matchedVersionBlock.fields, ...matchedComparisonBlock.fields, ], 'name'); } @@ -76,7 +76,7 @@ const Iterable: React.FC = ({ > !(fieldAffectsData(subField) && subField.name === 'id'))} diff --git a/src/admin/components/views/Revision/RenderFieldsToDiff/fields/Nested/index.scss b/src/admin/components/views/Version/RenderFieldsToDiff/fields/Nested/index.scss similarity index 100% rename from src/admin/components/views/Revision/RenderFieldsToDiff/fields/Nested/index.scss rename to src/admin/components/views/Version/RenderFieldsToDiff/fields/Nested/index.scss diff --git a/src/admin/components/views/Revision/RenderFieldsToDiff/fields/Nested/index.tsx b/src/admin/components/views/Version/RenderFieldsToDiff/fields/Nested/index.tsx similarity index 96% rename from src/admin/components/views/Revision/RenderFieldsToDiff/fields/Nested/index.tsx rename to src/admin/components/views/Version/RenderFieldsToDiff/fields/Nested/index.tsx index 6fe783cf42..a8e3b567d9 100644 --- a/src/admin/components/views/Revision/RenderFieldsToDiff/fields/Nested/index.tsx +++ b/src/admin/components/views/Version/RenderFieldsToDiff/fields/Nested/index.tsx @@ -9,7 +9,7 @@ import './index.scss'; const baseClass = 'nested-diff'; const Nested: React.FC = ({ - revision, + version, comparison, permissions, field, @@ -34,7 +34,7 @@ const Nested: React.FC = ({ > = ({ field, revision, comparison }) => { +const Relationship: React.FC = ({ field, version, comparison }) => { const { collections } = useConfig(); const locale = useLocale(); let placeholder = ''; - if (revision === comparison) placeholder = '[no value]'; + if (version === comparison) placeholder = '[no value]'; - let revisionToRender = revision; + let versionToRender = version; let comparisonToRender = comparison; if (field.hasMany) { - if (Array.isArray(revision)) revisionToRender = revision.map((val) => generateLabelFromValue(collections, field, locale, val)).join(', '); + if (Array.isArray(version)) versionToRender = version.map((val) => generateLabelFromValue(collections, field, locale, val)).join(', '); if (Array.isArray(comparison)) comparisonToRender = comparison.map((val) => generateLabelFromValue(collections, field, locale, val)).join(', '); } else { - revisionToRender = generateLabelFromValue(collections, field, locale, revision); + versionToRender = generateLabelFromValue(collections, field, locale, version); comparisonToRender = generateLabelFromValue(collections, field, locale, comparison); } @@ -85,7 +85,7 @@ const Relationship: React.FC = ({ field, re {field.label} = ({ field, locale, revision, comparison, isRichText = false }) => { +const Text: React.FC = ({ field, locale, version, comparison, isRichText = false }) => { let placeholder = ''; - if (revision === comparison) placeholder = '[no value]'; + if (version === comparison) placeholder = '[no value]'; - let revisionToRender = revision; + let versionToRender = version; let comparisonToRender = comparison; if (isRichText) { - if (typeof revision === 'object') revisionToRender = JSON.stringify(revision, null, 2); + if (typeof version === 'object') versionToRender = JSON.stringify(version, null, 2); if (typeof comparison === 'object') comparisonToRender = JSON.stringify(comparison, null, 2); } @@ -30,7 +30,7 @@ const Text: React.FC = ({ field, locale, revision, comparison, isRichText {field.label} > export type Props = { fieldComponents: FieldComponents - revision: any + version: any comparison: any field: any permissions?: Record diff --git a/src/admin/components/views/Revision/RenderFieldsToDiff/index.scss b/src/admin/components/views/Version/RenderFieldsToDiff/index.scss similarity index 100% rename from src/admin/components/views/Revision/RenderFieldsToDiff/index.scss rename to src/admin/components/views/Version/RenderFieldsToDiff/index.scss diff --git a/src/admin/components/views/Revision/RenderFieldsToDiff/index.tsx b/src/admin/components/views/Version/RenderFieldsToDiff/index.tsx similarity index 91% rename from src/admin/components/views/Revision/RenderFieldsToDiff/index.tsx rename to src/admin/components/views/Version/RenderFieldsToDiff/index.tsx index b3cb448826..571f9b13bd 100644 --- a/src/admin/components/views/Revision/RenderFieldsToDiff/index.tsx +++ b/src/admin/components/views/Version/RenderFieldsToDiff/index.tsx @@ -11,7 +11,7 @@ const RenderFieldsToDiff: React.FC = ({ fields, fieldComponents, fieldPermissions, - revision, + version, comparison, locales, }) => ( @@ -23,7 +23,7 @@ const RenderFieldsToDiff: React.FC = ({ if (Component) { if (fieldAffectsData(field)) { - const revisionValue = revision[field.name]; + const versionValue = version?.[field.name]; const comparisonValue = comparison?.[field.name]; const hasPermission = fieldPermissions?.[field.name]?.read?.permission; const subFieldPermissions = fieldPermissions?.[field.name]?.fields; @@ -37,7 +37,7 @@ const RenderFieldsToDiff: React.FC = ({ key={i} > {locales.map((locale) => { - const revisionLocaleValue = revisionValue?.[locale]; + const versionLocaleValue = versionValue?.[locale]; const comparisonLocaleValue = comparisonValue?.[locale]; return (
    = ({ locales={locales} field={field} fieldComponents={fieldComponents} - revision={revisionLocaleValue} + version={versionLocaleValue} comparison={comparisonLocaleValue} permissions={subFieldPermissions} isRichText={isRichText} @@ -72,7 +72,7 @@ const RenderFieldsToDiff: React.FC = ({ locales={locales} field={field} fieldComponents={fieldComponents} - revision={revisionValue} + version={versionValue} comparison={comparisonValue} permissions={subFieldPermissions} isRichText={isRichText} @@ -90,7 +90,7 @@ const RenderFieldsToDiff: React.FC = ({ disableGutter field={field} fieldComponents={fieldComponents} - revision={revision} + version={version} comparison={comparison} permissions={fieldPermissions} /> diff --git a/src/admin/components/views/Revision/RenderFieldsToDiff/types.ts b/src/admin/components/views/Version/RenderFieldsToDiff/types.ts similarity index 91% rename from src/admin/components/views/Revision/RenderFieldsToDiff/types.ts rename to src/admin/components/views/Version/RenderFieldsToDiff/types.ts index 37cefc207c..9a4216d0be 100644 --- a/src/admin/components/views/Revision/RenderFieldsToDiff/types.ts +++ b/src/admin/components/views/Version/RenderFieldsToDiff/types.ts @@ -6,7 +6,7 @@ export type Props = { fields: Field[] fieldComponents: FieldComponents, fieldPermissions: Record - revision: Record + version: Record comparison: Record locales: string[] } diff --git a/src/admin/components/views/Revision/Restore/index.scss b/src/admin/components/views/Version/Restore/index.scss similarity index 92% rename from src/admin/components/views/Revision/Restore/index.scss rename to src/admin/components/views/Version/Restore/index.scss index d399eef8a0..16898cb5f8 100644 --- a/src/admin/components/views/Revision/Restore/index.scss +++ b/src/admin/components/views/Version/Restore/index.scss @@ -1,6 +1,6 @@ @import '../../../../scss/styles.scss'; -.restore-revision { +.restore-version { cursor: pointer; &__modal { diff --git a/src/admin/components/views/Revision/Restore/index.tsx b/src/admin/components/views/Version/Restore/index.tsx similarity index 79% rename from src/admin/components/views/Revision/Restore/index.tsx rename to src/admin/components/views/Version/Restore/index.tsx index 2168756015..65cc1c02c3 100644 --- a/src/admin/components/views/Revision/Restore/index.tsx +++ b/src/admin/components/views/Version/Restore/index.tsx @@ -9,10 +9,10 @@ import { requests } from '../../../../api'; import './index.scss'; -const baseClass = 'restore-revision'; -const modalSlug = 'restore-revision'; +const baseClass = 'restore-version'; +const modalSlug = 'restore-version'; -const Restore: React.FC = ({ collection, global, className, revisionID, originalDocID, revisionDate }) => { +const Restore: React.FC = ({ collection, global, className, versionID, originalDocID, versionDate }) => { const { serverURL, routes: { api, admin } } = useConfig(); const history = useHistory(); const { toggle } = useModal(); @@ -23,15 +23,15 @@ const Restore: React.FC = ({ collection, global, className, revisionID, o let restoreMessage: string; if (collection) { - fetchURL = `${fetchURL}/${collection.slug}/revisions/${revisionID}`; + fetchURL = `${fetchURL}/${collection.slug}/versions/${versionID}`; redirectURL = `${admin}/collections/${collection.slug}/${originalDocID}`; - restoreMessage = `You are about to restore this ${collection.labels.singular} document to the state that it was in on ${revisionDate}.`; + restoreMessage = `You are about to restore this ${collection.labels.singular} document to the state that it was in on ${versionDate}.`; } if (global) { - fetchURL = `${fetchURL}/globals/${global.slug}/revisions/${revisionID}`; + fetchURL = `${fetchURL}/globals/${global.slug}/versions/${versionID}`; redirectURL = `${admin}/globals/${global.slug}`; - restoreMessage = `You are about to restore the global ${global.label} to the state that it was in on ${revisionDate}.`; + restoreMessage = `You are about to restore the global ${global.label} to the state that it was in on ${versionDate}.`; } const handleRestore = useCallback(async () => { @@ -44,7 +44,7 @@ const Restore: React.FC = ({ collection, global, className, revisionID, o toast.success(json.message); history.push(redirectURL); } else { - toast.error('There was a problem while restoring this revision.'); + toast.error('There was a problem while restoring this version.'); } }, [history, fetchURL, redirectURL]); @@ -54,14 +54,14 @@ const Restore: React.FC = ({ collection, global, className, revisionID, o onClick={() => toggle(modalSlug)} className={[baseClass, className].filter(Boolean).join(' ')} > - Restore this revision + Restore this version -

    Confirm revision restoration

    +

    Confirm version restoration

    {restoreMessage}