@payloadcms/next 3.55.0-internal.f8c92b5 → 3.56.0-internal.299316b
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/auth/refresh.js +8 -8
- package/dist/auth/refresh.js.map +1 -1
- package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js +41 -19
- package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js.map +1 -1
- package/dist/elements/Nav/index.client.js +48 -28
- package/dist/elements/Nav/index.client.js.map +1 -1
- package/dist/layouts/Root/index.d.ts.map +1 -1
- package/dist/layouts/Root/index.js +2 -1
- package/dist/layouts/Root/index.js.map +1 -1
- package/dist/prod/styles.css +1 -1
- package/dist/utilities/getRouteWithoutAdmin.d.ts +5 -0
- package/dist/utilities/getRouteWithoutAdmin.d.ts.map +1 -0
- package/dist/utilities/getRouteWithoutAdmin.js +7 -0
- package/dist/utilities/getRouteWithoutAdmin.js.map +1 -0
- package/dist/utilities/getVisibleEntities.d.ts +5 -0
- package/dist/utilities/getVisibleEntities.d.ts.map +1 -0
- package/dist/utilities/getVisibleEntities.js +26 -0
- package/dist/utilities/getVisibleEntities.js.map +1 -0
- package/dist/utilities/handleAuthRedirect.d.ts.map +1 -0
- package/dist/utilities/handleAuthRedirect.js.map +1 -0
- package/dist/utilities/handleServerFunctions.d.ts.map +1 -1
- package/dist/utilities/handleServerFunctions.js +2 -7
- package/dist/utilities/handleServerFunctions.js.map +1 -1
- package/dist/utilities/isCustomAdminView.d.ts.map +1 -0
- package/dist/utilities/{initPage/isCustomAdminView.js → isCustomAdminView.js} +1 -1
- package/dist/utilities/isCustomAdminView.js.map +1 -0
- package/dist/utilities/isPublicAdminRoute.d.ts +7 -0
- package/dist/utilities/isPublicAdminRoute.d.ts.map +1 -0
- package/dist/utilities/{initPage/shared.js → isPublicAdminRoute.js} +2 -13
- package/dist/utilities/isPublicAdminRoute.js.map +1 -0
- package/dist/views/CollectionFolders/buildView.d.ts.map +1 -1
- package/dist/views/CollectionFolders/buildView.js +1 -1
- package/dist/views/CollectionFolders/buildView.js.map +1 -1
- package/dist/views/CreateFirstUser/index.d.ts.map +1 -1
- package/dist/views/CreateFirstUser/index.js +16 -11
- package/dist/views/CreateFirstUser/index.js.map +1 -1
- package/dist/views/Document/handleServerFunction.d.ts.map +1 -1
- package/dist/views/Document/handleServerFunction.js +2 -1
- package/dist/views/Document/handleServerFunction.js.map +1 -1
- package/dist/views/List/handleGroupBy.d.ts +4 -2
- package/dist/views/List/handleGroupBy.d.ts.map +1 -1
- package/dist/views/List/handleGroupBy.js +3 -1
- package/dist/views/List/handleGroupBy.js.map +1 -1
- package/dist/views/List/handleServerFunction.d.ts.map +1 -1
- package/dist/views/List/handleServerFunction.js +2 -1
- package/dist/views/List/handleServerFunction.js.map +1 -1
- package/dist/views/List/index.d.ts.map +1 -1
- package/dist/views/List/index.js +17 -4
- package/dist/views/List/index.js.map +1 -1
- package/dist/views/List/transformColumnsToSelect.d.ts +3 -0
- package/dist/views/List/transformColumnsToSelect.d.ts.map +1 -0
- package/dist/views/List/transformColumnsToSelect.js +7 -0
- package/dist/views/List/transformColumnsToSelect.js.map +1 -0
- package/dist/views/Logout/LogoutClient.js +31 -29
- package/dist/views/Logout/LogoutClient.js.map +1 -1
- package/dist/views/NotFound/index.d.ts +0 -8
- package/dist/views/NotFound/index.d.ts.map +1 -1
- package/dist/views/NotFound/index.js +40 -18
- package/dist/views/NotFound/index.js.map +1 -1
- package/dist/views/Root/SyncClientConfig.d.ts +11 -0
- package/dist/views/Root/SyncClientConfig.d.ts.map +1 -0
- package/dist/views/Root/SyncClientConfig.js +38 -0
- package/dist/views/Root/SyncClientConfig.js.map +1 -0
- package/dist/views/Root/attachViewActions.d.ts +4 -5
- package/dist/views/Root/attachViewActions.d.ts.map +1 -1
- package/dist/views/Root/attachViewActions.js +5 -7
- package/dist/views/Root/attachViewActions.js.map +1 -1
- package/dist/views/Root/getRouteData.d.ts +33 -16
- package/dist/views/Root/getRouteData.d.ts.map +1 -1
- package/dist/views/Root/getRouteData.js +122 -103
- package/dist/views/Root/getRouteData.js.map +1 -1
- package/dist/views/Root/index.d.ts +1 -1
- package/dist/views/Root/index.d.ts.map +1 -1
- package/dist/views/Root/index.js +173 -78
- package/dist/views/Root/index.js.map +1 -1
- 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/DiffCollapser/index.js +28 -12
- package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.d.ts +3 -5
- package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.d.ts.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js +59 -37
- package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.js +27 -17
- package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.js +31 -21
- package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js +33 -23
- package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/generateLabelFromValue.d.ts +2 -2
- package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/generateLabelFromValue.d.ts.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/generateLabelFromValue.js +7 -4
- package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/generateLabelFromValue.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.d.ts +5 -5
- package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.d.ts.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js +30 -21
- package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.d.ts +6 -4
- package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.d.ts.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.js +15 -6
- package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.js.map +1 -1
- package/dist/views/Version/SelectComparison/VersionDrawer/CreatedAtCell.js +50 -16
- package/dist/views/Version/SelectComparison/VersionDrawer/CreatedAtCell.js.map +1 -1
- package/dist/views/Version/SelectComparison/VersionDrawer/index.js +12 -8
- package/dist/views/Version/SelectComparison/VersionDrawer/index.js.map +1 -1
- package/dist/views/Version/index.d.ts.map +1 -1
- package/dist/views/Version/index.js +4 -6
- package/dist/views/Version/index.js.map +1 -1
- package/dist/views/Versions/cells/AutosaveCell/index.d.ts +1 -0
- package/dist/views/Versions/cells/AutosaveCell/index.d.ts.map +1 -1
- package/dist/views/Versions/cells/AutosaveCell/index.js +23 -14
- package/dist/views/Versions/cells/AutosaveCell/index.js.map +1 -1
- package/dist/views/Versions/cells/CreatedAt/index.js +53 -27
- package/dist/views/Versions/cells/CreatedAt/index.js.map +1 -1
- package/package.json +9 -9
- package/dist/utilities/initPage/handleAdminPage.d.ts +0 -18
- package/dist/utilities/initPage/handleAdminPage.d.ts.map +0 -1
- package/dist/utilities/initPage/handleAdminPage.js +0 -57
- package/dist/utilities/initPage/handleAdminPage.js.map +0 -1
- package/dist/utilities/initPage/handleAuthRedirect.d.ts.map +0 -1
- package/dist/utilities/initPage/handleAuthRedirect.js.map +0 -1
- package/dist/utilities/initPage/index.d.ts +0 -4
- package/dist/utilities/initPage/index.d.ts.map +0 -1
- package/dist/utilities/initPage/index.js +0 -127
- package/dist/utilities/initPage/index.js.map +0 -1
- package/dist/utilities/initPage/isCustomAdminView.d.ts.map +0 -1
- package/dist/utilities/initPage/isCustomAdminView.js.map +0 -1
- package/dist/utilities/initPage/shared.d.ts +0 -16
- package/dist/utilities/initPage/shared.d.ts.map +0 -1
- package/dist/utilities/initPage/shared.js.map +0 -1
- package/dist/utilities/initPage/types.d.ts +0 -44
- package/dist/utilities/initPage/types.d.ts.map +0 -1
- package/dist/utilities/initPage/types.js +0 -2
- package/dist/utilities/initPage/types.js.map +0 -1
- /package/dist/utilities/{initPage/handleAuthRedirect.d.ts → handleAuthRedirect.d.ts} +0 -0
- /package/dist/utilities/{initPage/handleAuthRedirect.js → handleAuthRedirect.js} +0 -0
- /package/dist/utilities/{initPage/isCustomAdminView.d.ts → isCustomAdminView.d.ts} +0 -0
|
@@ -10,7 +10,7 @@ import { DiffCollapser } from '../../DiffCollapser/index.js';
|
|
|
10
10
|
import { RenderVersionFieldsToDiff } from '../../RenderVersionFieldsToDiff.js';
|
|
11
11
|
const baseClass = 'collapsible-diff';
|
|
12
12
|
export const Collapsible = t0 => {
|
|
13
|
-
const $ = _c(
|
|
13
|
+
const $ = _c(11);
|
|
14
14
|
const {
|
|
15
15
|
baseVersionField,
|
|
16
16
|
comparisonValue: valueFrom,
|
|
@@ -28,16 +28,26 @@ export const Collapsible = t0 => {
|
|
|
28
28
|
return null;
|
|
29
29
|
}
|
|
30
30
|
let t1;
|
|
31
|
-
if ($[0] !==
|
|
32
|
-
t1 = _jsx("
|
|
31
|
+
if ($[0] !== field || $[1] !== i18n) {
|
|
32
|
+
t1 = "label" in field && field.label && typeof field.label !== "function" && _jsx("span", {
|
|
33
|
+
children: getTranslation(field.label, i18n)
|
|
34
|
+
});
|
|
35
|
+
$[0] = field;
|
|
36
|
+
$[1] = i18n;
|
|
37
|
+
$[2] = t1;
|
|
38
|
+
} else {
|
|
39
|
+
t1 = $[2];
|
|
40
|
+
}
|
|
41
|
+
const t2 = parentIsLocalized || field.localized;
|
|
42
|
+
let t3;
|
|
43
|
+
if ($[3] !== baseVersionField.fields || $[4] !== field.fields || $[5] !== selectedLocales || $[6] !== t1 || $[7] !== t2 || $[8] !== valueFrom || $[9] !== valueTo) {
|
|
44
|
+
t3 = _jsx("div", {
|
|
33
45
|
className: baseClass,
|
|
34
46
|
children: _jsx(DiffCollapser, {
|
|
35
47
|
fields: field.fields,
|
|
36
|
-
Label:
|
|
37
|
-
children: getTranslation(field.label, i18n)
|
|
38
|
-
}),
|
|
48
|
+
Label: t1,
|
|
39
49
|
locales: selectedLocales,
|
|
40
|
-
parentIsLocalized:
|
|
50
|
+
parentIsLocalized: t2,
|
|
41
51
|
valueFrom,
|
|
42
52
|
valueTo,
|
|
43
53
|
children: _jsx(RenderVersionFieldsToDiff, {
|
|
@@ -45,17 +55,17 @@ export const Collapsible = t0 => {
|
|
|
45
55
|
})
|
|
46
56
|
})
|
|
47
57
|
});
|
|
48
|
-
$[
|
|
49
|
-
$[
|
|
50
|
-
$[
|
|
51
|
-
$[
|
|
52
|
-
$[
|
|
53
|
-
$[
|
|
54
|
-
$[
|
|
55
|
-
$[
|
|
58
|
+
$[3] = baseVersionField.fields;
|
|
59
|
+
$[4] = field.fields;
|
|
60
|
+
$[5] = selectedLocales;
|
|
61
|
+
$[6] = t1;
|
|
62
|
+
$[7] = t2;
|
|
63
|
+
$[8] = valueFrom;
|
|
64
|
+
$[9] = valueTo;
|
|
65
|
+
$[10] = t3;
|
|
56
66
|
} else {
|
|
57
|
-
|
|
67
|
+
t3 = $[10];
|
|
58
68
|
}
|
|
59
|
-
return
|
|
69
|
+
return t3;
|
|
60
70
|
};
|
|
61
71
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["c","_c","getTranslation","useTranslation","React","useSelectedLocales","DiffCollapser","RenderVersionFieldsToDiff","baseClass","Collapsible","t0","$","baseVersionField","comparisonValue","valueFrom","field","parentIsLocalized","versionValue","valueTo","i18n","selectedLocales","fields","length","t1","
|
|
1
|
+
{"version":3,"file":"index.js","names":["c","_c","getTranslation","useTranslation","React","useSelectedLocales","DiffCollapser","RenderVersionFieldsToDiff","baseClass","Collapsible","t0","$","baseVersionField","comparisonValue","valueFrom","field","parentIsLocalized","versionValue","valueTo","i18n","selectedLocales","fields","length","t1","label","_jsx","children","t2","localized","t3","className","Label","versionFields"],"sources":["../../../../../../src/views/Version/RenderFieldsToDiff/fields/Collapsible/index.tsx"],"sourcesContent":["'use client'\nimport type { CollapsibleFieldDiffClientComponent } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { useTranslation } from '@payloadcms/ui'\nimport React from 'react'\n\nimport { useSelectedLocales } from '../../../Default/SelectedLocalesContext.js'\nimport { DiffCollapser } from '../../DiffCollapser/index.js'\nimport { RenderVersionFieldsToDiff } from '../../RenderVersionFieldsToDiff.js'\n\nconst baseClass = 'collapsible-diff'\n\nexport const Collapsible: CollapsibleFieldDiffClientComponent = ({\n baseVersionField,\n comparisonValue: valueFrom,\n field,\n parentIsLocalized,\n versionValue: valueTo,\n}) => {\n const { i18n } = useTranslation()\n const { selectedLocales } = useSelectedLocales()\n\n if (!baseVersionField.fields?.length) {\n return null\n }\n\n return (\n <div className={baseClass}>\n <DiffCollapser\n fields={field.fields}\n Label={\n 'label' in field &&\n field.label &&\n typeof field.label !== 'function' && <span>{getTranslation(field.label, i18n)}</span>\n }\n locales={selectedLocales}\n parentIsLocalized={parentIsLocalized || field.localized}\n valueFrom={valueFrom}\n valueTo={valueTo}\n >\n <RenderVersionFieldsToDiff versionFields={baseVersionField.fields} />\n </DiffCollapser>\n </div>\n )\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AAGA,SAASC,cAAc,QAAQ;AAC/B,SAASC,cAAc,QAAQ;AAC/B,OAAOC,KAAA,MAAW;AAElB,SAASC,kBAAkB,QAAQ;AACnC,SAASC,aAAa,QAAQ;AAC9B,SAASC,yBAAyB,QAAQ;AAE1C,MAAMC,SAAA,GAAY;AAElB,OAAO,MAAMC,WAAA,GAAmDC,EAAA;EAAA,MAAAC,CAAA,GAAAV,EAAA;EAAC;IAAAW,gBAAA;IAAAC,eAAA,EAAAC,SAAA;IAAAC,KAAA;IAAAC,iBAAA;IAAAC,YAAA,EAAAC;EAAA,IAAAR,EAMhE;EACC;IAAAS;EAAA,IAAiBhB,cAAA;EACjB;IAAAiB;EAAA,IAA4Bf,kBAAA;EAAA,KAEvBO,gBAAA,CAAAS,MAAA,EAAAC,MAAA;IAAA;EAAA;EAAA,IAAAC,EAAA;EAAA,IAAAZ,CAAA,QAAAI,KAAA,IAAAJ,CAAA,QAAAQ,IAAA;IASGI,EAAA,cAAWR,KAAA,IACXA,KAAA,CAAAS,KAAW,IACX,OAAOT,KAAA,CAAAS,KAAA,KAAgB,cAAcC,IAAA,CAAC;MAAAC,QAAA,EAAMxB,cAAA,CAAea,KAAA,CAAAS,KAAA,EAAaL,IAAA;IAAA,C;;;;;;;EAGvD,MAAAQ,EAAA,GAAAX,iBAAA,IAAqBD,KAAA,CAAAa,SAAe;EAAA,IAAAC,EAAA;EAAA,IAAAlB,CAAA,QAAAC,gBAAA,CAAAS,MAAA,IAAAV,CAAA,QAAAI,KAAA,CAAAM,MAAA,IAAAV,CAAA,QAAAS,eAAA,IAAAT,CAAA,QAAAY,EAAA,IAAAZ,CAAA,QAAAgB,EAAA,IAAAhB,CAAA,QAAAG,SAAA,IAAAH,CAAA,QAAAO,OAAA;IAT3DW,EAAA,GAAAJ,IAAA,CAAC;MAAAK,SAAA,EAAAtB,SAAA;MAAAkB,QAAA,EACCD,IAAA,CAAAnB,aAAA;QAAAe,MAAA,EACUN,KAAA,CAAAM,MAAA;QAAAU,KAAA,EAENR,E;iBAIOH,eAAA;QAAAJ,iBAAA,EACUW,EAAoC;QAAAb,SAAA;QAAAI,OAAA;QAAAQ,QAAA,EAIvDD,IAAA,CAAAlB,yBAAA;UAAAyB,aAAA,EAA0CpB,gBAAA,CAAAS;QAAA,C;;;;;;;;;;;;;;SAb9CQ,E;CAiBJ","ignoreList":[]}
|
|
@@ -10,7 +10,7 @@ import { DiffCollapser } from '../../DiffCollapser/index.js';
|
|
|
10
10
|
import { RenderVersionFieldsToDiff } from '../../RenderVersionFieldsToDiff.js';
|
|
11
11
|
const baseClass = 'group-diff';
|
|
12
12
|
export const Group = t0 => {
|
|
13
|
-
const $ = _c(
|
|
13
|
+
const $ = _c(12);
|
|
14
14
|
const {
|
|
15
15
|
baseVersionField,
|
|
16
16
|
comparisonValue: valueFrom,
|
|
@@ -26,19 +26,30 @@ export const Group = t0 => {
|
|
|
26
26
|
selectedLocales
|
|
27
27
|
} = useSelectedLocales();
|
|
28
28
|
let t1;
|
|
29
|
-
if ($[0] !==
|
|
30
|
-
t1 =
|
|
29
|
+
if ($[0] !== field || $[1] !== i18n || $[2] !== locale) {
|
|
30
|
+
t1 = "label" in field && field.label && typeof field.label !== "function" && _jsxs("span", {
|
|
31
|
+
children: [locale && _jsx("span", {
|
|
32
|
+
className: `${baseClass}__locale-label`,
|
|
33
|
+
children: locale
|
|
34
|
+
}), getTranslation(field.label, i18n)]
|
|
35
|
+
});
|
|
36
|
+
$[0] = field;
|
|
37
|
+
$[1] = i18n;
|
|
38
|
+
$[2] = locale;
|
|
39
|
+
$[3] = t1;
|
|
40
|
+
} else {
|
|
41
|
+
t1 = $[3];
|
|
42
|
+
}
|
|
43
|
+
const t2 = parentIsLocalized || field.localized;
|
|
44
|
+
let t3;
|
|
45
|
+
if ($[4] !== baseVersionField.fields || $[5] !== field.fields || $[6] !== selectedLocales || $[7] !== t1 || $[8] !== t2 || $[9] !== valueFrom || $[10] !== valueTo) {
|
|
46
|
+
t3 = _jsx("div", {
|
|
31
47
|
className: baseClass,
|
|
32
48
|
children: _jsx(DiffCollapser, {
|
|
33
49
|
fields: field.fields,
|
|
34
|
-
Label:
|
|
35
|
-
children: [locale && _jsx("span", {
|
|
36
|
-
className: `${baseClass}__locale-label`,
|
|
37
|
-
children: locale
|
|
38
|
-
}), getTranslation(field.label, i18n)]
|
|
39
|
-
}),
|
|
50
|
+
Label: t1,
|
|
40
51
|
locales: selectedLocales,
|
|
41
|
-
parentIsLocalized:
|
|
52
|
+
parentIsLocalized: t2,
|
|
42
53
|
valueFrom,
|
|
43
54
|
valueTo,
|
|
44
55
|
children: _jsx(RenderVersionFieldsToDiff, {
|
|
@@ -46,18 +57,17 @@ export const Group = t0 => {
|
|
|
46
57
|
})
|
|
47
58
|
})
|
|
48
59
|
});
|
|
49
|
-
$[
|
|
50
|
-
$[
|
|
51
|
-
$[
|
|
52
|
-
$[
|
|
53
|
-
$[
|
|
54
|
-
$[
|
|
55
|
-
$[
|
|
56
|
-
$[
|
|
57
|
-
$[8] = t1;
|
|
60
|
+
$[4] = baseVersionField.fields;
|
|
61
|
+
$[5] = field.fields;
|
|
62
|
+
$[6] = selectedLocales;
|
|
63
|
+
$[7] = t1;
|
|
64
|
+
$[8] = t2;
|
|
65
|
+
$[9] = valueFrom;
|
|
66
|
+
$[10] = valueTo;
|
|
67
|
+
$[11] = t3;
|
|
58
68
|
} else {
|
|
59
|
-
|
|
69
|
+
t3 = $[11];
|
|
60
70
|
}
|
|
61
|
-
return
|
|
71
|
+
return t3;
|
|
62
72
|
};
|
|
63
73
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["c","_c","getTranslation","useTranslation","React","useSelectedLocales","DiffCollapser","RenderVersionFieldsToDiff","baseClass","Group","t0","$","baseVersionField","comparisonValue","valueFrom","field","locale","parentIsLocalized","versionValue","valueTo","i18n","selectedLocales","t1","
|
|
1
|
+
{"version":3,"file":"index.js","names":["c","_c","getTranslation","useTranslation","React","useSelectedLocales","DiffCollapser","RenderVersionFieldsToDiff","baseClass","Group","t0","$","baseVersionField","comparisonValue","valueFrom","field","locale","parentIsLocalized","versionValue","valueTo","i18n","selectedLocales","t1","label","_jsxs","children","_jsx","className","t2","localized","t3","fields","Label","versionFields"],"sources":["../../../../../../src/views/Version/RenderFieldsToDiff/fields/Group/index.tsx"],"sourcesContent":["'use client'\nimport type { GroupFieldDiffClientComponent } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\n\nimport './index.scss'\n\nimport { useTranslation } from '@payloadcms/ui'\nimport React from 'react'\n\nimport { useSelectedLocales } from '../../../Default/SelectedLocalesContext.js'\nimport { DiffCollapser } from '../../DiffCollapser/index.js'\nimport { RenderVersionFieldsToDiff } from '../../RenderVersionFieldsToDiff.js'\n\nconst baseClass = 'group-diff'\n\nexport const Group: GroupFieldDiffClientComponent = ({\n baseVersionField,\n comparisonValue: valueFrom,\n field,\n locale,\n parentIsLocalized,\n versionValue: valueTo,\n}) => {\n const { i18n } = useTranslation()\n const { selectedLocales } = useSelectedLocales()\n\n return (\n <div className={baseClass}>\n <DiffCollapser\n fields={field.fields}\n Label={\n 'label' in field &&\n field.label &&\n typeof field.label !== 'function' && (\n <span>\n {locale && <span className={`${baseClass}__locale-label`}>{locale}</span>}\n {getTranslation(field.label, i18n)}\n </span>\n )\n }\n locales={selectedLocales}\n parentIsLocalized={parentIsLocalized || field.localized}\n valueFrom={valueFrom}\n valueTo={valueTo}\n >\n <RenderVersionFieldsToDiff versionFields={baseVersionField.fields} />\n </DiffCollapser>\n </div>\n )\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AAGA,SAASC,cAAc,QAAQ;AAI/B,SAASC,cAAc,QAAQ;AAC/B,OAAOC,KAAA,MAAW;AAElB,SAASC,kBAAkB,QAAQ;AACnC,SAASC,aAAa,QAAQ;AAC9B,SAASC,yBAAyB,QAAQ;AAE1C,MAAMC,SAAA,GAAY;AAElB,OAAO,MAAMC,KAAA,GAAuCC,EAAA;EAAA,MAAAC,CAAA,GAAAV,EAAA;EAAC;IAAAW,gBAAA;IAAAC,eAAA,EAAAC,SAAA;IAAAC,KAAA;IAAAC,MAAA;IAAAC,iBAAA;IAAAC,YAAA,EAAAC;EAAA,IAAAT,EAOpD;EACC;IAAAU;EAAA,IAAiBjB,cAAA;EACjB;IAAAkB;EAAA,IAA4BhB,kBAAA;EAAA,IAAAiB,EAAA;EAAA,IAAAX,CAAA,QAAAI,KAAA,IAAAJ,CAAA,QAAAS,IAAA,IAAAT,CAAA,QAAAK,MAAA;IAOpBM,EAAA,cAAWP,KAAA,IACXA,KAAA,CAAAQ,KAAW,IACX,OAAOR,KAAA,CAAAQ,KAAA,KAAgB,cACrBC,KAAA,CAAC;MAAAC,QAAA,GACET,MAAA,IAAUU,IAAA,CAAC;QAAAC,SAAA,EAAgB,GAAAnB,SAAA,gBAA4B;QAAAiB,QAAA,EAAGT;MAAA,C,GAC1Dd,cAAA,CAAea,KAAA,CAAAQ,KAAA,EAAaH,IAAA;IAAA,C;;;;;;;;EAKhB,MAAAQ,EAAA,GAAAX,iBAAA,IAAqBF,KAAA,CAAAc,SAAe;EAAA,IAAAC,EAAA;EAAA,IAAAnB,CAAA,QAAAC,gBAAA,CAAAmB,MAAA,IAAApB,CAAA,QAAAI,KAAA,CAAAgB,MAAA,IAAApB,CAAA,QAAAU,eAAA,IAAAV,CAAA,QAAAW,EAAA,IAAAX,CAAA,QAAAiB,EAAA,IAAAjB,CAAA,QAAAG,SAAA,IAAAH,CAAA,SAAAQ,OAAA;IAd3DW,EAAA,GAAAJ,IAAA,CAAC;MAAAC,SAAA,EAAAnB,SAAA;MAAAiB,QAAA,EACCC,IAAA,CAAApB,aAAA;QAAAyB,MAAA,EACUhB,KAAA,CAAAgB,MAAA;QAAAC,KAAA,EAENV,E;iBASOD,eAAA;QAAAJ,iBAAA,EACUW,EAAoC;QAAAd,SAAA;QAAAK,OAAA;QAAAM,QAAA,EAIvDC,IAAA,CAAAnB,yBAAA;UAAA0B,aAAA,EAA0CrB,gBAAA,CAAAmB;QAAA,C;;;;;;;;;;;;;;SAlB9CD,E;CAsBJ","ignoreList":[]}
|
|
@@ -12,7 +12,7 @@ import { RenderVersionFieldsToDiff } from '../../RenderVersionFieldsToDiff.js';
|
|
|
12
12
|
import { getFieldsForRowComparison } from '../../utilities/getFieldsForRowComparison.js';
|
|
13
13
|
const baseClass = 'iterable-diff';
|
|
14
14
|
export const Iterable = t0 => {
|
|
15
|
-
const $ = _c(
|
|
15
|
+
const $ = _c(16);
|
|
16
16
|
const {
|
|
17
17
|
baseVersionField,
|
|
18
18
|
comparisonValue: valueFrom,
|
|
@@ -38,18 +38,28 @@ export const Iterable = t0 => {
|
|
|
38
38
|
throw new Error(`Expected field to be an array or blocks type but got: ${field.type}`);
|
|
39
39
|
}
|
|
40
40
|
let t1;
|
|
41
|
-
if ($[0] !==
|
|
42
|
-
t1 =
|
|
41
|
+
if ($[0] !== field || $[1] !== i18n || $[2] !== locale) {
|
|
42
|
+
t1 = "label" in field && field.label && typeof field.label !== "function" && _jsxs("span", {
|
|
43
|
+
children: [locale && _jsx("span", {
|
|
44
|
+
className: `${baseClass}__locale-label`,
|
|
45
|
+
children: locale
|
|
46
|
+
}), getTranslation(field.label, i18n)]
|
|
47
|
+
});
|
|
48
|
+
$[0] = field;
|
|
49
|
+
$[1] = i18n;
|
|
50
|
+
$[2] = locale;
|
|
51
|
+
$[3] = t1;
|
|
52
|
+
} else {
|
|
53
|
+
t1 = $[3];
|
|
54
|
+
}
|
|
55
|
+
let t2;
|
|
56
|
+
if ($[4] !== baseVersionField || $[5] !== config || $[6] !== field || $[7] !== i18n || $[8] !== maxRows || $[9] !== parentIsLocalized || $[10] !== selectedLocales || $[11] !== t || $[12] !== t1 || $[13] !== valueFrom || $[14] !== valueTo) {
|
|
57
|
+
t2 = _jsx("div", {
|
|
43
58
|
className: baseClass,
|
|
44
59
|
children: _jsxs(DiffCollapser, {
|
|
45
60
|
field,
|
|
46
61
|
isIterable: true,
|
|
47
|
-
Label:
|
|
48
|
-
children: [locale && _jsx("span", {
|
|
49
|
-
className: `${baseClass}__locale-label`,
|
|
50
|
-
children: locale
|
|
51
|
-
}), getTranslation(field.label, i18n)]
|
|
52
|
-
}),
|
|
62
|
+
Label: t1,
|
|
53
63
|
locales: selectedLocales,
|
|
54
64
|
parentIsLocalized,
|
|
55
65
|
valueFrom,
|
|
@@ -104,21 +114,21 @@ export const Iterable = t0 => {
|
|
|
104
114
|
})]
|
|
105
115
|
})
|
|
106
116
|
});
|
|
107
|
-
$[
|
|
108
|
-
$[
|
|
109
|
-
$[
|
|
110
|
-
$[
|
|
111
|
-
$[
|
|
112
|
-
$[
|
|
113
|
-
$[
|
|
114
|
-
$[
|
|
115
|
-
$[
|
|
116
|
-
$[
|
|
117
|
-
$[
|
|
118
|
-
$[
|
|
117
|
+
$[4] = baseVersionField;
|
|
118
|
+
$[5] = config;
|
|
119
|
+
$[6] = field;
|
|
120
|
+
$[7] = i18n;
|
|
121
|
+
$[8] = maxRows;
|
|
122
|
+
$[9] = parentIsLocalized;
|
|
123
|
+
$[10] = selectedLocales;
|
|
124
|
+
$[11] = t;
|
|
125
|
+
$[12] = t1;
|
|
126
|
+
$[13] = valueFrom;
|
|
127
|
+
$[14] = valueTo;
|
|
128
|
+
$[15] = t2;
|
|
119
129
|
} else {
|
|
120
|
-
|
|
130
|
+
t2 = $[15];
|
|
121
131
|
}
|
|
122
|
-
return
|
|
132
|
+
return t2;
|
|
123
133
|
};
|
|
124
134
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["c","_c","getTranslation","useConfig","useTranslation","fieldIsArrayType","fieldIsBlockType","React","useSelectedLocales","DiffCollapser","RenderVersionFieldsToDiff","getFieldsForRowComparison","baseClass","Iterable","t0","$","baseVersionField","comparisonValue","valueFrom","field","locale","parentIsLocalized","versionValue","valueTo","i18n","t","selectedLocales","config","versionRowCount","Array","isArray","length","comparisonRowCount","maxRows","Math","max","Error","type","t1","
|
|
1
|
+
{"version":3,"file":"index.js","names":["c","_c","getTranslation","useConfig","useTranslation","fieldIsArrayType","fieldIsBlockType","React","useSelectedLocales","DiffCollapser","RenderVersionFieldsToDiff","getFieldsForRowComparison","baseClass","Iterable","t0","$","baseVersionField","comparisonValue","valueFrom","field","locale","parentIsLocalized","versionValue","valueTo","i18n","t","selectedLocales","config","versionRowCount","Array","isArray","length","comparisonRowCount","maxRows","Math","max","Error","type","t1","label","_jsxs","children","_jsx","className","t2","isIterable","Label","from","keys","map","row","i","versionRow","comparisonRow","fields","versionFields","rowNumber","String","padStart","rowLabel","hideGutter","localized","labels","plural"],"sources":["../../../../../../src/views/Version/RenderFieldsToDiff/fields/Iterable/index.tsx"],"sourcesContent":["'use client'\n\nimport type { FieldDiffClientProps } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { useConfig, useTranslation } from '@payloadcms/ui'\n\nimport './index.scss'\n\nimport { fieldIsArrayType, fieldIsBlockType } from 'payload/shared'\nimport React from 'react'\n\nimport { useSelectedLocales } from '../../../Default/SelectedLocalesContext.js'\nimport { DiffCollapser } from '../../DiffCollapser/index.js'\nimport { RenderVersionFieldsToDiff } from '../../RenderVersionFieldsToDiff.js'\nimport { getFieldsForRowComparison } from '../../utilities/getFieldsForRowComparison.js'\n\nconst baseClass = 'iterable-diff'\n\nexport const Iterable: React.FC<FieldDiffClientProps> = ({\n baseVersionField,\n comparisonValue: valueFrom,\n field,\n locale,\n parentIsLocalized,\n versionValue: valueTo,\n}) => {\n const { i18n, t } = useTranslation()\n const { selectedLocales } = useSelectedLocales()\n const { config } = useConfig()\n\n const versionRowCount = Array.isArray(valueTo) ? valueTo.length : 0\n const comparisonRowCount = Array.isArray(valueFrom) ? valueFrom.length : 0\n const maxRows = Math.max(versionRowCount, comparisonRowCount)\n\n if (!fieldIsArrayType(field) && !fieldIsBlockType(field)) {\n throw new Error(`Expected field to be an array or blocks type but got: ${field.type}`)\n }\n\n return (\n <div className={baseClass}>\n <DiffCollapser\n field={field}\n isIterable\n Label={\n 'label' in field &&\n field.label &&\n typeof field.label !== 'function' && (\n <span>\n {locale && <span className={`${baseClass}__locale-label`}>{locale}</span>}\n {getTranslation(field.label, i18n)}\n </span>\n )\n }\n locales={selectedLocales}\n parentIsLocalized={parentIsLocalized}\n valueFrom={valueFrom}\n valueTo={valueTo}\n >\n {maxRows > 0 && (\n <div className={`${baseClass}__rows`}>\n {Array.from(Array(maxRows).keys()).map((row, i) => {\n const versionRow = valueTo?.[i] || {}\n const comparisonRow = valueFrom?.[i] || {}\n\n const { fields, versionFields } = getFieldsForRowComparison({\n baseVersionField,\n comparisonRow,\n config,\n field,\n row: i,\n versionRow,\n })\n\n const rowNumber = String(i + 1).padStart(2, '0')\n const rowLabel = fieldIsArrayType(field)\n ? `${t('general:item')} ${rowNumber}`\n : `${t('fields:block')} ${rowNumber}`\n\n return (\n <div className={`${baseClass}__row`} key={i}>\n <DiffCollapser\n fields={fields}\n hideGutter={true}\n Label={\n <div className={`${baseClass}-label-container`}>\n <div className={`${baseClass}-label-prefix`}></div>\n <span className={`${baseClass}__label`}>{rowLabel}</span>\n </div>\n }\n locales={selectedLocales}\n parentIsLocalized={parentIsLocalized || field.localized}\n valueFrom={comparisonRow}\n valueTo={versionRow}\n >\n <RenderVersionFieldsToDiff versionFields={versionFields} />\n </DiffCollapser>\n </div>\n )\n })}\n </div>\n )}\n {maxRows === 0 && (\n <div className={`${baseClass}__no-rows`}>\n {i18n.t('version:noRowsFound', {\n label:\n 'labels' in field && field.labels?.plural\n ? getTranslation(field.labels.plural, i18n)\n : i18n.t('general:rows'),\n })}\n </div>\n )}\n </DiffCollapser>\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/generateLabelFromValue.d.ts
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import type { PayloadRequest, RelationshipField } from 'payload';
|
|
2
|
-
import type {
|
|
2
|
+
import type { RelationshipValue } from './index.js';
|
|
3
3
|
export declare const generateLabelFromValue: ({ field, locale, parentIsLocalized, req, value, }: {
|
|
4
4
|
field: RelationshipField;
|
|
5
5
|
locale: string;
|
|
6
6
|
parentIsLocalized: boolean;
|
|
7
7
|
req: PayloadRequest;
|
|
8
|
-
value:
|
|
8
|
+
value: RelationshipValue;
|
|
9
9
|
}) => string;
|
|
10
10
|
//# sourceMappingURL=generateLabelFromValue.d.ts.map
|
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,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAEnD,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,iBAAiB,CAAA;CACzB,KAAG,MAyDH,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,
|
|
@@ -13,12 +13,15 @@ export const generateLabelFromValue = ({
|
|
|
13
13
|
relatedDoc = value.value;
|
|
14
14
|
relationTo = value.relationTo;
|
|
15
15
|
} else {
|
|
16
|
-
// Non-polymorphic relationship
|
|
16
|
+
// Non-polymorphic relationship or deleted document
|
|
17
17
|
relatedDoc = value;
|
|
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({
|
|
@@ -29,7 +32,7 @@ export const generateLabelFromValue = ({
|
|
|
29
32
|
if (typeof relatedDoc?.[useAsTitle] !== 'undefined') {
|
|
30
33
|
valueToReturn = relatedDoc[useAsTitle];
|
|
31
34
|
} else {
|
|
32
|
-
valueToReturn = String(relatedDoc.id);
|
|
35
|
+
valueToReturn = String(typeof relatedDoc === 'object' ? relatedDoc.id : `${req.i18n.t('general:untitled')} - ID: ${relatedDoc}`);
|
|
33
36
|
}
|
|
34
37
|
if (typeof valueToReturn === 'object' && valueToReturn && titleFieldIsLocalized && valueToReturn?.[locale]) {
|
|
35
38
|
valueToReturn = valueToReturn[locale];
|
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","i18n","t","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 { RelationshipValue } 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: RelationshipValue\n}): string => {\n let relatedDoc: number | string | 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 or deleted document\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(\n typeof relatedDoc === 'object'\n ? relatedDoc.id\n : `${req.i18n.t('general:untitled')} - ID: ${relatedDoc}`,\n )\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,CACd,OAAOjB,UAAA,KAAe,WAClBA,UAAA,CAAWkB,EAAE,GACb,GAAGpB,GAAA,CAAIqB,IAAI,CAACC,CAAC,CAAC,6BAA6BpB,UAAA,EAAY;EAE/D;EAEA,IACE,OAAOE,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,GAAgBmB,IAAA,CAAKC,SAAS,CAACpB,aAAA;EACjC;EAEA,OAAOA,aAAA;AACT","ignoreList":[]}
|
|
@@ -2,10 +2,10 @@ import type { PayloadRequest, RelationshipField, RelationshipFieldDiffServerComp
|
|
|
2
2
|
import { type I18nClient } from '@payloadcms/translations';
|
|
3
3
|
import './index.scss';
|
|
4
4
|
import React from 'react';
|
|
5
|
-
export type
|
|
5
|
+
export type RelationshipValue = {
|
|
6
6
|
relationTo: string;
|
|
7
|
-
value: TypeWithID;
|
|
8
|
-
} | TypeWithID;
|
|
7
|
+
value: number | string | TypeWithID;
|
|
8
|
+
} | (number | string | TypeWithID);
|
|
9
9
|
export declare const Relationship: RelationshipFieldDiffServerComponent;
|
|
10
10
|
export declare const SingleRelationshipDiff: React.FC<{
|
|
11
11
|
field: RelationshipField;
|
|
@@ -15,7 +15,7 @@ export declare const SingleRelationshipDiff: React.FC<{
|
|
|
15
15
|
parentIsLocalized: boolean;
|
|
16
16
|
polymorphic: boolean;
|
|
17
17
|
req: PayloadRequest;
|
|
18
|
-
valueFrom:
|
|
19
|
-
valueTo:
|
|
18
|
+
valueFrom: RelationshipValue;
|
|
19
|
+
valueTo: RelationshipValue;
|
|
20
20
|
}>;
|
|
21
21
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/views/Version/RenderFieldsToDiff/fields/Relationship/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EACd,iBAAiB,EACjB,oCAAoC,EACpC,UAAU,EACX,MAAM,SAAS,CAAA;AAEhB,OAAO,EAAkB,KAAK,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAG1E,OAAO,cAAc,CAAA;AAErB,OAAO,KAAK,MAAM,OAAO,CAAA;AAMzB,MAAM,MAAM,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/views/Version/RenderFieldsToDiff/fields/Relationship/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EACd,iBAAiB,EACjB,oCAAoC,EACpC,UAAU,EACX,MAAM,SAAS,CAAA;AAEhB,OAAO,EAAkB,KAAK,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAG1E,OAAO,cAAc,CAAA;AAErB,OAAO,KAAK,MAAM,OAAO,CAAA;AAMzB,MAAM,MAAM,iBAAiB,GACzB;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,UAAU,CAAA;CAAE,GAC3D,CAAC,MAAM,GAAG,MAAM,GAAG,UAAU,CAAC,CAAA;AAElC,eAAO,MAAM,YAAY,EAAE,oCA0C1B,CAAA;AAED,eAAO,MAAM,sBAAsB,EAAE,KAAK,CAAC,EAAE,CAAC;IAC5C,KAAK,EAAE,iBAAiB,CAAA;IACxB,IAAI,EAAE,UAAU,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;IACd,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,iBAAiB,EAAE,OAAO,CAAA;IAC1B,WAAW,EAAE,OAAO,CAAA;IACpB,GAAG,EAAE,cAAc,CAAA;IACnB,SAAS,EAAE,iBAAiB,CAAA;IAC5B,OAAO,EAAE,iBAAiB,CAAA;CAC3B,CAqEA,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["getTranslation","FieldDiffContainer","getHTMLDiffComponents","React","generateLabelFromValue","baseClass","Relationship","comparisonValue","valueFrom","field","i18n","locale","nestingLevel","parentIsLocalized","req","versionValue","valueTo","hasMany","polymorphic","Array","isArray","relationTo","_jsx","ManyRelationshipDiff","SingleRelationshipDiff","args","ReactDOMServer","default","FromComponent","RelationshipDocumentDiff","showPill","value","ToComponent","fromHTML","renderToStaticMarkup","toHTML","diff","tokenizeByCharacter","className","From","label","To","fromArr","toArr","makeNodes","list","map","val","idx","fromNodes","length","toNodes","localeToUse","payload","config","localization","defaultLocale","title","pillLabel","collectionConfig","collections","labels","singular","slug","_jsxs","id"],"sources":["../../../../../../src/views/Version/RenderFieldsToDiff/fields/Relationship/index.tsx"],"sourcesContent":["import type {\n PayloadRequest,\n RelationshipField,\n RelationshipFieldDiffServerComponent,\n TypeWithID,\n} from 'payload'\n\nimport { getTranslation, type I18nClient } from '@payloadcms/translations'\nimport { FieldDiffContainer, getHTMLDiffComponents } from '@payloadcms/ui/rsc'\n\nimport './index.scss'\n\nimport React from 'react'\n\nimport { generateLabelFromValue } from './generateLabelFromValue.js'\n\nconst baseClass = 'relationship-diff'\n\nexport type PopulatedRelationshipValue = { relationTo: string; value: TypeWithID } | TypeWithID\n\nexport const Relationship: RelationshipFieldDiffServerComponent = ({\n comparisonValue: valueFrom,\n field,\n i18n,\n locale,\n nestingLevel,\n parentIsLocalized,\n req,\n versionValue: valueTo,\n}) => {\n const hasMany = 'hasMany' in field && field.hasMany\n const polymorphic = Array.isArray(field.relationTo)\n\n if (hasMany) {\n return (\n <ManyRelationshipDiff\n field={field}\n i18n={i18n}\n locale={locale}\n nestingLevel={nestingLevel}\n parentIsLocalized={parentIsLocalized}\n polymorphic={polymorphic}\n req={req}\n valueFrom={valueFrom as PopulatedRelationshipValue[] | undefined}\n valueTo={valueTo as PopulatedRelationshipValue[] | undefined}\n />\n )\n }\n\n return (\n <SingleRelationshipDiff\n field={field}\n i18n={i18n}\n locale={locale}\n nestingLevel={nestingLevel}\n parentIsLocalized={parentIsLocalized}\n polymorphic={polymorphic}\n req={req}\n valueFrom={valueFrom as PopulatedRelationshipValue}\n valueTo={valueTo as PopulatedRelationshipValue}\n />\n )\n}\n\nexport const SingleRelationshipDiff: React.FC<{\n field: RelationshipField\n i18n: I18nClient\n locale: string\n nestingLevel?: number\n parentIsLocalized: boolean\n polymorphic: boolean\n req: PayloadRequest\n valueFrom: PopulatedRelationshipValue\n valueTo: PopulatedRelationshipValue\n}> = async (args) => {\n const {\n field,\n i18n,\n locale,\n nestingLevel,\n parentIsLocalized,\n polymorphic,\n req,\n valueFrom,\n valueTo,\n } = args\n\n const ReactDOMServer = (await import('react-dom/server')).default\n\n const FromComponent = valueFrom ? (\n <RelationshipDocumentDiff\n field={field}\n i18n={i18n}\n locale={locale}\n parentIsLocalized={parentIsLocalized}\n polymorphic={polymorphic}\n relationTo={\n polymorphic\n ? (valueFrom as { relationTo: string; value: TypeWithID }).relationTo\n : (field.relationTo as string)\n }\n req={req}\n showPill={true}\n value={valueFrom}\n />\n ) : null\n const ToComponent = valueTo ? (\n <RelationshipDocumentDiff\n field={field}\n i18n={i18n}\n locale={locale}\n parentIsLocalized={parentIsLocalized}\n polymorphic={polymorphic}\n relationTo={\n polymorphic\n ? (valueTo as { relationTo: string; value: TypeWithID }).relationTo\n : (field.relationTo as string)\n }\n req={req}\n showPill={true}\n value={valueTo}\n />\n ) : null\n\n const fromHTML = FromComponent ? ReactDOMServer.renderToStaticMarkup(FromComponent) : `<p></p>`\n const toHTML = ToComponent ? ReactDOMServer.renderToStaticMarkup(ToComponent) : `<p></p>`\n\n const diff = getHTMLDiffComponents({\n fromHTML,\n toHTML,\n tokenizeByCharacter: false,\n })\n\n return (\n <FieldDiffContainer\n className={`${baseClass}-container ${baseClass}-container--hasOne`}\n From={diff.From}\n i18n={i18n}\n label={{ label: field.label, locale }}\n nestingLevel={nestingLevel}\n To={diff.To}\n />\n )\n}\n\nconst ManyRelationshipDiff: React.FC<{\n field: RelationshipField\n i18n: I18nClient\n locale: string\n nestingLevel?: number\n parentIsLocalized: boolean\n polymorphic: boolean\n req: PayloadRequest\n valueFrom: PopulatedRelationshipValue[] | undefined\n valueTo: PopulatedRelationshipValue[] | undefined\n}> = async ({\n field,\n i18n,\n locale,\n nestingLevel,\n parentIsLocalized,\n polymorphic,\n req,\n valueFrom,\n valueTo,\n}) => {\n const ReactDOMServer = (await import('react-dom/server')).default\n\n const fromArr = Array.isArray(valueFrom) ? valueFrom : []\n const toArr = Array.isArray(valueTo) ? valueTo : []\n\n const makeNodes = (list: PopulatedRelationshipValue[]) =>\n list.map((val, idx) => (\n <RelationshipDocumentDiff\n field={field}\n i18n={i18n}\n key={idx}\n locale={locale}\n parentIsLocalized={parentIsLocalized}\n polymorphic={polymorphic}\n relationTo={\n polymorphic\n ? (val as { relationTo: string; value: TypeWithID }).relationTo\n : (field.relationTo as string)\n }\n req={req}\n showPill={polymorphic}\n value={val}\n />\n ))\n\n const fromNodes =\n fromArr.length > 0 ? makeNodes(fromArr) : <p className={`${baseClass}__empty`}></p>\n\n const toNodes = toArr.length > 0 ? makeNodes(toArr) : <p className={`${baseClass}__empty`}></p>\n\n const fromHTML = ReactDOMServer.renderToStaticMarkup(fromNodes)\n const toHTML = ReactDOMServer.renderToStaticMarkup(toNodes)\n\n const diff = getHTMLDiffComponents({\n fromHTML,\n toHTML,\n tokenizeByCharacter: false,\n })\n\n return (\n <FieldDiffContainer\n className={`${baseClass}-container ${baseClass}-container--hasMany`}\n From={diff.From}\n i18n={i18n}\n label={{ label: field.label, locale }}\n nestingLevel={nestingLevel}\n To={diff.To}\n />\n )\n}\n\nconst RelationshipDocumentDiff = ({\n field,\n i18n,\n locale,\n parentIsLocalized,\n polymorphic,\n relationTo,\n req,\n showPill = false,\n value,\n}: {\n field: RelationshipField\n i18n: I18nClient\n locale: string\n parentIsLocalized: boolean\n polymorphic: boolean\n relationTo: string\n req: PayloadRequest\n showPill?: boolean\n value: PopulatedRelationshipValue\n}) => {\n const localeToUse =\n locale ??\n (req.payload.config?.localization && req.payload.config?.localization?.defaultLocale) ??\n 'en'\n\n const title = generateLabelFromValue({\n field,\n locale: localeToUse,\n parentIsLocalized,\n req,\n value,\n })\n\n let pillLabel: null | string = null\n if (showPill) {\n const collectionConfig = req.payload.collections[relationTo].config\n pillLabel = collectionConfig.labels?.singular\n ? getTranslation(collectionConfig.labels.singular, i18n)\n : collectionConfig.slug\n }\n\n return (\n <div\n className={`${baseClass}`}\n data-enable-match=\"true\"\n data-id={\n polymorphic\n ? (value as { relationTo: string; value: TypeWithID }).value.id\n : (value as TypeWithID).id\n }\n data-relation-to={relationTo}\n >\n {pillLabel && (\n <span className={`${baseClass}__pill`} data-enable-match=\"false\">\n {pillLabel}\n </span>\n )}\n <strong className={`${baseClass}__info`} data-enable-match=\"false\">\n {title}\n </strong>\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["getTranslation","FieldDiffContainer","getHTMLDiffComponents","React","generateLabelFromValue","baseClass","Relationship","comparisonValue","valueFrom","field","i18n","locale","nestingLevel","parentIsLocalized","req","versionValue","valueTo","hasMany","polymorphic","Array","isArray","relationTo","_jsx","ManyRelationshipDiff","SingleRelationshipDiff","args","ReactDOMServer","default","FromComponent","RelationshipDocumentDiff","showPill","value","ToComponent","fromHTML","renderToStaticMarkup","toHTML","diff","tokenizeByCharacter","className","From","label","To","fromArr","toArr","makeNodes","list","map","val","idx","fromNodes","length","toNodes","localeToUse","payload","config","localization","defaultLocale","title","pillLabel","collectionConfig","collections","labels","singular","slug","_jsxs","id"],"sources":["../../../../../../src/views/Version/RenderFieldsToDiff/fields/Relationship/index.tsx"],"sourcesContent":["import type {\n PayloadRequest,\n RelationshipField,\n RelationshipFieldDiffServerComponent,\n TypeWithID,\n} from 'payload'\n\nimport { getTranslation, type I18nClient } from '@payloadcms/translations'\nimport { FieldDiffContainer, getHTMLDiffComponents } from '@payloadcms/ui/rsc'\n\nimport './index.scss'\n\nimport React from 'react'\n\nimport { generateLabelFromValue } from './generateLabelFromValue.js'\n\nconst baseClass = 'relationship-diff'\n\nexport type RelationshipValue =\n | { relationTo: string; value: number | string | TypeWithID }\n | (number | string | TypeWithID)\n\nexport const Relationship: RelationshipFieldDiffServerComponent = ({\n comparisonValue: valueFrom,\n field,\n i18n,\n locale,\n nestingLevel,\n parentIsLocalized,\n req,\n versionValue: valueTo,\n}) => {\n const hasMany = 'hasMany' in field && field.hasMany\n const polymorphic = Array.isArray(field.relationTo)\n\n if (hasMany) {\n return (\n <ManyRelationshipDiff\n field={field}\n i18n={i18n}\n locale={locale}\n nestingLevel={nestingLevel}\n parentIsLocalized={parentIsLocalized}\n polymorphic={polymorphic}\n req={req}\n valueFrom={valueFrom as RelationshipValue[] | undefined}\n valueTo={valueTo as RelationshipValue[] | undefined}\n />\n )\n }\n\n return (\n <SingleRelationshipDiff\n field={field}\n i18n={i18n}\n locale={locale}\n nestingLevel={nestingLevel}\n parentIsLocalized={parentIsLocalized}\n polymorphic={polymorphic}\n req={req}\n valueFrom={valueFrom as RelationshipValue}\n valueTo={valueTo as RelationshipValue}\n />\n )\n}\n\nexport const SingleRelationshipDiff: React.FC<{\n field: RelationshipField\n i18n: I18nClient\n locale: string\n nestingLevel?: number\n parentIsLocalized: boolean\n polymorphic: boolean\n req: PayloadRequest\n valueFrom: RelationshipValue\n valueTo: RelationshipValue\n}> = async (args) => {\n const {\n field,\n i18n,\n locale,\n nestingLevel,\n parentIsLocalized,\n polymorphic,\n req,\n valueFrom,\n valueTo,\n } = args\n\n const ReactDOMServer = (await import('react-dom/server')).default\n\n const FromComponent = valueFrom ? (\n <RelationshipDocumentDiff\n field={field}\n i18n={i18n}\n locale={locale}\n parentIsLocalized={parentIsLocalized}\n polymorphic={polymorphic}\n relationTo={\n polymorphic\n ? (valueFrom as { relationTo: string; value: TypeWithID }).relationTo\n : (field.relationTo as string)\n }\n req={req}\n showPill={true}\n value={valueFrom}\n />\n ) : null\n const ToComponent = valueTo ? (\n <RelationshipDocumentDiff\n field={field}\n i18n={i18n}\n locale={locale}\n parentIsLocalized={parentIsLocalized}\n polymorphic={polymorphic}\n relationTo={\n polymorphic\n ? (valueTo as { relationTo: string; value: TypeWithID }).relationTo\n : (field.relationTo as string)\n }\n req={req}\n showPill={true}\n value={valueTo}\n />\n ) : null\n\n const fromHTML = FromComponent ? ReactDOMServer.renderToStaticMarkup(FromComponent) : `<p></p>`\n const toHTML = ToComponent ? ReactDOMServer.renderToStaticMarkup(ToComponent) : `<p></p>`\n\n const diff = getHTMLDiffComponents({\n fromHTML,\n toHTML,\n tokenizeByCharacter: false,\n })\n\n return (\n <FieldDiffContainer\n className={`${baseClass}-container ${baseClass}-container--hasOne`}\n From={diff.From}\n i18n={i18n}\n label={{ label: field.label, locale }}\n nestingLevel={nestingLevel}\n To={diff.To}\n />\n )\n}\n\nconst ManyRelationshipDiff: React.FC<{\n field: RelationshipField\n i18n: I18nClient\n locale: string\n nestingLevel?: number\n parentIsLocalized: boolean\n polymorphic: boolean\n req: PayloadRequest\n valueFrom: RelationshipValue[] | undefined\n valueTo: RelationshipValue[] | undefined\n}> = async ({\n field,\n i18n,\n locale,\n nestingLevel,\n parentIsLocalized,\n polymorphic,\n req,\n valueFrom,\n valueTo,\n}) => {\n const ReactDOMServer = (await import('react-dom/server')).default\n\n const fromArr = Array.isArray(valueFrom) ? valueFrom : []\n const toArr = Array.isArray(valueTo) ? valueTo : []\n\n const makeNodes = (list: RelationshipValue[]) =>\n list.map((val, idx) => (\n <RelationshipDocumentDiff\n field={field}\n i18n={i18n}\n key={idx}\n locale={locale}\n parentIsLocalized={parentIsLocalized}\n polymorphic={polymorphic}\n relationTo={\n polymorphic\n ? (val as { relationTo: string; value: TypeWithID }).relationTo\n : (field.relationTo as string)\n }\n req={req}\n showPill={polymorphic}\n value={val}\n />\n ))\n\n const fromNodes =\n fromArr.length > 0 ? makeNodes(fromArr) : <p className={`${baseClass}__empty`}></p>\n\n const toNodes = toArr.length > 0 ? makeNodes(toArr) : <p className={`${baseClass}__empty`}></p>\n\n const fromHTML = ReactDOMServer.renderToStaticMarkup(fromNodes)\n const toHTML = ReactDOMServer.renderToStaticMarkup(toNodes)\n\n const diff = getHTMLDiffComponents({\n fromHTML,\n toHTML,\n tokenizeByCharacter: false,\n })\n\n return (\n <FieldDiffContainer\n className={`${baseClass}-container ${baseClass}-container--hasMany`}\n From={diff.From}\n i18n={i18n}\n label={{ label: field.label, locale }}\n nestingLevel={nestingLevel}\n To={diff.To}\n />\n )\n}\n\nconst RelationshipDocumentDiff = ({\n field,\n i18n,\n locale,\n parentIsLocalized,\n polymorphic,\n relationTo,\n req,\n showPill = false,\n value,\n}: {\n field: RelationshipField\n i18n: I18nClient\n locale: string\n parentIsLocalized: boolean\n polymorphic: boolean\n relationTo: string\n req: PayloadRequest\n showPill?: boolean\n value: RelationshipValue\n}) => {\n const localeToUse =\n locale ??\n (req.payload.config?.localization && req.payload.config?.localization?.defaultLocale) ??\n 'en'\n\n const title = generateLabelFromValue({\n field,\n locale: localeToUse,\n parentIsLocalized,\n req,\n value,\n })\n\n let pillLabel: null | string = null\n if (showPill) {\n const collectionConfig = req.payload.collections[relationTo].config\n pillLabel = collectionConfig.labels?.singular\n ? getTranslation(collectionConfig.labels.singular, i18n)\n : collectionConfig.slug\n }\n\n return (\n <div\n className={`${baseClass}`}\n data-enable-match=\"true\"\n data-id={\n polymorphic\n ? (value as { relationTo: string; value: TypeWithID }).value.id\n : (value as TypeWithID).id\n }\n data-relation-to={relationTo}\n >\n {pillLabel && (\n <span className={`${baseClass}__pill`} data-enable-match=\"false\">\n {pillLabel}\n </span>\n )}\n <strong className={`${baseClass}__info`} data-enable-match=\"false\">\n {title}\n </strong>\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -101,7 +101,7 @@ export const Tabs = props => {
|
|
|
101
101
|
return t0;
|
|
102
102
|
};
|
|
103
103
|
const Tab = t0 => {
|
|
104
|
-
const $ = _c(
|
|
104
|
+
const $ = _c(12);
|
|
105
105
|
const {
|
|
106
106
|
comparisonValue: valueFrom,
|
|
107
107
|
fieldTab,
|
|
@@ -120,36 +120,45 @@ const Tab = t0 => {
|
|
|
120
120
|
return null;
|
|
121
121
|
}
|
|
122
122
|
let t1;
|
|
123
|
-
if ($[0] !==
|
|
124
|
-
t1 =
|
|
123
|
+
if ($[0] !== i18n || $[1] !== locale || $[2] !== tab) {
|
|
124
|
+
t1 = "label" in tab && tab.label && typeof tab.label !== "function" && _jsxs("span", {
|
|
125
|
+
children: [locale && _jsx("span", {
|
|
126
|
+
className: `${baseClass}__locale-label`,
|
|
127
|
+
children: locale
|
|
128
|
+
}), getTranslation(tab.label, i18n)]
|
|
129
|
+
});
|
|
130
|
+
$[0] = i18n;
|
|
131
|
+
$[1] = locale;
|
|
132
|
+
$[2] = tab;
|
|
133
|
+
$[3] = t1;
|
|
134
|
+
} else {
|
|
135
|
+
t1 = $[3];
|
|
136
|
+
}
|
|
137
|
+
const t2 = parentIsLocalized || fieldTab.localized;
|
|
138
|
+
let t3;
|
|
139
|
+
if ($[4] !== fieldTab.fields || $[5] !== selectedLocales || $[6] !== t1 || $[7] !== t2 || $[8] !== tab.fields || $[9] !== valueFrom || $[10] !== valueTo) {
|
|
140
|
+
t3 = _jsx(DiffCollapser, {
|
|
125
141
|
fields: fieldTab.fields,
|
|
126
|
-
Label:
|
|
127
|
-
children: [locale && _jsx("span", {
|
|
128
|
-
className: `${baseClass}__locale-label`,
|
|
129
|
-
children: locale
|
|
130
|
-
}), getTranslation(tab.label, i18n)]
|
|
131
|
-
}),
|
|
142
|
+
Label: t1,
|
|
132
143
|
locales: selectedLocales,
|
|
133
|
-
parentIsLocalized:
|
|
144
|
+
parentIsLocalized: t2,
|
|
134
145
|
valueFrom,
|
|
135
146
|
valueTo,
|
|
136
147
|
children: _jsx(RenderVersionFieldsToDiff, {
|
|
137
148
|
versionFields: tab.fields
|
|
138
149
|
})
|
|
139
150
|
});
|
|
140
|
-
$[
|
|
141
|
-
$[1] = fieldTab.localized;
|
|
142
|
-
$[2] = i18n;
|
|
143
|
-
$[3] = locale;
|
|
144
|
-
$[4] = parentIsLocalized;
|
|
151
|
+
$[4] = fieldTab.fields;
|
|
145
152
|
$[5] = selectedLocales;
|
|
146
|
-
$[6] =
|
|
147
|
-
$[7] =
|
|
148
|
-
$[8] =
|
|
149
|
-
$[9] =
|
|
153
|
+
$[6] = t1;
|
|
154
|
+
$[7] = t2;
|
|
155
|
+
$[8] = tab.fields;
|
|
156
|
+
$[9] = valueFrom;
|
|
157
|
+
$[10] = valueTo;
|
|
158
|
+
$[11] = t3;
|
|
150
159
|
} else {
|
|
151
|
-
|
|
160
|
+
t3 = $[11];
|
|
152
161
|
}
|
|
153
|
-
return
|
|
162
|
+
return t3;
|
|
154
163
|
};
|
|
155
164
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["c","_c","getTranslation","useTranslation","React","useSelectedLocales","DiffCollapser","RenderVersionFieldsToDiff","baseClass","Tabs","props","$","baseVersionField","comparisonValue","valueFrom","field","versionValue","valueTo","selectedLocales","t0","tabs","t1","tab","i","fields","length","fieldTab","_jsx","className","children","localized","map","locale","index","localizedTabProps","name","Tab","join","namedTabProps","parentIsLocalized","i18n","
|
|
1
|
+
{"version":3,"file":"index.js","names":["c","_c","getTranslation","useTranslation","React","useSelectedLocales","DiffCollapser","RenderVersionFieldsToDiff","baseClass","Tabs","props","$","baseVersionField","comparisonValue","valueFrom","field","versionValue","valueTo","selectedLocales","t0","tabs","t1","tab","i","fields","length","fieldTab","_jsx","className","children","localized","map","locale","index","localizedTabProps","name","Tab","join","namedTabProps","parentIsLocalized","i18n","label","_jsxs","t2","t3","Label","versionFields"],"sources":["../../../../../../src/views/Version/RenderFieldsToDiff/fields/Tabs/index.tsx"],"sourcesContent":["'use client'\nimport type {\n ClientTab,\n FieldDiffClientProps,\n TabsFieldClient,\n TabsFieldDiffClientComponent,\n VersionTab,\n} from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { useTranslation } from '@payloadcms/ui'\nimport React from 'react'\n\nimport './index.scss'\nimport { useSelectedLocales } from '../../../Default/SelectedLocalesContext.js'\nimport { DiffCollapser } from '../../DiffCollapser/index.js'\nimport { RenderVersionFieldsToDiff } from '../../RenderVersionFieldsToDiff.js'\n\nconst baseClass = 'tabs-diff'\n\nexport const Tabs: TabsFieldDiffClientComponent = (props) => {\n const { baseVersionField, comparisonValue: valueFrom, field, versionValue: valueTo } = props\n const { selectedLocales } = useSelectedLocales()\n\n return (\n <div className={baseClass}>\n {baseVersionField.tabs.map((tab, i) => {\n if (!tab?.fields?.length) {\n return null\n }\n const fieldTab = field.tabs?.[i]\n return (\n <div className={`${baseClass}__tab`} key={i}>\n {(() => {\n if ('name' in fieldTab && selectedLocales && fieldTab.localized) {\n // Named localized tab\n return selectedLocales.map((locale, index) => {\n const localizedTabProps: TabProps = {\n ...props,\n comparisonValue: valueFrom?.[tab.name]?.[locale],\n fieldTab,\n locale,\n tab,\n versionValue: valueTo?.[tab.name]?.[locale],\n }\n return (\n <div className={`${baseClass}__tab-locale`} key={[locale, index].join('-')}>\n <div className={`${baseClass}__tab-locale-value`}>\n <Tab key={locale} {...localizedTabProps} />\n </div>\n </div>\n )\n })\n } else if ('name' in tab && tab.name) {\n // Named tab\n const namedTabProps: TabProps = {\n ...props,\n comparisonValue: valueFrom?.[tab.name],\n fieldTab,\n tab,\n versionValue: valueTo?.[tab.name],\n }\n return <Tab key={i} {...namedTabProps} />\n } else {\n // Unnamed tab\n return <Tab fieldTab={fieldTab} key={i} {...props} tab={tab} />\n }\n })()}\n </div>\n )\n })}\n </div>\n )\n}\n\ntype TabProps = {\n fieldTab: ClientTab\n tab: VersionTab\n} & FieldDiffClientProps<TabsFieldClient>\n\nconst Tab: React.FC<TabProps> = ({\n comparisonValue: valueFrom,\n fieldTab,\n locale,\n parentIsLocalized,\n tab,\n versionValue: valueTo,\n}) => {\n const { i18n } = useTranslation()\n const { selectedLocales } = useSelectedLocales()\n\n if (!tab.fields?.length) {\n return null\n }\n\n return (\n <DiffCollapser\n fields={fieldTab.fields}\n Label={\n 'label' in tab &&\n tab.label &&\n typeof tab.label !== 'function' && (\n <span>\n {locale && <span className={`${baseClass}__locale-label`}>{locale}</span>}\n {getTranslation(tab.label, i18n)}\n </span>\n )\n }\n locales={selectedLocales}\n parentIsLocalized={parentIsLocalized || fieldTab.localized}\n valueFrom={valueFrom}\n valueTo={valueTo}\n >\n <RenderVersionFieldsToDiff versionFields={tab.fields} />\n </DiffCollapser>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|