@payloadcms/next 3.24.0-canary.4c8cafd → 3.24.0-canary.58e9eb5

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.
Files changed (143) hide show
  1. package/dist/elements/DocumentHeader/Tabs/Tab/index.d.ts +2 -2
  2. package/dist/elements/DocumentHeader/Tabs/Tab/index.d.ts.map +1 -1
  3. package/dist/elements/DocumentHeader/Tabs/Tab/index.js.map +1 -1
  4. package/dist/elements/DocumentHeader/Tabs/index.d.ts.map +1 -1
  5. package/dist/elements/DocumentHeader/Tabs/index.js +2 -0
  6. package/dist/elements/DocumentHeader/Tabs/index.js.map +1 -1
  7. package/dist/elements/DocumentHeader/index.scss +0 -2
  8. package/dist/prod/styles.css +1 -1
  9. package/dist/views/API/index.d.ts +3 -2
  10. package/dist/views/API/index.d.ts.map +1 -1
  11. package/dist/views/API/index.js +2 -2
  12. package/dist/views/API/index.js.map +1 -1
  13. package/dist/views/Account/ResetPreferences/index.d.ts.map +1 -1
  14. package/dist/views/Account/ResetPreferences/index.js +19 -15
  15. package/dist/views/Account/ResetPreferences/index.js.map +1 -1
  16. package/dist/views/Account/index.d.ts +2 -2
  17. package/dist/views/Account/index.d.ts.map +1 -1
  18. package/dist/views/Account/index.js +4 -3
  19. package/dist/views/Account/index.js.map +1 -1
  20. package/dist/views/CreateFirstUser/index.d.ts +2 -2
  21. package/dist/views/CreateFirstUser/index.d.ts.map +1 -1
  22. package/dist/views/CreateFirstUser/index.js +3 -3
  23. package/dist/views/CreateFirstUser/index.js.map +1 -1
  24. package/dist/views/Dashboard/Default/index.d.ts +7 -5
  25. package/dist/views/Dashboard/Default/index.d.ts.map +1 -1
  26. package/dist/views/Dashboard/Default/index.js +2 -2
  27. package/dist/views/Dashboard/Default/index.js.map +1 -1
  28. package/dist/views/Dashboard/index.d.ts +2 -2
  29. package/dist/views/Dashboard/index.d.ts.map +1 -1
  30. package/dist/views/Dashboard/index.js +3 -3
  31. package/dist/views/Dashboard/index.js.map +1 -1
  32. package/dist/views/Document/getViewsFromConfig.d.ts +4 -4
  33. package/dist/views/Document/getViewsFromConfig.d.ts.map +1 -1
  34. package/dist/views/Document/getViewsFromConfig.js.map +1 -1
  35. package/dist/views/Document/handleServerFunction.d.ts.map +1 -1
  36. package/dist/views/Document/handleServerFunction.js +2 -0
  37. package/dist/views/Document/handleServerFunction.js.map +1 -1
  38. package/dist/views/Document/index.d.ts +4 -3
  39. package/dist/views/Document/index.d.ts.map +1 -1
  40. package/dist/views/Document/index.js +7 -7
  41. package/dist/views/Document/index.js.map +1 -1
  42. package/dist/views/Document/renderDocumentSlots.d.ts.map +1 -1
  43. package/dist/views/Document/renderDocumentSlots.js +6 -5
  44. package/dist/views/Document/renderDocumentSlots.js.map +1 -1
  45. package/dist/views/Edit/index.d.ts +2 -2
  46. package/dist/views/Edit/index.js.map +1 -1
  47. package/dist/views/ForgotPassword/index.d.ts +2 -2
  48. package/dist/views/ForgotPassword/index.d.ts.map +1 -1
  49. package/dist/views/ForgotPassword/index.js +3 -3
  50. package/dist/views/ForgotPassword/index.js.map +1 -1
  51. package/dist/views/List/handleServerFunction.d.ts.map +1 -1
  52. package/dist/views/List/handleServerFunction.js +2 -0
  53. package/dist/views/List/handleServerFunction.js.map +1 -1
  54. package/dist/views/List/index.d.ts +6 -5
  55. package/dist/views/List/index.d.ts.map +1 -1
  56. package/dist/views/List/index.js +30 -30
  57. package/dist/views/List/index.js.map +1 -1
  58. package/dist/views/List/renderListViewSlots.d.ts +3 -4
  59. package/dist/views/List/renderListViewSlots.d.ts.map +1 -1
  60. package/dist/views/List/renderListViewSlots.js +20 -11
  61. package/dist/views/List/renderListViewSlots.js.map +1 -1
  62. package/dist/views/LivePreview/index.d.ts +3 -2
  63. package/dist/views/LivePreview/index.d.ts.map +1 -1
  64. package/dist/views/LivePreview/index.js +2 -2
  65. package/dist/views/LivePreview/index.js.map +1 -1
  66. package/dist/views/Login/index.d.ts +2 -2
  67. package/dist/views/Login/index.d.ts.map +1 -1
  68. package/dist/views/Login/index.js +3 -4
  69. package/dist/views/Login/index.js.map +1 -1
  70. package/dist/views/Logout/index.d.ts +3 -3
  71. package/dist/views/Logout/index.d.ts.map +1 -1
  72. package/dist/views/Logout/index.js +2 -2
  73. package/dist/views/Logout/index.js.map +1 -1
  74. package/dist/views/NotFound/index.d.ts +2 -2
  75. package/dist/views/NotFound/index.d.ts.map +1 -1
  76. package/dist/views/NotFound/index.js +2 -2
  77. package/dist/views/NotFound/index.js.map +1 -1
  78. package/dist/views/ResetPassword/index.d.ts +2 -2
  79. package/dist/views/ResetPassword/index.d.ts.map +1 -1
  80. package/dist/views/ResetPassword/index.js +3 -3
  81. package/dist/views/ResetPassword/index.js.map +1 -1
  82. package/dist/views/Root/getViewFromConfig.d.ts +3 -3
  83. package/dist/views/Root/getViewFromConfig.d.ts.map +1 -1
  84. package/dist/views/Root/getViewFromConfig.js.map +1 -1
  85. package/dist/views/Root/index.d.ts.map +1 -1
  86. package/dist/views/Root/index.js.map +1 -1
  87. package/dist/views/Unauthorized/index.d.ts +3 -2
  88. package/dist/views/Unauthorized/index.d.ts.map +1 -1
  89. package/dist/views/Unauthorized/index.js +3 -3
  90. package/dist/views/Unauthorized/index.js.map +1 -1
  91. package/dist/views/Verify/index.d.ts +2 -2
  92. package/dist/views/Verify/index.d.ts.map +1 -1
  93. package/dist/views/Verify/index.js +4 -4
  94. package/dist/views/Verify/index.js.map +1 -1
  95. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.d.ts +2 -0
  96. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.d.ts.map +1 -1
  97. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.js +26 -22
  98. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.js.map +1 -1
  99. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.d.ts +2 -1
  100. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.d.ts.map +1 -1
  101. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js +14 -2
  102. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js.map +1 -1
  103. package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.d.ts.map +1 -1
  104. package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.js +12 -8
  105. package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.js.map +1 -1
  106. package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.d.ts.map +1 -1
  107. package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.js +12 -8
  108. package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.js.map +1 -1
  109. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.d.ts.map +1 -1
  110. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js +11 -7
  111. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js.map +1 -1
  112. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.d.ts.map +1 -1
  113. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js +30 -21
  114. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js.map +1 -1
  115. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js +13 -9
  116. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js.map +1 -1
  117. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.d.ts +4 -2
  118. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.d.ts.map +1 -1
  119. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.js +24 -3
  120. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.js.map +1 -1
  121. package/dist/views/Version/Restore/index.d.ts.map +1 -1
  122. package/dist/views/Version/Restore/index.js +13 -30
  123. package/dist/views/Version/Restore/index.js.map +1 -1
  124. package/dist/views/Version/index.d.ts +3 -2
  125. package/dist/views/Version/index.d.ts.map +1 -1
  126. package/dist/views/Version/index.js +3 -2
  127. package/dist/views/Version/index.js.map +1 -1
  128. package/dist/views/Versions/buildColumns.d.ts +1 -2
  129. package/dist/views/Versions/buildColumns.d.ts.map +1 -1
  130. package/dist/views/Versions/buildColumns.js.map +1 -1
  131. package/dist/views/Versions/index.client.d.ts +1 -2
  132. package/dist/views/Versions/index.client.d.ts.map +1 -1
  133. package/dist/views/Versions/index.client.js.map +1 -1
  134. package/dist/views/Versions/index.d.ts +3 -2
  135. package/dist/views/Versions/index.d.ts.map +1 -1
  136. package/dist/views/Versions/index.js +2 -2
  137. package/dist/views/Versions/index.js.map +1 -1
  138. package/package.json +6 -6
  139. package/dist/views/Account/ResetPreferences/ConfirmResetModal/index.d.ts +0 -6
  140. package/dist/views/Account/ResetPreferences/ConfirmResetModal/index.d.ts.map +0 -1
  141. package/dist/views/Account/ResetPreferences/ConfirmResetModal/index.js +0 -83
  142. package/dist/views/Account/ResetPreferences/ConfirmResetModal/index.js.map +0 -1
  143. package/dist/views/Account/ResetPreferences/ConfirmResetModal/index.scss +0 -40
@@ -1,6 +1,6 @@
1
1
  import { RenderServerComponent } from '@payloadcms/ui/elements/RenderServerComponent';
2
2
  import { dequal } from 'dequal/lite';
3
- import { fieldIsID, getUniqueListBy, tabHasName } from 'payload/shared';
3
+ import { fieldIsID, fieldShouldBeLocalized, getUniqueListBy, tabHasName } from 'payload/shared';
4
4
  import { diffMethods } from './fields/diffMethods.js';
5
5
  import { diffComponents } from './fields/index.js';
6
6
  import { getFieldPathsModified } from './utilities/getFieldPathsModified.js';
@@ -21,6 +21,7 @@ export const buildVersionFields = ({
21
21
  i18n,
22
22
  modifiedOnly,
23
23
  parentIndexPath,
24
+ parentIsLocalized,
24
25
  parentPath,
25
26
  parentSchemaPath,
26
27
  req,
@@ -59,7 +60,10 @@ export const buildVersionFields = ({
59
60
  throw new Error('No client field found for ' + entitySlug + '.' + schemaPath);
60
61
  }
61
62
  const versionField = {};
62
- const isLocalized = 'localized' in field && field.localized;
63
+ const isLocalized = fieldShouldBeLocalized({
64
+ field,
65
+ parentIsLocalized
66
+ });
63
67
  const fieldName = 'name' in field ? field.name : null;
64
68
  const versionValue = fieldName ? versionSiblingData?.[fieldName] : versionSiblingData;
65
69
  const comparisonValue = fieldName ? comparisonSiblingData?.[fieldName] : comparisonSiblingData;
@@ -78,6 +82,7 @@ export const buildVersionFields = ({
78
82
  indexPath,
79
83
  locale,
80
84
  modifiedOnly,
85
+ parentIsLocalized: true,
81
86
  parentPath,
82
87
  parentSchemaPath,
83
88
  path,
@@ -102,6 +107,7 @@ export const buildVersionFields = ({
102
107
  i18n,
103
108
  indexPath,
104
109
  modifiedOnly,
110
+ parentIsLocalized: parentIsLocalized || 'localized' in field && field.localized,
105
111
  parentPath,
106
112
  parentSchemaPath,
107
113
  path,
@@ -132,6 +138,7 @@ const buildVersionField = ({
132
138
  indexPath,
133
139
  locale,
134
140
  modifiedOnly,
141
+ parentIsLocalized,
135
142
  parentPath,
136
143
  parentSchemaPath,
137
144
  path,
@@ -190,6 +197,7 @@ const buildVersionField = ({
190
197
  i18n,
191
198
  modifiedOnly,
192
199
  parentIndexPath: isNamedTab ? '' : tabIndexPath,
200
+ parentIsLocalized: parentIsLocalized || tab.localized,
193
201
  parentPath: tabPath,
194
202
  parentSchemaPath: tabSchemaPath,
195
203
  req,
@@ -216,6 +224,7 @@ const buildVersionField = ({
216
224
  i18n,
217
225
  modifiedOnly,
218
226
  parentIndexPath: 'name' in field ? '' : indexPath,
227
+ parentIsLocalized: parentIsLocalized || field.localized,
219
228
  parentPath: path + '.' + i,
220
229
  parentSchemaPath: schemaPath,
221
230
  req,
@@ -234,6 +243,7 @@ const buildVersionField = ({
234
243
  i18n,
235
244
  modifiedOnly,
236
245
  parentIndexPath: 'name' in field ? '' : indexPath,
246
+ parentIsLocalized: parentIsLocalized || 'localized' in field && field.localized,
237
247
  parentPath: path,
238
248
  parentSchemaPath: schemaPath,
239
249
  req,
@@ -271,6 +281,7 @@ const buildVersionField = ({
271
281
  i18n,
272
282
  modifiedOnly,
273
283
  parentIndexPath: 'name' in field ? '' : indexPath,
284
+ parentIsLocalized: parentIsLocalized || 'localized' in field && field.localized,
274
285
  parentPath: path + '.' + i,
275
286
  parentSchemaPath: schemaPath + '.' + versionBlock.slug,
276
287
  req,
@@ -288,6 +299,7 @@ const buildVersionField = ({
288
299
  diffMethod,
289
300
  field: clientField,
290
301
  fieldPermissions: subFieldPermissions,
302
+ parentIsLocalized,
291
303
  versionValue
292
304
  };
293
305
  const serverCellProps = {
@@ -1 +1 @@
1
- {"version":3,"file":"buildVersionFields.js","names":["RenderServerComponent","dequal","fieldIsID","getUniqueListBy","tabHasName","diffMethods","diffComponents","getFieldPathsModified","buildVersionFields","clientSchemaMap","comparisonSiblingData","customDiffComponents","entitySlug","fieldPermissions","fields","i18n","modifiedOnly","parentIndexPath","parentPath","parentSchemaPath","req","selectedLocales","versionSiblingData","versionFields","fieldIndex","field","indexPath","path","schemaPath","index","clientField","get","payload","logger","error","clientFieldKey","clientSchemaMapKeys","Array","from","keys","msg","Error","versionField","isLocalized","localized","fieldName","name","versionValue","comparisonValue","fieldByLocale","locale","localizedVersionField","buildVersionField","baseVersionField","push","diffMethod","type","hasPermission","read","subFieldPermissions","CustomComponent","admin","components","Diff","DefaultComponent","tabs","tabIndex","tab","isNamedTab","tabIndexPath","tabPath","tabSchemaPath","label","arrayValue","isArray","rows","i","length","comparisonRow","versionRow","blocksValue","blockSlugToMatch","blockType","versionBlock","blocks","blockReferences","find","block","slug","comparisonBlockSlugToMatch","comparisonBlock","clientCellProps","undefined","serverCellProps","clientProps","Component","Fallback","importMap","key","serverProps"],"sources":["../../../../src/views/Version/RenderFieldsToDiff/buildVersionFields.tsx"],"sourcesContent":["import type { I18nClient } from '@payloadcms/translations'\nimport type {\n BaseVersionField,\n ClientField,\n ClientFieldSchemaMap,\n Field,\n FieldDiffClientProps,\n FieldDiffServerProps,\n FieldTypes,\n FlattenedBlock,\n PayloadComponent,\n PayloadRequest,\n SanitizedFieldPermissions,\n VersionField,\n} from 'payload'\nimport type { DiffMethod } from 'react-diff-viewer-continued'\n\nimport { RenderServerComponent } from '@payloadcms/ui/elements/RenderServerComponent'\nimport { dequal } from 'dequal/lite'\nimport { fieldIsID, getUniqueListBy, tabHasName } from 'payload/shared'\n\nimport { diffMethods } from './fields/diffMethods.js'\nimport { diffComponents } from './fields/index.js'\nimport { getFieldPathsModified } from './utilities/getFieldPathsModified.js'\n\nexport type BuildVersionFieldsArgs = {\n clientSchemaMap: ClientFieldSchemaMap\n comparisonSiblingData: object\n customDiffComponents: Partial<\n Record<FieldTypes, PayloadComponent<FieldDiffServerProps, FieldDiffClientProps>>\n >\n entitySlug: string\n fieldPermissions:\n | {\n [key: string]: SanitizedFieldPermissions\n }\n | true\n fields: Field[]\n i18n: I18nClient\n modifiedOnly: boolean\n parentIndexPath: string\n parentPath: string\n parentSchemaPath: string\n req: PayloadRequest\n selectedLocales: string[]\n versionSiblingData: object\n}\n\n/**\n * Build up an object that contains rendered diff components for each field.\n * This is then sent to the client to be rendered.\n *\n * Here, the server is responsible for traversing through the document data and building up this\n * version state object.\n */\nexport const buildVersionFields = ({\n clientSchemaMap,\n comparisonSiblingData,\n customDiffComponents,\n entitySlug,\n fieldPermissions,\n fields,\n i18n,\n modifiedOnly,\n parentIndexPath,\n parentPath,\n parentSchemaPath,\n req,\n selectedLocales,\n versionSiblingData,\n}: BuildVersionFieldsArgs): {\n versionFields: VersionField[]\n} => {\n const versionFields: VersionField[] = []\n let fieldIndex = -1\n for (const field of fields) {\n fieldIndex++\n if (fieldIsID(field)) {\n continue\n }\n\n const { indexPath, path, schemaPath } = getFieldPathsModified({\n field,\n index: fieldIndex,\n parentIndexPath: 'name' in field ? '' : parentIndexPath,\n parentPath,\n parentSchemaPath,\n })\n\n const clientField = clientSchemaMap.get(entitySlug + '.' + schemaPath)\n\n if (!clientField) {\n req.payload.logger.error({\n clientFieldKey: entitySlug + '.' + schemaPath,\n clientSchemaMapKeys: Array.from(clientSchemaMap.keys()),\n msg: 'No client field found for ' + entitySlug + '.' + schemaPath,\n parentPath,\n parentSchemaPath,\n path,\n schemaPath,\n })\n throw new Error('No client field found for ' + entitySlug + '.' + schemaPath)\n }\n\n const versionField: VersionField = {}\n const isLocalized = 'localized' in field && field.localized\n const fieldName: null | string = 'name' in field ? field.name : null\n\n const versionValue = fieldName ? versionSiblingData?.[fieldName] : versionSiblingData\n\n const comparisonValue = fieldName ? comparisonSiblingData?.[fieldName] : comparisonSiblingData\n\n if (isLocalized) {\n versionField.fieldByLocale = {}\n\n for (const locale of selectedLocales) {\n const localizedVersionField = buildVersionField({\n clientField: clientField as ClientField,\n clientSchemaMap,\n comparisonValue: comparisonValue?.[locale],\n customDiffComponents,\n entitySlug,\n field,\n fieldPermissions,\n i18n,\n indexPath,\n locale,\n modifiedOnly,\n parentPath,\n parentSchemaPath,\n path,\n req,\n schemaPath,\n selectedLocales,\n versionValue: versionValue?.[locale],\n })\n if (localizedVersionField) {\n versionField.fieldByLocale[locale] = localizedVersionField\n }\n }\n } else {\n const baseVersionField = buildVersionField({\n clientField: clientField as ClientField,\n clientSchemaMap,\n comparisonValue,\n customDiffComponents,\n entitySlug,\n field,\n fieldPermissions,\n i18n,\n indexPath,\n modifiedOnly,\n parentPath,\n parentSchemaPath,\n path,\n req,\n schemaPath,\n selectedLocales,\n versionValue,\n })\n\n if (baseVersionField) {\n versionField.field = baseVersionField\n }\n }\n\n versionFields.push(versionField)\n }\n\n return {\n versionFields,\n }\n}\n\nconst buildVersionField = ({\n clientField,\n clientSchemaMap,\n comparisonValue,\n customDiffComponents,\n entitySlug,\n field,\n fieldPermissions,\n i18n,\n indexPath,\n locale,\n modifiedOnly,\n parentPath,\n parentSchemaPath,\n path,\n req,\n schemaPath,\n selectedLocales,\n versionValue,\n}: {\n clientField: ClientField\n comparisonValue: unknown\n field: Field\n indexPath: string\n locale?: string\n modifiedOnly?: boolean\n path: string\n schemaPath: string\n versionValue: unknown\n} & Omit<\n BuildVersionFieldsArgs,\n 'comparisonSiblingData' | 'fields' | 'parentIndexPath' | 'versionSiblingData'\n>): BaseVersionField | null => {\n const fieldName: null | string = 'name' in field ? field.name : null\n\n const diffMethod: DiffMethod = diffMethods[field.type] || 'CHARS'\n\n const hasPermission =\n fieldPermissions === true ||\n !fieldName ||\n fieldPermissions?.[fieldName] === true ||\n fieldPermissions?.[fieldName]?.read\n\n const subFieldPermissions =\n fieldPermissions === true ||\n !fieldName ||\n fieldPermissions?.[fieldName] === true ||\n fieldPermissions?.[fieldName]?.fields\n\n if (!hasPermission) {\n return null\n }\n\n if (modifiedOnly && dequal(versionValue, comparisonValue)) {\n return null\n }\n\n const CustomComponent = field?.admin?.components?.Diff ?? customDiffComponents?.[field.type]\n const DefaultComponent = diffComponents?.[field.type]\n\n const baseVersionField: BaseVersionField = {\n type: field.type,\n fields: [],\n path,\n schemaPath,\n }\n\n if (field.type === 'tabs' && 'tabs' in field) {\n baseVersionField.tabs = []\n let tabIndex = -1\n for (const tab of field.tabs) {\n tabIndex++\n const isNamedTab = tabHasName(tab)\n\n const {\n indexPath: tabIndexPath,\n path: tabPath,\n schemaPath: tabSchemaPath,\n } = getFieldPathsModified({\n field: {\n ...tab,\n type: 'tab',\n },\n index: tabIndex,\n parentIndexPath: indexPath,\n parentPath,\n parentSchemaPath,\n })\n baseVersionField.tabs.push({\n name: 'name' in tab ? tab.name : null,\n fields: buildVersionFields({\n clientSchemaMap,\n comparisonSiblingData: 'name' in tab ? comparisonValue?.[tab.name] : comparisonValue,\n customDiffComponents,\n entitySlug,\n fieldPermissions,\n fields: tab.fields,\n i18n,\n modifiedOnly,\n parentIndexPath: isNamedTab ? '' : tabIndexPath,\n parentPath: tabPath,\n parentSchemaPath: tabSchemaPath,\n req,\n selectedLocales,\n versionSiblingData: 'name' in tab ? versionValue?.[tab.name] : versionValue,\n }).versionFields,\n label: tab.label,\n })\n }\n } // At this point, we are dealing with a `row`, etc\n else if ('fields' in field) {\n if (field.type === 'array' && versionValue) {\n const arrayValue = Array.isArray(versionValue) ? versionValue : []\n baseVersionField.rows = []\n\n for (let i = 0; i < arrayValue.length; i++) {\n const comparisonRow = comparisonValue?.[i] || {}\n const versionRow = arrayValue?.[i] || {}\n baseVersionField.rows[i] = buildVersionFields({\n clientSchemaMap,\n comparisonSiblingData: comparisonRow,\n customDiffComponents,\n entitySlug,\n fieldPermissions,\n fields: field.fields,\n i18n,\n modifiedOnly,\n parentIndexPath: 'name' in field ? '' : indexPath,\n parentPath: path + '.' + i,\n parentSchemaPath: schemaPath,\n req,\n selectedLocales,\n versionSiblingData: versionRow,\n }).versionFields\n }\n } else {\n baseVersionField.fields = buildVersionFields({\n clientSchemaMap,\n comparisonSiblingData: comparisonValue as object,\n customDiffComponents,\n entitySlug,\n fieldPermissions,\n fields: field.fields,\n i18n,\n modifiedOnly,\n parentIndexPath: 'name' in field ? '' : indexPath,\n parentPath: path,\n parentSchemaPath: schemaPath,\n req,\n selectedLocales,\n versionSiblingData: versionValue as object,\n }).versionFields\n }\n } else if (field.type === 'blocks') {\n baseVersionField.rows = []\n\n const blocksValue = Array.isArray(versionValue) ? versionValue : []\n\n for (let i = 0; i < blocksValue.length; i++) {\n const comparisonRow = comparisonValue?.[i] || {}\n const versionRow = blocksValue[i] || {}\n\n const blockSlugToMatch: string = versionRow.blockType\n const versionBlock =\n req.payload.blocks[blockSlugToMatch] ??\n ((field.blockReferences ?? field.blocks).find(\n (block) => typeof block !== 'string' && block.slug === blockSlugToMatch,\n ) as FlattenedBlock | undefined)\n\n let fields = []\n\n if (versionRow.blockType === comparisonRow.blockType) {\n fields = versionBlock.fields\n } else {\n const comparisonBlockSlugToMatch: string = versionRow.blockType\n\n const comparisonBlock =\n req.payload.blocks[comparisonBlockSlugToMatch] ??\n ((field.blockReferences ?? field.blocks).find(\n (block) => typeof block !== 'string' && block.slug === comparisonBlockSlugToMatch,\n ) as FlattenedBlock | undefined)\n\n if (comparisonBlock) {\n fields = getUniqueListBy<Field>(\n [...versionBlock.fields, ...comparisonBlock.fields],\n 'name',\n )\n } else {\n fields = versionBlock.fields\n }\n }\n\n baseVersionField.rows[i] = buildVersionFields({\n clientSchemaMap,\n comparisonSiblingData: comparisonRow,\n customDiffComponents,\n entitySlug,\n fieldPermissions,\n fields,\n i18n,\n modifiedOnly,\n parentIndexPath: 'name' in field ? '' : indexPath,\n parentPath: path + '.' + i,\n parentSchemaPath: schemaPath + '.' + versionBlock.slug,\n req,\n selectedLocales,\n versionSiblingData: versionRow,\n }).versionFields\n }\n }\n\n const clientCellProps: FieldDiffClientProps = {\n baseVersionField: {\n ...baseVersionField,\n CustomComponent: undefined,\n },\n comparisonValue,\n diffMethod,\n field: clientField,\n fieldPermissions: subFieldPermissions,\n versionValue,\n }\n\n const serverCellProps: FieldDiffServerProps = {\n ...clientCellProps,\n clientField,\n field,\n i18n,\n req,\n selectedLocales,\n }\n\n baseVersionField.CustomComponent = RenderServerComponent({\n clientProps: locale\n ? ({\n ...clientCellProps,\n locale,\n } as FieldDiffClientProps)\n : clientCellProps,\n Component: CustomComponent,\n Fallback: DefaultComponent,\n importMap: req.payload.importMap,\n key: 'diff component',\n serverProps: locale\n ? ({\n ...serverCellProps,\n locale,\n } as FieldDiffServerProps)\n : serverCellProps,\n })\n\n return baseVersionField\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"buildVersionFields.js","names":["RenderServerComponent","dequal","fieldIsID","fieldShouldBeLocalized","getUniqueListBy","tabHasName","diffMethods","diffComponents","getFieldPathsModified","buildVersionFields","clientSchemaMap","comparisonSiblingData","customDiffComponents","entitySlug","fieldPermissions","fields","i18n","modifiedOnly","parentIndexPath","parentIsLocalized","parentPath","parentSchemaPath","req","selectedLocales","versionSiblingData","versionFields","fieldIndex","field","indexPath","path","schemaPath","index","clientField","get","payload","logger","error","clientFieldKey","clientSchemaMapKeys","Array","from","keys","msg","Error","versionField","isLocalized","fieldName","name","versionValue","comparisonValue","fieldByLocale","locale","localizedVersionField","buildVersionField","baseVersionField","localized","push","diffMethod","type","hasPermission","read","subFieldPermissions","CustomComponent","admin","components","Diff","DefaultComponent","tabs","tabIndex","tab","isNamedTab","tabIndexPath","tabPath","tabSchemaPath","label","arrayValue","isArray","rows","i","length","comparisonRow","versionRow","blocksValue","blockSlugToMatch","blockType","versionBlock","blocks","blockReferences","find","block","slug","comparisonBlockSlugToMatch","comparisonBlock","clientCellProps","undefined","serverCellProps","clientProps","Component","Fallback","importMap","key","serverProps"],"sources":["../../../../src/views/Version/RenderFieldsToDiff/buildVersionFields.tsx"],"sourcesContent":["import type { I18nClient } from '@payloadcms/translations'\nimport type {\n BaseVersionField,\n ClientField,\n ClientFieldSchemaMap,\n Field,\n FieldDiffClientProps,\n FieldDiffServerProps,\n FieldTypes,\n FlattenedBlock,\n PayloadComponent,\n PayloadRequest,\n SanitizedFieldPermissions,\n VersionField,\n} from 'payload'\nimport type { DiffMethod } from 'react-diff-viewer-continued'\n\nimport { RenderServerComponent } from '@payloadcms/ui/elements/RenderServerComponent'\nimport { dequal } from 'dequal/lite'\nimport { fieldIsID, fieldShouldBeLocalized, getUniqueListBy, tabHasName } from 'payload/shared'\n\nimport { diffMethods } from './fields/diffMethods.js'\nimport { diffComponents } from './fields/index.js'\nimport { getFieldPathsModified } from './utilities/getFieldPathsModified.js'\n\nexport type BuildVersionFieldsArgs = {\n clientSchemaMap: ClientFieldSchemaMap\n comparisonSiblingData: object\n customDiffComponents: Partial<\n Record<FieldTypes, PayloadComponent<FieldDiffServerProps, FieldDiffClientProps>>\n >\n entitySlug: string\n fieldPermissions:\n | {\n [key: string]: SanitizedFieldPermissions\n }\n | true\n fields: Field[]\n i18n: I18nClient\n modifiedOnly: boolean\n parentIndexPath: string\n parentIsLocalized: boolean\n parentPath: string\n parentSchemaPath: string\n req: PayloadRequest\n selectedLocales: string[]\n versionSiblingData: object\n}\n\n/**\n * Build up an object that contains rendered diff components for each field.\n * This is then sent to the client to be rendered.\n *\n * Here, the server is responsible for traversing through the document data and building up this\n * version state object.\n */\nexport const buildVersionFields = ({\n clientSchemaMap,\n comparisonSiblingData,\n customDiffComponents,\n entitySlug,\n fieldPermissions,\n fields,\n i18n,\n modifiedOnly,\n parentIndexPath,\n parentIsLocalized,\n parentPath,\n parentSchemaPath,\n req,\n selectedLocales,\n versionSiblingData,\n}: BuildVersionFieldsArgs): {\n versionFields: VersionField[]\n} => {\n const versionFields: VersionField[] = []\n let fieldIndex = -1\n for (const field of fields) {\n fieldIndex++\n if (fieldIsID(field)) {\n continue\n }\n\n const { indexPath, path, schemaPath } = getFieldPathsModified({\n field,\n index: fieldIndex,\n parentIndexPath: 'name' in field ? '' : parentIndexPath,\n parentPath,\n parentSchemaPath,\n })\n\n const clientField = clientSchemaMap.get(entitySlug + '.' + schemaPath)\n\n if (!clientField) {\n req.payload.logger.error({\n clientFieldKey: entitySlug + '.' + schemaPath,\n clientSchemaMapKeys: Array.from(clientSchemaMap.keys()),\n msg: 'No client field found for ' + entitySlug + '.' + schemaPath,\n parentPath,\n parentSchemaPath,\n path,\n schemaPath,\n })\n throw new Error('No client field found for ' + entitySlug + '.' + schemaPath)\n }\n\n const versionField: VersionField = {}\n const isLocalized = fieldShouldBeLocalized({ field, parentIsLocalized })\n\n const fieldName: null | string = 'name' in field ? field.name : null\n\n const versionValue = fieldName ? versionSiblingData?.[fieldName] : versionSiblingData\n\n const comparisonValue = fieldName ? comparisonSiblingData?.[fieldName] : comparisonSiblingData\n\n if (isLocalized) {\n versionField.fieldByLocale = {}\n\n for (const locale of selectedLocales) {\n const localizedVersionField = buildVersionField({\n clientField: clientField as ClientField,\n clientSchemaMap,\n comparisonValue: comparisonValue?.[locale],\n customDiffComponents,\n entitySlug,\n field,\n fieldPermissions,\n i18n,\n indexPath,\n locale,\n modifiedOnly,\n parentIsLocalized: true,\n parentPath,\n parentSchemaPath,\n path,\n req,\n schemaPath,\n selectedLocales,\n versionValue: versionValue?.[locale],\n })\n if (localizedVersionField) {\n versionField.fieldByLocale[locale] = localizedVersionField\n }\n }\n } else {\n const baseVersionField = buildVersionField({\n clientField: clientField as ClientField,\n clientSchemaMap,\n comparisonValue,\n customDiffComponents,\n entitySlug,\n field,\n fieldPermissions,\n i18n,\n indexPath,\n modifiedOnly,\n parentIsLocalized: parentIsLocalized || ('localized' in field && field.localized),\n parentPath,\n parentSchemaPath,\n path,\n req,\n schemaPath,\n selectedLocales,\n versionValue,\n })\n\n if (baseVersionField) {\n versionField.field = baseVersionField\n }\n }\n\n versionFields.push(versionField)\n }\n\n return {\n versionFields,\n }\n}\n\nconst buildVersionField = ({\n clientField,\n clientSchemaMap,\n comparisonValue,\n customDiffComponents,\n entitySlug,\n field,\n fieldPermissions,\n i18n,\n indexPath,\n locale,\n modifiedOnly,\n parentIsLocalized,\n parentPath,\n parentSchemaPath,\n path,\n req,\n schemaPath,\n selectedLocales,\n versionValue,\n}: {\n clientField: ClientField\n comparisonValue: unknown\n field: Field\n indexPath: string\n locale?: string\n modifiedOnly?: boolean\n parentIsLocalized: boolean\n path: string\n schemaPath: string\n versionValue: unknown\n} & Omit<\n BuildVersionFieldsArgs,\n 'comparisonSiblingData' | 'fields' | 'parentIndexPath' | 'versionSiblingData'\n>): BaseVersionField | null => {\n const fieldName: null | string = 'name' in field ? field.name : null\n\n const diffMethod: DiffMethod = diffMethods[field.type] || 'CHARS'\n\n const hasPermission =\n fieldPermissions === true ||\n !fieldName ||\n fieldPermissions?.[fieldName] === true ||\n fieldPermissions?.[fieldName]?.read\n\n const subFieldPermissions =\n fieldPermissions === true ||\n !fieldName ||\n fieldPermissions?.[fieldName] === true ||\n fieldPermissions?.[fieldName]?.fields\n\n if (!hasPermission) {\n return null\n }\n\n if (modifiedOnly && dequal(versionValue, comparisonValue)) {\n return null\n }\n\n const CustomComponent = field?.admin?.components?.Diff ?? customDiffComponents?.[field.type]\n const DefaultComponent = diffComponents?.[field.type]\n\n const baseVersionField: BaseVersionField = {\n type: field.type,\n fields: [],\n path,\n schemaPath,\n }\n\n if (field.type === 'tabs' && 'tabs' in field) {\n baseVersionField.tabs = []\n let tabIndex = -1\n for (const tab of field.tabs) {\n tabIndex++\n const isNamedTab = tabHasName(tab)\n\n const {\n indexPath: tabIndexPath,\n path: tabPath,\n schemaPath: tabSchemaPath,\n } = getFieldPathsModified({\n field: {\n ...tab,\n type: 'tab',\n },\n index: tabIndex,\n parentIndexPath: indexPath,\n parentPath,\n parentSchemaPath,\n })\n baseVersionField.tabs.push({\n name: 'name' in tab ? tab.name : null,\n fields: buildVersionFields({\n clientSchemaMap,\n comparisonSiblingData: 'name' in tab ? comparisonValue?.[tab.name] : comparisonValue,\n customDiffComponents,\n entitySlug,\n fieldPermissions,\n fields: tab.fields,\n i18n,\n modifiedOnly,\n parentIndexPath: isNamedTab ? '' : tabIndexPath,\n parentIsLocalized: parentIsLocalized || tab.localized,\n parentPath: tabPath,\n parentSchemaPath: tabSchemaPath,\n req,\n selectedLocales,\n versionSiblingData: 'name' in tab ? versionValue?.[tab.name] : versionValue,\n }).versionFields,\n label: tab.label,\n })\n }\n } // At this point, we are dealing with a `row`, etc\n else if ('fields' in field) {\n if (field.type === 'array' && versionValue) {\n const arrayValue = Array.isArray(versionValue) ? versionValue : []\n baseVersionField.rows = []\n\n for (let i = 0; i < arrayValue.length; i++) {\n const comparisonRow = comparisonValue?.[i] || {}\n const versionRow = arrayValue?.[i] || {}\n baseVersionField.rows[i] = buildVersionFields({\n clientSchemaMap,\n comparisonSiblingData: comparisonRow,\n customDiffComponents,\n entitySlug,\n fieldPermissions,\n fields: field.fields,\n i18n,\n modifiedOnly,\n parentIndexPath: 'name' in field ? '' : indexPath,\n parentIsLocalized: parentIsLocalized || field.localized,\n parentPath: path + '.' + i,\n parentSchemaPath: schemaPath,\n req,\n selectedLocales,\n versionSiblingData: versionRow,\n }).versionFields\n }\n } else {\n baseVersionField.fields = buildVersionFields({\n clientSchemaMap,\n comparisonSiblingData: comparisonValue as object,\n customDiffComponents,\n entitySlug,\n fieldPermissions,\n fields: field.fields,\n i18n,\n modifiedOnly,\n parentIndexPath: 'name' in field ? '' : indexPath,\n parentIsLocalized: parentIsLocalized || ('localized' in field && field.localized),\n parentPath: path,\n parentSchemaPath: schemaPath,\n req,\n selectedLocales,\n versionSiblingData: versionValue as object,\n }).versionFields\n }\n } else if (field.type === 'blocks') {\n baseVersionField.rows = []\n\n const blocksValue = Array.isArray(versionValue) ? versionValue : []\n\n for (let i = 0; i < blocksValue.length; i++) {\n const comparisonRow = comparisonValue?.[i] || {}\n const versionRow = blocksValue[i] || {}\n\n const blockSlugToMatch: string = versionRow.blockType\n const versionBlock =\n req.payload.blocks[blockSlugToMatch] ??\n ((field.blockReferences ?? field.blocks).find(\n (block) => typeof block !== 'string' && block.slug === blockSlugToMatch,\n ) as FlattenedBlock | undefined)\n\n let fields = []\n\n if (versionRow.blockType === comparisonRow.blockType) {\n fields = versionBlock.fields\n } else {\n const comparisonBlockSlugToMatch: string = versionRow.blockType\n\n const comparisonBlock =\n req.payload.blocks[comparisonBlockSlugToMatch] ??\n ((field.blockReferences ?? field.blocks).find(\n (block) => typeof block !== 'string' && block.slug === comparisonBlockSlugToMatch,\n ) as FlattenedBlock | undefined)\n\n if (comparisonBlock) {\n fields = getUniqueListBy<Field>(\n [...versionBlock.fields, ...comparisonBlock.fields],\n 'name',\n )\n } else {\n fields = versionBlock.fields\n }\n }\n\n baseVersionField.rows[i] = buildVersionFields({\n clientSchemaMap,\n comparisonSiblingData: comparisonRow,\n customDiffComponents,\n entitySlug,\n fieldPermissions,\n fields,\n i18n,\n modifiedOnly,\n parentIndexPath: 'name' in field ? '' : indexPath,\n parentIsLocalized: parentIsLocalized || ('localized' in field && field.localized),\n parentPath: path + '.' + i,\n parentSchemaPath: schemaPath + '.' + versionBlock.slug,\n req,\n selectedLocales,\n versionSiblingData: versionRow,\n }).versionFields\n }\n }\n\n const clientCellProps: FieldDiffClientProps = {\n baseVersionField: {\n ...baseVersionField,\n CustomComponent: undefined,\n },\n comparisonValue,\n diffMethod,\n field: clientField,\n fieldPermissions: subFieldPermissions,\n parentIsLocalized,\n versionValue,\n }\n\n const serverCellProps: FieldDiffServerProps = {\n ...clientCellProps,\n clientField,\n field,\n i18n,\n req,\n selectedLocales,\n }\n\n baseVersionField.CustomComponent = RenderServerComponent({\n clientProps: locale\n ? ({\n ...clientCellProps,\n locale,\n } as FieldDiffClientProps)\n : clientCellProps,\n Component: CustomComponent,\n Fallback: DefaultComponent,\n importMap: req.payload.importMap,\n key: 'diff component',\n serverProps: locale\n ? ({\n ...serverCellProps,\n locale,\n } as FieldDiffServerProps)\n : serverCellProps,\n })\n\n return baseVersionField\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/views/Version/RenderFieldsToDiff/fields/Collapsible/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mCAAmC,EAAE,MAAM,SAAS,CAAA;AAYlE,eAAO,MAAM,WAAW,EAAE,mCA8BzB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/views/Version/RenderFieldsToDiff/fields/Collapsible/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mCAAmC,EAAE,MAAM,SAAS,CAAA;AAYlE,eAAO,MAAM,WAAW,EAAE,mCAgCzB,CAAA"}
@@ -10,11 +10,12 @@ 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(10);
13
+ const $ = _c(11);
14
14
  const {
15
15
  baseVersionField,
16
16
  comparisonValue,
17
17
  field,
18
+ parentIsLocalized,
18
19
  versionValue
19
20
  } = t0;
20
21
  const {
@@ -37,15 +38,17 @@ export const Collapsible = t0 => {
37
38
  } else {
38
39
  t1 = $[2];
39
40
  }
40
- let t2;
41
- if ($[3] !== baseVersionField.fields || $[4] !== comparisonValue || $[5] !== field.fields || $[6] !== selectedLocales || $[7] !== t1 || $[8] !== versionValue) {
42
- t2 = _jsx("div", {
41
+ const t2 = parentIsLocalized || field.localized;
42
+ let t3;
43
+ if ($[3] !== baseVersionField.fields || $[4] !== comparisonValue || $[5] !== field.fields || $[6] !== selectedLocales || $[7] !== t1 || $[8] !== t2 || $[9] !== versionValue) {
44
+ t3 = _jsx("div", {
43
45
  className: baseClass,
44
46
  children: _jsx(DiffCollapser, {
45
47
  comparison: comparisonValue,
46
48
  fields: field.fields,
47
49
  label: t1,
48
50
  locales: selectedLocales,
51
+ parentIsLocalized: t2,
49
52
  version: versionValue,
50
53
  children: _jsx(RenderVersionFieldsToDiff, {
51
54
  versionFields: baseVersionField.fields
@@ -57,11 +60,12 @@ export const Collapsible = t0 => {
57
60
  $[5] = field.fields;
58
61
  $[6] = selectedLocales;
59
62
  $[7] = t1;
60
- $[8] = versionValue;
61
- $[9] = t2;
63
+ $[8] = t2;
64
+ $[9] = versionValue;
65
+ $[10] = t3;
62
66
  } else {
63
- t2 = $[9];
67
+ t3 = $[10];
64
68
  }
65
- return t2;
69
+ return t3;
66
70
  };
67
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","field","versionValue","i18n","selectedLocales","fields","length","t1","label","_jsx","children","t2","className","comparison","version","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,\n field,\n versionValue,\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 comparison={comparisonValue}\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 version={versionValue}\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;IAAAC,KAAA;IAAAC;EAAA,IAAAL,EAKhE;EACC;IAAAM;EAAA,IAAiBb,cAAA;EACjB;IAAAc;EAAA,IAA4BZ,kBAAA;EAAA,KAEvBO,gBAAA,CAAAM,MAAA,EAAAC,MAAA;IAAA;EAAA;EAAA,IAAAC,EAAA;EAAA,IAAAT,CAAA,QAAAG,KAAA,IAAAH,CAAA,QAAAK,IAAA;IAUGI,EAAA,cAAWN,KAAA,IACXA,KAAA,CAAAO,KAAW,IACX,OAAOP,KAAA,CAAAO,KAAA,KAAgB,cAAcC,IAAA,CAAC;MAAAC,QAAA,EAAMrB,cAAA,CAAeY,KAAA,CAAAO,KAAA,EAAaL,IAAA;IAAA,C;;;;;;;;;IAP9EQ,EAAA,GAAAF,IAAA,CAAC;MAAAG,SAAA,EAAAjB,SAAA;MAAAe,QAAA,EACCD,IAAA,CAAAhB,aAAA;QAAAoB,UAAA,EACcb,eAAA;QAAAK,MAAA,EACJJ,KAAA,CAAAI,MAAA;QAAAG,KAAA,EAEND,E;iBAIOH,eAAA;QAAAU,OAAA,EACAZ,YAAA;QAAAQ,QAAA,EAETD,IAAA,CAAAf,yBAAA;UAAAqB,aAAA,EAA0ChB,gBAAA,CAAAM;QAAA,C;;;;;;;;;;;;;SAZ9CM,E;CAgBJ","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","getTranslation","useTranslation","React","useSelectedLocales","DiffCollapser","RenderVersionFieldsToDiff","baseClass","Collapsible","t0","$","baseVersionField","comparisonValue","field","parentIsLocalized","versionValue","i18n","selectedLocales","fields","length","t1","label","_jsx","children","t2","localized","t3","className","comparison","version","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,\n field,\n parentIsLocalized,\n versionValue,\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 comparison={comparisonValue}\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 version={versionValue}\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;IAAAC,KAAA;IAAAC,iBAAA;IAAAC;EAAA,IAAAN,EAMhE;EACC;IAAAO;EAAA,IAAiBd,cAAA;EACjB;IAAAe;EAAA,IAA4Bb,kBAAA;EAAA,KAEvBO,gBAAA,CAAAO,MAAA,EAAAC,MAAA;IAAA;EAAA;EAAA,IAAAC,EAAA;EAAA,IAAAV,CAAA,QAAAG,KAAA,IAAAH,CAAA,QAAAM,IAAA;IAUGI,EAAA,cAAWP,KAAA,IACXA,KAAA,CAAAQ,KAAW,IACX,OAAOR,KAAA,CAAAQ,KAAA,KAAgB,cAAcC,IAAA,CAAC;MAAAC,QAAA,EAAMtB,cAAA,CAAeY,KAAA,CAAAQ,KAAA,EAAaL,IAAA;IAAA,C;;;;;;;EAGvD,MAAAQ,EAAA,GAAAV,iBAAA,IAAqBD,KAAA,CAAAY,SAAe;EAAA,IAAAC,EAAA;EAAA,IAAAhB,CAAA,QAAAC,gBAAA,CAAAO,MAAA,IAAAR,CAAA,QAAAE,eAAA,IAAAF,CAAA,QAAAG,KAAA,CAAAK,MAAA,IAAAR,CAAA,QAAAO,eAAA,IAAAP,CAAA,QAAAU,EAAA,IAAAV,CAAA,QAAAc,EAAA,IAAAd,CAAA,QAAAK,YAAA;IAV3DW,EAAA,GAAAJ,IAAA,CAAC;MAAAK,SAAA,EAAApB,SAAA;MAAAgB,QAAA,EACCD,IAAA,CAAAjB,aAAA;QAAAuB,UAAA,EACchB,eAAA;QAAAM,MAAA,EACJL,KAAA,CAAAK,MAAA;QAAAG,KAAA,EAEND,E;iBAIOH,eAAA;QAAAH,iBAAA,EACUU,EAAoC;QAAAK,OAAA,EAC9Cd,YAAA;QAAAQ,QAAA,EAETD,IAAA,CAAAhB,yBAAA;UAAAwB,aAAA,EAA0CnB,gBAAA,CAAAO;QAAA,C;;;;;;;;;;;;;;SAb9CQ,E;CAiBJ","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/views/Version/RenderFieldsToDiff/fields/Group/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,SAAS,CAAA;AAI5D,OAAO,cAAc,CAAA;AAWrB,eAAO,MAAM,KAAK,EAAE,6BAgCnB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/views/Version/RenderFieldsToDiff/fields/Group/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,SAAS,CAAA;AAI5D,OAAO,cAAc,CAAA;AAWrB,eAAO,MAAM,KAAK,EAAE,6BAkCnB,CAAA"}
@@ -10,12 +10,13 @@ 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(11);
13
+ const $ = _c(12);
14
14
  const {
15
15
  baseVersionField,
16
16
  comparisonValue,
17
17
  field,
18
18
  locale,
19
+ parentIsLocalized,
19
20
  versionValue
20
21
  } = t0;
21
22
  const {
@@ -39,15 +40,17 @@ export const Group = t0 => {
39
40
  } else {
40
41
  t1 = $[3];
41
42
  }
42
- let t2;
43
- if ($[4] !== baseVersionField.fields || $[5] !== comparisonValue || $[6] !== field.fields || $[7] !== selectedLocales || $[8] !== t1 || $[9] !== versionValue) {
44
- t2 = _jsx("div", {
43
+ const t2 = parentIsLocalized || field.localized;
44
+ let t3;
45
+ if ($[4] !== baseVersionField.fields || $[5] !== comparisonValue || $[6] !== field.fields || $[7] !== selectedLocales || $[8] !== t1 || $[9] !== t2 || $[10] !== versionValue) {
46
+ t3 = _jsx("div", {
45
47
  className: baseClass,
46
48
  children: _jsx(DiffCollapser, {
47
49
  comparison: comparisonValue,
48
50
  fields: field.fields,
49
51
  label: t1,
50
52
  locales: selectedLocales,
53
+ parentIsLocalized: t2,
51
54
  version: versionValue,
52
55
  children: _jsx(RenderVersionFieldsToDiff, {
53
56
  versionFields: baseVersionField.fields
@@ -59,11 +62,12 @@ export const Group = t0 => {
59
62
  $[6] = field.fields;
60
63
  $[7] = selectedLocales;
61
64
  $[8] = t1;
62
- $[9] = versionValue;
63
- $[10] = t2;
65
+ $[9] = t2;
66
+ $[10] = versionValue;
67
+ $[11] = t3;
64
68
  } else {
65
- t2 = $[10];
69
+ t3 = $[11];
66
70
  }
67
- return t2;
71
+ return t3;
68
72
  };
69
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","field","locale","versionValue","i18n","selectedLocales","t1","label","_jsxs","children","_jsx","className","t2","comparison","fields","version","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,\n field,\n locale,\n versionValue,\n}) => {\n const { i18n } = useTranslation()\n const { selectedLocales } = useSelectedLocales()\n\n return (\n <div className={baseClass}>\n <DiffCollapser\n comparison={comparisonValue}\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 version={versionValue}\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;IAAAC,KAAA;IAAAC,MAAA;IAAAC;EAAA,IAAAN,EAMpD;EACC;IAAAO;EAAA,IAAiBd,cAAA;EACjB;IAAAe;EAAA,IAA4Bb,kBAAA;EAAA,IAAAc,EAAA;EAAA,IAAAR,CAAA,QAAAG,KAAA,IAAAH,CAAA,QAAAM,IAAA,IAAAN,CAAA,QAAAI,MAAA;IAQpBI,EAAA,cAAWL,KAAA,IACXA,KAAA,CAAAM,KAAW,IACX,OAAON,KAAA,CAAAM,KAAA,KAAgB,cACrBC,KAAA,CAAC;MAAAC,QAAA,GACEP,MAAA,IAAUQ,IAAA,CAAC;QAAAC,SAAA,EAAgB,GAAAhB,SAAA,gBAA4B;QAAAc,QAAA,EAAGP;MAAA,C,GAC1Db,cAAA,CAAeY,KAAA,CAAAM,KAAA,EAAaH,IAAA;IAAA,C;;;;;;;;;;IAVvCQ,EAAA,GAAAF,IAAA,CAAC;MAAAC,SAAA,EAAAhB,SAAA;MAAAc,QAAA,EACCC,IAAA,CAAAjB,aAAA;QAAAoB,UAAA,EACcb,eAAA;QAAAc,MAAA,EACJb,KAAA,CAAAa,MAAA;QAAAP,KAAA,EAEND,E;iBASOD,eAAA;QAAAU,OAAA,EACAZ,YAAA;QAAAM,QAAA,EAETC,IAAA,CAAAhB,yBAAA;UAAAsB,aAAA,EAA0CjB,gBAAA,CAAAe;QAAA,C;;;;;;;;;;;;;SAjB9CF,E;CAqBJ","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","getTranslation","useTranslation","React","useSelectedLocales","DiffCollapser","RenderVersionFieldsToDiff","baseClass","Group","t0","$","baseVersionField","comparisonValue","field","locale","parentIsLocalized","versionValue","i18n","selectedLocales","t1","label","_jsxs","children","_jsx","className","t2","localized","t3","fields","comparison","version","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,\n field,\n locale,\n parentIsLocalized,\n versionValue,\n}) => {\n const { i18n } = useTranslation()\n const { selectedLocales } = useSelectedLocales()\n\n return (\n <div className={baseClass}>\n <DiffCollapser\n comparison={comparisonValue}\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 version={versionValue}\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;IAAAC,KAAA;IAAAC,MAAA;IAAAC,iBAAA;IAAAC;EAAA,IAAAP,EAOpD;EACC;IAAAQ;EAAA,IAAiBf,cAAA;EACjB;IAAAgB;EAAA,IAA4Bd,kBAAA;EAAA,IAAAe,EAAA;EAAA,IAAAT,CAAA,QAAAG,KAAA,IAAAH,CAAA,QAAAO,IAAA,IAAAP,CAAA,QAAAI,MAAA;IAQpBK,EAAA,cAAWN,KAAA,IACXA,KAAA,CAAAO,KAAW,IACX,OAAOP,KAAA,CAAAO,KAAA,KAAgB,cACrBC,KAAA,CAAC;MAAAC,QAAA,GACER,MAAA,IAAUS,IAAA,CAAC;QAAAC,SAAA,EAAgB,GAAAjB,SAAA,gBAA4B;QAAAe,QAAA,EAAGR;MAAA,C,GAC1Db,cAAA,CAAeY,KAAA,CAAAO,KAAA,EAAaH,IAAA;IAAA,C;;;;;;;;EAKhB,MAAAQ,EAAA,GAAAV,iBAAA,IAAqBF,KAAA,CAAAa,SAAe;EAAA,IAAAC,EAAA;EAAA,IAAAjB,CAAA,QAAAC,gBAAA,CAAAiB,MAAA,IAAAlB,CAAA,QAAAE,eAAA,IAAAF,CAAA,QAAAG,KAAA,CAAAe,MAAA,IAAAlB,CAAA,QAAAQ,eAAA,IAAAR,CAAA,QAAAS,EAAA,IAAAT,CAAA,QAAAe,EAAA,IAAAf,CAAA,SAAAM,YAAA;IAf3DW,EAAA,GAAAJ,IAAA,CAAC;MAAAC,SAAA,EAAAjB,SAAA;MAAAe,QAAA,EACCC,IAAA,CAAAlB,aAAA;QAAAwB,UAAA,EACcjB,eAAA;QAAAgB,MAAA,EACJf,KAAA,CAAAe,MAAA;QAAAR,KAAA,EAEND,E;iBASOD,eAAA;QAAAH,iBAAA,EACUU,EAAoC;QAAAK,OAAA,EAC9Cd,YAAA;QAAAM,QAAA,EAETC,IAAA,CAAAjB,yBAAA;UAAAyB,aAAA,EAA0CpB,gBAAA,CAAAiB;QAAA,C;;;;;;;;;;;;;;SAlB9CD,E;CAsBJ","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/views/Version/RenderFieldsToDiff/fields/Iterable/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAA;AAKnD,OAAO,cAAc,CAAA;AAGrB,OAAO,KAAK,MAAM,OAAO,CAAA;AASzB,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CAqFnD,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/views/Version/RenderFieldsToDiff/fields/Iterable/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAA;AAKnD,OAAO,cAAc,CAAA;AAGrB,OAAO,KAAK,MAAM,OAAO,CAAA;AASzB,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CAwFnD,CAAA"}
@@ -12,12 +12,13 @@ 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(14);
15
+ const $ = _c(15);
16
16
  const {
17
17
  baseVersionField,
18
18
  comparisonValue,
19
19
  field,
20
20
  locale,
21
+ parentIsLocalized,
21
22
  versionValue
22
23
  } = t0;
23
24
  const {
@@ -51,7 +52,7 @@ export const Iterable = t0 => {
51
52
  t1 = $[3];
52
53
  }
53
54
  let t2;
54
- if ($[4] !== baseVersionField || $[5] !== comparisonValue || $[6] !== config || $[7] !== field || $[8] !== i18n || $[9] !== maxRows || $[10] !== selectedLocales || $[11] !== t1 || $[12] !== versionValue) {
55
+ if ($[4] !== baseVersionField || $[5] !== comparisonValue || $[6] !== config || $[7] !== field || $[8] !== i18n || $[9] !== maxRows || $[10] !== parentIsLocalized || $[11] !== selectedLocales || $[12] !== t1 || $[13] !== versionValue) {
55
56
  t2 = _jsx("div", {
56
57
  className: baseClass,
57
58
  children: _jsxs(DiffCollapser, {
@@ -60,6 +61,7 @@ export const Iterable = t0 => {
60
61
  isIterable: true,
61
62
  label: t1,
62
63
  locales: selectedLocales,
64
+ parentIsLocalized,
63
65
  version: versionValue,
64
66
  children: [maxRows > 0 && _jsx("div", {
65
67
  className: `${baseClass}__rows`,
@@ -86,6 +88,7 @@ export const Iterable = t0 => {
86
88
  fields,
87
89
  label: rowLabel,
88
90
  locales: selectedLocales,
91
+ parentIsLocalized: parentIsLocalized || field.localized,
89
92
  version: versionRow,
90
93
  children: _jsx(RenderVersionFieldsToDiff, {
91
94
  versionFields
@@ -107,12 +110,13 @@ export const Iterable = t0 => {
107
110
  $[7] = field;
108
111
  $[8] = i18n;
109
112
  $[9] = maxRows;
110
- $[10] = selectedLocales;
111
- $[11] = t1;
112
- $[12] = versionValue;
113
- $[13] = t2;
113
+ $[10] = parentIsLocalized;
114
+ $[11] = selectedLocales;
115
+ $[12] = t1;
116
+ $[13] = versionValue;
117
+ $[14] = t2;
114
118
  } else {
115
- t2 = $[13];
119
+ t2 = $[14];
116
120
  }
117
121
  return t2;
118
122
  };
@@ -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","field","locale","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","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 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 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 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":[]}
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":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/views/Version/RenderFieldsToDiff/fields/Relationship/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAGV,oCAAoC,EACrC,MAAM,SAAS,CAAA;AAShB,OAAO,cAAc,CAAA;AAsFrB,eAAO,MAAM,YAAY,EAAE,oCA8D1B,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;AAShB,OAAO,cAAc,CAAA;AAwFrB,eAAO,MAAM,YAAY,EAAE,oCAkF1B,CAAA"}
@@ -4,15 +4,15 @@ import { c as _c } from "react/compiler-runtime";
4
4
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
5
5
  import { getTranslation } from '@payloadcms/translations';
6
6
  import { useConfig, useTranslation } from '@payloadcms/ui';
7
- import { fieldAffectsData, fieldIsPresentationalOnly } from 'payload/shared';
7
+ import { fieldAffectsData, fieldIsPresentationalOnly, fieldShouldBeLocalized } from 'payload/shared';
8
8
  import React from 'react';
9
9
  import ReactDiffViewer from 'react-diff-viewer-continued';
10
10
  import Label from '../../Label/index.js';
11
11
  import { diffStyles } from '../styles.js';
12
12
  const baseClass = 'relationship-diff';
13
- const generateLabelFromValue = (collections, field, locale, value) => {
13
+ const generateLabelFromValue = (collections, field, locale, value, config, parentIsLocalized) => {
14
14
  if (Array.isArray(value)) {
15
- return value.map(v => generateLabelFromValue(collections, field, locale, v)).filter(Boolean) // Filters out any undefined or empty values
15
+ return value.map(v => generateLabelFromValue(collections, field, locale, v, config, parentIsLocalized)).filter(Boolean) // Filters out any undefined or empty values
16
16
  .join(', ');
17
17
  }
18
18
  let relatedDoc;
@@ -34,7 +34,10 @@ const generateLabelFromValue = (collections, field, locale, value) => {
34
34
  const useAsTitleField = relatedCollection.fields.find(f => fieldAffectsData(f) && !fieldIsPresentationalOnly(f) && f.name === useAsTitle);
35
35
  let titleFieldIsLocalized = false;
36
36
  if (useAsTitleField && fieldAffectsData(useAsTitleField)) {
37
- titleFieldIsLocalized = useAsTitleField.localized;
37
+ titleFieldIsLocalized = fieldShouldBeLocalized({
38
+ field: useAsTitleField,
39
+ parentIsLocalized
40
+ });
38
41
  }
39
42
  if (typeof relatedDoc?.[useAsTitle] !== 'undefined') {
40
43
  valueToReturn = relatedDoc[useAsTitle];
@@ -60,16 +63,20 @@ const generateLabelFromValue = (collections, field, locale, value) => {
60
63
  return valueToReturn;
61
64
  };
62
65
  export const Relationship = t0 => {
63
- const $ = _c(10);
66
+ const $ = _c(12);
64
67
  const {
65
68
  comparisonValue,
66
69
  field,
67
70
  locale,
71
+ parentIsLocalized,
68
72
  versionValue
69
73
  } = t0;
70
74
  const {
71
75
  i18n
72
76
  } = useTranslation();
77
+ const {
78
+ config
79
+ } = useConfig();
73
80
  const placeholder = `[${i18n.t("general:noValue")}]`;
74
81
  const {
75
82
  config: t1
@@ -78,34 +85,34 @@ export const Relationship = t0 => {
78
85
  collections
79
86
  } = t1;
80
87
  let t2;
81
- if ($[0] !== collections || $[1] !== comparisonValue || $[2] !== field || $[3] !== i18n || $[4] !== locale || $[5] !== placeholder || $[6] !== versionValue) {
88
+ if ($[0] !== collections || $[1] !== comparisonValue || $[2] !== config || $[3] !== field || $[4] !== i18n || $[5] !== locale || $[6] !== parentIsLocalized || $[7] !== placeholder || $[8] !== versionValue) {
82
89
  let versionToRender = placeholder;
83
90
  let comparisonToRender = placeholder;
84
91
  if (versionValue) {
85
92
  if ("hasMany" in field && field.hasMany && Array.isArray(versionValue)) {
86
- versionToRender = versionValue.map(val => generateLabelFromValue(collections, field, locale, val)).join(", ") || placeholder;
93
+ versionToRender = versionValue.map(val => generateLabelFromValue(collections, field, locale, val, config, parentIsLocalized)).join(", ") || placeholder;
87
94
  } else {
88
- versionToRender = generateLabelFromValue(collections, field, locale, versionValue) || placeholder;
95
+ versionToRender = generateLabelFromValue(collections, field, locale, versionValue, config, parentIsLocalized) || placeholder;
89
96
  }
90
97
  }
91
98
  if (comparisonValue) {
92
99
  if ("hasMany" in field && field.hasMany && Array.isArray(comparisonValue)) {
93
- comparisonToRender = comparisonValue.map(val_0 => generateLabelFromValue(collections, field, locale, val_0)).join(", ") || placeholder;
100
+ comparisonToRender = comparisonValue.map(val_0 => generateLabelFromValue(collections, field, locale, val_0, config, parentIsLocalized)).join(", ") || placeholder;
94
101
  } else {
95
- comparisonToRender = generateLabelFromValue(collections, field, locale, comparisonValue) || placeholder;
102
+ comparisonToRender = generateLabelFromValue(collections, field, locale, comparisonValue, config, parentIsLocalized) || placeholder;
96
103
  }
97
104
  }
98
105
  const label = "label" in field && typeof field.label !== "boolean" && typeof field.label !== "function" ? field.label : "";
99
106
  let t3;
100
- if ($[8] !== locale) {
107
+ if ($[10] !== locale) {
101
108
  t3 = locale && _jsx("span", {
102
109
  className: `${baseClass}__locale-label`,
103
110
  children: locale
104
111
  });
105
- $[8] = locale;
106
- $[9] = t3;
112
+ $[10] = locale;
113
+ $[11] = t3;
107
114
  } else {
108
- t3 = $[9];
115
+ t3 = $[11];
109
116
  }
110
117
  t2 = _jsxs("div", {
111
118
  className: baseClass,
@@ -122,14 +129,16 @@ export const Relationship = t0 => {
122
129
  });
123
130
  $[0] = collections;
124
131
  $[1] = comparisonValue;
125
- $[2] = field;
126
- $[3] = i18n;
127
- $[4] = locale;
128
- $[5] = placeholder;
129
- $[6] = versionValue;
130
- $[7] = t2;
132
+ $[2] = config;
133
+ $[3] = field;
134
+ $[4] = i18n;
135
+ $[5] = locale;
136
+ $[6] = parentIsLocalized;
137
+ $[7] = placeholder;
138
+ $[8] = versionValue;
139
+ $[9] = t2;
131
140
  } else {
132
- t2 = $[7];
141
+ t2 = $[9];
133
142
  }
134
143
  return t2;
135
144
  };