@payloadcms/next 3.68.0-internal-debug.e9b66ee → 3.68.0-internal-debug.654e4ad

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 (161) hide show
  1. package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js +21 -6
  2. package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js.map +1 -1
  3. package/dist/elements/DocumentHeader/Tabs/Tab/index.js +44 -20
  4. package/dist/elements/DocumentHeader/Tabs/Tab/index.js.map +1 -1
  5. package/dist/elements/DocumentHeader/Tabs/index.js +73 -41
  6. package/dist/elements/DocumentHeader/Tabs/index.js.map +1 -1
  7. package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.js +10 -1
  8. package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.js.map +1 -1
  9. package/dist/elements/DocumentHeader/index.js +45 -7
  10. package/dist/elements/DocumentHeader/index.js.map +1 -1
  11. package/dist/elements/FormHeader/index.js +25 -4
  12. package/dist/elements/FormHeader/index.js.map +1 -1
  13. package/dist/elements/Nav/NavHamburger/index.js +21 -5
  14. package/dist/elements/Nav/NavHamburger/index.js.map +1 -1
  15. package/dist/elements/Nav/NavWrapper/index.js +24 -10
  16. package/dist/elements/Nav/NavWrapper/index.js.map +1 -1
  17. package/dist/elements/Nav/SettingsMenuButton/index.js +27 -4
  18. package/dist/elements/Nav/SettingsMenuButton/index.js.map +1 -1
  19. package/dist/elements/Nav/index.client.js +91 -43
  20. package/dist/elements/Nav/index.client.js.map +1 -1
  21. package/dist/elements/Nav/index.js +100 -48
  22. package/dist/elements/Nav/index.js.map +1 -1
  23. package/dist/layouts/Root/NestProviders.js +12 -3
  24. package/dist/layouts/Root/NestProviders.js.map +1 -1
  25. package/dist/layouts/Root/index.js +84 -19
  26. package/dist/layouts/Root/index.js.map +1 -1
  27. package/dist/routes/rest/og/image.js +97 -61
  28. package/dist/routes/rest/og/image.js.map +1 -1
  29. package/dist/routes/rest/og/index.js +15 -1
  30. package/dist/routes/rest/og/index.js.map +1 -1
  31. package/dist/templates/Default/NavHamburger/index.js +10 -1
  32. package/dist/templates/Default/NavHamburger/index.js.map +1 -1
  33. package/dist/templates/Default/Wrapper/index.js +16 -9
  34. package/dist/templates/Default/Wrapper/index.js.map +1 -1
  35. package/dist/templates/Default/index.js +106 -38
  36. package/dist/templates/Default/index.js.map +1 -1
  37. package/dist/templates/Minimal/index.js +18 -3
  38. package/dist/templates/Minimal/index.js.map +1 -1
  39. package/dist/views/API/LocaleSelector/index.js +15 -5
  40. package/dist/views/API/LocaleSelector/index.js.map +1 -1
  41. package/dist/views/API/RenderJSON/index.js +156 -59
  42. package/dist/views/API/RenderJSON/index.js.map +1 -1
  43. package/dist/views/API/index.client.js +215 -71
  44. package/dist/views/API/index.client.js.map +1 -1
  45. package/dist/views/API/index.js +7 -1
  46. package/dist/views/API/index.js.map +1 -1
  47. package/dist/views/Account/ResetPreferences/index.js +35 -8
  48. package/dist/views/Account/ResetPreferences/index.js.map +1 -1
  49. package/dist/views/Account/Settings/LanguageSelector.js +15 -3
  50. package/dist/views/Account/Settings/LanguageSelector.js.map +1 -1
  51. package/dist/views/Account/Settings/index.js +58 -12
  52. package/dist/views/Account/Settings/index.js.map +1 -1
  53. package/dist/views/Account/ToggleTheme/index.js +30 -19
  54. package/dist/views/Account/ToggleTheme/index.js.map +1 -1
  55. package/dist/views/Account/index.js +83 -25
  56. package/dist/views/Account/index.js.map +1 -1
  57. package/dist/views/BrowseByFolder/buildView.js +38 -28
  58. package/dist/views/BrowseByFolder/buildView.js.map +1 -1
  59. package/dist/views/CollectionFolders/buildView.js +45 -35
  60. package/dist/views/CollectionFolders/buildView.js.map +1 -1
  61. package/dist/views/CreateFirstUser/index.client.js +75 -20
  62. package/dist/views/CreateFirstUser/index.client.js.map +1 -1
  63. package/dist/views/CreateFirstUser/index.js +36 -5
  64. package/dist/views/CreateFirstUser/index.js.map +1 -1
  65. package/dist/views/Dashboard/Default/index.js +169 -94
  66. package/dist/views/Dashboard/Default/index.js.map +1 -1
  67. package/dist/views/Dashboard/index.js +43 -24
  68. package/dist/views/Dashboard/index.js.map +1 -1
  69. package/dist/views/Document/index.js +76 -14
  70. package/dist/views/Document/index.js.map +1 -1
  71. package/dist/views/Edit/index.js +9 -1
  72. package/dist/views/Edit/index.js.map +1 -1
  73. package/dist/views/ForgotPassword/ForgotPasswordForm/index.js +104 -57
  74. package/dist/views/ForgotPassword/ForgotPasswordForm/index.js.map +1 -1
  75. package/dist/views/ForgotPassword/index.js +75 -23
  76. package/dist/views/ForgotPassword/index.js.map +1 -1
  77. package/dist/views/List/index.js +53 -31
  78. package/dist/views/List/index.js.map +1 -1
  79. package/dist/views/List/renderListViewSlots.js +21 -9
  80. package/dist/views/List/renderListViewSlots.js.map +1 -1
  81. package/dist/views/Login/LoginField/index.js +49 -23
  82. package/dist/views/Login/LoginField/index.js.map +1 -1
  83. package/dist/views/Login/LoginForm/index.js +68 -20
  84. package/dist/views/Login/LoginForm/index.js.map +1 -1
  85. package/dist/views/Login/index.js +66 -33
  86. package/dist/views/Login/index.js.map +1 -1
  87. package/dist/views/Logout/LogoutClient.js +36 -7
  88. package/dist/views/Logout/LogoutClient.js.map +1 -1
  89. package/dist/views/Logout/index.js +26 -4
  90. package/dist/views/Logout/index.js.map +1 -1
  91. package/dist/views/NotFound/index.client.js +55 -15
  92. package/dist/views/NotFound/index.client.js.map +1 -1
  93. package/dist/views/NotFound/index.js +33 -5
  94. package/dist/views/NotFound/index.js.map +1 -1
  95. package/dist/views/ResetPassword/ResetPasswordForm/index.js +57 -12
  96. package/dist/views/ResetPassword/ResetPasswordForm/index.js.map +1 -1
  97. package/dist/views/ResetPassword/index.js +86 -23
  98. package/dist/views/ResetPassword/index.js.map +1 -1
  99. package/dist/views/Root/index.js +52 -12
  100. package/dist/views/Root/index.js.map +1 -1
  101. package/dist/views/Unauthorized/index.js +50 -15
  102. package/dist/views/Unauthorized/index.js.map +1 -1
  103. package/dist/views/Verify/index.js +47 -10
  104. package/dist/views/Verify/index.js.map +1 -1
  105. package/dist/views/Version/Default/SelectedLocalesContext.js +1 -1
  106. package/dist/views/Version/Default/SelectedLocalesContext.js.map +1 -1
  107. package/dist/views/Version/Default/index.js +258 -52
  108. package/dist/views/Version/Default/index.js.map +1 -1
  109. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.js +65 -16
  110. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.js.map +1 -1
  111. package/dist/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.js +66 -24
  112. package/dist/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.js.map +1 -1
  113. package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.js +34 -5
  114. package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.js.map +1 -1
  115. package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.js +17 -4
  116. package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.js.map +1 -1
  117. package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.js +55 -10
  118. package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.js.map +1 -1
  119. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js +128 -43
  120. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js.map +1 -1
  121. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js +151 -23
  122. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js.map +1 -1
  123. package/dist/views/Version/RenderFieldsToDiff/fields/Row/index.js +16 -3
  124. package/dist/views/Version/RenderFieldsToDiff/fields/Row/index.js.map +1 -1
  125. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js +17 -4
  126. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js.map +1 -1
  127. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js +122 -51
  128. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js.map +1 -1
  129. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.js +17 -4
  130. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.js.map +1 -1
  131. package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.js +176 -27
  132. package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.js.map +1 -1
  133. package/dist/views/Version/RenderFieldsToDiff/index.js +9 -1
  134. package/dist/views/Version/RenderFieldsToDiff/index.js.map +1 -1
  135. package/dist/views/Version/Restore/index.js +61 -21
  136. package/dist/views/Version/Restore/index.js.map +1 -1
  137. package/dist/views/Version/SelectComparison/VersionDrawer/CreatedAtCell.js +24 -16
  138. package/dist/views/Version/SelectComparison/VersionDrawer/CreatedAtCell.js.map +1 -1
  139. package/dist/views/Version/SelectComparison/VersionDrawer/index.js +37 -6
  140. package/dist/views/Version/SelectComparison/VersionDrawer/index.js.map +1 -1
  141. package/dist/views/Version/SelectComparison/index.js +40 -10
  142. package/dist/views/Version/SelectComparison/index.js.map +1 -1
  143. package/dist/views/Version/SelectLocales/index.js +33 -17
  144. package/dist/views/Version/SelectLocales/index.js.map +1 -1
  145. package/dist/views/Version/VersionPillLabel/VersionPillLabel.js +84 -17
  146. package/dist/views/Version/VersionPillLabel/VersionPillLabel.js.map +1 -1
  147. package/dist/views/Version/index.js +63 -21
  148. package/dist/views/Version/index.js.map +1 -1
  149. package/dist/views/Versions/buildColumns.js +58 -9
  150. package/dist/views/Versions/buildColumns.js.map +1 -1
  151. package/dist/views/Versions/cells/AutosaveCell/index.js +31 -4
  152. package/dist/views/Versions/cells/AutosaveCell/index.js.map +1 -1
  153. package/dist/views/Versions/cells/CreatedAt/index.js +15 -7
  154. package/dist/views/Versions/cells/CreatedAt/index.js.map +1 -1
  155. package/dist/views/Versions/cells/ID/index.js +9 -2
  156. package/dist/views/Versions/cells/ID/index.js.map +1 -1
  157. package/dist/views/Versions/index.client.js +98 -20
  158. package/dist/views/Versions/index.client.js.map +1 -1
  159. package/dist/views/Versions/index.js +59 -13
  160. package/dist/views/Versions/index.js.map +1 -1
  161. package/package.json +6 -6
@@ -1,6 +1,8 @@
1
1
  'use client';
2
+ import { jsxDEV as _jsxDEV } from "react/jsx-dev-runtime";
2
3
  import { FieldDiffContainer, getHTMLDiffComponents, useTranslation } from '@payloadcms/ui';
3
4
  import './index.scss';
5
+ import React from 'react';
4
6
  const baseClass = 'text-diff';
5
7
  function formatValue(value) {
6
8
  if (typeof value === 'string') {
@@ -53,10 +55,21 @@ export const Text = ({ comparisonValue: valueFrom, field, locale, nestingLevel,
53
55
  toHTML: '<p>' + renderedValueTo + '</p>',
54
56
  tokenizeByCharacter
55
57
  });
56
- return <FieldDiffContainer className={baseClass} From={From} i18n={i18n} label={{
57
- label: field.label,
58
- locale
59
- }} nestingLevel={nestingLevel} To={To}/>;
58
+ return /*#__PURE__*/ _jsxDEV(FieldDiffContainer, {
59
+ className: baseClass,
60
+ From: From,
61
+ i18n: i18n,
62
+ label: {
63
+ label: field.label,
64
+ locale
65
+ },
66
+ nestingLevel: nestingLevel,
67
+ To: To
68
+ }, void 0, false, {
69
+ fileName: "src/views/Version/RenderFieldsToDiff/fields/Text/index.tsx",
70
+ lineNumber: 80,
71
+ columnNumber: 5
72
+ }, this);
60
73
  };
61
74
 
62
75
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../src/views/Version/RenderFieldsToDiff/fields/Text/index.tsx"],"sourcesContent":["'use client'\nimport type { TextFieldDiffClientComponent } from 'payload'\n\nimport { FieldDiffContainer, getHTMLDiffComponents, useTranslation } from '@payloadcms/ui'\n\nimport './index.scss'\n\nimport React from 'react'\n\nconst baseClass = 'text-diff'\n\nfunction formatValue(value: unknown): {\n tokenizeByCharacter: boolean\n value: string\n} {\n if (typeof value === 'string') {\n return { tokenizeByCharacter: true, value }\n }\n if (typeof value === 'number') {\n return {\n tokenizeByCharacter: true,\n value: String(value),\n }\n }\n if (typeof value === 'boolean') {\n return {\n tokenizeByCharacter: false,\n value: String(value),\n }\n }\n\n if (value && typeof value === 'object') {\n return {\n tokenizeByCharacter: false,\n value: `<pre>${JSON.stringify(value, null, 2)}</pre>`,\n }\n }\n\n return {\n tokenizeByCharacter: true,\n value: undefined,\n }\n}\n\nexport const Text: TextFieldDiffClientComponent = ({\n comparisonValue: valueFrom,\n field,\n locale,\n nestingLevel,\n versionValue: valueTo,\n}) => {\n const { i18n } = useTranslation()\n\n let placeholder = ''\n\n if (valueTo == valueFrom) {\n placeholder = `<span class=\"html-diff-no-value\"><span>`\n }\n\n const formattedValueFrom = formatValue(valueFrom)\n const formattedValueTo = formatValue(valueTo)\n\n let tokenizeByCharacter = true\n if (formattedValueFrom.value?.length) {\n tokenizeByCharacter = formattedValueFrom.tokenizeByCharacter\n } else if (formattedValueTo.value?.length) {\n tokenizeByCharacter = formattedValueTo.tokenizeByCharacter\n }\n\n const renderedValueFrom = formattedValueFrom.value ?? placeholder\n const renderedValueTo: string = formattedValueTo.value ?? placeholder\n\n const { From, To } = getHTMLDiffComponents({\n fromHTML: '<p>' + renderedValueFrom + '</p>',\n toHTML: '<p>' + renderedValueTo + '</p>',\n tokenizeByCharacter,\n })\n\n return (\n <FieldDiffContainer\n className={baseClass}\n From={From}\n i18n={i18n}\n label={{\n label: field.label,\n locale,\n }}\n nestingLevel={nestingLevel}\n To={To}\n />\n )\n}\n"],"names":["FieldDiffContainer","getHTMLDiffComponents","useTranslation","baseClass","formatValue","value","tokenizeByCharacter","String","JSON","stringify","undefined","Text","comparisonValue","valueFrom","field","locale","nestingLevel","versionValue","valueTo","i18n","placeholder","formattedValueFrom","formattedValueTo","length","renderedValueFrom","renderedValueTo","From","To","fromHTML","toHTML","className","label"],"mappings":"AAAA;AAGA,SAASA,kBAAkB,EAAEC,qBAAqB,EAAEC,cAAc,QAAQ,iBAAgB;AAE1F,OAAO,eAAc;AAIrB,MAAMC,YAAY;AAElB,SAASC,YAAYC,KAAc;IAIjC,IAAI,OAAOA,UAAU,UAAU;QAC7B,OAAO;YAAEC,qBAAqB;YAAMD;QAAM;IAC5C;IACA,IAAI,OAAOA,UAAU,UAAU;QAC7B,OAAO;YACLC,qBAAqB;YACrBD,OAAOE,OAAOF;QAChB;IACF;IACA,IAAI,OAAOA,UAAU,WAAW;QAC9B,OAAO;YACLC,qBAAqB;YACrBD,OAAOE,OAAOF;QAChB;IACF;IAEA,IAAIA,SAAS,OAAOA,UAAU,UAAU;QACtC,OAAO;YACLC,qBAAqB;YACrBD,OAAO,CAAC,KAAK,EAAEG,KAAKC,SAAS,CAACJ,OAAO,MAAM,GAAG,MAAM,CAAC;QACvD;IACF;IAEA,OAAO;QACLC,qBAAqB;QACrBD,OAAOK;IACT;AACF;AAEA,OAAO,MAAMC,OAAqC,CAAC,EACjDC,iBAAiBC,SAAS,EAC1BC,KAAK,EACLC,MAAM,EACNC,YAAY,EACZC,cAAcC,OAAO,EACtB;IACC,MAAM,EAAEC,IAAI,EAAE,GAAGjB;IAEjB,IAAIkB,cAAc;IAElB,IAAIF,WAAWL,WAAW;QACxBO,cAAc,CAAC,uCAAuC,CAAC;IACzD;IAEA,MAAMC,qBAAqBjB,YAAYS;IACvC,MAAMS,mBAAmBlB,YAAYc;IAErC,IAAIZ,sBAAsB;IAC1B,IAAIe,mBAAmBhB,KAAK,EAAEkB,QAAQ;QACpCjB,sBAAsBe,mBAAmBf,mBAAmB;IAC9D,OAAO,IAAIgB,iBAAiBjB,KAAK,EAAEkB,QAAQ;QACzCjB,sBAAsBgB,iBAAiBhB,mBAAmB;IAC5D;IAEA,MAAMkB,oBAAoBH,mBAAmBhB,KAAK,IAAIe;IACtD,MAAMK,kBAA0BH,iBAAiBjB,KAAK,IAAIe;IAE1D,MAAM,EAAEM,IAAI,EAAEC,EAAE,EAAE,GAAG1B,sBAAsB;QACzC2B,UAAU,QAAQJ,oBAAoB;QACtCK,QAAQ,QAAQJ,kBAAkB;QAClCnB;IACF;IAEA,QACGN,mBACC8B,WAAW3B,WACXuB,MAAMA,MACNP,MAAMA,MACNY,OAAO;QACLA,OAAOjB,MAAMiB,KAAK;QAClBhB;IACF,GACAC,cAAcA,cACdW,IAAIA;AAGV,EAAC"}
1
+ {"version":3,"sources":["../../../../../../src/views/Version/RenderFieldsToDiff/fields/Text/index.tsx"],"sourcesContent":["'use client'\nimport type { TextFieldDiffClientComponent } from 'payload'\n\nimport { FieldDiffContainer, getHTMLDiffComponents, useTranslation } from '@payloadcms/ui'\n\nimport './index.scss'\n\nimport React from 'react'\n\nconst baseClass = 'text-diff'\n\nfunction formatValue(value: unknown): {\n tokenizeByCharacter: boolean\n value: string\n} {\n if (typeof value === 'string') {\n return { tokenizeByCharacter: true, value }\n }\n if (typeof value === 'number') {\n return {\n tokenizeByCharacter: true,\n value: String(value),\n }\n }\n if (typeof value === 'boolean') {\n return {\n tokenizeByCharacter: false,\n value: String(value),\n }\n }\n\n if (value && typeof value === 'object') {\n return {\n tokenizeByCharacter: false,\n value: `<pre>${JSON.stringify(value, null, 2)}</pre>`,\n }\n }\n\n return {\n tokenizeByCharacter: true,\n value: undefined,\n }\n}\n\nexport const Text: TextFieldDiffClientComponent = ({\n comparisonValue: valueFrom,\n field,\n locale,\n nestingLevel,\n versionValue: valueTo,\n}) => {\n const { i18n } = useTranslation()\n\n let placeholder = ''\n\n if (valueTo == valueFrom) {\n placeholder = `<span class=\"html-diff-no-value\"><span>`\n }\n\n const formattedValueFrom = formatValue(valueFrom)\n const formattedValueTo = formatValue(valueTo)\n\n let tokenizeByCharacter = true\n if (formattedValueFrom.value?.length) {\n tokenizeByCharacter = formattedValueFrom.tokenizeByCharacter\n } else if (formattedValueTo.value?.length) {\n tokenizeByCharacter = formattedValueTo.tokenizeByCharacter\n }\n\n const renderedValueFrom = formattedValueFrom.value ?? placeholder\n const renderedValueTo: string = formattedValueTo.value ?? placeholder\n\n const { From, To } = getHTMLDiffComponents({\n fromHTML: '<p>' + renderedValueFrom + '</p>',\n toHTML: '<p>' + renderedValueTo + '</p>',\n tokenizeByCharacter,\n })\n\n return (\n <FieldDiffContainer\n className={baseClass}\n From={From}\n i18n={i18n}\n label={{\n label: field.label,\n locale,\n }}\n nestingLevel={nestingLevel}\n To={To}\n />\n )\n}\n"],"names":["FieldDiffContainer","getHTMLDiffComponents","useTranslation","React","baseClass","formatValue","value","tokenizeByCharacter","String","JSON","stringify","undefined","Text","comparisonValue","valueFrom","field","locale","nestingLevel","versionValue","valueTo","i18n","placeholder","formattedValueFrom","formattedValueTo","length","renderedValueFrom","renderedValueTo","From","To","fromHTML","toHTML","className","label"],"mappings":"AAAA;;AAGA,SAASA,kBAAkB,EAAEC,qBAAqB,EAAEC,cAAc,QAAQ,iBAAgB;AAE1F,OAAO,eAAc;AAErB,OAAOC,WAAW,QAAO;AAEzB,MAAMC,YAAY;AAElB,SAASC,YAAYC,KAAc;IAIjC,IAAI,OAAOA,UAAU,UAAU;QAC7B,OAAO;YAAEC,qBAAqB;YAAMD;QAAM;IAC5C;IACA,IAAI,OAAOA,UAAU,UAAU;QAC7B,OAAO;YACLC,qBAAqB;YACrBD,OAAOE,OAAOF;QAChB;IACF;IACA,IAAI,OAAOA,UAAU,WAAW;QAC9B,OAAO;YACLC,qBAAqB;YACrBD,OAAOE,OAAOF;QAChB;IACF;IAEA,IAAIA,SAAS,OAAOA,UAAU,UAAU;QACtC,OAAO;YACLC,qBAAqB;YACrBD,OAAO,CAAC,KAAK,EAAEG,KAAKC,SAAS,CAACJ,OAAO,MAAM,GAAG,MAAM,CAAC;QACvD;IACF;IAEA,OAAO;QACLC,qBAAqB;QACrBD,OAAOK;IACT;AACF;AAEA,OAAO,MAAMC,OAAqC,CAAC,EACjDC,iBAAiBC,SAAS,EAC1BC,KAAK,EACLC,MAAM,EACNC,YAAY,EACZC,cAAcC,OAAO,EACtB;IACC,MAAM,EAAEC,IAAI,EAAE,GAAGlB;IAEjB,IAAImB,cAAc;IAElB,IAAIF,WAAWL,WAAW;QACxBO,cAAc,CAAC,uCAAuC,CAAC;IACzD;IAEA,MAAMC,qBAAqBjB,YAAYS;IACvC,MAAMS,mBAAmBlB,YAAYc;IAErC,IAAIZ,sBAAsB;IAC1B,IAAIe,mBAAmBhB,KAAK,EAAEkB,QAAQ;QACpCjB,sBAAsBe,mBAAmBf,mBAAmB;IAC9D,OAAO,IAAIgB,iBAAiBjB,KAAK,EAAEkB,QAAQ;QACzCjB,sBAAsBgB,iBAAiBhB,mBAAmB;IAC5D;IAEA,MAAMkB,oBAAoBH,mBAAmBhB,KAAK,IAAIe;IACtD,MAAMK,kBAA0BH,iBAAiBjB,KAAK,IAAIe;IAE1D,MAAM,EAAEM,IAAI,EAAEC,EAAE,EAAE,GAAG3B,sBAAsB;QACzC4B,UAAU,QAAQJ,oBAAoB;QACtCK,QAAQ,QAAQJ,kBAAkB;QAClCnB;IACF;IAEA,qBACE,QAACP;QACC+B,WAAW3B;QACXuB,MAAMA;QACNP,MAAMA;QACNY,OAAO;YACLA,OAAOjB,MAAMiB,KAAK;YAClBhB;QACF;QACAC,cAAcA;QACdW,IAAIA;;;;;;AAGV,EAAC"}
@@ -1,15 +1,43 @@
1
+ import { jsxDEV as _jsxDEV } from "react/jsx-dev-runtime";
1
2
  import { getTranslation } from '@payloadcms/translations';
2
3
  import { FieldDiffContainer, File, getHTMLDiffComponents } from '@payloadcms/ui/rsc';
3
4
  import './index.scss';
5
+ import React from 'react';
4
6
  const baseClass = 'upload-diff';
5
7
  export const Upload = (args)=>{
6
8
  const { comparisonValue: valueFrom, field, i18n, locale, nestingLevel, req, versionValue: valueTo } = args;
7
9
  const hasMany = 'hasMany' in field && field.hasMany && Array.isArray(valueTo);
8
10
  const polymorphic = Array.isArray(field.relationTo);
9
11
  if (hasMany) {
10
- return <HasManyUploadDiff field={field} i18n={i18n} locale={locale} nestingLevel={nestingLevel} polymorphic={polymorphic} req={req} valueFrom={valueFrom} valueTo={valueTo}/>;
12
+ return /*#__PURE__*/ _jsxDEV(HasManyUploadDiff, {
13
+ field: field,
14
+ i18n: i18n,
15
+ locale: locale,
16
+ nestingLevel: nestingLevel,
17
+ polymorphic: polymorphic,
18
+ req: req,
19
+ valueFrom: valueFrom,
20
+ valueTo: valueTo
21
+ }, void 0, false, {
22
+ fileName: "src/views/Version/RenderFieldsToDiff/fields/Upload/index.tsx",
23
+ lineNumber: 38,
24
+ columnNumber: 7
25
+ }, this);
11
26
  }
12
- return <SingleUploadDiff field={field} i18n={i18n} locale={locale} nestingLevel={nestingLevel} polymorphic={polymorphic} req={req} valueFrom={valueFrom} valueTo={valueTo}/>;
27
+ return /*#__PURE__*/ _jsxDEV(SingleUploadDiff, {
28
+ field: field,
29
+ i18n: i18n,
30
+ locale: locale,
31
+ nestingLevel: nestingLevel,
32
+ polymorphic: polymorphic,
33
+ req: req,
34
+ valueFrom: valueFrom,
35
+ valueTo: valueTo
36
+ }, void 0, false, {
37
+ fileName: "src/views/Version/RenderFieldsToDiff/fields/Upload/index.tsx",
38
+ lineNumber: 52,
39
+ columnNumber: 5
40
+ }, this);
13
41
  };
14
42
  export const HasManyUploadDiff = async (args)=>{
15
43
  const { field, i18n, locale, nestingLevel, polymorphic, req, valueFrom, valueTo } = args;
@@ -26,8 +54,30 @@ export const HasManyUploadDiff = async (args)=>{
26
54
  // Non-polymorphic case
27
55
  return typeof uploadDoc === 'object' ? uploadDoc.id : uploadDoc;
28
56
  };
29
- const FromComponents = valueFrom ? valueFrom.map((uploadDoc)=><UploadDocumentDiff i18n={i18n} key={getUploadDocKey(uploadDoc)} polymorphic={polymorphic} relationTo={field.relationTo} req={req} showCollectionSlug={showCollectionSlug} uploadDoc={uploadDoc}/>) : null;
30
- const ToComponents = valueTo ? valueTo.map((uploadDoc)=><UploadDocumentDiff i18n={i18n} key={getUploadDocKey(uploadDoc)} polymorphic={polymorphic} relationTo={field.relationTo} req={req} showCollectionSlug={showCollectionSlug} uploadDoc={uploadDoc}/>) : null;
57
+ const FromComponents = valueFrom ? valueFrom.map((uploadDoc)=>/*#__PURE__*/ _jsxDEV(UploadDocumentDiff, {
58
+ i18n: i18n,
59
+ polymorphic: polymorphic,
60
+ relationTo: field.relationTo,
61
+ req: req,
62
+ showCollectionSlug: showCollectionSlug,
63
+ uploadDoc: uploadDoc
64
+ }, getUploadDocKey(uploadDoc), false, {
65
+ fileName: "src/views/Version/RenderFieldsToDiff/fields/Upload/index.tsx",
66
+ lineNumber: 95,
67
+ columnNumber: 9
68
+ }, this)) : null;
69
+ const ToComponents = valueTo ? valueTo.map((uploadDoc)=>/*#__PURE__*/ _jsxDEV(UploadDocumentDiff, {
70
+ i18n: i18n,
71
+ polymorphic: polymorphic,
72
+ relationTo: field.relationTo,
73
+ req: req,
74
+ showCollectionSlug: showCollectionSlug,
75
+ uploadDoc: uploadDoc
76
+ }, getUploadDocKey(uploadDoc), false, {
77
+ fileName: "src/views/Version/RenderFieldsToDiff/fields/Upload/index.tsx",
78
+ lineNumber: 108,
79
+ columnNumber: 9
80
+ }, this)) : null;
31
81
  const diffResult = getHTMLDiffComponents({
32
82
  fromHTML: `<div class="${baseClass}-hasMany">` + (FromComponents ? FromComponents.map((component)=>`<div>${ReactDOMServer.renderToStaticMarkup(component)}</div>`).join('') : '') + '</div>',
33
83
  toHTML: `<div class="${baseClass}-hasMany">` + (ToComponents ? ToComponents.map((component)=>`<div>${ReactDOMServer.renderToStaticMarkup(component)}</div>`).join('') : '') + '</div>',
@@ -35,10 +85,21 @@ export const HasManyUploadDiff = async (args)=>{
35
85
  });
36
86
  From = diffResult.From;
37
87
  To = diffResult.To;
38
- return <FieldDiffContainer className={`${baseClass}-container ${baseClass}-container--hasMany`} From={From} i18n={i18n} label={{
39
- label: field.label,
40
- locale
41
- }} nestingLevel={nestingLevel} To={To}/>;
88
+ return /*#__PURE__*/ _jsxDEV(FieldDiffContainer, {
89
+ className: `${baseClass}-container ${baseClass}-container--hasMany`,
90
+ From: From,
91
+ i18n: i18n,
92
+ label: {
93
+ label: field.label,
94
+ locale
95
+ },
96
+ nestingLevel: nestingLevel,
97
+ To: To
98
+ }, void 0, false, {
99
+ fileName: "src/views/Version/RenderFieldsToDiff/fields/Upload/index.tsx",
100
+ lineNumber: 143,
101
+ columnNumber: 5
102
+ }, this);
42
103
  };
43
104
  export const SingleUploadDiff = async (args)=>{
44
105
  const { field, i18n, locale, nestingLevel, polymorphic, req, valueFrom, valueTo } = args;
@@ -46,8 +107,30 @@ export const SingleUploadDiff = async (args)=>{
46
107
  let From = '';
47
108
  let To = '';
48
109
  const showCollectionSlug = Array.isArray(field.relationTo);
49
- const FromComponent = valueFrom ? <UploadDocumentDiff i18n={i18n} polymorphic={polymorphic} relationTo={field.relationTo} req={req} showCollectionSlug={showCollectionSlug} uploadDoc={valueFrom}/> : null;
50
- const ToComponent = valueTo ? <UploadDocumentDiff i18n={i18n} polymorphic={polymorphic} relationTo={field.relationTo} req={req} showCollectionSlug={showCollectionSlug} uploadDoc={valueTo}/> : null;
110
+ const FromComponent = valueFrom ? /*#__PURE__*/ _jsxDEV(UploadDocumentDiff, {
111
+ i18n: i18n,
112
+ polymorphic: polymorphic,
113
+ relationTo: field.relationTo,
114
+ req: req,
115
+ showCollectionSlug: showCollectionSlug,
116
+ uploadDoc: valueFrom
117
+ }, void 0, false, {
118
+ fileName: "src/views/Version/RenderFieldsToDiff/fields/Upload/index.tsx",
119
+ lineNumber: 177,
120
+ columnNumber: 5
121
+ }, this) : null;
122
+ const ToComponent = valueTo ? /*#__PURE__*/ _jsxDEV(UploadDocumentDiff, {
123
+ i18n: i18n,
124
+ polymorphic: polymorphic,
125
+ relationTo: field.relationTo,
126
+ req: req,
127
+ showCollectionSlug: showCollectionSlug,
128
+ uploadDoc: valueTo
129
+ }, void 0, false, {
130
+ fileName: "src/views/Version/RenderFieldsToDiff/fields/Upload/index.tsx",
131
+ lineNumber: 187,
132
+ columnNumber: 5
133
+ }, this) : null;
51
134
  const fromHtml = FromComponent ? ReactDOMServer.renderToStaticMarkup(FromComponent) : '<p>' + '' + '</p>';
52
135
  const toHtml = ToComponent ? ReactDOMServer.renderToStaticMarkup(ToComponent) : '<p>' + '' + '</p>';
53
136
  const diffResult = getHTMLDiffComponents({
@@ -57,10 +140,21 @@ export const SingleUploadDiff = async (args)=>{
57
140
  });
58
141
  From = diffResult.From;
59
142
  To = diffResult.To;
60
- return <FieldDiffContainer className={`${baseClass}-container ${baseClass}-container--hasOne`} From={From} i18n={i18n} label={{
61
- label: field.label,
62
- locale
63
- }} nestingLevel={nestingLevel} To={To}/>;
143
+ return /*#__PURE__*/ _jsxDEV(FieldDiffContainer, {
144
+ className: `${baseClass}-container ${baseClass}-container--hasOne`,
145
+ From: From,
146
+ i18n: i18n,
147
+ label: {
148
+ label: field.label,
149
+ locale
150
+ },
151
+ nestingLevel: nestingLevel,
152
+ To: To
153
+ }, void 0, false, {
154
+ fileName: "src/views/Version/RenderFieldsToDiff/fields/Upload/index.tsx",
155
+ lineNumber: 213,
156
+ columnNumber: 5
157
+ }, this);
64
158
  };
65
159
  const UploadDocumentDiff = (args)=>{
66
160
  const { i18n, polymorphic, relationTo, req, showCollectionSlug, uploadDoc } = args;
@@ -95,19 +189,74 @@ const UploadDocumentDiff = (args)=>{
95
189
  } else if (typeof uploadDoc === 'string' || typeof uploadDoc === 'number') {
96
190
  id = uploadDoc;
97
191
  }
98
- return <div className={`${baseClass}`} data-enable-match="true" data-id={id} data-relation-to={relationTo}>
99
- <div className={`${baseClass}__card`}>
100
- <div className={`${baseClass}__thumbnail`}>
101
- {thumbnailSRC?.length ? <img alt={filename} src={thumbnailSRC}/> : <File/>}
102
- </div>
103
- {pillLabel && <div className={`${baseClass}__pill`} data-enable-match="false">
104
- <span>{pillLabel}</span>
105
- </div>}
106
- <div className={`${baseClass}__info`} data-enable-match="false">
107
- <strong>{filename}</strong>
108
- </div>
109
- </div>
110
- </div>;
192
+ return /*#__PURE__*/ _jsxDEV("div", {
193
+ className: `${baseClass}`,
194
+ "data-enable-match": "true",
195
+ "data-id": id,
196
+ "data-relation-to": relationTo,
197
+ children: /*#__PURE__*/ _jsxDEV("div", {
198
+ className: `${baseClass}__card`,
199
+ children: [
200
+ /*#__PURE__*/ _jsxDEV("div", {
201
+ className: `${baseClass}__thumbnail`,
202
+ children: thumbnailSRC?.length ? /*#__PURE__*/ _jsxDEV("img", {
203
+ alt: filename,
204
+ src: thumbnailSRC
205
+ }, void 0, false, {
206
+ fileName: "src/views/Version/RenderFieldsToDiff/fields/Upload/index.tsx",
207
+ lineNumber: 291,
208
+ columnNumber: 35
209
+ }, this) : /*#__PURE__*/ _jsxDEV(File, {}, void 0, false, {
210
+ fileName: "src/views/Version/RenderFieldsToDiff/fields/Upload/index.tsx",
211
+ lineNumber: 291,
212
+ columnNumber: 79
213
+ }, this)
214
+ }, void 0, false, {
215
+ fileName: "src/views/Version/RenderFieldsToDiff/fields/Upload/index.tsx",
216
+ lineNumber: 290,
217
+ columnNumber: 9
218
+ }, this),
219
+ pillLabel && /*#__PURE__*/ _jsxDEV("div", {
220
+ className: `${baseClass}__pill`,
221
+ "data-enable-match": "false",
222
+ children: /*#__PURE__*/ _jsxDEV("span", {
223
+ children: pillLabel
224
+ }, void 0, false, {
225
+ fileName: "src/views/Version/RenderFieldsToDiff/fields/Upload/index.tsx",
226
+ lineNumber: 295,
227
+ columnNumber: 13
228
+ }, this)
229
+ }, void 0, false, {
230
+ fileName: "src/views/Version/RenderFieldsToDiff/fields/Upload/index.tsx",
231
+ lineNumber: 294,
232
+ columnNumber: 11
233
+ }, this),
234
+ /*#__PURE__*/ _jsxDEV("div", {
235
+ className: `${baseClass}__info`,
236
+ "data-enable-match": "false",
237
+ children: /*#__PURE__*/ _jsxDEV("strong", {
238
+ children: filename
239
+ }, void 0, false, {
240
+ fileName: "src/views/Version/RenderFieldsToDiff/fields/Upload/index.tsx",
241
+ lineNumber: 299,
242
+ columnNumber: 11
243
+ }, this)
244
+ }, void 0, false, {
245
+ fileName: "src/views/Version/RenderFieldsToDiff/fields/Upload/index.tsx",
246
+ lineNumber: 298,
247
+ columnNumber: 9
248
+ }, this)
249
+ ]
250
+ }, void 0, true, {
251
+ fileName: "src/views/Version/RenderFieldsToDiff/fields/Upload/index.tsx",
252
+ lineNumber: 289,
253
+ columnNumber: 7
254
+ }, this)
255
+ }, void 0, false, {
256
+ fileName: "src/views/Version/RenderFieldsToDiff/fields/Upload/index.tsx",
257
+ lineNumber: 283,
258
+ columnNumber: 5
259
+ }, this);
111
260
  };
112
261
 
113
262
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../src/views/Version/RenderFieldsToDiff/fields/Upload/index.tsx"],"sourcesContent":["import type {\n FileData,\n PayloadRequest,\n TypeWithID,\n UploadField,\n UploadFieldDiffServerComponent,\n} from 'payload'\n\nimport { getTranslation, type I18nClient } from '@payloadcms/translations'\nimport { FieldDiffContainer, File, getHTMLDiffComponents } from '@payloadcms/ui/rsc'\n\nimport './index.scss'\n\nimport React from 'react'\n\nconst baseClass = 'upload-diff'\n\ntype NonPolyUploadDoc = (FileData & TypeWithID) | number | string\ntype PolyUploadDoc = { relationTo: string; value: (FileData & TypeWithID) | number | string }\n\ntype UploadDoc = NonPolyUploadDoc | PolyUploadDoc\n\nexport const Upload: UploadFieldDiffServerComponent = (args) => {\n const {\n comparisonValue: valueFrom,\n field,\n i18n,\n locale,\n nestingLevel,\n req,\n versionValue: valueTo,\n } = args\n const hasMany = 'hasMany' in field && field.hasMany && Array.isArray(valueTo)\n const polymorphic = Array.isArray(field.relationTo)\n\n if (hasMany) {\n return (\n <HasManyUploadDiff\n field={field}\n i18n={i18n}\n locale={locale}\n nestingLevel={nestingLevel}\n polymorphic={polymorphic}\n req={req}\n valueFrom={valueFrom as UploadDoc[]}\n valueTo={valueTo as UploadDoc[]}\n />\n )\n }\n\n return (\n <SingleUploadDiff\n field={field}\n i18n={i18n}\n locale={locale}\n nestingLevel={nestingLevel}\n polymorphic={polymorphic}\n req={req}\n valueFrom={valueFrom as UploadDoc}\n valueTo={valueTo as UploadDoc}\n />\n )\n}\n\nexport const HasManyUploadDiff: React.FC<{\n field: UploadField\n i18n: I18nClient\n locale: string\n nestingLevel?: number\n polymorphic: boolean\n req: PayloadRequest\n valueFrom: Array<UploadDoc>\n valueTo: Array<UploadDoc>\n}> = async (args) => {\n const { field, i18n, locale, nestingLevel, polymorphic, req, valueFrom, valueTo } = args\n const ReactDOMServer = (await import('react-dom/server')).default\n\n let From: React.ReactNode = ''\n let To: React.ReactNode = ''\n\n const showCollectionSlug = Array.isArray(field.relationTo)\n\n const getUploadDocKey = (uploadDoc: UploadDoc): number | string => {\n if (typeof uploadDoc === 'object' && 'relationTo' in uploadDoc) {\n // Polymorphic case\n const value = uploadDoc.value\n return typeof value === 'object' ? value.id : value\n }\n // Non-polymorphic case\n return typeof uploadDoc === 'object' ? uploadDoc.id : uploadDoc\n }\n\n const FromComponents = valueFrom\n ? valueFrom.map((uploadDoc) => (\n <UploadDocumentDiff\n i18n={i18n}\n key={getUploadDocKey(uploadDoc)}\n polymorphic={polymorphic}\n relationTo={field.relationTo}\n req={req}\n showCollectionSlug={showCollectionSlug}\n uploadDoc={uploadDoc}\n />\n ))\n : null\n const ToComponents = valueTo\n ? valueTo.map((uploadDoc) => (\n <UploadDocumentDiff\n i18n={i18n}\n key={getUploadDocKey(uploadDoc)}\n polymorphic={polymorphic}\n relationTo={field.relationTo}\n req={req}\n showCollectionSlug={showCollectionSlug}\n uploadDoc={uploadDoc}\n />\n ))\n : null\n\n const diffResult = getHTMLDiffComponents({\n fromHTML:\n `<div class=\"${baseClass}-hasMany\">` +\n (FromComponents\n ? FromComponents.map(\n (component) => `<div>${ReactDOMServer.renderToStaticMarkup(component)}</div>`,\n ).join('')\n : '') +\n '</div>',\n toHTML:\n `<div class=\"${baseClass}-hasMany\">` +\n (ToComponents\n ? ToComponents.map(\n (component) => `<div>${ReactDOMServer.renderToStaticMarkup(component)}</div>`,\n ).join('')\n : '') +\n '</div>',\n tokenizeByCharacter: false,\n })\n From = diffResult.From\n To = diffResult.To\n\n return (\n <FieldDiffContainer\n className={`${baseClass}-container ${baseClass}-container--hasMany`}\n From={From}\n i18n={i18n}\n label={{\n label: field.label,\n locale,\n }}\n nestingLevel={nestingLevel}\n To={To}\n />\n )\n}\n\nexport const SingleUploadDiff: React.FC<{\n field: UploadField\n i18n: I18nClient\n locale: string\n nestingLevel?: number\n polymorphic: boolean\n req: PayloadRequest\n valueFrom: UploadDoc\n valueTo: UploadDoc\n}> = async (args) => {\n const { field, i18n, locale, nestingLevel, polymorphic, req, valueFrom, valueTo } = args\n\n const ReactDOMServer = (await import('react-dom/server')).default\n\n let From: React.ReactNode = ''\n let To: React.ReactNode = ''\n\n const showCollectionSlug = Array.isArray(field.relationTo)\n\n const FromComponent = valueFrom ? (\n <UploadDocumentDiff\n i18n={i18n}\n polymorphic={polymorphic}\n relationTo={field.relationTo}\n req={req}\n showCollectionSlug={showCollectionSlug}\n uploadDoc={valueFrom}\n />\n ) : null\n const ToComponent = valueTo ? (\n <UploadDocumentDiff\n i18n={i18n}\n polymorphic={polymorphic}\n relationTo={field.relationTo}\n req={req}\n showCollectionSlug={showCollectionSlug}\n uploadDoc={valueTo}\n />\n ) : null\n\n const fromHtml = FromComponent\n ? ReactDOMServer.renderToStaticMarkup(FromComponent)\n : '<p>' + '' + '</p>'\n const toHtml = ToComponent\n ? ReactDOMServer.renderToStaticMarkup(ToComponent)\n : '<p>' + '' + '</p>'\n\n const diffResult = getHTMLDiffComponents({\n fromHTML: fromHtml,\n toHTML: toHtml,\n tokenizeByCharacter: false,\n })\n From = diffResult.From\n To = diffResult.To\n\n return (\n <FieldDiffContainer\n className={`${baseClass}-container ${baseClass}-container--hasOne`}\n From={From}\n i18n={i18n}\n label={{\n label: field.label,\n locale,\n }}\n nestingLevel={nestingLevel}\n To={To}\n />\n )\n}\n\nconst UploadDocumentDiff = (args: {\n i18n: I18nClient\n polymorphic: boolean\n relationTo: string | string[]\n req: PayloadRequest\n showCollectionSlug?: boolean\n uploadDoc: UploadDoc\n}) => {\n const { i18n, polymorphic, relationTo, req, showCollectionSlug, uploadDoc } = args\n\n let thumbnailSRC: string = ''\n\n const value = polymorphic\n ? (uploadDoc as { relationTo: string; value: FileData & TypeWithID }).value\n : (uploadDoc as FileData & TypeWithID)\n\n if (value && typeof value === 'object' && 'thumbnailURL' in value) {\n thumbnailSRC =\n (typeof value.thumbnailURL === 'string' && value.thumbnailURL) ||\n (typeof value.url === 'string' && value.url) ||\n ''\n }\n\n let filename: string\n if (value && typeof value === 'object') {\n filename = value.filename\n } else {\n filename = `${i18n.t('general:untitled')} - ID: ${uploadDoc as number | string}`\n }\n\n let pillLabel: null | string = null\n\n if (showCollectionSlug) {\n let collectionSlug: string\n if (polymorphic && typeof uploadDoc === 'object' && 'relationTo' in uploadDoc) {\n collectionSlug = uploadDoc.relationTo\n } else {\n collectionSlug = typeof relationTo === 'string' ? relationTo : relationTo[0]\n }\n const uploadConfig = req.payload.collections[collectionSlug].config\n pillLabel = uploadConfig.labels?.singular\n ? getTranslation(uploadConfig.labels.singular, i18n)\n : uploadConfig.slug\n }\n\n let id: number | string | undefined\n if (polymorphic && typeof uploadDoc === 'object' && 'relationTo' in uploadDoc) {\n const polyValue = uploadDoc.value\n id = typeof polyValue === 'object' ? polyValue.id : polyValue\n } else if (typeof uploadDoc === 'object' && 'id' in uploadDoc) {\n id = uploadDoc.id\n } else if (typeof uploadDoc === 'string' || typeof uploadDoc === 'number') {\n id = uploadDoc\n }\n\n return (\n <div\n className={`${baseClass}`}\n data-enable-match=\"true\"\n data-id={id}\n data-relation-to={relationTo}\n >\n <div className={`${baseClass}__card`}>\n <div className={`${baseClass}__thumbnail`}>\n {thumbnailSRC?.length ? <img alt={filename} src={thumbnailSRC} /> : <File />}\n </div>\n {pillLabel && (\n <div className={`${baseClass}__pill`} data-enable-match=\"false\">\n <span>{pillLabel}</span>\n </div>\n )}\n <div className={`${baseClass}__info`} data-enable-match=\"false\">\n <strong>{filename}</strong>\n </div>\n </div>\n </div>\n )\n}\n"],"names":["getTranslation","FieldDiffContainer","File","getHTMLDiffComponents","baseClass","Upload","args","comparisonValue","valueFrom","field","i18n","locale","nestingLevel","req","versionValue","valueTo","hasMany","Array","isArray","polymorphic","relationTo","HasManyUploadDiff","SingleUploadDiff","ReactDOMServer","default","From","To","showCollectionSlug","getUploadDocKey","uploadDoc","value","id","FromComponents","map","UploadDocumentDiff","key","ToComponents","diffResult","fromHTML","component","renderToStaticMarkup","join","toHTML","tokenizeByCharacter","className","label","FromComponent","ToComponent","fromHtml","toHtml","thumbnailSRC","thumbnailURL","url","filename","t","pillLabel","collectionSlug","uploadConfig","payload","collections","config","labels","singular","slug","polyValue","div","data-enable-match","data-id","data-relation-to","length","img","alt","src","span","strong"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../../../src/views/Version/RenderFieldsToDiff/fields/Upload/index.tsx"],"sourcesContent":["import type {\n FileData,\n PayloadRequest,\n TypeWithID,\n UploadField,\n UploadFieldDiffServerComponent,\n} from 'payload'\n\nimport { getTranslation, type I18nClient } from '@payloadcms/translations'\nimport { FieldDiffContainer, File, getHTMLDiffComponents } from '@payloadcms/ui/rsc'\n\nimport './index.scss'\n\nimport React from 'react'\n\nconst baseClass = 'upload-diff'\n\ntype NonPolyUploadDoc = (FileData & TypeWithID) | number | string\ntype PolyUploadDoc = { relationTo: string; value: (FileData & TypeWithID) | number | string }\n\ntype UploadDoc = NonPolyUploadDoc | PolyUploadDoc\n\nexport const Upload: UploadFieldDiffServerComponent = (args) => {\n const {\n comparisonValue: valueFrom,\n field,\n i18n,\n locale,\n nestingLevel,\n req,\n versionValue: valueTo,\n } = args\n const hasMany = 'hasMany' in field && field.hasMany && Array.isArray(valueTo)\n const polymorphic = Array.isArray(field.relationTo)\n\n if (hasMany) {\n return (\n <HasManyUploadDiff\n field={field}\n i18n={i18n}\n locale={locale}\n nestingLevel={nestingLevel}\n polymorphic={polymorphic}\n req={req}\n valueFrom={valueFrom as UploadDoc[]}\n valueTo={valueTo as UploadDoc[]}\n />\n )\n }\n\n return (\n <SingleUploadDiff\n field={field}\n i18n={i18n}\n locale={locale}\n nestingLevel={nestingLevel}\n polymorphic={polymorphic}\n req={req}\n valueFrom={valueFrom as UploadDoc}\n valueTo={valueTo as UploadDoc}\n />\n )\n}\n\nexport const HasManyUploadDiff: React.FC<{\n field: UploadField\n i18n: I18nClient\n locale: string\n nestingLevel?: number\n polymorphic: boolean\n req: PayloadRequest\n valueFrom: Array<UploadDoc>\n valueTo: Array<UploadDoc>\n}> = async (args) => {\n const { field, i18n, locale, nestingLevel, polymorphic, req, valueFrom, valueTo } = args\n const ReactDOMServer = (await import('react-dom/server')).default\n\n let From: React.ReactNode = ''\n let To: React.ReactNode = ''\n\n const showCollectionSlug = Array.isArray(field.relationTo)\n\n const getUploadDocKey = (uploadDoc: UploadDoc): number | string => {\n if (typeof uploadDoc === 'object' && 'relationTo' in uploadDoc) {\n // Polymorphic case\n const value = uploadDoc.value\n return typeof value === 'object' ? value.id : value\n }\n // Non-polymorphic case\n return typeof uploadDoc === 'object' ? uploadDoc.id : uploadDoc\n }\n\n const FromComponents = valueFrom\n ? valueFrom.map((uploadDoc) => (\n <UploadDocumentDiff\n i18n={i18n}\n key={getUploadDocKey(uploadDoc)}\n polymorphic={polymorphic}\n relationTo={field.relationTo}\n req={req}\n showCollectionSlug={showCollectionSlug}\n uploadDoc={uploadDoc}\n />\n ))\n : null\n const ToComponents = valueTo\n ? valueTo.map((uploadDoc) => (\n <UploadDocumentDiff\n i18n={i18n}\n key={getUploadDocKey(uploadDoc)}\n polymorphic={polymorphic}\n relationTo={field.relationTo}\n req={req}\n showCollectionSlug={showCollectionSlug}\n uploadDoc={uploadDoc}\n />\n ))\n : null\n\n const diffResult = getHTMLDiffComponents({\n fromHTML:\n `<div class=\"${baseClass}-hasMany\">` +\n (FromComponents\n ? FromComponents.map(\n (component) => `<div>${ReactDOMServer.renderToStaticMarkup(component)}</div>`,\n ).join('')\n : '') +\n '</div>',\n toHTML:\n `<div class=\"${baseClass}-hasMany\">` +\n (ToComponents\n ? ToComponents.map(\n (component) => `<div>${ReactDOMServer.renderToStaticMarkup(component)}</div>`,\n ).join('')\n : '') +\n '</div>',\n tokenizeByCharacter: false,\n })\n From = diffResult.From\n To = diffResult.To\n\n return (\n <FieldDiffContainer\n className={`${baseClass}-container ${baseClass}-container--hasMany`}\n From={From}\n i18n={i18n}\n label={{\n label: field.label,\n locale,\n }}\n nestingLevel={nestingLevel}\n To={To}\n />\n )\n}\n\nexport const SingleUploadDiff: React.FC<{\n field: UploadField\n i18n: I18nClient\n locale: string\n nestingLevel?: number\n polymorphic: boolean\n req: PayloadRequest\n valueFrom: UploadDoc\n valueTo: UploadDoc\n}> = async (args) => {\n const { field, i18n, locale, nestingLevel, polymorphic, req, valueFrom, valueTo } = args\n\n const ReactDOMServer = (await import('react-dom/server')).default\n\n let From: React.ReactNode = ''\n let To: React.ReactNode = ''\n\n const showCollectionSlug = Array.isArray(field.relationTo)\n\n const FromComponent = valueFrom ? (\n <UploadDocumentDiff\n i18n={i18n}\n polymorphic={polymorphic}\n relationTo={field.relationTo}\n req={req}\n showCollectionSlug={showCollectionSlug}\n uploadDoc={valueFrom}\n />\n ) : null\n const ToComponent = valueTo ? (\n <UploadDocumentDiff\n i18n={i18n}\n polymorphic={polymorphic}\n relationTo={field.relationTo}\n req={req}\n showCollectionSlug={showCollectionSlug}\n uploadDoc={valueTo}\n />\n ) : null\n\n const fromHtml = FromComponent\n ? ReactDOMServer.renderToStaticMarkup(FromComponent)\n : '<p>' + '' + '</p>'\n const toHtml = ToComponent\n ? ReactDOMServer.renderToStaticMarkup(ToComponent)\n : '<p>' + '' + '</p>'\n\n const diffResult = getHTMLDiffComponents({\n fromHTML: fromHtml,\n toHTML: toHtml,\n tokenizeByCharacter: false,\n })\n From = diffResult.From\n To = diffResult.To\n\n return (\n <FieldDiffContainer\n className={`${baseClass}-container ${baseClass}-container--hasOne`}\n From={From}\n i18n={i18n}\n label={{\n label: field.label,\n locale,\n }}\n nestingLevel={nestingLevel}\n To={To}\n />\n )\n}\n\nconst UploadDocumentDiff = (args: {\n i18n: I18nClient\n polymorphic: boolean\n relationTo: string | string[]\n req: PayloadRequest\n showCollectionSlug?: boolean\n uploadDoc: UploadDoc\n}) => {\n const { i18n, polymorphic, relationTo, req, showCollectionSlug, uploadDoc } = args\n\n let thumbnailSRC: string = ''\n\n const value = polymorphic\n ? (uploadDoc as { relationTo: string; value: FileData & TypeWithID }).value\n : (uploadDoc as FileData & TypeWithID)\n\n if (value && typeof value === 'object' && 'thumbnailURL' in value) {\n thumbnailSRC =\n (typeof value.thumbnailURL === 'string' && value.thumbnailURL) ||\n (typeof value.url === 'string' && value.url) ||\n ''\n }\n\n let filename: string\n if (value && typeof value === 'object') {\n filename = value.filename\n } else {\n filename = `${i18n.t('general:untitled')} - ID: ${uploadDoc as number | string}`\n }\n\n let pillLabel: null | string = null\n\n if (showCollectionSlug) {\n let collectionSlug: string\n if (polymorphic && typeof uploadDoc === 'object' && 'relationTo' in uploadDoc) {\n collectionSlug = uploadDoc.relationTo\n } else {\n collectionSlug = typeof relationTo === 'string' ? relationTo : relationTo[0]\n }\n const uploadConfig = req.payload.collections[collectionSlug].config\n pillLabel = uploadConfig.labels?.singular\n ? getTranslation(uploadConfig.labels.singular, i18n)\n : uploadConfig.slug\n }\n\n let id: number | string | undefined\n if (polymorphic && typeof uploadDoc === 'object' && 'relationTo' in uploadDoc) {\n const polyValue = uploadDoc.value\n id = typeof polyValue === 'object' ? polyValue.id : polyValue\n } else if (typeof uploadDoc === 'object' && 'id' in uploadDoc) {\n id = uploadDoc.id\n } else if (typeof uploadDoc === 'string' || typeof uploadDoc === 'number') {\n id = uploadDoc\n }\n\n return (\n <div\n className={`${baseClass}`}\n data-enable-match=\"true\"\n data-id={id}\n data-relation-to={relationTo}\n >\n <div className={`${baseClass}__card`}>\n <div className={`${baseClass}__thumbnail`}>\n {thumbnailSRC?.length ? <img alt={filename} src={thumbnailSRC} /> : <File />}\n </div>\n {pillLabel && (\n <div className={`${baseClass}__pill`} data-enable-match=\"false\">\n <span>{pillLabel}</span>\n </div>\n )}\n <div className={`${baseClass}__info`} data-enable-match=\"false\">\n <strong>{filename}</strong>\n </div>\n </div>\n </div>\n )\n}\n"],"names":["getTranslation","FieldDiffContainer","File","getHTMLDiffComponents","React","baseClass","Upload","args","comparisonValue","valueFrom","field","i18n","locale","nestingLevel","req","versionValue","valueTo","hasMany","Array","isArray","polymorphic","relationTo","HasManyUploadDiff","SingleUploadDiff","ReactDOMServer","default","From","To","showCollectionSlug","getUploadDocKey","uploadDoc","value","id","FromComponents","map","UploadDocumentDiff","ToComponents","diffResult","fromHTML","component","renderToStaticMarkup","join","toHTML","tokenizeByCharacter","className","label","FromComponent","ToComponent","fromHtml","toHtml","thumbnailSRC","thumbnailURL","url","filename","t","pillLabel","collectionSlug","uploadConfig","payload","collections","config","labels","singular","slug","polyValue","div","data-enable-match","data-id","data-relation-to","length","img","alt","src","span","strong"],"mappings":"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"}
@@ -1,8 +1,16 @@
1
+ import { jsxDEV as _jsxDEV } from "react/jsx-dev-runtime";
1
2
  import { buildVersionFields } from './buildVersionFields.js';
2
3
  import { RenderVersionFieldsToDiff } from './RenderVersionFieldsToDiff.js';
3
4
  export const RenderDiff = (args)=>{
4
5
  const { versionFields } = buildVersionFields(args);
5
- return <RenderVersionFieldsToDiff parent={true} versionFields={versionFields}/>;
6
+ return /*#__PURE__*/ _jsxDEV(RenderVersionFieldsToDiff, {
7
+ parent: true,
8
+ versionFields: versionFields
9
+ }, void 0, false, {
10
+ fileName: "src/views/Version/RenderFieldsToDiff/index.tsx",
11
+ lineNumber: 7,
12
+ columnNumber: 10
13
+ }, this);
6
14
  };
7
15
 
8
16
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/views/Version/RenderFieldsToDiff/index.tsx"],"sourcesContent":["import { buildVersionFields, type BuildVersionFieldsArgs } from './buildVersionFields.js'\nimport { RenderVersionFieldsToDiff } from './RenderVersionFieldsToDiff.js'\n\nexport const RenderDiff = (args: BuildVersionFieldsArgs): React.ReactNode => {\n const { versionFields } = buildVersionFields(args)\n\n return <RenderVersionFieldsToDiff parent={true} versionFields={versionFields} />\n}\n"],"names":["buildVersionFields","RenderVersionFieldsToDiff","RenderDiff","args","versionFields","parent"],"mappings":"AAAA,SAASA,kBAAkB,QAAqC,0BAAyB;AACzF,SAASC,yBAAyB,QAAQ,iCAAgC;AAE1E,OAAO,MAAMC,aAAa,CAACC;IACzB,MAAM,EAAEC,aAAa,EAAE,GAAGJ,mBAAmBG;IAE7C,QAAQF,0BAA0BI,QAAQ,MAAMD,eAAeA;AACjE,EAAC"}
1
+ {"version":3,"sources":["../../../../src/views/Version/RenderFieldsToDiff/index.tsx"],"sourcesContent":["import { buildVersionFields, type BuildVersionFieldsArgs } from './buildVersionFields.js'\nimport { RenderVersionFieldsToDiff } from './RenderVersionFieldsToDiff.js'\n\nexport const RenderDiff = (args: BuildVersionFieldsArgs): React.ReactNode => {\n const { versionFields } = buildVersionFields(args)\n\n return <RenderVersionFieldsToDiff parent={true} versionFields={versionFields} />\n}\n"],"names":["buildVersionFields","RenderVersionFieldsToDiff","RenderDiff","args","versionFields","parent"],"mappings":";AAAA,SAASA,kBAAkB,QAAqC,0BAAyB;AACzF,SAASC,yBAAyB,QAAQ,iCAAgC;AAE1E,OAAO,MAAMC,aAAa,CAACC;IACzB,MAAM,EAAEC,aAAa,EAAE,GAAGJ,mBAAmBG;IAE7C,qBAAO,QAACF;QAA0BI,QAAQ;QAAMD,eAAeA;;;;;;AACjE,EAAC"}
@@ -1,11 +1,12 @@
1
1
  'use client';
2
+ import { jsxDEV as _jsxDEV } from "react/jsx-dev-runtime";
2
3
  import { getTranslation } from '@payloadcms/translations';
3
4
  import { Button, ConfirmationModal, PopupList, toast, useConfig, useModal, useRouteTransition, useTranslation } from '@payloadcms/ui';
4
5
  import { requests } from '@payloadcms/ui/shared';
5
6
  import { useRouter } from 'next/navigation.js';
6
7
  import { formatAdminURL } from 'payload/shared';
7
8
  import './index.scss';
8
- import { Fragment, useCallback, useState } from 'react';
9
+ import React, { Fragment, useCallback, useState } from 'react';
9
10
  const baseClass = 'restore-version';
10
11
  const modalSlug = 'restore-version';
11
12
  export const Restore = ({ className, collectionConfig, globalConfig, label, originalDocID, status, versionDateFormatted, versionID })=>{
@@ -63,26 +64,65 @@ export const Restore = ({ className, collectionConfig, globalConfig, label, orig
63
64
  router,
64
65
  t
65
66
  ]);
66
- return <Fragment>
67
- <div className={[
68
- baseClass,
69
- className
70
- ].filter(Boolean).join(' ')}>
71
- <Button buttonStyle="primary" className={[
72
- canRestoreAsDraft && `${baseClass}__restore-as-draft-button`
73
- ].filter(Boolean).join(' ')} onClick={()=>toggleModal(modalSlug)} size="xsmall" SubMenuPopupContent={canRestoreAsDraft ? ()=><PopupList.ButtonGroup>
74
- <PopupList.Button onClick={()=>[
75
- setDraft(true),
76
- toggleModal(modalSlug)
77
- ]}>
78
- {t('version:restoreAsDraft')}
79
- </PopupList.Button>
80
- </PopupList.ButtonGroup> : null}>
81
- {t('version:restoreThisVersion')}
82
- </Button>
83
- </div>
84
- <ConfirmationModal body={restoreMessage} confirmingLabel={t('version:restoring')} heading={t('version:confirmVersionRestoration')} modalSlug={modalSlug} onConfirm={handleRestore}/>
85
- </Fragment>;
67
+ return /*#__PURE__*/ _jsxDEV(Fragment, {
68
+ children: [
69
+ /*#__PURE__*/ _jsxDEV("div", {
70
+ className: [
71
+ baseClass,
72
+ className
73
+ ].filter(Boolean).join(' '),
74
+ children: /*#__PURE__*/ _jsxDEV(Button, {
75
+ buttonStyle: "primary",
76
+ className: [
77
+ canRestoreAsDraft && `${baseClass}__restore-as-draft-button`
78
+ ].filter(Boolean).join(' '),
79
+ onClick: ()=>toggleModal(modalSlug),
80
+ size: "xsmall",
81
+ SubMenuPopupContent: canRestoreAsDraft ? ()=>/*#__PURE__*/ _jsxDEV(PopupList.ButtonGroup, {
82
+ children: /*#__PURE__*/ _jsxDEV(PopupList.Button, {
83
+ onClick: ()=>[
84
+ setDraft(true),
85
+ toggleModal(modalSlug)
86
+ ],
87
+ children: t('version:restoreAsDraft')
88
+ }, void 0, false, {
89
+ fileName: "src/views/Version/Restore/index.tsx",
90
+ lineNumber: 130,
91
+ columnNumber: 21
92
+ }, void 0)
93
+ }, void 0, false, {
94
+ fileName: "src/views/Version/Restore/index.tsx",
95
+ lineNumber: 129,
96
+ columnNumber: 19
97
+ }, void 0) : null,
98
+ children: t('version:restoreThisVersion')
99
+ }, void 0, false, {
100
+ fileName: "src/views/Version/Restore/index.tsx",
101
+ lineNumber: 119,
102
+ columnNumber: 9
103
+ }, this)
104
+ }, void 0, false, {
105
+ fileName: "src/views/Version/Restore/index.tsx",
106
+ lineNumber: 118,
107
+ columnNumber: 7
108
+ }, this),
109
+ /*#__PURE__*/ _jsxDEV(ConfirmationModal, {
110
+ body: restoreMessage,
111
+ confirmingLabel: t('version:restoring'),
112
+ heading: t('version:confirmVersionRestoration'),
113
+ modalSlug: modalSlug,
114
+ onConfirm: handleRestore
115
+ }, void 0, false, {
116
+ fileName: "src/views/Version/Restore/index.tsx",
117
+ lineNumber: 141,
118
+ columnNumber: 7
119
+ }, this)
120
+ ]
121
+ }, void 0, true, {
122
+ fileName: "src/views/Version/Restore/index.tsx",
123
+ lineNumber: 117,
124
+ columnNumber: 5
125
+ }, this);
86
126
  };
87
127
 
88
128
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/views/Version/Restore/index.tsx"],"sourcesContent":["'use client'\n\nimport type { ClientCollectionConfig, ClientGlobalConfig, SanitizedCollectionConfig } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport {\n Button,\n ConfirmationModal,\n PopupList,\n toast,\n useConfig,\n useModal,\n useRouteTransition,\n useTranslation,\n} from '@payloadcms/ui'\nimport { requests } from '@payloadcms/ui/shared'\nimport { useRouter } from 'next/navigation.js'\nimport { formatAdminURL } from 'payload/shared'\n\nimport './index.scss'\n\nimport React, { Fragment, useCallback, useState } from 'react'\n\nconst baseClass = 'restore-version'\nconst modalSlug = 'restore-version'\n\ntype Props = {\n className?: string\n collectionConfig?: ClientCollectionConfig\n globalConfig?: ClientGlobalConfig\n label: SanitizedCollectionConfig['labels']['singular']\n originalDocID: number | string\n status?: string\n versionDateFormatted: string\n versionID: string\n}\n\nexport const Restore: React.FC<Props> = ({\n className,\n collectionConfig,\n globalConfig,\n label,\n originalDocID,\n status,\n versionDateFormatted,\n versionID,\n}) => {\n const {\n config: {\n routes: { admin: adminRoute, api: apiRoute },\n serverURL,\n },\n } = useConfig()\n\n const { toggleModal } = useModal()\n const router = useRouter()\n const { i18n, t } = useTranslation()\n const [draft, setDraft] = useState(false)\n const { startRouteTransition } = useRouteTransition()\n\n const restoreMessage = t('version:aboutToRestoreGlobal', {\n label: getTranslation(label, i18n),\n versionDate: versionDateFormatted,\n })\n\n const canRestoreAsDraft = status !== 'draft' && collectionConfig?.versions?.drafts\n\n const handleRestore = useCallback(async () => {\n let fetchURL = `${serverURL}${apiRoute}`\n let redirectURL: string\n\n if (collectionConfig) {\n fetchURL = `${fetchURL}/${collectionConfig.slug}/versions/${versionID}?draft=${draft}`\n redirectURL = formatAdminURL({\n adminRoute,\n path: `/collections/${collectionConfig.slug}/${originalDocID}`,\n })\n }\n\n if (globalConfig) {\n fetchURL = `${fetchURL}/globals/${globalConfig.slug}/versions/${versionID}?draft=${draft}`\n redirectURL = formatAdminURL({\n adminRoute,\n path: `/globals/${globalConfig.slug}`,\n })\n }\n\n const res = await requests.post(fetchURL, {\n headers: {\n 'Accept-Language': i18n.language,\n },\n })\n\n if (res.status === 200) {\n const json = await res.json()\n toast.success(json.message)\n return startRouteTransition(() => router.push(redirectURL))\n } else {\n toast.error(t('version:problemRestoringVersion'))\n }\n }, [\n serverURL,\n apiRoute,\n collectionConfig,\n globalConfig,\n i18n.language,\n versionID,\n draft,\n adminRoute,\n originalDocID,\n startRouteTransition,\n router,\n t,\n ])\n\n return (\n <Fragment>\n <div className={[baseClass, className].filter(Boolean).join(' ')}>\n <Button\n buttonStyle=\"primary\"\n className={[canRestoreAsDraft && `${baseClass}__restore-as-draft-button`]\n .filter(Boolean)\n .join(' ')}\n onClick={() => toggleModal(modalSlug)}\n size=\"xsmall\"\n SubMenuPopupContent={\n canRestoreAsDraft\n ? () => (\n <PopupList.ButtonGroup>\n <PopupList.Button onClick={() => [setDraft(true), toggleModal(modalSlug)]}>\n {t('version:restoreAsDraft')}\n </PopupList.Button>\n </PopupList.ButtonGroup>\n )\n : null\n }\n >\n {t('version:restoreThisVersion')}\n </Button>\n </div>\n <ConfirmationModal\n body={restoreMessage}\n confirmingLabel={t('version:restoring')}\n heading={t('version:confirmVersionRestoration')}\n modalSlug={modalSlug}\n onConfirm={handleRestore}\n />\n </Fragment>\n )\n}\n"],"names":["getTranslation","Button","ConfirmationModal","PopupList","toast","useConfig","useModal","useRouteTransition","useTranslation","requests","useRouter","formatAdminURL","Fragment","useCallback","useState","baseClass","modalSlug","Restore","className","collectionConfig","globalConfig","label","originalDocID","status","versionDateFormatted","versionID","config","routes","admin","adminRoute","api","apiRoute","serverURL","toggleModal","router","i18n","t","draft","setDraft","startRouteTransition","restoreMessage","versionDate","canRestoreAsDraft","versions","drafts","handleRestore","fetchURL","redirectURL","slug","path","res","post","headers","language","json","success","message","push","error","div","filter","Boolean","join","buttonStyle","onClick","size","SubMenuPopupContent","ButtonGroup","body","confirmingLabel","heading","onConfirm"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../src/views/Version/Restore/index.tsx"],"sourcesContent":["'use client'\n\nimport type { ClientCollectionConfig, ClientGlobalConfig, SanitizedCollectionConfig } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport {\n Button,\n ConfirmationModal,\n PopupList,\n toast,\n useConfig,\n useModal,\n useRouteTransition,\n useTranslation,\n} from '@payloadcms/ui'\nimport { requests } from '@payloadcms/ui/shared'\nimport { useRouter } from 'next/navigation.js'\nimport { formatAdminURL } from 'payload/shared'\n\nimport './index.scss'\n\nimport React, { Fragment, useCallback, useState } from 'react'\n\nconst baseClass = 'restore-version'\nconst modalSlug = 'restore-version'\n\ntype Props = {\n className?: string\n collectionConfig?: ClientCollectionConfig\n globalConfig?: ClientGlobalConfig\n label: SanitizedCollectionConfig['labels']['singular']\n originalDocID: number | string\n status?: string\n versionDateFormatted: string\n versionID: string\n}\n\nexport const Restore: React.FC<Props> = ({\n className,\n collectionConfig,\n globalConfig,\n label,\n originalDocID,\n status,\n versionDateFormatted,\n versionID,\n}) => {\n const {\n config: {\n routes: { admin: adminRoute, api: apiRoute },\n serverURL,\n },\n } = useConfig()\n\n const { toggleModal } = useModal()\n const router = useRouter()\n const { i18n, t } = useTranslation()\n const [draft, setDraft] = useState(false)\n const { startRouteTransition } = useRouteTransition()\n\n const restoreMessage = t('version:aboutToRestoreGlobal', {\n label: getTranslation(label, i18n),\n versionDate: versionDateFormatted,\n })\n\n const canRestoreAsDraft = status !== 'draft' && collectionConfig?.versions?.drafts\n\n const handleRestore = useCallback(async () => {\n let fetchURL = `${serverURL}${apiRoute}`\n let redirectURL: string\n\n if (collectionConfig) {\n fetchURL = `${fetchURL}/${collectionConfig.slug}/versions/${versionID}?draft=${draft}`\n redirectURL = formatAdminURL({\n adminRoute,\n path: `/collections/${collectionConfig.slug}/${originalDocID}`,\n })\n }\n\n if (globalConfig) {\n fetchURL = `${fetchURL}/globals/${globalConfig.slug}/versions/${versionID}?draft=${draft}`\n redirectURL = formatAdminURL({\n adminRoute,\n path: `/globals/${globalConfig.slug}`,\n })\n }\n\n const res = await requests.post(fetchURL, {\n headers: {\n 'Accept-Language': i18n.language,\n },\n })\n\n if (res.status === 200) {\n const json = await res.json()\n toast.success(json.message)\n return startRouteTransition(() => router.push(redirectURL))\n } else {\n toast.error(t('version:problemRestoringVersion'))\n }\n }, [\n serverURL,\n apiRoute,\n collectionConfig,\n globalConfig,\n i18n.language,\n versionID,\n draft,\n adminRoute,\n originalDocID,\n startRouteTransition,\n router,\n t,\n ])\n\n return (\n <Fragment>\n <div className={[baseClass, className].filter(Boolean).join(' ')}>\n <Button\n buttonStyle=\"primary\"\n className={[canRestoreAsDraft && `${baseClass}__restore-as-draft-button`]\n .filter(Boolean)\n .join(' ')}\n onClick={() => toggleModal(modalSlug)}\n size=\"xsmall\"\n SubMenuPopupContent={\n canRestoreAsDraft\n ? () => (\n <PopupList.ButtonGroup>\n <PopupList.Button onClick={() => [setDraft(true), toggleModal(modalSlug)]}>\n {t('version:restoreAsDraft')}\n </PopupList.Button>\n </PopupList.ButtonGroup>\n )\n : null\n }\n >\n {t('version:restoreThisVersion')}\n </Button>\n </div>\n <ConfirmationModal\n body={restoreMessage}\n confirmingLabel={t('version:restoring')}\n heading={t('version:confirmVersionRestoration')}\n modalSlug={modalSlug}\n onConfirm={handleRestore}\n />\n </Fragment>\n )\n}\n"],"names":["getTranslation","Button","ConfirmationModal","PopupList","toast","useConfig","useModal","useRouteTransition","useTranslation","requests","useRouter","formatAdminURL","React","Fragment","useCallback","useState","baseClass","modalSlug","Restore","className","collectionConfig","globalConfig","label","originalDocID","status","versionDateFormatted","versionID","config","routes","admin","adminRoute","api","apiRoute","serverURL","toggleModal","router","i18n","t","draft","setDraft","startRouteTransition","restoreMessage","versionDate","canRestoreAsDraft","versions","drafts","handleRestore","fetchURL","redirectURL","slug","path","res","post","headers","language","json","success","message","push","error","div","filter","Boolean","join","buttonStyle","onClick","size","SubMenuPopupContent","ButtonGroup","body","confirmingLabel","heading","onConfirm"],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  'use client';
2
+ import { jsxDEV as _jsxDEV } from "react/jsx-dev-runtime";
2
3
  import { useConfig, useModal, useRouteTransition, useTranslation } from '@payloadcms/ui';
3
4
  import { formatDate } from '@payloadcms/ui/shared';
4
5
  import { usePathname, useRouter, useSearchParams } from 'next/navigation.js';
@@ -10,22 +11,29 @@ export const VersionDrawerCreatedAtCell = ({ rowData: { id, updatedAt } = {} })=
10
11
  const searchParams = useSearchParams();
11
12
  const { startRouteTransition } = useRouteTransition();
12
13
  const { i18n } = useTranslation();
13
- return <button className="created-at-cell" onClick={()=>{
14
- closeAllModals();
15
- const current = new URLSearchParams(Array.from(searchParams.entries()));
16
- if (id) {
17
- current.set('versionFrom', String(id));
18
- }
19
- const search = current.toString();
20
- const query = search ? `?${search}` : '';
21
- startRouteTransition(()=>router.push(`${pathname}${query}`));
22
- }} type="button">
23
- {formatDate({
24
- date: updatedAt,
25
- i18n,
26
- pattern: dateFormat
27
- })}
28
- </button>;
14
+ return /*#__PURE__*/ _jsxDEV("button", {
15
+ className: "created-at-cell",
16
+ onClick: ()=>{
17
+ closeAllModals();
18
+ const current = new URLSearchParams(Array.from(searchParams.entries()));
19
+ if (id) {
20
+ current.set('versionFrom', String(id));
21
+ }
22
+ const search = current.toString();
23
+ const query = search ? `?${search}` : '';
24
+ startRouteTransition(()=>router.push(`${pathname}${query}`));
25
+ },
26
+ type: "button",
27
+ children: formatDate({
28
+ date: updatedAt,
29
+ i18n,
30
+ pattern: dateFormat
31
+ })
32
+ }, void 0, false, {
33
+ fileName: "src/views/Version/SelectComparison/VersionDrawer/CreatedAtCell.tsx",
34
+ lineNumber: 25,
35
+ columnNumber: 5
36
+ }, this);
29
37
  };
30
38
 
31
39
  //# sourceMappingURL=CreatedAtCell.js.map