@payloadcms/next 3.55.0-canary.8 → 3.55.0-canary.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/views/Version/Default/SetStepNav.d.ts +0 -1
- package/dist/views/Version/Default/SetStepNav.d.ts.map +1 -1
- package/dist/views/Version/Default/SetStepNav.js +28 -38
- package/dist/views/Version/Default/SetStepNav.js.map +1 -1
- package/dist/views/Version/Default/index.d.ts.map +1 -1
- package/dist/views/Version/Default/index.js +2 -4
- package/dist/views/Version/Default/index.js.map +1 -1
- package/dist/views/Version/Default/types.d.ts +0 -1
- package/dist/views/Version/Default/types.d.ts.map +1 -1
- package/dist/views/Version/Default/types.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/generateLabelFromValue.d.ts.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/generateLabelFromValue.js +5 -2
- package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/generateLabelFromValue.js.map +1 -1
- package/dist/views/Version/index.d.ts.map +1 -1
- package/dist/views/Version/index.js +1 -4
- package/dist/views/Version/index.js.map +1 -1
- package/package.json +6 -6
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SetStepNav.d.ts","sourceRoot":"","sources":["../../../../src/views/Version/Default/SetStepNav.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAA;AACzE,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAO9B,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC;IAChC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,sBAAsB,CAAA;IAClD,QAAQ,CAAC,YAAY,CAAC,EAAE,kBAAkB,CAAA;IAC1C,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IAC7B,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAA;IAC5B,2BAA2B,CAAC,EAAE,MAAM,CAAA;IACpC,WAAW,CAAC,EAAE,MAAM,CAAA;
|
|
1
|
+
{"version":3,"file":"SetStepNav.d.ts","sourceRoot":"","sources":["../../../../src/views/Version/Default/SetStepNav.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAA;AACzE,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAO9B,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC;IAChC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,sBAAsB,CAAA;IAClD,QAAQ,CAAC,YAAY,CAAC,EAAE,kBAAkB,CAAA;IAC1C,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IAC7B,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAA;IAC5B,2BAA2B,CAAC,EAAE,MAAM,CAAA;IACpC,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB,CAgHA,CAAA"}
|
|
@@ -2,19 +2,18 @@
|
|
|
2
2
|
|
|
3
3
|
import { c as _c } from "react/compiler-runtime";
|
|
4
4
|
import { getTranslation } from '@payloadcms/translations';
|
|
5
|
-
import { useConfig, useLocale, useStepNav, useTranslation } from '@payloadcms/ui';
|
|
6
|
-
import {
|
|
5
|
+
import { useConfig, useDocumentTitle, useLocale, useStepNav, useTranslation } from '@payloadcms/ui';
|
|
6
|
+
import { formatAdminURL } from 'payload/shared';
|
|
7
7
|
import { useEffect } from 'react';
|
|
8
8
|
export const SetStepNav = t0 => {
|
|
9
|
-
const $ = _c(
|
|
9
|
+
const $ = _c(24);
|
|
10
10
|
const {
|
|
11
11
|
id,
|
|
12
12
|
collectionConfig,
|
|
13
13
|
globalConfig,
|
|
14
14
|
isTrashed,
|
|
15
15
|
versionToCreatedAtFormatted,
|
|
16
|
-
versionToID
|
|
17
|
-
versionToUseAsTitle
|
|
16
|
+
versionToID
|
|
18
17
|
} = t0;
|
|
19
18
|
const {
|
|
20
19
|
config
|
|
@@ -27,8 +26,11 @@ export const SetStepNav = t0 => {
|
|
|
27
26
|
t
|
|
28
27
|
} = useTranslation();
|
|
29
28
|
const locale = useLocale();
|
|
29
|
+
const {
|
|
30
|
+
title
|
|
31
|
+
} = useDocumentTitle();
|
|
30
32
|
let t1;
|
|
31
|
-
if ($[0] !== collectionConfig || $[1] !== config || $[2] !== globalConfig || $[3] !== i18n || $[4] !== id || $[5] !== isTrashed || $[6] !==
|
|
33
|
+
if ($[0] !== collectionConfig || $[1] !== config || $[2] !== globalConfig || $[3] !== i18n || $[4] !== id || $[5] !== isTrashed || $[6] !== setStepNav || $[7] !== t || $[8] !== title || $[9] !== versionToCreatedAtFormatted) {
|
|
32
34
|
t1 = () => {
|
|
33
35
|
const {
|
|
34
36
|
routes: t2
|
|
@@ -38,18 +40,7 @@ export const SetStepNav = t0 => {
|
|
|
38
40
|
} = t2;
|
|
39
41
|
if (collectionConfig) {
|
|
40
42
|
const collectionSlug = collectionConfig.slug;
|
|
41
|
-
const useAsTitle = collectionConfig.admin?.useAsTitle || "id";
|
|
42
43
|
const pluralLabel = collectionConfig.labels?.plural;
|
|
43
|
-
let docLabel = `[${t("general:untitled")}]`;
|
|
44
|
-
const fields = collectionConfig.fields;
|
|
45
|
-
const titleField = fields.find(f => fieldAffectsData(f) && "name" in f && f.name === useAsTitle);
|
|
46
|
-
if (titleField && versionToUseAsTitle) {
|
|
47
|
-
docLabel = "localized" in titleField && titleField.localized ? versionToUseAsTitle?.[locale.code] || docLabel : versionToUseAsTitle;
|
|
48
|
-
} else {
|
|
49
|
-
if (useAsTitle === "id") {
|
|
50
|
-
docLabel = String(id);
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
44
|
const docBasePath = isTrashed ? `/collections/${collectionSlug}/trash/${id}` : `/collections/${collectionSlug}/${id}`;
|
|
54
45
|
const nav = [{
|
|
55
46
|
label: getTranslation(pluralLabel, i18n),
|
|
@@ -68,7 +59,7 @@ export const SetStepNav = t0 => {
|
|
|
68
59
|
});
|
|
69
60
|
}
|
|
70
61
|
nav.push({
|
|
71
|
-
label:
|
|
62
|
+
label: title,
|
|
72
63
|
url: formatAdminURL({
|
|
73
64
|
adminRoute,
|
|
74
65
|
path: docBasePath
|
|
@@ -111,33 +102,32 @@ export const SetStepNav = t0 => {
|
|
|
111
102
|
$[3] = i18n;
|
|
112
103
|
$[4] = id;
|
|
113
104
|
$[5] = isTrashed;
|
|
114
|
-
$[6] =
|
|
115
|
-
$[7] =
|
|
116
|
-
$[8] =
|
|
105
|
+
$[6] = setStepNav;
|
|
106
|
+
$[7] = t;
|
|
107
|
+
$[8] = title;
|
|
117
108
|
$[9] = versionToCreatedAtFormatted;
|
|
118
|
-
$[10] =
|
|
119
|
-
$[11] = t1;
|
|
109
|
+
$[10] = t1;
|
|
120
110
|
} else {
|
|
121
|
-
t1 = $[
|
|
111
|
+
t1 = $[10];
|
|
122
112
|
}
|
|
123
113
|
let t2;
|
|
124
|
-
if ($[
|
|
125
|
-
t2 = [config, setStepNav, id, isTrashed, locale, t, i18n, collectionConfig, globalConfig,
|
|
126
|
-
$[
|
|
127
|
-
$[
|
|
128
|
-
$[
|
|
129
|
-
$[
|
|
130
|
-
$[
|
|
131
|
-
$[
|
|
132
|
-
$[
|
|
133
|
-
$[
|
|
134
|
-
$[
|
|
114
|
+
if ($[11] !== collectionConfig || $[12] !== config || $[13] !== globalConfig || $[14] !== i18n || $[15] !== id || $[16] !== isTrashed || $[17] !== locale || $[18] !== setStepNav || $[19] !== t || $[20] !== title || $[21] !== versionToCreatedAtFormatted || $[22] !== versionToID) {
|
|
115
|
+
t2 = [config, setStepNav, id, isTrashed, locale, t, i18n, collectionConfig, globalConfig, title, versionToCreatedAtFormatted, versionToID];
|
|
116
|
+
$[11] = collectionConfig;
|
|
117
|
+
$[12] = config;
|
|
118
|
+
$[13] = globalConfig;
|
|
119
|
+
$[14] = i18n;
|
|
120
|
+
$[15] = id;
|
|
121
|
+
$[16] = isTrashed;
|
|
122
|
+
$[17] = locale;
|
|
123
|
+
$[18] = setStepNav;
|
|
124
|
+
$[19] = t;
|
|
125
|
+
$[20] = title;
|
|
135
126
|
$[21] = versionToCreatedAtFormatted;
|
|
136
127
|
$[22] = versionToID;
|
|
137
|
-
$[23] =
|
|
138
|
-
$[24] = t2;
|
|
128
|
+
$[23] = t2;
|
|
139
129
|
} else {
|
|
140
|
-
t2 = $[
|
|
130
|
+
t2 = $[23];
|
|
141
131
|
}
|
|
142
132
|
useEffect(t1, t2);
|
|
143
133
|
return null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SetStepNav.js","names":["c","_c","getTranslation","useConfig","useLocale","useStepNav","useTranslation","
|
|
1
|
+
{"version":3,"file":"SetStepNav.js","names":["c","_c","getTranslation","useConfig","useDocumentTitle","useLocale","useStepNav","useTranslation","formatAdminURL","useEffect","SetStepNav","t0","$","id","collectionConfig","globalConfig","isTrashed","versionToCreatedAtFormatted","versionToID","config","setStepNav","i18n","t","locale","title","t1","routes","t2","admin","adminRoute","collectionSlug","slug","pluralLabel","labels","plural","docBasePath","nav","label","url","path","push","undefined","globalSlug"],"sources":["../../../../src/views/Version/Default/SetStepNav.tsx"],"sourcesContent":["'use client'\n\nimport type { ClientCollectionConfig, ClientGlobalConfig } from 'payload'\nimport type React from 'react'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { useConfig, useDocumentTitle, useLocale, useStepNav, useTranslation } from '@payloadcms/ui'\nimport { formatAdminURL } from 'payload/shared'\nimport { useEffect } from 'react'\n\nexport const SetStepNav: React.FC<{\n readonly collectionConfig?: ClientCollectionConfig\n readonly globalConfig?: ClientGlobalConfig\n readonly id?: number | string\n readonly isTrashed?: boolean\n versionToCreatedAtFormatted?: string\n versionToID?: string\n}> = ({\n id,\n collectionConfig,\n globalConfig,\n isTrashed,\n versionToCreatedAtFormatted,\n versionToID,\n}) => {\n const { config } = useConfig()\n const { setStepNav } = useStepNav()\n const { i18n, t } = useTranslation()\n const locale = useLocale()\n const { title } = useDocumentTitle()\n\n useEffect(() => {\n const {\n routes: { admin: adminRoute },\n } = config\n\n if (collectionConfig) {\n const collectionSlug = collectionConfig.slug\n\n const pluralLabel = collectionConfig.labels?.plural\n\n const docBasePath: `/${string}` = isTrashed\n ? `/collections/${collectionSlug}/trash/${id}`\n : `/collections/${collectionSlug}/${id}`\n\n const nav = [\n {\n label: getTranslation(pluralLabel, i18n),\n url: formatAdminURL({\n adminRoute,\n path: `/collections/${collectionSlug}`,\n }),\n },\n ]\n\n if (isTrashed) {\n nav.push({\n label: t('general:trash'),\n url: formatAdminURL({\n adminRoute,\n path: `/collections/${collectionSlug}/trash`,\n }),\n })\n }\n\n nav.push(\n {\n label: title,\n url: formatAdminURL({\n adminRoute,\n path: docBasePath,\n }),\n },\n {\n label: t('version:versions'),\n url: formatAdminURL({\n adminRoute,\n path: `${docBasePath}/versions`,\n }),\n },\n {\n label: versionToCreatedAtFormatted,\n url: undefined,\n },\n )\n\n setStepNav(nav)\n return\n }\n\n if (globalConfig) {\n const globalSlug = globalConfig.slug\n\n setStepNav([\n {\n label: globalConfig.label,\n url: formatAdminURL({\n adminRoute,\n path: `/globals/${globalSlug}`,\n }),\n },\n {\n label: t('version:versions'),\n url: formatAdminURL({\n adminRoute,\n path: `/globals/${globalSlug}/versions`,\n }),\n },\n {\n label: versionToCreatedAtFormatted,\n },\n ])\n }\n }, [\n config,\n setStepNav,\n id,\n isTrashed,\n locale,\n t,\n i18n,\n collectionConfig,\n globalConfig,\n title,\n versionToCreatedAtFormatted,\n versionToID,\n ])\n\n return null\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/views/Version/Default/index.tsx"],"names":[],"mappings":"AAgBA,OAAO,KAA2E,MAAM,OAAO,CAAA;AAE/F,OAAO,KAAK,EAAiB,wBAAwB,EAAE,MAAM,YAAY,CAAA;AAGzE,OAAO,cAAc,CAAA;AAQrB,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC,wBAAwB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/views/Version/Default/index.tsx"],"names":[],"mappings":"AAgBA,OAAO,KAA2E,MAAM,OAAO,CAAA;AAE/F,OAAO,KAAK,EAAiB,wBAAwB,EAAE,MAAM,YAAY,CAAA;AAGzE,OAAO,cAAc,CAAA;AAQrB,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC,wBAAwB,CA+PjE,CAAA"}
|
|
@@ -22,8 +22,7 @@ export const DefaultVersionView = ({
|
|
|
22
22
|
versionToCreatedAtFormatted,
|
|
23
23
|
VersionToCreatedAtLabel,
|
|
24
24
|
versionToID,
|
|
25
|
-
versionToStatus
|
|
26
|
-
versionToUseAsTitle
|
|
25
|
+
versionToStatus
|
|
27
26
|
}) => {
|
|
28
27
|
const {
|
|
29
28
|
config,
|
|
@@ -239,8 +238,7 @@ export const DefaultVersionView = ({
|
|
|
239
238
|
id: originalDocID,
|
|
240
239
|
isTrashed: isTrashed,
|
|
241
240
|
versionToCreatedAtFormatted: versionToCreatedAtFormatted,
|
|
242
|
-
versionToID: versionToID
|
|
243
|
-
versionToUseAsTitle: versionToUseAsTitle
|
|
241
|
+
versionToID: versionToID
|
|
244
242
|
}), /*#__PURE__*/_jsx(Gutter, {
|
|
245
243
|
className: `${baseClass}__diff-wrap`,
|
|
246
244
|
children: /*#__PURE__*/_jsx(SelectedLocalesContext, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["CheckboxInput","ChevronIcon","formatTimeToNow","Gutter","Pill","useConfig","useDocumentInfo","useLocale","useRouteTransition","useTranslation","usePathname","useRouter","useSearchParams","React","useCallback","useEffect","useMemo","useState","Restore","SelectComparison","SelectLocales","SelectedLocalesContext","SetStepNav","baseClass","DefaultVersionView","canUpdate","modifiedOnly","modifiedOnlyProp","RenderedDiff","selectedLocales","selectedLocalesFromProps","versionFromCreatedAt","versionFromID","versionFromOptions","versionToCreatedAt","versionToCreatedAtFormatted","VersionToCreatedAtLabel","versionToID","versionToStatus","versionToUseAsTitle","config","getEntityConfig","code","i18n","t","locales","setLocales","localeSelectorOpen","setLocaleSelectorOpen","localization","updatedLocales","map","locale","label","name","Label","selected","includes","id","originalDocID","collectionSlug","globalSlug","isTrashed","startRouteTransition","collectionConfig","globalConfig","router","pathname","searchParams","setModifiedOnly","updateSearchParams","args","current","URLSearchParams","Array","from","entries","set","length","delete","selectedLocaleCodes","push","JSON","stringify","search","toString","query","onToggleModifiedOnly","event","newModified","target","checked","onChangeSelectedLocales","onChangeVersionFrom","val","value","versionToTimeAgo","distance","date","versionFromTimeAgo","undefined","_jsxs","className","_jsx","onToggle","icon","direction","onClick","pillStyle","size","filter","join","onChange","docID","labels","singular","status","versionDateFormatted","versionID"],"sources":["../../../../src/views/Version/Default/index.tsx"],"sourcesContent":["'use client'\n\nimport {\n CheckboxInput,\n ChevronIcon,\n formatTimeToNow,\n Gutter,\n Pill,\n type SelectablePill,\n useConfig,\n useDocumentInfo,\n useLocale,\n useRouteTransition,\n useTranslation,\n} from '@payloadcms/ui'\nimport { usePathname, useRouter, useSearchParams } from 'next/navigation.js'\nimport React, { type FormEventHandler, useCallback, useEffect, useMemo, useState } from 'react'\n\nimport type { CompareOption, DefaultVersionsViewProps } from './types.js'\n\nimport { Restore } from '../Restore/index.js'\nimport './index.scss'\nimport { SelectComparison } from '../SelectComparison/index.js'\nimport { type SelectedLocaleOnChange, SelectLocales } from '../SelectLocales/index.js'\nimport { SelectedLocalesContext } from './SelectedLocalesContext.js'\nimport { SetStepNav } from './SetStepNav.js'\n\nconst baseClass = 'view-version'\n\nexport const DefaultVersionView: React.FC<DefaultVersionsViewProps> = ({\n canUpdate,\n modifiedOnly: modifiedOnlyProp,\n RenderedDiff,\n selectedLocales: selectedLocalesFromProps,\n versionFromCreatedAt,\n versionFromID,\n versionFromOptions,\n versionToCreatedAt,\n versionToCreatedAtFormatted,\n VersionToCreatedAtLabel,\n versionToID,\n versionToStatus,\n versionToUseAsTitle,\n}) => {\n const { config, getEntityConfig } = useConfig()\n const { code } = useLocale()\n const { i18n, t } = useTranslation()\n\n const [locales, setLocales] = useState<SelectablePill[]>([])\n const [localeSelectorOpen, setLocaleSelectorOpen] = React.useState(false)\n\n useEffect(() => {\n if (config.localization) {\n const updatedLocales = config.localization.locales.map((locale) => {\n let label = locale.label\n if (typeof locale.label !== 'string' && locale.label[code]) {\n label = locale.label[code]\n }\n\n return {\n name: locale.code,\n Label: label,\n selected: selectedLocalesFromProps.includes(locale.code),\n } as SelectablePill\n })\n setLocales(updatedLocales)\n }\n }, [code, config.localization, selectedLocalesFromProps])\n\n const { id: originalDocID, collectionSlug, globalSlug, isTrashed } = useDocumentInfo()\n const { startRouteTransition } = useRouteTransition()\n\n const { collectionConfig, globalConfig } = useMemo(() => {\n return {\n collectionConfig: getEntityConfig({ collectionSlug }),\n globalConfig: getEntityConfig({ globalSlug }),\n }\n }, [collectionSlug, globalSlug, getEntityConfig])\n\n const router = useRouter()\n const pathname = usePathname()\n const searchParams = useSearchParams()\n const [modifiedOnly, setModifiedOnly] = useState(modifiedOnlyProp)\n\n const updateSearchParams = useCallback(\n (args: {\n modifiedOnly?: boolean\n selectedLocales?: SelectablePill[]\n versionFromID?: string\n }) => {\n // If the selected comparison doc or locales change, update URL params so that version page\n // This is so that RSC can update the version comparison state\n const current = new URLSearchParams(Array.from(searchParams.entries()))\n\n if (args?.versionFromID) {\n current.set('versionFrom', args?.versionFromID)\n }\n\n if (args?.selectedLocales) {\n if (!args.selectedLocales.length) {\n current.delete('localeCodes')\n } else {\n const selectedLocaleCodes: string[] = []\n for (const locale of args.selectedLocales) {\n if (locale.selected) {\n selectedLocaleCodes.push(locale.name)\n }\n }\n current.set('localeCodes', JSON.stringify(selectedLocaleCodes))\n }\n }\n\n if (args?.modifiedOnly === false) {\n current.set('modifiedOnly', 'false')\n } else if (args?.modifiedOnly === true) {\n current.delete('modifiedOnly')\n }\n\n const search = current.toString()\n const query = search ? `?${search}` : ''\n\n startRouteTransition(() => router.push(`${pathname}${query}`))\n },\n [pathname, router, searchParams, startRouteTransition],\n )\n\n const onToggleModifiedOnly: FormEventHandler<HTMLInputElement> = useCallback(\n (event) => {\n const newModified = (event.target as HTMLInputElement).checked\n setModifiedOnly(newModified)\n updateSearchParams({\n modifiedOnly: newModified,\n })\n },\n [updateSearchParams],\n )\n\n const onChangeSelectedLocales: SelectedLocaleOnChange = useCallback(\n ({ locales }) => {\n setLocales(locales)\n updateSearchParams({\n selectedLocales: locales,\n })\n },\n [updateSearchParams],\n )\n\n const onChangeVersionFrom: (val: CompareOption) => void = useCallback(\n (val) => {\n updateSearchParams({\n versionFromID: val.value,\n })\n },\n [updateSearchParams],\n )\n\n const { localization } = config\n\n const versionToTimeAgo = useMemo(\n () =>\n t('version:versionAgo', {\n distance: formatTimeToNow({\n date: versionToCreatedAt,\n i18n,\n }),\n }),\n [versionToCreatedAt, i18n, t],\n )\n\n const versionFromTimeAgo = useMemo(\n () =>\n versionFromCreatedAt\n ? t('version:versionAgo', {\n distance: formatTimeToNow({\n date: versionFromCreatedAt,\n i18n,\n }),\n })\n : undefined,\n [versionFromCreatedAt, i18n, t],\n )\n\n return (\n <main className={baseClass}>\n <Gutter className={`${baseClass}-controls-top`}>\n <div className={`${baseClass}-controls-top__wrapper`}>\n <h2>{i18n.t('version:compareVersions')}</h2>\n <div className={`${baseClass}-controls-top__wrapper-actions`}>\n <span className={`${baseClass}__modifiedCheckBox`}>\n <CheckboxInput\n checked={modifiedOnly}\n id={'modifiedOnly'}\n label={i18n.t('version:modifiedOnly')}\n onToggle={onToggleModifiedOnly}\n />\n </span>\n {localization && (\n <Pill\n aria-controls={`${baseClass}-locales`}\n aria-expanded={localeSelectorOpen}\n className={`${baseClass}__toggle-locales`}\n icon={<ChevronIcon direction={localeSelectorOpen ? 'up' : 'down'} />}\n onClick={() => setLocaleSelectorOpen((localeSelectorOpen) => !localeSelectorOpen)}\n pillStyle=\"light\"\n size=\"small\"\n >\n <span className={`${baseClass}__toggle-locales-label`}>\n {t('general:locales')}:{' '}\n </span>\n <span className={`${baseClass}__toggle-locales-list`}>\n {locales\n .filter((locale) => locale.selected)\n .map((locale) => locale.name)\n .join(', ')}\n </span>\n </Pill>\n )}\n </div>\n </div>\n\n {localization && (\n <SelectLocales\n locales={locales}\n localeSelectorOpen={localeSelectorOpen}\n onChange={onChangeSelectedLocales}\n />\n )}\n </Gutter>\n <Gutter className={`${baseClass}-controls-bottom`}>\n <div className={`${baseClass}-controls-bottom__wrapper`}>\n <div className={`${baseClass}__version-from`}>\n <div className={`${baseClass}__version-from-labels`}>\n <span>{t('version:comparingAgainst')}</span>\n {versionFromTimeAgo && (\n <span className={`${baseClass}__time-elapsed`}>{versionFromTimeAgo}</span>\n )}\n </div>\n <SelectComparison\n collectionSlug={collectionSlug}\n docID={originalDocID}\n globalSlug={globalSlug}\n onChange={onChangeVersionFrom}\n versionFromID={versionFromID}\n versionFromOptions={versionFromOptions}\n />\n </div>\n\n <div className={`${baseClass}__version-to`}>\n <div className={`${baseClass}__version-to-labels`}>\n <span>{t('version:currentlyViewing')}</span>\n <span className={`${baseClass}__time-elapsed`}>{versionToTimeAgo}</span>\n </div>\n <div className={`${baseClass}__version-to-version`}>\n {VersionToCreatedAtLabel}\n {canUpdate && !isTrashed && (\n <Restore\n className={`${baseClass}__restore`}\n collectionConfig={collectionConfig}\n globalConfig={globalConfig}\n label={collectionConfig?.labels.singular || globalConfig?.label}\n originalDocID={originalDocID}\n status={versionToStatus}\n versionDateFormatted={versionToCreatedAtFormatted}\n versionID={versionToID}\n />\n )}\n </div>\n </div>\n </div>\n </Gutter>\n <SetStepNav\n collectionConfig={collectionConfig}\n globalConfig={globalConfig}\n id={originalDocID}\n isTrashed={isTrashed}\n versionToCreatedAtFormatted={versionToCreatedAtFormatted}\n versionToID={versionToID}\n versionToUseAsTitle={versionToUseAsTitle}\n />\n <Gutter className={`${baseClass}__diff-wrap`}>\n <SelectedLocalesContext value={{ selectedLocales: locales.map((locale) => locale.name) }}>\n {versionToCreatedAt && RenderedDiff}\n </SelectedLocalesContext>\n </Gutter>\n </main>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["CheckboxInput","ChevronIcon","formatTimeToNow","Gutter","Pill","useConfig","useDocumentInfo","useLocale","useRouteTransition","useTranslation","usePathname","useRouter","useSearchParams","React","useCallback","useEffect","useMemo","useState","Restore","SelectComparison","SelectLocales","SelectedLocalesContext","SetStepNav","baseClass","DefaultVersionView","canUpdate","modifiedOnly","modifiedOnlyProp","RenderedDiff","selectedLocales","selectedLocalesFromProps","versionFromCreatedAt","versionFromID","versionFromOptions","versionToCreatedAt","versionToCreatedAtFormatted","VersionToCreatedAtLabel","versionToID","versionToStatus","config","getEntityConfig","code","i18n","t","locales","setLocales","localeSelectorOpen","setLocaleSelectorOpen","localization","updatedLocales","map","locale","label","name","Label","selected","includes","id","originalDocID","collectionSlug","globalSlug","isTrashed","startRouteTransition","collectionConfig","globalConfig","router","pathname","searchParams","setModifiedOnly","updateSearchParams","args","current","URLSearchParams","Array","from","entries","set","length","delete","selectedLocaleCodes","push","JSON","stringify","search","toString","query","onToggleModifiedOnly","event","newModified","target","checked","onChangeSelectedLocales","onChangeVersionFrom","val","value","versionToTimeAgo","distance","date","versionFromTimeAgo","undefined","_jsxs","className","_jsx","onToggle","icon","direction","onClick","pillStyle","size","filter","join","onChange","docID","labels","singular","status","versionDateFormatted","versionID"],"sources":["../../../../src/views/Version/Default/index.tsx"],"sourcesContent":["'use client'\n\nimport {\n CheckboxInput,\n ChevronIcon,\n formatTimeToNow,\n Gutter,\n Pill,\n type SelectablePill,\n useConfig,\n useDocumentInfo,\n useLocale,\n useRouteTransition,\n useTranslation,\n} from '@payloadcms/ui'\nimport { usePathname, useRouter, useSearchParams } from 'next/navigation.js'\nimport React, { type FormEventHandler, useCallback, useEffect, useMemo, useState } from 'react'\n\nimport type { CompareOption, DefaultVersionsViewProps } from './types.js'\n\nimport { Restore } from '../Restore/index.js'\nimport './index.scss'\nimport { SelectComparison } from '../SelectComparison/index.js'\nimport { type SelectedLocaleOnChange, SelectLocales } from '../SelectLocales/index.js'\nimport { SelectedLocalesContext } from './SelectedLocalesContext.js'\nimport { SetStepNav } from './SetStepNav.js'\n\nconst baseClass = 'view-version'\n\nexport const DefaultVersionView: React.FC<DefaultVersionsViewProps> = ({\n canUpdate,\n modifiedOnly: modifiedOnlyProp,\n RenderedDiff,\n selectedLocales: selectedLocalesFromProps,\n versionFromCreatedAt,\n versionFromID,\n versionFromOptions,\n versionToCreatedAt,\n versionToCreatedAtFormatted,\n VersionToCreatedAtLabel,\n versionToID,\n versionToStatus,\n}) => {\n const { config, getEntityConfig } = useConfig()\n const { code } = useLocale()\n const { i18n, t } = useTranslation()\n\n const [locales, setLocales] = useState<SelectablePill[]>([])\n const [localeSelectorOpen, setLocaleSelectorOpen] = React.useState(false)\n\n useEffect(() => {\n if (config.localization) {\n const updatedLocales = config.localization.locales.map((locale) => {\n let label = locale.label\n if (typeof locale.label !== 'string' && locale.label[code]) {\n label = locale.label[code]\n }\n\n return {\n name: locale.code,\n Label: label,\n selected: selectedLocalesFromProps.includes(locale.code),\n } as SelectablePill\n })\n setLocales(updatedLocales)\n }\n }, [code, config.localization, selectedLocalesFromProps])\n\n const { id: originalDocID, collectionSlug, globalSlug, isTrashed } = useDocumentInfo()\n const { startRouteTransition } = useRouteTransition()\n\n const { collectionConfig, globalConfig } = useMemo(() => {\n return {\n collectionConfig: getEntityConfig({ collectionSlug }),\n globalConfig: getEntityConfig({ globalSlug }),\n }\n }, [collectionSlug, globalSlug, getEntityConfig])\n\n const router = useRouter()\n const pathname = usePathname()\n const searchParams = useSearchParams()\n const [modifiedOnly, setModifiedOnly] = useState(modifiedOnlyProp)\n\n const updateSearchParams = useCallback(\n (args: {\n modifiedOnly?: boolean\n selectedLocales?: SelectablePill[]\n versionFromID?: string\n }) => {\n // If the selected comparison doc or locales change, update URL params so that version page\n // This is so that RSC can update the version comparison state\n const current = new URLSearchParams(Array.from(searchParams.entries()))\n\n if (args?.versionFromID) {\n current.set('versionFrom', args?.versionFromID)\n }\n\n if (args?.selectedLocales) {\n if (!args.selectedLocales.length) {\n current.delete('localeCodes')\n } else {\n const selectedLocaleCodes: string[] = []\n for (const locale of args.selectedLocales) {\n if (locale.selected) {\n selectedLocaleCodes.push(locale.name)\n }\n }\n current.set('localeCodes', JSON.stringify(selectedLocaleCodes))\n }\n }\n\n if (args?.modifiedOnly === false) {\n current.set('modifiedOnly', 'false')\n } else if (args?.modifiedOnly === true) {\n current.delete('modifiedOnly')\n }\n\n const search = current.toString()\n const query = search ? `?${search}` : ''\n\n startRouteTransition(() => router.push(`${pathname}${query}`))\n },\n [pathname, router, searchParams, startRouteTransition],\n )\n\n const onToggleModifiedOnly: FormEventHandler<HTMLInputElement> = useCallback(\n (event) => {\n const newModified = (event.target as HTMLInputElement).checked\n setModifiedOnly(newModified)\n updateSearchParams({\n modifiedOnly: newModified,\n })\n },\n [updateSearchParams],\n )\n\n const onChangeSelectedLocales: SelectedLocaleOnChange = useCallback(\n ({ locales }) => {\n setLocales(locales)\n updateSearchParams({\n selectedLocales: locales,\n })\n },\n [updateSearchParams],\n )\n\n const onChangeVersionFrom: (val: CompareOption) => void = useCallback(\n (val) => {\n updateSearchParams({\n versionFromID: val.value,\n })\n },\n [updateSearchParams],\n )\n\n const { localization } = config\n\n const versionToTimeAgo = useMemo(\n () =>\n t('version:versionAgo', {\n distance: formatTimeToNow({\n date: versionToCreatedAt,\n i18n,\n }),\n }),\n [versionToCreatedAt, i18n, t],\n )\n\n const versionFromTimeAgo = useMemo(\n () =>\n versionFromCreatedAt\n ? t('version:versionAgo', {\n distance: formatTimeToNow({\n date: versionFromCreatedAt,\n i18n,\n }),\n })\n : undefined,\n [versionFromCreatedAt, i18n, t],\n )\n\n return (\n <main className={baseClass}>\n <Gutter className={`${baseClass}-controls-top`}>\n <div className={`${baseClass}-controls-top__wrapper`}>\n <h2>{i18n.t('version:compareVersions')}</h2>\n <div className={`${baseClass}-controls-top__wrapper-actions`}>\n <span className={`${baseClass}__modifiedCheckBox`}>\n <CheckboxInput\n checked={modifiedOnly}\n id={'modifiedOnly'}\n label={i18n.t('version:modifiedOnly')}\n onToggle={onToggleModifiedOnly}\n />\n </span>\n {localization && (\n <Pill\n aria-controls={`${baseClass}-locales`}\n aria-expanded={localeSelectorOpen}\n className={`${baseClass}__toggle-locales`}\n icon={<ChevronIcon direction={localeSelectorOpen ? 'up' : 'down'} />}\n onClick={() => setLocaleSelectorOpen((localeSelectorOpen) => !localeSelectorOpen)}\n pillStyle=\"light\"\n size=\"small\"\n >\n <span className={`${baseClass}__toggle-locales-label`}>\n {t('general:locales')}:{' '}\n </span>\n <span className={`${baseClass}__toggle-locales-list`}>\n {locales\n .filter((locale) => locale.selected)\n .map((locale) => locale.name)\n .join(', ')}\n </span>\n </Pill>\n )}\n </div>\n </div>\n\n {localization && (\n <SelectLocales\n locales={locales}\n localeSelectorOpen={localeSelectorOpen}\n onChange={onChangeSelectedLocales}\n />\n )}\n </Gutter>\n <Gutter className={`${baseClass}-controls-bottom`}>\n <div className={`${baseClass}-controls-bottom__wrapper`}>\n <div className={`${baseClass}__version-from`}>\n <div className={`${baseClass}__version-from-labels`}>\n <span>{t('version:comparingAgainst')}</span>\n {versionFromTimeAgo && (\n <span className={`${baseClass}__time-elapsed`}>{versionFromTimeAgo}</span>\n )}\n </div>\n <SelectComparison\n collectionSlug={collectionSlug}\n docID={originalDocID}\n globalSlug={globalSlug}\n onChange={onChangeVersionFrom}\n versionFromID={versionFromID}\n versionFromOptions={versionFromOptions}\n />\n </div>\n\n <div className={`${baseClass}__version-to`}>\n <div className={`${baseClass}__version-to-labels`}>\n <span>{t('version:currentlyViewing')}</span>\n <span className={`${baseClass}__time-elapsed`}>{versionToTimeAgo}</span>\n </div>\n <div className={`${baseClass}__version-to-version`}>\n {VersionToCreatedAtLabel}\n {canUpdate && !isTrashed && (\n <Restore\n className={`${baseClass}__restore`}\n collectionConfig={collectionConfig}\n globalConfig={globalConfig}\n label={collectionConfig?.labels.singular || globalConfig?.label}\n originalDocID={originalDocID}\n status={versionToStatus}\n versionDateFormatted={versionToCreatedAtFormatted}\n versionID={versionToID}\n />\n )}\n </div>\n </div>\n </div>\n </Gutter>\n <SetStepNav\n collectionConfig={collectionConfig}\n globalConfig={globalConfig}\n id={originalDocID}\n isTrashed={isTrashed}\n versionToCreatedAtFormatted={versionToCreatedAtFormatted}\n versionToID={versionToID}\n />\n <Gutter className={`${baseClass}__diff-wrap`}>\n <SelectedLocalesContext value={{ selectedLocales: locales.map((locale) => locale.name) }}>\n {versionToCreatedAt && RenderedDiff}\n </SelectedLocalesContext>\n </Gutter>\n </main>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/views/Version/Default/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,aAAa,GAAG;IAC1B,KAAK,EAAE,KAAK,CAAC,SAAS,GAAG,MAAM,CAAA;IAC/B,KAAK,EAAE,MAAM,CAAA;CACd,CAAA;AAED,MAAM,MAAM,WAAW,GAAG;IACxB,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,KAAK,CAAC,SAAS,CAAA;CACvB,CAAA;AAED,MAAM,MAAM,wBAAwB,GAAG;IACrC,SAAS,EAAE,OAAO,CAAA;IAClB,YAAY,EAAE,OAAO,CAAA;IACrB,YAAY,EAAE,KAAK,CAAC,SAAS,CAAA;IAC7B,eAAe,EAAE,MAAM,EAAE,CAAA;IACzB,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,kBAAkB,EAAE,aAAa,EAAE,CAAA;IACnC,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,2BAA2B,EAAE,MAAM,CAAA;IACnC,uBAAuB,EAAE,KAAK,CAAC,SAAS,CAAA;IACxC,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,eAAe,CAAC,EAAE,MAAM,CAAA;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/views/Version/Default/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,aAAa,GAAG;IAC1B,KAAK,EAAE,KAAK,CAAC,SAAS,GAAG,MAAM,CAAA;IAC/B,KAAK,EAAE,MAAM,CAAA;CACd,CAAA;AAED,MAAM,MAAM,WAAW,GAAG;IACxB,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,KAAK,CAAC,SAAS,CAAA;CACvB,CAAA;AAED,MAAM,MAAM,wBAAwB,GAAG;IACrC,SAAS,EAAE,OAAO,CAAA;IAClB,YAAY,EAAE,OAAO,CAAA;IACrB,YAAY,EAAE,KAAK,CAAC,SAAS,CAAA;IAC7B,eAAe,EAAE,MAAM,EAAE,CAAA;IACzB,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,kBAAkB,EAAE,aAAa,EAAE,CAAA;IACnC,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,2BAA2B,EAAE,MAAM,CAAA;IACnC,uBAAuB,EAAE,KAAK,CAAC,SAAS,CAAA;IACxC,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,eAAe,CAAC,EAAE,MAAM,CAAA;CACzB,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","names":[],"sources":["../../../../src/views/Version/Default/types.ts"],"sourcesContent":["export type CompareOption = {\n label: React.ReactNode | string\n value: string\n}\n\nexport type VersionPill = {\n id: string\n Label: React.ReactNode\n}\n\nexport type DefaultVersionsViewProps = {\n canUpdate: boolean\n modifiedOnly: boolean\n RenderedDiff: React.ReactNode\n selectedLocales: string[]\n versionFromCreatedAt?: string\n versionFromID?: string\n versionFromOptions: CompareOption[]\n versionToCreatedAt?: string\n versionToCreatedAtFormatted: string\n VersionToCreatedAtLabel: React.ReactNode\n versionToID?: string\n versionToStatus?: string\n
|
|
1
|
+
{"version":3,"file":"types.js","names":[],"sources":["../../../../src/views/Version/Default/types.ts"],"sourcesContent":["export type CompareOption = {\n label: React.ReactNode | string\n value: string\n}\n\nexport type VersionPill = {\n id: string\n Label: React.ReactNode\n}\n\nexport type DefaultVersionsViewProps = {\n canUpdate: boolean\n modifiedOnly: boolean\n RenderedDiff: React.ReactNode\n selectedLocales: string[]\n versionFromCreatedAt?: string\n versionFromID?: string\n versionFromOptions: CompareOption[]\n versionToCreatedAt?: string\n versionToCreatedAtFormatted: string\n VersionToCreatedAtLabel: React.ReactNode\n versionToID?: string\n versionToStatus?: string\n}\n"],"mappings":"AAUA","ignoreList":[]}
|
package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/generateLabelFromValue.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generateLabelFromValue.d.ts","sourceRoot":"","sources":["../../../../../../src/views/Version/RenderFieldsToDiff/fields/Relationship/generateLabelFromValue.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,iBAAiB,EAAc,MAAM,SAAS,CAAA;
|
|
1
|
+
{"version":3,"file":"generateLabelFromValue.d.ts","sourceRoot":"","sources":["../../../../../../src/views/Version/RenderFieldsToDiff/fields/Relationship/generateLabelFromValue.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,iBAAiB,EAAc,MAAM,SAAS,CAAA;AAS5E,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,YAAY,CAAA;AAE5D,eAAO,MAAM,sBAAsB,sDAMhC;IACD,KAAK,EAAE,iBAAiB,CAAA;IACxB,MAAM,EAAE,MAAM,CAAA;IACd,iBAAiB,EAAE,OAAO,CAAA;IAC1B,GAAG,EAAE,cAAc,CAAA;IACnB,KAAK,EAAE,0BAA0B,CAAA;CAClC,KAAG,MAqDH,CAAA"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { fieldAffectsData, fieldIsPresentationalOnly, fieldShouldBeLocalized } from 'payload/shared';
|
|
1
|
+
import { fieldAffectsData, fieldIsPresentationalOnly, fieldShouldBeLocalized, flattenTopLevelFields } from 'payload/shared';
|
|
2
2
|
export const generateLabelFromValue = ({
|
|
3
3
|
field,
|
|
4
4
|
locale,
|
|
@@ -18,7 +18,10 @@ export const generateLabelFromValue = ({
|
|
|
18
18
|
}
|
|
19
19
|
const relatedCollection = req.payload.collections[relationTo].config;
|
|
20
20
|
const useAsTitle = relatedCollection?.admin?.useAsTitle;
|
|
21
|
-
const
|
|
21
|
+
const flattenedRelatedCollectionFields = flattenTopLevelFields(relatedCollection.fields, {
|
|
22
|
+
moveSubFieldsToTop: true
|
|
23
|
+
});
|
|
24
|
+
const useAsTitleField = flattenedRelatedCollectionFields.find(f => fieldAffectsData(f) && !fieldIsPresentationalOnly(f) && f.name === useAsTitle);
|
|
22
25
|
let titleFieldIsLocalized = false;
|
|
23
26
|
if (useAsTitleField && fieldAffectsData(useAsTitleField)) {
|
|
24
27
|
titleFieldIsLocalized = fieldShouldBeLocalized({
|
package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/generateLabelFromValue.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generateLabelFromValue.js","names":["fieldAffectsData","fieldIsPresentationalOnly","fieldShouldBeLocalized","generateLabelFromValue","field","locale","parentIsLocalized","req","value","relatedDoc","relationTo","valueToReturn","relatedCollection","payload","collections","config","useAsTitle","admin","
|
|
1
|
+
{"version":3,"file":"generateLabelFromValue.js","names":["fieldAffectsData","fieldIsPresentationalOnly","fieldShouldBeLocalized","flattenTopLevelFields","generateLabelFromValue","field","locale","parentIsLocalized","req","value","relatedDoc","relationTo","valueToReturn","relatedCollection","payload","collections","config","useAsTitle","admin","flattenedRelatedCollectionFields","fields","moveSubFieldsToTop","useAsTitleField","find","f","name","titleFieldIsLocalized","String","id","JSON","stringify"],"sources":["../../../../../../src/views/Version/RenderFieldsToDiff/fields/Relationship/generateLabelFromValue.ts"],"sourcesContent":["import type { PayloadRequest, RelationshipField, TypeWithID } from 'payload'\n\nimport {\n fieldAffectsData,\n fieldIsPresentationalOnly,\n fieldShouldBeLocalized,\n flattenTopLevelFields,\n} from 'payload/shared'\n\nimport type { PopulatedRelationshipValue } from './index.js'\n\nexport const generateLabelFromValue = ({\n field,\n locale,\n parentIsLocalized,\n req,\n value,\n}: {\n field: RelationshipField\n locale: string\n parentIsLocalized: boolean\n req: PayloadRequest\n value: PopulatedRelationshipValue\n}): string => {\n let relatedDoc: TypeWithID\n let relationTo: string = field.relationTo as string\n let valueToReturn: string = ''\n\n if (typeof value === 'object' && 'relationTo' in value) {\n relatedDoc = value.value\n relationTo = value.relationTo\n } else {\n // Non-polymorphic relationship\n relatedDoc = value\n }\n\n const relatedCollection = req.payload.collections[relationTo].config\n\n const useAsTitle = relatedCollection?.admin?.useAsTitle\n\n const flattenedRelatedCollectionFields = flattenTopLevelFields(relatedCollection.fields, {\n moveSubFieldsToTop: true,\n })\n\n const useAsTitleField = flattenedRelatedCollectionFields.find(\n (f) => fieldAffectsData(f) && !fieldIsPresentationalOnly(f) && f.name === useAsTitle,\n )\n let titleFieldIsLocalized = false\n\n if (useAsTitleField && fieldAffectsData(useAsTitleField)) {\n titleFieldIsLocalized = fieldShouldBeLocalized({ field: useAsTitleField, parentIsLocalized })\n }\n\n if (typeof relatedDoc?.[useAsTitle] !== 'undefined') {\n valueToReturn = relatedDoc[useAsTitle]\n } else {\n valueToReturn = String(relatedDoc.id)\n }\n\n if (\n typeof valueToReturn === 'object' &&\n valueToReturn &&\n titleFieldIsLocalized &&\n valueToReturn?.[locale]\n ) {\n valueToReturn = valueToReturn[locale]\n }\n\n if (\n (valueToReturn && typeof valueToReturn === 'object' && valueToReturn !== null) ||\n typeof valueToReturn !== 'string'\n ) {\n valueToReturn = JSON.stringify(valueToReturn)\n }\n\n return valueToReturn\n}\n"],"mappings":"AAEA,SACEA,gBAAgB,EAChBC,yBAAyB,EACzBC,sBAAsB,EACtBC,qBAAqB,QAChB;AAIP,OAAO,MAAMC,sBAAA,GAAyBA,CAAC;EACrCC,KAAK;EACLC,MAAM;EACNC,iBAAiB;EACjBC,GAAG;EACHC;AAAK,CAON;EACC,IAAIC,UAAA;EACJ,IAAIC,UAAA,GAAqBN,KAAA,CAAMM,UAAU;EACzC,IAAIC,aAAA,GAAwB;EAE5B,IAAI,OAAOH,KAAA,KAAU,YAAY,gBAAgBA,KAAA,EAAO;IACtDC,UAAA,GAAaD,KAAA,CAAMA,KAAK;IACxBE,UAAA,GAAaF,KAAA,CAAME,UAAU;EAC/B,OAAO;IACL;IACAD,UAAA,GAAaD,KAAA;EACf;EAEA,MAAMI,iBAAA,GAAoBL,GAAA,CAAIM,OAAO,CAACC,WAAW,CAACJ,UAAA,CAAW,CAACK,MAAM;EAEpE,MAAMC,UAAA,GAAaJ,iBAAA,EAAmBK,KAAA,EAAOD,UAAA;EAE7C,MAAME,gCAAA,GAAmChB,qBAAA,CAAsBU,iBAAA,CAAkBO,MAAM,EAAE;IACvFC,kBAAA,EAAoB;EACtB;EAEA,MAAMC,eAAA,GAAkBH,gCAAA,CAAiCI,IAAI,CAC1DC,CAAA,IAAMxB,gBAAA,CAAiBwB,CAAA,KAAM,CAACvB,yBAAA,CAA0BuB,CAAA,KAAMA,CAAA,CAAEC,IAAI,KAAKR,UAAA;EAE5E,IAAIS,qBAAA,GAAwB;EAE5B,IAAIJ,eAAA,IAAmBtB,gBAAA,CAAiBsB,eAAA,GAAkB;IACxDI,qBAAA,GAAwBxB,sBAAA,CAAuB;MAAEG,KAAA,EAAOiB,eAAA;MAAiBf;IAAkB;EAC7F;EAEA,IAAI,OAAOG,UAAA,GAAaO,UAAA,CAAW,KAAK,aAAa;IACnDL,aAAA,GAAgBF,UAAU,CAACO,UAAA,CAAW;EACxC,OAAO;IACLL,aAAA,GAAgBe,MAAA,CAAOjB,UAAA,CAAWkB,EAAE;EACtC;EAEA,IACE,OAAOhB,aAAA,KAAkB,YACzBA,aAAA,IACAc,qBAAA,IACAd,aAAA,GAAgBN,MAAA,CAAO,EACvB;IACAM,aAAA,GAAgBA,aAAa,CAACN,MAAA,CAAO;EACvC;EAEA,IACEM,aAAC,IAAiB,OAAOA,aAAA,KAAkB,YAAYA,aAAA,KAAkB,QACzE,OAAOA,aAAA,KAAkB,UACzB;IACAA,aAAA,GAAgBiB,IAAA,CAAKC,SAAS,CAAClB,aAAA;EACjC;EAEA,OAAOA,aAAA;AACT","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/Version/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,uBAAuB,EAKxB,MAAM,SAAS,CAAA;AAOhB,OAAO,KAAK,MAAM,OAAO,CAAA;AAUzB,wBAAsB,WAAW,CAAC,KAAK,EAAE,uBAAuB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/Version/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,uBAAuB,EAKxB,MAAM,SAAS,CAAA;AAOhB,OAAO,KAAK,MAAM,OAAO,CAAA;AAUzB,wBAAsB,WAAW,CAAC,KAAK,EAAE,uBAAuB,8BAsZ/D"}
|
|
@@ -325,8 +325,6 @@ export async function VersionView(props) {
|
|
|
325
325
|
value: option.value
|
|
326
326
|
});
|
|
327
327
|
}
|
|
328
|
-
const useAsTitleFieldName = collectionConfig?.admin?.useAsTitle || 'id';
|
|
329
|
-
const versionToUseAsTitle = useAsTitleFieldName === 'id' ? String(versionTo.parent) : versionTo.version?.[useAsTitleFieldName];
|
|
330
328
|
return /*#__PURE__*/_jsx(DefaultVersionView, {
|
|
331
329
|
canUpdate: docPermissions?.update,
|
|
332
330
|
modifiedOnly: modifiedOnly,
|
|
@@ -342,8 +340,7 @@ export async function VersionView(props) {
|
|
|
342
340
|
labelStyle: 'pill'
|
|
343
341
|
}),
|
|
344
342
|
versionToID: versionTo.id,
|
|
345
|
-
versionToStatus: versionTo.version?._status
|
|
346
|
-
versionToUseAsTitle: versionToUseAsTitle
|
|
343
|
+
versionToStatus: versionTo.version?._status
|
|
347
344
|
});
|
|
348
345
|
}
|
|
349
346
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["formatDate","getClientConfig","getClientSchemaMap","getSchemaMap","notFound","React","DefaultVersionView","fetchLatestVersion","fetchVersion","fetchVersions","RenderDiff","getVersionLabel","VersionPillLabel","VersionView","props","hasPublishedDoc","i18n","initPageResult","routeSegments","searchParams","collectionConfig","docID","id","globalConfig","permissions","req","payload","config","localization","user","versionToID","length","collectionSlug","slug","globalSlug","draftsEnabled","versions","drafts","localeCodesFromParams","localeCodes","JSON","parse","versionFromIDFromParams","versionFrom","modifiedOnly","docPermissions","collections","globals","versionTo","depth","locale","overrideAccess","previousVersionResult","versionFromResult","currentlyPublishedVersion","latestDraftVersion","previousPublishedVersionResult","Promise","all","draft","limit","parentID","sort","where","and","updatedAt","less_than","resolve","status","equals","previousVersion","docs","previousPublishedVersion","selectedLocales","locales","code","find","push","filterAvailableLocales","map","schemaMap","clientSchemaMap","importMap","RenderedDiff","customDiffComponents","entitySlug","fieldPermissions","fields","parentIndexPath","parentIsLocalized","parentPath","parentSchemaPath","versionFromSiblingData","version","versionToSiblingData","versionToCreatedAtFormatted","date","Date","pattern","admin","dateFormat","formatPill","doc","labelOverride","labelStyle","labelSuffix","_jsx","labelFirst","versionFromOptions","t","value","publishedNewerThanDraft","some","option","a","b","getTime","versionToIsVersionFrom","versionFromComparisonOptions","isVersionTo","alreadyAdded","existingOption","otherOptionsWithSameID","filter","_jsxs","optionWithSameID","index","label","Fragment","undefined","useAsTitleFieldName","useAsTitle","versionToUseAsTitle","String","parent","canUpdate","update","versionFromCreatedAt","createdAt","versionFromID","versionToCreatedAt","VersionToCreatedAtLabel","versionToStatus","_status"],"sources":["../../../src/views/Version/index.tsx"],"sourcesContent":["import type {\n DocumentViewServerProps,\n Locale,\n SanitizedCollectionPermission,\n SanitizedGlobalPermission,\n TypeWithVersion,\n} from 'payload'\n\nimport { formatDate } from '@payloadcms/ui/shared'\nimport { getClientConfig } from '@payloadcms/ui/utilities/getClientConfig'\nimport { getClientSchemaMap } from '@payloadcms/ui/utilities/getClientSchemaMap'\nimport { getSchemaMap } from '@payloadcms/ui/utilities/getSchemaMap'\nimport { notFound } from 'next/navigation.js'\nimport React from 'react'\n\nimport type { CompareOption } from './Default/types.js'\n\nimport { DefaultVersionView } from './Default/index.js'\nimport { fetchLatestVersion, fetchVersion, fetchVersions } from './fetchVersions.js'\nimport { RenderDiff } from './RenderFieldsToDiff/index.js'\nimport { getVersionLabel } from './VersionPillLabel/getVersionLabel.js'\nimport { VersionPillLabel } from './VersionPillLabel/VersionPillLabel.js'\n\nexport async function VersionView(props: DocumentViewServerProps) {\n const { hasPublishedDoc, i18n, initPageResult, routeSegments, searchParams } = props\n\n const {\n collectionConfig,\n docID: id,\n globalConfig,\n permissions,\n req,\n req: { payload, payload: { config, config: { localization } } = {}, user } = {},\n } = initPageResult\n\n const versionToID = routeSegments[routeSegments.length - 1]\n\n const collectionSlug = collectionConfig?.slug\n const globalSlug = globalConfig?.slug\n\n const draftsEnabled = (collectionConfig ?? globalConfig)?.versions?.drafts\n\n const localeCodesFromParams = searchParams.localeCodes\n ? JSON.parse(searchParams.localeCodes as string)\n : null\n\n const versionFromIDFromParams = searchParams.versionFrom as string\n\n const modifiedOnly: boolean = searchParams.modifiedOnly === 'false' ? false : true\n\n const docPermissions: SanitizedCollectionPermission | SanitizedGlobalPermission = collectionSlug\n ? permissions.collections[collectionSlug]\n : permissions.globals[globalSlug]\n\n const versionTo = await fetchVersion<{\n _status?: string\n }>({\n id: versionToID,\n collectionSlug,\n depth: 1,\n globalSlug,\n locale: 'all',\n overrideAccess: false,\n req,\n user,\n })\n\n if (!versionTo) {\n return notFound()\n }\n\n const [\n previousVersionResult,\n versionFromResult,\n currentlyPublishedVersion,\n latestDraftVersion,\n previousPublishedVersionResult,\n ] = await Promise.all([\n // Previous version (the one before the versionTo)\n fetchVersions({\n collectionSlug,\n // If versionFromIDFromParams is provided, the previous version is only used in the version comparison dropdown => depth 0 is enough.\n // If it's not provided, this is used as `versionFrom` in the comparison, which expects populated data => depth 1 is needed.\n depth: versionFromIDFromParams ? 0 : 1,\n draft: true,\n globalSlug,\n limit: 1,\n locale: 'all',\n overrideAccess: false,\n parentID: id,\n req,\n sort: '-updatedAt',\n user,\n where: {\n and: [\n {\n updatedAt: {\n less_than: versionTo.updatedAt,\n },\n },\n ],\n },\n }),\n // Version from ID from params\n (versionFromIDFromParams\n ? fetchVersion({\n id: versionFromIDFromParams,\n collectionSlug,\n depth: 1,\n globalSlug,\n locale: 'all',\n overrideAccess: false,\n req,\n user,\n })\n : Promise.resolve(null)) as Promise<null | TypeWithVersion<object>>,\n // Currently published version - do note: currently published != latest published, as an unpublished version can be the latest published\n hasPublishedDoc\n ? fetchLatestVersion({\n collectionSlug,\n depth: 0,\n globalSlug,\n locale: 'all',\n overrideAccess: false,\n parentID: id,\n req,\n status: 'published',\n user,\n })\n : Promise.resolve(null),\n // Latest draft version\n draftsEnabled\n ? fetchLatestVersion({\n collectionSlug,\n depth: 0,\n globalSlug,\n locale: 'all',\n overrideAccess: false,\n parentID: id,\n req,\n status: 'draft',\n user,\n })\n : Promise.resolve(null),\n // Previous published version\n fetchVersions({\n collectionSlug,\n depth: 0,\n draft: true,\n globalSlug,\n limit: 1,\n locale: 'all',\n overrideAccess: false,\n parentID: id,\n req,\n sort: '-updatedAt',\n user,\n where: {\n and: [\n {\n updatedAt: {\n less_than: versionTo.updatedAt,\n },\n },\n {\n 'version._status': {\n equals: 'published',\n },\n },\n ],\n },\n }),\n ])\n\n const previousVersion: null | TypeWithVersion<object> = previousVersionResult?.docs?.[0] ?? null\n\n const versionFrom =\n versionFromResult ||\n // By default, we'll compare the previous version. => versionFrom = version previous to versionTo\n previousVersion\n\n // Previous published version before the versionTo\n const previousPublishedVersion = previousPublishedVersionResult?.docs?.[0] ?? null\n\n let selectedLocales: string[] = []\n if (localization) {\n let locales: Locale[] = []\n if (localeCodesFromParams) {\n for (const code of localeCodesFromParams) {\n const locale = localization.locales.find((locale) => locale.code === code)\n if (!locale) {\n continue\n }\n locales.push(locale)\n }\n } else {\n locales = localization.locales\n }\n\n if (localization.filterAvailableLocales) {\n locales = (await localization.filterAvailableLocales({ locales, req })) || []\n }\n\n selectedLocales = locales.map((locale) => locale.code)\n }\n\n const schemaMap = getSchemaMap({\n collectionSlug,\n config,\n globalSlug,\n i18n,\n })\n\n const clientSchemaMap = getClientSchemaMap({\n collectionSlug,\n config: getClientConfig({ config: payload.config, i18n, importMap: payload.importMap }),\n globalSlug,\n i18n,\n payload,\n schemaMap,\n })\n const RenderedDiff = RenderDiff({\n clientSchemaMap,\n customDiffComponents: {},\n entitySlug: collectionSlug || globalSlug,\n fieldPermissions: docPermissions?.fields,\n fields: (collectionConfig || globalConfig)?.fields,\n i18n,\n modifiedOnly,\n parentIndexPath: '',\n parentIsLocalized: false,\n parentPath: '',\n parentSchemaPath: '',\n req,\n selectedLocales,\n versionFromSiblingData: {\n ...versionFrom?.version,\n updatedAt: versionFrom?.updatedAt,\n },\n versionToSiblingData: {\n ...versionTo.version,\n updatedAt: versionTo.updatedAt,\n },\n })\n\n const versionToCreatedAtFormatted = versionTo.updatedAt\n ? formatDate({\n date:\n typeof versionTo.updatedAt === 'string'\n ? new Date(versionTo.updatedAt)\n : (versionTo.updatedAt as Date),\n i18n,\n pattern: config.admin.dateFormat,\n })\n : ''\n\n const formatPill = ({\n doc,\n labelOverride,\n labelStyle,\n labelSuffix,\n }: {\n doc: TypeWithVersion<any>\n labelOverride?: string\n labelStyle?: 'pill' | 'text'\n labelSuffix?: React.ReactNode\n }): React.ReactNode => {\n return (\n <VersionPillLabel\n currentlyPublishedVersion={currentlyPublishedVersion}\n doc={doc}\n key={doc.id}\n labelFirst={true}\n labelOverride={labelOverride}\n labelStyle={labelStyle ?? 'text'}\n labelSuffix={labelSuffix}\n latestDraftVersion={latestDraftVersion}\n />\n )\n }\n\n // SelectComparison Options:\n //\n // Previous version: always, unless doesn't exist. Can be the same as previously published\n // Latest draft: only if no newer published exists (latestDraftVersion)\n // Currently published: always, if exists\n // Previously published: if there is a prior published version older than versionTo\n // Specific Version: only if not already present under other label (= versionFrom)\n\n let versionFromOptions: {\n doc: TypeWithVersion<any>\n labelOverride?: string\n updatedAt: Date\n value: string\n }[] = []\n\n // Previous version\n if (previousVersion?.id) {\n versionFromOptions.push({\n doc: previousVersion,\n labelOverride: i18n.t('version:previousVersion'),\n updatedAt: new Date(previousVersion.updatedAt),\n value: previousVersion.id,\n })\n }\n\n // Latest Draft\n const publishedNewerThanDraft =\n currentlyPublishedVersion?.updatedAt > latestDraftVersion?.updatedAt\n if (latestDraftVersion && !publishedNewerThanDraft) {\n versionFromOptions.push({\n doc: latestDraftVersion,\n updatedAt: new Date(latestDraftVersion.updatedAt),\n value: latestDraftVersion.id,\n })\n }\n\n // Currently Published\n if (currentlyPublishedVersion) {\n versionFromOptions.push({\n doc: currentlyPublishedVersion,\n updatedAt: new Date(currentlyPublishedVersion.updatedAt),\n value: currentlyPublishedVersion.id,\n })\n }\n\n // Previous Published\n if (previousPublishedVersion && currentlyPublishedVersion?.id !== previousPublishedVersion.id) {\n versionFromOptions.push({\n doc: previousPublishedVersion,\n labelOverride: i18n.t('version:previouslyPublished'),\n updatedAt: new Date(previousPublishedVersion.updatedAt),\n value: previousPublishedVersion.id,\n })\n }\n\n // Specific Version\n if (versionFrom?.id && !versionFromOptions.some((option) => option.value === versionFrom.id)) {\n // Only add \"specific version\" if it is not already in the options\n versionFromOptions.push({\n doc: versionFrom,\n labelOverride: i18n.t('version:specificVersion'),\n updatedAt: new Date(versionFrom.updatedAt),\n value: versionFrom.id,\n })\n }\n\n versionFromOptions = versionFromOptions.sort((a, b) => {\n // Sort by updatedAt, newest first\n if (a && b) {\n return b.updatedAt.getTime() - a.updatedAt.getTime()\n }\n return 0\n })\n\n const versionToIsVersionFrom = versionFrom?.id === versionTo.id\n\n const versionFromComparisonOptions: CompareOption[] = []\n\n for (const option of versionFromOptions) {\n const isVersionTo = option.value === versionTo.id\n\n if (isVersionTo && !versionToIsVersionFrom) {\n // Don't offer selecting a versionFrom that is the same as versionTo, unless it's already selected\n continue\n }\n\n const alreadyAdded = versionFromComparisonOptions.some(\n (existingOption) => existingOption.value === option.value,\n )\n if (alreadyAdded) {\n continue\n }\n\n const otherOptionsWithSameID = versionFromOptions.filter(\n (existingOption) => existingOption.value === option.value && existingOption !== option,\n )\n\n // Merge options with same ID to the same option\n const labelSuffix = otherOptionsWithSameID?.length ? (\n <span key={`${option.value}-suffix`}>\n {' ('}\n {otherOptionsWithSameID.map((optionWithSameID, index) => {\n const label =\n optionWithSameID.labelOverride ||\n getVersionLabel({\n currentlyPublishedVersion,\n latestDraftVersion,\n t: i18n.t,\n version: optionWithSameID.doc,\n }).label\n\n return (\n <React.Fragment key={`${optionWithSameID.value}-${index}`}>\n {index > 0 ? ', ' : ''}\n {label}\n </React.Fragment>\n )\n })}\n {')'}\n </span>\n ) : undefined\n\n versionFromComparisonOptions.push({\n label: formatPill({\n doc: option.doc,\n labelOverride: option.labelOverride,\n labelSuffix,\n }),\n value: option.value,\n })\n }\n\n const useAsTitleFieldName = collectionConfig?.admin?.useAsTitle || 'id'\n const versionToUseAsTitle =\n useAsTitleFieldName === 'id'\n ? String(versionTo.parent)\n : versionTo.version?.[useAsTitleFieldName]\n return (\n <DefaultVersionView\n canUpdate={docPermissions?.update}\n modifiedOnly={modifiedOnly}\n RenderedDiff={RenderedDiff}\n selectedLocales={selectedLocales}\n versionFromCreatedAt={versionFrom?.createdAt}\n versionFromID={versionFrom?.id}\n versionFromOptions={versionFromComparisonOptions}\n versionToCreatedAt={versionTo.createdAt}\n versionToCreatedAtFormatted={versionToCreatedAtFormatted}\n VersionToCreatedAtLabel={formatPill({ doc: versionTo, labelStyle: 'pill' })}\n versionToID={versionTo.id}\n versionToStatus={versionTo.version?._status}\n versionToUseAsTitle={versionToUseAsTitle}\n />\n )\n}\n"],"mappings":";AAQA,SAASA,UAAU,QAAQ;AAC3B,SAASC,eAAe,QAAQ;AAChC,SAASC,kBAAkB,QAAQ;AACnC,SAASC,YAAY,QAAQ;AAC7B,SAASC,QAAQ,QAAQ;AACzB,OAAOC,KAAA,MAAW;AAIlB,SAASC,kBAAkB,QAAQ;AACnC,SAASC,kBAAkB,EAAEC,YAAY,EAAEC,aAAa,QAAQ;AAChE,SAASC,UAAU,QAAQ;AAC3B,SAASC,eAAe,QAAQ;AAChC,SAASC,gBAAgB,QAAQ;AAEjC,OAAO,eAAeC,YAAYC,KAA8B;EAC9D,MAAM;IAAEC,eAAe;IAAEC,IAAI;IAAEC,cAAc;IAAEC,aAAa;IAAEC;EAAY,CAAE,GAAGL,KAAA;EAE/E,MAAM;IACJM,gBAAgB;IAChBC,KAAA,EAAOC,EAAE;IACTC,YAAY;IACZC,WAAW;IACXC,GAAG;IACHA,GAAA,EAAK;MAAEC,OAAO;MAAEA,OAAA,EAAS;QAAEC,MAAM;QAAEA,MAAA,EAAQ;UAAEC;QAAY;MAAE,CAAE,GAAG,CAAC,CAAC;MAAEC;IAAI,CAAE,GAAG,CAAC;EAAC,CAChF,GAAGZ,cAAA;EAEJ,MAAMa,WAAA,GAAcZ,aAAa,CAACA,aAAA,CAAca,MAAM,GAAG,EAAE;EAE3D,MAAMC,cAAA,GAAiBZ,gBAAA,EAAkBa,IAAA;EACzC,MAAMC,UAAA,GAAaX,YAAA,EAAcU,IAAA;EAEjC,MAAME,aAAA,GAAiB,CAAAf,gBAAA,IAAoBG,YAAW,GAAIa,QAAA,EAAUC,MAAA;EAEpE,MAAMC,qBAAA,GAAwBnB,YAAA,CAAaoB,WAAW,GAClDC,IAAA,CAAKC,KAAK,CAACtB,YAAA,CAAaoB,WAAW,IACnC;EAEJ,MAAMG,uBAAA,GAA0BvB,YAAA,CAAawB,WAAW;EAExD,MAAMC,YAAA,GAAwBzB,YAAA,CAAayB,YAAY,KAAK,UAAU,QAAQ;EAE9E,MAAMC,cAAA,GAA4Eb,cAAA,GAC9ER,WAAA,CAAYsB,WAAW,CAACd,cAAA,CAAe,GACvCR,WAAA,CAAYuB,OAAO,CAACb,UAAA,CAAW;EAEnC,MAAMc,SAAA,GAAY,MAAMxC,YAAA,CAErB;IACDc,EAAA,EAAIQ,WAAA;IACJE,cAAA;IACAiB,KAAA,EAAO;IACPf,UAAA;IACAgB,MAAA,EAAQ;IACRC,cAAA,EAAgB;IAChB1B,GAAA;IACAI;EACF;EAEA,IAAI,CAACmB,SAAA,EAAW;IACd,OAAO5C,QAAA;EACT;EAEA,MAAM,CACJgD,qBAAA,EACAC,iBAAA,EACAC,yBAAA,EACAC,kBAAA,EACAC,8BAAA,CACD,GAAG,MAAMC,OAAA,CAAQC,GAAG,CAAC;EACpB;EACAjD,aAAA,CAAc;IACZuB,cAAA;IACA;IACA;IACAiB,KAAA,EAAOP,uBAAA,GAA0B,IAAI;IACrCiB,KAAA,EAAO;IACPzB,UAAA;IACA0B,KAAA,EAAO;IACPV,MAAA,EAAQ;IACRC,cAAA,EAAgB;IAChBU,QAAA,EAAUvC,EAAA;IACVG,GAAA;IACAqC,IAAA,EAAM;IACNjC,IAAA;IACAkC,KAAA,EAAO;MACLC,GAAA,EAAK,CACH;QACEC,SAAA,EAAW;UACTC,SAAA,EAAWlB,SAAA,CAAUiB;QACvB;MACF;IAEJ;EACF;EACA;EACCvB,uBAAA,GACGlC,YAAA,CAAa;IACXc,EAAA,EAAIoB,uBAAA;IACJV,cAAA;IACAiB,KAAA,EAAO;IACPf,UAAA;IACAgB,MAAA,EAAQ;IACRC,cAAA,EAAgB;IAChB1B,GAAA;IACAI;EACF,KACA4B,OAAA,CAAQU,OAAO,CAAC;EACpB;EACApD,eAAA,GACIR,kBAAA,CAAmB;IACjByB,cAAA;IACAiB,KAAA,EAAO;IACPf,UAAA;IACAgB,MAAA,EAAQ;IACRC,cAAA,EAAgB;IAChBU,QAAA,EAAUvC,EAAA;IACVG,GAAA;IACA2C,MAAA,EAAQ;IACRvC;EACF,KACA4B,OAAA,CAAQU,OAAO,CAAC;EACpB;EACAhC,aAAA,GACI5B,kBAAA,CAAmB;IACjByB,cAAA;IACAiB,KAAA,EAAO;IACPf,UAAA;IACAgB,MAAA,EAAQ;IACRC,cAAA,EAAgB;IAChBU,QAAA,EAAUvC,EAAA;IACVG,GAAA;IACA2C,MAAA,EAAQ;IACRvC;EACF,KACA4B,OAAA,CAAQU,OAAO,CAAC;EACpB;EACA1D,aAAA,CAAc;IACZuB,cAAA;IACAiB,KAAA,EAAO;IACPU,KAAA,EAAO;IACPzB,UAAA;IACA0B,KAAA,EAAO;IACPV,MAAA,EAAQ;IACRC,cAAA,EAAgB;IAChBU,QAAA,EAAUvC,EAAA;IACVG,GAAA;IACAqC,IAAA,EAAM;IACNjC,IAAA;IACAkC,KAAA,EAAO;MACLC,GAAA,EAAK,CACH;QACEC,SAAA,EAAW;UACTC,SAAA,EAAWlB,SAAA,CAAUiB;QACvB;MACF,GACA;QACE,mBAAmB;UACjBI,MAAA,EAAQ;QACV;MACF;IAEJ;EACF,GACD;EAED,MAAMC,eAAA,GAAkDlB,qBAAA,EAAuBmB,IAAA,GAAO,EAAE,IAAI;EAE5F,MAAM5B,WAAA,GACJU,iBAAA;EACA;EACAiB,eAAA;EAEF;EACA,MAAME,wBAAA,GAA2BhB,8BAAA,EAAgCe,IAAA,GAAO,EAAE,IAAI;EAE9E,IAAIE,eAAA,GAA4B,EAAE;EAClC,IAAI7C,YAAA,EAAc;IAChB,IAAI8C,OAAA,GAAoB,EAAE;IAC1B,IAAIpC,qBAAA,EAAuB;MACzB,KAAK,MAAMqC,IAAA,IAAQrC,qBAAA,EAAuB;QACxC,MAAMY,MAAA,GAAStB,YAAA,CAAa8C,OAAO,CAACE,IAAI,CAAE1B,MAAA,IAAWA,MAAA,CAAOyB,IAAI,KAAKA,IAAA;QACrE,IAAI,CAACzB,MAAA,EAAQ;UACX;QACF;QACAwB,OAAA,CAAQG,IAAI,CAAC3B,MAAA;MACf;IACF,OAAO;MACLwB,OAAA,GAAU9C,YAAA,CAAa8C,OAAO;IAChC;IAEA,IAAI9C,YAAA,CAAakD,sBAAsB,EAAE;MACvCJ,OAAA,GAAU,OAAO9C,YAAA,CAAakD,sBAAsB,CAAC;QAAEJ,OAAA;QAASjD;MAAI,OAAO,EAAE;IAC/E;IAEAgD,eAAA,GAAkBC,OAAA,CAAQK,GAAG,CAAE7B,MAAA,IAAWA,MAAA,CAAOyB,IAAI;EACvD;EAEA,MAAMK,SAAA,GAAY7E,YAAA,CAAa;IAC7B6B,cAAA;IACAL,MAAA;IACAO,UAAA;IACAlB;EACF;EAEA,MAAMiE,eAAA,GAAkB/E,kBAAA,CAAmB;IACzC8B,cAAA;IACAL,MAAA,EAAQ1B,eAAA,CAAgB;MAAE0B,MAAA,EAAQD,OAAA,CAAQC,MAAM;MAAEX,IAAA;MAAMkE,SAAA,EAAWxD,OAAA,CAAQwD;IAAU;IACrFhD,UAAA;IACAlB,IAAA;IACAU,OAAA;IACAsD;EACF;EACA,MAAMG,YAAA,GAAezE,UAAA,CAAW;IAC9BuE,eAAA;IACAG,oBAAA,EAAsB,CAAC;IACvBC,UAAA,EAAYrD,cAAA,IAAkBE,UAAA;IAC9BoD,gBAAA,EAAkBzC,cAAA,EAAgB0C,MAAA;IAClCA,MAAA,EAAS,CAAAnE,gBAAA,IAAoBG,YAAW,GAAIgE,MAAA;IAC5CvE,IAAA;IACA4B,YAAA;IACA4C,eAAA,EAAiB;IACjBC,iBAAA,EAAmB;IACnBC,UAAA,EAAY;IACZC,gBAAA,EAAkB;IAClBlE,GAAA;IACAgD,eAAA;IACAmB,sBAAA,EAAwB;MACtB,GAAGjD,WAAA,EAAakD,OAAO;MACvB5B,SAAA,EAAWtB,WAAA,EAAasB;IAC1B;IACA6B,oBAAA,EAAsB;MACpB,GAAG9C,SAAA,CAAU6C,OAAO;MACpB5B,SAAA,EAAWjB,SAAA,CAAUiB;IACvB;EACF;EAEA,MAAM8B,2BAAA,GAA8B/C,SAAA,CAAUiB,SAAS,GACnDjE,UAAA,CAAW;IACTgG,IAAA,EACE,OAAOhD,SAAA,CAAUiB,SAAS,KAAK,WAC3B,IAAIgC,IAAA,CAAKjD,SAAA,CAAUiB,SAAS,IAC3BjB,SAAA,CAAUiB,SAAS;IAC1BjD,IAAA;IACAkF,OAAA,EAASvE,MAAA,CAAOwE,KAAK,CAACC;EACxB,KACA;EAEJ,MAAMC,UAAA,GAAaA,CAAC;IAClBC,GAAG;IACHC,aAAa;IACbC,UAAU;IACVC;EAAW,CAMZ;IACC,oBACEC,IAAA,CAAC9F,gBAAA;MACC0C,yBAAA,EAA2BA,yBAAA;MAC3BgD,GAAA,EAAKA,GAAA;MAELK,UAAA,EAAY;MACZJ,aAAA,EAAeA,aAAA;MACfC,UAAA,EAAYA,UAAA,IAAc;MAC1BC,WAAA,EAAaA,WAAA;MACblD,kBAAA,EAAoBA;OALf+C,GAAA,CAAIhF,EAAE;EAQjB;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA,IAAIsF,kBAAA,GAKE,EAAE;EAER;EACA,IAAItC,eAAA,EAAiBhD,EAAA,EAAI;IACvBsF,kBAAA,CAAmB/B,IAAI,CAAC;MACtByB,GAAA,EAAKhC,eAAA;MACLiC,aAAA,EAAevF,IAAA,CAAK6F,CAAC,CAAC;MACtB5C,SAAA,EAAW,IAAIgC,IAAA,CAAK3B,eAAA,CAAgBL,SAAS;MAC7C6C,KAAA,EAAOxC,eAAA,CAAgBhD;IACzB;EACF;EAEA;EACA,MAAMyF,uBAAA,GACJzD,yBAAA,EAA2BW,SAAA,GAAYV,kBAAA,EAAoBU,SAAA;EAC7D,IAAIV,kBAAA,IAAsB,CAACwD,uBAAA,EAAyB;IAClDH,kBAAA,CAAmB/B,IAAI,CAAC;MACtByB,GAAA,EAAK/C,kBAAA;MACLU,SAAA,EAAW,IAAIgC,IAAA,CAAK1C,kBAAA,CAAmBU,SAAS;MAChD6C,KAAA,EAAOvD,kBAAA,CAAmBjC;IAC5B;EACF;EAEA;EACA,IAAIgC,yBAAA,EAA2B;IAC7BsD,kBAAA,CAAmB/B,IAAI,CAAC;MACtByB,GAAA,EAAKhD,yBAAA;MACLW,SAAA,EAAW,IAAIgC,IAAA,CAAK3C,yBAAA,CAA0BW,SAAS;MACvD6C,KAAA,EAAOxD,yBAAA,CAA0BhC;IACnC;EACF;EAEA;EACA,IAAIkD,wBAAA,IAA4BlB,yBAAA,EAA2BhC,EAAA,KAAOkD,wBAAA,CAAyBlD,EAAE,EAAE;IAC7FsF,kBAAA,CAAmB/B,IAAI,CAAC;MACtByB,GAAA,EAAK9B,wBAAA;MACL+B,aAAA,EAAevF,IAAA,CAAK6F,CAAC,CAAC;MACtB5C,SAAA,EAAW,IAAIgC,IAAA,CAAKzB,wBAAA,CAAyBP,SAAS;MACtD6C,KAAA,EAAOtC,wBAAA,CAAyBlD;IAClC;EACF;EAEA;EACA,IAAIqB,WAAA,EAAarB,EAAA,IAAM,CAACsF,kBAAA,CAAmBI,IAAI,CAAEC,MAAA,IAAWA,MAAA,CAAOH,KAAK,KAAKnE,WAAA,CAAYrB,EAAE,GAAG;IAC5F;IACAsF,kBAAA,CAAmB/B,IAAI,CAAC;MACtByB,GAAA,EAAK3D,WAAA;MACL4D,aAAA,EAAevF,IAAA,CAAK6F,CAAC,CAAC;MACtB5C,SAAA,EAAW,IAAIgC,IAAA,CAAKtD,WAAA,CAAYsB,SAAS;MACzC6C,KAAA,EAAOnE,WAAA,CAAYrB;IACrB;EACF;EAEAsF,kBAAA,GAAqBA,kBAAA,CAAmB9C,IAAI,CAAC,CAACoD,CAAA,EAAGC,CAAA;IAC/C;IACA,IAAID,CAAA,IAAKC,CAAA,EAAG;MACV,OAAOA,CAAA,CAAElD,SAAS,CAACmD,OAAO,KAAKF,CAAA,CAAEjD,SAAS,CAACmD,OAAO;IACpD;IACA,OAAO;EACT;EAEA,MAAMC,sBAAA,GAAyB1E,WAAA,EAAarB,EAAA,KAAO0B,SAAA,CAAU1B,EAAE;EAE/D,MAAMgG,4BAAA,GAAgD,EAAE;EAExD,KAAK,MAAML,MAAA,IAAUL,kBAAA,EAAoB;IACvC,MAAMW,WAAA,GAAcN,MAAA,CAAOH,KAAK,KAAK9D,SAAA,CAAU1B,EAAE;IAEjD,IAAIiG,WAAA,IAAe,CAACF,sBAAA,EAAwB;MAE1C;IACF;IAEA,MAAMG,YAAA,GAAeF,4BAAA,CAA6BN,IAAI,CACnDS,cAAA,IAAmBA,cAAA,CAAeX,KAAK,KAAKG,MAAA,CAAOH,KAAK;IAE3D,IAAIU,YAAA,EAAc;MAChB;IACF;IAEA,MAAME,sBAAA,GAAyBd,kBAAA,CAAmBe,MAAM,CACrDF,cAAA,IAAmBA,cAAA,CAAeX,KAAK,KAAKG,MAAA,CAAOH,KAAK,IAAIW,cAAA,KAAmBR,MAAA;IAGlF;IACA,MAAMR,WAAA,GAAciB,sBAAA,EAAwB3F,MAAA,gBAC1C6F,KAAA,CAAC;iBACE,MACAF,sBAAA,CAAuB3C,GAAG,CAAC,CAAC8C,gBAAA,EAAkBC,KAAA;QAC7C,MAAMC,KAAA,GACJF,gBAAA,CAAiBtB,aAAa,IAC9B5F,eAAA,CAAgB;UACd2C,yBAAA;UACAC,kBAAA;UACAsD,CAAA,EAAG7F,IAAA,CAAK6F,CAAC;UACThB,OAAA,EAASgC,gBAAA,CAAiBvB;QAC5B,GAAGyB,KAAK;QAEV,oBACEH,KAAA,CAACvH,KAAA,CAAM2H,QAAQ;qBACZF,KAAA,GAAQ,IAAI,OAAO,IACnBC,KAAA;WAFkB,GAAGF,gBAAA,CAAiBf,KAAK,IAAIgB,KAAA,EAAO;MAK7D,IACC;OAnBQ,GAAGb,MAAA,CAAOH,KAAK,SAAS,IAqBjCmB,SAAA;IAEJX,4BAAA,CAA6BzC,IAAI,CAAC;MAChCkD,KAAA,EAAO1B,UAAA,CAAW;QAChBC,GAAA,EAAKW,MAAA,CAAOX,GAAG;QACfC,aAAA,EAAeU,MAAA,CAAOV,aAAa;QACnCE;MACF;MACAK,KAAA,EAAOG,MAAA,CAAOH;IAChB;EACF;EAEA,MAAMoB,mBAAA,GAAsB9G,gBAAA,EAAkB+E,KAAA,EAAOgC,UAAA,IAAc;EACnE,MAAMC,mBAAA,GACJF,mBAAA,KAAwB,OACpBG,MAAA,CAAOrF,SAAA,CAAUsF,MAAM,IACvBtF,SAAA,CAAU6C,OAAO,GAAGqC,mBAAA,CAAoB;EAC9C,oBACExB,IAAA,CAACpG,kBAAA;IACCiI,SAAA,EAAW1F,cAAA,EAAgB2F,MAAA;IAC3B5F,YAAA,EAAcA,YAAA;IACduC,YAAA,EAAcA,YAAA;IACdV,eAAA,EAAiBA,eAAA;IACjBgE,oBAAA,EAAsB9F,WAAA,EAAa+F,SAAA;IACnCC,aAAA,EAAehG,WAAA,EAAarB,EAAA;IAC5BsF,kBAAA,EAAoBU,4BAAA;IACpBsB,kBAAA,EAAoB5F,SAAA,CAAU0F,SAAS;IACvC3C,2BAAA,EAA6BA,2BAAA;IAC7B8C,uBAAA,EAAyBxC,UAAA,CAAW;MAAEC,GAAA,EAAKtD,SAAA;MAAWwD,UAAA,EAAY;IAAO;IACzE1E,WAAA,EAAakB,SAAA,CAAU1B,EAAE;IACzBwH,eAAA,EAAiB9F,SAAA,CAAU6C,OAAO,EAAEkD,OAAA;IACpCX,mBAAA,EAAqBA;;AAG3B","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["formatDate","getClientConfig","getClientSchemaMap","getSchemaMap","notFound","React","DefaultVersionView","fetchLatestVersion","fetchVersion","fetchVersions","RenderDiff","getVersionLabel","VersionPillLabel","VersionView","props","hasPublishedDoc","i18n","initPageResult","routeSegments","searchParams","collectionConfig","docID","id","globalConfig","permissions","req","payload","config","localization","user","versionToID","length","collectionSlug","slug","globalSlug","draftsEnabled","versions","drafts","localeCodesFromParams","localeCodes","JSON","parse","versionFromIDFromParams","versionFrom","modifiedOnly","docPermissions","collections","globals","versionTo","depth","locale","overrideAccess","previousVersionResult","versionFromResult","currentlyPublishedVersion","latestDraftVersion","previousPublishedVersionResult","Promise","all","draft","limit","parentID","sort","where","and","updatedAt","less_than","resolve","status","equals","previousVersion","docs","previousPublishedVersion","selectedLocales","locales","code","find","push","filterAvailableLocales","map","schemaMap","clientSchemaMap","importMap","RenderedDiff","customDiffComponents","entitySlug","fieldPermissions","fields","parentIndexPath","parentIsLocalized","parentPath","parentSchemaPath","versionFromSiblingData","version","versionToSiblingData","versionToCreatedAtFormatted","date","Date","pattern","admin","dateFormat","formatPill","doc","labelOverride","labelStyle","labelSuffix","_jsx","labelFirst","versionFromOptions","t","value","publishedNewerThanDraft","some","option","a","b","getTime","versionToIsVersionFrom","versionFromComparisonOptions","isVersionTo","alreadyAdded","existingOption","otherOptionsWithSameID","filter","_jsxs","optionWithSameID","index","label","Fragment","undefined","canUpdate","update","versionFromCreatedAt","createdAt","versionFromID","versionToCreatedAt","VersionToCreatedAtLabel","versionToStatus","_status"],"sources":["../../../src/views/Version/index.tsx"],"sourcesContent":["import type {\n DocumentViewServerProps,\n Locale,\n SanitizedCollectionPermission,\n SanitizedGlobalPermission,\n TypeWithVersion,\n} from 'payload'\n\nimport { formatDate } from '@payloadcms/ui/shared'\nimport { getClientConfig } from '@payloadcms/ui/utilities/getClientConfig'\nimport { getClientSchemaMap } from '@payloadcms/ui/utilities/getClientSchemaMap'\nimport { getSchemaMap } from '@payloadcms/ui/utilities/getSchemaMap'\nimport { notFound } from 'next/navigation.js'\nimport React from 'react'\n\nimport type { CompareOption } from './Default/types.js'\n\nimport { DefaultVersionView } from './Default/index.js'\nimport { fetchLatestVersion, fetchVersion, fetchVersions } from './fetchVersions.js'\nimport { RenderDiff } from './RenderFieldsToDiff/index.js'\nimport { getVersionLabel } from './VersionPillLabel/getVersionLabel.js'\nimport { VersionPillLabel } from './VersionPillLabel/VersionPillLabel.js'\n\nexport async function VersionView(props: DocumentViewServerProps) {\n const { hasPublishedDoc, i18n, initPageResult, routeSegments, searchParams } = props\n\n const {\n collectionConfig,\n docID: id,\n globalConfig,\n permissions,\n req,\n req: { payload, payload: { config, config: { localization } } = {}, user } = {},\n } = initPageResult\n\n const versionToID = routeSegments[routeSegments.length - 1]\n\n const collectionSlug = collectionConfig?.slug\n const globalSlug = globalConfig?.slug\n\n const draftsEnabled = (collectionConfig ?? globalConfig)?.versions?.drafts\n\n const localeCodesFromParams = searchParams.localeCodes\n ? JSON.parse(searchParams.localeCodes as string)\n : null\n\n const versionFromIDFromParams = searchParams.versionFrom as string\n\n const modifiedOnly: boolean = searchParams.modifiedOnly === 'false' ? false : true\n\n const docPermissions: SanitizedCollectionPermission | SanitizedGlobalPermission = collectionSlug\n ? permissions.collections[collectionSlug]\n : permissions.globals[globalSlug]\n\n const versionTo = await fetchVersion<{\n _status?: string\n }>({\n id: versionToID,\n collectionSlug,\n depth: 1,\n globalSlug,\n locale: 'all',\n overrideAccess: false,\n req,\n user,\n })\n\n if (!versionTo) {\n return notFound()\n }\n\n const [\n previousVersionResult,\n versionFromResult,\n currentlyPublishedVersion,\n latestDraftVersion,\n previousPublishedVersionResult,\n ] = await Promise.all([\n // Previous version (the one before the versionTo)\n fetchVersions({\n collectionSlug,\n // If versionFromIDFromParams is provided, the previous version is only used in the version comparison dropdown => depth 0 is enough.\n // If it's not provided, this is used as `versionFrom` in the comparison, which expects populated data => depth 1 is needed.\n depth: versionFromIDFromParams ? 0 : 1,\n draft: true,\n globalSlug,\n limit: 1,\n locale: 'all',\n overrideAccess: false,\n parentID: id,\n req,\n sort: '-updatedAt',\n user,\n where: {\n and: [\n {\n updatedAt: {\n less_than: versionTo.updatedAt,\n },\n },\n ],\n },\n }),\n // Version from ID from params\n (versionFromIDFromParams\n ? fetchVersion({\n id: versionFromIDFromParams,\n collectionSlug,\n depth: 1,\n globalSlug,\n locale: 'all',\n overrideAccess: false,\n req,\n user,\n })\n : Promise.resolve(null)) as Promise<null | TypeWithVersion<object>>,\n // Currently published version - do note: currently published != latest published, as an unpublished version can be the latest published\n hasPublishedDoc\n ? fetchLatestVersion({\n collectionSlug,\n depth: 0,\n globalSlug,\n locale: 'all',\n overrideAccess: false,\n parentID: id,\n req,\n status: 'published',\n user,\n })\n : Promise.resolve(null),\n // Latest draft version\n draftsEnabled\n ? fetchLatestVersion({\n collectionSlug,\n depth: 0,\n globalSlug,\n locale: 'all',\n overrideAccess: false,\n parentID: id,\n req,\n status: 'draft',\n user,\n })\n : Promise.resolve(null),\n // Previous published version\n fetchVersions({\n collectionSlug,\n depth: 0,\n draft: true,\n globalSlug,\n limit: 1,\n locale: 'all',\n overrideAccess: false,\n parentID: id,\n req,\n sort: '-updatedAt',\n user,\n where: {\n and: [\n {\n updatedAt: {\n less_than: versionTo.updatedAt,\n },\n },\n {\n 'version._status': {\n equals: 'published',\n },\n },\n ],\n },\n }),\n ])\n\n const previousVersion: null | TypeWithVersion<object> = previousVersionResult?.docs?.[0] ?? null\n\n const versionFrom =\n versionFromResult ||\n // By default, we'll compare the previous version. => versionFrom = version previous to versionTo\n previousVersion\n\n // Previous published version before the versionTo\n const previousPublishedVersion = previousPublishedVersionResult?.docs?.[0] ?? null\n\n let selectedLocales: string[] = []\n if (localization) {\n let locales: Locale[] = []\n if (localeCodesFromParams) {\n for (const code of localeCodesFromParams) {\n const locale = localization.locales.find((locale) => locale.code === code)\n if (!locale) {\n continue\n }\n locales.push(locale)\n }\n } else {\n locales = localization.locales\n }\n\n if (localization.filterAvailableLocales) {\n locales = (await localization.filterAvailableLocales({ locales, req })) || []\n }\n\n selectedLocales = locales.map((locale) => locale.code)\n }\n\n const schemaMap = getSchemaMap({\n collectionSlug,\n config,\n globalSlug,\n i18n,\n })\n\n const clientSchemaMap = getClientSchemaMap({\n collectionSlug,\n config: getClientConfig({ config: payload.config, i18n, importMap: payload.importMap }),\n globalSlug,\n i18n,\n payload,\n schemaMap,\n })\n const RenderedDiff = RenderDiff({\n clientSchemaMap,\n customDiffComponents: {},\n entitySlug: collectionSlug || globalSlug,\n fieldPermissions: docPermissions?.fields,\n fields: (collectionConfig || globalConfig)?.fields,\n i18n,\n modifiedOnly,\n parentIndexPath: '',\n parentIsLocalized: false,\n parentPath: '',\n parentSchemaPath: '',\n req,\n selectedLocales,\n versionFromSiblingData: {\n ...versionFrom?.version,\n updatedAt: versionFrom?.updatedAt,\n },\n versionToSiblingData: {\n ...versionTo.version,\n updatedAt: versionTo.updatedAt,\n },\n })\n\n const versionToCreatedAtFormatted = versionTo.updatedAt\n ? formatDate({\n date:\n typeof versionTo.updatedAt === 'string'\n ? new Date(versionTo.updatedAt)\n : (versionTo.updatedAt as Date),\n i18n,\n pattern: config.admin.dateFormat,\n })\n : ''\n\n const formatPill = ({\n doc,\n labelOverride,\n labelStyle,\n labelSuffix,\n }: {\n doc: TypeWithVersion<any>\n labelOverride?: string\n labelStyle?: 'pill' | 'text'\n labelSuffix?: React.ReactNode\n }): React.ReactNode => {\n return (\n <VersionPillLabel\n currentlyPublishedVersion={currentlyPublishedVersion}\n doc={doc}\n key={doc.id}\n labelFirst={true}\n labelOverride={labelOverride}\n labelStyle={labelStyle ?? 'text'}\n labelSuffix={labelSuffix}\n latestDraftVersion={latestDraftVersion}\n />\n )\n }\n\n // SelectComparison Options:\n //\n // Previous version: always, unless doesn't exist. Can be the same as previously published\n // Latest draft: only if no newer published exists (latestDraftVersion)\n // Currently published: always, if exists\n // Previously published: if there is a prior published version older than versionTo\n // Specific Version: only if not already present under other label (= versionFrom)\n\n let versionFromOptions: {\n doc: TypeWithVersion<any>\n labelOverride?: string\n updatedAt: Date\n value: string\n }[] = []\n\n // Previous version\n if (previousVersion?.id) {\n versionFromOptions.push({\n doc: previousVersion,\n labelOverride: i18n.t('version:previousVersion'),\n updatedAt: new Date(previousVersion.updatedAt),\n value: previousVersion.id,\n })\n }\n\n // Latest Draft\n const publishedNewerThanDraft =\n currentlyPublishedVersion?.updatedAt > latestDraftVersion?.updatedAt\n if (latestDraftVersion && !publishedNewerThanDraft) {\n versionFromOptions.push({\n doc: latestDraftVersion,\n updatedAt: new Date(latestDraftVersion.updatedAt),\n value: latestDraftVersion.id,\n })\n }\n\n // Currently Published\n if (currentlyPublishedVersion) {\n versionFromOptions.push({\n doc: currentlyPublishedVersion,\n updatedAt: new Date(currentlyPublishedVersion.updatedAt),\n value: currentlyPublishedVersion.id,\n })\n }\n\n // Previous Published\n if (previousPublishedVersion && currentlyPublishedVersion?.id !== previousPublishedVersion.id) {\n versionFromOptions.push({\n doc: previousPublishedVersion,\n labelOverride: i18n.t('version:previouslyPublished'),\n updatedAt: new Date(previousPublishedVersion.updatedAt),\n value: previousPublishedVersion.id,\n })\n }\n\n // Specific Version\n if (versionFrom?.id && !versionFromOptions.some((option) => option.value === versionFrom.id)) {\n // Only add \"specific version\" if it is not already in the options\n versionFromOptions.push({\n doc: versionFrom,\n labelOverride: i18n.t('version:specificVersion'),\n updatedAt: new Date(versionFrom.updatedAt),\n value: versionFrom.id,\n })\n }\n\n versionFromOptions = versionFromOptions.sort((a, b) => {\n // Sort by updatedAt, newest first\n if (a && b) {\n return b.updatedAt.getTime() - a.updatedAt.getTime()\n }\n return 0\n })\n\n const versionToIsVersionFrom = versionFrom?.id === versionTo.id\n\n const versionFromComparisonOptions: CompareOption[] = []\n\n for (const option of versionFromOptions) {\n const isVersionTo = option.value === versionTo.id\n\n if (isVersionTo && !versionToIsVersionFrom) {\n // Don't offer selecting a versionFrom that is the same as versionTo, unless it's already selected\n continue\n }\n\n const alreadyAdded = versionFromComparisonOptions.some(\n (existingOption) => existingOption.value === option.value,\n )\n if (alreadyAdded) {\n continue\n }\n\n const otherOptionsWithSameID = versionFromOptions.filter(\n (existingOption) => existingOption.value === option.value && existingOption !== option,\n )\n\n // Merge options with same ID to the same option\n const labelSuffix = otherOptionsWithSameID?.length ? (\n <span key={`${option.value}-suffix`}>\n {' ('}\n {otherOptionsWithSameID.map((optionWithSameID, index) => {\n const label =\n optionWithSameID.labelOverride ||\n getVersionLabel({\n currentlyPublishedVersion,\n latestDraftVersion,\n t: i18n.t,\n version: optionWithSameID.doc,\n }).label\n\n return (\n <React.Fragment key={`${optionWithSameID.value}-${index}`}>\n {index > 0 ? ', ' : ''}\n {label}\n </React.Fragment>\n )\n })}\n {')'}\n </span>\n ) : undefined\n\n versionFromComparisonOptions.push({\n label: formatPill({\n doc: option.doc,\n labelOverride: option.labelOverride,\n labelSuffix,\n }),\n value: option.value,\n })\n }\n\n return (\n <DefaultVersionView\n canUpdate={docPermissions?.update}\n modifiedOnly={modifiedOnly}\n RenderedDiff={RenderedDiff}\n selectedLocales={selectedLocales}\n versionFromCreatedAt={versionFrom?.createdAt}\n versionFromID={versionFrom?.id}\n versionFromOptions={versionFromComparisonOptions}\n versionToCreatedAt={versionTo.createdAt}\n versionToCreatedAtFormatted={versionToCreatedAtFormatted}\n VersionToCreatedAtLabel={formatPill({ doc: versionTo, labelStyle: 'pill' })}\n versionToID={versionTo.id}\n versionToStatus={versionTo.version?._status}\n />\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@payloadcms/next",
|
|
3
|
-
"version": "3.55.0-canary.
|
|
3
|
+
"version": "3.55.0-canary.9",
|
|
4
4
|
"homepage": "https://payloadcms.com",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -87,9 +87,9 @@
|
|
|
87
87
|
"qs-esm": "7.0.2",
|
|
88
88
|
"sass": "1.77.4",
|
|
89
89
|
"uuid": "10.0.0",
|
|
90
|
-
"@payloadcms/graphql": "3.55.0-canary.
|
|
91
|
-
"@payloadcms/translations": "3.55.0-canary.
|
|
92
|
-
"@payloadcms/ui": "3.55.0-canary.
|
|
90
|
+
"@payloadcms/graphql": "3.55.0-canary.9",
|
|
91
|
+
"@payloadcms/translations": "3.55.0-canary.9",
|
|
92
|
+
"@payloadcms/ui": "3.55.0-canary.9"
|
|
93
93
|
},
|
|
94
94
|
"devDependencies": {
|
|
95
95
|
"@babel/cli": "7.27.2",
|
|
@@ -107,12 +107,12 @@
|
|
|
107
107
|
"esbuild-sass-plugin": "3.3.1",
|
|
108
108
|
"swc-plugin-transform-remove-imports": "4.0.4",
|
|
109
109
|
"@payloadcms/eslint-config": "3.28.0",
|
|
110
|
-
"payload": "3.55.0-canary.
|
|
110
|
+
"payload": "3.55.0-canary.9"
|
|
111
111
|
},
|
|
112
112
|
"peerDependencies": {
|
|
113
113
|
"graphql": "^16.8.1",
|
|
114
114
|
"next": "^15.2.3",
|
|
115
|
-
"payload": "3.55.0-canary.
|
|
115
|
+
"payload": "3.55.0-canary.9"
|
|
116
116
|
},
|
|
117
117
|
"engines": {
|
|
118
118
|
"node": "^18.20.2 || >=20.9.0"
|