@strapi/content-manager 0.0.0-experimental.826f263c58b6886b849d3f03b81f7a530bc51c91 → 0.0.0-experimental.82afe56cecefd0078d534e25909834ecf5fdd404

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 (231) hide show
  1. package/LICENSE +18 -3
  2. package/dist/_chunks/CardDragPreview-C0QyJgRA.js.map +1 -1
  3. package/dist/_chunks/CardDragPreview-DOxamsuj.mjs.map +1 -1
  4. package/dist/_chunks/{ComponentConfigurationPage-DJcn1DrO.js → ComponentConfigurationPage-DMxUlNOo.js} +5 -6
  5. package/dist/_chunks/{ComponentConfigurationPage-DJcn1DrO.js.map → ComponentConfigurationPage-DMxUlNOo.js.map} +1 -1
  6. package/dist/_chunks/{ComponentConfigurationPage-CR5XdR33.mjs → ComponentConfigurationPage-baEkO-OV.mjs} +4 -4
  7. package/dist/_chunks/{ComponentConfigurationPage-CR5XdR33.mjs.map → ComponentConfigurationPage-baEkO-OV.mjs.map} +1 -1
  8. package/dist/_chunks/{ComponentIcon-BXdiCGQp.js → ComponentIcon-CRbtQEUV.js} +2 -3
  9. package/dist/_chunks/{ComponentIcon-BXdiCGQp.js.map → ComponentIcon-CRbtQEUV.js.map} +1 -1
  10. package/dist/_chunks/ComponentIcon-u4bIXTFY.mjs.map +1 -1
  11. package/dist/_chunks/{EditConfigurationPage-tDtWj7R2.js → EditConfigurationPage-CXxV7mKn.js} +5 -6
  12. package/dist/_chunks/{EditConfigurationPage-tDtWj7R2.js.map → EditConfigurationPage-CXxV7mKn.js.map} +1 -1
  13. package/dist/_chunks/{EditConfigurationPage-DmCIb4kD.mjs → EditConfigurationPage-YR8-4VCS.mjs} +4 -4
  14. package/dist/_chunks/{EditConfigurationPage-DmCIb4kD.mjs.map → EditConfigurationPage-YR8-4VCS.mjs.map} +1 -1
  15. package/dist/_chunks/{EditViewPage-CoQEnFlC.js → EditViewPage-BfR6jAR6.js} +71 -84
  16. package/dist/_chunks/EditViewPage-BfR6jAR6.js.map +1 -0
  17. package/dist/_chunks/EditViewPage-DFF7c27p.mjs +191 -0
  18. package/dist/_chunks/EditViewPage-DFF7c27p.mjs.map +1 -0
  19. package/dist/_chunks/FieldTypeIcon-CMlNO8PE.mjs.map +1 -1
  20. package/dist/_chunks/FieldTypeIcon-Dnwq_IRF.js.map +1 -1
  21. package/dist/_chunks/{Form-Bpig5rch.js → Form-CjcMRP5A.js} +55 -38
  22. package/dist/_chunks/Form-CjcMRP5A.js.map +1 -0
  23. package/dist/_chunks/{Form-Dxmihyw8.mjs → Form-MSOSfGGN.mjs} +55 -37
  24. package/dist/_chunks/Form-MSOSfGGN.mjs.map +1 -0
  25. package/dist/_chunks/{History-BfX6XmZK.js → History-BgZ7gVuF.js} +208 -138
  26. package/dist/_chunks/History-BgZ7gVuF.js.map +1 -0
  27. package/dist/_chunks/{History-BZP8n7KT.mjs → History-WOQNVho-.mjs} +201 -130
  28. package/dist/_chunks/History-WOQNVho-.mjs.map +1 -0
  29. package/dist/_chunks/{Field-Cz_J9551.mjs → Input-BkKwZ6Qt.mjs} +1757 -1383
  30. package/dist/_chunks/Input-BkKwZ6Qt.mjs.map +1 -0
  31. package/dist/_chunks/{Field-ZdrmmQ4Y.js → Input-BwOibhc3.js} +1748 -1374
  32. package/dist/_chunks/Input-BwOibhc3.js.map +1 -0
  33. package/dist/_chunks/{ListConfigurationPage-DxKuVkKz.mjs → ListConfigurationPage-BeXfr6uW.mjs} +63 -52
  34. package/dist/_chunks/ListConfigurationPage-BeXfr6uW.mjs.map +1 -0
  35. package/dist/_chunks/{ListConfigurationPage-B3CXj8PY.js → ListConfigurationPage-DnJ3nbwL.js} +62 -51
  36. package/dist/_chunks/ListConfigurationPage-DnJ3nbwL.js.map +1 -0
  37. package/dist/_chunks/{ListViewPage-Bk9VO__I.js → ListViewPage-CJFDudKl.js} +155 -129
  38. package/dist/_chunks/ListViewPage-CJFDudKl.js.map +1 -0
  39. package/dist/_chunks/{ListViewPage-D5D3tVPq.mjs → ListViewPage-VK2v44Q1.mjs} +156 -129
  40. package/dist/_chunks/ListViewPage-VK2v44Q1.mjs.map +1 -0
  41. package/dist/_chunks/{NoContentTypePage-DnMeuQCj.mjs → NoContentTypePage-T8ttty6K.mjs} +2 -2
  42. package/dist/_chunks/{NoContentTypePage-DnMeuQCj.mjs.map → NoContentTypePage-T8ttty6K.mjs.map} +1 -1
  43. package/dist/_chunks/{NoContentTypePage-DsB2F7Z1.js → NoContentTypePage-en2PwWgI.js} +2 -2
  44. package/dist/_chunks/{NoContentTypePage-DsB2F7Z1.js.map → NoContentTypePage-en2PwWgI.js.map} +1 -1
  45. package/dist/_chunks/{NoPermissionsPage-BQDM64_b.js → NoPermissionsPage-CcjILry3.js} +2 -2
  46. package/dist/_chunks/{NoPermissionsPage-BQDM64_b.js.map → NoPermissionsPage-CcjILry3.js.map} +1 -1
  47. package/dist/_chunks/{NoPermissionsPage-OyoME_Tf.mjs → NoPermissionsPage-CokBHhhy.mjs} +2 -2
  48. package/dist/_chunks/{NoPermissionsPage-OyoME_Tf.mjs.map → NoPermissionsPage-CokBHhhy.mjs.map} +1 -1
  49. package/dist/_chunks/Preview-BF81YhRj.mjs +287 -0
  50. package/dist/_chunks/Preview-BF81YhRj.mjs.map +1 -0
  51. package/dist/_chunks/Preview-DgzAuzWQ.js +305 -0
  52. package/dist/_chunks/Preview-DgzAuzWQ.js.map +1 -0
  53. package/dist/_chunks/{Relations-B6B3A3mb.js → Relations-1O-JcM4t.js} +76 -43
  54. package/dist/_chunks/Relations-1O-JcM4t.js.map +1 -0
  55. package/dist/_chunks/{Relations-BOYZmuWy.mjs → Relations-BncdhGCd.mjs} +76 -42
  56. package/dist/_chunks/Relations-BncdhGCd.mjs.map +1 -0
  57. package/dist/_chunks/{en-Dzv55oQw.mjs → en-BZaUty0m.mjs} +41 -18
  58. package/dist/_chunks/{en-Dzv55oQw.mjs.map → en-BZaUty0m.mjs.map} +1 -1
  59. package/dist/_chunks/{en-BN1bvFK7.js → en-CzCnBk4S.js} +41 -18
  60. package/dist/_chunks/{en-BN1bvFK7.js.map → en-CzCnBk4S.js.map} +1 -1
  61. package/dist/_chunks/{es-EUonQTon.js → es-9K52xZIr.js} +2 -2
  62. package/dist/_chunks/{ja-CcFe8diO.js.map → es-9K52xZIr.js.map} +1 -1
  63. package/dist/_chunks/{es-CeXiYflN.mjs → es-D34tqjMw.mjs} +2 -2
  64. package/dist/_chunks/{es-CeXiYflN.mjs.map → es-D34tqjMw.mjs.map} +1 -1
  65. package/dist/_chunks/{fr-CD9VFbPM.mjs → fr--pg5jUbt.mjs} +13 -3
  66. package/dist/_chunks/{fr-CD9VFbPM.mjs.map → fr--pg5jUbt.mjs.map} +1 -1
  67. package/dist/_chunks/{fr-B7kGGg3E.js → fr-B2Kyv8Z9.js} +13 -3
  68. package/dist/_chunks/{fr-B7kGGg3E.js.map → fr-B2Kyv8Z9.js.map} +1 -1
  69. package/dist/_chunks/hooks-BAaaKPS_.js.map +1 -1
  70. package/dist/_chunks/{index-VHviNMeW.mjs → index-DiluOUp6.mjs} +1469 -966
  71. package/dist/_chunks/index-DiluOUp6.mjs.map +1 -0
  72. package/dist/_chunks/{index-DzN3kBgx.js → index-EXJvmn4t.js} +1439 -936
  73. package/dist/_chunks/index-EXJvmn4t.js.map +1 -0
  74. package/dist/_chunks/{ja-CcFe8diO.js → ja-7sfIbjxE.js} +2 -2
  75. package/dist/_chunks/{es-EUonQTon.js.map → ja-7sfIbjxE.js.map} +1 -1
  76. package/dist/_chunks/{ja-CtsUxOvk.mjs → ja-BHqhDq4V.mjs} +2 -2
  77. package/dist/_chunks/{ja-CtsUxOvk.mjs.map → ja-BHqhDq4V.mjs.map} +1 -1
  78. package/dist/_chunks/{layout-b91XRlD2.js → layout-4TbKVax8.js} +41 -24
  79. package/dist/_chunks/layout-4TbKVax8.js.map +1 -0
  80. package/dist/_chunks/{layout-CPn1PM6x.mjs → layout-mSwsYzxv.mjs} +42 -24
  81. package/dist/_chunks/layout-mSwsYzxv.mjs.map +1 -0
  82. package/dist/_chunks/{objects-gigeqt7s.js → objects-BcXOv6_9.js} +2 -4
  83. package/dist/_chunks/{objects-gigeqt7s.js.map → objects-BcXOv6_9.js.map} +1 -1
  84. package/dist/_chunks/{objects-mKMAmfec.mjs → objects-D6yBsdmx.mjs} +2 -4
  85. package/dist/_chunks/{objects-mKMAmfec.mjs.map → objects-D6yBsdmx.mjs.map} +1 -1
  86. package/dist/_chunks/{relations-BsqxS6tR.mjs → relations--YOvQBqv.mjs} +6 -7
  87. package/dist/_chunks/relations--YOvQBqv.mjs.map +1 -0
  88. package/dist/_chunks/{relations-CA7IYmcP.js → relations-Ai6Izh7h.js} +6 -7
  89. package/dist/_chunks/relations-Ai6Izh7h.js.map +1 -0
  90. package/dist/_chunks/{useDragAndDrop-J0TUUbR6.js → useDragAndDrop-BMtgCYzL.js} +5 -9
  91. package/dist/_chunks/{useDragAndDrop-J0TUUbR6.js.map → useDragAndDrop-BMtgCYzL.js.map} +1 -1
  92. package/dist/_chunks/{useDragAndDrop-DdHgKsqq.mjs → useDragAndDrop-DJ6jqvZN.mjs} +4 -7
  93. package/dist/_chunks/{useDragAndDrop-DdHgKsqq.mjs.map → useDragAndDrop-DJ6jqvZN.mjs.map} +1 -1
  94. package/dist/_chunks/usePrev-CZGy2Vjf.mjs +29 -0
  95. package/dist/_chunks/usePrev-CZGy2Vjf.mjs.map +1 -0
  96. package/dist/_chunks/{usePrev-B9w_-eYc.js → usePrev-D5J_2fEu.js} +14 -1
  97. package/dist/_chunks/usePrev-D5J_2fEu.js.map +1 -0
  98. package/dist/admin/index.js +3 -1
  99. package/dist/admin/index.js.map +1 -1
  100. package/dist/admin/index.mjs +10 -8
  101. package/dist/admin/src/content-manager.d.ts +3 -2
  102. package/dist/admin/src/exports.d.ts +2 -1
  103. package/dist/admin/src/history/components/VersionInputRenderer.d.ts +1 -1
  104. package/dist/admin/src/history/index.d.ts +3 -0
  105. package/dist/admin/src/history/services/historyVersion.d.ts +1 -1
  106. package/dist/admin/src/hooks/useDocument.d.ts +49 -1
  107. package/dist/admin/src/index.d.ts +1 -0
  108. package/dist/admin/src/pages/EditView/EditViewPage.d.ts +9 -1
  109. package/dist/admin/src/pages/EditView/components/DocumentActions.d.ts +9 -4
  110. package/dist/admin/src/pages/EditView/components/DocumentStatus.d.ts +3 -3
  111. package/dist/admin/src/pages/EditView/components/FormInputs/BlocksInput/Blocks/Code.d.ts +7 -0
  112. package/dist/admin/src/pages/EditView/components/FormInputs/BlocksInput/Blocks/utils/prismLanguages.d.ts +49 -0
  113. package/dist/admin/src/pages/EditView/components/FormInputs/BlocksInput/utils/constants.d.ts +5 -0
  114. package/dist/admin/src/pages/EditView/components/FormInputs/DynamicZone/DynamicComponent.d.ts +4 -1
  115. package/dist/admin/src/pages/EditView/components/FormInputs/DynamicZone/Field.d.ts +4 -1
  116. package/dist/admin/src/pages/EditView/components/FormInputs/Relations.d.ts +20 -0
  117. package/dist/admin/src/pages/EditView/components/FormInputs/Wysiwyg/EditorLayout.d.ts +2 -2
  118. package/dist/admin/src/pages/EditView/components/FormInputs/Wysiwyg/WysiwygFooter.d.ts +2 -2
  119. package/dist/admin/src/pages/EditView/components/FormInputs/Wysiwyg/WysiwygStyles.d.ts +6 -58
  120. package/dist/admin/src/pages/EditView/components/FormLayout.d.ts +27 -0
  121. package/dist/admin/src/pages/EditView/components/Header.d.ts +11 -11
  122. package/dist/admin/src/pages/EditView/utils/data.d.ts +1 -0
  123. package/dist/admin/src/pages/ListView/components/BulkActions/Actions.d.ts +3 -30
  124. package/dist/admin/src/pages/ListView/components/BulkActions/ConfirmBulkActionDialog.d.ts +2 -2
  125. package/dist/admin/src/preview/components/PreviewContent.d.ts +2 -0
  126. package/dist/admin/src/preview/components/PreviewHeader.d.ts +2 -0
  127. package/dist/admin/src/preview/components/PreviewSidePanel.d.ts +3 -0
  128. package/dist/admin/src/preview/index.d.ts +4 -0
  129. package/dist/admin/src/preview/pages/Preview.d.ts +11 -0
  130. package/dist/admin/src/preview/routes.d.ts +3 -0
  131. package/dist/admin/src/preview/services/preview.d.ts +3 -0
  132. package/dist/admin/src/router.d.ts +1 -1
  133. package/dist/admin/src/services/api.d.ts +1 -1
  134. package/dist/admin/src/services/components.d.ts +2 -2
  135. package/dist/admin/src/services/contentTypes.d.ts +3 -3
  136. package/dist/admin/src/services/documents.d.ts +19 -20
  137. package/dist/admin/src/services/init.d.ts +1 -1
  138. package/dist/admin/src/services/relations.d.ts +2 -2
  139. package/dist/admin/src/services/uid.d.ts +3 -3
  140. package/dist/admin/src/utils/validation.d.ts +4 -1
  141. package/dist/server/index.js +765 -434
  142. package/dist/server/index.js.map +1 -1
  143. package/dist/server/index.mjs +766 -434
  144. package/dist/server/index.mjs.map +1 -1
  145. package/dist/server/src/bootstrap.d.ts.map +1 -1
  146. package/dist/server/src/controllers/collection-types.d.ts.map +1 -1
  147. package/dist/server/src/controllers/index.d.ts.map +1 -1
  148. package/dist/server/src/controllers/relations.d.ts.map +1 -1
  149. package/dist/server/src/controllers/uid.d.ts.map +1 -1
  150. package/dist/server/src/controllers/utils/metadata.d.ts +16 -1
  151. package/dist/server/src/controllers/utils/metadata.d.ts.map +1 -1
  152. package/dist/server/src/controllers/validation/dimensions.d.ts +4 -2
  153. package/dist/server/src/controllers/validation/dimensions.d.ts.map +1 -1
  154. package/dist/server/src/history/controllers/history-version.d.ts +1 -1
  155. package/dist/server/src/history/controllers/history-version.d.ts.map +1 -1
  156. package/dist/server/src/history/services/history.d.ts +3 -3
  157. package/dist/server/src/history/services/history.d.ts.map +1 -1
  158. package/dist/server/src/history/services/lifecycles.d.ts.map +1 -1
  159. package/dist/server/src/history/services/utils.d.ts +8 -12
  160. package/dist/server/src/history/services/utils.d.ts.map +1 -1
  161. package/dist/server/src/index.d.ts +7 -6
  162. package/dist/server/src/index.d.ts.map +1 -1
  163. package/dist/server/src/policies/hasPermissions.d.ts.map +1 -1
  164. package/dist/server/src/preview/controllers/index.d.ts +2 -0
  165. package/dist/server/src/preview/controllers/index.d.ts.map +1 -0
  166. package/dist/server/src/preview/controllers/preview.d.ts +13 -0
  167. package/dist/server/src/preview/controllers/preview.d.ts.map +1 -0
  168. package/dist/server/src/preview/controllers/validation/preview.d.ts +6 -0
  169. package/dist/server/src/preview/controllers/validation/preview.d.ts.map +1 -0
  170. package/dist/server/src/preview/index.d.ts +4 -0
  171. package/dist/server/src/preview/index.d.ts.map +1 -0
  172. package/dist/server/src/preview/routes/index.d.ts +8 -0
  173. package/dist/server/src/preview/routes/index.d.ts.map +1 -0
  174. package/dist/server/src/preview/routes/preview.d.ts +4 -0
  175. package/dist/server/src/preview/routes/preview.d.ts.map +1 -0
  176. package/dist/server/src/preview/services/index.d.ts +16 -0
  177. package/dist/server/src/preview/services/index.d.ts.map +1 -0
  178. package/dist/server/src/preview/services/preview-config.d.ts +32 -0
  179. package/dist/server/src/preview/services/preview-config.d.ts.map +1 -0
  180. package/dist/server/src/preview/services/preview.d.ts +12 -0
  181. package/dist/server/src/preview/services/preview.d.ts.map +1 -0
  182. package/dist/server/src/preview/utils.d.ts +19 -0
  183. package/dist/server/src/preview/utils.d.ts.map +1 -0
  184. package/dist/server/src/register.d.ts.map +1 -1
  185. package/dist/server/src/routes/index.d.ts.map +1 -1
  186. package/dist/server/src/services/document-manager.d.ts.map +1 -1
  187. package/dist/server/src/services/document-metadata.d.ts +12 -10
  188. package/dist/server/src/services/document-metadata.d.ts.map +1 -1
  189. package/dist/server/src/services/index.d.ts +7 -6
  190. package/dist/server/src/services/index.d.ts.map +1 -1
  191. package/dist/server/src/services/permission-checker.d.ts.map +1 -1
  192. package/dist/server/src/services/utils/populate.d.ts +2 -2
  193. package/dist/server/src/services/utils/populate.d.ts.map +1 -1
  194. package/dist/server/src/utils/index.d.ts +2 -0
  195. package/dist/server/src/utils/index.d.ts.map +1 -1
  196. package/dist/shared/contracts/collection-types.d.ts +3 -1
  197. package/dist/shared/contracts/collection-types.d.ts.map +1 -1
  198. package/dist/shared/contracts/index.d.ts +1 -0
  199. package/dist/shared/contracts/index.d.ts.map +1 -1
  200. package/dist/shared/contracts/preview.d.ts +27 -0
  201. package/dist/shared/contracts/preview.d.ts.map +1 -0
  202. package/dist/shared/index.js +4 -0
  203. package/dist/shared/index.js.map +1 -1
  204. package/dist/shared/index.mjs +4 -0
  205. package/dist/shared/index.mjs.map +1 -1
  206. package/package.json +17 -16
  207. package/dist/_chunks/EditViewPage-CoQEnFlC.js.map +0 -1
  208. package/dist/_chunks/EditViewPage-DvaV7U9b.mjs +0 -203
  209. package/dist/_chunks/EditViewPage-DvaV7U9b.mjs.map +0 -1
  210. package/dist/_chunks/Field-Cz_J9551.mjs.map +0 -1
  211. package/dist/_chunks/Field-ZdrmmQ4Y.js.map +0 -1
  212. package/dist/_chunks/Form-Bpig5rch.js.map +0 -1
  213. package/dist/_chunks/Form-Dxmihyw8.mjs.map +0 -1
  214. package/dist/_chunks/History-BZP8n7KT.mjs.map +0 -1
  215. package/dist/_chunks/History-BfX6XmZK.js.map +0 -1
  216. package/dist/_chunks/ListConfigurationPage-B3CXj8PY.js.map +0 -1
  217. package/dist/_chunks/ListConfigurationPage-DxKuVkKz.mjs.map +0 -1
  218. package/dist/_chunks/ListViewPage-Bk9VO__I.js.map +0 -1
  219. package/dist/_chunks/ListViewPage-D5D3tVPq.mjs.map +0 -1
  220. package/dist/_chunks/Relations-B6B3A3mb.js.map +0 -1
  221. package/dist/_chunks/Relations-BOYZmuWy.mjs.map +0 -1
  222. package/dist/_chunks/index-DzN3kBgx.js.map +0 -1
  223. package/dist/_chunks/index-VHviNMeW.mjs.map +0 -1
  224. package/dist/_chunks/layout-CPn1PM6x.mjs.map +0 -1
  225. package/dist/_chunks/layout-b91XRlD2.js.map +0 -1
  226. package/dist/_chunks/relations-BsqxS6tR.mjs.map +0 -1
  227. package/dist/_chunks/relations-CA7IYmcP.js.map +0 -1
  228. package/dist/_chunks/usePrev-B9w_-eYc.js.map +0 -1
  229. package/dist/_chunks/usePrev-DH6iah0A.mjs +0 -16
  230. package/dist/_chunks/usePrev-DH6iah0A.mjs.map +0 -1
  231. package/strapi-server.js +0 -3
@@ -1,19 +1,19 @@
1
1
  import { jsx, jsxs, Fragment } from "react/jsx-runtime";
2
2
  import * as React from "react";
3
- import { useForm, useStrapiApp, InputRenderer, useField, Form, Layouts, useNotification, useQueryParams, useRBAC, ConfirmDialog, createContext, Page } from "@strapi/admin/strapi-admin";
4
- import { Alert, Link, Flex, Field, Box, Tooltip, Divider, Typography, Grid, GridItem, Button, Portal, FocusTrap, Main } from "@strapi/design-system";
3
+ import { useForm, useStrapiApp, InputRenderer, useField, Form, Layouts, useTracking, useNotification, useQueryParams, useRBAC, ConfirmDialog, createContext, Page } from "@strapi/admin/strapi-admin";
4
+ import { Alert, Link, Flex, Field, Box, Tooltip, Typography, Divider, Grid, Dialog, Button, Portal, FocusTrap, Main } from "@strapi/design-system";
5
5
  import { stringify } from "qs";
6
6
  import { useIntl } from "react-intl";
7
7
  import { NavLink, useNavigate, useParams, Link as Link$1, Navigate } from "react-router-dom";
8
- import { b as useDoc, e as useDocumentRBAC, m as useDocLayout, C as COLLECTION_TYPES, D as DocumentStatus, d as contentManagerApi, j as PERMISSIONS, t as getDisplayName, R as RelativeTime, k as DocumentRBAC, J as useDocument, f as useDocumentLayout, o as useGetContentTypeConfigurationQuery, c as buildValidParams } from "./index-VHviNMeW.mjs";
8
+ import { c as useDoc, f as useDocumentRBAC, m as useDocLayout, C as COLLECTION_TYPES, D as DocumentStatus, K as removeFieldsThatDontExistOnSchema, L as prepareTempKeys, e as contentManagerApi, k as PERMISSIONS, v as getDisplayName, R as RelativeTime, l as DocumentRBAC, M as useDocument, h as useDocumentLayout, p as useGetContentTypeConfigurationQuery, d as buildValidParams } from "./index-DiluOUp6.mjs";
9
9
  import pipe from "lodash/fp/pipe";
10
10
  import { u as useTypedSelector } from "./hooks-E5u1mcgM.mjs";
11
- import { a as useDynamicZone, u as useLazyComponents, b as useFieldHint, N as NotAllowedInput, d as MemoizedUIDInput, e as MemoizedWysiwyg, D as DynamicZone, f as MemoizedComponentInput, g as MemoizedBlocksInput, r as removeFieldsThatDontExistOnSchema, p as prepareTempKeys } from "./Field-Cz_J9551.mjs";
12
11
  import { ArrowLeft, WarningCircle } from "@strapi/icons";
13
12
  import { styled } from "styled-components";
14
- import { g as getRelationLabel } from "./relations-BsqxS6tR.mjs";
13
+ import { a as useDynamicZone, u as useLazyComponents, b as useFieldHint, N as NotAllowedInput, M as MemoizedUIDInput, c as MemoizedWysiwyg, D as DynamicZone, d as MemoizedComponentInput, e as MemoizedBlocksInput } from "./Input-BkKwZ6Qt.mjs";
14
+ import { g as getRelationLabel } from "./relations--YOvQBqv.mjs";
15
15
  const StyledAlert = styled(Alert).attrs({ closeLabel: "Close", onClose: () => {
16
- } })`
16
+ }, shadow: "none" })`
17
17
  button {
18
18
  display: none;
19
19
  }
@@ -31,13 +31,13 @@ const LinkEllipsis = styled(Link)`
31
31
  const CustomRelationInput = (props) => {
32
32
  const { formatMessage } = useIntl();
33
33
  const field = useField(props.name);
34
- const formattedFieldValue = Array.isArray(field.value) ? {
35
- results: field.value,
36
- meta: { missingCount: 0 }
37
- } : field.value;
34
+ let formattedFieldValue;
35
+ if (field) {
36
+ formattedFieldValue = Array.isArray(field.value) ? { results: field.value, meta: { missingCount: 0 } } : field.value;
37
+ }
38
38
  if (!formattedFieldValue || formattedFieldValue.results.length === 0 && formattedFieldValue.meta.missingCount === 0) {
39
39
  return /* @__PURE__ */ jsxs(Fragment, { children: [
40
- /* @__PURE__ */ jsx(Field.Label, { children: props.label }),
40
+ /* @__PURE__ */ jsx(Field.Label, { action: props.labelAction, children: props.label }),
41
41
  /* @__PURE__ */ jsx(Box, { marginTop: 1, children: /* @__PURE__ */ jsx(StyledAlert, { variant: "default", children: formatMessage({
42
42
  id: "content-manager.history.content.no-relations",
43
43
  defaultMessage: "No relations."
@@ -48,8 +48,10 @@ const CustomRelationInput = (props) => {
48
48
  return /* @__PURE__ */ jsxs(Box, { children: [
49
49
  /* @__PURE__ */ jsx(Field.Label, { children: props.label }),
50
50
  results.length > 0 && /* @__PURE__ */ jsx(Flex, { direction: "column", gap: 2, marginTop: 1, alignItems: "stretch", children: results.map((relationData) => {
51
- const href = `../${COLLECTION_TYPES}/${props.attribute.targetModel}/${relationData.documentId}`;
51
+ const { targetModel } = props.attribute;
52
+ const href = `../${COLLECTION_TYPES}/${targetModel}/${relationData.documentId}`;
52
53
  const label = getRelationLabel(relationData, props.mainField);
54
+ const isAdminUserRelation = targetModel === "admin::user";
53
55
  return /* @__PURE__ */ jsxs(
54
56
  Flex,
55
57
  {
@@ -62,11 +64,11 @@ const CustomRelationInput = (props) => {
62
64
  background: "neutral150",
63
65
  justifyContent: "space-between",
64
66
  children: [
65
- /* @__PURE__ */ jsx(Box, { minWidth: 0, paddingTop: 1, paddingBottom: 1, paddingRight: 4, children: /* @__PURE__ */ jsx(Tooltip, { description: label, children: /* @__PURE__ */ jsx(LinkEllipsis, { tag: NavLink, to: href, children: label }) }) }),
67
+ /* @__PURE__ */ jsx(Box, { minWidth: 0, paddingTop: 1, paddingBottom: 1, paddingRight: 4, children: /* @__PURE__ */ jsx(Tooltip, { label, children: isAdminUserRelation ? /* @__PURE__ */ jsx(Typography, { children: label }) : /* @__PURE__ */ jsx(LinkEllipsis, { tag: NavLink, to: href, children: label }) }) }),
66
68
  /* @__PURE__ */ jsx(DocumentStatus, { status: relationData.status })
67
69
  ]
68
70
  },
69
- relationData.documentId
71
+ relationData.documentId ?? relationData.id
70
72
  );
71
73
  }) }),
72
74
  meta.missingCount > 0 && /* @ts-expect-error – we dont need closeLabel */
@@ -93,15 +95,38 @@ const CustomRelationInput = (props) => {
93
95
  )
94
96
  ] });
95
97
  };
98
+ const createInitialValuesForPath = (keyPath, value) => {
99
+ const keys = keyPath.split(".");
100
+ const root = {};
101
+ let node = root;
102
+ keys.forEach((key, index) => {
103
+ if (key === "__proto__" || key === "constructor") return;
104
+ if (index === keys.length - 1) {
105
+ node[key] = value;
106
+ } else {
107
+ node[key] = node[key] || {};
108
+ }
109
+ node = node[key];
110
+ });
111
+ return root;
112
+ };
96
113
  const CustomMediaInput = (props) => {
97
- const {
98
- value: { results, meta }
99
- } = useField(props.name);
114
+ const { value } = useField(props.name);
115
+ const results = value?.results ?? [];
116
+ const meta = value?.meta ?? { missingCount: 0 };
100
117
  const { formatMessage } = useIntl();
101
118
  const fields = useStrapiApp("CustomMediaInput", (state) => state.fields);
102
119
  const MediaLibrary = fields.media;
103
120
  return /* @__PURE__ */ jsxs(Flex, { direction: "column", gap: 2, alignItems: "stretch", children: [
104
- /* @__PURE__ */ jsx(Form, { method: "PUT", disabled: true, initialValues: { [props.name]: results }, children: /* @__PURE__ */ jsx(MediaLibrary, { ...props, disabled: true, multiple: results.length > 1 }) }),
121
+ /* @__PURE__ */ jsx(
122
+ Form,
123
+ {
124
+ method: "PUT",
125
+ disabled: true,
126
+ initialValues: createInitialValuesForPath(props.name, results),
127
+ children: /* @__PURE__ */ jsx(MediaLibrary, { ...props, disabled: true, multiple: results.length > 1 })
128
+ }
129
+ ),
105
130
  meta.missingCount > 0 && /* @__PURE__ */ jsx(
106
131
  StyledAlert,
107
132
  {
@@ -127,12 +152,39 @@ const CustomMediaInput = (props) => {
127
152
  )
128
153
  ] });
129
154
  };
155
+ const getLabelAction = (labelAction) => {
156
+ if (!React.isValidElement(labelAction)) {
157
+ return labelAction;
158
+ }
159
+ const labelActionTitleId = labelAction.props.title.id;
160
+ if (labelActionTitleId === "i18n.Field.localized") {
161
+ return React.cloneElement(labelAction, {
162
+ ...labelAction.props,
163
+ title: {
164
+ id: "history.content.localized",
165
+ defaultMessage: "This value is specific to this locale. If you restore this version, the content will not be replaced for other locales."
166
+ }
167
+ });
168
+ }
169
+ if (labelActionTitleId === "i18n.Field.not-localized") {
170
+ return React.cloneElement(labelAction, {
171
+ ...labelAction.props,
172
+ title: {
173
+ id: "history.content.not-localized",
174
+ defaultMessage: "This value is common to all locales. If you restore this version and save the changes, the content will be replaced for all locales."
175
+ }
176
+ });
177
+ }
178
+ return labelAction;
179
+ };
130
180
  const VersionInputRenderer = ({
131
181
  visible,
132
182
  hint: providedHint,
133
183
  shouldIgnoreRBAC = false,
184
+ labelAction,
134
185
  ...props
135
186
  }) => {
187
+ const customLabelAction = getLabelAction(labelAction);
136
188
  const { formatMessage } = useIntl();
137
189
  const version = useHistoryContext("VersionContent", (state) => state.selectedVersion);
138
190
  const configuration = useHistoryContext("VersionContent", (state) => state.configuration);
@@ -190,25 +242,42 @@ const VersionInputRenderer = ({
190
242
  if (attributeHasCustomFieldProperty(props.attribute)) {
191
243
  const CustomInput = lazyComponentStore[props.attribute.customField];
192
244
  if (CustomInput) {
193
- return /* @__PURE__ */ jsx(CustomInput, { ...props, hint, disabled: fieldIsDisabled });
245
+ return /* @__PURE__ */ jsx(
246
+ CustomInput,
247
+ {
248
+ ...props,
249
+ hint,
250
+ labelAction: customLabelAction,
251
+ disabled: fieldIsDisabled
252
+ }
253
+ );
194
254
  }
195
255
  return /* @__PURE__ */ jsx(
196
256
  InputRenderer,
197
257
  {
198
258
  ...props,
199
259
  hint,
260
+ labelAction: customLabelAction,
200
261
  type: props.attribute.customField,
201
262
  disabled: fieldIsDisabled
202
263
  }
203
264
  );
204
265
  }
205
266
  if (props.type === "media") {
206
- return /* @__PURE__ */ jsx(CustomMediaInput, { ...props, disabled: fieldIsDisabled });
267
+ return /* @__PURE__ */ jsx(CustomMediaInput, { ...props, labelAction: customLabelAction, disabled: fieldIsDisabled });
207
268
  }
208
269
  const addedInputTypes = Object.keys(fields);
209
270
  if (!attributeHasCustomFieldProperty(props.attribute) && addedInputTypes.includes(props.type)) {
210
271
  const CustomInput = fields[props.type];
211
- return /* @__PURE__ */ jsx(CustomInput, { ...props, hint, disabled: fieldIsDisabled });
272
+ return /* @__PURE__ */ jsx(
273
+ CustomInput,
274
+ {
275
+ ...props,
276
+ hint,
277
+ labelAction: customLabelAction,
278
+ disabled: fieldIsDisabled
279
+ }
280
+ );
212
281
  }
213
282
  switch (props.type) {
214
283
  case "blocks":
@@ -227,24 +296,61 @@ const VersionInputRenderer = ({
227
296
  ...props,
228
297
  layout: [...layout, ...remainingFieldsLayout || []],
229
298
  hint,
299
+ labelAction: customLabelAction,
230
300
  disabled: fieldIsDisabled,
231
301
  children: (inputProps) => /* @__PURE__ */ jsx(VersionInputRenderer, { ...inputProps, shouldIgnoreRBAC: true })
232
302
  }
233
303
  );
234
304
  case "dynamiczone":
235
- return /* @__PURE__ */ jsx(DynamicZone, { ...props, hint, disabled: fieldIsDisabled });
305
+ return /* @__PURE__ */ jsx(
306
+ DynamicZone,
307
+ {
308
+ ...props,
309
+ hint,
310
+ labelAction: customLabelAction,
311
+ disabled: fieldIsDisabled,
312
+ children: (inputProps) => /* @__PURE__ */ jsx(VersionInputRenderer, { ...inputProps, shouldIgnoreRBAC: true })
313
+ }
314
+ );
236
315
  case "relation":
237
- return /* @__PURE__ */ jsx(CustomRelationInput, { ...props, hint, disabled: fieldIsDisabled });
316
+ return /* @__PURE__ */ jsx(
317
+ CustomRelationInput,
318
+ {
319
+ ...props,
320
+ hint,
321
+ labelAction: customLabelAction,
322
+ disabled: fieldIsDisabled
323
+ }
324
+ );
238
325
  case "richtext":
239
- return /* @__PURE__ */ jsx(MemoizedWysiwyg, { ...props, hint, type: props.type, disabled: fieldIsDisabled });
326
+ return /* @__PURE__ */ jsx(
327
+ MemoizedWysiwyg,
328
+ {
329
+ ...props,
330
+ hint,
331
+ type: props.type,
332
+ labelAction: customLabelAction,
333
+ disabled: fieldIsDisabled
334
+ }
335
+ );
240
336
  case "uid":
241
- return /* @__PURE__ */ jsx(MemoizedUIDInput, { ...props, hint, type: props.type, disabled: fieldIsDisabled });
337
+ return /* @__PURE__ */ jsx(
338
+ MemoizedUIDInput,
339
+ {
340
+ ...props,
341
+ hint,
342
+ type: props.type,
343
+ labelAction: customLabelAction,
344
+ disabled: fieldIsDisabled
345
+ }
346
+ );
242
347
  case "enumeration":
243
348
  return /* @__PURE__ */ jsx(
244
349
  InputRenderer,
245
350
  {
246
351
  ...props,
247
352
  hint,
353
+ labelAction: customLabelAction,
248
354
  options: props.attribute.enum.map((value) => ({ value })),
249
355
  type: props.customField ? "custom-field" : props.type,
250
356
  disabled: fieldIsDisabled
@@ -257,6 +363,7 @@ const VersionInputRenderer = ({
257
363
  {
258
364
  ...restProps,
259
365
  hint,
366
+ labelAction: customLabelAction,
260
367
  type: props.customField ? "custom-field" : props.type,
261
368
  disabled: fieldIsDisabled
262
369
  }
@@ -310,7 +417,7 @@ const FormPanel = ({ panel }) => {
310
417
  if (panel.some((row) => row.some((field) => field.type === "dynamiczone"))) {
311
418
  const [row] = panel;
312
419
  const [field] = row;
313
- return /* @__PURE__ */ jsx(Grid, { gap: 4, children: /* @__PURE__ */ jsx(GridItem, { col: 12, s: 12, xs: 12, children: /* @__PURE__ */ jsx(VersionInputRenderer, { ...field }) }) }, field.name);
420
+ return /* @__PURE__ */ jsx(Grid.Root, { gap: 4, children: /* @__PURE__ */ jsx(Grid.Item, { col: 12, s: 12, xs: 12, direction: "column", alignItems: "stretch", children: /* @__PURE__ */ jsx(VersionInputRenderer, { ...field }) }) }, field.name);
314
421
  }
315
422
  return /* @__PURE__ */ jsx(
316
423
  Box,
@@ -323,8 +430,19 @@ const FormPanel = ({ panel }) => {
323
430
  paddingTop: 6,
324
431
  paddingBottom: 6,
325
432
  borderColor: "neutral150",
326
- children: /* @__PURE__ */ jsx(Flex, { direction: "column", alignItems: "stretch", gap: 6, children: panel.map((row, gridRowIndex) => /* @__PURE__ */ jsx(Grid, { gap: 4, children: row.map(({ size, ...field }) => {
327
- return /* @__PURE__ */ jsx(GridItem, { col: size, s: 12, xs: 12, children: /* @__PURE__ */ jsx(VersionInputRenderer, { ...field }) }, field.name);
433
+ children: /* @__PURE__ */ jsx(Flex, { direction: "column", alignItems: "stretch", gap: 6, children: panel.map((row, gridRowIndex) => /* @__PURE__ */ jsx(Grid.Root, { gap: 4, children: row.map(({ size, ...field }) => {
434
+ return /* @__PURE__ */ jsx(
435
+ Grid.Item,
436
+ {
437
+ col: size,
438
+ s: 12,
439
+ xs: 12,
440
+ direction: "column",
441
+ alignItems: "stretch",
442
+ children: /* @__PURE__ */ jsx(VersionInputRenderer, { ...field })
443
+ },
444
+ field.name
445
+ );
328
446
  }) }, gridRowIndex)) })
329
447
  }
330
448
  );
@@ -439,6 +557,7 @@ const VersionHeader = ({ headerId }) => {
439
557
  const [isConfirmDialogOpen, setIsConfirmDialogOpen] = React.useState(false);
440
558
  const navigate = useNavigate();
441
559
  const { formatMessage, formatDate } = useIntl();
560
+ const { trackUsage } = useTracking();
442
561
  const { toggleNotification } = useNotification();
443
562
  const [{ query }] = useQueryParams();
444
563
  const { collectionType, slug } = useParams();
@@ -454,14 +573,8 @@ const VersionHeader = ({ headerId }) => {
454
573
  const mainFieldValue = version.data[mainField];
455
574
  const getNextNavigation = () => {
456
575
  const pluginsQueryParams = stringify({ plugins: query.plugins }, { encode: false });
457
- if (collectionType === COLLECTION_TYPES) {
458
- return {
459
- pathname: `/content-manager/${collectionType}/${version.contentType}/${version.relatedDocumentId}`,
460
- search: pluginsQueryParams
461
- };
462
- }
463
576
  return {
464
- pathname: `/content-manager/${collectionType}/${version.contentType}`,
577
+ pathname: "..",
465
578
  search: pluginsQueryParams
466
579
  };
467
580
  };
@@ -477,7 +590,7 @@ const VersionHeader = ({ headerId }) => {
477
590
  body: { contentType: version.contentType }
478
591
  });
479
592
  if ("data" in response) {
480
- navigate(getNextNavigation());
593
+ navigate(getNextNavigation(), { relative: "path" });
481
594
  toggleNotification({
482
595
  type: "success",
483
596
  title: formatMessage({
@@ -486,9 +599,10 @@ const VersionHeader = ({ headerId }) => {
486
599
  }),
487
600
  message: formatMessage({
488
601
  id: "content-manager.restore.success.message",
489
- defaultMessage: "The content of the restored version is not published yet."
602
+ defaultMessage: "A past version of the content was restored."
490
603
  })
491
604
  });
605
+ trackUsage("didRestoreHistoryVersion");
492
606
  }
493
607
  if ("error" in response) {
494
608
  toggleNotification({
@@ -506,7 +620,7 @@ const VersionHeader = ({ headerId }) => {
506
620
  });
507
621
  }
508
622
  };
509
- return /* @__PURE__ */ jsxs(Fragment, { children: [
623
+ return /* @__PURE__ */ jsxs(Dialog.Root, { open: isConfirmDialogOpen, onOpenChange: setIsConfirmDialogOpen, children: [
510
624
  /* @__PURE__ */ jsx(
511
625
  Layouts.BaseHeader,
512
626
  {
@@ -518,7 +632,7 @@ const VersionHeader = ({ headerId }) => {
518
632
  hour: "numeric",
519
633
  minute: "numeric"
520
634
  }),
521
- subtitle: /* @__PURE__ */ jsx(Typography, { variant: "epsilon", children: formatMessage(
635
+ subtitle: /* @__PURE__ */ jsx(Typography, { variant: "epsilon", textColor: "neutral600", children: formatMessage(
522
636
  {
523
637
  id: "content-manager.history.version.subtitle",
524
638
  defaultMessage: "{hasLocale, select, true {{subtitle}, in {locale}} other {{subtitle}}}"
@@ -529,12 +643,22 @@ const VersionHeader = ({ headerId }) => {
529
643
  locale: version.locale?.name
530
644
  }
531
645
  ) }),
532
- navigationAction: /* @__PURE__ */ jsx(Link, { startIcon: /* @__PURE__ */ jsx(ArrowLeft, {}), tag: NavLink, to: getNextNavigation(), isExternal: false, children: formatMessage({
533
- id: "global.back",
534
- defaultMessage: "Back"
535
- }) }),
646
+ navigationAction: /* @__PURE__ */ jsx(
647
+ Link,
648
+ {
649
+ startIcon: /* @__PURE__ */ jsx(ArrowLeft, {}),
650
+ tag: NavLink,
651
+ to: getNextNavigation(),
652
+ relative: "path",
653
+ isExternal: false,
654
+ children: formatMessage({
655
+ id: "global.back",
656
+ defaultMessage: "Back"
657
+ })
658
+ }
659
+ ),
536
660
  sticky: false,
537
- primaryAction: /* @__PURE__ */ jsx(
661
+ primaryAction: /* @__PURE__ */ jsx(Dialog.Trigger, { children: /* @__PURE__ */ jsx(
538
662
  Button,
539
663
  {
540
664
  disabled: !allowedActions.canUpdate || isCurrentVersion,
@@ -546,16 +670,13 @@ const VersionHeader = ({ headerId }) => {
546
670
  defaultMessage: "Restore"
547
671
  })
548
672
  }
549
- )
673
+ ) })
550
674
  }
551
675
  ),
552
676
  /* @__PURE__ */ jsx(
553
677
  ConfirmDialog,
554
678
  {
555
- isOpen: isConfirmDialogOpen,
556
- onClose: () => setIsConfirmDialogOpen(false),
557
679
  onConfirm: handleRestore,
558
- icon: /* @__PURE__ */ jsx(WarningCircle, {}),
559
680
  endAction: /* @__PURE__ */ jsx(Button, { variant: "secondary", onClick: handleRestore, loading: isLoading, children: formatMessage({
560
681
  id: "content-manager.history.restore.confirm.button",
561
682
  defaultMessage: "Restore"
@@ -569,6 +690,7 @@ const VersionHeader = ({ headerId }) => {
569
690
  gap: 2,
570
691
  textAlign: "center",
571
692
  children: [
693
+ /* @__PURE__ */ jsx(Flex, { justifyContent: "center", children: /* @__PURE__ */ jsx(WarningCircle, { width: "24px", height: "24px", fill: "danger600" }) }),
572
694
  /* @__PURE__ */ jsx(Typography, { children: formatMessage({
573
695
  id: "content-manager.history.restore.confirm.title",
574
696
  defaultMessage: "Are you sure you want to restore this version?"
@@ -589,46 +711,10 @@ const VersionHeader = ({ headerId }) => {
589
711
  )
590
712
  ] });
591
713
  };
592
- const BlueText = (children) => /* @__PURE__ */ jsx(Typography, { textColor: "primary600", children });
714
+ const BlueText = (children) => /* @__PURE__ */ jsx(Typography, { textColor: "primary600", variant: "pi", children });
593
715
  const VersionCard = ({ version, isCurrent }) => {
594
716
  const { formatDate, formatMessage } = useIntl();
595
717
  const [{ query }] = useQueryParams();
596
- const statusData = (() => {
597
- switch (version.status) {
598
- case "draft":
599
- return {
600
- background: "secondary100",
601
- border: "secondary200",
602
- text: "secondary700",
603
- message: {
604
- id: "content-manager.containers.List.draft",
605
- defaultMessage: "Draft"
606
- }
607
- };
608
- case "modified":
609
- return {
610
- background: "alternative100",
611
- border: "alternative200",
612
- text: "alternative700",
613
- message: {
614
- // TODO: check the translation key once D&P v5 is done
615
- id: "content-manager.containers.List.modified",
616
- defaultMessage: "Modified"
617
- }
618
- };
619
- case "published":
620
- default:
621
- return {
622
- background: "success100",
623
- border: "success200",
624
- text: "success700",
625
- message: {
626
- id: "content-manager.containers.List.published",
627
- defaultMessage: "Published"
628
- }
629
- };
630
- }
631
- })();
632
718
  const isActive = query.id === version.id.toString();
633
719
  const author = version.createdBy && getDisplayName(version.createdBy);
634
720
  return /* @__PURE__ */ jsxs(
@@ -642,10 +728,7 @@ const VersionCard = ({ version, isCurrent }) => {
642
728
  borderStyle: "solid",
643
729
  borderColor: isActive ? "primary600" : "neutral200",
644
730
  color: "neutral800",
645
- paddingTop: 4,
646
- paddingBottom: 4,
647
- paddingLeft: 5,
648
- paddingRight: 5,
731
+ padding: 5,
649
732
  tag: Link$1,
650
733
  to: `?${stringify({ ...query, id: version.id })}`,
651
734
  style: { textDecoration: "none" },
@@ -672,21 +755,7 @@ const VersionCard = ({ version, isCurrent }) => {
672
755
  }
673
756
  ) })
674
757
  ] }),
675
- version.status && /* @__PURE__ */ jsx(
676
- Box,
677
- {
678
- background: statusData.background,
679
- borderStyle: "solid",
680
- borderWidth: "1px",
681
- borderColor: statusData.border,
682
- hasRadius: true,
683
- paddingLeft: "6px",
684
- paddingRight: "6px",
685
- paddingTop: "2px",
686
- paddingBottom: "2px",
687
- children: /* @__PURE__ */ jsx(Typography, { variant: "pi", fontWeight: "bold", textColor: statusData.text, children: formatMessage(statusData.message) })
688
- }
689
- )
758
+ version.status && /* @__PURE__ */ jsx(DocumentStatus, { status: version.status, size: "XS" })
690
759
  ]
691
760
  }
692
761
  );
@@ -740,31 +809,18 @@ const VersionsList = () => {
740
809
  id: "content-manager.history.sidebar.show-newer",
741
810
  defaultMessage: "Show newer versions"
742
811
  }) }) }),
743
- /* @__PURE__ */ jsx(
744
- Flex,
812
+ /* @__PURE__ */ jsx(Flex, { direction: "column", gap: 3, padding: 4, tag: "ul", alignItems: "stretch", children: versions.data.map((version, index) => /* @__PURE__ */ jsx(
813
+ "li",
745
814
  {
746
- direction: "column",
747
- gap: 3,
748
- paddingTop: 5,
749
- paddingBottom: 5,
750
- paddingLeft: 4,
751
- paddingRight: 4,
752
- tag: "ul",
753
- alignItems: "stretch",
754
- children: versions.data.map((version, index) => /* @__PURE__ */ jsx(
755
- "li",
756
- {
757
- "aria-label": formatMessage({
758
- id: "content-manager.history.sidebar.title.version-card.aria-label",
759
- defaultMessage: "Version card"
760
- }),
761
- children: /* @__PURE__ */ jsx(VersionCard, { version, isCurrent: page === 1 && index === 0 })
762
- },
763
- version.id
764
- ))
765
- }
766
- ),
767
- versions.meta.pagination.page < versions.meta.pagination.pageCount && /* @__PURE__ */ jsx(Box, { paddingBottom: 5, textAlign: "center", children: /* @__PURE__ */ jsx(PaginationButton, { page: page + 1, children: formatMessage({
815
+ "aria-label": formatMessage({
816
+ id: "content-manager.history.sidebar.title.version-card.aria-label",
817
+ defaultMessage: "Version card"
818
+ }),
819
+ children: /* @__PURE__ */ jsx(VersionCard, { version, isCurrent: page === 1 && index === 0 })
820
+ },
821
+ version.id
822
+ )) }),
823
+ versions.meta.pagination.page < versions.meta.pagination.pageCount && /* @__PURE__ */ jsx(Box, { paddingBottom: 4, textAlign: "center", children: /* @__PURE__ */ jsx(PaginationButton, { page: page + 1, children: formatMessage({
768
824
  id: "content-manager.history.sidebar.show-older",
769
825
  defaultMessage: "Show older versions"
770
826
  }) }) })
@@ -816,7 +872,22 @@ const HistoryPage = () => {
816
872
  return /* @__PURE__ */ jsx(Page.Loading, {});
817
873
  }
818
874
  if (!versionsResponse.isError && !versionsResponse.data?.data?.length) {
819
- return /* @__PURE__ */ jsx(Page.NoData, {});
875
+ return /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsx(
876
+ Page.NoData,
877
+ {
878
+ action: /* @__PURE__ */ jsx(
879
+ Link,
880
+ {
881
+ tag: NavLink,
882
+ to: `/content-manager/${collectionType}/${slug}${documentId ? `/${documentId}` : ""}`,
883
+ children: formatMessage({
884
+ id: "global.back",
885
+ defaultMessage: "Back"
886
+ })
887
+ }
888
+ )
889
+ }
890
+ ) });
820
891
  }
821
892
  if (versionsResponse.data?.data?.length && !selectedVersionId) {
822
893
  return /* @__PURE__ */ jsx(
@@ -925,4 +996,4 @@ export {
925
996
  ProtectedHistoryPage,
926
997
  useHistoryContext
927
998
  };
928
- //# sourceMappingURL=History-BZP8n7KT.mjs.map
999
+ //# sourceMappingURL=History-WOQNVho-.mjs.map