@strapi/content-manager 0.0.0-experimental.444e4e174027795a4a7cda0be4d0bb675d9b2575 → 0.0.0-experimental.450e4ff9428f8004f7486fabc43fc65a1348f328

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 (328) hide show
  1. package/dist/admin/components/ConfigurationForm/Fields.js +300 -204
  2. package/dist/admin/components/ConfigurationForm/Fields.js.map +1 -1
  3. package/dist/admin/components/ConfigurationForm/Fields.mjs +304 -209
  4. package/dist/admin/components/ConfigurationForm/Fields.mjs.map +1 -1
  5. package/dist/admin/components/Widgets.js +414 -0
  6. package/dist/admin/components/Widgets.js.map +1 -0
  7. package/dist/admin/components/Widgets.mjs +391 -0
  8. package/dist/admin/components/Widgets.mjs.map +1 -0
  9. package/dist/admin/content-manager.js.map +1 -1
  10. package/dist/admin/content-manager.mjs.map +1 -1
  11. package/dist/admin/history/components/VersionContent.js +24 -3
  12. package/dist/admin/history/components/VersionContent.js.map +1 -1
  13. package/dist/admin/history/components/VersionContent.mjs +25 -4
  14. package/dist/admin/history/components/VersionContent.mjs.map +1 -1
  15. package/dist/admin/history/components/VersionHeader.js +6 -0
  16. package/dist/admin/history/components/VersionHeader.js.map +1 -1
  17. package/dist/admin/history/components/VersionHeader.mjs +7 -1
  18. package/dist/admin/history/components/VersionHeader.mjs.map +1 -1
  19. package/dist/admin/history/pages/History.js +1 -9
  20. package/dist/admin/history/pages/History.js.map +1 -1
  21. package/dist/admin/history/pages/History.mjs +1 -9
  22. package/dist/admin/history/pages/History.mjs.map +1 -1
  23. package/dist/admin/hooks/useDocumentActions.js +20 -5
  24. package/dist/admin/hooks/useDocumentActions.js.map +1 -1
  25. package/dist/admin/hooks/useDocumentActions.mjs +20 -5
  26. package/dist/admin/hooks/useDocumentActions.mjs.map +1 -1
  27. package/dist/admin/hooks/useDocumentContext.js +57 -0
  28. package/dist/admin/hooks/useDocumentContext.js.map +1 -0
  29. package/dist/admin/hooks/useDocumentContext.mjs +36 -0
  30. package/dist/admin/hooks/useDocumentContext.mjs.map +1 -0
  31. package/dist/admin/index.js +62 -5
  32. package/dist/admin/index.js.map +1 -1
  33. package/dist/admin/index.mjs +61 -3
  34. package/dist/admin/index.mjs.map +1 -1
  35. package/dist/admin/pages/EditView/EditViewPage.js +105 -89
  36. package/dist/admin/pages/EditView/EditViewPage.js.map +1 -1
  37. package/dist/admin/pages/EditView/EditViewPage.mjs +107 -91
  38. package/dist/admin/pages/EditView/EditViewPage.mjs.map +1 -1
  39. package/dist/admin/pages/EditView/components/DocumentActions.js +314 -120
  40. package/dist/admin/pages/EditView/components/DocumentActions.js.map +1 -1
  41. package/dist/admin/pages/EditView/components/DocumentActions.mjs +321 -127
  42. package/dist/admin/pages/EditView/components/DocumentActions.mjs.map +1 -1
  43. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/BlocksContent.js +12 -15
  44. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/BlocksContent.js.map +1 -1
  45. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/BlocksContent.mjs +12 -15
  46. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/BlocksContent.mjs.map +1 -1
  47. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/BlocksEditor.js +61 -26
  48. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/BlocksEditor.js.map +1 -1
  49. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/BlocksEditor.mjs +63 -28
  50. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/BlocksEditor.mjs.map +1 -1
  51. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/BlocksToolbar.js +21 -35
  52. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/BlocksToolbar.js.map +1 -1
  53. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/BlocksToolbar.mjs +21 -35
  54. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/BlocksToolbar.mjs.map +1 -1
  55. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/EditorLayout.js +46 -95
  56. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/EditorLayout.js.map +1 -1
  57. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/EditorLayout.mjs +48 -78
  58. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/EditorLayout.mjs.map +1 -1
  59. package/dist/admin/pages/EditView/components/FormInputs/Component/Input.js +2 -2
  60. package/dist/admin/pages/EditView/components/FormInputs/Component/Input.js.map +1 -1
  61. package/dist/admin/pages/EditView/components/FormInputs/Component/Input.mjs +2 -2
  62. package/dist/admin/pages/EditView/components/FormInputs/Component/Input.mjs.map +1 -1
  63. package/dist/admin/pages/EditView/components/FormInputs/Component/NonRepeatable.js +14 -3
  64. package/dist/admin/pages/EditView/components/FormInputs/Component/NonRepeatable.js.map +1 -1
  65. package/dist/admin/pages/EditView/components/FormInputs/Component/NonRepeatable.mjs +15 -4
  66. package/dist/admin/pages/EditView/components/FormInputs/Component/NonRepeatable.mjs.map +1 -1
  67. package/dist/admin/pages/EditView/components/FormInputs/Component/Repeatable.js +17 -4
  68. package/dist/admin/pages/EditView/components/FormInputs/Component/Repeatable.js.map +1 -1
  69. package/dist/admin/pages/EditView/components/FormInputs/Component/Repeatable.mjs +18 -5
  70. package/dist/admin/pages/EditView/components/FormInputs/Component/Repeatable.mjs.map +1 -1
  71. package/dist/admin/pages/EditView/components/FormInputs/DynamicZone/DynamicComponent.js +23 -21
  72. package/dist/admin/pages/EditView/components/FormInputs/DynamicZone/DynamicComponent.js.map +1 -1
  73. package/dist/admin/pages/EditView/components/FormInputs/DynamicZone/DynamicComponent.mjs +25 -23
  74. package/dist/admin/pages/EditView/components/FormInputs/DynamicZone/DynamicComponent.mjs.map +1 -1
  75. package/dist/admin/pages/EditView/components/FormInputs/DynamicZone/Field.js +2 -3
  76. package/dist/admin/pages/EditView/components/FormInputs/DynamicZone/Field.js.map +1 -1
  77. package/dist/admin/pages/EditView/components/FormInputs/DynamicZone/Field.mjs +2 -3
  78. package/dist/admin/pages/EditView/components/FormInputs/DynamicZone/Field.mjs.map +1 -1
  79. package/dist/admin/pages/EditView/components/FormInputs/Relations/RelationModal.js +507 -345
  80. package/dist/admin/pages/EditView/components/FormInputs/Relations/RelationModal.js.map +1 -1
  81. package/dist/admin/pages/EditView/components/FormInputs/Relations/RelationModal.mjs +507 -347
  82. package/dist/admin/pages/EditView/components/FormInputs/Relations/RelationModal.mjs.map +1 -1
  83. package/dist/admin/pages/EditView/components/FormInputs/Relations/Relations.js +174 -68
  84. package/dist/admin/pages/EditView/components/FormInputs/Relations/Relations.js.map +1 -1
  85. package/dist/admin/pages/EditView/components/FormInputs/Relations/Relations.mjs +178 -72
  86. package/dist/admin/pages/EditView/components/FormInputs/Relations/Relations.mjs.map +1 -1
  87. package/dist/admin/pages/EditView/components/FormInputs/UID.js +11 -9
  88. package/dist/admin/pages/EditView/components/FormInputs/UID.js.map +1 -1
  89. package/dist/admin/pages/EditView/components/FormInputs/UID.mjs +11 -9
  90. package/dist/admin/pages/EditView/components/FormInputs/UID.mjs.map +1 -1
  91. package/dist/admin/pages/EditView/components/FormInputs/Wysiwyg/Editor.js +1 -1
  92. package/dist/admin/pages/EditView/components/FormInputs/Wysiwyg/Editor.js.map +1 -1
  93. package/dist/admin/pages/EditView/components/FormInputs/Wysiwyg/Editor.mjs +1 -1
  94. package/dist/admin/pages/EditView/components/FormInputs/Wysiwyg/Editor.mjs.map +1 -1
  95. package/dist/admin/pages/EditView/components/FormInputs/Wysiwyg/EditorLayout.js +50 -97
  96. package/dist/admin/pages/EditView/components/FormInputs/Wysiwyg/EditorLayout.js.map +1 -1
  97. package/dist/admin/pages/EditView/components/FormInputs/Wysiwyg/EditorLayout.mjs +51 -79
  98. package/dist/admin/pages/EditView/components/FormInputs/Wysiwyg/EditorLayout.mjs.map +1 -1
  99. package/dist/admin/pages/EditView/components/FormInputs/Wysiwyg/WysiwygNav.js +86 -118
  100. package/dist/admin/pages/EditView/components/FormInputs/Wysiwyg/WysiwygNav.js.map +1 -1
  101. package/dist/admin/pages/EditView/components/FormInputs/Wysiwyg/WysiwygNav.mjs +86 -118
  102. package/dist/admin/pages/EditView/components/FormInputs/Wysiwyg/WysiwygNav.mjs.map +1 -1
  103. package/dist/admin/pages/EditView/components/FormLayout.js +47 -27
  104. package/dist/admin/pages/EditView/components/FormLayout.js.map +1 -1
  105. package/dist/admin/pages/EditView/components/FormLayout.mjs +47 -27
  106. package/dist/admin/pages/EditView/components/FormLayout.mjs.map +1 -1
  107. package/dist/admin/pages/EditView/components/InputRenderer.js +3 -10
  108. package/dist/admin/pages/EditView/components/InputRenderer.js.map +1 -1
  109. package/dist/admin/pages/EditView/components/InputRenderer.mjs +3 -10
  110. package/dist/admin/pages/EditView/components/InputRenderer.mjs.map +1 -1
  111. package/dist/admin/pages/EditView/utils/data.js +103 -0
  112. package/dist/admin/pages/EditView/utils/data.js.map +1 -1
  113. package/dist/admin/pages/EditView/utils/data.mjs +103 -1
  114. package/dist/admin/pages/EditView/utils/data.mjs.map +1 -1
  115. package/dist/admin/pages/ListView/ListViewPage.js +75 -30
  116. package/dist/admin/pages/ListView/ListViewPage.js.map +1 -1
  117. package/dist/admin/pages/ListView/ListViewPage.mjs +76 -31
  118. package/dist/admin/pages/ListView/ListViewPage.mjs.map +1 -1
  119. package/dist/admin/pages/ListView/components/BulkActions/ConfirmBulkActionDialog.js +2 -1
  120. package/dist/admin/pages/ListView/components/BulkActions/ConfirmBulkActionDialog.js.map +1 -1
  121. package/dist/admin/pages/ListView/components/BulkActions/ConfirmBulkActionDialog.mjs +2 -1
  122. package/dist/admin/pages/ListView/components/BulkActions/ConfirmBulkActionDialog.mjs.map +1 -1
  123. package/dist/admin/pages/ListView/components/Filters.js +1 -0
  124. package/dist/admin/pages/ListView/components/Filters.js.map +1 -1
  125. package/dist/admin/pages/ListView/components/Filters.mjs +1 -0
  126. package/dist/admin/pages/ListView/components/Filters.mjs.map +1 -1
  127. package/dist/admin/pages/ListView/components/TableActions.js +13 -3
  128. package/dist/admin/pages/ListView/components/TableActions.js.map +1 -1
  129. package/dist/admin/pages/ListView/components/TableActions.mjs +13 -3
  130. package/dist/admin/pages/ListView/components/TableActions.mjs.map +1 -1
  131. package/dist/admin/preview/components/PreviewHeader.js +3 -6
  132. package/dist/admin/preview/components/PreviewHeader.js.map +1 -1
  133. package/dist/admin/preview/components/PreviewHeader.mjs +3 -6
  134. package/dist/admin/preview/components/PreviewHeader.mjs.map +1 -1
  135. package/dist/admin/preview/pages/Preview.js +94 -102
  136. package/dist/admin/preview/pages/Preview.js.map +1 -1
  137. package/dist/admin/preview/pages/Preview.mjs +94 -102
  138. package/dist/admin/preview/pages/Preview.mjs.map +1 -1
  139. package/dist/admin/services/api.js +3 -1
  140. package/dist/admin/services/api.js.map +1 -1
  141. package/dist/admin/services/api.mjs +3 -1
  142. package/dist/admin/services/api.mjs.map +1 -1
  143. package/dist/admin/services/documents.js +32 -16
  144. package/dist/admin/services/documents.js.map +1 -1
  145. package/dist/admin/services/documents.mjs +32 -16
  146. package/dist/admin/services/documents.mjs.map +1 -1
  147. package/dist/admin/services/homepage.js +39 -0
  148. package/dist/admin/services/homepage.js.map +1 -0
  149. package/dist/admin/services/homepage.mjs +36 -0
  150. package/dist/admin/services/homepage.mjs.map +1 -0
  151. package/dist/admin/src/components/ConfigurationForm/Fields.d.ts +6 -4
  152. package/dist/admin/src/components/Widgets.d.ts +4 -0
  153. package/dist/admin/src/content-manager.d.ts +0 -3
  154. package/dist/admin/src/exports.d.ts +1 -0
  155. package/dist/admin/src/features/DocumentRBAC.d.ts +1 -1
  156. package/dist/admin/src/history/pages/History.d.ts +1 -1
  157. package/dist/admin/src/history/services/historyVersion.d.ts +1 -1
  158. package/dist/admin/src/hooks/useDocumentActions.d.ts +1 -0
  159. package/dist/admin/src/hooks/useDocumentContext.d.ts +30 -0
  160. package/dist/admin/src/pages/EditView/components/FormInputs/BlocksInput/EditorLayout.d.ts +2 -2
  161. package/dist/admin/src/pages/EditView/components/FormInputs/ComponentContext.d.ts +1 -1
  162. package/dist/admin/src/pages/EditView/components/FormInputs/DynamicZone/Field.d.ts +1 -1
  163. package/dist/admin/src/pages/EditView/components/FormInputs/Relations/RelationModal.d.ts +73 -7
  164. package/dist/admin/src/pages/EditView/components/FormInputs/Relations/Relations.d.ts +1 -0
  165. package/dist/admin/src/pages/EditView/components/FormInputs/UID.d.ts +1 -0
  166. package/dist/admin/src/pages/EditView/components/FormLayout.d.ts +7 -8
  167. package/dist/admin/src/pages/EditView/components/InputRenderer.d.ts +1 -1
  168. package/dist/admin/src/pages/EditView/utils/data.d.ts +19 -1
  169. package/dist/admin/src/preview/pages/Preview.d.ts +2 -1
  170. package/dist/admin/src/preview/services/preview.d.ts +1 -1
  171. package/dist/admin/src/services/api.d.ts +1 -1
  172. package/dist/admin/src/services/components.d.ts +2 -2
  173. package/dist/admin/src/services/contentTypes.d.ts +3 -3
  174. package/dist/admin/src/services/documents.d.ts +23 -17
  175. package/dist/admin/src/services/homepage.d.ts +9 -0
  176. package/dist/admin/src/services/init.d.ts +1 -1
  177. package/dist/admin/src/services/relations.d.ts +2 -2
  178. package/dist/admin/src/services/uid.d.ts +3 -3
  179. package/dist/admin/src/utils/validation.d.ts +1 -0
  180. package/dist/admin/translations/en.json.js +5 -1
  181. package/dist/admin/translations/en.json.js.map +1 -1
  182. package/dist/admin/translations/en.json.mjs +5 -1
  183. package/dist/admin/translations/en.json.mjs.map +1 -1
  184. package/dist/admin/translations/es.json.js +5 -2
  185. package/dist/admin/translations/es.json.js.map +1 -1
  186. package/dist/admin/translations/es.json.mjs +5 -2
  187. package/dist/admin/translations/es.json.mjs.map +1 -1
  188. package/dist/admin/translations/fr.json.js +10 -2
  189. package/dist/admin/translations/fr.json.js.map +1 -1
  190. package/dist/admin/translations/fr.json.mjs +10 -2
  191. package/dist/admin/translations/fr.json.mjs.map +1 -1
  192. package/dist/admin/translations/ru.json.js +235 -226
  193. package/dist/admin/translations/ru.json.js.map +1 -1
  194. package/dist/admin/translations/ru.json.mjs +230 -226
  195. package/dist/admin/translations/ru.json.mjs.map +1 -1
  196. package/dist/admin/utils/validation.js +17 -6
  197. package/dist/admin/utils/validation.js.map +1 -1
  198. package/dist/admin/utils/validation.mjs +17 -6
  199. package/dist/admin/utils/validation.mjs.map +1 -1
  200. package/dist/server/controllers/content-types.js +11 -1
  201. package/dist/server/controllers/content-types.js.map +1 -1
  202. package/dist/server/controllers/content-types.mjs +11 -1
  203. package/dist/server/controllers/content-types.mjs.map +1 -1
  204. package/dist/server/controllers/index.js +3 -1
  205. package/dist/server/controllers/index.js.map +1 -1
  206. package/dist/server/controllers/index.mjs +3 -1
  207. package/dist/server/controllers/index.mjs.map +1 -1
  208. package/dist/server/controllers/relations.js +2 -2
  209. package/dist/server/controllers/relations.js.map +1 -1
  210. package/dist/server/controllers/relations.mjs +2 -2
  211. package/dist/server/controllers/relations.mjs.map +1 -1
  212. package/dist/server/controllers/validation/index.js +14 -2
  213. package/dist/server/controllers/validation/index.js.map +1 -1
  214. package/dist/server/controllers/validation/index.mjs +14 -2
  215. package/dist/server/controllers/validation/index.mjs.map +1 -1
  216. package/dist/server/history/services/lifecycles.js +3 -0
  217. package/dist/server/history/services/lifecycles.js.map +1 -1
  218. package/dist/server/history/services/lifecycles.mjs +3 -0
  219. package/dist/server/history/services/lifecycles.mjs.map +1 -1
  220. package/dist/server/homepage/controllers/homepage.js +62 -0
  221. package/dist/server/homepage/controllers/homepage.js.map +1 -0
  222. package/dist/server/homepage/controllers/homepage.mjs +41 -0
  223. package/dist/server/homepage/controllers/homepage.mjs.map +1 -0
  224. package/dist/server/homepage/controllers/index.js +10 -0
  225. package/dist/server/homepage/controllers/index.js.map +1 -0
  226. package/dist/server/homepage/controllers/index.mjs +8 -0
  227. package/dist/server/homepage/controllers/index.mjs.map +1 -0
  228. package/dist/server/homepage/index.js +14 -0
  229. package/dist/server/homepage/index.js.map +1 -0
  230. package/dist/server/homepage/index.mjs +12 -0
  231. package/dist/server/homepage/index.mjs.map +1 -0
  232. package/dist/server/homepage/routes/homepage.js +36 -0
  233. package/dist/server/homepage/routes/homepage.js.map +1 -0
  234. package/dist/server/homepage/routes/homepage.mjs +34 -0
  235. package/dist/server/homepage/routes/homepage.mjs.map +1 -0
  236. package/dist/server/homepage/routes/index.js +13 -0
  237. package/dist/server/homepage/routes/index.js.map +1 -0
  238. package/dist/server/homepage/routes/index.mjs +11 -0
  239. package/dist/server/homepage/routes/index.mjs.map +1 -0
  240. package/dist/server/homepage/services/homepage.js +197 -0
  241. package/dist/server/homepage/services/homepage.js.map +1 -0
  242. package/dist/server/homepage/services/homepage.mjs +195 -0
  243. package/dist/server/homepage/services/homepage.mjs.map +1 -0
  244. package/dist/server/homepage/services/index.js +10 -0
  245. package/dist/server/homepage/services/index.js.map +1 -0
  246. package/dist/server/homepage/services/index.mjs +8 -0
  247. package/dist/server/homepage/services/index.mjs.map +1 -0
  248. package/dist/server/preview/services/preview.js +0 -1
  249. package/dist/server/preview/services/preview.js.map +1 -1
  250. package/dist/server/preview/services/preview.mjs +0 -1
  251. package/dist/server/preview/services/preview.mjs.map +1 -1
  252. package/dist/server/routes/index.js +3 -1
  253. package/dist/server/routes/index.js.map +1 -1
  254. package/dist/server/routes/index.mjs +3 -1
  255. package/dist/server/routes/index.mjs.map +1 -1
  256. package/dist/server/services/data-mapper.js +4 -1
  257. package/dist/server/services/data-mapper.js.map +1 -1
  258. package/dist/server/services/data-mapper.mjs +4 -1
  259. package/dist/server/services/data-mapper.mjs.map +1 -1
  260. package/dist/server/services/document-manager.js +8 -1
  261. package/dist/server/services/document-manager.js.map +1 -1
  262. package/dist/server/services/document-manager.mjs +8 -1
  263. package/dist/server/services/document-manager.mjs.map +1 -1
  264. package/dist/server/services/document-metadata.js +3 -1
  265. package/dist/server/services/document-metadata.js.map +1 -1
  266. package/dist/server/services/document-metadata.mjs +3 -1
  267. package/dist/server/services/document-metadata.mjs.map +1 -1
  268. package/dist/server/services/index.js +3 -1
  269. package/dist/server/services/index.js.map +1 -1
  270. package/dist/server/services/index.mjs +3 -1
  271. package/dist/server/services/index.mjs.map +1 -1
  272. package/dist/server/services/utils/configuration/attributes.js +1 -1
  273. package/dist/server/services/utils/configuration/attributes.js.map +1 -1
  274. package/dist/server/services/utils/configuration/attributes.mjs +1 -1
  275. package/dist/server/services/utils/configuration/attributes.mjs.map +1 -1
  276. package/dist/server/services/utils/configuration/layouts.js +1 -1
  277. package/dist/server/services/utils/configuration/layouts.js.map +1 -1
  278. package/dist/server/services/utils/configuration/layouts.mjs +1 -1
  279. package/dist/server/services/utils/configuration/layouts.mjs.map +1 -1
  280. package/dist/server/services/utils/configuration/metadatas.js +8 -0
  281. package/dist/server/services/utils/configuration/metadatas.js.map +1 -1
  282. package/dist/server/services/utils/configuration/metadatas.mjs +8 -0
  283. package/dist/server/services/utils/configuration/metadatas.mjs.map +1 -1
  284. package/dist/server/services/utils/populate.js +11 -0
  285. package/dist/server/services/utils/populate.js.map +1 -1
  286. package/dist/server/services/utils/populate.mjs +11 -0
  287. package/dist/server/services/utils/populate.mjs.map +1 -1
  288. package/dist/server/src/controllers/content-types.d.ts.map +1 -1
  289. package/dist/server/src/controllers/index.d.ts.map +1 -1
  290. package/dist/server/src/controllers/validation/index.d.ts +6 -1
  291. package/dist/server/src/controllers/validation/index.d.ts.map +1 -1
  292. package/dist/server/src/history/services/lifecycles.d.ts.map +1 -1
  293. package/dist/server/src/homepage/controllers/homepage.d.ts +8 -0
  294. package/dist/server/src/homepage/controllers/homepage.d.ts.map +1 -0
  295. package/dist/server/src/homepage/controllers/index.d.ts +2 -0
  296. package/dist/server/src/homepage/controllers/index.d.ts.map +1 -0
  297. package/dist/server/src/homepage/index.d.ts +23 -0
  298. package/dist/server/src/homepage/index.d.ts.map +1 -0
  299. package/dist/server/src/homepage/routes/homepage.d.ts +4 -0
  300. package/dist/server/src/homepage/routes/homepage.d.ts.map +1 -0
  301. package/dist/server/src/homepage/routes/index.d.ts +8 -0
  302. package/dist/server/src/homepage/routes/index.d.ts.map +1 -0
  303. package/dist/server/src/homepage/services/homepage.d.ts +14 -0
  304. package/dist/server/src/homepage/services/homepage.d.ts.map +1 -0
  305. package/dist/server/src/homepage/services/index.d.ts +16 -0
  306. package/dist/server/src/homepage/services/index.d.ts.map +1 -0
  307. package/dist/server/src/index.d.ts +14 -0
  308. package/dist/server/src/index.d.ts.map +1 -1
  309. package/dist/server/src/preview/services/preview.d.ts.map +1 -1
  310. package/dist/server/src/routes/index.d.ts +1 -0
  311. package/dist/server/src/routes/index.d.ts.map +1 -1
  312. package/dist/server/src/services/data-mapper.d.ts.map +1 -1
  313. package/dist/server/src/services/document-manager.d.ts.map +1 -1
  314. package/dist/server/src/services/document-metadata.d.ts.map +1 -1
  315. package/dist/server/src/services/index.d.ts +13 -0
  316. package/dist/server/src/services/index.d.ts.map +1 -1
  317. package/dist/server/src/services/utils/configuration/metadatas.d.ts.map +1 -1
  318. package/dist/server/src/services/utils/populate.d.ts.map +1 -1
  319. package/dist/shared/contracts/collection-types.d.ts +0 -1
  320. package/dist/shared/contracts/collection-types.d.ts.map +1 -1
  321. package/dist/shared/contracts/homepage.d.ts +38 -0
  322. package/dist/shared/contracts/homepage.d.ts.map +1 -0
  323. package/package.json +12 -9
  324. package/dist/admin/features/DocumentContext.js +0 -71
  325. package/dist/admin/features/DocumentContext.js.map +0 -1
  326. package/dist/admin/features/DocumentContext.mjs +0 -49
  327. package/dist/admin/features/DocumentContext.mjs.map +0 -1
  328. package/dist/admin/src/features/DocumentContext.d.ts +0 -53
@@ -7,7 +7,6 @@ import { useIntl } from 'react-intl';
7
7
  import { useParams, useLocation } from 'react-router-dom';
8
8
  import { styled } from 'styled-components';
9
9
  import { COLLECTION_TYPES } from '../../constants/collections.mjs';
10
- import { DocumentContextProvider } from '../../features/DocumentContext.mjs';
11
10
  import { DocumentRBAC } from '../../features/DocumentRBAC.mjs';
12
11
  import { useDocument } from '../../hooks/useDocument.mjs';
13
12
  import { useDocumentLayout } from '../../hooks/useDocumentLayout.mjs';
@@ -102,109 +101,102 @@ const PreviewPage = ()=>{
102
101
  contentType: documentTitle
103
102
  })
104
103
  }),
105
- /*#__PURE__*/ jsx(DocumentContextProvider, {
106
- initialDocument: {
107
- documentId: documentId || '',
108
- model,
109
- collectionType
110
- },
104
+ /*#__PURE__*/ jsx(PreviewProvider, {
105
+ url: previewUrl,
106
+ document: documentResponse.document,
107
+ title: documentTitle,
108
+ meta: documentResponse.meta,
109
+ schema: documentResponse.schema,
110
+ layout: documentLayoutResponse.edit,
111
111
  onPreview: onPreview,
112
- children: /*#__PURE__*/ jsx(PreviewProvider, {
113
- url: previewUrl,
114
- document: documentResponse.document,
115
- title: documentTitle,
116
- meta: documentResponse.meta,
117
- schema: documentResponse.schema,
118
- layout: documentLayoutResponse.edit,
119
- children: /*#__PURE__*/ jsx(Form, {
120
- method: "PUT",
121
- disabled: query.status === 'published' && documentResponse && documentResponse.document.status === 'published',
122
- initialValues: documentResponse.getInitialFormValues(),
123
- initialErrors: location?.state?.forceValidation ? validateSync(initialValues, {}) : {},
124
- height: "100%",
125
- validate: (values, options)=>{
126
- const yupSchema = createYupSchema(documentResponse.schema?.attributes, documentResponse.components, {
127
- status: documentResponse.document?.status,
128
- ...options
129
- });
130
- return yupSchema.validate(values, {
131
- abortEarly: false
132
- });
133
- },
134
- children: ({ resetForm })=>/*#__PURE__*/ jsxs(Flex, {
135
- direction: "column",
136
- height: "100%",
137
- alignItems: "stretch",
138
- children: [
139
- /*#__PURE__*/ jsx(Blocker, {
140
- onProceed: resetForm
141
- }),
142
- /*#__PURE__*/ jsx(PreviewHeader, {}),
143
- /*#__PURE__*/ jsxs(Flex, {
144
- flex: 1,
145
- overflow: "auto",
146
- alignItems: "stretch",
147
- children: [
148
- hasAdvancedPreview && /*#__PURE__*/ jsx(Box, {
149
- overflow: "auto",
150
- width: isSideEditorOpen ? '50%' : 0,
151
- borderWidth: "0 1px 0 0",
152
- borderColor: "neutral150",
153
- paddingTop: 6,
154
- paddingBottom: 6,
155
- // Remove horizontal padding when the editor is closed or it won't fully disappear
156
- paddingLeft: isSideEditorOpen ? 6 : 0,
157
- paddingRight: isSideEditorOpen ? 6 : 0,
158
- transition: "all 0.2s ease-in-out",
159
- children: /*#__PURE__*/ jsx(FormLayout, {
160
- layout: documentLayoutResponse.edit.layout,
161
- document: documentResponse,
162
- hasBackground: false
163
- })
164
- }),
165
- /*#__PURE__*/ jsxs(Box, {
166
- position: "relative",
167
- flex: 1,
168
- height: "100%",
169
- overflow: "hidden",
170
- children: [
171
- /*#__PURE__*/ jsx(Box, {
172
- "data-testid": "preview-iframe",
173
- ref: iframeRef,
174
- src: previewUrl,
175
- title: formatMessage({
176
- id: 'content-manager.preview.panel.title',
177
- defaultMessage: 'Preview'
178
- }),
179
- width: "100%",
180
- height: "100%",
181
- borderWidth: 0,
182
- tag: "iframe"
183
- }, previewUrl),
184
- hasAdvancedPreview && /*#__PURE__*/ jsx(IconButton, {
185
- variant: "tertiary",
186
- label: formatMessage(isSideEditorOpen ? {
187
- id: 'content-manager.preview.content.close-editor',
188
- defaultMessage: 'Close editor'
189
- } : {
190
- id: 'content-manager.preview.content.open-editor',
191
- defaultMessage: 'Open editor'
192
- }),
193
- onClick: ()=>setIsSideEditorOpen((prev)=>!prev),
194
- position: "absolute",
195
- top: 2,
196
- left: 2,
197
- children: /*#__PURE__*/ jsx(AnimatedArrow, {
198
- isSideEditorOpen: isSideEditorOpen
199
- })
200
- })
201
- ]
112
+ children: /*#__PURE__*/ jsx(Form, {
113
+ method: "PUT",
114
+ disabled: query.status === 'published' && documentResponse && documentResponse.document.status !== 'draft',
115
+ initialValues: documentResponse.getInitialFormValues(),
116
+ initialErrors: location?.state?.forceValidation ? validateSync(initialValues, {}) : {},
117
+ height: "100%",
118
+ validate: (values, options)=>{
119
+ const yupSchema = createYupSchema(documentResponse.schema?.attributes, documentResponse.components, {
120
+ status: documentResponse.document?.status,
121
+ ...options
122
+ });
123
+ return yupSchema.validate(values, {
124
+ abortEarly: false
125
+ });
126
+ },
127
+ children: ({ resetForm })=>/*#__PURE__*/ jsxs(Flex, {
128
+ direction: "column",
129
+ height: "100%",
130
+ alignItems: "stretch",
131
+ children: [
132
+ /*#__PURE__*/ jsx(Blocker, {
133
+ onProceed: resetForm
134
+ }),
135
+ /*#__PURE__*/ jsx(PreviewHeader, {}),
136
+ /*#__PURE__*/ jsxs(Flex, {
137
+ flex: 1,
138
+ overflow: "auto",
139
+ alignItems: "stretch",
140
+ children: [
141
+ hasAdvancedPreview && /*#__PURE__*/ jsx(Box, {
142
+ overflow: "auto",
143
+ width: isSideEditorOpen ? '50%' : 0,
144
+ borderWidth: "0 1px 0 0",
145
+ borderColor: "neutral150",
146
+ paddingTop: 6,
147
+ paddingBottom: 6,
148
+ // Remove horizontal padding when the editor is closed or it won't fully disappear
149
+ paddingLeft: isSideEditorOpen ? 6 : 0,
150
+ paddingRight: isSideEditorOpen ? 6 : 0,
151
+ transition: "all 0.2s ease-in-out",
152
+ children: /*#__PURE__*/ jsx(FormLayout, {
153
+ layout: documentLayoutResponse.edit.layout,
154
+ document: documentResponse,
155
+ hasBackground: false
202
156
  })
203
- ]
204
- })
205
- ]
206
- })
207
- })
157
+ }),
158
+ /*#__PURE__*/ jsxs(Box, {
159
+ position: "relative",
160
+ flex: 1,
161
+ height: "100%",
162
+ overflow: "hidden",
163
+ children: [
164
+ /*#__PURE__*/ jsx(Box, {
165
+ "data-testid": "preview-iframe",
166
+ ref: iframeRef,
167
+ src: previewUrl,
168
+ title: formatMessage({
169
+ id: 'content-manager.preview.panel.title',
170
+ defaultMessage: 'Preview'
171
+ }),
172
+ width: "100%",
173
+ height: "100%",
174
+ borderWidth: 0,
175
+ tag: "iframe"
176
+ }, previewUrl),
177
+ hasAdvancedPreview && /*#__PURE__*/ jsx(IconButton, {
178
+ variant: "tertiary",
179
+ label: formatMessage(isSideEditorOpen ? {
180
+ id: 'content-manager.preview.content.close-editor',
181
+ defaultMessage: 'Close editor'
182
+ } : {
183
+ id: 'content-manager.preview.content.open-editor',
184
+ defaultMessage: 'Open editor'
185
+ }),
186
+ onClick: ()=>setIsSideEditorOpen((prev)=>!prev),
187
+ position: "absolute",
188
+ top: 2,
189
+ left: 2,
190
+ children: /*#__PURE__*/ jsx(AnimatedArrow, {
191
+ isSideEditorOpen: isSideEditorOpen
192
+ })
193
+ })
194
+ ]
195
+ })
196
+ ]
197
+ })
198
+ ]
199
+ })
208
200
  })
209
201
  })
210
202
  ]
@@ -1 +1 @@
1
- {"version":3,"file":"Preview.mjs","sources":["../../../../admin/src/preview/pages/Preview.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport {\n Page,\n useQueryParams,\n useRBAC,\n createContext,\n Form as FormContext,\n Blocker,\n} from '@strapi/admin/strapi-admin';\nimport { Box, Flex, FocusTrap, IconButton, Portal } from '@strapi/design-system';\nimport { ArrowLineLeft } from '@strapi/icons';\nimport { useIntl } from 'react-intl';\nimport { useLocation, useParams } from 'react-router-dom';\nimport { styled } from 'styled-components';\n\nimport { GetPreviewUrl } from '../../../../shared/contracts/preview';\nimport { COLLECTION_TYPES } from '../../constants/collections';\nimport { DocumentContextProvider } from '../../features/DocumentContext';\nimport { DocumentRBAC } from '../../features/DocumentRBAC';\nimport { type UseDocument, useDocument } from '../../hooks/useDocument';\nimport { type EditLayout, useDocumentLayout } from '../../hooks/useDocumentLayout';\nimport { FormLayout } from '../../pages/EditView/components/FormLayout';\nimport { buildValidParams } from '../../utils/api';\nimport { createYupSchema } from '../../utils/validation';\nimport { PreviewHeader } from '../components/PreviewHeader';\nimport { useGetPreviewUrlQuery } from '../services/preview';\n\nimport type { UID } from '@strapi/types';\n\n/* -------------------------------------------------------------------------------------------------\n * PreviewProvider\n * -----------------------------------------------------------------------------------------------*/\n\ninterface PreviewContextValue {\n url: string;\n title: string;\n document: NonNullable<ReturnType<UseDocument>['document']>;\n meta: NonNullable<ReturnType<UseDocument>['meta']>;\n schema: NonNullable<ReturnType<UseDocument>['schema']>;\n layout: EditLayout;\n}\n\nconst [PreviewProvider, usePreviewContext] = createContext<PreviewContextValue>('PreviewPage');\n\n/* -------------------------------------------------------------------------------------------------\n * PreviewPage\n * -----------------------------------------------------------------------------------------------*/\n\nconst AnimatedArrow = styled(ArrowLineLeft)<{ isSideEditorOpen: boolean }>`\n will-change: transform;\n rotate: ${(props) => (props.isSideEditorOpen ? '0deg' : '180deg')};\n transition: rotate 0.2s ease-in-out;\n`;\n\nconst PreviewPage = () => {\n const location = useLocation();\n const { formatMessage } = useIntl();\n\n const iframeRef = React.useRef<HTMLIFrameElement>(null);\n const [isSideEditorOpen, setIsSideEditorOpen] = React.useState(true);\n\n // Read all the necessary data from the URL to find the right preview URL\n const {\n slug: model,\n id: documentId,\n collectionType,\n } = useParams<{\n slug: UID.ContentType;\n id: string;\n collectionType: string;\n }>();\n const [{ query }] = useQueryParams<{\n plugins?: Record<string, unknown>;\n status?: string;\n }>();\n\n const params = React.useMemo(() => buildValidParams(query), [query]);\n\n if (!collectionType) {\n throw new Error('Could not find collectionType in url params');\n }\n\n if (!model) {\n throw new Error('Could not find model in url params');\n }\n\n // Only collection types must have a documentId\n if (collectionType === COLLECTION_TYPES && !documentId) {\n throw new Error('Could not find documentId in url params');\n }\n\n const previewUrlResponse = useGetPreviewUrlQuery({\n params: {\n contentType: model,\n },\n query: {\n documentId,\n locale: params.locale,\n status: params.status as GetPreviewUrl.Request['query']['status'],\n },\n });\n const documentResponse = useDocument({\n model,\n collectionType,\n documentId,\n params,\n });\n const documentLayoutResponse = useDocumentLayout(model);\n\n const isLoading =\n previewUrlResponse.isLoading || documentLayoutResponse.isLoading || documentResponse.isLoading;\n if (isLoading && !documentResponse.document?.documentId) {\n return <Page.Loading />;\n }\n\n const initialValues = documentResponse.getInitialFormValues();\n\n if (\n previewUrlResponse.error ||\n documentLayoutResponse.error ||\n !documentResponse.document ||\n !documentResponse.meta ||\n !documentResponse.schema ||\n !initialValues\n ) {\n return <Page.Error />;\n }\n\n if (!previewUrlResponse.data?.data?.url) {\n return <Page.NoData />;\n }\n\n const documentTitle = documentResponse.getTitle(documentLayoutResponse.edit.settings.mainField);\n\n const validateSync = (values: Record<string, unknown>, options: Record<string, string>) => {\n const yupSchema = createYupSchema(\n documentResponse.schema?.attributes,\n documentResponse.components,\n {\n status: documentResponse.document?.status,\n ...options,\n }\n );\n\n return yupSchema.validateSync(values, { abortEarly: false });\n };\n\n const previewUrl = previewUrlResponse.data.data.url;\n\n const onPreview = () => {\n iframeRef?.current?.contentWindow?.postMessage(\n { type: 'strapiUpdate' },\n // The iframe origin is safe to use since it must be provided through the allowedOrigins config\n new URL(iframeRef.current.src).origin\n );\n };\n\n const hasAdvancedPreview = window.strapi.features.isEnabled('cms-advanced-preview');\n\n return (\n <>\n <Page.Title>\n {formatMessage(\n {\n id: 'content-manager.preview.page-title',\n defaultMessage: '{contentType} preview',\n },\n {\n contentType: documentTitle,\n }\n )}\n </Page.Title>\n <DocumentContextProvider\n initialDocument={{\n documentId: documentId || '',\n model,\n collectionType,\n }}\n onPreview={onPreview}\n >\n <PreviewProvider\n url={previewUrl}\n document={documentResponse.document}\n title={documentTitle}\n meta={documentResponse.meta}\n schema={documentResponse.schema}\n layout={documentLayoutResponse.edit}\n >\n <FormContext\n method=\"PUT\"\n disabled={\n query.status === 'published' &&\n documentResponse &&\n documentResponse.document.status === 'published'\n }\n initialValues={documentResponse.getInitialFormValues()}\n initialErrors={location?.state?.forceValidation ? validateSync(initialValues, {}) : {}}\n height=\"100%\"\n validate={(values: Record<string, unknown>, options: Record<string, string>) => {\n const yupSchema = createYupSchema(\n documentResponse.schema?.attributes,\n documentResponse.components,\n {\n status: documentResponse.document?.status,\n ...options,\n }\n );\n\n return yupSchema.validate(values, { abortEarly: false });\n }}\n >\n {({ resetForm }) => (\n <Flex direction=\"column\" height=\"100%\" alignItems=\"stretch\">\n <Blocker onProceed={resetForm} />\n <PreviewHeader />\n <Flex flex={1} overflow=\"auto\" alignItems=\"stretch\">\n {hasAdvancedPreview && (\n <Box\n overflow=\"auto\"\n width={isSideEditorOpen ? '50%' : 0}\n borderWidth=\"0 1px 0 0\"\n borderColor=\"neutral150\"\n paddingTop={6}\n paddingBottom={6}\n // Remove horizontal padding when the editor is closed or it won't fully disappear\n paddingLeft={isSideEditorOpen ? 6 : 0}\n paddingRight={isSideEditorOpen ? 6 : 0}\n transition=\"all 0.2s ease-in-out\"\n >\n <FormLayout\n layout={documentLayoutResponse.edit.layout}\n document={documentResponse}\n hasBackground={false}\n />\n </Box>\n )}\n\n <Box position=\"relative\" flex={1} height=\"100%\" overflow=\"hidden\">\n <Box\n data-testid=\"preview-iframe\"\n ref={iframeRef}\n src={previewUrl}\n /**\n * For some reason, changing an iframe's src tag causes the browser to add a new item in the\n * history stack. This is an issue for us as it means clicking the back button will not let us\n * go back to the edit view. To fix it, we need to trick the browser into thinking this is a\n * different iframe when the preview URL changes. So we set a key prop to force React\n * to mount a different node when the src changes.\n */\n key={previewUrl}\n title={formatMessage({\n id: 'content-manager.preview.panel.title',\n defaultMessage: 'Preview',\n })}\n width=\"100%\"\n height=\"100%\"\n borderWidth={0}\n tag=\"iframe\"\n />\n {hasAdvancedPreview && (\n <IconButton\n variant=\"tertiary\"\n label={formatMessage(\n isSideEditorOpen\n ? {\n id: 'content-manager.preview.content.close-editor',\n defaultMessage: 'Close editor',\n }\n : {\n id: 'content-manager.preview.content.open-editor',\n defaultMessage: 'Open editor',\n }\n )}\n onClick={() => setIsSideEditorOpen((prev) => !prev)}\n position=\"absolute\"\n top={2}\n left={2}\n >\n <AnimatedArrow isSideEditorOpen={isSideEditorOpen} />\n </IconButton>\n )}\n </Box>\n </Flex>\n </Flex>\n )}\n </FormContext>\n </PreviewProvider>\n </DocumentContextProvider>\n </>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * ProtectedPreviewPage\n * -----------------------------------------------------------------------------------------------*/\n\nconst ProtectedPreviewPageImpl = () => {\n const { slug: model } = useParams<{\n slug: string;\n }>();\n const {\n permissions = [],\n isLoading,\n error,\n } = useRBAC([\n { action: 'plugin::content-manager.explorer.read', subject: model },\n { action: 'plugin::content-manager.explorer.update', subject: model },\n { action: 'plugin::content-manager.explorer.publish', subject: model },\n ]);\n\n if (isLoading) {\n return <Page.Loading />;\n }\n\n if (error || !model) {\n return (\n <Box\n height=\"100vh\"\n width=\"100vw\"\n position=\"fixed\"\n top={0}\n left={0}\n zIndex={2}\n background=\"neutral0\"\n >\n <Page.Error />\n </Box>\n );\n }\n\n return (\n <Box\n height=\"100vh\"\n width=\"100vw\"\n position=\"fixed\"\n top={0}\n left={0}\n zIndex={2}\n background=\"neutral0\"\n >\n <Page.Protect\n permissions={permissions.filter((permission) =>\n permission.action.includes('explorer.read')\n )}\n >\n <DocumentRBAC permissions={permissions}>\n <PreviewPage />\n </DocumentRBAC>\n </Page.Protect>\n </Box>\n );\n};\n\nconst ProtectedPreviewPage = () => {\n return (\n <Portal>\n <FocusTrap>\n <ProtectedPreviewPageImpl />\n </FocusTrap>\n </Portal>\n );\n};\n\nexport { ProtectedPreviewPage, usePreviewContext };\n"],"names":["PreviewProvider","usePreviewContext","createContext","AnimatedArrow","styled","ArrowLineLeft","props","isSideEditorOpen","PreviewPage","location","useLocation","formatMessage","useIntl","iframeRef","React","useRef","setIsSideEditorOpen","useState","slug","model","id","documentId","collectionType","useParams","query","useQueryParams","params","useMemo","buildValidParams","Error","COLLECTION_TYPES","previewUrlResponse","useGetPreviewUrlQuery","contentType","locale","status","documentResponse","useDocument","documentLayoutResponse","useDocumentLayout","isLoading","document","_jsx","Page","Loading","initialValues","getInitialFormValues","error","meta","schema","data","url","NoData","documentTitle","getTitle","edit","settings","mainField","validateSync","values","options","yupSchema","createYupSchema","attributes","components","abortEarly","previewUrl","onPreview","current","contentWindow","postMessage","type","URL","src","origin","hasAdvancedPreview","window","strapi","features","isEnabled","_jsxs","_Fragment","Title","defaultMessage","DocumentContextProvider","initialDocument","title","layout","FormContext","method","disabled","initialErrors","state","forceValidation","height","validate","resetForm","Flex","direction","alignItems","Blocker","onProceed","PreviewHeader","flex","overflow","Box","width","borderWidth","borderColor","paddingTop","paddingBottom","paddingLeft","paddingRight","transition","FormLayout","hasBackground","position","data-testid","ref","tag","IconButton","variant","label","onClick","prev","top","left","ProtectedPreviewPageImpl","permissions","useRBAC","action","subject","zIndex","background","Protect","filter","permission","includes","DocumentRBAC","ProtectedPreviewPage","Portal","FocusTrap"],"mappings":"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"}
1
+ {"version":3,"file":"Preview.mjs","sources":["../../../../admin/src/preview/pages/Preview.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport {\n Page,\n useQueryParams,\n useRBAC,\n createContext,\n Form as FormContext,\n Blocker,\n} from '@strapi/admin/strapi-admin';\nimport { Box, Flex, FocusTrap, IconButton, Portal } from '@strapi/design-system';\nimport { ArrowLineLeft } from '@strapi/icons';\nimport { useIntl } from 'react-intl';\nimport { useLocation, useParams } from 'react-router-dom';\nimport { styled } from 'styled-components';\n\nimport { GetPreviewUrl } from '../../../../shared/contracts/preview';\nimport { COLLECTION_TYPES } from '../../constants/collections';\nimport { DocumentRBAC } from '../../features/DocumentRBAC';\nimport { type UseDocument, useDocument } from '../../hooks/useDocument';\nimport { type EditLayout, useDocumentLayout } from '../../hooks/useDocumentLayout';\nimport { FormLayout } from '../../pages/EditView/components/FormLayout';\nimport { buildValidParams } from '../../utils/api';\nimport { createYupSchema } from '../../utils/validation';\nimport { PreviewHeader } from '../components/PreviewHeader';\nimport { useGetPreviewUrlQuery } from '../services/preview';\n\nimport type { UID } from '@strapi/types';\n\n/* -------------------------------------------------------------------------------------------------\n * PreviewProvider\n * -----------------------------------------------------------------------------------------------*/\n\ninterface PreviewContextValue {\n url: string;\n title: string;\n document: NonNullable<ReturnType<UseDocument>['document']>;\n meta: NonNullable<ReturnType<UseDocument>['meta']>;\n schema: NonNullable<ReturnType<UseDocument>['schema']>;\n layout: EditLayout;\n onPreview: () => void;\n}\n\nconst [PreviewProvider, usePreviewContext] = createContext<PreviewContextValue>('PreviewPage');\n\n/* -------------------------------------------------------------------------------------------------\n * PreviewPage\n * -----------------------------------------------------------------------------------------------*/\n\nconst AnimatedArrow = styled(ArrowLineLeft)<{ isSideEditorOpen: boolean }>`\n will-change: transform;\n rotate: ${(props) => (props.isSideEditorOpen ? '0deg' : '180deg')};\n transition: rotate 0.2s ease-in-out;\n`;\n\nconst PreviewPage = () => {\n const location = useLocation();\n const { formatMessage } = useIntl();\n\n const iframeRef = React.useRef<HTMLIFrameElement>(null);\n const [isSideEditorOpen, setIsSideEditorOpen] = React.useState(true);\n\n // Read all the necessary data from the URL to find the right preview URL\n const {\n slug: model,\n id: documentId,\n collectionType,\n } = useParams<{\n slug: UID.ContentType;\n id: string;\n collectionType: string;\n }>();\n const [{ query }] = useQueryParams<{\n plugins?: Record<string, unknown>;\n status?: string;\n }>();\n\n const params = React.useMemo(() => buildValidParams(query), [query]);\n\n if (!collectionType) {\n throw new Error('Could not find collectionType in url params');\n }\n\n if (!model) {\n throw new Error('Could not find model in url params');\n }\n\n // Only collection types must have a documentId\n if (collectionType === COLLECTION_TYPES && !documentId) {\n throw new Error('Could not find documentId in url params');\n }\n\n const previewUrlResponse = useGetPreviewUrlQuery({\n params: {\n contentType: model,\n },\n query: {\n documentId,\n locale: params.locale,\n status: params.status as GetPreviewUrl.Request['query']['status'],\n },\n });\n const documentResponse = useDocument({\n model,\n collectionType,\n documentId,\n params,\n });\n const documentLayoutResponse = useDocumentLayout(model);\n\n const isLoading =\n previewUrlResponse.isLoading || documentLayoutResponse.isLoading || documentResponse.isLoading;\n if (isLoading && !documentResponse.document?.documentId) {\n return <Page.Loading />;\n }\n\n const initialValues = documentResponse.getInitialFormValues();\n\n if (\n previewUrlResponse.error ||\n documentLayoutResponse.error ||\n !documentResponse.document ||\n !documentResponse.meta ||\n !documentResponse.schema ||\n !initialValues\n ) {\n return <Page.Error />;\n }\n\n if (!previewUrlResponse.data?.data?.url) {\n return <Page.NoData />;\n }\n\n const documentTitle = documentResponse.getTitle(documentLayoutResponse.edit.settings.mainField);\n\n const validateSync = (values: Record<string, unknown>, options: Record<string, string>) => {\n const yupSchema = createYupSchema(\n documentResponse.schema?.attributes,\n documentResponse.components,\n {\n status: documentResponse.document?.status,\n ...options,\n }\n );\n\n return yupSchema.validateSync(values, { abortEarly: false });\n };\n\n const previewUrl = previewUrlResponse.data.data.url;\n\n const onPreview = () => {\n iframeRef?.current?.contentWindow?.postMessage(\n { type: 'strapiUpdate' },\n // The iframe origin is safe to use since it must be provided through the allowedOrigins config\n new URL(iframeRef.current.src).origin\n );\n };\n\n const hasAdvancedPreview = window.strapi.features.isEnabled('cms-advanced-preview');\n\n return (\n <>\n <Page.Title>\n {formatMessage(\n {\n id: 'content-manager.preview.page-title',\n defaultMessage: '{contentType} preview',\n },\n {\n contentType: documentTitle,\n }\n )}\n </Page.Title>\n <PreviewProvider\n url={previewUrl}\n document={documentResponse.document}\n title={documentTitle}\n meta={documentResponse.meta}\n schema={documentResponse.schema}\n layout={documentLayoutResponse.edit}\n onPreview={onPreview}\n >\n <FormContext\n method=\"PUT\"\n disabled={\n query.status === 'published' &&\n documentResponse &&\n documentResponse.document.status !== 'draft'\n }\n initialValues={documentResponse.getInitialFormValues()}\n initialErrors={location?.state?.forceValidation ? validateSync(initialValues, {}) : {}}\n height=\"100%\"\n validate={(values: Record<string, unknown>, options: Record<string, string>) => {\n const yupSchema = createYupSchema(\n documentResponse.schema?.attributes,\n documentResponse.components,\n {\n status: documentResponse.document?.status,\n ...options,\n }\n );\n\n return yupSchema.validate(values, { abortEarly: false });\n }}\n >\n {({ resetForm }) => (\n <Flex direction=\"column\" height=\"100%\" alignItems=\"stretch\">\n <Blocker onProceed={resetForm} />\n <PreviewHeader />\n <Flex flex={1} overflow=\"auto\" alignItems=\"stretch\">\n {hasAdvancedPreview && (\n <Box\n overflow=\"auto\"\n width={isSideEditorOpen ? '50%' : 0}\n borderWidth=\"0 1px 0 0\"\n borderColor=\"neutral150\"\n paddingTop={6}\n paddingBottom={6}\n // Remove horizontal padding when the editor is closed or it won't fully disappear\n paddingLeft={isSideEditorOpen ? 6 : 0}\n paddingRight={isSideEditorOpen ? 6 : 0}\n transition=\"all 0.2s ease-in-out\"\n >\n <FormLayout\n layout={documentLayoutResponse.edit.layout}\n document={documentResponse}\n hasBackground={false}\n />\n </Box>\n )}\n\n <Box position=\"relative\" flex={1} height=\"100%\" overflow=\"hidden\">\n <Box\n data-testid=\"preview-iframe\"\n ref={iframeRef}\n src={previewUrl}\n /**\n * For some reason, changing an iframe's src tag causes the browser to add a new item in the\n * history stack. This is an issue for us as it means clicking the back button will not let us\n * go back to the edit view. To fix it, we need to trick the browser into thinking this is a\n * different iframe when the preview URL changes. So we set a key prop to force React\n * to mount a different node when the src changes.\n */\n key={previewUrl}\n title={formatMessage({\n id: 'content-manager.preview.panel.title',\n defaultMessage: 'Preview',\n })}\n width=\"100%\"\n height=\"100%\"\n borderWidth={0}\n tag=\"iframe\"\n />\n {hasAdvancedPreview && (\n <IconButton\n variant=\"tertiary\"\n label={formatMessage(\n isSideEditorOpen\n ? {\n id: 'content-manager.preview.content.close-editor',\n defaultMessage: 'Close editor',\n }\n : {\n id: 'content-manager.preview.content.open-editor',\n defaultMessage: 'Open editor',\n }\n )}\n onClick={() => setIsSideEditorOpen((prev) => !prev)}\n position=\"absolute\"\n top={2}\n left={2}\n >\n <AnimatedArrow isSideEditorOpen={isSideEditorOpen} />\n </IconButton>\n )}\n </Box>\n </Flex>\n </Flex>\n )}\n </FormContext>\n </PreviewProvider>\n </>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * ProtectedPreviewPage\n * -----------------------------------------------------------------------------------------------*/\n\nconst ProtectedPreviewPageImpl = () => {\n const { slug: model } = useParams<{\n slug: string;\n }>();\n const {\n permissions = [],\n isLoading,\n error,\n } = useRBAC([\n { action: 'plugin::content-manager.explorer.read', subject: model },\n { action: 'plugin::content-manager.explorer.update', subject: model },\n { action: 'plugin::content-manager.explorer.publish', subject: model },\n ]);\n\n if (isLoading) {\n return <Page.Loading />;\n }\n\n if (error || !model) {\n return (\n <Box\n height=\"100vh\"\n width=\"100vw\"\n position=\"fixed\"\n top={0}\n left={0}\n zIndex={2}\n background=\"neutral0\"\n >\n <Page.Error />\n </Box>\n );\n }\n\n return (\n <Box\n height=\"100vh\"\n width=\"100vw\"\n position=\"fixed\"\n top={0}\n left={0}\n zIndex={2}\n background=\"neutral0\"\n >\n <Page.Protect\n permissions={permissions.filter((permission) =>\n permission.action.includes('explorer.read')\n )}\n >\n <DocumentRBAC permissions={permissions}>\n <PreviewPage />\n </DocumentRBAC>\n </Page.Protect>\n </Box>\n );\n};\n\nconst ProtectedPreviewPage = () => {\n return (\n <Portal>\n <FocusTrap>\n <ProtectedPreviewPageImpl />\n </FocusTrap>\n </Portal>\n );\n};\n\nexport { ProtectedPreviewPage, usePreviewContext };\n"],"names":["PreviewProvider","usePreviewContext","createContext","AnimatedArrow","styled","ArrowLineLeft","props","isSideEditorOpen","PreviewPage","location","useLocation","formatMessage","useIntl","iframeRef","React","useRef","setIsSideEditorOpen","useState","slug","model","id","documentId","collectionType","useParams","query","useQueryParams","params","useMemo","buildValidParams","Error","COLLECTION_TYPES","previewUrlResponse","useGetPreviewUrlQuery","contentType","locale","status","documentResponse","useDocument","documentLayoutResponse","useDocumentLayout","isLoading","document","_jsx","Page","Loading","initialValues","getInitialFormValues","error","meta","schema","data","url","NoData","documentTitle","getTitle","edit","settings","mainField","validateSync","values","options","yupSchema","createYupSchema","attributes","components","abortEarly","previewUrl","onPreview","current","contentWindow","postMessage","type","URL","src","origin","hasAdvancedPreview","window","strapi","features","isEnabled","_jsxs","_Fragment","Title","defaultMessage","title","layout","FormContext","method","disabled","initialErrors","state","forceValidation","height","validate","resetForm","Flex","direction","alignItems","Blocker","onProceed","PreviewHeader","flex","overflow","Box","width","borderWidth","borderColor","paddingTop","paddingBottom","paddingLeft","paddingRight","transition","FormLayout","hasBackground","position","data-testid","ref","tag","IconButton","variant","label","onClick","prev","top","left","ProtectedPreviewPageImpl","permissions","useRBAC","action","subject","zIndex","background","Protect","filter","permission","includes","DocumentRBAC","ProtectedPreviewPage","Portal","FocusTrap"],"mappings":"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"}
@@ -12,7 +12,9 @@ const contentManagerApi = strapiAdmin.adminApi.enhanceEndpoints({
12
12
  'HistoryVersion',
13
13
  'Relations',
14
14
  'UidAvailability',
15
- 'RecentDocumentList'
15
+ 'RecentDocumentList',
16
+ 'GuidedTourMeta',
17
+ 'CountDocuments'
16
18
  ]
17
19
  });
18
20
 
@@ -1 +1 @@
1
- {"version":3,"file":"api.js","sources":["../../../admin/src/services/api.ts"],"sourcesContent":["import { adminApi } from '@strapi/admin/strapi-admin';\n\nconst contentManagerApi = adminApi.enhanceEndpoints({\n addTagTypes: [\n 'ComponentConfiguration',\n 'ContentTypesConfiguration',\n 'ContentTypeSettings',\n 'Document',\n 'InitialData',\n 'HistoryVersion',\n 'Relations',\n 'UidAvailability',\n 'RecentDocumentList',\n ],\n});\n\nexport { contentManagerApi };\n"],"names":["contentManagerApi","adminApi","enhanceEndpoints","addTagTypes"],"mappings":";;;;AAEMA,MAAAA,iBAAAA,GAAoBC,oBAASC,CAAAA,gBAAgB,CAAC;IAClDC,WAAa,EAAA;AACX,QAAA,wBAAA;AACA,QAAA,2BAAA;AACA,QAAA,qBAAA;AACA,QAAA,UAAA;AACA,QAAA,aAAA;AACA,QAAA,gBAAA;AACA,QAAA,WAAA;AACA,QAAA,iBAAA;AACA,QAAA;AACD;AACH,CAAA;;;;"}
1
+ {"version":3,"file":"api.js","sources":["../../../admin/src/services/api.ts"],"sourcesContent":["import { adminApi } from '@strapi/admin/strapi-admin';\n\nconst contentManagerApi = adminApi.enhanceEndpoints({\n addTagTypes: [\n 'ComponentConfiguration',\n 'ContentTypesConfiguration',\n 'ContentTypeSettings',\n 'Document',\n 'InitialData',\n 'HistoryVersion',\n 'Relations',\n 'UidAvailability',\n 'RecentDocumentList',\n 'GuidedTourMeta',\n 'CountDocuments',\n ],\n});\n\nexport { contentManagerApi };\n"],"names":["contentManagerApi","adminApi","enhanceEndpoints","addTagTypes"],"mappings":";;;;AAEMA,MAAAA,iBAAAA,GAAoBC,oBAASC,CAAAA,gBAAgB,CAAC;IAClDC,WAAa,EAAA;AACX,QAAA,wBAAA;AACA,QAAA,2BAAA;AACA,QAAA,qBAAA;AACA,QAAA,UAAA;AACA,QAAA,aAAA;AACA,QAAA,gBAAA;AACA,QAAA,WAAA;AACA,QAAA,iBAAA;AACA,QAAA,oBAAA;AACA,QAAA,gBAAA;AACA,QAAA;AACD;AACH,CAAA;;;;"}
@@ -10,7 +10,9 @@ const contentManagerApi = adminApi.enhanceEndpoints({
10
10
  'HistoryVersion',
11
11
  'Relations',
12
12
  'UidAvailability',
13
- 'RecentDocumentList'
13
+ 'RecentDocumentList',
14
+ 'GuidedTourMeta',
15
+ 'CountDocuments'
14
16
  ]
15
17
  });
16
18
 
@@ -1 +1 @@
1
- {"version":3,"file":"api.mjs","sources":["../../../admin/src/services/api.ts"],"sourcesContent":["import { adminApi } from '@strapi/admin/strapi-admin';\n\nconst contentManagerApi = adminApi.enhanceEndpoints({\n addTagTypes: [\n 'ComponentConfiguration',\n 'ContentTypesConfiguration',\n 'ContentTypeSettings',\n 'Document',\n 'InitialData',\n 'HistoryVersion',\n 'Relations',\n 'UidAvailability',\n 'RecentDocumentList',\n ],\n});\n\nexport { contentManagerApi };\n"],"names":["contentManagerApi","adminApi","enhanceEndpoints","addTagTypes"],"mappings":";;AAEMA,MAAAA,iBAAAA,GAAoBC,QAASC,CAAAA,gBAAgB,CAAC;IAClDC,WAAa,EAAA;AACX,QAAA,wBAAA;AACA,QAAA,2BAAA;AACA,QAAA,qBAAA;AACA,QAAA,UAAA;AACA,QAAA,aAAA;AACA,QAAA,gBAAA;AACA,QAAA,WAAA;AACA,QAAA,iBAAA;AACA,QAAA;AACD;AACH,CAAA;;;;"}
1
+ {"version":3,"file":"api.mjs","sources":["../../../admin/src/services/api.ts"],"sourcesContent":["import { adminApi } from '@strapi/admin/strapi-admin';\n\nconst contentManagerApi = adminApi.enhanceEndpoints({\n addTagTypes: [\n 'ComponentConfiguration',\n 'ContentTypesConfiguration',\n 'ContentTypeSettings',\n 'Document',\n 'InitialData',\n 'HistoryVersion',\n 'Relations',\n 'UidAvailability',\n 'RecentDocumentList',\n 'GuidedTourMeta',\n 'CountDocuments',\n ],\n});\n\nexport { contentManagerApi };\n"],"names":["contentManagerApi","adminApi","enhanceEndpoints","addTagTypes"],"mappings":";;AAEMA,MAAAA,iBAAAA,GAAoBC,QAASC,CAAAA,gBAAgB,CAAC;IAClDC,WAAa,EAAA;AACX,QAAA,wBAAA;AACA,QAAA,2BAAA;AACA,QAAA,qBAAA;AACA,QAAA,UAAA;AACA,QAAA,aAAA;AACA,QAAA,gBAAA;AACA,QAAA,WAAA;AACA,QAAA,iBAAA;AACA,QAAA,oBAAA;AACA,QAAA,gBAAA;AACA,QAAA;AACD;AACH,CAAA;;;;"}
@@ -8,11 +8,11 @@ const documentApi = api.contentManagerApi.injectEndpoints({
8
8
  overrideExisting: true,
9
9
  endpoints: (builder)=>({
10
10
  autoCloneDocument: builder.mutation({
11
- query: ({ model, sourceId, query })=>({
11
+ query: ({ model, sourceId, params })=>({
12
12
  url: `/content-manager/collection-types/${model}/auto-clone/${sourceId}`,
13
13
  method: 'POST',
14
14
  config: {
15
- params: query
15
+ params
16
16
  }
17
17
  }),
18
18
  invalidatesTags: (_result, error, { model })=>{
@@ -24,7 +24,8 @@ const documentApi = api.contentManagerApi.injectEndpoints({
24
24
  type: 'Document',
25
25
  id: `${model}_LIST`
26
26
  },
27
- 'RecentDocumentList'
27
+ 'RecentDocumentList',
28
+ 'CountDocuments'
28
29
  ];
29
30
  }
30
31
  }),
@@ -46,7 +47,8 @@ const documentApi = api.contentManagerApi.injectEndpoints({
46
47
  type: 'UidAvailability',
47
48
  id: model
48
49
  },
49
- 'RecentDocumentList'
50
+ 'RecentDocumentList',
51
+ 'CountDocuments'
50
52
  ]
51
53
  }),
52
54
  /**
@@ -71,7 +73,8 @@ const documentApi = api.contentManagerApi.injectEndpoints({
71
73
  type: 'UidAvailability',
72
74
  id: model
73
75
  },
74
- 'RecentDocumentList'
76
+ 'RecentDocumentList',
77
+ 'CountDocuments'
75
78
  ],
76
79
  transformResponse: (response, meta, arg)=>{
77
80
  /**
@@ -103,7 +106,8 @@ const documentApi = api.contentManagerApi.injectEndpoints({
103
106
  type: 'Document',
104
107
  id: collectionType !== collections.SINGLE_TYPES ? `${model}_LIST` : model
105
108
  },
106
- 'RecentDocumentList'
109
+ 'RecentDocumentList',
110
+ 'CountDocuments'
107
111
  ]
108
112
  }),
109
113
  deleteManyDocuments: builder.mutation({
@@ -120,7 +124,8 @@ const documentApi = api.contentManagerApi.injectEndpoints({
120
124
  type: 'Document',
121
125
  id: `${model}_LIST`
122
126
  },
123
- 'RecentDocumentList'
127
+ 'RecentDocumentList',
128
+ 'CountDocuments'
124
129
  ]
125
130
  }),
126
131
  discardDocument: builder.mutation({
@@ -146,7 +151,8 @@ const documentApi = api.contentManagerApi.injectEndpoints({
146
151
  type: 'UidAvailability',
147
152
  id: model
148
153
  },
149
- 'RecentDocumentList'
154
+ 'RecentDocumentList',
155
+ 'CountDocuments'
150
156
  ];
151
157
  }
152
158
  }),
@@ -260,7 +266,9 @@ const documentApi = api.contentManagerApi.injectEndpoints({
260
266
  id: `${model}_LIST`
261
267
  },
262
268
  'Relations',
263
- 'RecentDocumentList'
269
+ 'RecentDocumentList',
270
+ 'GuidedTourMeta',
271
+ 'CountDocuments'
264
272
  ];
265
273
  }
266
274
  }),
@@ -273,10 +281,16 @@ const documentApi = api.contentManagerApi.injectEndpoints({
273
281
  params
274
282
  }
275
283
  }),
276
- invalidatesTags: (_res, _error, { model, documentIds })=>documentIds.map((id)=>({
277
- type: 'Document',
278
- id: `${model}_${id}`
279
- }))
284
+ invalidatesTags: (_res, _error, { model, documentIds })=>{
285
+ return [
286
+ ...documentIds.map((id)=>({
287
+ type: 'Document',
288
+ id: `${model}_${id}`
289
+ })),
290
+ 'RecentDocumentList',
291
+ 'CountDocuments'
292
+ ];
293
+ }
280
294
  }),
281
295
  updateDocument: builder.mutation({
282
296
  query: ({ collectionType, model, documentId, data, params })=>({
@@ -299,7 +313,7 @@ const documentApi = api.contentManagerApi.injectEndpoints({
299
313
  id: model
300
314
  },
301
315
  'RecentDocumentList',
302
- 'RecentDocumentList'
316
+ 'CountDocuments'
303
317
  ];
304
318
  },
305
319
  async onQueryStarted ({ data, ...patch }, { dispatch, queryFulfilled }) {
@@ -346,7 +360,8 @@ const documentApi = api.contentManagerApi.injectEndpoints({
346
360
  type: 'Document',
347
361
  id: collectionType !== collections.SINGLE_TYPES ? `${model}_${documentId}` : model
348
362
  },
349
- 'RecentDocumentList'
363
+ 'RecentDocumentList',
364
+ 'CountDocuments'
350
365
  ];
351
366
  }
352
367
  }),
@@ -364,7 +379,8 @@ const documentApi = api.contentManagerApi.injectEndpoints({
364
379
  type: 'Document',
365
380
  id: `${model}_${id}`
366
381
  })),
367
- 'RecentDocumentList'
382
+ 'RecentDocumentList',
383
+ 'CountDocuments'
368
384
  ]
369
385
  })
370
386
  })