@strapi/content-manager 0.0.0-experimental.17b4116f461a49b8ce5386f7c8d79c511d40fb3b → 0.0.0-experimental.1905f36833468f12a6ad1dbd03650aa3b6474658

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 (530) hide show
  1. package/LICENSE +18 -3
  2. package/dist/admin/chunks/CardDragPreview-DwuraT0K.mjs +80 -0
  3. package/dist/admin/chunks/CardDragPreview-DwuraT0K.mjs.map +1 -0
  4. package/dist/admin/chunks/CardDragPreview-_dubYgXO.js +82 -0
  5. package/dist/admin/chunks/CardDragPreview-_dubYgXO.js.map +1 -0
  6. package/dist/admin/chunks/ComponentConfigurationPage-Bn-SMKJG.js +299 -0
  7. package/dist/admin/chunks/ComponentConfigurationPage-Bn-SMKJG.js.map +1 -0
  8. package/dist/admin/chunks/ComponentConfigurationPage-Cqi5KqZa.mjs +277 -0
  9. package/dist/admin/chunks/ComponentConfigurationPage-Cqi5KqZa.mjs.map +1 -0
  10. package/dist/admin/chunks/ComponentIcon-BZcTc4rj.mjs +153 -0
  11. package/dist/admin/chunks/ComponentIcon-BZcTc4rj.mjs.map +1 -0
  12. package/dist/admin/chunks/ComponentIcon-C-EjOUPA.js +176 -0
  13. package/dist/admin/chunks/ComponentIcon-C-EjOUPA.js.map +1 -0
  14. package/dist/admin/chunks/EditConfigurationPage-CRxsqOhS.js +181 -0
  15. package/dist/admin/chunks/EditConfigurationPage-CRxsqOhS.js.map +1 -0
  16. package/dist/admin/chunks/EditConfigurationPage-Dm16gciL.mjs +159 -0
  17. package/dist/admin/chunks/EditConfigurationPage-Dm16gciL.mjs.map +1 -0
  18. package/dist/admin/chunks/EditViewPage-Dk8CeS40.js +334 -0
  19. package/dist/admin/chunks/EditViewPage-Dk8CeS40.js.map +1 -0
  20. package/dist/admin/chunks/EditViewPage-eTCSh2HB.mjs +311 -0
  21. package/dist/admin/chunks/EditViewPage-eTCSh2HB.mjs.map +1 -0
  22. package/dist/admin/chunks/FieldTypeIcon-BY6MrVF4.mjs +56 -0
  23. package/dist/admin/chunks/FieldTypeIcon-BY6MrVF4.mjs.map +1 -0
  24. package/dist/admin/chunks/FieldTypeIcon-Bxh-7Jin.js +58 -0
  25. package/dist/admin/chunks/FieldTypeIcon-Bxh-7Jin.js.map +1 -0
  26. package/dist/admin/chunks/Form-K_hq8zU4.mjs +955 -0
  27. package/dist/admin/chunks/Form-K_hq8zU4.mjs.map +1 -0
  28. package/dist/admin/chunks/Form-PB1sNax8.js +978 -0
  29. package/dist/admin/chunks/Form-PB1sNax8.js.map +1 -0
  30. package/dist/admin/chunks/History-CD5uVchr.mjs +1357 -0
  31. package/dist/admin/chunks/History-CD5uVchr.mjs.map +1 -0
  32. package/dist/admin/chunks/History-CfsF-U-3.js +1380 -0
  33. package/dist/admin/chunks/History-CfsF-U-3.js.map +1 -0
  34. package/dist/admin/chunks/Input-CU93J6dl.js +7221 -0
  35. package/dist/admin/chunks/Input-CU93J6dl.js.map +1 -0
  36. package/dist/admin/chunks/Input-grmHplxs.mjs +7190 -0
  37. package/dist/admin/chunks/Input-grmHplxs.mjs.map +1 -0
  38. package/dist/admin/chunks/ListConfigurationPage-Eo8txFp0.mjs +796 -0
  39. package/dist/admin/chunks/ListConfigurationPage-Eo8txFp0.mjs.map +1 -0
  40. package/dist/admin/chunks/ListConfigurationPage-nZti--Mw.js +819 -0
  41. package/dist/admin/chunks/ListConfigurationPage-nZti--Mw.js.map +1 -0
  42. package/dist/admin/chunks/ListViewPage-BBX-zSka.mjs +1133 -0
  43. package/dist/admin/chunks/ListViewPage-BBX-zSka.mjs.map +1 -0
  44. package/dist/admin/chunks/ListViewPage-DQYvHCxn.js +1155 -0
  45. package/dist/admin/chunks/ListViewPage-DQYvHCxn.js.map +1 -0
  46. package/dist/admin/chunks/NoContentTypePage-C-rbOQO1.mjs +58 -0
  47. package/dist/admin/chunks/NoContentTypePage-C-rbOQO1.mjs.map +1 -0
  48. package/dist/admin/chunks/NoContentTypePage-ChYgz3sN.js +60 -0
  49. package/dist/admin/chunks/NoContentTypePage-ChYgz3sN.js.map +1 -0
  50. package/dist/admin/chunks/NoPermissionsPage-CuxrInhz.mjs +37 -0
  51. package/dist/admin/chunks/NoPermissionsPage-CuxrInhz.mjs.map +1 -0
  52. package/dist/admin/chunks/NoPermissionsPage-H4SAlJeF.js +39 -0
  53. package/dist/admin/chunks/NoPermissionsPage-H4SAlJeF.js.map +1 -0
  54. package/dist/admin/chunks/Preview-Bz2dgOiw.js +692 -0
  55. package/dist/admin/chunks/Preview-Bz2dgOiw.js.map +1 -0
  56. package/dist/admin/chunks/Preview-HqnNXn4S.mjs +670 -0
  57. package/dist/admin/chunks/Preview-HqnNXn4S.mjs.map +1 -0
  58. package/dist/admin/chunks/Relations-BMvL4yMN.mjs +1291 -0
  59. package/dist/admin/chunks/Relations-BMvL4yMN.mjs.map +1 -0
  60. package/dist/admin/chunks/Relations-CbCAt692.js +1318 -0
  61. package/dist/admin/chunks/Relations-CbCAt692.js.map +1 -0
  62. package/dist/admin/chunks/ar-DckYq_WK.mjs +222 -0
  63. package/dist/{_chunks/ar-CCEVvqGG.mjs.map → admin/chunks/ar-DckYq_WK.mjs.map} +1 -1
  64. package/dist/admin/chunks/ar-DeQBSsfl.js +227 -0
  65. package/dist/{_chunks/ru-BT3ybNny.js.map → admin/chunks/ar-DeQBSsfl.js.map} +1 -1
  66. package/dist/admin/chunks/ca-ClDTvatJ.js +202 -0
  67. package/dist/admin/chunks/ca-ClDTvatJ.js.map +1 -0
  68. package/dist/admin/chunks/ca-DviY7mRj.mjs +197 -0
  69. package/dist/admin/chunks/ca-DviY7mRj.mjs.map +1 -0
  70. package/dist/admin/chunks/cs-BJFxwIWj.js +126 -0
  71. package/dist/{_chunks/cs-CkJy6B2v.js.map → admin/chunks/cs-BJFxwIWj.js.map} +1 -1
  72. package/dist/admin/chunks/cs-C7OSYFQ7.mjs +122 -0
  73. package/dist/{_chunks/cs-CM2aBUar.mjs.map → admin/chunks/cs-C7OSYFQ7.mjs.map} +1 -1
  74. package/dist/admin/chunks/de-5QRlDHyR.mjs +195 -0
  75. package/dist/{_chunks/eu-CdALomew.mjs.map → admin/chunks/de-5QRlDHyR.mjs.map} +1 -1
  76. package/dist/admin/chunks/de-CbImAUA5.js +200 -0
  77. package/dist/{_chunks/gu-BRmF601H.js.map → admin/chunks/de-CbImAUA5.js.map} +1 -1
  78. package/dist/admin/chunks/en-CImiNxXE.mjs +310 -0
  79. package/dist/{_chunks/en-MBPul9Su.mjs.map → admin/chunks/en-CImiNxXE.mjs.map} +1 -1
  80. package/dist/admin/chunks/en-CLf4SuMQ.js +315 -0
  81. package/dist/admin/chunks/en-CLf4SuMQ.js.map +1 -0
  82. package/dist/admin/chunks/es-C8vLuvZL.js +197 -0
  83. package/dist/{_chunks/es-EUonQTon.js.map → admin/chunks/es-C8vLuvZL.js.map} +1 -1
  84. package/dist/admin/chunks/es-DkoWSExG.mjs +192 -0
  85. package/dist/{_chunks/ja-CtsUxOvk.mjs.map → admin/chunks/es-DkoWSExG.mjs.map} +1 -1
  86. package/dist/admin/chunks/eu-BG1xX7HK.mjs +198 -0
  87. package/dist/admin/chunks/eu-BG1xX7HK.mjs.map +1 -0
  88. package/dist/admin/chunks/eu-BJW3AvXu.js +203 -0
  89. package/dist/admin/chunks/eu-BJW3AvXu.js.map +1 -0
  90. package/dist/admin/chunks/fr-CFdRaRVj.mjs +215 -0
  91. package/dist/admin/chunks/fr-CFdRaRVj.mjs.map +1 -0
  92. package/dist/admin/chunks/fr-gQSilC7w.js +220 -0
  93. package/dist/admin/chunks/fr-gQSilC7w.js.map +1 -0
  94. package/dist/admin/chunks/gu-D5MMMXRs.mjs +196 -0
  95. package/dist/admin/chunks/gu-D5MMMXRs.mjs.map +1 -0
  96. package/dist/admin/chunks/gu-DPU4wyx7.js +201 -0
  97. package/dist/{_chunks/eu-VDH-3ovk.js.map → admin/chunks/gu-DPU4wyx7.js.map} +1 -1
  98. package/dist/admin/chunks/hi-Dp4omeBb.js +201 -0
  99. package/dist/admin/chunks/hi-Dp4omeBb.js.map +1 -0
  100. package/dist/admin/chunks/hi-lp17SCjr.mjs +196 -0
  101. package/dist/admin/chunks/hi-lp17SCjr.mjs.map +1 -0
  102. package/dist/{_chunks/hooks-BAaaKPS_.js → admin/chunks/hooks-D-sOYd1s.js} +6 -3
  103. package/dist/admin/chunks/hooks-D-sOYd1s.js.map +1 -0
  104. package/dist/admin/chunks/hooks-DMvik5y_.mjs +7 -0
  105. package/dist/admin/chunks/hooks-DMvik5y_.mjs.map +1 -0
  106. package/dist/admin/chunks/hu-CLka1U2C.mjs +198 -0
  107. package/dist/admin/chunks/hu-CLka1U2C.mjs.map +1 -0
  108. package/dist/admin/chunks/hu-CtFJuhTd.js +203 -0
  109. package/dist/admin/chunks/hu-CtFJuhTd.js.map +1 -0
  110. package/dist/admin/chunks/id-D7V5S1rB.js +161 -0
  111. package/dist/{_chunks/it-DkBIs7vD.js.map → admin/chunks/id-D7V5S1rB.js.map} +1 -1
  112. package/dist/admin/chunks/id-USfY9m1g.mjs +156 -0
  113. package/dist/{_chunks/id-BtwA9WJT.mjs.map → admin/chunks/id-USfY9m1g.mjs.map} +1 -1
  114. package/dist/admin/chunks/index-CS_nLuw2.mjs +5382 -0
  115. package/dist/admin/chunks/index-CS_nLuw2.mjs.map +1 -0
  116. package/dist/admin/chunks/index-DfX0uEQT.js +5449 -0
  117. package/dist/admin/chunks/index-DfX0uEQT.js.map +1 -0
  118. package/dist/admin/chunks/it-BAHrwmYS.mjs +158 -0
  119. package/dist/{_chunks/it-BrVPqaf1.mjs.map → admin/chunks/it-BAHrwmYS.mjs.map} +1 -1
  120. package/dist/admin/chunks/it-CQFpa_Dc.js +163 -0
  121. package/dist/{_chunks/ko-woFZPmLk.js.map → admin/chunks/it-CQFpa_Dc.js.map} +1 -1
  122. package/dist/admin/chunks/ja-BWKmBJFT.mjs +192 -0
  123. package/dist/{_chunks/ko-HVQRlfUI.mjs.map → admin/chunks/ja-BWKmBJFT.mjs.map} +1 -1
  124. package/dist/admin/chunks/ja-jdQM-B79.js +197 -0
  125. package/dist/{_chunks/de-CCEmbAah.js.map → admin/chunks/ja-jdQM-B79.js.map} +1 -1
  126. package/dist/admin/chunks/ko-CgADGBNt.mjs +191 -0
  127. package/dist/{_chunks/es-CeXiYflN.mjs.map → admin/chunks/ko-CgADGBNt.mjs.map} +1 -1
  128. package/dist/admin/chunks/ko-k46sEyzt.js +196 -0
  129. package/dist/{_chunks/ja-CcFe8diO.js.map → admin/chunks/ko-k46sEyzt.js.map} +1 -1
  130. package/dist/admin/chunks/layout-B4Uk0v1z.js +619 -0
  131. package/dist/admin/chunks/layout-B4Uk0v1z.js.map +1 -0
  132. package/dist/admin/chunks/layout-BInXGFmo.mjs +599 -0
  133. package/dist/admin/chunks/layout-BInXGFmo.mjs.map +1 -0
  134. package/dist/admin/chunks/ml-CnhCfOn_.mjs +196 -0
  135. package/dist/admin/chunks/ml-CnhCfOn_.mjs.map +1 -0
  136. package/dist/admin/chunks/ml-DqxPwODx.js +201 -0
  137. package/dist/admin/chunks/ml-DqxPwODx.js.map +1 -0
  138. package/dist/admin/chunks/ms-Bh09NFff.mjs +140 -0
  139. package/dist/{_chunks/ms-m_WjyWx7.mjs.map → admin/chunks/ms-Bh09NFff.mjs.map} +1 -1
  140. package/dist/admin/chunks/ms-CvSC0OdG.js +145 -0
  141. package/dist/{_chunks/ms-BuFotyP_.js.map → admin/chunks/ms-CvSC0OdG.js.map} +1 -1
  142. package/dist/admin/chunks/nl-BEubhS8C.js +203 -0
  143. package/dist/admin/chunks/nl-BEubhS8C.js.map +1 -0
  144. package/dist/admin/chunks/nl-C8HYflTc.mjs +198 -0
  145. package/dist/admin/chunks/nl-C8HYflTc.mjs.map +1 -0
  146. package/dist/admin/chunks/objects-C3EebVVe.js +76 -0
  147. package/dist/admin/chunks/objects-C3EebVVe.js.map +1 -0
  148. package/dist/admin/chunks/objects-wl73iEma.mjs +73 -0
  149. package/dist/admin/chunks/objects-wl73iEma.mjs.map +1 -0
  150. package/dist/admin/chunks/pl-DWhGDzmM.js +200 -0
  151. package/dist/{_chunks/ca-Cmk45QO6.js.map → admin/chunks/pl-DWhGDzmM.js.map} +1 -1
  152. package/dist/admin/chunks/pl-MFCZJZuZ.mjs +195 -0
  153. package/dist/{_chunks/ca-5U32ON2v.mjs.map → admin/chunks/pl-MFCZJZuZ.mjs.map} +1 -1
  154. package/dist/admin/chunks/pt-BR-CPtAXD-4.js +202 -0
  155. package/dist/{_chunks/pt-BR-BiOz37D9.js.map → admin/chunks/pt-BR-CPtAXD-4.js.map} +1 -1
  156. package/dist/admin/chunks/pt-BR-CcotyBGJ.mjs +197 -0
  157. package/dist/{_chunks/pt-BR-C71iDxnh.mjs.map → admin/chunks/pt-BR-CcotyBGJ.mjs.map} +1 -1
  158. package/dist/admin/chunks/pt-BoPxN80n.js +96 -0
  159. package/dist/admin/chunks/pt-BoPxN80n.js.map +1 -0
  160. package/dist/admin/chunks/pt-HbmgeiYO.mjs +93 -0
  161. package/dist/admin/chunks/pt-HbmgeiYO.mjs.map +1 -0
  162. package/dist/admin/chunks/relations-9C5dQI9e.js +178 -0
  163. package/dist/admin/chunks/relations-9C5dQI9e.js.map +1 -0
  164. package/dist/admin/chunks/relations-CwL0ThH9.mjs +173 -0
  165. package/dist/admin/chunks/relations-CwL0ThH9.mjs.map +1 -0
  166. package/dist/admin/chunks/ru-C0op0ALG.js +232 -0
  167. package/dist/{_chunks/en-C-V1_90f.js.map → admin/chunks/ru-C0op0ALG.js.map} +1 -1
  168. package/dist/admin/chunks/ru-CB4BUyQp.mjs +230 -0
  169. package/dist/{_chunks/ru-BE6A4Exp.mjs.map → admin/chunks/ru-CB4BUyQp.mjs.map} +1 -1
  170. package/dist/admin/chunks/sa-B_FuPyMw.js +201 -0
  171. package/dist/admin/chunks/sa-B_FuPyMw.js.map +1 -0
  172. package/dist/admin/chunks/sa-n_aPA-pU.mjs +196 -0
  173. package/dist/admin/chunks/sa-n_aPA-pU.mjs.map +1 -0
  174. package/dist/admin/chunks/sk-D_iXML2C.js +203 -0
  175. package/dist/admin/chunks/sk-D_iXML2C.js.map +1 -0
  176. package/dist/admin/chunks/sk-tn_BDjE2.mjs +198 -0
  177. package/dist/admin/chunks/sk-tn_BDjE2.mjs.map +1 -0
  178. package/dist/admin/chunks/sv-BstBC1Yp.js +203 -0
  179. package/dist/admin/chunks/sv-BstBC1Yp.js.map +1 -0
  180. package/dist/admin/chunks/sv-cq4ZrQRd.mjs +198 -0
  181. package/dist/admin/chunks/sv-cq4ZrQRd.mjs.map +1 -0
  182. package/dist/admin/chunks/th-lXoOCqPC.js +149 -0
  183. package/dist/{_chunks/th-D9_GfAjc.js.map → admin/chunks/th-lXoOCqPC.js.map} +1 -1
  184. package/dist/admin/chunks/th-mUH7hEtc.mjs +144 -0
  185. package/dist/{_chunks/uk-CR-zDhAY.mjs.map → admin/chunks/th-mUH7hEtc.mjs.map} +1 -1
  186. package/dist/admin/chunks/tr-CkS6sLIE.js +200 -0
  187. package/dist/admin/chunks/tr-CkS6sLIE.js.map +1 -0
  188. package/dist/admin/chunks/tr-Yt38daxh.mjs +195 -0
  189. package/dist/{_chunks/de-C72KDNOl.mjs.map → admin/chunks/tr-Yt38daxh.mjs.map} +1 -1
  190. package/dist/admin/chunks/uk-BtM6WnaE.mjs +313 -0
  191. package/dist/admin/chunks/uk-BtM6WnaE.mjs.map +1 -0
  192. package/dist/admin/chunks/uk-DB6OgySY.js +318 -0
  193. package/dist/admin/chunks/uk-DB6OgySY.js.map +1 -0
  194. package/dist/admin/chunks/useDragAndDrop-HYwNDExe.mjs +247 -0
  195. package/dist/admin/chunks/useDragAndDrop-HYwNDExe.mjs.map +1 -0
  196. package/dist/admin/chunks/useDragAndDrop-gcqEJMnO.js +271 -0
  197. package/dist/admin/chunks/useDragAndDrop-gcqEJMnO.js.map +1 -0
  198. package/dist/admin/chunks/usePrev-Bjw2dhmq.mjs +18 -0
  199. package/dist/admin/chunks/usePrev-Bjw2dhmq.mjs.map +1 -0
  200. package/dist/admin/chunks/usePrev-DIYl-IAL.js +21 -0
  201. package/dist/admin/chunks/usePrev-DIYl-IAL.js.map +1 -0
  202. package/dist/admin/chunks/vi-BGr1X_HZ.js +112 -0
  203. package/dist/{_chunks/vi-CJlYDheJ.js.map → admin/chunks/vi-BGr1X_HZ.js.map} +1 -1
  204. package/dist/admin/chunks/vi-CvBGlTjr.mjs +108 -0
  205. package/dist/{_chunks/vi-DUXIk_fw.mjs.map → admin/chunks/vi-CvBGlTjr.mjs.map} +1 -1
  206. package/dist/admin/chunks/zh-BmF-sHaT.mjs +205 -0
  207. package/dist/admin/chunks/zh-BmF-sHaT.mjs.map +1 -0
  208. package/dist/admin/chunks/zh-DwFu_Kfj.js +210 -0
  209. package/dist/admin/chunks/zh-DwFu_Kfj.js.map +1 -0
  210. package/dist/admin/chunks/zh-Hans-CI0HKio3.mjs +934 -0
  211. package/dist/{_chunks/zh-Hans-BPQcRIyH.mjs.map → admin/chunks/zh-Hans-CI0HKio3.mjs.map} +1 -1
  212. package/dist/admin/chunks/zh-Hans-JVK9x7xr.js +953 -0
  213. package/dist/{_chunks/zh-Hans-9kOncHGw.js.map → admin/chunks/zh-Hans-JVK9x7xr.js.map} +1 -1
  214. package/dist/admin/index.js +27 -4
  215. package/dist/admin/index.js.map +1 -1
  216. package/dist/admin/index.mjs +17 -10
  217. package/dist/admin/index.mjs.map +1 -1
  218. package/dist/admin/src/components/ComponentIcon.d.ts +6 -3
  219. package/dist/admin/src/components/InjectionZone.d.ts +7 -1
  220. package/dist/admin/src/content-manager.d.ts +9 -5
  221. package/dist/admin/src/exports.d.ts +3 -1
  222. package/dist/admin/src/history/components/VersionInputRenderer.d.ts +1 -1
  223. package/dist/admin/src/history/index.d.ts +3 -0
  224. package/dist/admin/src/history/services/historyVersion.d.ts +2 -2
  225. package/dist/admin/src/hooks/useDocument.d.ts +54 -9
  226. package/dist/admin/src/hooks/useDocumentActions.d.ts +25 -3
  227. package/dist/admin/src/hooks/useDocumentLayout.d.ts +2 -2
  228. package/dist/admin/src/hooks/useDragAndDrop.d.ts +4 -4
  229. package/dist/admin/src/hooks/useKeyboardDragAndDrop.d.ts +1 -1
  230. package/dist/admin/src/index.d.ts +2 -0
  231. package/dist/admin/src/pages/EditView/EditViewPage.d.ts +9 -1
  232. package/dist/admin/src/pages/EditView/components/DocumentActions.d.ts +14 -6
  233. package/dist/admin/src/pages/EditView/components/DocumentStatus.d.ts +3 -3
  234. package/dist/admin/src/pages/EditView/components/EditorToolbarObserver.d.ts +11 -0
  235. package/dist/admin/src/pages/EditView/components/FormInputs/BlocksInput/Blocks/Code.d.ts +55 -0
  236. package/dist/admin/src/pages/EditView/components/FormInputs/BlocksInput/BlocksInput.d.ts +3 -3
  237. package/dist/admin/src/pages/EditView/components/FormInputs/BlocksInput/utils/constants.d.ts +5 -0
  238. package/dist/admin/src/pages/EditView/components/FormInputs/Component/Input.d.ts +2 -2
  239. package/dist/admin/src/pages/EditView/components/FormInputs/DynamicZone/ComponentCategory.d.ts +3 -5
  240. package/dist/admin/src/pages/EditView/components/FormInputs/DynamicZone/DynamicComponent.d.ts +4 -1
  241. package/dist/admin/src/pages/EditView/components/FormInputs/DynamicZone/Field.d.ts +4 -1
  242. package/dist/admin/src/pages/EditView/components/FormInputs/Relations.d.ts +31 -18
  243. package/dist/admin/src/pages/EditView/components/FormInputs/UID.d.ts +2 -2
  244. package/dist/admin/src/pages/EditView/components/FormInputs/Wysiwyg/EditorLayout.d.ts +3 -49
  245. package/dist/admin/src/pages/EditView/components/FormInputs/Wysiwyg/Field.d.ts +2 -2
  246. package/dist/admin/src/pages/EditView/components/FormInputs/Wysiwyg/WysiwygFooter.d.ts +2 -2
  247. package/dist/admin/src/pages/EditView/components/FormInputs/Wysiwyg/WysiwygNav.d.ts +1 -2
  248. package/dist/admin/src/pages/EditView/components/FormInputs/Wysiwyg/WysiwygStyles.d.ts +16 -53
  249. package/dist/admin/src/pages/EditView/components/FormLayout.d.ts +29 -1
  250. package/dist/admin/src/pages/EditView/components/Header.d.ts +11 -11
  251. package/dist/admin/src/pages/EditView/components/InputRenderer.d.ts +2 -10
  252. package/dist/admin/src/pages/EditView/utils/data.d.ts +1 -0
  253. package/dist/admin/src/pages/ListView/components/BulkActions/Actions.d.ts +3 -30
  254. package/dist/admin/src/pages/ListView/components/BulkActions/ConfirmBulkActionDialog.d.ts +2 -2
  255. package/dist/admin/src/pages/ListView/components/BulkActions/PublishAction.d.ts +9 -26
  256. package/dist/admin/src/preview/components/PreviewContent.d.ts +3 -0
  257. package/dist/admin/src/preview/components/PreviewHeader.d.ts +3 -0
  258. package/dist/admin/src/preview/components/PreviewSidePanel.d.ts +3 -0
  259. package/dist/admin/src/preview/index.d.ts +3 -0
  260. package/dist/admin/src/preview/pages/Preview.d.ts +13 -0
  261. package/dist/admin/src/preview/routes.d.ts +3 -0
  262. package/dist/admin/src/preview/services/preview.d.ts +3 -0
  263. package/dist/admin/src/router.d.ts +1 -1
  264. package/dist/admin/src/services/api.d.ts +2 -3
  265. package/dist/admin/src/services/components.d.ts +2 -2
  266. package/dist/admin/src/services/contentTypes.d.ts +5 -5
  267. package/dist/admin/src/services/documents.d.ts +31 -20
  268. package/dist/admin/src/services/init.d.ts +2 -2
  269. package/dist/admin/src/services/relations.d.ts +3 -3
  270. package/dist/admin/src/services/uid.d.ts +3 -3
  271. package/dist/admin/src/utils/api.d.ts +4 -18
  272. package/dist/admin/src/utils/validation.d.ts +5 -7
  273. package/dist/server/index.js +5479 -3991
  274. package/dist/server/index.js.map +1 -1
  275. package/dist/server/index.mjs +5473 -3982
  276. package/dist/server/index.mjs.map +1 -1
  277. package/dist/server/src/bootstrap.d.ts.map +1 -1
  278. package/dist/server/src/controllers/collection-types.d.ts.map +1 -1
  279. package/dist/server/src/controllers/index.d.ts.map +1 -1
  280. package/dist/server/src/controllers/relations.d.ts.map +1 -1
  281. package/dist/server/src/controllers/single-types.d.ts.map +1 -1
  282. package/dist/server/src/controllers/uid.d.ts.map +1 -1
  283. package/dist/server/src/controllers/utils/metadata.d.ts +23 -0
  284. package/dist/server/src/controllers/utils/metadata.d.ts.map +1 -0
  285. package/dist/server/src/controllers/validation/dimensions.d.ts +11 -0
  286. package/dist/server/src/controllers/validation/dimensions.d.ts.map +1 -0
  287. package/dist/server/src/controllers/validation/index.d.ts +1 -1
  288. package/dist/server/src/history/controllers/history-version.d.ts +1 -1
  289. package/dist/server/src/history/controllers/history-version.d.ts.map +1 -1
  290. package/dist/server/src/history/services/history.d.ts +3 -3
  291. package/dist/server/src/history/services/history.d.ts.map +1 -1
  292. package/dist/server/src/history/services/lifecycles.d.ts.map +1 -1
  293. package/dist/server/src/history/services/utils.d.ts +8 -12
  294. package/dist/server/src/history/services/utils.d.ts.map +1 -1
  295. package/dist/server/src/index.d.ts +21 -36
  296. package/dist/server/src/index.d.ts.map +1 -1
  297. package/dist/server/src/policies/hasPermissions.d.ts.map +1 -1
  298. package/dist/server/src/preview/controllers/index.d.ts +2 -0
  299. package/dist/server/src/preview/controllers/index.d.ts.map +1 -0
  300. package/dist/server/src/preview/controllers/preview.d.ts +13 -0
  301. package/dist/server/src/preview/controllers/preview.d.ts.map +1 -0
  302. package/dist/server/src/preview/controllers/validation/preview.d.ts +6 -0
  303. package/dist/server/src/preview/controllers/validation/preview.d.ts.map +1 -0
  304. package/dist/server/src/preview/index.d.ts +4 -0
  305. package/dist/server/src/preview/index.d.ts.map +1 -0
  306. package/dist/server/src/preview/routes/index.d.ts +8 -0
  307. package/dist/server/src/preview/routes/index.d.ts.map +1 -0
  308. package/dist/server/src/preview/routes/preview.d.ts +4 -0
  309. package/dist/server/src/preview/routes/preview.d.ts.map +1 -0
  310. package/dist/server/src/preview/services/index.d.ts +16 -0
  311. package/dist/server/src/preview/services/index.d.ts.map +1 -0
  312. package/dist/server/src/preview/services/preview-config.d.ts +32 -0
  313. package/dist/server/src/preview/services/preview-config.d.ts.map +1 -0
  314. package/dist/server/src/preview/services/preview.d.ts +12 -0
  315. package/dist/server/src/preview/services/preview.d.ts.map +1 -0
  316. package/dist/server/src/preview/utils.d.ts +19 -0
  317. package/dist/server/src/preview/utils.d.ts.map +1 -0
  318. package/dist/server/src/register.d.ts.map +1 -1
  319. package/dist/server/src/routes/index.d.ts.map +1 -1
  320. package/dist/server/src/services/document-manager.d.ts +11 -6
  321. package/dist/server/src/services/document-manager.d.ts.map +1 -1
  322. package/dist/server/src/services/document-metadata.d.ts +16 -35
  323. package/dist/server/src/services/document-metadata.d.ts.map +1 -1
  324. package/dist/server/src/services/index.d.ts +21 -36
  325. package/dist/server/src/services/index.d.ts.map +1 -1
  326. package/dist/server/src/services/permission-checker.d.ts.map +1 -1
  327. package/dist/server/src/services/utils/count.d.ts +1 -1
  328. package/dist/server/src/services/utils/count.d.ts.map +1 -1
  329. package/dist/server/src/services/utils/populate.d.ts +9 -2
  330. package/dist/server/src/services/utils/populate.d.ts.map +1 -1
  331. package/dist/server/src/utils/index.d.ts +2 -0
  332. package/dist/server/src/utils/index.d.ts.map +1 -1
  333. package/dist/shared/contracts/collection-types.d.ts +17 -8
  334. package/dist/shared/contracts/collection-types.d.ts.map +1 -1
  335. package/dist/shared/contracts/components.d.ts +0 -1
  336. package/dist/shared/contracts/content-types.d.ts +0 -1
  337. package/dist/shared/contracts/history-versions.d.ts +0 -1
  338. package/dist/shared/contracts/index.d.ts +1 -1
  339. package/dist/shared/contracts/index.d.ts.map +1 -1
  340. package/dist/shared/contracts/init.d.ts +0 -1
  341. package/dist/shared/contracts/preview.d.ts +26 -0
  342. package/dist/shared/contracts/preview.d.ts.map +1 -0
  343. package/dist/shared/contracts/relations.d.ts +3 -4
  344. package/dist/shared/contracts/relations.d.ts.map +1 -1
  345. package/dist/shared/contracts/review-workflows.d.ts +0 -1
  346. package/dist/shared/contracts/single-types.d.ts +0 -1
  347. package/dist/shared/contracts/uid.d.ts +0 -1
  348. package/dist/shared/index.d.ts +0 -1
  349. package/dist/shared/index.js +37 -22
  350. package/dist/shared/index.js.map +1 -1
  351. package/dist/shared/index.mjs +36 -23
  352. package/dist/shared/index.mjs.map +1 -1
  353. package/package.json +30 -27
  354. package/dist/_chunks/CardDragPreview-DSVYodBX.js +0 -73
  355. package/dist/_chunks/CardDragPreview-DSVYodBX.js.map +0 -1
  356. package/dist/_chunks/CardDragPreview-ikSG4M46.mjs +0 -72
  357. package/dist/_chunks/CardDragPreview-ikSG4M46.mjs.map +0 -1
  358. package/dist/_chunks/ComponentConfigurationPage-2iOVVhqV.js +0 -255
  359. package/dist/_chunks/ComponentConfigurationPage-2iOVVhqV.js.map +0 -1
  360. package/dist/_chunks/ComponentConfigurationPage-DjQBdcKF.mjs +0 -236
  361. package/dist/_chunks/ComponentConfigurationPage-DjQBdcKF.mjs.map +0 -1
  362. package/dist/_chunks/ComponentIcon-BBQsYCVn.js +0 -170
  363. package/dist/_chunks/ComponentIcon-BBQsYCVn.js.map +0 -1
  364. package/dist/_chunks/ComponentIcon-BOFnK76n.mjs +0 -151
  365. package/dist/_chunks/ComponentIcon-BOFnK76n.mjs.map +0 -1
  366. package/dist/_chunks/EditConfigurationPage-B7dw5_cS.js +0 -151
  367. package/dist/_chunks/EditConfigurationPage-B7dw5_cS.js.map +0 -1
  368. package/dist/_chunks/EditConfigurationPage-BoBb-DLH.mjs +0 -132
  369. package/dist/_chunks/EditConfigurationPage-BoBb-DLH.mjs.map +0 -1
  370. package/dist/_chunks/EditViewPage-KRG56aCq.js +0 -224
  371. package/dist/_chunks/EditViewPage-KRG56aCq.js.map +0 -1
  372. package/dist/_chunks/EditViewPage-aUnqL-63.mjs +0 -203
  373. package/dist/_chunks/EditViewPage-aUnqL-63.mjs.map +0 -1
  374. package/dist/_chunks/Field-kVFO4ZKB.mjs +0 -5319
  375. package/dist/_chunks/Field-kVFO4ZKB.mjs.map +0 -1
  376. package/dist/_chunks/Field-kq1c2TF1.js +0 -5352
  377. package/dist/_chunks/Field-kq1c2TF1.js.map +0 -1
  378. package/dist/_chunks/FieldTypeIcon-CMlNO8PE.mjs +0 -50
  379. package/dist/_chunks/FieldTypeIcon-CMlNO8PE.mjs.map +0 -1
  380. package/dist/_chunks/FieldTypeIcon-Dnwq_IRF.js +0 -49
  381. package/dist/_chunks/FieldTypeIcon-Dnwq_IRF.js.map +0 -1
  382. package/dist/_chunks/Form-CQ67ZifP.js +0 -759
  383. package/dist/_chunks/Form-CQ67ZifP.js.map +0 -1
  384. package/dist/_chunks/Form-Jgh5hGTu.mjs +0 -737
  385. package/dist/_chunks/Form-Jgh5hGTu.mjs.map +0 -1
  386. package/dist/_chunks/History-BLEnudTX.js +0 -956
  387. package/dist/_chunks/History-BLEnudTX.js.map +0 -1
  388. package/dist/_chunks/History-DKhZAPcK.mjs +0 -934
  389. package/dist/_chunks/History-DKhZAPcK.mjs.map +0 -1
  390. package/dist/_chunks/ListConfigurationPage-Zso_LUjn.js +0 -643
  391. package/dist/_chunks/ListConfigurationPage-Zso_LUjn.js.map +0 -1
  392. package/dist/_chunks/ListConfigurationPage-nrXcxNYi.mjs +0 -622
  393. package/dist/_chunks/ListConfigurationPage-nrXcxNYi.mjs.map +0 -1
  394. package/dist/_chunks/ListViewPage-ChhYmA-L.mjs +0 -835
  395. package/dist/_chunks/ListViewPage-ChhYmA-L.mjs.map +0 -1
  396. package/dist/_chunks/ListViewPage-DsaOakWQ.js +0 -859
  397. package/dist/_chunks/ListViewPage-DsaOakWQ.js.map +0 -1
  398. package/dist/_chunks/NoContentTypePage-BrdFcN33.mjs +0 -51
  399. package/dist/_chunks/NoContentTypePage-BrdFcN33.mjs.map +0 -1
  400. package/dist/_chunks/NoContentTypePage-DPCuS9Y1.js +0 -51
  401. package/dist/_chunks/NoContentTypePage-DPCuS9Y1.js.map +0 -1
  402. package/dist/_chunks/NoPermissionsPage-B9dqrtTy.mjs +0 -23
  403. package/dist/_chunks/NoPermissionsPage-B9dqrtTy.mjs.map +0 -1
  404. package/dist/_chunks/NoPermissionsPage-DdyOfdKb.js +0 -23
  405. package/dist/_chunks/NoPermissionsPage-DdyOfdKb.js.map +0 -1
  406. package/dist/_chunks/Relations-CY8Isqdu.js +0 -705
  407. package/dist/_chunks/Relations-CY8Isqdu.js.map +0 -1
  408. package/dist/_chunks/Relations-DjFiYd7-.mjs +0 -684
  409. package/dist/_chunks/Relations-DjFiYd7-.mjs.map +0 -1
  410. package/dist/_chunks/ar-BUUWXIYu.js +0 -226
  411. package/dist/_chunks/ar-BUUWXIYu.js.map +0 -1
  412. package/dist/_chunks/ar-CCEVvqGG.mjs +0 -226
  413. package/dist/_chunks/ca-5U32ON2v.mjs +0 -201
  414. package/dist/_chunks/ca-Cmk45QO6.js +0 -201
  415. package/dist/_chunks/cs-CM2aBUar.mjs +0 -125
  416. package/dist/_chunks/cs-CkJy6B2v.js +0 -125
  417. package/dist/_chunks/de-C72KDNOl.mjs +0 -199
  418. package/dist/_chunks/de-CCEmbAah.js +0 -199
  419. package/dist/_chunks/en-C-V1_90f.js +0 -285
  420. package/dist/_chunks/en-MBPul9Su.mjs +0 -285
  421. package/dist/_chunks/es-CeXiYflN.mjs +0 -196
  422. package/dist/_chunks/es-EUonQTon.js +0 -196
  423. package/dist/_chunks/eu-CdALomew.mjs +0 -202
  424. package/dist/_chunks/eu-VDH-3ovk.js +0 -202
  425. package/dist/_chunks/fr-B7kGGg3E.js +0 -206
  426. package/dist/_chunks/fr-B7kGGg3E.js.map +0 -1
  427. package/dist/_chunks/fr-CD9VFbPM.mjs +0 -206
  428. package/dist/_chunks/fr-CD9VFbPM.mjs.map +0 -1
  429. package/dist/_chunks/gu-BRmF601H.js +0 -200
  430. package/dist/_chunks/gu-CNpaMDpH.mjs +0 -200
  431. package/dist/_chunks/gu-CNpaMDpH.mjs.map +0 -1
  432. package/dist/_chunks/hi-CCJBptSq.js +0 -200
  433. package/dist/_chunks/hi-CCJBptSq.js.map +0 -1
  434. package/dist/_chunks/hi-Dwvd04m3.mjs +0 -200
  435. package/dist/_chunks/hi-Dwvd04m3.mjs.map +0 -1
  436. package/dist/_chunks/hooks-BAaaKPS_.js.map +0 -1
  437. package/dist/_chunks/hooks-E5u1mcgM.mjs +0 -8
  438. package/dist/_chunks/hooks-E5u1mcgM.mjs.map +0 -1
  439. package/dist/_chunks/hu-CeYvaaO0.mjs +0 -202
  440. package/dist/_chunks/hu-CeYvaaO0.mjs.map +0 -1
  441. package/dist/_chunks/hu-sNV_yLYy.js +0 -202
  442. package/dist/_chunks/hu-sNV_yLYy.js.map +0 -1
  443. package/dist/_chunks/id-B5Ser98A.js +0 -160
  444. package/dist/_chunks/id-B5Ser98A.js.map +0 -1
  445. package/dist/_chunks/id-BtwA9WJT.mjs +0 -160
  446. package/dist/_chunks/index-CAc9yTnx.mjs +0 -3175
  447. package/dist/_chunks/index-CAc9yTnx.mjs.map +0 -1
  448. package/dist/_chunks/index-DNa1J4HE.js +0 -3195
  449. package/dist/_chunks/index-DNa1J4HE.js.map +0 -1
  450. package/dist/_chunks/it-BrVPqaf1.mjs +0 -162
  451. package/dist/_chunks/it-DkBIs7vD.js +0 -162
  452. package/dist/_chunks/ja-CcFe8diO.js +0 -196
  453. package/dist/_chunks/ja-CtsUxOvk.mjs +0 -196
  454. package/dist/_chunks/ko-HVQRlfUI.mjs +0 -195
  455. package/dist/_chunks/ko-woFZPmLk.js +0 -195
  456. package/dist/_chunks/layout-BqtLA6Lb.js +0 -473
  457. package/dist/_chunks/layout-BqtLA6Lb.js.map +0 -1
  458. package/dist/_chunks/layout-CXsHbc3E.mjs +0 -453
  459. package/dist/_chunks/layout-CXsHbc3E.mjs.map +0 -1
  460. package/dist/_chunks/ml-BihZwQit.mjs +0 -200
  461. package/dist/_chunks/ml-BihZwQit.mjs.map +0 -1
  462. package/dist/_chunks/ml-C2W8N8k1.js +0 -200
  463. package/dist/_chunks/ml-C2W8N8k1.js.map +0 -1
  464. package/dist/_chunks/ms-BuFotyP_.js +0 -144
  465. package/dist/_chunks/ms-m_WjyWx7.mjs +0 -144
  466. package/dist/_chunks/nl-D4R9gHx5.mjs +0 -202
  467. package/dist/_chunks/nl-D4R9gHx5.mjs.map +0 -1
  468. package/dist/_chunks/nl-bbEOHChV.js +0 -202
  469. package/dist/_chunks/nl-bbEOHChV.js.map +0 -1
  470. package/dist/_chunks/objects-gigeqt7s.js +0 -49
  471. package/dist/_chunks/objects-gigeqt7s.js.map +0 -1
  472. package/dist/_chunks/objects-mKMAmfec.mjs +0 -47
  473. package/dist/_chunks/objects-mKMAmfec.mjs.map +0 -1
  474. package/dist/_chunks/pl-sbx9mSt_.mjs +0 -199
  475. package/dist/_chunks/pl-sbx9mSt_.mjs.map +0 -1
  476. package/dist/_chunks/pl-uzwG-hk7.js +0 -199
  477. package/dist/_chunks/pl-uzwG-hk7.js.map +0 -1
  478. package/dist/_chunks/pt-BR-BiOz37D9.js +0 -201
  479. package/dist/_chunks/pt-BR-C71iDxnh.mjs +0 -201
  480. package/dist/_chunks/pt-BsaFvS8-.mjs +0 -95
  481. package/dist/_chunks/pt-BsaFvS8-.mjs.map +0 -1
  482. package/dist/_chunks/pt-CeXQuq50.js +0 -95
  483. package/dist/_chunks/pt-CeXQuq50.js.map +0 -1
  484. package/dist/_chunks/relations-BHY_KDJ_.js +0 -134
  485. package/dist/_chunks/relations-BHY_KDJ_.js.map +0 -1
  486. package/dist/_chunks/relations-mMFEcZRq.mjs +0 -135
  487. package/dist/_chunks/relations-mMFEcZRq.mjs.map +0 -1
  488. package/dist/_chunks/ru-BE6A4Exp.mjs +0 -231
  489. package/dist/_chunks/ru-BT3ybNny.js +0 -231
  490. package/dist/_chunks/sa-CcvkYInH.js +0 -200
  491. package/dist/_chunks/sa-CcvkYInH.js.map +0 -1
  492. package/dist/_chunks/sa-Dag0k-Z8.mjs +0 -200
  493. package/dist/_chunks/sa-Dag0k-Z8.mjs.map +0 -1
  494. package/dist/_chunks/sk-BFg-R8qJ.mjs +0 -202
  495. package/dist/_chunks/sk-BFg-R8qJ.mjs.map +0 -1
  496. package/dist/_chunks/sk-CvY09Xjv.js +0 -202
  497. package/dist/_chunks/sk-CvY09Xjv.js.map +0 -1
  498. package/dist/_chunks/sv-CUnfWGsh.mjs +0 -202
  499. package/dist/_chunks/sv-CUnfWGsh.mjs.map +0 -1
  500. package/dist/_chunks/sv-MYDuzgvT.js +0 -202
  501. package/dist/_chunks/sv-MYDuzgvT.js.map +0 -1
  502. package/dist/_chunks/th-BqbI8lIT.mjs +0 -148
  503. package/dist/_chunks/th-BqbI8lIT.mjs.map +0 -1
  504. package/dist/_chunks/th-D9_GfAjc.js +0 -148
  505. package/dist/_chunks/tr-CgeK3wJM.mjs +0 -199
  506. package/dist/_chunks/tr-CgeK3wJM.mjs.map +0 -1
  507. package/dist/_chunks/tr-D9UH-O_R.js +0 -199
  508. package/dist/_chunks/tr-D9UH-O_R.js.map +0 -1
  509. package/dist/_chunks/uk-C8EiqJY7.js +0 -144
  510. package/dist/_chunks/uk-C8EiqJY7.js.map +0 -1
  511. package/dist/_chunks/uk-CR-zDhAY.mjs +0 -144
  512. package/dist/_chunks/urls-CbOsUOoW.mjs +0 -7
  513. package/dist/_chunks/urls-CbOsUOoW.mjs.map +0 -1
  514. package/dist/_chunks/urls-DzZya_gm.js +0 -6
  515. package/dist/_chunks/urls-DzZya_gm.js.map +0 -1
  516. package/dist/_chunks/useDragAndDrop-DdHgKsqq.mjs +0 -231
  517. package/dist/_chunks/useDragAndDrop-DdHgKsqq.mjs.map +0 -1
  518. package/dist/_chunks/useDragAndDrop-J0TUUbR6.js +0 -249
  519. package/dist/_chunks/useDragAndDrop-J0TUUbR6.js.map +0 -1
  520. package/dist/_chunks/vi-CJlYDheJ.js +0 -111
  521. package/dist/_chunks/vi-DUXIk_fw.mjs +0 -111
  522. package/dist/_chunks/zh-BWZspA60.mjs +0 -209
  523. package/dist/_chunks/zh-BWZspA60.mjs.map +0 -1
  524. package/dist/_chunks/zh-CQQfszqR.js +0 -209
  525. package/dist/_chunks/zh-CQQfszqR.js.map +0 -1
  526. package/dist/_chunks/zh-Hans-9kOncHGw.js +0 -952
  527. package/dist/_chunks/zh-Hans-BPQcRIyH.mjs +0 -952
  528. package/dist/server/src/controllers/utils/dimensions.d.ts +0 -5
  529. package/dist/server/src/controllers/utils/dimensions.d.ts.map +0 -1
  530. package/strapi-server.js +0 -3
@@ -1,934 +0,0 @@
1
- import { jsx, jsxs, Fragment } from "react/jsx-runtime";
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, FieldLabel, Box, Tooltip, Divider, Typography, Grid, GridItem, Button, Portal, FocusTrap, Main } from "@strapi/design-system";
5
- import { stringify } from "qs";
6
- import { useIntl } from "react-intl";
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, G as useDocument, f as useDocumentLayout, o as useGetContentTypeConfigurationQuery, c as buildValidParams } from "./index-CAc9yTnx.mjs";
9
- import pipe from "lodash/fp/pipe";
10
- import { u as useTypedSelector } from "./hooks-E5u1mcgM.mjs";
11
- import { a as useDynamicZone, u as useLazyComponents, b as useFieldHint, N as NotAllowedInput, U as UIDInput, W as Wysiwyg, D as DynamicZone, C as ComponentInput, B as BlocksInput, r as removeFieldsThatDontExistOnSchema, p as prepareTempKeys } from "./Field-kVFO4ZKB.mjs";
12
- import { ArrowLeft, WarningCircle } from "@strapi/icons";
13
- import styled from "styled-components";
14
- import { g as getRelationLabel } from "./relations-mMFEcZRq.mjs";
15
- const StyledAlert = styled(Alert).attrs({ closeLabel: "Close", onClose: () => {
16
- } })`
17
- button {
18
- display: none;
19
- }
20
- `;
21
- const LinkEllipsis = styled(Link)`
22
- display: block;
23
-
24
- & > span {
25
- white-space: nowrap;
26
- overflow: hidden;
27
- text-overflow: ellipsis;
28
- display: block;
29
- }
30
- `;
31
- const CustomRelationInput = (props) => {
32
- const { formatMessage } = useIntl();
33
- const field = useField(props.name);
34
- const formattedFieldValue = Array.isArray(field.value) ? {
35
- results: field.value,
36
- meta: { missingCount: 0 }
37
- } : field.value;
38
- if (!formattedFieldValue || formattedFieldValue.results.length === 0 && formattedFieldValue.meta.missingCount === 0) {
39
- return /* @__PURE__ */ jsxs(Fragment, { children: [
40
- /* @__PURE__ */ jsx(FieldLabel, { children: props.label }),
41
- /* @__PURE__ */ jsx(Box, { marginTop: 1, children: /* @__PURE__ */ jsx(StyledAlert, { variant: "default", children: formatMessage({
42
- id: "content-manager.history.content.no-relations",
43
- defaultMessage: "No relations."
44
- }) }) })
45
- ] });
46
- }
47
- const { results, meta } = formattedFieldValue;
48
- return /* @__PURE__ */ jsxs(Box, { children: [
49
- /* @__PURE__ */ jsx(FieldLabel, { children: props.label }),
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}`;
52
- const label = getRelationLabel(relationData, props.mainField);
53
- return /* @__PURE__ */ jsxs(
54
- Flex,
55
- {
56
- paddingTop: 2,
57
- paddingBottom: 2,
58
- paddingLeft: 4,
59
- paddingRight: 4,
60
- hasRadius: true,
61
- borderColor: "neutral200",
62
- background: "neutral150",
63
- justifyContent: "space-between",
64
- children: [
65
- /* @__PURE__ */ jsx(Box, { minWidth: 0, paddingTop: 1, paddingBottom: 1, paddingRight: 4, children: /* @__PURE__ */ jsx(Tooltip, { description: label, children: /* @__PURE__ */ jsx(LinkEllipsis, { forwardedAs: NavLink, to: href, children: label }) }) }),
66
- /* @__PURE__ */ jsx(DocumentStatus, { status: relationData.status })
67
- ]
68
- },
69
- relationData.documentId
70
- );
71
- }) }),
72
- meta.missingCount > 0 && /* @__PURE__ */ jsx(
73
- StyledAlert,
74
- {
75
- marginTop: 1,
76
- variant: "warning",
77
- title: formatMessage(
78
- {
79
- id: "content-manager.history.content.missing-relations.title",
80
- defaultMessage: "{number, plural, =1 {Missing relation} other {{number} missing relations}}"
81
- },
82
- { number: meta.missingCount }
83
- ),
84
- children: formatMessage(
85
- {
86
- id: "content-manager.history.content.missing-relations.message",
87
- defaultMessage: "{number, plural, =1 {It has} other {They have}} been deleted and can't be restored."
88
- },
89
- { number: meta.missingCount }
90
- )
91
- }
92
- )
93
- ] });
94
- };
95
- const CustomMediaInput = (props) => {
96
- const {
97
- value: { results, meta }
98
- } = useField(props.name);
99
- const { formatMessage } = useIntl();
100
- const fields = useStrapiApp("CustomMediaInput", (state) => state.fields);
101
- const MediaLibrary = fields.media;
102
- return /* @__PURE__ */ jsxs(Flex, { direction: "column", gap: 2, alignItems: "stretch", children: [
103
- /* @__PURE__ */ jsx(Form, { method: "PUT", disabled: true, initialValues: { [props.name]: results }, children: /* @__PURE__ */ jsx(MediaLibrary, { ...props, disabled: true, multiple: results.length > 1 }) }),
104
- meta.missingCount > 0 && /* @__PURE__ */ jsx(
105
- StyledAlert,
106
- {
107
- variant: "warning",
108
- closeLabel: "Close",
109
- onClose: () => {
110
- },
111
- title: formatMessage(
112
- {
113
- id: "content-manager.history.content.missing-assets.title",
114
- defaultMessage: "{number, plural, =1 {Missing asset} other {{number} missing assets}}"
115
- },
116
- { number: meta.missingCount }
117
- ),
118
- children: formatMessage(
119
- {
120
- id: "content-manager.history.content.missing-assets.message",
121
- defaultMessage: "{number, plural, =1 {It has} other {They have}} been deleted in the Media Library and can't be restored."
122
- },
123
- { number: meta.missingCount }
124
- )
125
- }
126
- )
127
- ] });
128
- };
129
- const VersionInputRenderer = ({
130
- visible,
131
- hint: providedHint,
132
- shouldIgnoreRBAC = false,
133
- ...props
134
- }) => {
135
- const { formatMessage } = useIntl();
136
- const version = useHistoryContext("VersionContent", (state) => state.selectedVersion);
137
- const configuration = useHistoryContext("VersionContent", (state) => state.configuration);
138
- const fieldSizes = useTypedSelector((state) => state["content-manager"].app.fieldSizes);
139
- const { id, components } = useDoc();
140
- const isFormDisabled = useForm("InputRenderer", (state) => state.disabled);
141
- const isInDynamicZone = useDynamicZone("isInDynamicZone", (state) => state.isInDynamicZone);
142
- const canCreateFields = useDocumentRBAC("InputRenderer", (rbac) => rbac.canCreateFields);
143
- const canReadFields = useDocumentRBAC("InputRenderer", (rbac) => rbac.canReadFields);
144
- const canUpdateFields = useDocumentRBAC("InputRenderer", (rbac) => rbac.canUpdateFields);
145
- const canUserAction = useDocumentRBAC("InputRenderer", (rbac) => rbac.canUserAction);
146
- const editableFields = id ? canUpdateFields : canCreateFields;
147
- const readableFields = id ? canReadFields : canCreateFields;
148
- const canUserReadField = canUserAction(props.name, readableFields, props.type);
149
- const canUserEditField = canUserAction(props.name, editableFields, props.type);
150
- const fields = useStrapiApp("InputRenderer", (app) => app.fields);
151
- const { lazyComponentStore } = useLazyComponents(
152
- attributeHasCustomFieldProperty(props.attribute) ? [props.attribute.customField] : void 0
153
- );
154
- const hint = useFieldHint(providedHint, props.attribute);
155
- const {
156
- edit: { components: componentsLayout }
157
- } = useDocLayout();
158
- if (!visible) {
159
- return null;
160
- }
161
- if (!shouldIgnoreRBAC && !canUserReadField && !isInDynamicZone) {
162
- return /* @__PURE__ */ jsx(NotAllowedInput, { hint, ...props });
163
- }
164
- const fieldIsDisabled = !canUserEditField && !isInDynamicZone || props.disabled || isFormDisabled;
165
- const addedAttributes = version.meta.unknownAttributes.added;
166
- if (Object.keys(addedAttributes).includes(props.name)) {
167
- return /* @__PURE__ */ jsxs(Flex, { direction: "column", alignItems: "flex-start", gap: 1, children: [
168
- /* @__PURE__ */ jsx(FieldLabel, { children: props.label }),
169
- /* @__PURE__ */ jsx(
170
- StyledAlert,
171
- {
172
- width: "100%",
173
- closeLabel: "Close",
174
- onClose: () => {
175
- },
176
- variant: "warning",
177
- title: formatMessage({
178
- id: "content-manager.history.content.new-field.title",
179
- defaultMessage: "New field"
180
- }),
181
- children: formatMessage({
182
- id: "content-manager.history.content.new-field.message",
183
- defaultMessage: "This field didn't exist when this version was saved. If you restore this version, it will be empty."
184
- })
185
- }
186
- )
187
- ] });
188
- }
189
- if (attributeHasCustomFieldProperty(props.attribute)) {
190
- const CustomInput = lazyComponentStore[props.attribute.customField];
191
- if (CustomInput) {
192
- return /* @__PURE__ */ jsx(CustomInput, { ...props, hint, disabled: fieldIsDisabled });
193
- }
194
- return /* @__PURE__ */ jsx(
195
- InputRenderer,
196
- {
197
- ...props,
198
- hint,
199
- type: props.attribute.customField,
200
- disabled: fieldIsDisabled
201
- }
202
- );
203
- }
204
- if (props.type === "media") {
205
- return /* @__PURE__ */ jsx(CustomMediaInput, { ...props, disabled: fieldIsDisabled });
206
- }
207
- const addedInputTypes = Object.keys(fields);
208
- if (!attributeHasCustomFieldProperty(props.attribute) && addedInputTypes.includes(props.type)) {
209
- const CustomInput = fields[props.type];
210
- return /* @__PURE__ */ jsx(CustomInput, { ...props, hint, disabled: fieldIsDisabled });
211
- }
212
- switch (props.type) {
213
- case "blocks":
214
- return /* @__PURE__ */ jsx(BlocksInput, { ...props, hint, type: props.type, disabled: fieldIsDisabled });
215
- case "component":
216
- const { layout } = componentsLayout[props.attribute.component];
217
- const [remainingFieldsLayout] = getRemaingFieldsLayout({
218
- layout: [layout],
219
- metadatas: configuration.components[props.attribute.component].metadatas,
220
- fieldSizes,
221
- schemaAttributes: components[props.attribute.component].attributes
222
- });
223
- return /* @__PURE__ */ jsx(
224
- ComponentInput,
225
- {
226
- ...props,
227
- layout: [...layout, ...remainingFieldsLayout || []],
228
- hint,
229
- disabled: fieldIsDisabled,
230
- children: (inputProps) => /* @__PURE__ */ jsx(VersionInputRenderer, { ...inputProps, shouldIgnoreRBAC: true })
231
- }
232
- );
233
- case "dynamiczone":
234
- return /* @__PURE__ */ jsx(DynamicZone, { ...props, hint, disabled: fieldIsDisabled });
235
- case "relation":
236
- return /* @__PURE__ */ jsx(CustomRelationInput, { ...props, hint, disabled: fieldIsDisabled });
237
- case "richtext":
238
- return /* @__PURE__ */ jsx(Wysiwyg, { ...props, hint, type: props.type, disabled: fieldIsDisabled });
239
- case "uid":
240
- return /* @__PURE__ */ jsx(UIDInput, { ...props, hint, type: props.type, disabled: fieldIsDisabled });
241
- case "enumeration":
242
- return /* @__PURE__ */ jsx(
243
- InputRenderer,
244
- {
245
- ...props,
246
- hint,
247
- options: props.attribute.enum.map((value) => ({ value })),
248
- type: props.customField ? "custom-field" : props.type,
249
- disabled: fieldIsDisabled
250
- }
251
- );
252
- default:
253
- const { unique: _unique, mainField: _mainField, ...restProps } = props;
254
- return /* @__PURE__ */ jsx(
255
- InputRenderer,
256
- {
257
- ...restProps,
258
- hint,
259
- type: props.customField ? "custom-field" : props.type,
260
- disabled: fieldIsDisabled
261
- }
262
- );
263
- }
264
- };
265
- const attributeHasCustomFieldProperty = (attribute) => "customField" in attribute && typeof attribute.customField === "string";
266
- const createLayoutFromFields = (fields) => {
267
- return fields.reduce((rows, field) => {
268
- if (field.type === "dynamiczone") {
269
- rows.push([field]);
270
- return rows;
271
- }
272
- if (!rows[rows.length - 1]) {
273
- rows.push([]);
274
- }
275
- rows[rows.length - 1].push(field);
276
- return rows;
277
- }, []).map((row) => [row]);
278
- };
279
- function getRemaingFieldsLayout({
280
- layout,
281
- metadatas,
282
- schemaAttributes,
283
- fieldSizes
284
- }) {
285
- const fieldsInLayout = layout.flatMap(
286
- (panel) => panel.flatMap((row) => row.flatMap((field) => field.name))
287
- );
288
- const remainingFields = Object.entries(metadatas).reduce(
289
- (currentRemainingFields, [name, field]) => {
290
- if (!fieldsInLayout.includes(name) && field.edit.visible === true) {
291
- const attribute = schemaAttributes[name];
292
- currentRemainingFields.push({
293
- attribute,
294
- type: attribute.type,
295
- visible: true,
296
- disabled: true,
297
- label: field.edit.label || name,
298
- name,
299
- size: fieldSizes[attribute.type].default ?? 12
300
- });
301
- }
302
- return currentRemainingFields;
303
- },
304
- []
305
- );
306
- return createLayoutFromFields(remainingFields);
307
- }
308
- const FormPanel = ({ panel }) => {
309
- if (panel.some((row) => row.some((field) => field.type === "dynamiczone"))) {
310
- const [row] = panel;
311
- const [field] = row;
312
- return /* @__PURE__ */ jsx(Grid, { gap: 4, children: /* @__PURE__ */ jsx(GridItem, { col: 12, s: 12, xs: 12, children: /* @__PURE__ */ jsx(VersionInputRenderer, { ...field }) }) }, field.name);
313
- }
314
- return /* @__PURE__ */ jsx(
315
- Box,
316
- {
317
- hasRadius: true,
318
- background: "neutral0",
319
- shadow: "tableShadow",
320
- paddingLeft: 6,
321
- paddingRight: 6,
322
- paddingTop: 6,
323
- paddingBottom: 6,
324
- borderColor: "neutral150",
325
- 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 }) => {
326
- return /* @__PURE__ */ jsx(GridItem, { col: size, s: 12, xs: 12, children: /* @__PURE__ */ jsx(VersionInputRenderer, { ...field }) }, field.name);
327
- }) }, gridRowIndex)) })
328
- }
329
- );
330
- };
331
- const VersionContent = () => {
332
- const { formatMessage } = useIntl();
333
- const { fieldSizes } = useTypedSelector((state) => state["content-manager"].app);
334
- const version = useHistoryContext("VersionContent", (state) => state.selectedVersion);
335
- const layout = useHistoryContext("VersionContent", (state) => state.layout);
336
- const configuration = useHistoryContext("VersionContent", (state) => state.configuration);
337
- const schema = useHistoryContext("VersionContent", (state) => state.schema);
338
- const removedAttributes = version.meta.unknownAttributes.removed;
339
- const removedAttributesAsFields = Object.entries(removedAttributes).map(
340
- ([attributeName, attribute]) => {
341
- const field = {
342
- attribute,
343
- shouldIgnoreRBAC: true,
344
- type: attribute.type,
345
- visible: true,
346
- disabled: true,
347
- label: attributeName,
348
- name: attributeName,
349
- size: fieldSizes[attribute.type].default ?? 12
350
- };
351
- return field;
352
- }
353
- );
354
- const unknownFieldsLayout = createLayoutFromFields(removedAttributesAsFields);
355
- const remainingFieldsLayout = getRemaingFieldsLayout({
356
- metadatas: configuration.contentType.metadatas,
357
- layout,
358
- schemaAttributes: schema.attributes,
359
- fieldSizes
360
- });
361
- const { components } = useDoc();
362
- const transformedData = React.useMemo(() => {
363
- const transform = (schemaAttributes, components2 = {}) => (document) => {
364
- const schema2 = { attributes: schemaAttributes };
365
- const transformations = pipe(
366
- removeFieldsThatDontExistOnSchema(schema2),
367
- prepareTempKeys(schema2, components2)
368
- );
369
- return transformations(document);
370
- };
371
- return transform(version.schema, components)(version.data);
372
- }, [components, version.data, version.schema]);
373
- return /* @__PURE__ */ jsxs(Layouts.Content, { children: [
374
- /* @__PURE__ */ jsx(Box, { paddingBottom: 8, children: /* @__PURE__ */ jsx(Form, { disabled: true, method: "PUT", initialValues: transformedData, children: /* @__PURE__ */ jsx(Flex, { direction: "column", alignItems: "stretch", gap: 6, position: "relative", children: [...layout, ...remainingFieldsLayout].map((panel, index) => {
375
- return /* @__PURE__ */ jsx(FormPanel, { panel }, index);
376
- }) }) }) }),
377
- removedAttributesAsFields.length > 0 && /* @__PURE__ */ jsxs(Fragment, { children: [
378
- /* @__PURE__ */ jsx(Divider, {}),
379
- /* @__PURE__ */ jsxs(Box, { paddingTop: 8, children: [
380
- /* @__PURE__ */ jsxs(Flex, { direction: "column", alignItems: "flex-start", paddingBottom: 6, gap: 1, children: [
381
- /* @__PURE__ */ jsx(Typography, { variant: "delta", children: formatMessage({
382
- id: "content-manager.history.content.unknown-fields.title",
383
- defaultMessage: "Unknown fields"
384
- }) }),
385
- /* @__PURE__ */ jsx(Typography, { variant: "pi", children: formatMessage(
386
- {
387
- id: "content-manager.history.content.unknown-fields.message",
388
- defaultMessage: "These fields have been deleted or renamed in the Content-Type Builder. <b>These fields will not be restored.</b>"
389
- },
390
- {
391
- b: (chunks) => /* @__PURE__ */ jsx(Typography, { variant: "pi", fontWeight: "bold", children: chunks })
392
- }
393
- ) })
394
- ] }),
395
- /* @__PURE__ */ jsx(Form, { disabled: true, method: "PUT", initialValues: version.data, children: /* @__PURE__ */ jsx(Flex, { direction: "column", alignItems: "stretch", gap: 6, position: "relative", children: unknownFieldsLayout.map((panel, index) => {
396
- return /* @__PURE__ */ jsx(FormPanel, { panel }, index);
397
- }) }) })
398
- ] })
399
- ] })
400
- ] });
401
- };
402
- const historyVersionsApi = contentManagerApi.injectEndpoints({
403
- endpoints: (builder) => ({
404
- getHistoryVersions: builder.query({
405
- query(params) {
406
- return {
407
- url: `/content-manager/history-versions`,
408
- method: "GET",
409
- config: {
410
- params
411
- }
412
- };
413
- },
414
- providesTags: ["HistoryVersion"]
415
- }),
416
- restoreVersion: builder.mutation({
417
- query({ params, body }) {
418
- return {
419
- url: `/content-manager/history-versions/${params.versionId}/restore`,
420
- method: "PUT",
421
- data: body
422
- };
423
- },
424
- invalidatesTags: (_res, _error, { documentId, collectionType, params }) => {
425
- return [
426
- "HistoryVersion",
427
- {
428
- type: "Document",
429
- id: collectionType === COLLECTION_TYPES ? `${params.contentType}_${documentId}` : params.contentType
430
- }
431
- ];
432
- }
433
- })
434
- })
435
- });
436
- const { useGetHistoryVersionsQuery, useRestoreVersionMutation } = historyVersionsApi;
437
- const VersionHeader = ({ headerId }) => {
438
- const [isConfirmDialogOpen, setIsConfirmDialogOpen] = React.useState(false);
439
- const navigate = useNavigate();
440
- const { formatMessage, formatDate } = useIntl();
441
- const { toggleNotification } = useNotification();
442
- const [{ query }] = useQueryParams();
443
- const { collectionType, slug } = useParams();
444
- const [restoreVersion, { isLoading }] = useRestoreVersionMutation();
445
- const { allowedActions } = useRBAC(PERMISSIONS.map((action) => ({ action, subject: slug })));
446
- const version = useHistoryContext("VersionHeader", (state) => state.selectedVersion);
447
- const mainField = useHistoryContext("VersionHeader", (state) => state.mainField);
448
- const schema = useHistoryContext("VersionHeader", (state) => state.schema);
449
- const isCurrentVersion = useHistoryContext(
450
- "VersionHeader",
451
- (state) => state.page === 1 && state.versions.data[0].id === state.selectedVersion.id
452
- );
453
- const mainFieldValue = version.data[mainField];
454
- const getNextNavigation = () => {
455
- const pluginsQueryParams = stringify({ plugins: query.plugins }, { encode: false });
456
- if (collectionType === COLLECTION_TYPES) {
457
- return {
458
- pathname: `/content-manager/${collectionType}/${version.contentType}/${version.relatedDocumentId}`,
459
- search: pluginsQueryParams
460
- };
461
- }
462
- return {
463
- pathname: `/content-manager/${collectionType}/${version.contentType}`,
464
- search: pluginsQueryParams
465
- };
466
- };
467
- const handleRestore = async () => {
468
- try {
469
- const response = await restoreVersion({
470
- documentId: version.relatedDocumentId,
471
- collectionType,
472
- params: {
473
- versionId: version.id,
474
- contentType: version.contentType
475
- },
476
- body: { contentType: version.contentType }
477
- });
478
- if ("data" in response) {
479
- navigate(getNextNavigation());
480
- toggleNotification({
481
- type: "success",
482
- title: formatMessage({
483
- id: "content-manager.restore.success.title",
484
- defaultMessage: "Version restored."
485
- }),
486
- message: formatMessage({
487
- id: "content-manager.restore.success.message",
488
- defaultMessage: "The content of the restored version is not published yet."
489
- })
490
- });
491
- }
492
- if ("error" in response) {
493
- toggleNotification({
494
- type: "danger",
495
- message: formatMessage({
496
- id: "content-manager.history.restore.error.message",
497
- defaultMessage: "Could not restore version."
498
- })
499
- });
500
- }
501
- } catch (error) {
502
- toggleNotification({
503
- type: "danger",
504
- message: formatMessage({ id: "notification.error", defaultMessage: "An error occurred" })
505
- });
506
- }
507
- };
508
- return /* @__PURE__ */ jsxs(Fragment, { children: [
509
- /* @__PURE__ */ jsx(
510
- Layouts.BaseHeader,
511
- {
512
- id: headerId,
513
- title: formatDate(new Date(version.createdAt), {
514
- year: "numeric",
515
- month: "numeric",
516
- day: "numeric",
517
- hour: "numeric",
518
- minute: "numeric"
519
- }),
520
- subtitle: /* @__PURE__ */ jsx(Typography, { variant: "epsilon", children: formatMessage(
521
- {
522
- id: "content-manager.history.version.subtitle",
523
- defaultMessage: "{hasLocale, select, true {{subtitle}, in {locale}} other {{subtitle}}}"
524
- },
525
- {
526
- hasLocale: Boolean(version.locale),
527
- subtitle: `${mainFieldValue || ""} (${schema.info.singularName})`.trim(),
528
- locale: version.locale?.name
529
- }
530
- ) }),
531
- navigationAction: /* @__PURE__ */ jsx(
532
- Link,
533
- {
534
- startIcon: /* @__PURE__ */ jsx(ArrowLeft, {}),
535
- as: NavLink,
536
- to: getNextNavigation(),
537
- children: formatMessage({
538
- id: "global.back",
539
- defaultMessage: "Back"
540
- })
541
- }
542
- ),
543
- sticky: false,
544
- primaryAction: /* @__PURE__ */ jsx(
545
- Button,
546
- {
547
- disabled: !allowedActions.canUpdate || isCurrentVersion,
548
- onClick: () => {
549
- setIsConfirmDialogOpen(true);
550
- },
551
- children: formatMessage({
552
- id: "content-manager.history.restore.confirm.button",
553
- defaultMessage: "Restore"
554
- })
555
- }
556
- )
557
- }
558
- ),
559
- /* @__PURE__ */ jsx(
560
- ConfirmDialog,
561
- {
562
- isOpen: isConfirmDialogOpen,
563
- onClose: () => setIsConfirmDialogOpen(false),
564
- onConfirm: handleRestore,
565
- icon: /* @__PURE__ */ jsx(WarningCircle, {}),
566
- endAction: /* @__PURE__ */ jsx(Button, { variant: "secondary", onClick: handleRestore, loading: isLoading, children: formatMessage({
567
- id: "content-manager.history.restore.confirm.button",
568
- defaultMessage: "Restore"
569
- }) }),
570
- children: /* @__PURE__ */ jsxs(
571
- Flex,
572
- {
573
- direction: "column",
574
- alignItems: "center",
575
- justifyContent: "center",
576
- gap: 2,
577
- textAlign: "center",
578
- children: [
579
- /* @__PURE__ */ jsx(Typography, { children: formatMessage({
580
- id: "content-manager.history.restore.confirm.title",
581
- defaultMessage: "Are you sure you want to restore this version?"
582
- }) }),
583
- /* @__PURE__ */ jsx(Typography, { children: formatMessage(
584
- {
585
- id: "content-manager.history.restore.confirm.message",
586
- defaultMessage: "{isDraft, select, true {The restored content will override your draft.} other {The restored content won't be published, it will override the draft and be saved as pending changes. You'll be able to publish the changes at anytime.}}"
587
- },
588
- {
589
- isDraft: version.status === "draft"
590
- }
591
- ) })
592
- ]
593
- }
594
- )
595
- }
596
- )
597
- ] });
598
- };
599
- const BlueText = (children) => /* @__PURE__ */ jsx(Typography, { textColor: "primary600", children });
600
- const VersionCard = ({ version, isCurrent }) => {
601
- const { formatDate, formatMessage } = useIntl();
602
- const [{ query }] = useQueryParams();
603
- const statusData = (() => {
604
- switch (version.status) {
605
- case "draft":
606
- return {
607
- background: "secondary100",
608
- border: "secondary200",
609
- text: "secondary700",
610
- message: {
611
- id: "content-manager.containers.List.draft",
612
- defaultMessage: "Draft"
613
- }
614
- };
615
- case "modified":
616
- return {
617
- background: "alternative100",
618
- border: "alternative200",
619
- text: "alternative700",
620
- message: {
621
- // TODO: check the translation key once D&P v5 is done
622
- id: "content-manager.containers.List.modified",
623
- defaultMessage: "Modified"
624
- }
625
- };
626
- case "published":
627
- default:
628
- return {
629
- background: "success100",
630
- border: "success200",
631
- text: "success700",
632
- message: {
633
- id: "content-manager.containers.List.published",
634
- defaultMessage: "Published"
635
- }
636
- };
637
- }
638
- })();
639
- const isActive = query.id === version.id.toString();
640
- const author = version.createdBy && getDisplayName(version.createdBy);
641
- return /* @__PURE__ */ jsxs(
642
- Flex,
643
- {
644
- direction: "column",
645
- alignItems: "flex-start",
646
- gap: 3,
647
- hasRadius: true,
648
- borderWidth: "1px",
649
- borderStyle: "solid",
650
- borderColor: isActive ? "primary600" : "neutral200",
651
- paddingTop: 4,
652
- paddingBottom: 4,
653
- paddingLeft: 5,
654
- paddingRight: 5,
655
- as: Link$1,
656
- to: `?${stringify({ ...query, id: version.id })}`,
657
- style: { textDecoration: "none" },
658
- children: [
659
- /* @__PURE__ */ jsxs(Flex, { direction: "column", gap: 1, alignItems: "flex-start", children: [
660
- /* @__PURE__ */ jsx(Typography, { as: "h3", fontWeight: "semiBold", children: formatDate(version.createdAt, {
661
- day: "numeric",
662
- month: "numeric",
663
- year: "numeric",
664
- hour: "2-digit",
665
- minute: "2-digit"
666
- }) }),
667
- /* @__PURE__ */ jsx(Typography, { as: "p", variant: "pi", textColor: "neutral600", children: formatMessage(
668
- {
669
- id: "content-manager.history.sidebar.versionDescription",
670
- defaultMessage: "{distanceToNow}{isAnonymous, select, true {} other { by {author}}}{isCurrent, select, true { <b>(current)</b>} other {}}"
671
- },
672
- {
673
- distanceToNow: /* @__PURE__ */ jsx(RelativeTime, { timestamp: new Date(version.createdAt) }),
674
- author,
675
- isAnonymous: !Boolean(version.createdBy),
676
- isCurrent,
677
- b: BlueText
678
- }
679
- ) })
680
- ] }),
681
- version.status && /* @__PURE__ */ jsx(
682
- Box,
683
- {
684
- background: statusData.background,
685
- borderStyle: "solid",
686
- borderWidth: "1px",
687
- borderColor: statusData.border,
688
- hasRadius: true,
689
- paddingLeft: "6px",
690
- paddingRight: "6px",
691
- paddingTop: "2px",
692
- paddingBottom: "2px",
693
- children: /* @__PURE__ */ jsx(Typography, { variant: "pi", fontWeight: "bold", textColor: statusData.text, children: formatMessage(statusData.message) })
694
- }
695
- )
696
- ]
697
- }
698
- );
699
- };
700
- const PaginationButton = ({ page, children }) => {
701
- const [{ query }] = useQueryParams();
702
- const { id: _id, ...queryRest } = query;
703
- return /* @__PURE__ */ jsx(Link$1, { to: { search: stringify({ ...queryRest, page }) }, style: { textDecoration: "none" }, children: /* @__PURE__ */ jsx(Typography, { variant: "omega", textColor: "primary600", children }) });
704
- };
705
- const VersionsList = () => {
706
- const { formatMessage } = useIntl();
707
- const { versions, page } = useHistoryContext("VersionsList", (state) => ({
708
- versions: state.versions,
709
- page: state.page
710
- }));
711
- return /* @__PURE__ */ jsxs(
712
- Flex,
713
- {
714
- shrink: 0,
715
- direction: "column",
716
- alignItems: "stretch",
717
- width: "320px",
718
- height: "100vh",
719
- background: "neutral0",
720
- borderColor: "neutral200",
721
- borderWidth: "0 0 0 1px",
722
- borderStyle: "solid",
723
- as: "aside",
724
- children: [
725
- /* @__PURE__ */ jsxs(
726
- Flex,
727
- {
728
- direction: "row",
729
- justifyContent: "space-between",
730
- padding: 4,
731
- borderColor: "neutral200",
732
- borderWidth: "0 0 1px",
733
- borderStyle: "solid",
734
- as: "header",
735
- children: [
736
- /* @__PURE__ */ jsx(Typography, { as: "h2", variant: "omega", fontWeight: "semiBold", children: formatMessage({
737
- id: "content-manager.history.sidebar.title",
738
- defaultMessage: "Versions"
739
- }) }),
740
- /* @__PURE__ */ jsx(Box, { background: "neutral150", hasRadius: true, padding: 1, children: /* @__PURE__ */ jsx(Typography, { variant: "sigma", textColor: "neutral600", children: versions.meta.pagination.total }) })
741
- ]
742
- }
743
- ),
744
- /* @__PURE__ */ jsxs(Box, { flex: 1, overflow: "auto", children: [
745
- versions.meta.pagination.page > 1 && /* @__PURE__ */ jsx(Box, { paddingTop: 4, textAlign: "center", children: /* @__PURE__ */ jsx(PaginationButton, { page: page - 1, children: formatMessage({
746
- id: "content-manager.history.sidebar.show-newer",
747
- defaultMessage: "Show newer versions"
748
- }) }) }),
749
- /* @__PURE__ */ jsx(
750
- Flex,
751
- {
752
- direction: "column",
753
- gap: 3,
754
- paddingTop: 5,
755
- paddingBottom: 5,
756
- paddingLeft: 4,
757
- paddingRight: 4,
758
- as: "ul",
759
- alignItems: "stretch",
760
- children: versions.data.map((version, index) => /* @__PURE__ */ jsx(
761
- "li",
762
- {
763
- "aria-label": formatMessage({
764
- id: "content-manager.history.sidebar.title.version-card.aria-label",
765
- defaultMessage: "Version card"
766
- }),
767
- children: /* @__PURE__ */ jsx(VersionCard, { version, isCurrent: page === 1 && index === 0 })
768
- },
769
- version.id
770
- ))
771
- }
772
- ),
773
- versions.meta.pagination.page < versions.meta.pagination.pageCount && /* @__PURE__ */ jsx(Box, { paddingBottom: 5, textAlign: "center", children: /* @__PURE__ */ jsx(PaginationButton, { page: page + 1, children: formatMessage({
774
- id: "content-manager.history.sidebar.show-older",
775
- defaultMessage: "Show older versions"
776
- }) }) })
777
- ] })
778
- ]
779
- }
780
- );
781
- };
782
- const [HistoryProvider, useHistoryContext] = createContext("HistoryPage");
783
- const HistoryPage = () => {
784
- const headerId = React.useId();
785
- const { formatMessage } = useIntl();
786
- const {
787
- slug,
788
- id: documentId,
789
- collectionType
790
- } = useParams();
791
- const { isLoading: isLoadingDocument, schema } = useDocument({
792
- collectionType,
793
- model: slug
794
- });
795
- const {
796
- isLoading: isLoadingLayout,
797
- edit: {
798
- layout,
799
- settings: { displayName, mainField }
800
- }
801
- } = useDocumentLayout(slug);
802
- const { data: configuration, isLoading: isLoadingConfiguration } = useGetContentTypeConfigurationQuery(slug);
803
- const [{ query }] = useQueryParams();
804
- const { id: selectedVersionId, ...queryWithoutId } = query;
805
- const validQueryParamsWithoutId = buildValidParams(queryWithoutId);
806
- const page = validQueryParamsWithoutId.page ? Number(validQueryParamsWithoutId.page) : 1;
807
- const versionsResponse = useGetHistoryVersionsQuery(
808
- {
809
- contentType: slug,
810
- ...documentId ? { documentId } : {},
811
- // Omit id since it's not needed by the endpoint and caused extra refetches
812
- ...validQueryParamsWithoutId
813
- },
814
- { refetchOnMountOrArgChange: true }
815
- );
816
- const initialRequestId = React.useRef(versionsResponse.requestId);
817
- const isStaleRequest = versionsResponse.requestId === initialRequestId.current;
818
- if (!slug || collectionType === COLLECTION_TYPES && !documentId) {
819
- return /* @__PURE__ */ jsx(Navigate, { to: "/content-manager" });
820
- }
821
- if (isLoadingDocument || isLoadingLayout || versionsResponse.isFetching || isStaleRequest || isLoadingConfiguration) {
822
- return /* @__PURE__ */ jsx(Page.Loading, {});
823
- }
824
- if (!versionsResponse.isError && !versionsResponse.data?.data?.length) {
825
- return /* @__PURE__ */ jsx(Page.NoData, {});
826
- }
827
- if (versionsResponse.data?.data?.length && !selectedVersionId) {
828
- return /* @__PURE__ */ jsx(
829
- Navigate,
830
- {
831
- to: { search: stringify({ ...query, id: versionsResponse.data.data[0].id }) },
832
- replace: true
833
- }
834
- );
835
- }
836
- const selectedVersion = versionsResponse.data?.data?.find(
837
- (version) => version.id.toString() === selectedVersionId
838
- );
839
- if (versionsResponse.isError || !layout || !schema || !selectedVersion || !configuration || // This should not happen as it's covered by versionsResponse.isError, but we need it for TS
840
- versionsResponse.data.error) {
841
- return /* @__PURE__ */ jsx(Page.Error, {});
842
- }
843
- return /* @__PURE__ */ jsxs(Fragment, { children: [
844
- /* @__PURE__ */ jsx(Page.Title, { children: formatMessage(
845
- {
846
- id: "content-manager.history.page-title",
847
- defaultMessage: "{contentType} history"
848
- },
849
- {
850
- contentType: displayName
851
- }
852
- ) }),
853
- /* @__PURE__ */ jsx(
854
- HistoryProvider,
855
- {
856
- contentType: slug,
857
- id: documentId,
858
- schema,
859
- layout,
860
- configuration,
861
- selectedVersion,
862
- versions: versionsResponse.data,
863
- page,
864
- mainField,
865
- children: /* @__PURE__ */ jsxs(Flex, { direction: "row", alignItems: "flex-start", children: [
866
- /* @__PURE__ */ jsxs(
867
- Main,
868
- {
869
- grow: 1,
870
- height: "100vh",
871
- background: "neutral100",
872
- paddingBottom: 6,
873
- overflow: "auto",
874
- labelledBy: headerId,
875
- children: [
876
- /* @__PURE__ */ jsx(VersionHeader, { headerId }),
877
- /* @__PURE__ */ jsx(VersionContent, {})
878
- ]
879
- }
880
- ),
881
- /* @__PURE__ */ jsx(VersionsList, {})
882
- ] })
883
- }
884
- )
885
- ] });
886
- };
887
- const ProtectedHistoryPageImpl = () => {
888
- const { slug } = useParams();
889
- const {
890
- permissions = [],
891
- isLoading,
892
- error
893
- } = useRBAC(PERMISSIONS.map((action) => ({ action, subject: slug })));
894
- if (isLoading) {
895
- return /* @__PURE__ */ jsx(Page.Loading, {});
896
- }
897
- if (error || !slug) {
898
- return /* @__PURE__ */ jsx(
899
- Box,
900
- {
901
- height: "100vh",
902
- width: "100vw",
903
- position: "fixed",
904
- top: 0,
905
- left: 0,
906
- zIndex: 2,
907
- background: "neutral0",
908
- children: /* @__PURE__ */ jsx(Page.Error, {})
909
- }
910
- );
911
- }
912
- return /* @__PURE__ */ jsx(
913
- Box,
914
- {
915
- height: "100vh",
916
- width: "100vw",
917
- position: "fixed",
918
- top: 0,
919
- left: 0,
920
- zIndex: 2,
921
- background: "neutral0",
922
- children: /* @__PURE__ */ jsx(Page.Protect, { permissions, children: ({ permissions: permissions2 }) => /* @__PURE__ */ jsx(DocumentRBAC, { permissions: permissions2, children: /* @__PURE__ */ jsx(HistoryPage, {}) }) })
923
- }
924
- );
925
- };
926
- const ProtectedHistoryPage = () => {
927
- return /* @__PURE__ */ jsx(Portal, { children: /* @__PURE__ */ jsx(FocusTrap, { children: /* @__PURE__ */ jsx(ProtectedHistoryPageImpl, {}) }) });
928
- };
929
- export {
930
- HistoryProvider,
931
- ProtectedHistoryPage,
932
- useHistoryContext
933
- };
934
- //# sourceMappingURL=History-DKhZAPcK.mjs.map