@payloadcms/next 3.35.0-internal.b3d367c → 3.35.0
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/login.d.ts +22 -0
- package/dist/auth/login.d.ts.map +1 -0
- package/dist/auth/login.js +71 -0
- package/dist/auth/login.js.map +1 -0
- package/dist/auth/logout.d.ts +7 -0
- package/dist/auth/logout.d.ts.map +1 -0
- package/dist/auth/logout.js +37 -0
- package/dist/auth/logout.js.map +1 -0
- package/dist/auth/refresh.d.ts +9 -0
- package/dist/auth/refresh.d.ts.map +1 -0
- package/dist/auth/refresh.js +48 -0
- package/dist/auth/refresh.js.map +1 -0
- package/dist/exports/auth.d.ts +4 -0
- package/dist/exports/auth.d.ts.map +1 -0
- package/dist/exports/auth.js +4 -0
- package/dist/exports/auth.js.map +1 -0
- package/dist/prod/styles.css +1 -1
- package/dist/utilities/getExistingAuthToken.d.ts +7 -0
- package/dist/utilities/getExistingAuthToken.d.ts.map +1 -0
- package/dist/utilities/getExistingAuthToken.js +6 -0
- package/dist/utilities/getExistingAuthToken.js.map +1 -0
- package/dist/utilities/setPayloadAuthCookie.d.ts +9 -0
- package/dist/utilities/setPayloadAuthCookie.d.ts.map +1 -0
- package/dist/utilities/setPayloadAuthCookie.js +27 -0
- package/dist/utilities/setPayloadAuthCookie.js.map +1 -0
- package/dist/views/API/index.client.d.ts.map +1 -1
- package/dist/views/API/index.client.js +2 -1
- package/dist/views/API/index.client.js.map +1 -1
- package/dist/views/LivePreview/Toolbar/Controls/index.d.ts.map +1 -1
- package/dist/views/LivePreview/Toolbar/Controls/index.js +2 -2
- package/dist/views/LivePreview/Toolbar/Controls/index.js.map +1 -1
- package/dist/views/Version/Default/SetStepNav.d.ts +2 -2
- package/dist/views/Version/Default/SetStepNav.d.ts.map +1 -1
- package/dist/views/Version/Default/SetStepNav.js +5 -4
- 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 +127 -332
- package/dist/views/Version/Default/index.js.map +1 -1
- package/dist/views/Version/Default/index.scss +32 -102
- package/dist/views/Version/Default/types.d.ts +8 -12
- 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.d.ts +4 -4
- package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.d.ts.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.js +33 -32
- package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.scss +3 -30
- package/dist/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.d.ts +1 -6
- package/dist/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.d.ts.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.js +17 -21
- package/dist/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.d.ts +3 -4
- package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.d.ts.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js +55 -80
- package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.js +11 -11
- package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.js +11 -11
- package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.scss +10 -0
- package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js +20 -20
- package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.scss +5 -3
- package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.d.ts.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js +58 -49
- package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.scss +11 -0
- package/dist/views/Version/RenderFieldsToDiff/fields/Select/DiffViewer/index.d.ts +9 -0
- package/dist/views/Version/RenderFieldsToDiff/fields/Select/DiffViewer/index.d.ts.map +1 -0
- package/dist/views/Version/RenderFieldsToDiff/fields/Select/DiffViewer/index.js +23 -0
- package/dist/views/Version/RenderFieldsToDiff/fields/Select/DiffViewer/index.js.map +1 -0
- package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.d.ts.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js +45 -39
- package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.scss +11 -0
- package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.d.ts.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js +37 -37
- package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.scss +11 -0
- package/dist/views/Version/RenderFieldsToDiff/fields/Text/DiffViewer/index.d.ts +9 -0
- package/dist/views/Version/RenderFieldsToDiff/fields/Text/DiffViewer/index.d.ts.map +1 -0
- package/dist/views/Version/RenderFieldsToDiff/fields/Text/DiffViewer/index.js +23 -0
- package/dist/views/Version/RenderFieldsToDiff/fields/Text/DiffViewer/index.js.map +1 -0
- package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.d.ts.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.js +60 -77
- package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.scss +11 -0
- package/dist/views/Version/RenderFieldsToDiff/fields/diffMethods.d.ts +7 -0
- package/dist/views/Version/RenderFieldsToDiff/fields/diffMethods.d.ts.map +1 -0
- package/dist/views/Version/RenderFieldsToDiff/fields/diffMethods.js +7 -0
- package/dist/views/Version/RenderFieldsToDiff/fields/diffMethods.js.map +1 -0
- package/dist/views/Version/RenderFieldsToDiff/fields/index.d.ts.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/index.js +1 -2
- package/dist/views/Version/RenderFieldsToDiff/fields/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/styles.d.ts +3 -0
- package/dist/views/Version/RenderFieldsToDiff/fields/styles.d.ts.map +1 -0
- package/dist/views/Version/RenderFieldsToDiff/fields/styles.js +37 -0
- package/dist/views/Version/RenderFieldsToDiff/fields/styles.js.map +1 -0
- package/dist/views/Version/RenderFieldsToDiff/index.js +0 -1
- package/dist/views/Version/RenderFieldsToDiff/index.js.map +1 -1
- package/dist/views/Version/Restore/index.d.ts.map +1 -1
- package/dist/views/Version/Restore/index.js +1 -1
- package/dist/views/Version/Restore/index.js.map +1 -1
- package/dist/views/Version/Restore/index.scss +1 -6
- package/dist/views/Version/SelectComparison/index.d.ts.map +1 -1
- package/dist/views/Version/SelectComparison/index.js +68 -26
- package/dist/views/Version/SelectComparison/index.js.map +1 -1
- package/dist/views/Version/SelectComparison/index.scss +4 -0
- package/dist/views/Version/SelectComparison/types.d.ts +4 -4
- package/dist/views/Version/SelectComparison/types.d.ts.map +1 -1
- package/dist/views/Version/SelectComparison/types.js.map +1 -1
- package/dist/views/Version/SelectLocales/index.d.ts +2 -9
- package/dist/views/Version/SelectLocales/index.d.ts.map +1 -1
- package/dist/views/Version/SelectLocales/index.js +60 -33
- package/dist/views/Version/SelectLocales/index.js.map +1 -1
- package/dist/views/Version/SelectLocales/index.scss +9 -0
- package/dist/views/Version/SelectLocales/types.d.ts +7 -0
- package/dist/views/Version/SelectLocales/types.d.ts.map +1 -0
- package/dist/views/Version/SelectLocales/types.js +2 -0
- package/dist/views/Version/SelectLocales/types.js.map +1 -0
- package/dist/views/Version/index.d.ts.map +1 -1
- package/dist/views/Version/index.js +56 -105
- package/dist/views/Version/index.js.map +1 -1
- package/dist/views/Versions/cells/AutosaveCell/index.d.ts.map +1 -1
- package/dist/views/Versions/cells/AutosaveCell/index.js +4 -4
- package/dist/views/Versions/cells/AutosaveCell/index.js.map +1 -1
- package/dist/views/Versions/getLatestVersion.d.ts +2 -2
- package/dist/views/Versions/getLatestVersion.d.ts.map +1 -1
- package/dist/views/Versions/getLatestVersion.js.map +1 -1
- package/package.json +8 -7
- package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.d.ts +0 -4
- package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.d.ts.map +0 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.js +0 -78
- package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.js.map +0 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.scss +0 -4
- package/dist/views/Version/SelectComparison/VersionPillLabel.d.ts +0 -6
- package/dist/views/Version/SelectComparison/VersionPillLabel.d.ts.map +0 -1
- package/dist/views/Version/SelectComparison/VersionPillLabel.js +0 -70
- package/dist/views/Version/SelectComparison/VersionPillLabel.js.map +0 -1
- package/dist/views/Version/SelectComparison/formatVersionPill.d.ts +0 -8
- package/dist/views/Version/SelectComparison/formatVersionPill.d.ts.map +0 -1
- package/dist/views/Version/SelectComparison/formatVersionPill.js +0 -24
- package/dist/views/Version/SelectComparison/formatVersionPill.js.map +0 -1
|
@@ -15,11 +15,11 @@ export const Iterable = t0 => {
|
|
|
15
15
|
const $ = _c(15);
|
|
16
16
|
const {
|
|
17
17
|
baseVersionField,
|
|
18
|
-
comparisonValue
|
|
18
|
+
comparisonValue,
|
|
19
19
|
field,
|
|
20
20
|
locale,
|
|
21
21
|
parentIsLocalized,
|
|
22
|
-
versionValue
|
|
22
|
+
versionValue
|
|
23
23
|
} = t0;
|
|
24
24
|
const {
|
|
25
25
|
i18n
|
|
@@ -30,8 +30,8 @@ export const Iterable = t0 => {
|
|
|
30
30
|
const {
|
|
31
31
|
config
|
|
32
32
|
} = useConfig();
|
|
33
|
-
const versionRowCount = Array.isArray(
|
|
34
|
-
const comparisonRowCount = Array.isArray(
|
|
33
|
+
const versionRowCount = Array.isArray(versionValue) ? versionValue.length : 0;
|
|
34
|
+
const comparisonRowCount = Array.isArray(comparisonValue) ? comparisonValue.length : 0;
|
|
35
35
|
const maxRows = Math.max(versionRowCount, comparisonRowCount);
|
|
36
36
|
if (!fieldIsArrayType(field) && !fieldIsBlockType(field)) {
|
|
37
37
|
throw new Error(`Expected field to be an array or blocks type but got: ${field.type}`);
|
|
@@ -52,22 +52,22 @@ export const Iterable = t0 => {
|
|
|
52
52
|
t1 = $[3];
|
|
53
53
|
}
|
|
54
54
|
let t2;
|
|
55
|
-
if ($[4] !== baseVersionField || $[5] !==
|
|
55
|
+
if ($[4] !== baseVersionField || $[5] !== comparisonValue || $[6] !== config || $[7] !== field || $[8] !== i18n || $[9] !== maxRows || $[10] !== parentIsLocalized || $[11] !== selectedLocales || $[12] !== t1 || $[13] !== versionValue) {
|
|
56
56
|
t2 = _jsx("div", {
|
|
57
57
|
className: baseClass,
|
|
58
58
|
children: _jsxs(DiffCollapser, {
|
|
59
|
+
comparison: comparisonValue,
|
|
59
60
|
field,
|
|
60
61
|
isIterable: true,
|
|
61
62
|
label: t1,
|
|
62
63
|
locales: selectedLocales,
|
|
63
64
|
parentIsLocalized,
|
|
64
|
-
|
|
65
|
-
valueTo,
|
|
65
|
+
version: versionValue,
|
|
66
66
|
children: [maxRows > 0 && _jsx("div", {
|
|
67
67
|
className: `${baseClass}__rows`,
|
|
68
68
|
children: Array.from(Array(maxRows).keys()).map((row, i) => {
|
|
69
|
-
const versionRow =
|
|
70
|
-
const comparisonRow =
|
|
69
|
+
const versionRow = versionValue?.[i] || {};
|
|
70
|
+
const comparisonRow = comparisonValue?.[i] || {};
|
|
71
71
|
const {
|
|
72
72
|
fields,
|
|
73
73
|
versionFields
|
|
@@ -84,12 +84,12 @@ export const Iterable = t0 => {
|
|
|
84
84
|
return _jsx("div", {
|
|
85
85
|
className: `${baseClass}__row`,
|
|
86
86
|
children: _jsx(DiffCollapser, {
|
|
87
|
+
comparison: comparisonRow,
|
|
87
88
|
fields,
|
|
88
89
|
label: rowLabel,
|
|
89
90
|
locales: selectedLocales,
|
|
90
91
|
parentIsLocalized: parentIsLocalized || field.localized,
|
|
91
|
-
|
|
92
|
-
valueTo: versionRow,
|
|
92
|
+
version: versionRow,
|
|
93
93
|
children: _jsx(RenderVersionFieldsToDiff, {
|
|
94
94
|
versionFields
|
|
95
95
|
})
|
|
@@ -105,15 +105,15 @@ export const Iterable = t0 => {
|
|
|
105
105
|
})
|
|
106
106
|
});
|
|
107
107
|
$[4] = baseVersionField;
|
|
108
|
-
$[5] =
|
|
109
|
-
$[6] =
|
|
110
|
-
$[7] =
|
|
111
|
-
$[8] =
|
|
112
|
-
$[9] =
|
|
113
|
-
$[10] =
|
|
114
|
-
$[11] =
|
|
115
|
-
$[12] =
|
|
116
|
-
$[13] =
|
|
108
|
+
$[5] = comparisonValue;
|
|
109
|
+
$[6] = config;
|
|
110
|
+
$[7] = field;
|
|
111
|
+
$[8] = i18n;
|
|
112
|
+
$[9] = maxRows;
|
|
113
|
+
$[10] = parentIsLocalized;
|
|
114
|
+
$[11] = selectedLocales;
|
|
115
|
+
$[12] = t1;
|
|
116
|
+
$[13] = versionValue;
|
|
117
117
|
$[14] = t2;
|
|
118
118
|
} else {
|
|
119
119
|
t2 = $[14];
|
|
@@ -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","
|
|
1
|
+
{"version":3,"file":"index.js","names":["c","_c","getTranslation","useConfig","useTranslation","fieldIsArrayType","fieldIsBlockType","React","useSelectedLocales","DiffCollapser","RenderVersionFieldsToDiff","getFieldsForRowComparison","baseClass","Iterable","t0","$","baseVersionField","comparisonValue","field","locale","parentIsLocalized","versionValue","i18n","selectedLocales","config","versionRowCount","Array","isArray","length","comparisonRowCount","maxRows","Math","max","Error","type","t1","label","_jsxs","children","_jsx","className","t2","comparison","isIterable","version","from","keys","map","row","i","versionRow","comparisonRow","fields","versionFields","rowNumber","String","padStart","rowLabel","locales","localized","t","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,\n field,\n locale,\n parentIsLocalized,\n versionValue,\n}) => {\n const { i18n } = useTranslation()\n const { selectedLocales } = useSelectedLocales()\n const { config } = useConfig()\n\n const versionRowCount = Array.isArray(versionValue) ? versionValue.length : 0\n const comparisonRowCount = Array.isArray(comparisonValue) ? comparisonValue.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 comparison={comparisonValue}\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 version={versionValue}\n >\n {maxRows > 0 && (\n <div className={`${baseClass}__rows`}>\n {Array.from(Array(maxRows).keys()).map((row, i) => {\n const versionRow = versionValue?.[i] || {}\n const comparisonRow = comparisonValue?.[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) ? `Item ${rowNumber}` : `Block ${rowNumber}`\n\n return (\n <div className={`${baseClass}__row`} key={i}>\n <DiffCollapser\n comparison={comparisonRow}\n fields={fields}\n label={rowLabel}\n locales={selectedLocales}\n parentIsLocalized={parentIsLocalized || field.localized}\n version={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":[]}
|
|
@@ -2,8 +2,7 @@
|
|
|
2
2
|
.iterable-diff {
|
|
3
3
|
&__locale-label {
|
|
4
4
|
background: var(--theme-elevation-100);
|
|
5
|
-
|
|
6
|
-
padding: calc(var(--base) * 0.2);
|
|
5
|
+
padding: calc(var(--base) * 0.25);
|
|
7
6
|
// border-radius: $style-radius-m;
|
|
8
7
|
[dir='ltr'] & {
|
|
9
8
|
margin-right: calc(var(--base) * 0.25);
|
|
@@ -19,7 +18,10 @@
|
|
|
19
18
|
}
|
|
20
19
|
|
|
21
20
|
&__no-rows {
|
|
22
|
-
|
|
21
|
+
font-family: monospace;
|
|
22
|
+
background-color: var(--theme-elevation-50);
|
|
23
|
+
// padding: base(0.125) calc(var(--base) * 0.5);
|
|
24
|
+
// margin: base(0.125) 0;
|
|
23
25
|
}
|
|
24
26
|
}
|
|
25
27
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/views/Version/RenderFieldsToDiff/fields/Relationship/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAIV,oCAAoC,EACrC,MAAM,SAAS,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/views/Version/RenderFieldsToDiff/fields/Relationship/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAIV,oCAAoC,EACrC,MAAM,SAAS,CAAA;AAQhB,OAAO,cAAc,CAAA;AAwFrB,eAAO,MAAM,YAAY,EAAE,oCAkF1B,CAAA"}
|
|
@@ -1,10 +1,13 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
|
|
3
3
|
import { c as _c } from "react/compiler-runtime";
|
|
4
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
5
|
-
import {
|
|
4
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
5
|
+
import { getTranslation } from '@payloadcms/translations';
|
|
6
|
+
import { FieldDiffLabel, useConfig, useTranslation } from '@payloadcms/ui';
|
|
6
7
|
import { fieldAffectsData, fieldIsPresentationalOnly, fieldShouldBeLocalized } from 'payload/shared';
|
|
7
8
|
import React from 'react';
|
|
9
|
+
import ReactDiffViewer from 'react-diff-viewer-continued';
|
|
10
|
+
import { diffStyles } from '../styles.js';
|
|
8
11
|
const baseClass = 'relationship-diff';
|
|
9
12
|
const generateLabelFromValue = (collections, field, locale, value, config, parentIsLocalized) => {
|
|
10
13
|
if (Array.isArray(value)) {
|
|
@@ -59,14 +62,13 @@ const generateLabelFromValue = (collections, field, locale, value, config, paren
|
|
|
59
62
|
return valueToReturn;
|
|
60
63
|
};
|
|
61
64
|
export const Relationship = t0 => {
|
|
62
|
-
const $ = _c(
|
|
65
|
+
const $ = _c(12);
|
|
63
66
|
const {
|
|
64
|
-
comparisonValue
|
|
67
|
+
comparisonValue,
|
|
65
68
|
field,
|
|
66
69
|
locale,
|
|
67
|
-
nestingLevel,
|
|
68
70
|
parentIsLocalized,
|
|
69
|
-
versionValue
|
|
71
|
+
versionValue
|
|
70
72
|
} = t0;
|
|
71
73
|
const {
|
|
72
74
|
i18n
|
|
@@ -81,55 +83,62 @@ export const Relationship = t0 => {
|
|
|
81
83
|
const {
|
|
82
84
|
collections
|
|
83
85
|
} = t1;
|
|
84
|
-
let
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
86
|
+
let t2;
|
|
87
|
+
if ($[0] !== collections || $[1] !== comparisonValue || $[2] !== config || $[3] !== field || $[4] !== i18n || $[5] !== locale || $[6] !== parentIsLocalized || $[7] !== placeholder || $[8] !== versionValue) {
|
|
88
|
+
let versionToRender = placeholder;
|
|
89
|
+
let comparisonToRender = placeholder;
|
|
90
|
+
if (versionValue) {
|
|
91
|
+
if ("hasMany" in field && field.hasMany && Array.isArray(versionValue)) {
|
|
92
|
+
versionToRender = versionValue.map(val => generateLabelFromValue(collections, field, locale, val, config, parentIsLocalized)).join(", ") || placeholder;
|
|
93
|
+
} else {
|
|
94
|
+
versionToRender = generateLabelFromValue(collections, field, locale, versionValue, config, parentIsLocalized) || placeholder;
|
|
95
|
+
}
|
|
91
96
|
}
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
97
|
+
if (comparisonValue) {
|
|
98
|
+
if ("hasMany" in field && field.hasMany && Array.isArray(comparisonValue)) {
|
|
99
|
+
comparisonToRender = comparisonValue.map(val_0 => generateLabelFromValue(collections, field, locale, val_0, config, parentIsLocalized)).join(", ") || placeholder;
|
|
100
|
+
} else {
|
|
101
|
+
comparisonToRender = generateLabelFromValue(collections, field, locale, comparisonValue, config, parentIsLocalized) || placeholder;
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
const label = "label" in field && typeof field.label !== "boolean" && typeof field.label !== "function" ? field.label : "";
|
|
105
|
+
let t3;
|
|
106
|
+
if ($[10] !== locale) {
|
|
107
|
+
t3 = locale && _jsx("span", {
|
|
108
|
+
className: `${baseClass}__locale-label`,
|
|
109
|
+
children: locale
|
|
110
|
+
});
|
|
111
|
+
$[10] = locale;
|
|
112
|
+
$[11] = t3;
|
|
96
113
|
} else {
|
|
97
|
-
|
|
114
|
+
t3 = $[11];
|
|
98
115
|
}
|
|
99
|
-
|
|
100
|
-
const t2 = "<p>" + renderedValueFrom + "</p>";
|
|
101
|
-
const t3 = "<p>" + renderedValueTo + "</p>";
|
|
102
|
-
let t4;
|
|
103
|
-
if ($[0] !== field.label || $[1] !== i18n || $[2] !== locale || $[3] !== nestingLevel || $[4] !== t2 || $[5] !== t3) {
|
|
104
|
-
const {
|
|
105
|
-
From,
|
|
106
|
-
To
|
|
107
|
-
} = getHTMLDiffComponents({
|
|
108
|
-
fromHTML: t2,
|
|
109
|
-
toHTML: t3,
|
|
110
|
-
tokenizeByCharacter: false
|
|
111
|
-
});
|
|
112
|
-
t4 = _jsx(FieldDiffContainer, {
|
|
116
|
+
t2 = _jsxs("div", {
|
|
113
117
|
className: baseClass,
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
118
|
+
children: [_jsxs(FieldDiffLabel, {
|
|
119
|
+
children: [t3, getTranslation(label, i18n)]
|
|
120
|
+
}), _jsx(ReactDiffViewer, {
|
|
121
|
+
hideLineNumbers: true,
|
|
122
|
+
newValue: versionToRender,
|
|
123
|
+
oldValue: comparisonToRender,
|
|
124
|
+
showDiffOnly: false,
|
|
125
|
+
splitView: true,
|
|
126
|
+
styles: diffStyles
|
|
127
|
+
})]
|
|
122
128
|
});
|
|
123
|
-
$[0] =
|
|
124
|
-
$[1] =
|
|
125
|
-
$[2] =
|
|
126
|
-
$[3] =
|
|
127
|
-
$[4] =
|
|
128
|
-
$[5] =
|
|
129
|
-
$[6] =
|
|
129
|
+
$[0] = collections;
|
|
130
|
+
$[1] = comparisonValue;
|
|
131
|
+
$[2] = config;
|
|
132
|
+
$[3] = field;
|
|
133
|
+
$[4] = i18n;
|
|
134
|
+
$[5] = locale;
|
|
135
|
+
$[6] = parentIsLocalized;
|
|
136
|
+
$[7] = placeholder;
|
|
137
|
+
$[8] = versionValue;
|
|
138
|
+
$[9] = t2;
|
|
130
139
|
} else {
|
|
131
|
-
|
|
140
|
+
t2 = $[9];
|
|
132
141
|
}
|
|
133
|
-
return
|
|
142
|
+
return t2;
|
|
134
143
|
};
|
|
135
144
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["c","_c","FieldDiffContainer","getHTMLDiffComponents","useConfig","useTranslation","fieldAffectsData","fieldIsPresentationalOnly","fieldShouldBeLocalized","React","baseClass","generateLabelFromValue","collections","field","locale","value","config","parentIsLocalized","Array","isArray","map","v","filter","Boolean","join","relatedDoc","valueToReturn","relationTo","undefined","String","relatedCollection","find","slug","useAsTitle","admin","useAsTitleField","fields","f","name","titleFieldIsLocalized","id","JSON","stringify","Relationship","t0","$","comparisonValue","valueFrom","nestingLevel","versionValue","valueTo","i18n","placeholder","t","t1","renderedValueTo","renderedValueFrom","hasMany","val","val_0","t2","t3","t4","label","From","To","fromHTML","toHTML","tokenizeByCharacter","_jsx","className"],"sources":["../../../../../../src/views/Version/RenderFieldsToDiff/fields/Relationship/index.tsx"],"sourcesContent":["'use client'\nimport type {\n ClientCollectionConfig,\n ClientConfig,\n ClientField,\n RelationshipFieldDiffClientComponent,\n} from 'payload'\n\nimport {\n FieldDiffContainer,\n getHTMLDiffComponents,\n useConfig,\n useTranslation,\n} from '@payloadcms/ui'\nimport { fieldAffectsData, fieldIsPresentationalOnly, fieldShouldBeLocalized } from 'payload/shared'\nimport React from 'react'\n\nimport './index.scss'\n\nconst baseClass = 'relationship-diff'\n\ntype RelationshipValue = Record<string, any>\n\nconst generateLabelFromValue = (\n collections: ClientCollectionConfig[],\n field: ClientField,\n locale: string,\n value: { relationTo: string; value: RelationshipValue } | RelationshipValue,\n config: ClientConfig,\n parentIsLocalized: boolean,\n): string => {\n if (Array.isArray(value)) {\n return value\n .map((v) => generateLabelFromValue(collections, field, locale, v, config, parentIsLocalized))\n .filter(Boolean) // Filters out any undefined or empty values\n .join(', ')\n }\n\n let relatedDoc: RelationshipValue\n let valueToReturn: RelationshipValue | string = ''\n\n const relationTo = 'relationTo' in field ? field.relationTo : undefined\n\n if (value === null || typeof value === 'undefined') {\n // eslint-disable-next-line @typescript-eslint/no-base-to-string -- We want to return a string specifilly for null and undefined\n return String(value)\n }\n\n if (typeof value === 'object' && 'relationTo' in value) {\n relatedDoc = value.value\n } else {\n // Non-polymorphic relationship\n relatedDoc = value\n }\n\n const relatedCollection = relationTo\n ? collections.find(\n (c) =>\n c.slug ===\n (typeof value === 'object' && 'relationTo' in value ? value.relationTo : relationTo),\n )\n : null\n\n if (relatedCollection) {\n const useAsTitle = relatedCollection?.admin?.useAsTitle\n const useAsTitleField = relatedCollection.fields.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 if (typeof relatedDoc?.id !== 'undefined') {\n valueToReturn = relatedDoc.id\n } else {\n valueToReturn = relatedDoc\n }\n\n if (typeof valueToReturn === 'object' && titleFieldIsLocalized && valueToReturn?.[locale]) {\n valueToReturn = valueToReturn[locale]\n }\n } else if (relatedDoc) {\n // Handle non-polymorphic `hasMany` relationships or fallback\n if (typeof relatedDoc?.id !== 'undefined') {\n valueToReturn = String(relatedDoc.id)\n } else {\n valueToReturn = relatedDoc\n }\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\nexport const Relationship: RelationshipFieldDiffClientComponent = ({\n comparisonValue: valueFrom,\n field,\n locale,\n nestingLevel,\n parentIsLocalized,\n versionValue: valueTo,\n}) => {\n const { i18n } = useTranslation()\n const { config } = useConfig()\n\n const placeholder = `[${i18n.t('general:noValue')}]`\n\n const {\n config: { collections },\n } = useConfig()\n\n let renderedValueTo: string | undefined = placeholder\n let renderedValueFrom: string | undefined = placeholder\n\n if (valueTo) {\n if ('hasMany' in field && field.hasMany && Array.isArray(valueTo)) {\n renderedValueTo =\n valueTo\n .map((val) =>\n generateLabelFromValue(collections, field, locale, val, config, parentIsLocalized),\n )\n .join(', ') || placeholder\n } else {\n renderedValueTo =\n generateLabelFromValue(collections, field, locale, valueTo, config, parentIsLocalized) ||\n placeholder\n }\n }\n\n if (valueFrom) {\n if ('hasMany' in field && field.hasMany && Array.isArray(valueFrom)) {\n renderedValueFrom =\n valueFrom\n .map((val) =>\n generateLabelFromValue(collections, field, locale, val, config, parentIsLocalized),\n )\n .join(', ') || placeholder\n } else {\n renderedValueFrom =\n generateLabelFromValue(collections, field, locale, valueFrom, config, parentIsLocalized) ||\n placeholder\n }\n }\n\n const { From, To } = getHTMLDiffComponents({\n fromHTML: '<p>' + renderedValueFrom + '</p>',\n toHTML: '<p>' + renderedValueTo + '</p>',\n tokenizeByCharacter: false,\n })\n\n return (\n <FieldDiffContainer\n className={baseClass}\n From={From}\n i18n={i18n}\n label={{\n label: field.label,\n locale,\n }}\n nestingLevel={nestingLevel}\n To={To}\n />\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["c","_c","getTranslation","FieldDiffLabel","useConfig","useTranslation","fieldAffectsData","fieldIsPresentationalOnly","fieldShouldBeLocalized","React","ReactDiffViewer","diffStyles","baseClass","generateLabelFromValue","collections","field","locale","value","config","parentIsLocalized","Array","isArray","map","v","filter","Boolean","join","relatedDoc","valueToReturn","relationTo","undefined","String","relatedCollection","find","slug","useAsTitle","admin","useAsTitleField","fields","f","name","titleFieldIsLocalized","id","JSON","stringify","Relationship","t0","$","comparisonValue","versionValue","i18n","placeholder","t","t1","t2","versionToRender","comparisonToRender","hasMany","val","val_0","label","t3","_jsx","className","children","_jsxs","hideLineNumbers","newValue","oldValue","showDiffOnly","splitView","styles"],"sources":["../../../../../../src/views/Version/RenderFieldsToDiff/fields/Relationship/index.tsx"],"sourcesContent":["'use client'\nimport type {\n ClientCollectionConfig,\n ClientConfig,\n ClientField,\n RelationshipFieldDiffClientComponent,\n} from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { FieldDiffLabel, useConfig, useTranslation } from '@payloadcms/ui'\nimport { fieldAffectsData, fieldIsPresentationalOnly, fieldShouldBeLocalized } from 'payload/shared'\nimport React from 'react'\nimport ReactDiffViewer from 'react-diff-viewer-continued'\n\nimport './index.scss'\nimport { diffStyles } from '../styles.js'\n\nconst baseClass = 'relationship-diff'\n\ntype RelationshipValue = Record<string, any>\n\nconst generateLabelFromValue = (\n collections: ClientCollectionConfig[],\n field: ClientField,\n locale: string,\n value: { relationTo: string; value: RelationshipValue } | RelationshipValue,\n config: ClientConfig,\n parentIsLocalized: boolean,\n): string => {\n if (Array.isArray(value)) {\n return value\n .map((v) => generateLabelFromValue(collections, field, locale, v, config, parentIsLocalized))\n .filter(Boolean) // Filters out any undefined or empty values\n .join(', ')\n }\n\n let relatedDoc: RelationshipValue\n let valueToReturn: RelationshipValue | string = ''\n\n const relationTo = 'relationTo' in field ? field.relationTo : undefined\n\n if (value === null || typeof value === 'undefined') {\n // eslint-disable-next-line @typescript-eslint/no-base-to-string -- We want to return a string specifilly for null and undefined\n return String(value)\n }\n\n if (typeof value === 'object' && 'relationTo' in value) {\n relatedDoc = value.value\n } else {\n // Non-polymorphic relationship\n relatedDoc = value\n }\n\n const relatedCollection = relationTo\n ? collections.find(\n (c) =>\n c.slug ===\n (typeof value === 'object' && 'relationTo' in value ? value.relationTo : relationTo),\n )\n : null\n\n if (relatedCollection) {\n const useAsTitle = relatedCollection?.admin?.useAsTitle\n const useAsTitleField = relatedCollection.fields.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 if (typeof relatedDoc?.id !== 'undefined') {\n valueToReturn = relatedDoc.id\n } else {\n valueToReturn = relatedDoc\n }\n\n if (typeof valueToReturn === 'object' && titleFieldIsLocalized && valueToReturn?.[locale]) {\n valueToReturn = valueToReturn[locale]\n }\n } else if (relatedDoc) {\n // Handle non-polymorphic `hasMany` relationships or fallback\n if (typeof relatedDoc?.id !== 'undefined') {\n valueToReturn = String(relatedDoc.id)\n } else {\n valueToReturn = relatedDoc\n }\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\nexport const Relationship: RelationshipFieldDiffClientComponent = ({\n comparisonValue,\n field,\n locale,\n parentIsLocalized,\n versionValue,\n}) => {\n const { i18n } = useTranslation()\n const { config } = useConfig()\n\n const placeholder = `[${i18n.t('general:noValue')}]`\n\n const {\n config: { collections },\n } = useConfig()\n\n let versionToRender: string | undefined = placeholder\n let comparisonToRender: string | undefined = placeholder\n\n if (versionValue) {\n if ('hasMany' in field && field.hasMany && Array.isArray(versionValue)) {\n versionToRender =\n versionValue\n .map((val) =>\n generateLabelFromValue(collections, field, locale, val, config, parentIsLocalized),\n )\n .join(', ') || placeholder\n } else {\n versionToRender =\n generateLabelFromValue(\n collections,\n field,\n locale,\n versionValue,\n config,\n parentIsLocalized,\n ) || placeholder\n }\n }\n\n if (comparisonValue) {\n if ('hasMany' in field && field.hasMany && Array.isArray(comparisonValue)) {\n comparisonToRender =\n comparisonValue\n .map((val) =>\n generateLabelFromValue(collections, field, locale, val, config, parentIsLocalized),\n )\n .join(', ') || placeholder\n } else {\n comparisonToRender =\n generateLabelFromValue(\n collections,\n field,\n locale,\n comparisonValue,\n config,\n parentIsLocalized,\n ) || placeholder\n }\n }\n\n const label =\n 'label' in field && typeof field.label !== 'boolean' && typeof field.label !== 'function'\n ? field.label\n : ''\n\n return (\n <div className={baseClass}>\n <FieldDiffLabel>\n {locale && <span className={`${baseClass}__locale-label`}>{locale}</span>}\n {getTranslation(label, i18n)}\n </FieldDiffLabel>\n <ReactDiffViewer\n hideLineNumbers\n newValue={versionToRender}\n oldValue={comparisonToRender}\n showDiffOnly={false}\n splitView\n styles={diffStyles}\n />\n </div>\n )\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AAQA,SAASC,cAAc,QAAQ;AAC/B,SAASC,cAAc,EAAEC,SAAS,EAAEC,cAAc,QAAQ;AAC1D,SAASC,gBAAgB,EAAEC,yBAAyB,EAAEC,sBAAsB,QAAQ;AACpF,OAAOC,KAAA,MAAW;AAClB,OAAOC,eAAA,MAAqB;AAG5B,SAASC,UAAU,QAAQ;AAE3B,MAAMC,SAAA,GAAY;AAIlB,MAAMC,sBAAA,GAAyBA,CAC7BC,WAAA,EACAC,KAAA,EACAC,MAAA,EACAC,KAAA,EACAC,MAAA,EACAC,iBAAA;EAEA,IAAIC,KAAA,CAAMC,OAAO,CAACJ,KAAA,GAAQ;IACxB,OAAOA,KAAA,CACJK,GAAG,CAAEC,CAAA,IAAMV,sBAAA,CAAuBC,WAAA,EAAaC,KAAA,EAAOC,MAAA,EAAQO,CAAA,EAAGL,MAAA,EAAQC,iBAAA,GACzEK,MAAM,CAACC,OAAA,EAAS;IAAA,CAChBC,IAAI,CAAC;EACV;EAEA,IAAIC,UAAA;EACJ,IAAIC,aAAA,GAA4C;EAEhD,MAAMC,UAAA,GAAa,gBAAgBd,KAAA,GAAQA,KAAA,CAAMc,UAAU,GAAGC,SAAA;EAE9D,IAAIb,KAAA,KAAU,QAAQ,OAAOA,KAAA,KAAU,aAAa;IAClD;IACA,OAAOc,MAAA,CAAOd,KAAA;EAChB;EAEA,IAAI,OAAOA,KAAA,KAAU,YAAY,gBAAgBA,KAAA,EAAO;IACtDU,UAAA,GAAaV,KAAA,CAAMA,KAAK;EAC1B,OAAO;IACL;IACAU,UAAA,GAAaV,KAAA;EACf;EAEA,MAAMe,iBAAA,GAAoBH,UAAA,GACtBf,WAAA,CAAYmB,IAAI,CACbjC,CAAA,IACCA,CAAA,CAAEkC,IAAI,MACL,OAAOjB,KAAA,KAAU,YAAY,gBAAgBA,KAAA,GAAQA,KAAA,CAAMY,UAAU,GAAGA,UAAS,KAEtF;EAEJ,IAAIG,iBAAA,EAAmB;IACrB,MAAMG,UAAA,GAAaH,iBAAA,EAAmBI,KAAA,EAAOD,UAAA;IAC7C,MAAME,eAAA,GAAkBL,iBAAA,CAAkBM,MAAM,CAACL,IAAI,CAClDM,CAAA,IAAMjC,gBAAA,CAAiBiC,CAAA,KAAM,CAAChC,yBAAA,CAA0BgC,CAAA,KAAMA,CAAA,CAAEC,IAAI,KAAKL,UAAA;IAE5E,IAAIM,qBAAA,GAAwB;IAE5B,IAAIJ,eAAA,IAAmB/B,gBAAA,CAAiB+B,eAAA,GAAkB;MACxDI,qBAAA,GAAwBjC,sBAAA,CAAuB;QAAEO,KAAA,EAAOsB,eAAA;QAAiBlB;MAAkB;IAC7F;IAEA,IAAI,OAAOQ,UAAA,GAAaQ,UAAA,CAAW,KAAK,aAAa;MACnDP,aAAA,GAAgBD,UAAU,CAACQ,UAAA,CAAW;IACxC,OAAO,IAAI,OAAOR,UAAA,EAAYe,EAAA,KAAO,aAAa;MAChDd,aAAA,GAAgBD,UAAA,CAAWe,EAAE;IAC/B,OAAO;MACLd,aAAA,GAAgBD,UAAA;IAClB;IAEA,IAAI,OAAOC,aAAA,KAAkB,YAAYa,qBAAA,IAAyBb,aAAA,GAAgBZ,MAAA,CAAO,EAAE;MACzFY,aAAA,GAAgBA,aAAa,CAACZ,MAAA,CAAO;IACvC;EACF,OAAO,IAAIW,UAAA,EAAY;IACrB;IACA,IAAI,OAAOA,UAAA,EAAYe,EAAA,KAAO,aAAa;MACzCd,aAAA,GAAgBG,MAAA,CAAOJ,UAAA,CAAWe,EAAE;IACtC,OAAO;MACLd,aAAA,GAAgBD,UAAA;IAClB;EACF;EAEA,IACEC,aAAC,IAAiB,OAAOA,aAAA,KAAkB,YAAYA,aAAA,KAAkB,QACzE,OAAOA,aAAA,KAAkB,UACzB;IACAA,aAAA,GAAgBe,IAAA,CAAKC,SAAS,CAAChB,aAAA;EACjC;EAEA,OAAOA,aAAA;AACT;AAEA,OAAO,MAAMiB,YAAA,GAAqDC,EAAA;EAAA,MAAAC,CAAA,GAAA9C,EAAA;EAAC;IAAA+C,eAAA;IAAAjC,KAAA;IAAAC,MAAA;IAAAG,iBAAA;IAAA8B;EAAA,IAAAH,EAMlE;EACC;IAAAI;EAAA,IAAiB7C,cAAA;EACjB;IAAAa;EAAA,IAAmBd,SAAA;EAEnB,MAAA+C,WAAA,GAAoB,IAAID,IAAA,CAAAE,CAAA,CAAO,qBAAqB;EAEpD;IAAAlC,MAAA,EAAAmC;EAAA,IAEIjD,SAAA;EADM;IAAAU;EAAA,IAAAuC,EAAe;EAAA,IAAAC,EAAA;EAAA,IAAAP,CAAA,QAAAjC,WAAA,IAAAiC,CAAA,QAAAC,eAAA,IAAAD,CAAA,QAAA7B,MAAA,IAAA6B,CAAA,QAAAhC,KAAA,IAAAgC,CAAA,QAAAG,IAAA,IAAAH,CAAA,QAAA/B,MAAA,IAAA+B,CAAA,QAAA5B,iBAAA,IAAA4B,CAAA,QAAAI,WAAA,IAAAJ,CAAA,QAAAE,YAAA;IAGzB,IAAAM,eAAA,GAA0CJ,WAAA;IAC1C,IAAAK,kBAAA,GAA6CL,WAAA;IAAA,IAEzCF,YAAA;MAAA,IACE,aAAalC,KAAA,IAASA,KAAA,CAAA0C,OAAa,IAAIrC,KAAA,CAAAC,OAAA,CAAc4B,YAAA;QACvDM,eAAA,CAAAA,CAAA,CACEN,YAAA,CAAA3B,GAAA,CAAAoC,GAAA,IAEI7C,sBAAA,CAAuBC,WAAA,EAAaC,KAAA,EAAOC,MAAA,EAAQ0C,GAAA,EAAKxC,MAAA,EAAQC,iBAAA,GAAAO,IAAA,CAE5D,SAASyB,WAAA;MALnB;QAOAI,eAAA,CAAAA,CAAA,CACEA,uBACEzC,WAAA,EACAC,KAAA,EACAC,MAAA,EACAiC,YAAA,EACA/B,MAAA,EACAC,iBAAA,KACGgC,WAAA;MARP;IAAA;IAAA,IAYAH,eAAA;MAAA,IACE,aAAajC,KAAA,IAASA,KAAA,CAAA0C,OAAa,IAAIrC,KAAA,CAAAC,OAAA,CAAc2B,eAAA;QACvDQ,kBAAA,CAAAA,CAAA,CACER,eAAA,CAAA1B,GAAA,CAAAqC,KAAA,IAEI9C,sBAAA,CAAuBC,WAAA,EAAaC,KAAA,EAAOC,MAAA,EAAQ0C,KAAA,EAAKxC,MAAA,EAAQC,iBAAA,GAAAO,IAAA,CAE5D,SAASyB,WAAA;MALnB;QAOAK,kBAAA,CAAAA,CAAA,CACEA,uBACE1C,WAAA,EACAC,KAAA,EACAC,MAAA,EACAgC,eAAA,EACA9B,MAAA,EACAC,iBAAA,KACGgC,WAAA;MARP;IAAA;IAYJ,MAAAS,KAAA,GACE,WAAW7C,KAAA,IAAS,OAAOA,KAAA,CAAA6C,KAAA,KAAgB,aAAa,OAAO7C,KAAA,CAAA6C,KAAA,KAAgB,aAC3E7C,KAAA,CAAA6C,KAAA,GACA;IAAA,IAAAC,EAAA;IAAA,IAAAd,CAAA,SAAA/B,MAAA;MAKC6C,EAAA,GAAA7C,MAAA,IAAU8C,IAAA,CAAC;QAAAC,SAAA,EAAgB,GAAAnD,SAAA,gBAA4B;QAAAoD,QAAA,EAAGhD;MAAA,C;;;;;;IAF/DsC,EAAA,GAAAW,KAAA,CAAC;MAAAF,SAAA,EAAAnD,SAAA;MAAAoD,QAAA,GACCC,KAAA,CAAA9D,cAAA;QAAA6D,QAAA,GACGH,E,EACA3D,cAAA,CAAe0D,KAAA,EAAOV,IAAA;MAAA,C,GAEzBY,IAAA,CAAApD,eAAA;QAAAwD,eAAA;QAAAC,QAAA,EAEYZ,eAAA;QAAAa,QAAA,EACAZ,kBAAA;QAAAa,YAAA;QAAAC,SAAA;QAAAC,MAAA,EAAA5D;MAAA,C;;;;;;;;;;;;;;;SARd2C,E;CAeJ","ignoreList":[]}
|
|
@@ -1,4 +1,15 @@
|
|
|
1
1
|
@layer payload-default {
|
|
2
2
|
.relationship-diff {
|
|
3
|
+
&__locale-label {
|
|
4
|
+
[dir='ltr'] & {
|
|
5
|
+
margin-right: calc(var(--base) * 0.25);
|
|
6
|
+
}
|
|
7
|
+
[dir='rtl'] & {
|
|
8
|
+
margin-left: calc(var(--base) * 0.25);
|
|
9
|
+
}
|
|
10
|
+
background: var(--theme-elevation-100);
|
|
11
|
+
padding: calc(var(--base) * 0.25);
|
|
12
|
+
// border-radius: $style-radius-m;
|
|
13
|
+
}
|
|
3
14
|
}
|
|
4
15
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../src/views/Version/RenderFieldsToDiff/fields/Select/DiffViewer/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAA;AAGzB,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC;IAChC,kBAAkB,EAAE,MAAM,CAAA;IAC1B,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,GAAG,CAAA;IACf,WAAW,EAAE,MAAM,CAAA;IACnB,eAAe,EAAE,MAAM,CAAA;CACxB,CAYA,CAAA"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
|
|
3
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
4
|
+
import React from 'react';
|
|
5
|
+
import ReactDiffViewer, { DiffMethod } from 'react-diff-viewer-continued';
|
|
6
|
+
export const DiffViewer = ({
|
|
7
|
+
comparisonToRender,
|
|
8
|
+
diffMethod,
|
|
9
|
+
diffStyles,
|
|
10
|
+
placeholder,
|
|
11
|
+
versionToRender
|
|
12
|
+
}) => {
|
|
13
|
+
return /*#__PURE__*/_jsx(ReactDiffViewer, {
|
|
14
|
+
compareMethod: DiffMethod[diffMethod],
|
|
15
|
+
hideLineNumbers: true,
|
|
16
|
+
newValue: typeof versionToRender !== 'undefined' ? versionToRender : placeholder,
|
|
17
|
+
oldValue: comparisonToRender,
|
|
18
|
+
showDiffOnly: false,
|
|
19
|
+
splitView: true,
|
|
20
|
+
styles: diffStyles
|
|
21
|
+
});
|
|
22
|
+
};
|
|
23
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":["React","ReactDiffViewer","DiffMethod","DiffViewer","comparisonToRender","diffMethod","diffStyles","placeholder","versionToRender","_jsx","compareMethod","hideLineNumbers","newValue","oldValue","showDiffOnly","splitView","styles"],"sources":["../../../../../../../src/views/Version/RenderFieldsToDiff/fields/Select/DiffViewer/index.tsx"],"sourcesContent":["'use client'\nimport React from 'react'\nimport ReactDiffViewer, { DiffMethod } from 'react-diff-viewer-continued'\n\nexport const DiffViewer: React.FC<{\n comparisonToRender: string\n diffMethod: string\n diffStyles: any\n placeholder: string\n versionToRender: string\n}> = ({ comparisonToRender, diffMethod, diffStyles, placeholder, versionToRender }) => {\n return (\n <ReactDiffViewer\n compareMethod={DiffMethod[diffMethod]}\n hideLineNumbers\n newValue={typeof versionToRender !== 'undefined' ? versionToRender : placeholder}\n oldValue={comparisonToRender}\n showDiffOnly={false}\n splitView\n styles={diffStyles}\n />\n )\n}\n"],"mappings":"AAAA;;;AACA,OAAOA,KAAA,MAAW;AAClB,OAAOC,eAAA,IAAmBC,UAAU,QAAQ;AAE5C,OAAO,MAAMC,UAAA,GAMRA,CAAC;EAAEC,kBAAkB;EAAEC,UAAU;EAAEC,UAAU;EAAEC,WAAW;EAAEC;AAAe,CAAE;EAChF,oBACEC,IAAA,CAACR,eAAA;IACCS,aAAA,EAAeR,UAAU,CAACG,UAAA,CAAW;IACrCM,eAAe;IACfC,QAAA,EAAU,OAAOJ,eAAA,KAAoB,cAAcA,eAAA,GAAkBD,WAAA;IACrEM,QAAA,EAAUT,kBAAA;IACVU,YAAA,EAAc;IACdC,SAAS;IACTC,MAAA,EAAQV;;AAGd","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/views/Version/RenderFieldsToDiff/fields/Select/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAuB,8BAA8B,EAAE,MAAM,SAAS,CAAA;AAMlF,OAAO,cAAc,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/views/Version/RenderFieldsToDiff/fields/Select/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAuB,8BAA8B,EAAE,MAAM,SAAS,CAAA;AAMlF,OAAO,cAAc,CAAA;AAqDrB,eAAO,MAAM,MAAM,EAAE,8BAwDpB,CAAA"}
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
|
|
3
3
|
import { c as _c } from "react/compiler-runtime";
|
|
4
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
4
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
5
5
|
import { getTranslation } from '@payloadcms/translations';
|
|
6
|
-
import {
|
|
6
|
+
import { FieldDiffLabel, useTranslation } from '@payloadcms/ui';
|
|
7
7
|
import React from 'react';
|
|
8
|
+
import { diffStyles } from '../styles.js';
|
|
9
|
+
import { DiffViewer } from './DiffViewer/index.js';
|
|
8
10
|
const baseClass = 'select-diff';
|
|
9
11
|
const getOptionsToRender = (value, options, hasMany) => {
|
|
10
12
|
if (hasMany && Array.isArray(value)) {
|
|
@@ -35,57 +37,61 @@ const getTranslatedOptions = (options, i18n) => {
|
|
|
35
37
|
return typeof translatedLabel === 'string' ? translatedLabel : options.value;
|
|
36
38
|
};
|
|
37
39
|
export const Select = t0 => {
|
|
38
|
-
const $ = _c(
|
|
40
|
+
const $ = _c(11);
|
|
39
41
|
const {
|
|
40
|
-
comparisonValue
|
|
42
|
+
comparisonValue,
|
|
43
|
+
diffMethod,
|
|
41
44
|
field,
|
|
42
45
|
locale,
|
|
43
|
-
|
|
44
|
-
versionValue: valueTo
|
|
46
|
+
versionValue
|
|
45
47
|
} = t0;
|
|
46
48
|
const {
|
|
47
49
|
i18n
|
|
48
50
|
} = useTranslation();
|
|
49
51
|
let placeholder = "";
|
|
50
|
-
if (
|
|
52
|
+
if (versionValue == comparisonValue) {
|
|
51
53
|
placeholder = `[${i18n.t("general:noValue")}]`;
|
|
52
54
|
}
|
|
53
55
|
const options = "options" in field && field.options;
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
56
|
+
let t1;
|
|
57
|
+
if ($[0] !== comparisonValue || $[1] !== diffMethod || $[2] !== field || $[3] !== i18n || $[4] !== locale || $[5] !== options || $[6] !== placeholder || $[7] !== versionValue) {
|
|
58
|
+
const comparisonToRender = typeof comparisonValue !== "undefined" ? getTranslatedOptions(getOptionsToRender(typeof comparisonValue === "string" ? comparisonValue : JSON.stringify(comparisonValue), options, field.hasMany), i18n) : placeholder;
|
|
59
|
+
const versionToRender = typeof versionValue !== "undefined" ? getTranslatedOptions(getOptionsToRender(typeof versionValue === "string" ? versionValue : JSON.stringify(versionValue), options, field.hasMany), i18n) : placeholder;
|
|
60
|
+
let t2;
|
|
61
|
+
if ($[9] !== locale) {
|
|
62
|
+
t2 = locale && _jsx("span", {
|
|
63
|
+
className: `${baseClass}__locale-label`,
|
|
64
|
+
children: locale
|
|
65
|
+
});
|
|
66
|
+
$[9] = locale;
|
|
67
|
+
$[10] = t2;
|
|
68
|
+
} else {
|
|
69
|
+
t2 = $[10];
|
|
70
|
+
}
|
|
71
|
+
t1 = _jsxs("div", {
|
|
69
72
|
className: baseClass,
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
73
|
+
children: [_jsxs(FieldDiffLabel, {
|
|
74
|
+
children: [t2, "label" in field && getTranslation(field.label || "", i18n)]
|
|
75
|
+
}), _jsx(DiffViewer, {
|
|
76
|
+
comparisonToRender,
|
|
77
|
+
diffMethod,
|
|
78
|
+
diffStyles,
|
|
79
|
+
placeholder,
|
|
80
|
+
versionToRender
|
|
81
|
+
})]
|
|
78
82
|
});
|
|
79
|
-
$[0] =
|
|
80
|
-
$[1] =
|
|
81
|
-
$[2] =
|
|
82
|
-
$[3] =
|
|
83
|
-
$[4] =
|
|
84
|
-
$[5] =
|
|
85
|
-
$[6] =
|
|
83
|
+
$[0] = comparisonValue;
|
|
84
|
+
$[1] = diffMethod;
|
|
85
|
+
$[2] = field;
|
|
86
|
+
$[3] = i18n;
|
|
87
|
+
$[4] = locale;
|
|
88
|
+
$[5] = options;
|
|
89
|
+
$[6] = placeholder;
|
|
90
|
+
$[7] = versionValue;
|
|
91
|
+
$[8] = t1;
|
|
86
92
|
} else {
|
|
87
|
-
|
|
93
|
+
t1 = $[8];
|
|
88
94
|
}
|
|
89
|
-
return
|
|
95
|
+
return t1;
|
|
90
96
|
};
|
|
91
97
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["c","_c","getTranslation","
|
|
1
|
+
{"version":3,"file":"index.js","names":["c","_c","getTranslation","FieldDiffLabel","useTranslation","React","diffStyles","DiffViewer","baseClass","getOptionsToRender","value","options","hasMany","Array","isArray","map","val","find","option","String","getTranslatedOptions","i18n","translatedLabel","label","join","Select","t0","$","comparisonValue","diffMethod","field","locale","versionValue","placeholder","t","t1","comparisonToRender","JSON","stringify","versionToRender","t2","_jsx","className","children","_jsxs"],"sources":["../../../../../../src/views/Version/RenderFieldsToDiff/fields/Select/index.tsx"],"sourcesContent":["'use client'\nimport type { I18nClient } from '@payloadcms/translations'\nimport type { Option, SelectField, SelectFieldDiffClientComponent } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { FieldDiffLabel, useTranslation } from '@payloadcms/ui'\nimport React from 'react'\n\nimport './index.scss'\nimport { diffStyles } from '../styles.js'\nimport { DiffViewer } from './DiffViewer/index.js'\n\nconst baseClass = 'select-diff'\n\nconst getOptionsToRender = (\n value: string,\n options: SelectField['options'],\n hasMany: boolean,\n): Option | Option[] => {\n if (hasMany && Array.isArray(value)) {\n return value.map(\n (val) =>\n options.find((option) => (typeof option === 'string' ? option : option.value) === val) ||\n String(val),\n )\n }\n return (\n options.find((option) => (typeof option === 'string' ? option : option.value) === value) ||\n String(value)\n )\n}\n\n/**\n * Translates option labels while ensuring they are strings.\n * If `options.label` is a JSX element, it falls back to `options.value` because `DiffViewer`\n * expects all values to be strings.\n */\nconst getTranslatedOptions = (options: Option | Option[], i18n: I18nClient): string => {\n if (Array.isArray(options)) {\n return options\n .map((option) => {\n if (typeof option === 'string') {\n return option\n }\n const translatedLabel = getTranslation(option.label, i18n)\n\n // Ensure the result is a string, otherwise use option.value\n return typeof translatedLabel === 'string' ? translatedLabel : option.value\n })\n .join(', ')\n }\n\n if (typeof options === 'string') {\n return options\n }\n\n const translatedLabel = getTranslation(options.label, i18n)\n\n return typeof translatedLabel === 'string' ? translatedLabel : options.value\n}\n\nexport const Select: SelectFieldDiffClientComponent = ({\n comparisonValue,\n diffMethod,\n field,\n locale,\n versionValue,\n}) => {\n const { i18n } = useTranslation()\n\n let placeholder = ''\n\n if (versionValue == comparisonValue) {\n placeholder = `[${i18n.t('general:noValue')}]`\n }\n\n const options = 'options' in field && field.options\n\n const comparisonToRender =\n typeof comparisonValue !== 'undefined'\n ? getTranslatedOptions(\n getOptionsToRender(\n typeof comparisonValue === 'string' ? comparisonValue : JSON.stringify(comparisonValue),\n options,\n field.hasMany,\n ),\n i18n,\n )\n : placeholder\n\n const versionToRender =\n typeof versionValue !== 'undefined'\n ? getTranslatedOptions(\n getOptionsToRender(\n typeof versionValue === 'string' ? versionValue : JSON.stringify(versionValue),\n options,\n field.hasMany,\n ),\n i18n,\n )\n : placeholder\n\n return (\n <div className={baseClass}>\n <FieldDiffLabel>\n {locale && <span className={`${baseClass}__locale-label`}>{locale}</span>}\n {'label' in field && getTranslation(field.label || '', i18n)}\n </FieldDiffLabel>\n <DiffViewer\n comparisonToRender={comparisonToRender}\n diffMethod={diffMethod}\n diffStyles={diffStyles}\n placeholder={placeholder}\n versionToRender={versionToRender}\n />\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,4 +1,15 @@
|
|
|
1
1
|
@layer payload-default {
|
|
2
2
|
.select-diff {
|
|
3
|
+
&__locale-label {
|
|
4
|
+
[dir='ltr'] & {
|
|
5
|
+
margin-right: calc(var(--base) * 0.25);
|
|
6
|
+
}
|
|
7
|
+
[dir='rtl'] & {
|
|
8
|
+
margin-left: calc(var(--base) * 0.25);
|
|
9
|
+
}
|
|
10
|
+
background: var(--theme-elevation-100);
|
|
11
|
+
padding: calc(var(--base) * 0.25);
|
|
12
|
+
// border-radius: $style-radius-m;
|
|
13
|
+
}
|
|
3
14
|
}
|
|
4
15
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/views/Version/RenderFieldsToDiff/fields/Tabs/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAIV,4BAA4B,EAE7B,MAAM,SAAS,CAAA;AAMhB,OAAO,cAAc,CAAA;AAOrB,eAAO,MAAM,IAAI,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/views/Version/RenderFieldsToDiff/fields/Tabs/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAIV,4BAA4B,EAE7B,MAAM,SAAS,CAAA;AAMhB,OAAO,cAAc,CAAA;AAOrB,eAAO,MAAM,IAAI,EAAE,4BAsDlB,CAAA"}
|