@payloadcms/next 3.20.0-canary.a40bec2 → 3.20.0-canary.a7d4b94

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 (78) hide show
  1. package/dist/prod/styles.css +1 -1
  2. package/dist/views/Version/Default/index.d.ts.map +1 -1
  3. package/dist/views/Version/Default/index.js +2 -20
  4. package/dist/views/Version/Default/index.js.map +1 -1
  5. package/dist/views/Version/Default/index.scss +0 -5
  6. package/dist/views/Version/Default/types.d.ts +0 -1
  7. package/dist/views/Version/Default/types.d.ts.map +1 -1
  8. package/dist/views/Version/Default/types.js.map +1 -1
  9. package/dist/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.d.ts +0 -1
  10. package/dist/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.d.ts.map +1 -1
  11. package/dist/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.js +30 -70
  12. package/dist/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.js.map +1 -1
  13. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.d.ts +3 -4
  14. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.d.ts.map +1 -1
  15. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js +4 -35
  16. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js.map +1 -1
  17. package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.d.ts +3 -2
  18. package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.d.ts.map +1 -1
  19. package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.js +0 -3
  20. package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.js.map +1 -1
  21. package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.d.ts +3 -2
  22. package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.d.ts.map +1 -1
  23. package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.js.map +1 -1
  24. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.d.ts +2 -2
  25. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.d.ts.map +1 -1
  26. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js.map +1 -1
  27. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.d.ts +3 -2
  28. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.d.ts.map +1 -1
  29. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js +2 -1
  30. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js.map +1 -1
  31. package/dist/views/Version/RenderFieldsToDiff/fields/Row/index.d.ts +3 -2
  32. package/dist/views/Version/RenderFieldsToDiff/fields/Row/index.d.ts.map +1 -1
  33. package/dist/views/Version/RenderFieldsToDiff/fields/Row/index.js.map +1 -1
  34. package/dist/views/Version/RenderFieldsToDiff/fields/Select/DiffViewer/index.d.ts.map +1 -1
  35. package/dist/views/Version/RenderFieldsToDiff/fields/Select/DiffViewer/index.js +2 -1
  36. package/dist/views/Version/RenderFieldsToDiff/fields/Select/DiffViewer/index.js.map +1 -1
  37. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.d.ts +3 -2
  38. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.d.ts.map +1 -1
  39. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js.map +1 -1
  40. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.d.ts +3 -2
  41. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.d.ts.map +1 -1
  42. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js +4 -10
  43. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js.map +1 -1
  44. package/dist/views/Version/RenderFieldsToDiff/fields/Text/DiffViewer/index.d.ts.map +1 -1
  45. package/dist/views/Version/RenderFieldsToDiff/fields/Text/DiffViewer/index.js +2 -1
  46. package/dist/views/Version/RenderFieldsToDiff/fields/Text/DiffViewer/index.js.map +1 -1
  47. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.d.ts +3 -2
  48. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.d.ts.map +1 -1
  49. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.js.map +1 -1
  50. package/dist/views/Version/RenderFieldsToDiff/fields/index.d.ts +2 -2
  51. package/dist/views/Version/RenderFieldsToDiff/fields/index.d.ts.map +1 -1
  52. package/dist/views/Version/RenderFieldsToDiff/fields/index.js.map +1 -1
  53. package/dist/views/Version/RenderFieldsToDiff/fields/styles.d.ts +0 -3
  54. package/dist/views/Version/RenderFieldsToDiff/fields/styles.d.ts.map +1 -1
  55. package/dist/views/Version/RenderFieldsToDiff/fields/styles.js +0 -3
  56. package/dist/views/Version/RenderFieldsToDiff/fields/styles.js.map +1 -1
  57. package/dist/views/Version/RenderFieldsToDiff/index.js +2 -3
  58. package/dist/views/Version/RenderFieldsToDiff/index.js.map +1 -1
  59. package/dist/views/Version/RenderFieldsToDiff/index.scss +0 -4
  60. package/dist/views/Version/RenderFieldsToDiff/types.d.ts +3 -0
  61. package/dist/views/Version/RenderFieldsToDiff/types.d.ts.map +1 -0
  62. package/dist/views/Version/RenderFieldsToDiff/types.js +2 -0
  63. package/dist/views/Version/RenderFieldsToDiff/types.js.map +1 -0
  64. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.js +1 -4
  65. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.js.map +1 -1
  66. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldPathsModified.d.ts.map +1 -1
  67. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldPathsModified.js +2 -6
  68. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldPathsModified.js.map +1 -1
  69. package/dist/views/Version/SelectComparison/types.d.ts.map +1 -1
  70. package/dist/views/Version/SelectComparison/types.js.map +1 -1
  71. package/dist/views/Version/index.d.ts.map +1 -1
  72. package/dist/views/Version/index.js +4 -19
  73. package/dist/views/Version/index.js.map +1 -1
  74. package/dist/views/Versions/getLatestVersion.d.ts +1 -3
  75. package/dist/views/Versions/getLatestVersion.d.ts.map +1 -1
  76. package/dist/views/Versions/getLatestVersion.js +0 -4
  77. package/dist/views/Versions/getLatestVersion.js.map +1 -1
  78. package/package.json +7 -8
@@ -174,10 +174,7 @@ export function countChangedFieldsInRows({
174
174
  fields: rowFields
175
175
  } = getFieldsForRowComparison({
176
176
  baseVersionField: {
177
- type: 'text',
178
- fields: [],
179
- path: '',
180
- schemaPath: ''
177
+ fields: []
181
178
  },
182
179
  comparisonRow,
183
180
  field,
@@ -1 +1 @@
1
- {"version":3,"file":"countChangedFields.js","names":["fieldHasChanges","getFieldsForRowComparison","countChangedFields","comparison","fields","locales","version","count","forEach","field","name","fieldType","type","localized","locale","comparisonRows","versionRows","countChangedFieldsInRows","tabs","tab","_exhaustiveCheck","Error","String","i","comparisonRow","versionRow","rowFields","baseVersionField","path","schemaPath","row"],"sources":["../../../../../src/views/Version/RenderFieldsToDiff/utilities/countChangedFields.ts"],"sourcesContent":["import type { ArrayFieldClient, BlocksFieldClient, ClientField } from 'payload'\n\nimport { fieldHasChanges } from './fieldHasChanges.js'\nimport { getFieldsForRowComparison } from './getFieldsForRowComparison.js'\n\ntype Args = {\n comparison: unknown\n fields: ClientField[]\n locales: string[] | undefined\n version: unknown\n}\n\n/**\n * Recursively counts the number of changed fields between comparison and\n * version data for a given set of fields.\n */\nexport function countChangedFields({ comparison, fields, locales, version }: Args) {\n let count = 0\n\n fields.forEach((field) => {\n // Don't count the id field since it is not displayed in the UI\n if ('name' in field && field.name === 'id') {\n return\n }\n const fieldType = field.type\n switch (fieldType) {\n // Iterable fields are arrays and blocks fields. We iterate over each row and\n // count the number of changed fields in each.\n case 'array':\n case 'blocks': {\n if (locales && field.localized) {\n locales.forEach((locale) => {\n const comparisonRows = comparison?.[field.name]?.[locale] ?? []\n const versionRows = version?.[field.name]?.[locale] ?? []\n count += countChangedFieldsInRows({ comparisonRows, field, locales, versionRows })\n })\n } else {\n const comparisonRows = comparison?.[field.name] ?? []\n const versionRows = version?.[field.name] ?? []\n count += countChangedFieldsInRows({ comparisonRows, field, locales, versionRows })\n }\n break\n }\n\n // Regular fields without nested fields.\n case 'checkbox':\n case 'code':\n case 'date':\n case 'email':\n case 'join':\n case 'json':\n case 'number':\n case 'point':\n case 'radio':\n case 'relationship':\n case 'richText':\n case 'select':\n case 'text':\n case 'textarea':\n case 'upload': {\n // Fields that have a name and contain data. We can just check if the data has changed.\n if (locales && field.localized) {\n locales.forEach((locale) => {\n if (\n fieldHasChanges(version?.[field.name]?.[locale], comparison?.[field.name]?.[locale])\n ) {\n count++\n }\n })\n } else if (fieldHasChanges(version?.[field.name], comparison?.[field.name])) {\n count++\n }\n break\n }\n // Fields that have nested fields, but don't nest their fields' data.\n case 'collapsible':\n case 'row': {\n count += countChangedFields({\n comparison,\n fields: field.fields,\n locales,\n version,\n })\n\n break\n }\n\n // Fields that have nested fields and nest their fields' data.\n case 'group': {\n if (locales && field.localized) {\n locales.forEach((locale) => {\n count += countChangedFields({\n comparison: comparison?.[field.name]?.[locale],\n fields: field.fields,\n locales,\n version: version?.[field.name]?.[locale],\n })\n })\n } else {\n count += countChangedFields({\n comparison: comparison?.[field.name],\n fields: field.fields,\n locales,\n version: version?.[field.name],\n })\n }\n break\n }\n\n // Each tab in a tabs field has nested fields. The fields data may be\n // nested or not depending on the existence of a name property.\n case 'tabs': {\n field.tabs.forEach((tab) => {\n if ('name' in tab && locales && tab.localized) {\n // Named localized tab\n locales.forEach((locale) => {\n count += countChangedFields({\n comparison: comparison?.[tab.name]?.[locale],\n fields: tab.fields,\n locales,\n version: version?.[tab.name]?.[locale],\n })\n })\n } else if ('name' in tab) {\n // Named tab\n count += countChangedFields({\n comparison: comparison?.[tab.name],\n fields: tab.fields,\n locales,\n version: version?.[tab.name],\n })\n } else {\n // Unnamed tab\n count += countChangedFields({\n comparison,\n fields: tab.fields,\n locales,\n version,\n })\n }\n })\n break\n }\n\n // UI fields don't have data and are not displayed in the version view\n // so we can ignore them.\n case 'ui': {\n break\n }\n\n default: {\n const _exhaustiveCheck: never = fieldType\n throw new Error(`Unexpected field.type in countChangedFields : ${String(fieldType)}`)\n }\n }\n })\n\n return count\n}\n\ntype countChangedFieldsInRowsArgs = {\n comparisonRows: unknown[]\n field: ArrayFieldClient | BlocksFieldClient\n locales: string[] | undefined\n versionRows: unknown[]\n}\n\nexport function countChangedFieldsInRows({\n comparisonRows = [],\n field,\n locales,\n versionRows = [],\n}: countChangedFieldsInRowsArgs) {\n let count = 0\n let i = 0\n\n while (comparisonRows[i] || versionRows[i]) {\n const comparisonRow = comparisonRows?.[i] || {}\n const versionRow = versionRows?.[i] || {}\n\n const { fields: rowFields } = getFieldsForRowComparison({\n baseVersionField: { type: 'text', fields: [], path: '', schemaPath: '' }, // Doesn't matter, as we don't need the versionFields output here\n comparisonRow,\n field,\n row: i,\n versionRow,\n })\n\n count += countChangedFields({\n comparison: comparisonRow,\n fields: rowFields,\n locales,\n version: versionRow,\n })\n\n i++\n }\n return count\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"countChangedFields.js","names":["fieldHasChanges","getFieldsForRowComparison","countChangedFields","comparison","fields","locales","version","count","forEach","field","name","fieldType","type","localized","locale","comparisonRows","versionRows","countChangedFieldsInRows","tabs","tab","_exhaustiveCheck","Error","String","i","comparisonRow","versionRow","rowFields","baseVersionField","row"],"sources":["../../../../../src/views/Version/RenderFieldsToDiff/utilities/countChangedFields.ts"],"sourcesContent":["import type { ArrayFieldClient, BlocksFieldClient, ClientField } from 'payload'\n\nimport { fieldHasChanges } from './fieldHasChanges.js'\nimport { getFieldsForRowComparison } from './getFieldsForRowComparison.js'\n\ntype Args = {\n comparison: unknown\n fields: ClientField[]\n locales: string[] | undefined\n version: unknown\n}\n\n/**\n * Recursively counts the number of changed fields between comparison and\n * version data for a given set of fields.\n */\nexport function countChangedFields({ comparison, fields, locales, version }: Args) {\n let count = 0\n\n fields.forEach((field) => {\n // Don't count the id field since it is not displayed in the UI\n if ('name' in field && field.name === 'id') {\n return\n }\n const fieldType = field.type\n switch (fieldType) {\n // Iterable fields are arrays and blocks fields. We iterate over each row and\n // count the number of changed fields in each.\n case 'array':\n case 'blocks': {\n if (locales && field.localized) {\n locales.forEach((locale) => {\n const comparisonRows = comparison?.[field.name]?.[locale] ?? []\n const versionRows = version?.[field.name]?.[locale] ?? []\n count += countChangedFieldsInRows({ comparisonRows, field, locales, versionRows })\n })\n } else {\n const comparisonRows = comparison?.[field.name] ?? []\n const versionRows = version?.[field.name] ?? []\n count += countChangedFieldsInRows({ comparisonRows, field, locales, versionRows })\n }\n break\n }\n\n // Regular fields without nested fields.\n case 'checkbox':\n case 'code':\n case 'date':\n case 'email':\n case 'join':\n case 'json':\n case 'number':\n case 'point':\n case 'radio':\n case 'relationship':\n case 'richText':\n case 'select':\n case 'text':\n case 'textarea':\n case 'upload': {\n // Fields that have a name and contain data. We can just check if the data has changed.\n if (locales && field.localized) {\n locales.forEach((locale) => {\n if (\n fieldHasChanges(version?.[field.name]?.[locale], comparison?.[field.name]?.[locale])\n ) {\n count++\n }\n })\n } else if (fieldHasChanges(version?.[field.name], comparison?.[field.name])) {\n count++\n }\n break\n }\n // Fields that have nested fields, but don't nest their fields' data.\n case 'collapsible':\n case 'row': {\n count += countChangedFields({\n comparison,\n fields: field.fields,\n locales,\n version,\n })\n\n break\n }\n\n // Fields that have nested fields and nest their fields' data.\n case 'group': {\n if (locales && field.localized) {\n locales.forEach((locale) => {\n count += countChangedFields({\n comparison: comparison?.[field.name]?.[locale],\n fields: field.fields,\n locales,\n version: version?.[field.name]?.[locale],\n })\n })\n } else {\n count += countChangedFields({\n comparison: comparison?.[field.name],\n fields: field.fields,\n locales,\n version: version?.[field.name],\n })\n }\n break\n }\n\n // Each tab in a tabs field has nested fields. The fields data may be\n // nested or not depending on the existence of a name property.\n case 'tabs': {\n field.tabs.forEach((tab) => {\n if ('name' in tab && locales && tab.localized) {\n // Named localized tab\n locales.forEach((locale) => {\n count += countChangedFields({\n comparison: comparison?.[tab.name]?.[locale],\n fields: tab.fields,\n locales,\n version: version?.[tab.name]?.[locale],\n })\n })\n } else if ('name' in tab) {\n // Named tab\n count += countChangedFields({\n comparison: comparison?.[tab.name],\n fields: tab.fields,\n locales,\n version: version?.[tab.name],\n })\n } else {\n // Unnamed tab\n count += countChangedFields({\n comparison,\n fields: tab.fields,\n locales,\n version,\n })\n }\n })\n break\n }\n\n // UI fields don't have data and are not displayed in the version view\n // so we can ignore them.\n case 'ui': {\n break\n }\n\n default: {\n const _exhaustiveCheck: never = fieldType\n throw new Error(`Unexpected field.type in countChangedFields : ${String(fieldType)}`)\n }\n }\n })\n\n return count\n}\n\ntype countChangedFieldsInRowsArgs = {\n comparisonRows: unknown[]\n field: ArrayFieldClient | BlocksFieldClient\n locales: string[] | undefined\n versionRows: unknown[]\n}\n\nexport function countChangedFieldsInRows({\n comparisonRows = [],\n field,\n locales,\n versionRows = [],\n}: countChangedFieldsInRowsArgs) {\n let count = 0\n let i = 0\n\n while (comparisonRows[i] || versionRows[i]) {\n const comparisonRow = comparisonRows?.[i] || {}\n const versionRow = versionRows?.[i] || {}\n\n const { fields: rowFields } = getFieldsForRowComparison({\n baseVersionField: { fields: [] },\n comparisonRow,\n field,\n row: i,\n versionRow,\n })\n\n count += countChangedFields({\n comparison: comparisonRow,\n fields: rowFields,\n locales,\n version: versionRow,\n })\n\n i++\n }\n return count\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"getFieldPathsModified.d.ts","sourceRoot":"","sources":["../../../../../src/views/Version/RenderFieldsToDiff/utilities/getFieldPathsModified.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,GAAG,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AAExE,KAAK,IAAI,GAAG;IACV,KAAK,EAAE,WAAW,GAAG,KAAK,GAAG,GAAG,GAAG,gBAAgB,CAAA;IACnD,KAAK,EAAE,MAAM,CAAA;IACb,eAAe,EAAE,MAAM,CAAA;IACvB,UAAU,EAAE,MAAM,CAAA;IAClB,gBAAgB,EAAE,MAAM,CAAA;CACzB,CAAA;AAED,KAAK,UAAU,GAAG;IAChB;;;;OAIG;IACH,SAAS,EAAE,MAAM,CAAA;IACjB;;OAEG;IACH,IAAI,EAAE,MAAM,CAAA;IACZ;;OAEG;IACH,UAAU,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,wBAAgB,qBAAqB,CAAC,EACpC,KAAK,EACL,KAAK,EACL,eAAe,EACf,UAAU,EACV,gBAAgB,GACjB,EAAE,IAAI,GAAG,UAAU,CAkCnB"}
1
+ {"version":3,"file":"getFieldPathsModified.d.ts","sourceRoot":"","sources":["../../../../../src/views/Version/RenderFieldsToDiff/utilities/getFieldPathsModified.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,GAAG,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AAExE,KAAK,IAAI,GAAG;IACV,KAAK,EAAE,WAAW,GAAG,KAAK,GAAG,GAAG,GAAG,gBAAgB,CAAA;IACnD,KAAK,EAAE,MAAM,CAAA;IACb,eAAe,EAAE,MAAM,CAAA;IACvB,UAAU,EAAE,MAAM,CAAA;IAClB,gBAAgB,EAAE,MAAM,CAAA;CACzB,CAAA;AAED,KAAK,UAAU,GAAG;IAChB;;;;OAIG;IACH,SAAS,EAAE,MAAM,CAAA;IACjB;;OAEG;IACH,IAAI,EAAE,MAAM,CAAA;IACZ;;OAEG;IACH,UAAU,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,wBAAgB,qBAAqB,CAAC,EACpC,KAAK,EACL,KAAK,EACL,eAAe,EACf,UAAU,EACV,gBAAgB,GACjB,EAAE,IAAI,GAAG,UAAU,CA0BnB"}
@@ -9,22 +9,18 @@ export function getFieldPathsModified({
9
9
  const parentIsUnnamed = parentPathSegments[parentPathSegments.length - 1].startsWith('_index-');
10
10
  const parentWithoutIndex = parentIsUnnamed ? parentPathSegments.slice(0, -1).join('.') : parentPath;
11
11
  const parentPathToUse = parentIsUnnamed ? parentWithoutIndex : parentPath;
12
- const parentSchemaPathSegments = parentSchemaPath.split('.');
13
- const parentSchemaIsUnnamed = parentSchemaPathSegments[parentSchemaPathSegments.length - 1].startsWith('_index-');
14
- const parentSchemaWithoutIndex = parentSchemaIsUnnamed ? parentSchemaPathSegments.slice(0, -1).join('.') : parentSchemaPath;
15
- const parentSchemaPathToUse = parentSchemaIsUnnamed ? parentSchemaWithoutIndex : parentSchemaPath;
16
12
  if ('name' in field) {
17
13
  return {
18
14
  indexPath: '',
19
15
  path: `${parentPathToUse ? parentPathToUse + '.' : ''}${field.name}`,
20
- schemaPath: `${parentSchemaPathToUse ? parentSchemaPathToUse + '.' : ''}${field.name}`
16
+ schemaPath: `${parentSchemaPath ? parentSchemaPath + '.' : ''}${field.name}`
21
17
  };
22
18
  }
23
19
  const indexSuffix = `_index-${`${parentIndexPath ? parentIndexPath + '-' : ''}${index}`}`;
24
20
  return {
25
21
  indexPath: `${parentIndexPath ? parentIndexPath + '-' : ''}${index}`,
26
22
  path: `${parentPathToUse ? parentPathToUse + '.' : ''}${indexSuffix}`,
27
- schemaPath: `${!parentIsUnnamed && parentSchemaPathToUse ? parentSchemaPathToUse + '.' : ''}${indexSuffix}`
23
+ schemaPath: `${!parentIsUnnamed && parentSchemaPath ? parentSchemaPath + '.' : ''}${indexSuffix}`
28
24
  };
29
25
  }
30
26
  //# sourceMappingURL=getFieldPathsModified.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getFieldPathsModified.js","names":["getFieldPathsModified","field","index","parentIndexPath","parentPath","parentSchemaPath","parentPathSegments","split","parentIsUnnamed","length","startsWith","parentWithoutIndex","slice","join","parentPathToUse","parentSchemaPathSegments","parentSchemaIsUnnamed","parentSchemaWithoutIndex","parentSchemaPathToUse","indexPath","path","name","schemaPath","indexSuffix"],"sources":["../../../../../src/views/Version/RenderFieldsToDiff/utilities/getFieldPathsModified.ts"],"sourcesContent":["import type { ClientField, Field, Tab, TabAsFieldClient } from 'payload'\n\ntype Args = {\n field: ClientField | Field | Tab | TabAsFieldClient\n index: number\n parentIndexPath: string\n parentPath: string\n parentSchemaPath: string\n}\n\ntype FieldPaths = {\n /**\n * A string of '-' separated indexes representing where\n * to find this field in a given field schema array.\n * It will always be complete and accurate.\n */\n indexPath: string\n /**\n * Path for this field relative to its position in the data.\n */\n path: string\n /**\n * Path for this field relative to its position in the schema.\n */\n schemaPath: string\n}\n\nexport function getFieldPathsModified({\n field,\n index,\n parentIndexPath,\n parentPath,\n parentSchemaPath,\n}: Args): FieldPaths {\n const parentPathSegments = parentPath.split('.')\n\n const parentIsUnnamed = parentPathSegments[parentPathSegments.length - 1].startsWith('_index-')\n\n const parentWithoutIndex = parentIsUnnamed\n ? parentPathSegments.slice(0, -1).join('.')\n : parentPath\n\n const parentPathToUse = parentIsUnnamed ? parentWithoutIndex : parentPath\n\n const parentSchemaPathSegments = parentSchemaPath.split('.')\n const parentSchemaIsUnnamed =\n parentSchemaPathSegments[parentSchemaPathSegments.length - 1].startsWith('_index-')\n const parentSchemaWithoutIndex = parentSchemaIsUnnamed\n ? parentSchemaPathSegments.slice(0, -1).join('.')\n : parentSchemaPath\n const parentSchemaPathToUse = parentSchemaIsUnnamed ? parentSchemaWithoutIndex : parentSchemaPath\n\n if ('name' in field) {\n return {\n indexPath: '',\n path: `${parentPathToUse ? parentPathToUse + '.' : ''}${field.name}`,\n schemaPath: `${parentSchemaPathToUse ? parentSchemaPathToUse + '.' : ''}${field.name}`,\n }\n }\n\n const indexSuffix = `_index-${`${parentIndexPath ? parentIndexPath + '-' : ''}${index}`}`\n\n return {\n indexPath: `${parentIndexPath ? parentIndexPath + '-' : ''}${index}`,\n path: `${parentPathToUse ? parentPathToUse + '.' : ''}${indexSuffix}`,\n schemaPath: `${!parentIsUnnamed && parentSchemaPathToUse ? parentSchemaPathToUse + '.' : ''}${indexSuffix}`,\n }\n}\n"],"mappings":"AA2BA,OAAO,SAASA,sBAAsB;EACpCC,KAAK;EACLC,KAAK;EACLC,eAAe;EACfC,UAAU;EACVC;AAAgB,CACX;EACL,MAAMC,kBAAA,GAAqBF,UAAA,CAAWG,KAAK,CAAC;EAE5C,MAAMC,eAAA,GAAkBF,kBAAkB,CAACA,kBAAA,CAAmBG,MAAM,GAAG,EAAE,CAACC,UAAU,CAAC;EAErF,MAAMC,kBAAA,GAAqBH,eAAA,GACvBF,kBAAA,CAAmBM,KAAK,CAAC,GAAG,CAAC,GAAGC,IAAI,CAAC,OACrCT,UAAA;EAEJ,MAAMU,eAAA,GAAkBN,eAAA,GAAkBG,kBAAA,GAAqBP,UAAA;EAE/D,MAAMW,wBAAA,GAA2BV,gBAAA,CAAiBE,KAAK,CAAC;EACxD,MAAMS,qBAAA,GACJD,wBAAwB,CAACA,wBAAA,CAAyBN,MAAM,GAAG,EAAE,CAACC,UAAU,CAAC;EAC3E,MAAMO,wBAAA,GAA2BD,qBAAA,GAC7BD,wBAAA,CAAyBH,KAAK,CAAC,GAAG,CAAC,GAAGC,IAAI,CAAC,OAC3CR,gBAAA;EACJ,MAAMa,qBAAA,GAAwBF,qBAAA,GAAwBC,wBAAA,GAA2BZ,gBAAA;EAEjF,IAAI,UAAUJ,KAAA,EAAO;IACnB,OAAO;MACLkB,SAAA,EAAW;MACXC,IAAA,EAAM,GAAGN,eAAA,GAAkBA,eAAA,GAAkB,MAAM,KAAKb,KAAA,CAAMoB,IAAI,EAAE;MACpEC,UAAA,EAAY,GAAGJ,qBAAA,GAAwBA,qBAAA,GAAwB,MAAM,KAAKjB,KAAA,CAAMoB,IAAI;IACtF;EACF;EAEA,MAAME,WAAA,GAAc,UAAU,GAAGpB,eAAA,GAAkBA,eAAA,GAAkB,MAAM,KAAKD,KAAA,EAAO,EAAE;EAEzF,OAAO;IACLiB,SAAA,EAAW,GAAGhB,eAAA,GAAkBA,eAAA,GAAkB,MAAM,KAAKD,KAAA,EAAO;IACpEkB,IAAA,EAAM,GAAGN,eAAA,GAAkBA,eAAA,GAAkB,MAAM,KAAKS,WAAA,EAAa;IACrED,UAAA,EAAY,GAAG,CAACd,eAAA,IAAmBU,qBAAA,GAAwBA,qBAAA,GAAwB,MAAM,KAAKK,WAAA;EAChG;AACF","ignoreList":[]}
1
+ {"version":3,"file":"getFieldPathsModified.js","names":["getFieldPathsModified","field","index","parentIndexPath","parentPath","parentSchemaPath","parentPathSegments","split","parentIsUnnamed","length","startsWith","parentWithoutIndex","slice","join","parentPathToUse","indexPath","path","name","schemaPath","indexSuffix"],"sources":["../../../../../src/views/Version/RenderFieldsToDiff/utilities/getFieldPathsModified.ts"],"sourcesContent":["import type { ClientField, Field, Tab, TabAsFieldClient } from 'payload'\n\ntype Args = {\n field: ClientField | Field | Tab | TabAsFieldClient\n index: number\n parentIndexPath: string\n parentPath: string\n parentSchemaPath: string\n}\n\ntype FieldPaths = {\n /**\n * A string of '-' separated indexes representing where\n * to find this field in a given field schema array.\n * It will always be complete and accurate.\n */\n indexPath: string\n /**\n * Path for this field relative to its position in the data.\n */\n path: string\n /**\n * Path for this field relative to its position in the schema.\n */\n schemaPath: string\n}\n\nexport function getFieldPathsModified({\n field,\n index,\n parentIndexPath,\n parentPath,\n parentSchemaPath,\n}: Args): FieldPaths {\n const parentPathSegments = parentPath.split('.')\n\n const parentIsUnnamed = parentPathSegments[parentPathSegments.length - 1].startsWith('_index-')\n\n const parentWithoutIndex = parentIsUnnamed\n ? parentPathSegments.slice(0, -1).join('.')\n : parentPath\n\n const parentPathToUse = parentIsUnnamed ? parentWithoutIndex : parentPath\n\n if ('name' in field) {\n return {\n indexPath: '',\n path: `${parentPathToUse ? parentPathToUse + '.' : ''}${field.name}`,\n schemaPath: `${parentSchemaPath ? parentSchemaPath + '.' : ''}${field.name}`,\n }\n }\n\n const indexSuffix = `_index-${`${parentIndexPath ? parentIndexPath + '-' : ''}${index}`}`\n\n return {\n indexPath: `${parentIndexPath ? parentIndexPath + '-' : ''}${index}`,\n path: `${parentPathToUse ? parentPathToUse + '.' : ''}${indexSuffix}`,\n schemaPath: `${!parentIsUnnamed && parentSchemaPath ? parentSchemaPath + '.' : ''}${indexSuffix}`,\n }\n}\n"],"mappings":"AA2BA,OAAO,SAASA,sBAAsB;EACpCC,KAAK;EACLC,KAAK;EACLC,eAAe;EACfC,UAAU;EACVC;AAAgB,CACX;EACL,MAAMC,kBAAA,GAAqBF,UAAA,CAAWG,KAAK,CAAC;EAE5C,MAAMC,eAAA,GAAkBF,kBAAkB,CAACA,kBAAA,CAAmBG,MAAM,GAAG,EAAE,CAACC,UAAU,CAAC;EAErF,MAAMC,kBAAA,GAAqBH,eAAA,GACvBF,kBAAA,CAAmBM,KAAK,CAAC,GAAG,CAAC,GAAGC,IAAI,CAAC,OACrCT,UAAA;EAEJ,MAAMU,eAAA,GAAkBN,eAAA,GAAkBG,kBAAA,GAAqBP,UAAA;EAE/D,IAAI,UAAUH,KAAA,EAAO;IACnB,OAAO;MACLc,SAAA,EAAW;MACXC,IAAA,EAAM,GAAGF,eAAA,GAAkBA,eAAA,GAAkB,MAAM,KAAKb,KAAA,CAAMgB,IAAI,EAAE;MACpEC,UAAA,EAAY,GAAGb,gBAAA,GAAmBA,gBAAA,GAAmB,MAAM,KAAKJ,KAAA,CAAMgB,IAAI;IAC5E;EACF;EAEA,MAAME,WAAA,GAAc,UAAU,GAAGhB,eAAA,GAAkBA,eAAA,GAAkB,MAAM,KAAKD,KAAA,EAAO,EAAE;EAEzF,OAAO;IACLa,SAAA,EAAW,GAAGZ,eAAA,GAAkBA,eAAA,GAAkB,MAAM,KAAKD,KAAA,EAAO;IACpEc,IAAA,EAAM,GAAGF,eAAA,GAAkBA,eAAA,GAAkB,MAAM,KAAKK,WAAA,EAAa;IACrED,UAAA,EAAY,GAAG,CAACV,eAAA,IAAmBH,gBAAA,GAAmBA,gBAAA,GAAmB,MAAM,KAAKc,WAAA;EACtF;AACF","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/views/Version/SelectComparison/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAA;AAEvE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAExD,MAAM,MAAM,KAAK,GAAG;IAClB,OAAO,EAAE,MAAM,CAAA;IACf,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,sBAAsB,CAAC,EAAE,MAAM,CAAA;IAC/B,QAAQ,EAAE,CAAC,GAAG,EAAE,aAAa,KAAK,IAAI,CAAA;IACtC,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IAC1B,KAAK,EAAE,aAAa,CAAA;IACpB,SAAS,EAAE,MAAM,CAAA;CAClB,CAAA;AAED,KAAK,KAAK,GAAG;IACX,QAAQ,EAAE,OAAO,CAAA;IACjB,IAAI,EAAE,OAAO,CAAA;CACd,CAAA;AAED,KAAK,GAAG,GAAG;IACT,UAAU,EAAE,yBAAyB,CAAA;IACrC,IAAI,EAAE,aAAa,CAAC,GAAG,CAAC,CAAA;IACxB,IAAI,EAAE,KAAK,CAAA;CACZ,CAAA;AAED,MAAM,MAAM,MAAM,GAAG,GAAG,GAAG,KAAK,CAAA;AAEhC,MAAM,MAAM,iBAAiB,GAAG;IAC9B,UAAU,EAAE,MAAM,CAAA;IAClB,KAAK,EAAE,MAAM,CAAA;CACd,CAAA"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/views/Version/SelectComparison/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,yBAAyB,EAAyB,MAAM,SAAS,CAAA;AAE9F,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAExD,MAAM,MAAM,KAAK,GAAG;IAClB,OAAO,EAAE,MAAM,CAAA;IACf,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,sBAAsB,CAAC,EAAE,MAAM,CAAA;IAC/B,QAAQ,EAAE,CAAC,GAAG,EAAE,aAAa,KAAK,IAAI,CAAA;IACtC,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IAC1B,KAAK,EAAE,aAAa,CAAA;IACpB,SAAS,EAAE,MAAM,CAAA;CAClB,CAAA;AAED,KAAK,KAAK,GAAG;IACX,QAAQ,EAAE,OAAO,CAAA;IACjB,IAAI,EAAE,OAAO,CAAA;CACd,CAAA;AAED,KAAK,GAAG,GAAG;IACT,UAAU,EAAE,yBAAyB,CAAA;IACrC,IAAI,EAAE,aAAa,CAAC,GAAG,CAAC,CAAA;IACxB,IAAI,EAAE,KAAK,CAAA;CACZ,CAAA;AAED,MAAM,MAAM,MAAM,GAAG,GAAG,GAAG,KAAK,CAAA;AAEhC,MAAM,MAAM,iBAAiB,GAAG;IAC9B,UAAU,EAAE,MAAM,CAAA;IAClB,KAAK,EAAE,MAAM,CAAA;CACd,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","names":[],"sources":["../../../../src/views/Version/SelectComparison/types.ts"],"sourcesContent":["import type { PaginatedDocs, SanitizedCollectionConfig } from 'payload'\n\nimport type { CompareOption } from '../Default/types.js'\n\nexport type Props = {\n baseURL: string\n draftsEnabled?: boolean\n latestDraftVersion?: string\n latestPublishedVersion?: string\n onChange: (val: CompareOption) => void\n parentID?: number | string\n value: CompareOption\n versionID: string\n}\n\ntype CLEAR = {\n required: boolean\n type: 'CLEAR'\n}\n\ntype ADD = {\n collection: SanitizedCollectionConfig\n data: PaginatedDocs<any>\n type: 'ADD'\n}\n\nexport type Action = ADD | CLEAR\n\nexport type ValueWithRelation = {\n relationTo: string\n value: string\n}\n"],"mappings":"AA4BA","ignoreList":[]}
1
+ {"version":3,"file":"types.js","names":[],"sources":["../../../../src/views/Version/SelectComparison/types.ts"],"sourcesContent":["import type { PaginatedDocs, SanitizedCollectionConfig, SanitizedGlobalConfig } from 'payload'\n\nimport type { CompareOption } from '../Default/types.js'\n\nexport type Props = {\n baseURL: string\n draftsEnabled?: boolean\n latestDraftVersion?: string\n latestPublishedVersion?: string\n onChange: (val: CompareOption) => void\n parentID?: number | string\n value: CompareOption\n versionID: string\n}\n\ntype CLEAR = {\n required: boolean\n type: 'CLEAR'\n}\n\ntype ADD = {\n collection: SanitizedCollectionConfig\n data: PaginatedDocs<any>\n type: 'ADD'\n}\n\nexport type Action = ADD | CLEAR\n\nexport type ValueWithRelation = {\n relationTo: string\n value: string\n}\n"],"mappings":"AA4BA","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/Version/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,iBAAiB,EAEjB,2BAA2B,EAG5B,MAAM,SAAS,CAAA;AAYhB,eAAO,MAAM,WAAW,EAAE,2BAA2B,CAAC,iBAAiB,CA6OtE,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/Version/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,iBAAiB,EAEjB,2BAA2B,EAG5B,MAAM,SAAS,CAAA;AAYhB,eAAO,MAAM,WAAW,EAAE,2BAA2B,CAAC,iBAAiB,CA6NtE,CAAA"}
@@ -33,7 +33,6 @@ export const VersionView = async props => {
33
33
  const globalSlug = globalConfig?.slug;
34
34
  const localeCodesFromParams = searchParams.localeCodes ? JSON.parse(searchParams.localeCodes) : null;
35
35
  const comparisonVersionIDFromParams = searchParams.compareValue;
36
- const modifiedOnly = searchParams.modifiedOnly === 'true';
37
36
  const {
38
37
  localization
39
38
  } = config;
@@ -50,7 +49,7 @@ export const VersionView = async props => {
50
49
  doc = await payload.findVersionByID({
51
50
  id: versionID,
52
51
  collection: slug,
53
- depth: 0,
52
+ depth: 1,
54
53
  locale: 'all',
55
54
  overrideAccess: false,
56
55
  req,
@@ -61,20 +60,16 @@ export const VersionView = async props => {
61
60
  slug,
62
61
  type: 'collection',
63
62
  locale: 'all',
64
- overrideAccess: false,
65
63
  parentID: id,
66
64
  payload,
67
- req,
68
65
  status: 'draft'
69
66
  });
70
67
  latestPublishedVersion = await getLatestVersion({
71
68
  slug,
72
69
  type: 'collection',
73
70
  locale: 'all',
74
- overrideAccess: false,
75
71
  parentID: id,
76
72
  payload,
77
- req,
78
73
  status: 'published'
79
74
  });
80
75
  }
@@ -90,7 +85,7 @@ export const VersionView = async props => {
90
85
  doc = await payload.findGlobalVersionByID({
91
86
  id: versionID,
92
87
  slug,
93
- depth: 0,
88
+ depth: 1,
94
89
  locale: 'all',
95
90
  overrideAccess: false,
96
91
  req,
@@ -101,18 +96,14 @@ export const VersionView = async props => {
101
96
  slug,
102
97
  type: 'global',
103
98
  locale: 'all',
104
- overrideAccess: false,
105
99
  payload,
106
- req,
107
100
  status: 'draft'
108
101
  });
109
102
  latestPublishedVersion = await getLatestVersion({
110
103
  slug,
111
104
  type: 'global',
112
105
  locale: 'all',
113
- overrideAccess: false,
114
106
  payload,
115
- req,
116
107
  status: 'published'
117
108
  });
118
109
  }
@@ -166,18 +157,14 @@ export const VersionView = async props => {
166
157
  id: comparisonVersionIDFromParams,
167
158
  collection: collectionSlug,
168
159
  depth: 0,
169
- locale: 'all',
170
- overrideAccess: false,
171
- req
160
+ locale: 'all'
172
161
  });
173
162
  } else {
174
163
  comparisonDoc = await payload.findGlobalVersionByID({
175
164
  id: comparisonVersionIDFromParams,
176
165
  slug: globalSlug,
177
166
  depth: 0,
178
- locale: 'all',
179
- overrideAccess: false,
180
- req
167
+ locale: 'all'
181
168
  });
182
169
  }
183
170
  } else {
@@ -209,7 +196,6 @@ export const VersionView = async props => {
209
196
  fieldPermissions: docPermissions?.fields,
210
197
  fields: (collectionConfig || globalConfig)?.fields,
211
198
  i18n,
212
- modifiedOnly,
213
199
  parentIndexPath: '',
214
200
  parentPath: '',
215
201
  parentSchemaPath: '',
@@ -226,7 +212,6 @@ export const VersionView = async props => {
226
212
  doc: doc,
227
213
  latestDraftVersion: latestDraftVersion?.id,
228
214
  latestPublishedVersion: latestPublishedVersion?.id,
229
- modifiedOnly: modifiedOnly,
230
215
  RenderedDiff: RenderedDiff,
231
216
  selectedLocales: selectedLocales,
232
217
  versionID: versionID
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["getClientConfig","getClientSchemaMap","getSchemaMap","notFound","React","getLatestVersion","DefaultVersionView","RenderDiff","VersionView","props","i18n","initPageResult","routeSegments","searchParams","collectionConfig","docID","id","globalConfig","permissions","req","payload","config","user","versionID","length","collectionSlug","slug","globalSlug","localeCodesFromParams","localeCodes","JSON","parse","comparisonVersionIDFromParams","compareValue","modifiedOnly","localization","docPermissions","doc","latestPublishedVersion","latestDraftVersion","collections","findVersionByID","collection","depth","locale","overrideAccess","versions","drafts","type","parentID","status","error","globals","findGlobalVersionByID","publishedNewerThanDraft","updatedAt","selectedLocales","code","locales","find","push","label","value","latestVersion","comparisonDoc","schemaMap","clientSchemaMap","importMap","RenderedDiff","comparisonSiblingData","version","customDiffComponents","entitySlug","fieldPermissions","fields","parentIndexPath","parentPath","parentSchemaPath","map","versionSiblingData","createdAt","_jsx","canUpdate","update"],"sources":["../../../src/views/Version/index.tsx"],"sourcesContent":["import type {\n Document,\n EditViewComponent,\n OptionObject,\n PayloadServerReactComponent,\n SanitizedCollectionPermission,\n SanitizedGlobalPermission,\n} from 'payload'\n\nimport { getClientConfig } from '@payloadcms/ui/utilities/getClientConfig'\nimport { getClientSchemaMap } from '@payloadcms/ui/utilities/getClientSchemaMap'\nimport { getSchemaMap } from '@payloadcms/ui/utilities/getSchemaMap'\nimport { notFound } from 'next/navigation.js'\nimport React from 'react'\n\nimport { getLatestVersion } from '../Versions/getLatestVersion.js'\nimport { DefaultVersionView } from './Default/index.js'\nimport { RenderDiff } from './RenderFieldsToDiff/index.js'\n\nexport const VersionView: PayloadServerReactComponent<EditViewComponent> = async (props) => {\n const { i18n, initPageResult, routeSegments, searchParams } = props\n\n const {\n collectionConfig,\n docID: id,\n globalConfig,\n permissions,\n req,\n req: { payload, payload: { config } = {}, user } = {},\n } = initPageResult\n\n const versionID = routeSegments[routeSegments.length - 1]\n\n const collectionSlug = collectionConfig?.slug\n const globalSlug = globalConfig?.slug\n\n const localeCodesFromParams = searchParams.localeCodes\n ? JSON.parse(searchParams.localeCodes as string)\n : null\n const comparisonVersionIDFromParams: string = searchParams.compareValue as string\n\n const modifiedOnly: boolean = searchParams.modifiedOnly === 'true'\n\n const { localization } = config\n\n let docPermissions: SanitizedCollectionPermission | SanitizedGlobalPermission\n let slug: string\n\n let doc: Document\n let latestPublishedVersion = null\n let latestDraftVersion = null\n\n if (collectionSlug) {\n // /collections/:slug/:id/versions/:versionID\n slug = collectionSlug\n docPermissions = permissions.collections[collectionSlug]\n\n try {\n doc = await payload.findVersionByID({\n id: versionID,\n collection: slug,\n depth: 0,\n locale: 'all',\n overrideAccess: false,\n req,\n user,\n })\n\n if (collectionConfig?.versions?.drafts) {\n latestDraftVersion = await getLatestVersion({\n slug,\n type: 'collection',\n locale: 'all',\n overrideAccess: false,\n parentID: id,\n payload,\n req,\n status: 'draft',\n })\n latestPublishedVersion = await getLatestVersion({\n slug,\n type: 'collection',\n locale: 'all',\n overrideAccess: false,\n parentID: id,\n payload,\n req,\n status: 'published',\n })\n }\n } catch (error) {\n return notFound()\n }\n }\n\n if (globalSlug) {\n // /globals/:slug/versions/:versionID\n slug = globalSlug\n docPermissions = permissions.globals[globalSlug]\n\n try {\n doc = await payload.findGlobalVersionByID({\n id: versionID,\n slug,\n depth: 0,\n locale: 'all',\n overrideAccess: false,\n req,\n user,\n })\n\n if (globalConfig?.versions?.drafts) {\n latestDraftVersion = await getLatestVersion({\n slug,\n type: 'global',\n locale: 'all',\n overrideAccess: false,\n payload,\n req,\n status: 'draft',\n })\n latestPublishedVersion = await getLatestVersion({\n slug,\n type: 'global',\n locale: 'all',\n overrideAccess: false,\n payload,\n req,\n status: 'published',\n })\n }\n } catch (error) {\n return notFound()\n }\n }\n\n const publishedNewerThanDraft = latestPublishedVersion?.updatedAt > latestDraftVersion?.updatedAt\n\n if (publishedNewerThanDraft) {\n latestDraftVersion = {\n id: '',\n updatedAt: '',\n }\n }\n\n const selectedLocales: OptionObject[] = []\n if (localization) {\n if (localeCodesFromParams) {\n for (const code of localeCodesFromParams) {\n const locale = localization.locales.find((locale) => locale.code === code)\n if (locale) {\n selectedLocales.push({\n label: locale.label,\n value: locale.code,\n })\n }\n }\n } else {\n for (const { code, label } of localization.locales) {\n selectedLocales.push({\n label,\n value: code,\n })\n }\n }\n }\n\n const latestVersion =\n latestPublishedVersion?.updatedAt > latestDraftVersion?.updatedAt\n ? latestPublishedVersion\n : latestDraftVersion\n\n if (!doc) {\n return notFound()\n }\n\n /**\n * The doc to compare this version to is either the latest version, or a specific version if specified in the URL.\n * This specific version is added to the URL when a user selects a version to compare to.\n */\n let comparisonDoc = null\n if (comparisonVersionIDFromParams) {\n if (collectionSlug) {\n comparisonDoc = await payload.findVersionByID({\n id: comparisonVersionIDFromParams,\n collection: collectionSlug,\n depth: 0,\n locale: 'all',\n overrideAccess: false,\n req,\n })\n } else {\n comparisonDoc = await payload.findGlobalVersionByID({\n id: comparisonVersionIDFromParams,\n slug: globalSlug,\n depth: 0,\n locale: 'all',\n overrideAccess: false,\n req,\n })\n }\n } else {\n comparisonDoc = latestVersion\n }\n\n const schemaMap = getSchemaMap({\n collectionSlug,\n config,\n globalSlug,\n i18n,\n })\n\n const clientSchemaMap = getClientSchemaMap({\n collectionSlug,\n config: getClientConfig({ config: payload.config, i18n, importMap: payload.importMap }),\n globalSlug,\n i18n,\n payload,\n schemaMap,\n })\n\n const RenderedDiff = RenderDiff({\n clientSchemaMap,\n comparisonSiblingData: comparisonDoc?.version,\n customDiffComponents: {},\n entitySlug: collectionSlug || globalSlug,\n fieldPermissions: docPermissions?.fields,\n fields: (collectionConfig || globalConfig)?.fields,\n i18n,\n modifiedOnly,\n parentIndexPath: '',\n parentPath: '',\n parentSchemaPath: '',\n req,\n selectedLocales: selectedLocales && selectedLocales.map((locale) => locale.value),\n versionSiblingData: globalConfig\n ? {\n ...doc?.version,\n createdAt: doc?.version?.createdAt || doc.createdAt,\n updatedAt: doc?.version?.updatedAt || doc.updatedAt,\n }\n : doc?.version,\n })\n\n return (\n <DefaultVersionView\n canUpdate={docPermissions?.update}\n doc={doc}\n latestDraftVersion={latestDraftVersion?.id}\n latestPublishedVersion={latestPublishedVersion?.id}\n modifiedOnly={modifiedOnly}\n RenderedDiff={RenderedDiff}\n selectedLocales={selectedLocales}\n versionID={versionID}\n />\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["getClientConfig","getClientSchemaMap","getSchemaMap","notFound","React","getLatestVersion","DefaultVersionView","RenderDiff","VersionView","props","i18n","initPageResult","routeSegments","searchParams","collectionConfig","docID","id","globalConfig","permissions","req","payload","config","user","versionID","length","collectionSlug","slug","globalSlug","localeCodesFromParams","localeCodes","JSON","parse","comparisonVersionIDFromParams","compareValue","localization","docPermissions","doc","latestPublishedVersion","latestDraftVersion","collections","findVersionByID","collection","depth","locale","overrideAccess","versions","drafts","type","parentID","status","error","globals","findGlobalVersionByID","publishedNewerThanDraft","updatedAt","selectedLocales","code","locales","find","push","label","value","latestVersion","comparisonDoc","schemaMap","clientSchemaMap","importMap","RenderedDiff","comparisonSiblingData","version","customDiffComponents","entitySlug","fieldPermissions","fields","parentIndexPath","parentPath","parentSchemaPath","map","versionSiblingData","createdAt","_jsx","canUpdate","update"],"sources":["../../../src/views/Version/index.tsx"],"sourcesContent":["import type {\n Document,\n EditViewComponent,\n OptionObject,\n PayloadServerReactComponent,\n SanitizedCollectionPermission,\n SanitizedGlobalPermission,\n} from 'payload'\n\nimport { getClientConfig } from '@payloadcms/ui/utilities/getClientConfig'\nimport { getClientSchemaMap } from '@payloadcms/ui/utilities/getClientSchemaMap'\nimport { getSchemaMap } from '@payloadcms/ui/utilities/getSchemaMap'\nimport { notFound } from 'next/navigation.js'\nimport React from 'react'\n\nimport { getLatestVersion } from '../Versions/getLatestVersion.js'\nimport { DefaultVersionView } from './Default/index.js'\nimport { RenderDiff } from './RenderFieldsToDiff/index.js'\n\nexport const VersionView: PayloadServerReactComponent<EditViewComponent> = async (props) => {\n const { i18n, initPageResult, routeSegments, searchParams } = props\n\n const {\n collectionConfig,\n docID: id,\n globalConfig,\n permissions,\n req,\n req: { payload, payload: { config } = {}, user } = {},\n } = initPageResult\n\n const versionID = routeSegments[routeSegments.length - 1]\n\n const collectionSlug = collectionConfig?.slug\n const globalSlug = globalConfig?.slug\n\n const localeCodesFromParams = searchParams.localeCodes\n ? JSON.parse(searchParams.localeCodes as string)\n : null\n const comparisonVersionIDFromParams: string = searchParams.compareValue as string\n\n const { localization } = config\n\n let docPermissions: SanitizedCollectionPermission | SanitizedGlobalPermission\n let slug: string\n\n let doc: Document\n let latestPublishedVersion = null\n let latestDraftVersion = null\n\n if (collectionSlug) {\n // /collections/:slug/:id/versions/:versionID\n slug = collectionSlug\n docPermissions = permissions.collections[collectionSlug]\n\n try {\n doc = await payload.findVersionByID({\n id: versionID,\n collection: slug,\n depth: 1,\n locale: 'all',\n overrideAccess: false,\n req,\n user,\n })\n\n if (collectionConfig?.versions?.drafts) {\n latestDraftVersion = await getLatestVersion({\n slug,\n type: 'collection',\n locale: 'all',\n parentID: id,\n payload,\n status: 'draft',\n })\n latestPublishedVersion = await getLatestVersion({\n slug,\n type: 'collection',\n locale: 'all',\n parentID: id,\n payload,\n status: 'published',\n })\n }\n } catch (error) {\n return notFound()\n }\n }\n\n if (globalSlug) {\n // /globals/:slug/versions/:versionID\n slug = globalSlug\n docPermissions = permissions.globals[globalSlug]\n\n try {\n doc = await payload.findGlobalVersionByID({\n id: versionID,\n slug,\n depth: 1,\n locale: 'all',\n overrideAccess: false,\n req,\n user,\n })\n\n if (globalConfig?.versions?.drafts) {\n latestDraftVersion = await getLatestVersion({\n slug,\n type: 'global',\n locale: 'all',\n payload,\n status: 'draft',\n })\n latestPublishedVersion = await getLatestVersion({\n slug,\n type: 'global',\n locale: 'all',\n payload,\n status: 'published',\n })\n }\n } catch (error) {\n return notFound()\n }\n }\n\n const publishedNewerThanDraft = latestPublishedVersion?.updatedAt > latestDraftVersion?.updatedAt\n\n if (publishedNewerThanDraft) {\n latestDraftVersion = {\n id: '',\n updatedAt: '',\n }\n }\n\n const selectedLocales: OptionObject[] = []\n if (localization) {\n if (localeCodesFromParams) {\n for (const code of localeCodesFromParams) {\n const locale = localization.locales.find((locale) => locale.code === code)\n if (locale) {\n selectedLocales.push({\n label: locale.label,\n value: locale.code,\n })\n }\n }\n } else {\n for (const { code, label } of localization.locales) {\n selectedLocales.push({\n label,\n value: code,\n })\n }\n }\n }\n\n const latestVersion =\n latestPublishedVersion?.updatedAt > latestDraftVersion?.updatedAt\n ? latestPublishedVersion\n : latestDraftVersion\n\n if (!doc) {\n return notFound()\n }\n\n /**\n * The doc to compare this version to is either the latest version, or a specific version if specified in the URL.\n * This specific version is added to the URL when a user selects a version to compare to.\n */\n let comparisonDoc = null\n if (comparisonVersionIDFromParams) {\n if (collectionSlug) {\n comparisonDoc = await payload.findVersionByID({\n id: comparisonVersionIDFromParams,\n collection: collectionSlug,\n depth: 0,\n locale: 'all',\n })\n } else {\n comparisonDoc = await payload.findGlobalVersionByID({\n id: comparisonVersionIDFromParams,\n slug: globalSlug,\n depth: 0,\n locale: 'all',\n })\n }\n } else {\n comparisonDoc = latestVersion\n }\n\n const schemaMap = getSchemaMap({\n collectionSlug,\n config,\n globalSlug,\n i18n,\n })\n\n const clientSchemaMap = getClientSchemaMap({\n collectionSlug,\n config: getClientConfig({ config: payload.config, i18n, importMap: payload.importMap }),\n globalSlug,\n i18n,\n payload,\n schemaMap,\n })\n\n const RenderedDiff = RenderDiff({\n clientSchemaMap,\n comparisonSiblingData: comparisonDoc?.version,\n customDiffComponents: {},\n entitySlug: collectionSlug || globalSlug,\n fieldPermissions: docPermissions?.fields,\n fields: (collectionConfig || globalConfig)?.fields,\n i18n,\n parentIndexPath: '',\n parentPath: '',\n parentSchemaPath: '',\n req,\n selectedLocales: selectedLocales && selectedLocales.map((locale) => locale.value),\n versionSiblingData: globalConfig\n ? {\n ...doc?.version,\n createdAt: doc?.version?.createdAt || doc.createdAt,\n updatedAt: doc?.version?.updatedAt || doc.updatedAt,\n }\n : doc?.version,\n })\n\n return (\n <DefaultVersionView\n canUpdate={docPermissions?.update}\n doc={doc}\n latestDraftVersion={latestDraftVersion?.id}\n latestPublishedVersion={latestPublishedVersion?.id}\n RenderedDiff={RenderedDiff}\n selectedLocales={selectedLocales}\n versionID={versionID}\n />\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,14 +1,12 @@
1
- import type { Payload, PayloadRequest } from 'payload';
1
+ import type { Payload } from 'payload';
2
2
  type ReturnType = {
3
3
  id: string;
4
4
  updatedAt: string;
5
5
  } | null;
6
6
  type Args = {
7
7
  locale?: string;
8
- overrideAccess?: boolean;
9
8
  parentID?: number | string;
10
9
  payload: Payload;
11
- req?: PayloadRequest;
12
10
  slug: string;
13
11
  status: 'draft' | 'published';
14
12
  type: 'collection' | 'global';
@@ -1 +1 @@
1
- {"version":3,"file":"getLatestVersion.d.ts","sourceRoot":"","sources":["../../../src/views/Versions/getLatestVersion.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,cAAc,EAAS,MAAM,SAAS,CAAA;AAI7D,KAAK,UAAU,GAAG;IAChB,EAAE,EAAE,MAAM,CAAA;IACV,SAAS,EAAE,MAAM,CAAA;CAClB,GAAG,IAAI,CAAA;AAER,KAAK,IAAI,GAAG;IACV,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IAC1B,OAAO,EAAE,OAAO,CAAA;IAChB,GAAG,CAAC,EAAE,cAAc,CAAA;IACpB,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,OAAO,GAAG,WAAW,CAAA;IAC7B,IAAI,EAAE,YAAY,GAAG,QAAQ,CAAA;CAC9B,CAAA;AACD,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,UAAU,CAAC,CAwDtE"}
1
+ {"version":3,"file":"getLatestVersion.d.ts","sourceRoot":"","sources":["../../../src/views/Versions/getLatestVersion.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAS,MAAM,SAAS,CAAA;AAI7C,KAAK,UAAU,GAAG;IAChB,EAAE,EAAE,MAAM,CAAA;IACV,SAAS,EAAE,MAAM,CAAA;CAClB,GAAG,IAAI,CAAA;AAER,KAAK,IAAI,GAAG;IACV,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IAC1B,OAAO,EAAE,OAAO,CAAA;IAChB,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,OAAO,GAAG,WAAW,CAAA;IAC7B,IAAI,EAAE,YAAY,GAAG,QAAQ,CAAA;CAC9B,CAAA;AACD,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,UAAU,CAAC,CAsDtE"}
@@ -4,10 +4,8 @@ export async function getLatestVersion(args) {
4
4
  slug,
5
5
  type = 'collection',
6
6
  locale,
7
- overrideAccess,
8
7
  parentID,
9
8
  payload,
10
- req,
11
9
  status
12
10
  } = args;
13
11
  const and = [{
@@ -27,8 +25,6 @@ export async function getLatestVersion(args) {
27
25
  depth: 0,
28
26
  limit: 1,
29
27
  locale,
30
- overrideAccess,
31
- req,
32
28
  sort: '-updatedAt',
33
29
  where: {
34
30
  and
@@ -1 +1 @@
1
- {"version":3,"file":"getLatestVersion.js","names":["logError","getLatestVersion","args","slug","type","locale","overrideAccess","parentID","payload","req","status","and","equals","push","parent","sharedOptions","depth","limit","sort","where","response","findVersions","collection","findGlobalVersions","docs","length","id","updatedAt","err"],"sources":["../../../src/views/Versions/getLatestVersion.ts"],"sourcesContent":["import type { Payload, PayloadRequest, Where } from 'payload'\n\nimport { logError } from 'payload'\n\ntype ReturnType = {\n id: string\n updatedAt: string\n} | null\n\ntype Args = {\n locale?: string\n overrideAccess?: boolean\n parentID?: number | string\n payload: Payload\n req?: PayloadRequest\n slug: string\n status: 'draft' | 'published'\n type: 'collection' | 'global'\n}\nexport async function getLatestVersion(args: Args): Promise<ReturnType> {\n const { slug, type = 'collection', locale, overrideAccess, parentID, payload, req, status } = args\n\n const and: Where[] = [\n {\n 'version._status': {\n equals: status,\n },\n },\n ]\n\n if (type === 'collection' && parentID) {\n and.push({\n parent: {\n equals: parentID,\n },\n })\n }\n\n try {\n const sharedOptions = {\n depth: 0,\n limit: 1,\n locale,\n overrideAccess,\n req,\n sort: '-updatedAt',\n where: {\n and,\n },\n }\n\n const response =\n type === 'collection'\n ? await payload.findVersions({\n collection: slug,\n ...sharedOptions,\n })\n : await payload.findGlobalVersions({\n slug,\n ...sharedOptions,\n })\n\n if (!response.docs.length) {\n return null\n }\n\n return {\n id: response.docs[0].id,\n updatedAt: response.docs[0].updatedAt,\n }\n } catch (err) {\n logError({ err, payload })\n\n return null\n }\n}\n"],"mappings":"AAEA,SAASA,QAAQ,QAAQ;AAiBzB,OAAO,eAAeC,iBAAiBC,IAAU;EAC/C,MAAM;IAAEC,IAAI;IAAEC,IAAA,GAAO,YAAY;IAAEC,MAAM;IAAEC,cAAc;IAAEC,QAAQ;IAAEC,OAAO;IAAEC,GAAG;IAAEC;EAAM,CAAE,GAAGR,IAAA;EAE9F,MAAMS,GAAA,GAAe,CACnB;IACE,mBAAmB;MACjBC,MAAA,EAAQF;IACV;EACF,EACD;EAED,IAAIN,IAAA,KAAS,gBAAgBG,QAAA,EAAU;IACrCI,GAAA,CAAIE,IAAI,CAAC;MACPC,MAAA,EAAQ;QACNF,MAAA,EAAQL;MACV;IACF;EACF;EAEA,IAAI;IACF,MAAMQ,aAAA,GAAgB;MACpBC,KAAA,EAAO;MACPC,KAAA,EAAO;MACPZ,MAAA;MACAC,cAAA;MACAG,GAAA;MACAS,IAAA,EAAM;MACNC,KAAA,EAAO;QACLR;MACF;IACF;IAEA,MAAMS,QAAA,GACJhB,IAAA,KAAS,eACL,MAAMI,OAAA,CAAQa,YAAY,CAAC;MACzBC,UAAA,EAAYnB,IAAA;MACZ,GAAGY;IACL,KACA,MAAMP,OAAA,CAAQe,kBAAkB,CAAC;MAC/BpB,IAAA;MACA,GAAGY;IACL;IAEN,IAAI,CAACK,QAAA,CAASI,IAAI,CAACC,MAAM,EAAE;MACzB,OAAO;IACT;IAEA,OAAO;MACLC,EAAA,EAAIN,QAAA,CAASI,IAAI,CAAC,EAAE,CAACE,EAAE;MACvBC,SAAA,EAAWP,QAAA,CAASI,IAAI,CAAC,EAAE,CAACG;IAC9B;EACF,EAAE,OAAOC,GAAA,EAAK;IACZ5B,QAAA,CAAS;MAAE4B,GAAA;MAAKpB;IAAQ;IAExB,OAAO;EACT;AACF","ignoreList":[]}
1
+ {"version":3,"file":"getLatestVersion.js","names":["logError","getLatestVersion","args","slug","type","locale","parentID","payload","status","and","equals","push","parent","sharedOptions","depth","limit","sort","where","response","findVersions","collection","findGlobalVersions","docs","length","id","updatedAt","err"],"sources":["../../../src/views/Versions/getLatestVersion.ts"],"sourcesContent":["import type { Payload, Where } from 'payload'\n\nimport { logError } from 'payload'\n\ntype ReturnType = {\n id: string\n updatedAt: string\n} | null\n\ntype Args = {\n locale?: string\n parentID?: number | string\n payload: Payload\n slug: string\n status: 'draft' | 'published'\n type: 'collection' | 'global'\n}\nexport async function getLatestVersion(args: Args): Promise<ReturnType> {\n const { slug, type = 'collection', locale, parentID, payload, status } = args\n\n const and: Where[] = [\n {\n 'version._status': {\n equals: status,\n },\n },\n ]\n\n if (type === 'collection' && parentID) {\n and.push({\n parent: {\n equals: parentID,\n },\n })\n }\n\n try {\n const sharedOptions = {\n depth: 0,\n limit: 1,\n locale,\n sort: '-updatedAt',\n where: {\n and,\n },\n }\n\n const response =\n type === 'collection'\n ? await payload.findVersions({\n collection: slug,\n ...sharedOptions,\n })\n : await payload.findGlobalVersions({\n slug,\n ...sharedOptions,\n })\n\n if (!response.docs.length) {\n return null\n }\n\n return {\n id: response.docs[0].id,\n updatedAt: response.docs[0].updatedAt,\n }\n } catch (err) {\n logError({ err, payload })\n\n return null\n }\n}\n"],"mappings":"AAEA,SAASA,QAAQ,QAAQ;AAezB,OAAO,eAAeC,iBAAiBC,IAAU;EAC/C,MAAM;IAAEC,IAAI;IAAEC,IAAA,GAAO,YAAY;IAAEC,MAAM;IAAEC,QAAQ;IAAEC,OAAO;IAAEC;EAAM,CAAE,GAAGN,IAAA;EAEzE,MAAMO,GAAA,GAAe,CACnB;IACE,mBAAmB;MACjBC,MAAA,EAAQF;IACV;EACF,EACD;EAED,IAAIJ,IAAA,KAAS,gBAAgBE,QAAA,EAAU;IACrCG,GAAA,CAAIE,IAAI,CAAC;MACPC,MAAA,EAAQ;QACNF,MAAA,EAAQJ;MACV;IACF;EACF;EAEA,IAAI;IACF,MAAMO,aAAA,GAAgB;MACpBC,KAAA,EAAO;MACPC,KAAA,EAAO;MACPV,MAAA;MACAW,IAAA,EAAM;MACNC,KAAA,EAAO;QACLR;MACF;IACF;IAEA,MAAMS,QAAA,GACJd,IAAA,KAAS,eACL,MAAMG,OAAA,CAAQY,YAAY,CAAC;MACzBC,UAAA,EAAYjB,IAAA;MACZ,GAAGU;IACL,KACA,MAAMN,OAAA,CAAQc,kBAAkB,CAAC;MAC/BlB,IAAA;MACA,GAAGU;IACL;IAEN,IAAI,CAACK,QAAA,CAASI,IAAI,CAACC,MAAM,EAAE;MACzB,OAAO;IACT;IAEA,OAAO;MACLC,EAAA,EAAIN,QAAA,CAASI,IAAI,CAAC,EAAE,CAACE,EAAE;MACvBC,SAAA,EAAWP,QAAA,CAASI,IAAI,CAAC,EAAE,CAACG;IAC9B;EACF,EAAE,OAAOC,GAAA,EAAK;IACZ1B,QAAA,CAAS;MAAE0B,GAAA;MAAKnB;IAAQ;IAExB,OAAO;EACT;AACF","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@payloadcms/next",
3
- "version": "3.20.0-canary.a40bec2",
3
+ "version": "3.20.0-canary.a7d4b94",
4
4
  "homepage": "https://payloadcms.com",
5
5
  "repository": {
6
6
  "type": "git",
@@ -69,20 +69,19 @@
69
69
  "dependencies": {
70
70
  "@dnd-kit/core": "6.0.8",
71
71
  "busboy": "^1.6.0",
72
- "dequal": "2.0.3",
73
72
  "file-type": "19.3.0",
74
73
  "graphql-http": "^1.22.0",
75
74
  "graphql-playground-html": "1.6.30",
76
75
  "http-status": "2.1.0",
77
76
  "path-to-regexp": "6.3.0",
78
77
  "qs-esm": "7.0.2",
79
- "react-diff-viewer-continued": "4.0.4",
78
+ "react-diff-viewer-continued": "3.4.0",
80
79
  "sass": "1.77.4",
81
80
  "sonner": "^1.7.0",
82
81
  "uuid": "10.0.0",
83
- "@payloadcms/graphql": "3.20.0-canary.a40bec2",
84
- "@payloadcms/translations": "3.20.0-canary.a40bec2",
85
- "@payloadcms/ui": "3.20.0-canary.a40bec2"
82
+ "@payloadcms/graphql": "3.20.0-canary.a7d4b94",
83
+ "@payloadcms/translations": "3.20.0-canary.a7d4b94",
84
+ "@payloadcms/ui": "3.20.0-canary.a7d4b94"
86
85
  },
87
86
  "devDependencies": {
88
87
  "@babel/cli": "7.25.9",
@@ -101,12 +100,12 @@
101
100
  "eslint-plugin-react-compiler": "19.0.0-beta-df7b47d-20241124",
102
101
  "swc-plugin-transform-remove-imports": "2.0.0",
103
102
  "@payloadcms/eslint-config": "3.9.0",
104
- "payload": "3.20.0-canary.a40bec2"
103
+ "payload": "3.20.0-canary.a7d4b94"
105
104
  },
106
105
  "peerDependencies": {
107
106
  "graphql": "^16.8.1",
108
107
  "next": "^15.0.0",
109
- "payload": "3.20.0-canary.a40bec2"
108
+ "payload": "3.20.0-canary.a7d4b94"
110
109
  },
111
110
  "engines": {
112
111
  "node": "^18.20.2 || >=20.9.0"