@strapi/content-manager 0.0.0-experimental.6340da17068c3bed7fb006e7bcc554c71129e282 → 0.0.0-experimental.63624e21eb5b0713345a0cf2f68f1c40eab427bc

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 (744) hide show
  1. package/dist/admin/components/ActionsDrawer.js +17 -6
  2. package/dist/admin/components/ActionsDrawer.js.map +1 -1
  3. package/dist/admin/components/ActionsDrawer.mjs +19 -8
  4. package/dist/admin/components/ActionsDrawer.mjs.map +1 -1
  5. package/dist/admin/components/ComponentIcon.js.map +1 -1
  6. package/dist/admin/components/ComponentIcon.mjs.map +1 -1
  7. package/dist/admin/components/ConfigurationForm/Fields.js +10 -6
  8. package/dist/admin/components/ConfigurationForm/Fields.js.map +1 -1
  9. package/dist/admin/components/ConfigurationForm/Fields.mjs +10 -6
  10. package/dist/admin/components/ConfigurationForm/Fields.mjs.map +1 -1
  11. package/dist/admin/components/ConfigurationForm/Form.js +17 -19
  12. package/dist/admin/components/ConfigurationForm/Form.js.map +1 -1
  13. package/dist/admin/components/ConfigurationForm/Form.mjs +16 -18
  14. package/dist/admin/components/ConfigurationForm/Form.mjs.map +1 -1
  15. package/dist/admin/components/DragLayer.js.map +1 -1
  16. package/dist/admin/components/DragLayer.mjs.map +1 -1
  17. package/dist/admin/components/LeftMenu.js +187 -109
  18. package/dist/admin/components/LeftMenu.js.map +1 -1
  19. package/dist/admin/components/LeftMenu.mjs +190 -112
  20. package/dist/admin/components/LeftMenu.mjs.map +1 -1
  21. package/dist/admin/components/RelativeTime.js +11 -1
  22. package/dist/admin/components/RelativeTime.js.map +1 -1
  23. package/dist/admin/components/RelativeTime.mjs +12 -2
  24. package/dist/admin/components/RelativeTime.mjs.map +1 -1
  25. package/dist/admin/content-manager.js +31 -4
  26. package/dist/admin/content-manager.js.map +1 -1
  27. package/dist/admin/content-manager.mjs +31 -4
  28. package/dist/admin/content-manager.mjs.map +1 -1
  29. package/dist/admin/features/DocumentRBAC.js +0 -3
  30. package/dist/admin/features/DocumentRBAC.js.map +1 -1
  31. package/dist/admin/features/DocumentRBAC.mjs +1 -4
  32. package/dist/admin/features/DocumentRBAC.mjs.map +1 -1
  33. package/dist/admin/history/components/VersionContent.js +11 -11
  34. package/dist/admin/history/components/VersionContent.js.map +1 -1
  35. package/dist/admin/history/components/VersionContent.mjs +10 -10
  36. package/dist/admin/history/components/VersionContent.mjs.map +1 -1
  37. package/dist/admin/history/components/VersionHeader.js +1 -1
  38. package/dist/admin/history/components/VersionHeader.js.map +1 -1
  39. package/dist/admin/history/components/VersionHeader.mjs +1 -1
  40. package/dist/admin/history/components/VersionHeader.mjs.map +1 -1
  41. package/dist/admin/history/components/VersionInputRenderer.js +8 -4
  42. package/dist/admin/history/components/VersionInputRenderer.js.map +1 -1
  43. package/dist/admin/history/components/VersionInputRenderer.mjs +8 -4
  44. package/dist/admin/history/components/VersionInputRenderer.mjs.map +1 -1
  45. package/dist/admin/history/components/VersionsList.js +38 -44
  46. package/dist/admin/history/components/VersionsList.js.map +1 -1
  47. package/dist/admin/history/components/VersionsList.mjs +38 -44
  48. package/dist/admin/history/components/VersionsList.mjs.map +1 -1
  49. package/dist/admin/history/pages/History.js +2 -1
  50. package/dist/admin/history/pages/History.js.map +1 -1
  51. package/dist/admin/history/pages/History.mjs +3 -2
  52. package/dist/admin/history/pages/History.mjs.map +1 -1
  53. package/dist/admin/history/routes.js.map +1 -1
  54. package/dist/admin/history/routes.mjs.map +1 -1
  55. package/dist/admin/hooks/useContentManagerInitData.js +3 -2
  56. package/dist/admin/hooks/useContentManagerInitData.js.map +1 -1
  57. package/dist/admin/hooks/useContentManagerInitData.mjs +3 -2
  58. package/dist/admin/hooks/useContentManagerInitData.mjs.map +1 -1
  59. package/dist/admin/hooks/useDocument.js.map +1 -1
  60. package/dist/admin/hooks/useDocument.mjs.map +1 -1
  61. package/dist/admin/hooks/useDocumentActions.js +18 -9
  62. package/dist/admin/hooks/useDocumentActions.js.map +1 -1
  63. package/dist/admin/hooks/useDocumentActions.mjs +19 -10
  64. package/dist/admin/hooks/useDocumentActions.mjs.map +1 -1
  65. package/dist/admin/hooks/useDocumentContext.js.map +1 -1
  66. package/dist/admin/hooks/useDocumentContext.mjs.map +1 -1
  67. package/dist/admin/hooks/useDocumentLayout.js.map +1 -1
  68. package/dist/admin/hooks/useDocumentLayout.mjs.map +1 -1
  69. package/dist/admin/hooks/usePersistentQueryParams.js +10 -2
  70. package/dist/admin/hooks/usePersistentQueryParams.js.map +1 -1
  71. package/dist/admin/hooks/usePersistentQueryParams.mjs +11 -3
  72. package/dist/admin/hooks/usePersistentQueryParams.mjs.map +1 -1
  73. package/dist/admin/index.js +1 -1
  74. package/dist/admin/index.js.map +1 -1
  75. package/dist/admin/index.mjs +1 -1
  76. package/dist/admin/index.mjs.map +1 -1
  77. package/dist/admin/layout.js +97 -17
  78. package/dist/admin/layout.js.map +1 -1
  79. package/dist/admin/layout.mjs +78 -18
  80. package/dist/admin/layout.mjs.map +1 -1
  81. package/dist/admin/modules/app.js +3 -1
  82. package/dist/admin/modules/app.js.map +1 -1
  83. package/dist/admin/modules/app.mjs +3 -1
  84. package/dist/admin/modules/app.mjs.map +1 -1
  85. package/dist/admin/pages/ComponentConfigurationPage.js.map +1 -1
  86. package/dist/admin/pages/ComponentConfigurationPage.mjs.map +1 -1
  87. package/dist/admin/pages/EditView/EditViewPage.js +17 -22
  88. package/dist/admin/pages/EditView/EditViewPage.js.map +1 -1
  89. package/dist/admin/pages/EditView/EditViewPage.mjs +17 -22
  90. package/dist/admin/pages/EditView/EditViewPage.mjs.map +1 -1
  91. package/dist/admin/pages/EditView/components/DocumentActions.js +232 -156
  92. package/dist/admin/pages/EditView/components/DocumentActions.js.map +1 -1
  93. package/dist/admin/pages/EditView/components/DocumentActions.mjs +232 -153
  94. package/dist/admin/pages/EditView/components/DocumentActions.mjs.map +1 -1
  95. package/dist/admin/pages/EditView/components/EditorToolbarObserver.js +74 -7
  96. package/dist/admin/pages/EditView/components/EditorToolbarObserver.js.map +1 -1
  97. package/dist/admin/pages/EditView/components/EditorToolbarObserver.mjs +74 -7
  98. package/dist/admin/pages/EditView/components/EditorToolbarObserver.mjs.map +1 -1
  99. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/Blocks/Code.js +2 -2
  100. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/Blocks/Code.js.map +1 -1
  101. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/Blocks/Code.mjs +2 -2
  102. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/Blocks/Code.mjs.map +1 -1
  103. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/Blocks/Link.js +25 -16
  104. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/Blocks/Link.js.map +1 -1
  105. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/Blocks/Link.mjs +25 -16
  106. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/Blocks/Link.mjs.map +1 -1
  107. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/Blocks/List.js +7 -4
  108. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/Blocks/List.js.map +1 -1
  109. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/Blocks/List.mjs +7 -4
  110. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/Blocks/List.mjs.map +1 -1
  111. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/BlocksContent.js +7 -2
  112. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/BlocksContent.js.map +1 -1
  113. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/BlocksContent.mjs +7 -2
  114. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/BlocksContent.mjs.map +1 -1
  115. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/BlocksEditor.js +88 -11
  116. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/BlocksEditor.js.map +1 -1
  117. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/BlocksEditor.mjs +89 -12
  118. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/BlocksEditor.mjs.map +1 -1
  119. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/BlocksInput.js +5 -2
  120. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/BlocksInput.js.map +1 -1
  121. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/BlocksInput.mjs +5 -2
  122. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/BlocksInput.mjs.map +1 -1
  123. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/BlocksToolbar.js +10 -14
  124. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/BlocksToolbar.js.map +1 -1
  125. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/BlocksToolbar.mjs +10 -14
  126. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/BlocksToolbar.mjs.map +1 -1
  127. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/EditorLayout.js +2 -1
  128. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/EditorLayout.js.map +1 -1
  129. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/EditorLayout.mjs +2 -1
  130. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/EditorLayout.mjs.map +1 -1
  131. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/Modifiers.js +2 -2
  132. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/Modifiers.js.map +1 -1
  133. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/Modifiers.mjs +2 -2
  134. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/Modifiers.mjs.map +1 -1
  135. package/dist/admin/pages/EditView/components/FormInputs/Component/Initializer.js.map +1 -1
  136. package/dist/admin/pages/EditView/components/FormInputs/Component/Initializer.mjs.map +1 -1
  137. package/dist/admin/pages/EditView/components/FormInputs/Component/Input.js +1 -1
  138. package/dist/admin/pages/EditView/components/FormInputs/Component/Input.js.map +1 -1
  139. package/dist/admin/pages/EditView/components/FormInputs/Component/Input.mjs +1 -1
  140. package/dist/admin/pages/EditView/components/FormInputs/Component/Input.mjs.map +1 -1
  141. package/dist/admin/pages/EditView/components/FormInputs/Component/NonRepeatable.js +2 -2
  142. package/dist/admin/pages/EditView/components/FormInputs/Component/NonRepeatable.js.map +1 -1
  143. package/dist/admin/pages/EditView/components/FormInputs/Component/NonRepeatable.mjs +2 -2
  144. package/dist/admin/pages/EditView/components/FormInputs/Component/NonRepeatable.mjs.map +1 -1
  145. package/dist/admin/pages/EditView/components/FormInputs/Component/Repeatable.js +9 -7
  146. package/dist/admin/pages/EditView/components/FormInputs/Component/Repeatable.js.map +1 -1
  147. package/dist/admin/pages/EditView/components/FormInputs/Component/Repeatable.mjs +9 -7
  148. package/dist/admin/pages/EditView/components/FormInputs/Component/Repeatable.mjs.map +1 -1
  149. package/dist/admin/pages/EditView/components/FormInputs/DynamicZone/ComponentCategory.js +104 -8
  150. package/dist/admin/pages/EditView/components/FormInputs/DynamicZone/ComponentCategory.js.map +1 -1
  151. package/dist/admin/pages/EditView/components/FormInputs/DynamicZone/ComponentCategory.mjs +86 -9
  152. package/dist/admin/pages/EditView/components/FormInputs/DynamicZone/ComponentCategory.mjs.map +1 -1
  153. package/dist/admin/pages/EditView/components/FormInputs/DynamicZone/ComponentPicker.js +2 -1
  154. package/dist/admin/pages/EditView/components/FormInputs/DynamicZone/ComponentPicker.js.map +1 -1
  155. package/dist/admin/pages/EditView/components/FormInputs/DynamicZone/ComponentPicker.mjs +2 -1
  156. package/dist/admin/pages/EditView/components/FormInputs/DynamicZone/ComponentPicker.mjs.map +1 -1
  157. package/dist/admin/pages/EditView/components/FormInputs/DynamicZone/DynamicComponent.js +4 -3
  158. package/dist/admin/pages/EditView/components/FormInputs/DynamicZone/DynamicComponent.js.map +1 -1
  159. package/dist/admin/pages/EditView/components/FormInputs/DynamicZone/DynamicComponent.mjs +4 -3
  160. package/dist/admin/pages/EditView/components/FormInputs/DynamicZone/DynamicComponent.mjs.map +1 -1
  161. package/dist/admin/pages/EditView/components/FormInputs/DynamicZone/Field.js +5 -4
  162. package/dist/admin/pages/EditView/components/FormInputs/DynamicZone/Field.js.map +1 -1
  163. package/dist/admin/pages/EditView/components/FormInputs/DynamicZone/Field.mjs +4 -3
  164. package/dist/admin/pages/EditView/components/FormInputs/DynamicZone/Field.mjs.map +1 -1
  165. package/dist/admin/pages/EditView/components/FormInputs/Relations/RelationModal.js +202 -23
  166. package/dist/admin/pages/EditView/components/FormInputs/Relations/RelationModal.js.map +1 -1
  167. package/dist/admin/pages/EditView/components/FormInputs/Relations/RelationModal.mjs +201 -25
  168. package/dist/admin/pages/EditView/components/FormInputs/Relations/RelationModal.mjs.map +1 -1
  169. package/dist/admin/pages/EditView/components/FormInputs/Relations/Relations.js +109 -47
  170. package/dist/admin/pages/EditView/components/FormInputs/Relations/Relations.js.map +1 -1
  171. package/dist/admin/pages/EditView/components/FormInputs/Relations/Relations.mjs +110 -45
  172. package/dist/admin/pages/EditView/components/FormInputs/Relations/Relations.mjs.map +1 -1
  173. package/dist/admin/pages/EditView/components/FormInputs/UID.js +8 -6
  174. package/dist/admin/pages/EditView/components/FormInputs/UID.js.map +1 -1
  175. package/dist/admin/pages/EditView/components/FormInputs/UID.mjs +8 -6
  176. package/dist/admin/pages/EditView/components/FormInputs/UID.mjs.map +1 -1
  177. package/dist/admin/pages/EditView/components/FormInputs/Wysiwyg/Editor.js +3 -2
  178. package/dist/admin/pages/EditView/components/FormInputs/Wysiwyg/Editor.js.map +1 -1
  179. package/dist/admin/pages/EditView/components/FormInputs/Wysiwyg/Editor.mjs +3 -2
  180. package/dist/admin/pages/EditView/components/FormInputs/Wysiwyg/Editor.mjs.map +1 -1
  181. package/dist/admin/pages/EditView/components/FormInputs/Wysiwyg/Field.js +2 -2
  182. package/dist/admin/pages/EditView/components/FormInputs/Wysiwyg/Field.js.map +1 -1
  183. package/dist/admin/pages/EditView/components/FormInputs/Wysiwyg/Field.mjs +2 -2
  184. package/dist/admin/pages/EditView/components/FormInputs/Wysiwyg/Field.mjs.map +1 -1
  185. package/dist/admin/pages/EditView/components/FormInputs/Wysiwyg/WysiwygNav.js +25 -2
  186. package/dist/admin/pages/EditView/components/FormInputs/Wysiwyg/WysiwygNav.js.map +1 -1
  187. package/dist/admin/pages/EditView/components/FormInputs/Wysiwyg/WysiwygNav.mjs +5 -2
  188. package/dist/admin/pages/EditView/components/FormInputs/Wysiwyg/WysiwygNav.mjs.map +1 -1
  189. package/dist/admin/pages/EditView/components/FormInputs/Wysiwyg/utils/sanitizer.js +2 -1
  190. package/dist/admin/pages/EditView/components/FormInputs/Wysiwyg/utils/sanitizer.js.map +1 -1
  191. package/dist/admin/pages/EditView/components/FormInputs/Wysiwyg/utils/sanitizer.mjs +2 -1
  192. package/dist/admin/pages/EditView/components/FormInputs/Wysiwyg/utils/sanitizer.mjs.map +1 -1
  193. package/dist/admin/pages/EditView/components/FormInputs/Wysiwyg/utils/utils.js.map +1 -1
  194. package/dist/admin/pages/EditView/components/FormInputs/Wysiwyg/utils/utils.mjs.map +1 -1
  195. package/dist/admin/pages/EditView/components/FormLayout.js +4 -4
  196. package/dist/admin/pages/EditView/components/FormLayout.js.map +1 -1
  197. package/dist/admin/pages/EditView/components/FormLayout.mjs +4 -4
  198. package/dist/admin/pages/EditView/components/FormLayout.mjs.map +1 -1
  199. package/dist/admin/pages/EditView/components/InputRenderer.js +5 -1
  200. package/dist/admin/pages/EditView/components/InputRenderer.js.map +1 -1
  201. package/dist/admin/pages/EditView/components/InputRenderer.mjs +6 -2
  202. package/dist/admin/pages/EditView/components/InputRenderer.mjs.map +1 -1
  203. package/dist/admin/pages/EditView/components/Panels.js.map +1 -1
  204. package/dist/admin/pages/EditView/components/Panels.mjs.map +1 -1
  205. package/dist/admin/pages/EditView/utils/data.js +6 -6
  206. package/dist/admin/pages/EditView/utils/data.js.map +1 -1
  207. package/dist/admin/pages/EditView/utils/data.mjs +5 -5
  208. package/dist/admin/pages/EditView/utils/data.mjs.map +1 -1
  209. package/dist/admin/pages/EditView/utils/draftRelationCounts.js +16 -8
  210. package/dist/admin/pages/EditView/utils/draftRelationCounts.js.map +1 -1
  211. package/dist/admin/pages/EditView/utils/draftRelationCounts.mjs +16 -9
  212. package/dist/admin/pages/EditView/utils/draftRelationCounts.mjs.map +1 -1
  213. package/dist/admin/pages/ListConfiguration/components/Settings.js +3 -3
  214. package/dist/admin/pages/ListConfiguration/components/Settings.js.map +1 -1
  215. package/dist/admin/pages/ListConfiguration/components/Settings.mjs +3 -3
  216. package/dist/admin/pages/ListConfiguration/components/Settings.mjs.map +1 -1
  217. package/dist/admin/pages/ListConfiguration/components/SortDisplayedFields.js +2 -2
  218. package/dist/admin/pages/ListConfiguration/components/SortDisplayedFields.js.map +1 -1
  219. package/dist/admin/pages/ListConfiguration/components/SortDisplayedFields.mjs +2 -2
  220. package/dist/admin/pages/ListConfiguration/components/SortDisplayedFields.mjs.map +1 -1
  221. package/dist/admin/pages/ListView/ListViewPage.js +145 -23
  222. package/dist/admin/pages/ListView/ListViewPage.js.map +1 -1
  223. package/dist/admin/pages/ListView/ListViewPage.mjs +147 -25
  224. package/dist/admin/pages/ListView/ListViewPage.mjs.map +1 -1
  225. package/dist/admin/pages/ListView/components/AutoCloneFailureModal.js +1 -1
  226. package/dist/admin/pages/ListView/components/AutoCloneFailureModal.js.map +1 -1
  227. package/dist/admin/pages/ListView/components/AutoCloneFailureModal.mjs +1 -1
  228. package/dist/admin/pages/ListView/components/AutoCloneFailureModal.mjs.map +1 -1
  229. package/dist/admin/pages/ListView/components/BulkActions/Actions.js +2 -1
  230. package/dist/admin/pages/ListView/components/BulkActions/Actions.js.map +1 -1
  231. package/dist/admin/pages/ListView/components/BulkActions/Actions.mjs +2 -1
  232. package/dist/admin/pages/ListView/components/BulkActions/Actions.mjs.map +1 -1
  233. package/dist/admin/pages/ListView/components/BulkActions/ConfirmBulkActionDialog.js.map +1 -1
  234. package/dist/admin/pages/ListView/components/BulkActions/ConfirmBulkActionDialog.mjs.map +1 -1
  235. package/dist/admin/pages/ListView/components/BulkActions/PublishAction.js +11 -1
  236. package/dist/admin/pages/ListView/components/BulkActions/PublishAction.js.map +1 -1
  237. package/dist/admin/pages/ListView/components/BulkActions/PublishAction.mjs +11 -1
  238. package/dist/admin/pages/ListView/components/BulkActions/PublishAction.mjs.map +1 -1
  239. package/dist/admin/pages/ListView/components/Filters.js +17 -13
  240. package/dist/admin/pages/ListView/components/Filters.js.map +1 -1
  241. package/dist/admin/pages/ListView/components/Filters.mjs +17 -13
  242. package/dist/admin/pages/ListView/components/Filters.mjs.map +1 -1
  243. package/dist/admin/pages/ListView/components/TableActions.js +37 -0
  244. package/dist/admin/pages/ListView/components/TableActions.js.map +1 -1
  245. package/dist/admin/pages/ListView/components/TableActions.mjs +39 -2
  246. package/dist/admin/pages/ListView/components/TableActions.mjs.map +1 -1
  247. package/dist/admin/pages/ListView/components/TableCells/CellContent.js +26 -1
  248. package/dist/admin/pages/ListView/components/TableCells/CellContent.js.map +1 -1
  249. package/dist/admin/pages/ListView/components/TableCells/CellContent.mjs +26 -2
  250. package/dist/admin/pages/ListView/components/TableCells/CellContent.mjs.map +1 -1
  251. package/dist/admin/pages/ListView/components/TableCells/CellValue.js +8 -7
  252. package/dist/admin/pages/ListView/components/TableCells/CellValue.js.map +1 -1
  253. package/dist/admin/pages/ListView/components/TableCells/CellValue.mjs +8 -7
  254. package/dist/admin/pages/ListView/components/TableCells/CellValue.mjs.map +1 -1
  255. package/dist/admin/pages/ListView/components/TableCells/Components.js.map +1 -1
  256. package/dist/admin/pages/ListView/components/TableCells/Components.mjs.map +1 -1
  257. package/dist/admin/pages/ListView/components/TableCells/Relations.js +11 -2
  258. package/dist/admin/pages/ListView/components/TableCells/Relations.js.map +1 -1
  259. package/dist/admin/pages/ListView/components/TableCells/Relations.mjs +11 -2
  260. package/dist/admin/pages/ListView/components/TableCells/Relations.mjs.map +1 -1
  261. package/dist/admin/pages/ListView/components/ViewSettingsMenu.js +2 -1
  262. package/dist/admin/pages/ListView/components/ViewSettingsMenu.js.map +1 -1
  263. package/dist/admin/pages/ListView/components/ViewSettingsMenu.mjs +2 -1
  264. package/dist/admin/pages/ListView/components/ViewSettingsMenu.mjs.map +1 -1
  265. package/dist/admin/pages/ListView/utils/applyAttributeRenames.js +68 -0
  266. package/dist/admin/pages/ListView/utils/applyAttributeRenames.js.map +1 -0
  267. package/dist/admin/pages/ListView/utils/applyAttributeRenames.mjs +64 -0
  268. package/dist/admin/pages/ListView/utils/applyAttributeRenames.mjs.map +1 -0
  269. package/dist/admin/preview/components/InputPopover.js +64 -46
  270. package/dist/admin/preview/components/InputPopover.js.map +1 -1
  271. package/dist/admin/preview/components/InputPopover.mjs +66 -49
  272. package/dist/admin/preview/components/InputPopover.mjs.map +1 -1
  273. package/dist/admin/preview/components/PreviewHeader.js +3 -1
  274. package/dist/admin/preview/components/PreviewHeader.js.map +1 -1
  275. package/dist/admin/preview/components/PreviewHeader.mjs +3 -1
  276. package/dist/admin/preview/components/PreviewHeader.mjs.map +1 -1
  277. package/dist/admin/preview/components/PreviewSidePanel.js +48 -10
  278. package/dist/admin/preview/components/PreviewSidePanel.js.map +1 -1
  279. package/dist/admin/preview/components/PreviewSidePanel.mjs +29 -11
  280. package/dist/admin/preview/components/PreviewSidePanel.mjs.map +1 -1
  281. package/dist/admin/preview/hooks/usePreviewInputManager.js +23 -7
  282. package/dist/admin/preview/hooks/usePreviewInputManager.js.map +1 -1
  283. package/dist/admin/preview/hooks/usePreviewInputManager.mjs +25 -9
  284. package/dist/admin/preview/hooks/usePreviewInputManager.mjs.map +1 -1
  285. package/dist/admin/preview/pages/Preview.js +23 -1
  286. package/dist/admin/preview/pages/Preview.js.map +1 -1
  287. package/dist/admin/preview/pages/Preview.mjs +25 -3
  288. package/dist/admin/preview/pages/Preview.mjs.map +1 -1
  289. package/dist/admin/preview/routes.js.map +1 -1
  290. package/dist/admin/preview/routes.mjs.map +1 -1
  291. package/dist/admin/preview/utils/constants.js +9 -3
  292. package/dist/admin/preview/utils/constants.js.map +1 -1
  293. package/dist/admin/preview/utils/constants.mjs +9 -3
  294. package/dist/admin/preview/utils/constants.mjs.map +1 -1
  295. package/dist/admin/preview/utils/fieldUtils.js.map +1 -1
  296. package/dist/admin/preview/utils/fieldUtils.mjs.map +1 -1
  297. package/dist/admin/preview/utils/getPreviewUrlStatus.js +17 -0
  298. package/dist/admin/preview/utils/getPreviewUrlStatus.js.map +1 -0
  299. package/dist/admin/preview/utils/getPreviewUrlStatus.mjs +15 -0
  300. package/dist/admin/preview/utils/getPreviewUrlStatus.mjs.map +1 -0
  301. package/dist/admin/router.js.map +1 -1
  302. package/dist/admin/router.mjs.map +1 -1
  303. package/dist/admin/services/documents.js +3 -2
  304. package/dist/admin/services/documents.js.map +1 -1
  305. package/dist/admin/services/documents.mjs +2 -2
  306. package/dist/admin/services/documents.mjs.map +1 -1
  307. package/dist/admin/services/relations.js +5 -2
  308. package/dist/admin/services/relations.js.map +1 -1
  309. package/dist/admin/services/relations.mjs +5 -2
  310. package/dist/admin/services/relations.mjs.map +1 -1
  311. package/dist/admin/src/components/ActionsDrawer.d.ts +1 -0
  312. package/dist/admin/src/components/ComponentIcon.d.ts +4 -3
  313. package/dist/admin/src/components/ConfigurationForm/Fields.d.ts +1 -1
  314. package/dist/admin/src/components/DragLayer.d.ts +1 -1
  315. package/dist/admin/src/content-manager.d.ts +1 -1
  316. package/dist/admin/src/history/routes.d.ts +2 -2
  317. package/dist/admin/src/history/services/historyVersion.d.ts +2 -2
  318. package/dist/admin/src/hooks/useDocumentActions.d.ts +17 -16
  319. package/dist/admin/src/hooks/useDocumentContext.d.ts +1 -1
  320. package/dist/admin/src/index.d.ts +2 -2
  321. package/dist/admin/src/modules/app.d.ts +2 -0
  322. package/dist/admin/src/pages/EditView/components/DocumentActions.d.ts +4 -1
  323. package/dist/admin/src/pages/EditView/components/EditorToolbarObserver.d.ts +2 -1
  324. package/dist/admin/src/pages/EditView/components/FormInputs/BlocksInput/BlocksContent.d.ts +5 -1
  325. package/dist/admin/src/pages/EditView/components/FormInputs/BlocksInput/BlocksEditor.d.ts +5 -0
  326. package/dist/admin/src/pages/EditView/components/FormInputs/BlocksInput/BlocksInput.d.ts +5 -0
  327. package/dist/admin/src/pages/EditView/components/FormInputs/BlocksInput/EditorLayout.d.ts +2 -1
  328. package/dist/admin/src/pages/EditView/components/FormInputs/BlocksInput/plugins/withStrapiSchema.d.ts +1 -1
  329. package/dist/admin/src/pages/EditView/components/FormInputs/DynamicZone/ComponentCategory.d.ts +2 -0
  330. package/dist/admin/src/pages/EditView/components/FormInputs/Relations/RelationModal.d.ts +60 -4
  331. package/dist/admin/src/pages/EditView/components/FormInputs/Relations/Relations.d.ts +9 -1
  332. package/dist/admin/src/pages/EditView/components/FormInputs/UID.d.ts +1 -1
  333. package/dist/admin/src/pages/EditView/components/FormInputs/Wysiwyg/Editor.d.ts +1 -1
  334. package/dist/admin/src/pages/EditView/components/FormInputs/Wysiwyg/WysiwygStyles.d.ts +2 -2
  335. package/dist/admin/src/pages/EditView/components/FormInputs/Wysiwyg/utils/utils.d.ts +7 -1
  336. package/dist/admin/src/pages/EditView/components/FormLayout.d.ts +4 -4
  337. package/dist/admin/src/pages/EditView/utils/draftRelationCounts.d.ts +1 -0
  338. package/dist/admin/src/pages/ListView/components/TableCells/CellContent.d.ts +11 -2
  339. package/dist/admin/src/pages/ListView/components/TableCells/CellValue.d.ts +1 -1
  340. package/dist/admin/src/pages/ListView/utils/applyAttributeRenames.d.ts +12 -0
  341. package/dist/admin/src/preview/components/InputPopover.d.ts +2 -1
  342. package/dist/admin/src/preview/pages/Preview.d.ts +1 -0
  343. package/dist/admin/src/preview/routes.d.ts +2 -2
  344. package/dist/admin/src/preview/services/preview.d.ts +1 -1
  345. package/dist/admin/src/preview/utils/constants.d.ts +8 -1
  346. package/dist/admin/src/preview/utils/getPreviewUrlStatus.d.ts +6 -0
  347. package/dist/admin/src/router.d.ts +2 -2
  348. package/dist/admin/src/services/api.d.ts +1 -1
  349. package/dist/admin/src/services/components.d.ts +2 -2
  350. package/dist/admin/src/services/contentTypes.d.ts +3 -3
  351. package/dist/admin/src/services/documents.d.ts +32 -24
  352. package/dist/admin/src/services/homepage.d.ts +1 -1
  353. package/dist/admin/src/services/init.d.ts +2 -1
  354. package/dist/admin/src/services/relations.d.ts +2 -2
  355. package/dist/admin/src/services/uid.d.ts +5 -5
  356. package/dist/admin/src/utils/api.d.ts +2 -2
  357. package/dist/admin/src/utils/conditionalFields.d.ts +1 -0
  358. package/dist/admin/src/utils/contentStructure.d.ts +59 -0
  359. package/dist/admin/src/utils/objects.d.ts +7 -4
  360. package/dist/admin/src/utils/previewImage.d.ts +3 -0
  361. package/dist/admin/src/utils/relations.d.ts +4 -3
  362. package/dist/admin/src/utils/validation.d.ts +2 -1
  363. package/dist/admin/translations/cs.json.js +1 -0
  364. package/dist/admin/translations/cs.json.js.map +1 -1
  365. package/dist/admin/translations/cs.json.mjs +1 -0
  366. package/dist/admin/translations/cs.json.mjs.map +1 -1
  367. package/dist/admin/translations/de.json.js +1 -0
  368. package/dist/admin/translations/de.json.js.map +1 -1
  369. package/dist/admin/translations/de.json.mjs +1 -0
  370. package/dist/admin/translations/de.json.mjs.map +1 -1
  371. package/dist/admin/translations/en.json.js +5 -0
  372. package/dist/admin/translations/en.json.js.map +1 -1
  373. package/dist/admin/translations/en.json.mjs +5 -0
  374. package/dist/admin/translations/en.json.mjs.map +1 -1
  375. package/dist/admin/translations/eu.json.js +3 -3
  376. package/dist/admin/translations/eu.json.mjs +3 -3
  377. package/dist/admin/translations/fr.json.js +1 -0
  378. package/dist/admin/translations/fr.json.js.map +1 -1
  379. package/dist/admin/translations/fr.json.mjs +1 -0
  380. package/dist/admin/translations/fr.json.mjs.map +1 -1
  381. package/dist/admin/translations/gu.json.js +4 -4
  382. package/dist/admin/translations/gu.json.mjs +4 -4
  383. package/dist/admin/translations/hi.json.js +9 -9
  384. package/dist/admin/translations/hi.json.mjs +9 -9
  385. package/dist/admin/translations/ja.json.js +1 -0
  386. package/dist/admin/translations/ja.json.js.map +1 -1
  387. package/dist/admin/translations/ja.json.mjs +1 -0
  388. package/dist/admin/translations/ja.json.mjs.map +1 -1
  389. package/dist/admin/translations/ko.json.js +181 -1
  390. package/dist/admin/translations/ko.json.js.map +1 -1
  391. package/dist/admin/translations/ko.json.mjs +181 -1
  392. package/dist/admin/translations/ko.json.mjs.map +1 -1
  393. package/dist/admin/translations/ml.json.js +6 -6
  394. package/dist/admin/translations/ml.json.mjs +6 -6
  395. package/dist/admin/translations/nl.json.js +1 -0
  396. package/dist/admin/translations/nl.json.js.map +1 -1
  397. package/dist/admin/translations/nl.json.mjs +1 -0
  398. package/dist/admin/translations/nl.json.mjs.map +1 -1
  399. package/dist/admin/translations/pl.json.js +1 -0
  400. package/dist/admin/translations/pl.json.js.map +1 -1
  401. package/dist/admin/translations/pl.json.mjs +1 -0
  402. package/dist/admin/translations/pl.json.mjs.map +1 -1
  403. package/dist/admin/translations/pt-BR.json.js +5 -5
  404. package/dist/admin/translations/pt-BR.json.mjs +5 -5
  405. package/dist/admin/translations/sa.json.js +10 -10
  406. package/dist/admin/translations/sa.json.mjs +10 -10
  407. package/dist/admin/translations/sk.json.js +1 -0
  408. package/dist/admin/translations/sk.json.js.map +1 -1
  409. package/dist/admin/translations/sk.json.mjs +1 -0
  410. package/dist/admin/translations/sk.json.mjs.map +1 -1
  411. package/dist/admin/utils/api.js +6 -1
  412. package/dist/admin/utils/api.js.map +1 -1
  413. package/dist/admin/utils/api.mjs +6 -1
  414. package/dist/admin/utils/api.mjs.map +1 -1
  415. package/dist/admin/utils/conditionalFields.js.map +1 -1
  416. package/dist/admin/utils/conditionalFields.mjs.map +1 -1
  417. package/dist/admin/utils/contentStructure.js +136 -0
  418. package/dist/admin/utils/contentStructure.js.map +1 -0
  419. package/dist/admin/utils/contentStructure.mjs +130 -0
  420. package/dist/admin/utils/contentStructure.mjs.map +1 -0
  421. package/dist/admin/utils/objects.js +46 -14
  422. package/dist/admin/utils/objects.js.map +1 -1
  423. package/dist/admin/utils/objects.mjs +46 -14
  424. package/dist/admin/utils/objects.mjs.map +1 -1
  425. package/dist/admin/utils/previewImage.js +14 -0
  426. package/dist/admin/utils/previewImage.js.map +1 -0
  427. package/dist/admin/utils/previewImage.mjs +12 -0
  428. package/dist/admin/utils/previewImage.mjs.map +1 -0
  429. package/dist/admin/utils/relations.js +9 -4
  430. package/dist/admin/utils/relations.js.map +1 -1
  431. package/dist/admin/utils/relations.mjs +9 -4
  432. package/dist/admin/utils/relations.mjs.map +1 -1
  433. package/dist/admin/utils/validation.js +5 -5
  434. package/dist/admin/utils/validation.js.map +1 -1
  435. package/dist/admin/utils/validation.mjs +4 -4
  436. package/dist/admin/utils/validation.mjs.map +1 -1
  437. package/dist/server/controllers/collection-types.js +26 -8
  438. package/dist/server/controllers/collection-types.js.map +1 -1
  439. package/dist/server/controllers/collection-types.mjs +26 -8
  440. package/dist/server/controllers/collection-types.mjs.map +1 -1
  441. package/dist/server/controllers/content-types.js +5 -7
  442. package/dist/server/controllers/content-types.js.map +1 -1
  443. package/dist/server/controllers/content-types.mjs +5 -7
  444. package/dist/server/controllers/content-types.mjs.map +1 -1
  445. package/dist/server/controllers/index.js +5 -2
  446. package/dist/server/controllers/index.js.map +1 -1
  447. package/dist/server/controllers/index.mjs +5 -2
  448. package/dist/server/controllers/index.mjs.map +1 -1
  449. package/dist/server/controllers/init.js +7 -2
  450. package/dist/server/controllers/init.js.map +1 -1
  451. package/dist/server/controllers/init.mjs +7 -2
  452. package/dist/server/controllers/init.mjs.map +1 -1
  453. package/dist/server/controllers/relations.js +33 -19
  454. package/dist/server/controllers/relations.js.map +1 -1
  455. package/dist/server/controllers/relations.mjs +32 -18
  456. package/dist/server/controllers/relations.mjs.map +1 -1
  457. package/dist/server/controllers/single-types.js +20 -3
  458. package/dist/server/controllers/single-types.js.map +1 -1
  459. package/dist/server/controllers/single-types.mjs +20 -3
  460. package/dist/server/controllers/single-types.mjs.map +1 -1
  461. package/dist/server/controllers/uid.js +3 -3
  462. package/dist/server/controllers/uid.js.map +1 -1
  463. package/dist/server/controllers/uid.mjs +3 -3
  464. package/dist/server/controllers/uid.mjs.map +1 -1
  465. package/dist/server/controllers/utils/clone.js +4 -9
  466. package/dist/server/controllers/utils/clone.js.map +1 -1
  467. package/dist/server/controllers/utils/clone.mjs +5 -6
  468. package/dist/server/controllers/utils/clone.mjs.map +1 -1
  469. package/dist/server/controllers/validation/index.js +2 -3
  470. package/dist/server/controllers/validation/index.js.map +1 -1
  471. package/dist/server/controllers/validation/index.mjs +2 -3
  472. package/dist/server/controllers/validation/index.mjs.map +1 -1
  473. package/dist/server/controllers/validation/model-configuration.js +3 -1
  474. package/dist/server/controllers/validation/model-configuration.js.map +1 -1
  475. package/dist/server/controllers/validation/model-configuration.mjs +3 -1
  476. package/dist/server/controllers/validation/model-configuration.mjs.map +1 -1
  477. package/dist/server/history/controllers/history-version.js +5 -4
  478. package/dist/server/history/controllers/history-version.js.map +1 -1
  479. package/dist/server/history/controllers/history-version.mjs +5 -4
  480. package/dist/server/history/controllers/history-version.mjs.map +1 -1
  481. package/dist/server/history/entitlements.js +26 -0
  482. package/dist/server/history/entitlements.js.map +1 -0
  483. package/dist/server/history/entitlements.mjs +24 -0
  484. package/dist/server/history/entitlements.mjs.map +1 -0
  485. package/dist/server/history/index.js +3 -0
  486. package/dist/server/history/index.js.map +1 -1
  487. package/dist/server/history/index.mjs +3 -0
  488. package/dist/server/history/index.mjs.map +1 -1
  489. package/dist/server/history/services/history.js +30 -9
  490. package/dist/server/history/services/history.js.map +1 -1
  491. package/dist/server/history/services/history.mjs +30 -9
  492. package/dist/server/history/services/history.mjs.map +1 -1
  493. package/dist/server/history/services/lifecycles.js +9 -8
  494. package/dist/server/history/services/lifecycles.js.map +1 -1
  495. package/dist/server/history/services/lifecycles.mjs +4 -3
  496. package/dist/server/history/services/lifecycles.mjs.map +1 -1
  497. package/dist/server/history/services/utils.js +26 -18
  498. package/dist/server/history/services/utils.js.map +1 -1
  499. package/dist/server/history/services/utils.mjs +23 -17
  500. package/dist/server/history/services/utils.mjs.map +1 -1
  501. package/dist/server/homepage/controllers/index.js.map +1 -1
  502. package/dist/server/homepage/controllers/index.mjs.map +1 -1
  503. package/dist/server/homepage/routes/homepage.js.map +1 -1
  504. package/dist/server/homepage/routes/homepage.mjs.map +1 -1
  505. package/dist/server/homepage/services/homepage.js +59 -27
  506. package/dist/server/homepage/services/homepage.js.map +1 -1
  507. package/dist/server/homepage/services/homepage.mjs +59 -27
  508. package/dist/server/homepage/services/homepage.mjs.map +1 -1
  509. package/dist/server/index.js.map +1 -1
  510. package/dist/server/index.mjs.map +1 -1
  511. package/dist/server/mcp/permissions.js +2 -2
  512. package/dist/server/mcp/permissions.js.map +1 -1
  513. package/dist/server/mcp/permissions.mjs +2 -2
  514. package/dist/server/mcp/permissions.mjs.map +1 -1
  515. package/dist/server/mcp/register-content-manager-mcp-tools.js +7 -5
  516. package/dist/server/mcp/register-content-manager-mcp-tools.js.map +1 -1
  517. package/dist/server/mcp/register-content-manager-mcp-tools.mjs +7 -5
  518. package/dist/server/mcp/register-content-manager-mcp-tools.mjs.map +1 -1
  519. package/dist/server/mcp/schemas/data-schema.js +6 -1
  520. package/dist/server/mcp/schemas/data-schema.js.map +1 -1
  521. package/dist/server/mcp/schemas/data-schema.mjs +6 -1
  522. package/dist/server/mcp/schemas/data-schema.mjs.map +1 -1
  523. package/dist/server/mcp/schemas/filters-schema.js +10 -2
  524. package/dist/server/mcp/schemas/filters-schema.js.map +1 -1
  525. package/dist/server/mcp/schemas/filters-schema.mjs +10 -2
  526. package/dist/server/mcp/schemas/filters-schema.mjs.map +1 -1
  527. package/dist/server/mcp/utils.js +4 -2
  528. package/dist/server/mcp/utils.js.map +1 -1
  529. package/dist/server/mcp/utils.mjs +4 -2
  530. package/dist/server/mcp/utils.mjs.map +1 -1
  531. package/dist/server/policies/hasPermissions.js.map +1 -1
  532. package/dist/server/policies/hasPermissions.mjs.map +1 -1
  533. package/dist/server/policies/index.js.map +1 -1
  534. package/dist/server/policies/index.mjs.map +1 -1
  535. package/dist/server/preview/controllers/index.js.map +1 -1
  536. package/dist/server/preview/controllers/index.mjs.map +1 -1
  537. package/dist/server/preview/controllers/previewScript.js +578 -37
  538. package/dist/server/preview/controllers/validation/preview.js +4 -4
  539. package/dist/server/preview/controllers/validation/preview.js.map +1 -1
  540. package/dist/server/preview/controllers/validation/preview.mjs +5 -5
  541. package/dist/server/preview/controllers/validation/preview.mjs.map +1 -1
  542. package/dist/server/preview/routes/preview.js.map +1 -1
  543. package/dist/server/preview/routes/preview.mjs.map +1 -1
  544. package/dist/server/preview/services/preview-config.js +5 -3
  545. package/dist/server/preview/services/preview-config.js.map +1 -1
  546. package/dist/server/preview/services/preview-config.mjs +5 -3
  547. package/dist/server/preview/services/preview-config.mjs.map +1 -1
  548. package/dist/server/register.js +6 -0
  549. package/dist/server/register.js.map +1 -1
  550. package/dist/server/register.mjs +6 -0
  551. package/dist/server/register.mjs.map +1 -1
  552. package/dist/server/routes/admin.js +3 -2
  553. package/dist/server/routes/admin.js.map +1 -1
  554. package/dist/server/routes/admin.mjs +3 -2
  555. package/dist/server/routes/admin.mjs.map +1 -1
  556. package/dist/server/routes/index.mjs +2 -2
  557. package/dist/server/routes/index.mjs.map +1 -1
  558. package/dist/server/services/components.js +4 -4
  559. package/dist/server/services/components.js.map +1 -1
  560. package/dist/server/services/components.mjs +4 -4
  561. package/dist/server/services/components.mjs.map +1 -1
  562. package/dist/server/services/configuration/rename-fields.js +68 -0
  563. package/dist/server/services/configuration/rename-fields.js.map +1 -0
  564. package/dist/server/services/configuration/rename-fields.mjs +66 -0
  565. package/dist/server/services/configuration/rename-fields.mjs.map +1 -0
  566. package/dist/server/services/content-structure.js +53 -0
  567. package/dist/server/services/content-structure.js.map +1 -0
  568. package/dist/server/services/content-structure.mjs +51 -0
  569. package/dist/server/services/content-structure.mjs.map +1 -0
  570. package/dist/server/services/content-types.js +8 -7
  571. package/dist/server/services/content-types.js.map +1 -1
  572. package/dist/server/services/content-types.mjs +8 -7
  573. package/dist/server/services/content-types.mjs.map +1 -1
  574. package/dist/server/services/data-mapper.js +3 -3
  575. package/dist/server/services/data-mapper.js.map +1 -1
  576. package/dist/server/services/data-mapper.mjs +3 -3
  577. package/dist/server/services/data-mapper.mjs.map +1 -1
  578. package/dist/server/services/document-manager.js +30 -44
  579. package/dist/server/services/document-manager.js.map +1 -1
  580. package/dist/server/services/document-manager.mjs +31 -45
  581. package/dist/server/services/document-manager.mjs.map +1 -1
  582. package/dist/server/services/document-metadata.js +54 -34
  583. package/dist/server/services/document-metadata.js.map +1 -1
  584. package/dist/server/services/document-metadata.mjs +54 -34
  585. package/dist/server/services/document-metadata.mjs.map +1 -1
  586. package/dist/server/services/index.js +3 -1
  587. package/dist/server/services/index.js.map +1 -1
  588. package/dist/server/services/index.mjs +3 -1
  589. package/dist/server/services/index.mjs.map +1 -1
  590. package/dist/server/services/metrics.js +3 -3
  591. package/dist/server/services/metrics.js.map +1 -1
  592. package/dist/server/services/metrics.mjs +3 -3
  593. package/dist/server/services/metrics.mjs.map +1 -1
  594. package/dist/server/services/permission-checker.js +16 -18
  595. package/dist/server/services/permission-checker.js.map +1 -1
  596. package/dist/server/services/permission-checker.mjs +15 -17
  597. package/dist/server/services/permission-checker.mjs.map +1 -1
  598. package/dist/server/services/permission.js +4 -4
  599. package/dist/server/services/permission.js.map +1 -1
  600. package/dist/server/services/permission.mjs +4 -4
  601. package/dist/server/services/permission.mjs.map +1 -1
  602. package/dist/server/services/populate-builder.js +4 -4
  603. package/dist/server/services/populate-builder.js.map +1 -1
  604. package/dist/server/services/populate-builder.mjs +4 -4
  605. package/dist/server/services/populate-builder.mjs.map +1 -1
  606. package/dist/server/services/utils/configuration/attribute-renames.js +164 -0
  607. package/dist/server/services/utils/configuration/attribute-renames.js.map +1 -0
  608. package/dist/server/services/utils/configuration/attribute-renames.mjs +161 -0
  609. package/dist/server/services/utils/configuration/attribute-renames.mjs.map +1 -0
  610. package/dist/server/services/utils/configuration/attributes.js +13 -14
  611. package/dist/server/services/utils/configuration/attributes.js.map +1 -1
  612. package/dist/server/services/utils/configuration/attributes.mjs +14 -15
  613. package/dist/server/services/utils/configuration/attributes.mjs.map +1 -1
  614. package/dist/server/services/utils/configuration/settings.js +4 -7
  615. package/dist/server/services/utils/configuration/settings.js.map +1 -1
  616. package/dist/server/services/utils/configuration/settings.mjs +2 -5
  617. package/dist/server/services/utils/configuration/settings.mjs.map +1 -1
  618. package/dist/server/services/utils/draft-relations.js +0 -5
  619. package/dist/server/services/utils/draft-relations.js.map +1 -1
  620. package/dist/server/services/utils/draft-relations.mjs +1 -5
  621. package/dist/server/services/utils/draft-relations.mjs.map +1 -1
  622. package/dist/server/services/utils/draft.js +131 -32
  623. package/dist/server/services/utils/draft.js.map +1 -1
  624. package/dist/server/services/utils/draft.mjs +114 -31
  625. package/dist/server/services/utils/draft.mjs.map +1 -1
  626. package/dist/server/services/utils/populate.js +41 -17
  627. package/dist/server/services/utils/populate.js.map +1 -1
  628. package/dist/server/services/utils/populate.mjs +19 -11
  629. package/dist/server/services/utils/populate.mjs.map +1 -1
  630. package/dist/server/src/controllers/collection-types.d.ts.map +1 -1
  631. package/dist/server/src/controllers/index.d.ts +2 -2
  632. package/dist/server/src/controllers/index.d.ts.map +1 -1
  633. package/dist/server/src/controllers/init.d.ts +1 -1
  634. package/dist/server/src/controllers/init.d.ts.map +1 -1
  635. package/dist/server/src/controllers/relations.d.ts.map +1 -1
  636. package/dist/server/src/controllers/single-types.d.ts.map +1 -1
  637. package/dist/server/src/controllers/uid.d.ts.map +1 -1
  638. package/dist/server/src/controllers/utils/metadata.d.ts +2 -2
  639. package/dist/server/src/history/controllers/history-version.d.ts.map +1 -1
  640. package/dist/server/src/history/entitlements.d.ts +9 -0
  641. package/dist/server/src/history/entitlements.d.ts.map +1 -0
  642. package/dist/server/src/history/index.d.ts.map +1 -1
  643. package/dist/server/src/history/routes/index.d.ts +3 -1
  644. package/dist/server/src/history/routes/index.d.ts.map +1 -1
  645. package/dist/server/src/history/services/history.d.ts.map +1 -1
  646. package/dist/server/src/history/services/index.d.ts +3 -3
  647. package/dist/server/src/history/services/lifecycles.d.ts.map +1 -1
  648. package/dist/server/src/history/services/utils.d.ts +9 -3
  649. package/dist/server/src/history/services/utils.d.ts.map +1 -1
  650. package/dist/server/src/homepage/controllers/index.d.ts.map +1 -1
  651. package/dist/server/src/homepage/index.d.ts +7 -3
  652. package/dist/server/src/homepage/index.d.ts.map +1 -1
  653. package/dist/server/src/homepage/routes/homepage.d.ts.map +1 -1
  654. package/dist/server/src/homepage/routes/index.d.ts +3 -1
  655. package/dist/server/src/homepage/routes/index.d.ts.map +1 -1
  656. package/dist/server/src/homepage/services/homepage.d.ts +3 -0
  657. package/dist/server/src/homepage/services/homepage.d.ts.map +1 -1
  658. package/dist/server/src/homepage/services/index.d.ts +1 -1
  659. package/dist/server/src/index.d.ts +83 -73
  660. package/dist/server/src/index.d.ts.map +1 -1
  661. package/dist/server/src/mcp/permissions.d.ts +1 -1
  662. package/dist/server/src/mcp/permissions.d.ts.map +1 -1
  663. package/dist/server/src/mcp/register-content-manager-mcp-tools.d.ts +3 -1
  664. package/dist/server/src/mcp/register-content-manager-mcp-tools.d.ts.map +1 -1
  665. package/dist/server/src/mcp/schemas/data-schema.d.ts.map +1 -1
  666. package/dist/server/src/mcp/schemas/filters-schema.d.ts.map +1 -1
  667. package/dist/server/src/mcp/types.d.ts +2 -2
  668. package/dist/server/src/mcp/utils.d.ts +3 -1
  669. package/dist/server/src/mcp/utils.d.ts.map +1 -1
  670. package/dist/server/src/policies/hasPermissions.d.ts.map +1 -1
  671. package/dist/server/src/policies/index.d.ts.map +1 -1
  672. package/dist/server/src/preview/controllers/index.d.ts.map +1 -1
  673. package/dist/server/src/preview/routes/index.d.ts +3 -1
  674. package/dist/server/src/preview/routes/index.d.ts.map +1 -1
  675. package/dist/server/src/preview/routes/preview.d.ts.map +1 -1
  676. package/dist/server/src/preview/services/index.d.ts +4 -4
  677. package/dist/server/src/preview/services/index.d.ts.map +1 -1
  678. package/dist/server/src/preview/services/preview-config.d.ts +5 -0
  679. package/dist/server/src/preview/services/preview-config.d.ts.map +1 -1
  680. package/dist/server/src/register.d.ts.map +1 -1
  681. package/dist/server/src/registries.d.ts +2 -0
  682. package/dist/server/src/registries.d.ts.map +1 -0
  683. package/dist/server/src/routes/admin.d.ts +5 -4
  684. package/dist/server/src/routes/admin.d.ts.map +1 -1
  685. package/dist/server/src/routes/index.d.ts +3 -1
  686. package/dist/server/src/routes/index.d.ts.map +1 -1
  687. package/dist/server/src/services/components.d.ts +3 -0
  688. package/dist/server/src/services/components.d.ts.map +1 -1
  689. package/dist/server/src/services/configuration/rename-fields.d.ts +15 -0
  690. package/dist/server/src/services/configuration/rename-fields.d.ts.map +1 -0
  691. package/dist/server/src/services/content-structure.d.ts +8 -0
  692. package/dist/server/src/services/content-structure.d.ts.map +1 -0
  693. package/dist/server/src/services/content-types.d.ts +1 -0
  694. package/dist/server/src/services/content-types.d.ts.map +1 -1
  695. package/dist/server/src/services/data-mapper.d.ts +3 -2
  696. package/dist/server/src/services/data-mapper.d.ts.map +1 -1
  697. package/dist/server/src/services/document-manager.d.ts +11 -0
  698. package/dist/server/src/services/document-manager.d.ts.map +1 -1
  699. package/dist/server/src/services/document-metadata.d.ts.map +1 -1
  700. package/dist/server/src/services/index.d.ts +78 -70
  701. package/dist/server/src/services/index.d.ts.map +1 -1
  702. package/dist/server/src/services/metrics.d.ts.map +1 -1
  703. package/dist/server/src/services/permission-checker.d.ts +2 -2
  704. package/dist/server/src/services/permission-checker.d.ts.map +1 -1
  705. package/dist/server/src/services/permission.d.ts.map +1 -1
  706. package/dist/server/src/services/populate-builder.d.ts +1 -1
  707. package/dist/server/src/services/populate-builder.d.ts.map +1 -1
  708. package/dist/server/src/services/utils/configuration/attribute-renames.d.ts +57 -0
  709. package/dist/server/src/services/utils/configuration/attribute-renames.d.ts.map +1 -0
  710. package/dist/server/src/services/utils/configuration/index.d.ts +12 -3
  711. package/dist/server/src/services/utils/configuration/index.d.ts.map +1 -1
  712. package/dist/server/src/services/utils/configuration/layouts.d.ts +2 -2
  713. package/dist/server/src/services/utils/configuration/settings.d.ts +10 -1
  714. package/dist/server/src/services/utils/configuration/settings.d.ts.map +1 -1
  715. package/dist/server/src/services/utils/draft.d.ts +3 -2
  716. package/dist/server/src/services/utils/draft.d.ts.map +1 -1
  717. package/dist/server/src/services/utils/populate.d.ts +4 -9
  718. package/dist/server/src/services/utils/populate.d.ts.map +1 -1
  719. package/dist/server/src/types/controllers.d.ts +106 -0
  720. package/dist/server/src/types/controllers.d.ts.map +1 -0
  721. package/dist/server/src/types/index.d.ts +60 -0
  722. package/dist/server/src/types/index.d.ts.map +1 -0
  723. package/dist/server/src/types/policies.d.ts +8 -0
  724. package/dist/server/src/types/policies.d.ts.map +1 -0
  725. package/dist/server/src/types/services.d.ts +333 -0
  726. package/dist/server/src/types/services.d.ts.map +1 -0
  727. package/dist/server/src/utils/index.d.ts +12 -4
  728. package/dist/server/src/utils/index.d.ts.map +1 -1
  729. package/dist/server/utils/index.js +0 -2
  730. package/dist/server/utils/index.js.map +1 -1
  731. package/dist/server/utils/index.mjs +0 -2
  732. package/dist/server/utils/index.mjs.map +1 -1
  733. package/dist/shared/contracts/collection-types.d.ts.map +1 -1
  734. package/dist/shared/contracts/components.d.ts +1 -1
  735. package/dist/shared/contracts/components.d.ts.map +1 -1
  736. package/dist/shared/contracts/content-types.d.ts +5 -0
  737. package/dist/shared/contracts/content-types.d.ts.map +1 -1
  738. package/dist/shared/contracts/homepage.d.ts +2 -2
  739. package/dist/shared/contracts/homepage.d.ts.map +1 -1
  740. package/dist/shared/contracts/init.d.ts +2 -0
  741. package/dist/shared/contracts/init.d.ts.map +1 -1
  742. package/dist/shared/contracts/relations.d.ts +2 -1
  743. package/dist/shared/contracts/relations.d.ts.map +1 -1
  744. package/package.json +31 -20
@@ -92,6 +92,7 @@ const DrawerContentInner = styledComponents.styled(designSystem.ScrollArea)`
92
92
  `;
93
93
  const Root = ({ children, hasContent = false, hasSideNav = false })=>{
94
94
  const [isOpen, setIsOpen] = React__namespace.useState(false);
95
+ const [headerRef, { height: headerHeight }] = designSystem.useMeasure();
95
96
  // Close drawer when there's no content
96
97
  React__namespace.useEffect(()=>{
97
98
  if (!hasContent) {
@@ -100,16 +101,24 @@ const Root = ({ children, hasContent = false, hasSideNav = false })=>{
100
101
  }, [
101
102
  hasContent
102
103
  ]);
103
- return /*#__PURE__*/ jsxRuntime.jsx(ActionsDrawerProvider, {
104
+ return /*#__PURE__*/ jsxRuntime.jsxs(ActionsDrawerProvider, {
104
105
  isOpen: isOpen,
105
106
  setIsOpen: setIsOpen,
106
107
  hasContent: hasContent,
107
108
  hasSideNav: hasSideNav,
108
- children: /*#__PURE__*/ jsxRuntime.jsx(DrawerContainer, {
109
- $hasSideNav: hasSideNav,
110
- $isOpen: isOpen,
111
- children: children
112
- })
109
+ headerRef: headerRef,
110
+ children: [
111
+ /*#__PURE__*/ jsxRuntime.jsx(designSystem.Box, {
112
+ height: `${headerHeight}px`,
113
+ shrink: 0,
114
+ "data-testid": "actions-drawer-spacer"
115
+ }),
116
+ /*#__PURE__*/ jsxRuntime.jsx(DrawerContainer, {
117
+ $hasSideNav: hasSideNav,
118
+ $isOpen: isOpen,
119
+ children: children
120
+ })
121
+ ]
113
122
  });
114
123
  };
115
124
  /* -------------------------------------------------------------------------------------------------
@@ -135,11 +144,13 @@ const Header = ({ children })=>{
135
144
  const isOpen = ctx?.isOpen ?? false;
136
145
  const hasContent = ctx?.hasContent ?? false;
137
146
  const setIsOpen = ctx?.setIsOpen;
147
+ const headerRef = ctx?.headerRef;
138
148
  const { formatMessage } = reactIntl.useIntl();
139
149
  const toggleOpen = ()=>{
140
150
  setIsOpen?.((prev)=>!prev);
141
151
  };
142
152
  return /*#__PURE__*/ jsxRuntime.jsx(DrawerContent, {
153
+ ref: headerRef,
143
154
  background: "neutral0",
144
155
  children: /*#__PURE__*/ jsxRuntime.jsxs(designSystem.Flex, {
145
156
  paddingTop: 3,
@@ -1 +1 @@
1
- {"version":3,"file":"ActionsDrawer.js","sources":["../../../admin/src/components/ActionsDrawer.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { WIDTH_SIDE_NAVIGATION, createContext } from '@strapi/admin/strapi-admin';\nimport { Portal, Flex, Box, ScrollArea, IconButton } from '@strapi/design-system';\nimport { CaretDown, CaretUp } from '@strapi/icons';\nimport { useIntl } from 'react-intl';\nimport { styled } from 'styled-components';\n\n/**\n * ActionsDrawer is a component used in the content manager edit view page and content history page.\n * It's a sticky banner that can expand to reveal more actions. It's used only in mobile and tablet.\n *\n * A similar component is currently in development in the design-system but it's not ready yet.\n * Using the Panels for the edit view page brought some complexity and for the moment, we decided to go with this custom implementation.\n *\n * @TODO: Replace this component with the one in the design-system when it's ready.\n */\n\n/* -------------------------------------------------------------------------------------------------\n * ActionsDrawer Context\n * -----------------------------------------------------------------------------------------------*/\n\ninterface ActionsDrawerContextValue {\n isOpen: boolean;\n setIsOpen: React.Dispatch<React.SetStateAction<boolean>>;\n hasContent: boolean;\n hasSideNav: boolean;\n}\n\nconst [ActionsDrawerProvider, useActionsDrawer] = createContext<ActionsDrawerContextValue | null>(\n 'ActionsDrawer',\n null\n);\n\n/* -------------------------------------------------------------------------------------------------\n * Styled Components\n * -----------------------------------------------------------------------------------------------*/\n\nconst DrawerContainer = styled(Portal)<{ $hasSideNav: boolean; $isOpen: boolean }>`\n position: fixed;\n left: 0;\n right: 0;\n bottom: 0;\n z-index: ${({ $isOpen }) => ($isOpen ? 4 : 2)};\n display: flex;\n flex-direction: column;\n align-items: stretch;\n justify-content: flex-end;\n\n ${({ theme }) => theme.breakpoints.medium} {\n z-index: 2;\n left: ${({ $hasSideNav }) => ($hasSideNav ? WIDTH_SIDE_NAVIGATION : 0)};\n }\n`;\n\nconst DrawerOverlay = styled(Box)<{ $isOpen: boolean; $hasSideNav: boolean }>`\n position: fixed;\n left: 0;\n top: 0;\n right: 0;\n bottom: 0;\n background-color: rgba(0, 0, 0, 0.5);\n transition: opacity ${(props) => props.theme.motion.timings['200']}\n ${(props) => props.theme.motion.easings.easeInOutQuad};\n opacity: ${({ $isOpen }) => ($isOpen ? 1 : 0)};\n pointer-events: ${({ $isOpen }) => ($isOpen ? 'auto' : 'none')};\n\n ${({ theme }) => theme.breakpoints.medium} {\n left: ${({ $hasSideNav }) => ($hasSideNav ? WIDTH_SIDE_NAVIGATION : 0)};\n }\n`;\n\nconst ToggleButton = styled(IconButton)`\n padding: 0;\n border: none;\n background: ${({ theme }) => theme.colors.neutral200};\n width: 3.2rem;\n height: 3.2rem;\n border-radius: 1.6rem;\n display: flex;\n align-items: center;\n justify-content: center;\n`;\n\nconst DrawerContent = styled(Flex)`\n flex-direction: column;\n align-items: stretch;\n position: relative;\n z-index: 1;\n pointer-events: auto;\n`;\n\nconst DrawerContentInner = styled(ScrollArea)<{ $isOpen: boolean }>`\n max-height: ${({ $isOpen }) =>\n $isOpen\n ? 'calc(100vh - 25rem)' // 25rem is arbitrary, to be able to see a bit of the content behind (navigation and header)\n : '0'};\n overflow: hidden;\n transition: max-height ${(props) => props.theme.motion.timings['200']}\n ${(props) => props.theme.motion.easings.easeInOutQuad};\n z-index: 1;\n pointer-events: auto;\n`;\n\n/* -------------------------------------------------------------------------------------------------\n * Root\n * -----------------------------------------------------------------------------------------------*/\n\ninterface RootProps {\n children: React.ReactNode;\n hasContent?: boolean;\n hasSideNav?: boolean;\n}\n\nconst Root = ({ children, hasContent = false, hasSideNav = false }: RootProps) => {\n const [isOpen, setIsOpen] = React.useState(false);\n\n // Close drawer when there's no content\n React.useEffect(() => {\n if (!hasContent) {\n setIsOpen(false);\n }\n }, [hasContent]);\n\n return (\n <ActionsDrawerProvider\n isOpen={isOpen}\n setIsOpen={setIsOpen}\n hasContent={hasContent}\n hasSideNav={hasSideNav}\n >\n <DrawerContainer $hasSideNav={hasSideNav} $isOpen={isOpen}>\n {children}\n </DrawerContainer>\n </ActionsDrawerProvider>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * Overlay\n * -----------------------------------------------------------------------------------------------*/\n\nconst Overlay = () => {\n const ctx = useActionsDrawer('ActionsDrawer.Overlay', (s) => s, false);\n const isOpen = ctx?.isOpen ?? false;\n const hasContent = ctx?.hasContent ?? false;\n const hasSideNav = ctx?.hasSideNav ?? false;\n const setIsOpen = ctx?.setIsOpen;\n\n if (!hasContent) {\n return null;\n }\n\n return (\n <DrawerOverlay\n $isOpen={isOpen}\n $hasSideNav={hasSideNav}\n onClick={() => setIsOpen?.(false)}\n data-testid=\"actions-drawer-overlay\"\n />\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * Header\n * -----------------------------------------------------------------------------------------------*/\n\ninterface HeaderProps {\n children: React.ReactNode;\n}\n\nconst Header = ({ children }: HeaderProps) => {\n const ctx = useActionsDrawer('ActionsDrawer.Header', (s) => s, false);\n const isOpen = ctx?.isOpen ?? false;\n const hasContent = ctx?.hasContent ?? false;\n const setIsOpen = ctx?.setIsOpen;\n const { formatMessage } = useIntl();\n\n const toggleOpen = () => {\n setIsOpen?.((prev: boolean) => !prev);\n };\n\n return (\n <DrawerContent background=\"neutral0\">\n <Flex\n paddingTop={3}\n paddingBottom={3}\n paddingLeft={4}\n paddingRight={4}\n gap={3}\n borderStyle=\"solid\"\n borderWidth={isOpen ? '1px 0' : '1px 0 0 0'}\n borderColor=\"neutral150\"\n >\n <Flex flex={1} gap={2} alignItems=\"center\" overflow=\"hidden\">\n {children}\n </Flex>\n {hasContent && (\n <ToggleButton\n onClick={toggleOpen}\n label={\n isOpen\n ? formatMessage({\n id: 'content-manager.actions-drawer.close',\n defaultMessage: 'Close more actions',\n })\n : formatMessage({\n id: 'content-manager.actions-drawer.open',\n defaultMessage: 'Open more actions',\n })\n }\n >\n {isOpen ? <CaretUp fill=\"neutral600\" /> : <CaretDown fill=\"neutral600\" />}\n </ToggleButton>\n )}\n </Flex>\n </DrawerContent>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * Content\n * -----------------------------------------------------------------------------------------------*/\n\ninterface ContentProps {\n children: React.ReactNode;\n}\n\nconst Content = ({ children }: ContentProps) => {\n const ctx = useActionsDrawer('ActionsDrawer.Content', (s) => s, false);\n const isOpen = ctx?.isOpen ?? false;\n\n return (\n <DrawerContentInner $isOpen={isOpen}>\n <Flex\n direction=\"column\"\n alignItems=\"stretch\"\n justifyContent=\"flex-start\"\n padding={{ initial: 4, large: 0 }}\n background=\"neutral0\"\n >\n {children}\n </Flex>\n </DrawerContentInner>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * ActionsDrawer\n * -----------------------------------------------------------------------------------------------*/\n\nconst ActionsDrawer = {\n Root,\n Overlay,\n Header,\n Content,\n};\n\nexport { ActionsDrawer, useActionsDrawer };\n"],"names":["ActionsDrawerProvider","useActionsDrawer","createContext","DrawerContainer","styled","Portal","$isOpen","theme","breakpoints","medium","$hasSideNav","WIDTH_SIDE_NAVIGATION","DrawerOverlay","Box","props","motion","timings","easings","easeInOutQuad","ToggleButton","IconButton","colors","neutral200","DrawerContent","Flex","DrawerContentInner","ScrollArea","Root","children","hasContent","hasSideNav","isOpen","setIsOpen","React","useState","useEffect","_jsx","Overlay","ctx","s","onClick","data-testid","Header","formatMessage","useIntl","toggleOpen","prev","background","_jsxs","paddingTop","paddingBottom","paddingLeft","paddingRight","gap","borderStyle","borderWidth","borderColor","flex","alignItems","overflow","label","id","defaultMessage","CaretUp","fill","CaretDown","Content","direction","justifyContent","padding","initial","large","ActionsDrawer"],"mappings":"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"}
1
+ {"version":3,"file":"ActionsDrawer.js","sources":["../../../admin/src/components/ActionsDrawer.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { WIDTH_SIDE_NAVIGATION, createContext } from '@strapi/admin/strapi-admin';\nimport { Portal, Flex, Box, ScrollArea, IconButton, useMeasure } from '@strapi/design-system';\nimport { CaretDown, CaretUp } from '@strapi/icons';\nimport { useIntl } from 'react-intl';\nimport { styled } from 'styled-components';\n\n/**\n * ActionsDrawer is a component used in the content manager edit view page and content history page.\n * It's a sticky banner that can expand to reveal more actions. It's used only in mobile and tablet.\n *\n * A similar component is currently in development in the design-system but it's not ready yet.\n * Using the Panels for the edit view page brought some complexity and for the moment, we decided to go with this custom implementation.\n *\n * @TODO: Replace this component with the one in the design-system when it's ready.\n */\n\n/* -------------------------------------------------------------------------------------------------\n * ActionsDrawer Context\n * -----------------------------------------------------------------------------------------------*/\n\ninterface ActionsDrawerContextValue {\n isOpen: boolean;\n setIsOpen: React.Dispatch<React.SetStateAction<boolean>>;\n hasContent: boolean;\n hasSideNav: boolean;\n headerRef: (element: HTMLDivElement) => void;\n}\n\nconst [ActionsDrawerProvider, useActionsDrawer] = createContext<ActionsDrawerContextValue | null>(\n 'ActionsDrawer',\n null\n);\n\n/* -------------------------------------------------------------------------------------------------\n * Styled Components\n * -----------------------------------------------------------------------------------------------*/\n\nconst DrawerContainer = styled(Portal)<{ $hasSideNav: boolean; $isOpen: boolean }>`\n position: fixed;\n left: 0;\n right: 0;\n bottom: 0;\n z-index: ${({ $isOpen }) => ($isOpen ? 4 : 2)};\n display: flex;\n flex-direction: column;\n align-items: stretch;\n justify-content: flex-end;\n\n ${({ theme }) => theme.breakpoints.medium} {\n z-index: 2;\n left: ${({ $hasSideNav }) => ($hasSideNav ? WIDTH_SIDE_NAVIGATION : 0)};\n }\n`;\n\nconst DrawerOverlay = styled(Box)<{ $isOpen: boolean; $hasSideNav: boolean }>`\n position: fixed;\n left: 0;\n top: 0;\n right: 0;\n bottom: 0;\n background-color: rgba(0, 0, 0, 0.5);\n transition: opacity ${(props) => props.theme.motion.timings['200']}\n ${(props) => props.theme.motion.easings.easeInOutQuad};\n opacity: ${({ $isOpen }) => ($isOpen ? 1 : 0)};\n pointer-events: ${({ $isOpen }) => ($isOpen ? 'auto' : 'none')};\n\n ${({ theme }) => theme.breakpoints.medium} {\n left: ${({ $hasSideNav }) => ($hasSideNav ? WIDTH_SIDE_NAVIGATION : 0)};\n }\n`;\n\nconst ToggleButton = styled(IconButton)`\n padding: 0;\n border: none;\n background: ${({ theme }) => theme.colors.neutral200};\n width: 3.2rem;\n height: 3.2rem;\n border-radius: 1.6rem;\n display: flex;\n align-items: center;\n justify-content: center;\n`;\n\nconst DrawerContent = styled(Flex)`\n flex-direction: column;\n align-items: stretch;\n position: relative;\n z-index: 1;\n pointer-events: auto;\n`;\n\nconst DrawerContentInner = styled(ScrollArea)<{ $isOpen: boolean }>`\n max-height: ${({ $isOpen }) =>\n $isOpen\n ? 'calc(100vh - 25rem)' // 25rem is arbitrary, to be able to see a bit of the content behind (navigation and header)\n : '0'};\n overflow: hidden;\n transition: max-height ${(props) => props.theme.motion.timings['200']}\n ${(props) => props.theme.motion.easings.easeInOutQuad};\n z-index: 1;\n pointer-events: auto;\n`;\n\n/* -------------------------------------------------------------------------------------------------\n * Root\n * -----------------------------------------------------------------------------------------------*/\n\ninterface RootProps {\n children: React.ReactNode;\n hasContent?: boolean;\n hasSideNav?: boolean;\n}\n\nconst Root = ({ children, hasContent = false, hasSideNav = false }: RootProps) => {\n const [isOpen, setIsOpen] = React.useState(false);\n const [headerRef, { height: headerHeight }] = useMeasure<HTMLDivElement>();\n\n // Close drawer when there's no content\n React.useEffect(() => {\n if (!hasContent) {\n setIsOpen(false);\n }\n }, [hasContent]);\n\n return (\n <ActionsDrawerProvider\n isOpen={isOpen}\n setIsOpen={setIsOpen}\n hasContent={hasContent}\n hasSideNav={hasSideNav}\n headerRef={headerRef}\n >\n <Box height={`${headerHeight}px`} shrink={0} data-testid=\"actions-drawer-spacer\" />\n <DrawerContainer $hasSideNav={hasSideNav} $isOpen={isOpen}>\n {children}\n </DrawerContainer>\n </ActionsDrawerProvider>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * Overlay\n * -----------------------------------------------------------------------------------------------*/\n\nconst Overlay = () => {\n const ctx = useActionsDrawer('ActionsDrawer.Overlay', (s) => s, false);\n const isOpen = ctx?.isOpen ?? false;\n const hasContent = ctx?.hasContent ?? false;\n const hasSideNav = ctx?.hasSideNav ?? false;\n const setIsOpen = ctx?.setIsOpen;\n\n if (!hasContent) {\n return null;\n }\n\n return (\n <DrawerOverlay\n $isOpen={isOpen}\n $hasSideNav={hasSideNav}\n onClick={() => setIsOpen?.(false)}\n data-testid=\"actions-drawer-overlay\"\n />\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * Header\n * -----------------------------------------------------------------------------------------------*/\n\ninterface HeaderProps {\n children: React.ReactNode;\n}\n\nconst Header = ({ children }: HeaderProps) => {\n const ctx = useActionsDrawer('ActionsDrawer.Header', (s) => s, false);\n const isOpen = ctx?.isOpen ?? false;\n const hasContent = ctx?.hasContent ?? false;\n const setIsOpen = ctx?.setIsOpen;\n const headerRef = ctx?.headerRef;\n const { formatMessage } = useIntl();\n\n const toggleOpen = () => {\n setIsOpen?.((prev: boolean) => !prev);\n };\n\n return (\n <DrawerContent ref={headerRef} background=\"neutral0\">\n <Flex\n paddingTop={3}\n paddingBottom={3}\n paddingLeft={4}\n paddingRight={4}\n gap={3}\n borderStyle=\"solid\"\n borderWidth={isOpen ? '1px 0' : '1px 0 0 0'}\n borderColor=\"neutral150\"\n >\n <Flex flex={1} gap={2} alignItems=\"center\" overflow=\"hidden\">\n {children}\n </Flex>\n {hasContent && (\n <ToggleButton\n onClick={toggleOpen}\n label={\n isOpen\n ? formatMessage({\n id: 'content-manager.actions-drawer.close',\n defaultMessage: 'Close more actions',\n })\n : formatMessage({\n id: 'content-manager.actions-drawer.open',\n defaultMessage: 'Open more actions',\n })\n }\n >\n {isOpen ? <CaretUp fill=\"neutral600\" /> : <CaretDown fill=\"neutral600\" />}\n </ToggleButton>\n )}\n </Flex>\n </DrawerContent>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * Content\n * -----------------------------------------------------------------------------------------------*/\n\ninterface ContentProps {\n children: React.ReactNode;\n}\n\nconst Content = ({ children }: ContentProps) => {\n const ctx = useActionsDrawer('ActionsDrawer.Content', (s) => s, false);\n const isOpen = ctx?.isOpen ?? false;\n\n return (\n <DrawerContentInner $isOpen={isOpen}>\n <Flex\n direction=\"column\"\n alignItems=\"stretch\"\n justifyContent=\"flex-start\"\n padding={{ initial: 4, large: 0 }}\n background=\"neutral0\"\n >\n {children}\n </Flex>\n </DrawerContentInner>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * ActionsDrawer\n * -----------------------------------------------------------------------------------------------*/\n\nconst ActionsDrawer = {\n Root,\n Overlay,\n Header,\n Content,\n};\n\nexport { ActionsDrawer, useActionsDrawer };\n"],"names":["ActionsDrawerProvider","useActionsDrawer","createContext","DrawerContainer","styled","Portal","$isOpen","theme","breakpoints","medium","$hasSideNav","WIDTH_SIDE_NAVIGATION","DrawerOverlay","Box","props","motion","timings","easings","easeInOutQuad","ToggleButton","IconButton","colors","neutral200","DrawerContent","Flex","DrawerContentInner","ScrollArea","Root","children","hasContent","hasSideNav","isOpen","setIsOpen","React","useState","headerRef","height","headerHeight","useMeasure","useEffect","_jsxs","_jsx","shrink","data-testid","Overlay","ctx","s","onClick","Header","formatMessage","useIntl","toggleOpen","prev","ref","background","paddingTop","paddingBottom","paddingLeft","paddingRight","gap","borderStyle","borderWidth","borderColor","flex","alignItems","overflow","label","id","defaultMessage","CaretUp","fill","CaretDown","Content","direction","justifyContent","padding","initial","large","ActionsDrawer"],"mappings":"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"}
@@ -1,7 +1,7 @@
1
- import { jsx, jsxs } from 'react/jsx-runtime';
1
+ import { jsxs, jsx } from 'react/jsx-runtime';
2
2
  import * as React from 'react';
3
3
  import { createContext, WIDTH_SIDE_NAVIGATION } from '@strapi/admin/strapi-admin';
4
- import { Portal, Box, IconButton, Flex, ScrollArea } from '@strapi/design-system';
4
+ import { Portal, Box, IconButton, Flex, ScrollArea, useMeasure } from '@strapi/design-system';
5
5
  import { CaretUp, CaretDown } from '@strapi/icons';
6
6
  import { useIntl } from 'react-intl';
7
7
  import { styled } from 'styled-components';
@@ -70,6 +70,7 @@ const DrawerContentInner = styled(ScrollArea)`
70
70
  `;
71
71
  const Root = ({ children, hasContent = false, hasSideNav = false })=>{
72
72
  const [isOpen, setIsOpen] = React.useState(false);
73
+ const [headerRef, { height: headerHeight }] = useMeasure();
73
74
  // Close drawer when there's no content
74
75
  React.useEffect(()=>{
75
76
  if (!hasContent) {
@@ -78,16 +79,24 @@ const Root = ({ children, hasContent = false, hasSideNav = false })=>{
78
79
  }, [
79
80
  hasContent
80
81
  ]);
81
- return /*#__PURE__*/ jsx(ActionsDrawerProvider, {
82
+ return /*#__PURE__*/ jsxs(ActionsDrawerProvider, {
82
83
  isOpen: isOpen,
83
84
  setIsOpen: setIsOpen,
84
85
  hasContent: hasContent,
85
86
  hasSideNav: hasSideNav,
86
- children: /*#__PURE__*/ jsx(DrawerContainer, {
87
- $hasSideNav: hasSideNav,
88
- $isOpen: isOpen,
89
- children: children
90
- })
87
+ headerRef: headerRef,
88
+ children: [
89
+ /*#__PURE__*/ jsx(Box, {
90
+ height: `${headerHeight}px`,
91
+ shrink: 0,
92
+ "data-testid": "actions-drawer-spacer"
93
+ }),
94
+ /*#__PURE__*/ jsx(DrawerContainer, {
95
+ $hasSideNav: hasSideNav,
96
+ $isOpen: isOpen,
97
+ children: children
98
+ })
99
+ ]
91
100
  });
92
101
  };
93
102
  /* -------------------------------------------------------------------------------------------------
@@ -113,11 +122,13 @@ const Header = ({ children })=>{
113
122
  const isOpen = ctx?.isOpen ?? false;
114
123
  const hasContent = ctx?.hasContent ?? false;
115
124
  const setIsOpen = ctx?.setIsOpen;
125
+ const headerRef = ctx?.headerRef;
116
126
  const { formatMessage } = useIntl();
117
127
  const toggleOpen = ()=>{
118
128
  setIsOpen?.((prev)=>!prev);
119
129
  };
120
130
  return /*#__PURE__*/ jsx(DrawerContent, {
131
+ ref: headerRef,
121
132
  background: "neutral0",
122
133
  children: /*#__PURE__*/ jsxs(Flex, {
123
134
  paddingTop: 3,
@@ -1 +1 @@
1
- {"version":3,"file":"ActionsDrawer.mjs","sources":["../../../admin/src/components/ActionsDrawer.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { WIDTH_SIDE_NAVIGATION, createContext } from '@strapi/admin/strapi-admin';\nimport { Portal, Flex, Box, ScrollArea, IconButton } from '@strapi/design-system';\nimport { CaretDown, CaretUp } from '@strapi/icons';\nimport { useIntl } from 'react-intl';\nimport { styled } from 'styled-components';\n\n/**\n * ActionsDrawer is a component used in the content manager edit view page and content history page.\n * It's a sticky banner that can expand to reveal more actions. It's used only in mobile and tablet.\n *\n * A similar component is currently in development in the design-system but it's not ready yet.\n * Using the Panels for the edit view page brought some complexity and for the moment, we decided to go with this custom implementation.\n *\n * @TODO: Replace this component with the one in the design-system when it's ready.\n */\n\n/* -------------------------------------------------------------------------------------------------\n * ActionsDrawer Context\n * -----------------------------------------------------------------------------------------------*/\n\ninterface ActionsDrawerContextValue {\n isOpen: boolean;\n setIsOpen: React.Dispatch<React.SetStateAction<boolean>>;\n hasContent: boolean;\n hasSideNav: boolean;\n}\n\nconst [ActionsDrawerProvider, useActionsDrawer] = createContext<ActionsDrawerContextValue | null>(\n 'ActionsDrawer',\n null\n);\n\n/* -------------------------------------------------------------------------------------------------\n * Styled Components\n * -----------------------------------------------------------------------------------------------*/\n\nconst DrawerContainer = styled(Portal)<{ $hasSideNav: boolean; $isOpen: boolean }>`\n position: fixed;\n left: 0;\n right: 0;\n bottom: 0;\n z-index: ${({ $isOpen }) => ($isOpen ? 4 : 2)};\n display: flex;\n flex-direction: column;\n align-items: stretch;\n justify-content: flex-end;\n\n ${({ theme }) => theme.breakpoints.medium} {\n z-index: 2;\n left: ${({ $hasSideNav }) => ($hasSideNav ? WIDTH_SIDE_NAVIGATION : 0)};\n }\n`;\n\nconst DrawerOverlay = styled(Box)<{ $isOpen: boolean; $hasSideNav: boolean }>`\n position: fixed;\n left: 0;\n top: 0;\n right: 0;\n bottom: 0;\n background-color: rgba(0, 0, 0, 0.5);\n transition: opacity ${(props) => props.theme.motion.timings['200']}\n ${(props) => props.theme.motion.easings.easeInOutQuad};\n opacity: ${({ $isOpen }) => ($isOpen ? 1 : 0)};\n pointer-events: ${({ $isOpen }) => ($isOpen ? 'auto' : 'none')};\n\n ${({ theme }) => theme.breakpoints.medium} {\n left: ${({ $hasSideNav }) => ($hasSideNav ? WIDTH_SIDE_NAVIGATION : 0)};\n }\n`;\n\nconst ToggleButton = styled(IconButton)`\n padding: 0;\n border: none;\n background: ${({ theme }) => theme.colors.neutral200};\n width: 3.2rem;\n height: 3.2rem;\n border-radius: 1.6rem;\n display: flex;\n align-items: center;\n justify-content: center;\n`;\n\nconst DrawerContent = styled(Flex)`\n flex-direction: column;\n align-items: stretch;\n position: relative;\n z-index: 1;\n pointer-events: auto;\n`;\n\nconst DrawerContentInner = styled(ScrollArea)<{ $isOpen: boolean }>`\n max-height: ${({ $isOpen }) =>\n $isOpen\n ? 'calc(100vh - 25rem)' // 25rem is arbitrary, to be able to see a bit of the content behind (navigation and header)\n : '0'};\n overflow: hidden;\n transition: max-height ${(props) => props.theme.motion.timings['200']}\n ${(props) => props.theme.motion.easings.easeInOutQuad};\n z-index: 1;\n pointer-events: auto;\n`;\n\n/* -------------------------------------------------------------------------------------------------\n * Root\n * -----------------------------------------------------------------------------------------------*/\n\ninterface RootProps {\n children: React.ReactNode;\n hasContent?: boolean;\n hasSideNav?: boolean;\n}\n\nconst Root = ({ children, hasContent = false, hasSideNav = false }: RootProps) => {\n const [isOpen, setIsOpen] = React.useState(false);\n\n // Close drawer when there's no content\n React.useEffect(() => {\n if (!hasContent) {\n setIsOpen(false);\n }\n }, [hasContent]);\n\n return (\n <ActionsDrawerProvider\n isOpen={isOpen}\n setIsOpen={setIsOpen}\n hasContent={hasContent}\n hasSideNav={hasSideNav}\n >\n <DrawerContainer $hasSideNav={hasSideNav} $isOpen={isOpen}>\n {children}\n </DrawerContainer>\n </ActionsDrawerProvider>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * Overlay\n * -----------------------------------------------------------------------------------------------*/\n\nconst Overlay = () => {\n const ctx = useActionsDrawer('ActionsDrawer.Overlay', (s) => s, false);\n const isOpen = ctx?.isOpen ?? false;\n const hasContent = ctx?.hasContent ?? false;\n const hasSideNav = ctx?.hasSideNav ?? false;\n const setIsOpen = ctx?.setIsOpen;\n\n if (!hasContent) {\n return null;\n }\n\n return (\n <DrawerOverlay\n $isOpen={isOpen}\n $hasSideNav={hasSideNav}\n onClick={() => setIsOpen?.(false)}\n data-testid=\"actions-drawer-overlay\"\n />\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * Header\n * -----------------------------------------------------------------------------------------------*/\n\ninterface HeaderProps {\n children: React.ReactNode;\n}\n\nconst Header = ({ children }: HeaderProps) => {\n const ctx = useActionsDrawer('ActionsDrawer.Header', (s) => s, false);\n const isOpen = ctx?.isOpen ?? false;\n const hasContent = ctx?.hasContent ?? false;\n const setIsOpen = ctx?.setIsOpen;\n const { formatMessage } = useIntl();\n\n const toggleOpen = () => {\n setIsOpen?.((prev: boolean) => !prev);\n };\n\n return (\n <DrawerContent background=\"neutral0\">\n <Flex\n paddingTop={3}\n paddingBottom={3}\n paddingLeft={4}\n paddingRight={4}\n gap={3}\n borderStyle=\"solid\"\n borderWidth={isOpen ? '1px 0' : '1px 0 0 0'}\n borderColor=\"neutral150\"\n >\n <Flex flex={1} gap={2} alignItems=\"center\" overflow=\"hidden\">\n {children}\n </Flex>\n {hasContent && (\n <ToggleButton\n onClick={toggleOpen}\n label={\n isOpen\n ? formatMessage({\n id: 'content-manager.actions-drawer.close',\n defaultMessage: 'Close more actions',\n })\n : formatMessage({\n id: 'content-manager.actions-drawer.open',\n defaultMessage: 'Open more actions',\n })\n }\n >\n {isOpen ? <CaretUp fill=\"neutral600\" /> : <CaretDown fill=\"neutral600\" />}\n </ToggleButton>\n )}\n </Flex>\n </DrawerContent>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * Content\n * -----------------------------------------------------------------------------------------------*/\n\ninterface ContentProps {\n children: React.ReactNode;\n}\n\nconst Content = ({ children }: ContentProps) => {\n const ctx = useActionsDrawer('ActionsDrawer.Content', (s) => s, false);\n const isOpen = ctx?.isOpen ?? false;\n\n return (\n <DrawerContentInner $isOpen={isOpen}>\n <Flex\n direction=\"column\"\n alignItems=\"stretch\"\n justifyContent=\"flex-start\"\n padding={{ initial: 4, large: 0 }}\n background=\"neutral0\"\n >\n {children}\n </Flex>\n </DrawerContentInner>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * ActionsDrawer\n * -----------------------------------------------------------------------------------------------*/\n\nconst ActionsDrawer = {\n Root,\n Overlay,\n Header,\n Content,\n};\n\nexport { ActionsDrawer, useActionsDrawer };\n"],"names":["ActionsDrawerProvider","useActionsDrawer","createContext","DrawerContainer","styled","Portal","$isOpen","theme","breakpoints","medium","$hasSideNav","WIDTH_SIDE_NAVIGATION","DrawerOverlay","Box","props","motion","timings","easings","easeInOutQuad","ToggleButton","IconButton","colors","neutral200","DrawerContent","Flex","DrawerContentInner","ScrollArea","Root","children","hasContent","hasSideNav","isOpen","setIsOpen","React","useState","useEffect","_jsx","Overlay","ctx","s","onClick","data-testid","Header","formatMessage","useIntl","toggleOpen","prev","background","_jsxs","paddingTop","paddingBottom","paddingLeft","paddingRight","gap","borderStyle","borderWidth","borderColor","flex","alignItems","overflow","label","id","defaultMessage","CaretUp","fill","CaretDown","Content","direction","justifyContent","padding","initial","large","ActionsDrawer"],"mappings":"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"}
1
+ {"version":3,"file":"ActionsDrawer.mjs","sources":["../../../admin/src/components/ActionsDrawer.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { WIDTH_SIDE_NAVIGATION, createContext } from '@strapi/admin/strapi-admin';\nimport { Portal, Flex, Box, ScrollArea, IconButton, useMeasure } from '@strapi/design-system';\nimport { CaretDown, CaretUp } from '@strapi/icons';\nimport { useIntl } from 'react-intl';\nimport { styled } from 'styled-components';\n\n/**\n * ActionsDrawer is a component used in the content manager edit view page and content history page.\n * It's a sticky banner that can expand to reveal more actions. It's used only in mobile and tablet.\n *\n * A similar component is currently in development in the design-system but it's not ready yet.\n * Using the Panels for the edit view page brought some complexity and for the moment, we decided to go with this custom implementation.\n *\n * @TODO: Replace this component with the one in the design-system when it's ready.\n */\n\n/* -------------------------------------------------------------------------------------------------\n * ActionsDrawer Context\n * -----------------------------------------------------------------------------------------------*/\n\ninterface ActionsDrawerContextValue {\n isOpen: boolean;\n setIsOpen: React.Dispatch<React.SetStateAction<boolean>>;\n hasContent: boolean;\n hasSideNav: boolean;\n headerRef: (element: HTMLDivElement) => void;\n}\n\nconst [ActionsDrawerProvider, useActionsDrawer] = createContext<ActionsDrawerContextValue | null>(\n 'ActionsDrawer',\n null\n);\n\n/* -------------------------------------------------------------------------------------------------\n * Styled Components\n * -----------------------------------------------------------------------------------------------*/\n\nconst DrawerContainer = styled(Portal)<{ $hasSideNav: boolean; $isOpen: boolean }>`\n position: fixed;\n left: 0;\n right: 0;\n bottom: 0;\n z-index: ${({ $isOpen }) => ($isOpen ? 4 : 2)};\n display: flex;\n flex-direction: column;\n align-items: stretch;\n justify-content: flex-end;\n\n ${({ theme }) => theme.breakpoints.medium} {\n z-index: 2;\n left: ${({ $hasSideNav }) => ($hasSideNav ? WIDTH_SIDE_NAVIGATION : 0)};\n }\n`;\n\nconst DrawerOverlay = styled(Box)<{ $isOpen: boolean; $hasSideNav: boolean }>`\n position: fixed;\n left: 0;\n top: 0;\n right: 0;\n bottom: 0;\n background-color: rgba(0, 0, 0, 0.5);\n transition: opacity ${(props) => props.theme.motion.timings['200']}\n ${(props) => props.theme.motion.easings.easeInOutQuad};\n opacity: ${({ $isOpen }) => ($isOpen ? 1 : 0)};\n pointer-events: ${({ $isOpen }) => ($isOpen ? 'auto' : 'none')};\n\n ${({ theme }) => theme.breakpoints.medium} {\n left: ${({ $hasSideNav }) => ($hasSideNav ? WIDTH_SIDE_NAVIGATION : 0)};\n }\n`;\n\nconst ToggleButton = styled(IconButton)`\n padding: 0;\n border: none;\n background: ${({ theme }) => theme.colors.neutral200};\n width: 3.2rem;\n height: 3.2rem;\n border-radius: 1.6rem;\n display: flex;\n align-items: center;\n justify-content: center;\n`;\n\nconst DrawerContent = styled(Flex)`\n flex-direction: column;\n align-items: stretch;\n position: relative;\n z-index: 1;\n pointer-events: auto;\n`;\n\nconst DrawerContentInner = styled(ScrollArea)<{ $isOpen: boolean }>`\n max-height: ${({ $isOpen }) =>\n $isOpen\n ? 'calc(100vh - 25rem)' // 25rem is arbitrary, to be able to see a bit of the content behind (navigation and header)\n : '0'};\n overflow: hidden;\n transition: max-height ${(props) => props.theme.motion.timings['200']}\n ${(props) => props.theme.motion.easings.easeInOutQuad};\n z-index: 1;\n pointer-events: auto;\n`;\n\n/* -------------------------------------------------------------------------------------------------\n * Root\n * -----------------------------------------------------------------------------------------------*/\n\ninterface RootProps {\n children: React.ReactNode;\n hasContent?: boolean;\n hasSideNav?: boolean;\n}\n\nconst Root = ({ children, hasContent = false, hasSideNav = false }: RootProps) => {\n const [isOpen, setIsOpen] = React.useState(false);\n const [headerRef, { height: headerHeight }] = useMeasure<HTMLDivElement>();\n\n // Close drawer when there's no content\n React.useEffect(() => {\n if (!hasContent) {\n setIsOpen(false);\n }\n }, [hasContent]);\n\n return (\n <ActionsDrawerProvider\n isOpen={isOpen}\n setIsOpen={setIsOpen}\n hasContent={hasContent}\n hasSideNav={hasSideNav}\n headerRef={headerRef}\n >\n <Box height={`${headerHeight}px`} shrink={0} data-testid=\"actions-drawer-spacer\" />\n <DrawerContainer $hasSideNav={hasSideNav} $isOpen={isOpen}>\n {children}\n </DrawerContainer>\n </ActionsDrawerProvider>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * Overlay\n * -----------------------------------------------------------------------------------------------*/\n\nconst Overlay = () => {\n const ctx = useActionsDrawer('ActionsDrawer.Overlay', (s) => s, false);\n const isOpen = ctx?.isOpen ?? false;\n const hasContent = ctx?.hasContent ?? false;\n const hasSideNav = ctx?.hasSideNav ?? false;\n const setIsOpen = ctx?.setIsOpen;\n\n if (!hasContent) {\n return null;\n }\n\n return (\n <DrawerOverlay\n $isOpen={isOpen}\n $hasSideNav={hasSideNav}\n onClick={() => setIsOpen?.(false)}\n data-testid=\"actions-drawer-overlay\"\n />\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * Header\n * -----------------------------------------------------------------------------------------------*/\n\ninterface HeaderProps {\n children: React.ReactNode;\n}\n\nconst Header = ({ children }: HeaderProps) => {\n const ctx = useActionsDrawer('ActionsDrawer.Header', (s) => s, false);\n const isOpen = ctx?.isOpen ?? false;\n const hasContent = ctx?.hasContent ?? false;\n const setIsOpen = ctx?.setIsOpen;\n const headerRef = ctx?.headerRef;\n const { formatMessage } = useIntl();\n\n const toggleOpen = () => {\n setIsOpen?.((prev: boolean) => !prev);\n };\n\n return (\n <DrawerContent ref={headerRef} background=\"neutral0\">\n <Flex\n paddingTop={3}\n paddingBottom={3}\n paddingLeft={4}\n paddingRight={4}\n gap={3}\n borderStyle=\"solid\"\n borderWidth={isOpen ? '1px 0' : '1px 0 0 0'}\n borderColor=\"neutral150\"\n >\n <Flex flex={1} gap={2} alignItems=\"center\" overflow=\"hidden\">\n {children}\n </Flex>\n {hasContent && (\n <ToggleButton\n onClick={toggleOpen}\n label={\n isOpen\n ? formatMessage({\n id: 'content-manager.actions-drawer.close',\n defaultMessage: 'Close more actions',\n })\n : formatMessage({\n id: 'content-manager.actions-drawer.open',\n defaultMessage: 'Open more actions',\n })\n }\n >\n {isOpen ? <CaretUp fill=\"neutral600\" /> : <CaretDown fill=\"neutral600\" />}\n </ToggleButton>\n )}\n </Flex>\n </DrawerContent>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * Content\n * -----------------------------------------------------------------------------------------------*/\n\ninterface ContentProps {\n children: React.ReactNode;\n}\n\nconst Content = ({ children }: ContentProps) => {\n const ctx = useActionsDrawer('ActionsDrawer.Content', (s) => s, false);\n const isOpen = ctx?.isOpen ?? false;\n\n return (\n <DrawerContentInner $isOpen={isOpen}>\n <Flex\n direction=\"column\"\n alignItems=\"stretch\"\n justifyContent=\"flex-start\"\n padding={{ initial: 4, large: 0 }}\n background=\"neutral0\"\n >\n {children}\n </Flex>\n </DrawerContentInner>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * ActionsDrawer\n * -----------------------------------------------------------------------------------------------*/\n\nconst ActionsDrawer = {\n Root,\n Overlay,\n Header,\n Content,\n};\n\nexport { ActionsDrawer, useActionsDrawer };\n"],"names":["ActionsDrawerProvider","useActionsDrawer","createContext","DrawerContainer","styled","Portal","$isOpen","theme","breakpoints","medium","$hasSideNav","WIDTH_SIDE_NAVIGATION","DrawerOverlay","Box","props","motion","timings","easings","easeInOutQuad","ToggleButton","IconButton","colors","neutral200","DrawerContent","Flex","DrawerContentInner","ScrollArea","Root","children","hasContent","hasSideNav","isOpen","setIsOpen","React","useState","headerRef","height","headerHeight","useMeasure","useEffect","_jsxs","_jsx","shrink","data-testid","Overlay","ctx","s","onClick","Header","formatMessage","useIntl","toggleOpen","prev","ref","background","paddingTop","paddingBottom","paddingLeft","paddingRight","gap","borderStyle","borderWidth","borderColor","flex","alignItems","overflow","label","id","defaultMessage","CaretUp","fill","CaretDown","Content","direction","justifyContent","padding","initial","large","ActionsDrawer"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ComponentIcon.js","sources":["../../../admin/src/components/ComponentIcon.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { Flex, FlexProps } from '@strapi/design-system';\nimport * as Icons from '@strapi/icons';\nimport * as Symbols from '@strapi/icons/symbols';\n\nimport type { Struct } from '@strapi/types';\n\ninterface ComponentIconProps extends FlexProps {\n showBackground?: boolean;\n icon?: Struct.ContentTypeSchemaInfo['icon'];\n}\n\nconst ComponentIcon = ({\n showBackground = true,\n icon = 'dashboard',\n ...props\n}: ComponentIconProps) => {\n const Icon = COMPONENT_ICONS[icon as keyof typeof COMPONENT_ICONS] || COMPONENT_ICONS.dashboard;\n\n return (\n <Flex\n alignItems=\"center\"\n background={showBackground ? 'neutral200' : undefined}\n justifyContent=\"center\"\n height={8}\n width={8}\n color=\"neutral600\"\n borderRadius={showBackground ? '50%' : 0}\n {...props}\n >\n <Icon height=\"2rem\" width=\"2rem\" />\n </Flex>\n );\n};\n\nconst COMPONENT_ICONS: Record<string, React.ComponentType<any>> = {\n alien: Icons.Alien,\n apps: Icons.GridNine,\n archive: Icons.Archive,\n arrowDown: Icons.ArrowDown,\n arrowLeft: Icons.ArrowLeft,\n arrowRight: Icons.ArrowRight,\n arrowUp: Icons.ArrowUp,\n attachment: Icons.Paperclip,\n bell: Icons.Bell,\n bold: Icons.Bold,\n book: Icons.Book,\n briefcase: Icons.Briefcase,\n brush: Icons.PaintBrush,\n bulletList: Icons.BulletList,\n calendar: Icons.Calendar,\n car: Icons.Car,\n cast: Icons.Cast,\n chartBubble: Icons.ChartBubble,\n chartCircle: Icons.ChartCircle,\n chartPie: Icons.ChartPie,\n check: Icons.Check,\n clock: Icons.Clock,\n cloud: Icons.Cloud,\n code: Icons.Code,\n cog: Icons.Cog,\n collapse: Icons.Collapse,\n command: Icons.Command,\n connector: Icons.Faders,\n crop: Icons.Crop,\n crown: Icons.Crown,\n cup: Icons.Coffee,\n cursor: Icons.Cursor,\n dashboard: Icons.SquaresFour,\n database: Icons.Database,\n discuss: Icons.Discuss,\n doctor: Icons.Stethoscope,\n earth: Icons.Earth,\n emotionHappy: Icons.EmotionHappy,\n emotionUnhappy: Icons.EmotionUnhappy,\n envelop: Icons.Mail,\n exit: Icons.SignOut,\n expand: Icons.Expand,\n eye: Icons.Eye,\n feather: Icons.Feather,\n file: Icons.File,\n fileError: Icons.FileError,\n filePdf: Icons.FilePdf,\n fileXls: Icons.FileXls,\n fileZip: Icons.FileZip,\n fileCsv: Icons.FileCsv,\n filter: Icons.Filter,\n folder: Icons.Folder,\n gate: Icons.CastleTurret,\n gift: Icons.Gift,\n globe: Icons.Globe,\n grid: Icons.GridFour,\n handHeart: Icons.HandHeart,\n hashtag: Icons.Hashtag,\n headphone: Icons.Headphones,\n heart: Icons.Heart,\n house: Icons.House,\n information: Icons.Information,\n italic: Icons.Italic,\n key: Icons.Key,\n landscape: Icons.Images,\n layer: Icons.ListPlus,\n layout: Icons.Layout,\n lightbulb: Icons.Lightbulb,\n link: Icons.Link,\n lock: Icons.Lock,\n magic: Icons.Magic,\n manyToMany: Icons.ManyToMany,\n manyToOne: Icons.ManyToOne,\n manyWays: Icons.ManyWays,\n medium: Symbols.Medium,\n message: Icons.Message,\n microphone: Icons.Microphone,\n monitor: Icons.Monitor,\n moon: Icons.Moon,\n music: Icons.MusicNotes,\n oneToMany: Icons.OneToMany,\n oneToOne: Icons.OneToOne,\n oneWay: Icons.OneWay,\n paint: Icons.PaintBrush,\n paintBrush: Icons.PaintBrush,\n paperPlane: Icons.PaperPlane,\n pencil: Icons.Pencil,\n phone: Icons.Phone,\n picture: Icons.Image,\n pin: Icons.Pin,\n pinMap: Icons.PinMap,\n plane: Icons.Plane,\n play: Icons.Play,\n plus: Icons.Plus,\n priceTag: Icons.PriceTag,\n puzzle: Icons.PuzzlePiece,\n question: Icons.Question,\n quote: Icons.Quotes,\n refresh: Icons.ArrowClockwise,\n restaurant: Icons.Restaurant,\n rocket: Icons.Rocket,\n rotate: Icons.ArrowsCounterClockwise,\n scissors: Icons.Scissors,\n search: Icons.Search,\n seed: Icons.Plant,\n server: Icons.Server,\n shield: Icons.Shield,\n shirt: Icons.Shirt,\n shoppingCart: Icons.ShoppingCart,\n slideshow: Icons.PresentationChart,\n stack: Icons.Stack,\n star: Icons.Star,\n store: Icons.Store,\n strikeThrough: Icons.StrikeThrough,\n sun: Icons.Sun,\n television: Icons.Television,\n thumbDown: Icons.ThumbDown,\n thumbUp: Icons.ThumbUp,\n train: Icons.Train,\n twitter: Symbols.X,\n typhoon: Icons.Typhoon,\n underline: Icons.Underline,\n user: Icons.User,\n volumeMute: Icons.VolumeMute,\n volumeUp: Icons.VolumeUp,\n walk: Icons.Walk,\n wheelchair: Icons.Wheelchair,\n write: Icons.Feather,\n};\n\nexport { ComponentIcon, COMPONENT_ICONS };\nexport type { ComponentIconProps };\n"],"names":["ComponentIcon","showBackground","icon","props","Icon","COMPONENT_ICONS","dashboard","_jsx","Flex","alignItems","background","undefined","justifyContent","height","width","color","borderRadius","alien","Icons","Alien","apps","GridNine","archive","Archive","arrowDown","ArrowDown","arrowLeft","ArrowLeft","arrowRight","ArrowRight","arrowUp","ArrowUp","attachment","Paperclip","bell","Bell","bold","Bold","book","Book","briefcase","Briefcase","brush","PaintBrush","bulletList","BulletList","calendar","Calendar","car","Car","cast","Cast","chartBubble","ChartBubble","chartCircle","ChartCircle","chartPie","ChartPie","check","Check","clock","Clock","cloud","Cloud","code","Code","cog","Cog","collapse","Collapse","command","Command","connector","Faders","crop","Crop","crown","Crown","cup","Coffee","cursor","Cursor","SquaresFour","database","Database","discuss","Discuss","doctor","Stethoscope","earth","Earth","emotionHappy","EmotionHappy","emotionUnhappy","EmotionUnhappy","envelop","Mail","exit","SignOut","expand","Expand","eye","Eye","feather","Feather","file","File","fileError","FileError","filePdf","FilePdf","fileXls","FileXls","fileZip","FileZip","fileCsv","FileCsv","filter","Filter","folder","Folder","gate","CastleTurret","gift","Gift","globe","Globe","grid","GridFour","handHeart","HandHeart","hashtag","Hashtag","headphone","Headphones","heart","Heart","house","House","information","Information","italic","Italic","key","Key","landscape","Images","layer","ListPlus","layout","Layout","lightbulb","Lightbulb","link","Link","lock","Lock","magic","Magic","manyToMany","ManyToMany","manyToOne","ManyToOne","manyWays","ManyWays","medium","Symbols","Medium","message","Message","microphone","Microphone","monitor","Monitor","moon","Moon","music","MusicNotes","oneToMany","OneToMany","oneToOne","OneToOne","oneWay","OneWay","paint","paintBrush","paperPlane","PaperPlane","pencil","Pencil","phone","Phone","picture","Image","pin","Pin","pinMap","PinMap","plane","Plane","play","Play","plus","Plus","priceTag","PriceTag","puzzle","PuzzlePiece","question","Question","quote","Quotes","refresh","ArrowClockwise","restaurant","Restaurant","rocket","Rocket","rotate","ArrowsCounterClockwise","scissors","Scissors","search","Search","seed","Plant","server","Server","shield","Shield","shirt","Shirt","shoppingCart","ShoppingCart","slideshow","PresentationChart","stack","Stack","star","Star","store","Store","strikeThrough","StrikeThrough","sun","Sun","television","Television","thumbDown","ThumbDown","thumbUp","ThumbUp","train","Train","twitter","X","typhoon","Typhoon","underline","Underline","user","User","volumeMute","VolumeMute","volumeUp","VolumeUp","walk","Walk","wheelchair","Wheelchair","write"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAaA,MAAMA,aAAAA,GAAgB,CAAC,EACrBC,cAAAA,GAAiB,IAAI,EACrBC,IAAAA,GAAO,WAAW,EAClB,GAAGC,KAAAA,EACgB,GAAA;AACnB,IAAA,MAAMC,OAAOC,eAAe,CAACH,IAAAA,CAAqC,IAAIG,gBAAgBC,SAAS;AAE/F,IAAA,qBACEC,cAAA,CAACC,iBAAAA,EAAAA;QACCC,UAAAA,EAAW,QAAA;AACXC,QAAAA,UAAAA,EAAYT,iBAAiB,YAAA,GAAeU,SAAAA;QAC5CC,cAAAA,EAAe,QAAA;QACfC,MAAAA,EAAQ,CAAA;QACRC,KAAAA,EAAO,CAAA;QACPC,KAAAA,EAAM,YAAA;AACNC,QAAAA,YAAAA,EAAcf,iBAAiB,KAAA,GAAQ,CAAA;AACtC,QAAA,GAAGE,KAAK;AAET,QAAA,QAAA,gBAAAI,cAAA,CAACH,IAAAA,EAAAA;YAAKS,MAAAA,EAAO,MAAA;YAAOC,KAAAA,EAAM;;;AAGhC;AAEA,MAAMT,eAAAA,GAA4D;AAChEY,IAAAA,KAAAA,EAAOC,iBAAMC,KAAK;AAClBC,IAAAA,IAAAA,EAAMF,iBAAMG,QAAQ;AACpBC,IAAAA,OAAAA,EAASJ,iBAAMK,OAAO;AACtBC,IAAAA,SAAAA,EAAWN,iBAAMO,SAAS;AAC1BC,IAAAA,SAAAA,EAAWR,iBAAMS,SAAS;AAC1BC,IAAAA,UAAAA,EAAYV,iBAAMW,UAAU;AAC5BC,IAAAA,OAAAA,EAASZ,iBAAMa,OAAO;AACtBC,IAAAA,UAAAA,EAAYd,iBAAMe,SAAS;AAC3BC,IAAAA,IAAAA,EAAMhB,iBAAMiB,IAAI;AAChBC,IAAAA,IAAAA,EAAMlB,iBAAMmB,IAAI;AAChBC,IAAAA,IAAAA,EAAMpB,iBAAMqB,IAAI;AAChBC,IAAAA,SAAAA,EAAWtB,iBAAMuB,SAAS;AAC1BC,IAAAA,KAAAA,EAAOxB,iBAAMyB,UAAU;AACvBC,IAAAA,UAAAA,EAAY1B,iBAAM2B,UAAU;AAC5BC,IAAAA,QAAAA,EAAU5B,iBAAM6B,QAAQ;AACxBC,IAAAA,GAAAA,EAAK9B,iBAAM+B,GAAG;AACdC,IAAAA,IAAAA,EAAMhC,iBAAMiC,IAAI;AAChBC,IAAAA,WAAAA,EAAalC,iBAAMmC,WAAW;AAC9BC,IAAAA,WAAAA,EAAapC,iBAAMqC,WAAW;AAC9BC,IAAAA,QAAAA,EAAUtC,iBAAMuC,QAAQ;AACxBC,IAAAA,KAAAA,EAAOxC,iBAAMyC,KAAK;AAClBC,IAAAA,KAAAA,EAAO1C,iBAAM2C,KAAK;AAClBC,IAAAA,KAAAA,EAAO5C,iBAAM6C,KAAK;AAClBC,IAAAA,IAAAA,EAAM9C,iBAAM+C,IAAI;AAChBC,IAAAA,GAAAA,EAAKhD,iBAAMiD,GAAG;AACdC,IAAAA,QAAAA,EAAUlD,iBAAMmD,QAAQ;AACxBC,IAAAA,OAAAA,EAASpD,iBAAMqD,OAAO;AACtBC,IAAAA,SAAAA,EAAWtD,iBAAMuD,MAAM;AACvBC,IAAAA,IAAAA,EAAMxD,iBAAMyD,IAAI;AAChBC,IAAAA,KAAAA,EAAO1D,iBAAM2D,KAAK;AAClBC,IAAAA,GAAAA,EAAK5D,iBAAM6D,MAAM;AACjBC,IAAAA,MAAAA,EAAQ9D,iBAAM+D,MAAM;AACpB3E,IAAAA,SAAAA,EAAWY,iBAAMgE,WAAW;AAC5BC,IAAAA,QAAAA,EAAUjE,iBAAMkE,QAAQ;AACxBC,IAAAA,OAAAA,EAASnE,iBAAMoE,OAAO;AACtBC,IAAAA,MAAAA,EAAQrE,iBAAMsE,WAAW;AACzBC,IAAAA,KAAAA,EAAOvE,iBAAMwE,KAAK;AAClBC,IAAAA,YAAAA,EAAczE,iBAAM0E,YAAY;AAChCC,IAAAA,cAAAA,EAAgB3E,iBAAM4E,cAAc;AACpCC,IAAAA,OAAAA,EAAS7E,iBAAM8E,IAAI;AACnBC,IAAAA,IAAAA,EAAM/E,iBAAMgF,OAAO;AACnBC,IAAAA,MAAAA,EAAQjF,iBAAMkF,MAAM;AACpBC,IAAAA,GAAAA,EAAKnF,iBAAMoF,GAAG;AACdC,IAAAA,OAAAA,EAASrF,iBAAMsF,OAAO;AACtBC,IAAAA,IAAAA,EAAMvF,iBAAMwF,IAAI;AAChBC,IAAAA,SAAAA,EAAWzF,iBAAM0F,SAAS;AAC1BC,IAAAA,OAAAA,EAAS3F,iBAAM4F,OAAO;AACtBC,IAAAA,OAAAA,EAAS7F,iBAAM8F,OAAO;AACtBC,IAAAA,OAAAA,EAAS/F,iBAAMgG,OAAO;AACtBC,IAAAA,OAAAA,EAASjG,iBAAMkG,OAAO;AACtBC,IAAAA,MAAAA,EAAQnG,iBAAMoG,MAAM;AACpBC,IAAAA,MAAAA,EAAQrG,iBAAMsG,MAAM;AACpBC,IAAAA,IAAAA,EAAMvG,iBAAMwG,YAAY;AACxBC,IAAAA,IAAAA,EAAMzG,iBAAM0G,IAAI;AAChBC,IAAAA,KAAAA,EAAO3G,iBAAM4G,KAAK;AAClBC,IAAAA,IAAAA,EAAM7G,iBAAM8G,QAAQ;AACpBC,IAAAA,SAAAA,EAAW/G,iBAAMgH,SAAS;AAC1BC,IAAAA,OAAAA,EAASjH,iBAAMkH,OAAO;AACtBC,IAAAA,SAAAA,EAAWnH,iBAAMoH,UAAU;AAC3BC,IAAAA,KAAAA,EAAOrH,iBAAMsH,KAAK;AAClBC,IAAAA,KAAAA,EAAOvH,iBAAMwH,KAAK;AAClBC,IAAAA,WAAAA,EAAazH,iBAAM0H,WAAW;AAC9BC,IAAAA,MAAAA,EAAQ3H,iBAAM4H,MAAM;AACpBC,IAAAA,GAAAA,EAAK7H,iBAAM8H,GAAG;AACdC,IAAAA,SAAAA,EAAW/H,iBAAMgI,MAAM;AACvBC,IAAAA,KAAAA,EAAOjI,iBAAMkI,QAAQ;AACrBC,IAAAA,MAAAA,EAAQnI,iBAAMoI,MAAM;AACpBC,IAAAA,SAAAA,EAAWrI,iBAAMsI,SAAS;AAC1BC,IAAAA,IAAAA,EAAMvI,iBAAMwI,IAAI;AAChBC,IAAAA,IAAAA,EAAMzI,iBAAM0I,IAAI;AAChBC,IAAAA,KAAAA,EAAO3I,iBAAM4I,KAAK;AAClBC,IAAAA,UAAAA,EAAY7I,iBAAM8I,UAAU;AAC5BC,IAAAA,SAAAA,EAAW/I,iBAAMgJ,SAAS;AAC1BC,IAAAA,QAAAA,EAAUjJ,iBAAMkJ,QAAQ;AACxBC,IAAAA,MAAAA,EAAQC,mBAAQC,MAAM;AACtBC,IAAAA,OAAAA,EAAStJ,iBAAMuJ,OAAO;AACtBC,IAAAA,UAAAA,EAAYxJ,iBAAMyJ,UAAU;AAC5BC,IAAAA,OAAAA,EAAS1J,iBAAM2J,OAAO;AACtBC,IAAAA,IAAAA,EAAM5J,iBAAM6J,IAAI;AAChBC,IAAAA,KAAAA,EAAO9J,iBAAM+J,UAAU;AACvBC,IAAAA,SAAAA,EAAWhK,iBAAMiK,SAAS;AAC1BC,IAAAA,QAAAA,EAAUlK,iBAAMmK,QAAQ;AACxBC,IAAAA,MAAAA,EAAQpK,iBAAMqK,MAAM;AACpBC,IAAAA,KAAAA,EAAOtK,iBAAMyB,UAAU;AACvB8I,IAAAA,UAAAA,EAAYvK,iBAAMyB,UAAU;AAC5B+I,IAAAA,UAAAA,EAAYxK,iBAAMyK,UAAU;AAC5BC,IAAAA,MAAAA,EAAQ1K,iBAAM2K,MAAM;AACpBC,IAAAA,KAAAA,EAAO5K,iBAAM6K,KAAK;AAClBC,IAAAA,OAAAA,EAAS9K,iBAAM+K,KAAK;AACpBC,IAAAA,GAAAA,EAAKhL,iBAAMiL,GAAG;AACdC,IAAAA,MAAAA,EAAQlL,iBAAMmL,MAAM;AACpBC,IAAAA,KAAAA,EAAOpL,iBAAMqL,KAAK;AAClBC,IAAAA,IAAAA,EAAMtL,iBAAMuL,IAAI;AAChBC,IAAAA,IAAAA,EAAMxL,iBAAMyL,IAAI;AAChBC,IAAAA,QAAAA,EAAU1L,iBAAM2L,QAAQ;AACxBC,IAAAA,MAAAA,EAAQ5L,iBAAM6L,WAAW;AACzBC,IAAAA,QAAAA,EAAU9L,iBAAM+L,QAAQ;AACxBC,IAAAA,KAAAA,EAAOhM,iBAAMiM,MAAM;AACnBC,IAAAA,OAAAA,EAASlM,iBAAMmM,cAAc;AAC7BC,IAAAA,UAAAA,EAAYpM,iBAAMqM,UAAU;AAC5BC,IAAAA,MAAAA,EAAQtM,iBAAMuM,MAAM;AACpBC,IAAAA,MAAAA,EAAQxM,iBAAMyM,sBAAsB;AACpCC,IAAAA,QAAAA,EAAU1M,iBAAM2M,QAAQ;AACxBC,IAAAA,MAAAA,EAAQ5M,iBAAM6M,MAAM;AACpBC,IAAAA,IAAAA,EAAM9M,iBAAM+M,KAAK;AACjBC,IAAAA,MAAAA,EAAQhN,iBAAMiN,MAAM;AACpBC,IAAAA,MAAAA,EAAQlN,iBAAMmN,MAAM;AACpBC,IAAAA,KAAAA,EAAOpN,iBAAMqN,KAAK;AAClBC,IAAAA,YAAAA,EAActN,iBAAMuN,YAAY;AAChCC,IAAAA,SAAAA,EAAWxN,iBAAMyN,iBAAiB;AAClCC,IAAAA,KAAAA,EAAO1N,iBAAM2N,KAAK;AAClBC,IAAAA,IAAAA,EAAM5N,iBAAM6N,IAAI;AAChBC,IAAAA,KAAAA,EAAO9N,iBAAM+N,KAAK;AAClBC,IAAAA,aAAAA,EAAehO,iBAAMiO,aAAa;AAClCC,IAAAA,GAAAA,EAAKlO,iBAAMmO,GAAG;AACdC,IAAAA,UAAAA,EAAYpO,iBAAMqO,UAAU;AAC5BC,IAAAA,SAAAA,EAAWtO,iBAAMuO,SAAS;AAC1BC,IAAAA,OAAAA,EAASxO,iBAAMyO,OAAO;AACtBC,IAAAA,KAAAA,EAAO1O,iBAAM2O,KAAK;AAClBC,IAAAA,OAAAA,EAASxF,mBAAQyF,CAAC;AAClBC,IAAAA,OAAAA,EAAS9O,iBAAM+O,OAAO;AACtBC,IAAAA,SAAAA,EAAWhP,iBAAMiP,SAAS;AAC1BC,IAAAA,IAAAA,EAAMlP,iBAAMmP,IAAI;AAChBC,IAAAA,UAAAA,EAAYpP,iBAAMqP,UAAU;AAC5BC,IAAAA,QAAAA,EAAUtP,iBAAMuP,QAAQ;AACxBC,IAAAA,IAAAA,EAAMxP,iBAAMyP,IAAI;AAChBC,IAAAA,UAAAA,EAAY1P,iBAAM2P,UAAU;AAC5BC,IAAAA,KAAAA,EAAO5P,iBAAMsF;AACf;;;;;"}
1
+ {"version":3,"file":"ComponentIcon.js","sources":["../../../admin/src/components/ComponentIcon.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { Flex, FlexProps } from '@strapi/design-system';\nimport * as Icons from '@strapi/icons';\nimport * as Symbols from '@strapi/icons/symbols';\n\nimport type { Struct } from '@strapi/types';\n\ntype ComponentIconProps = FlexProps & {\n showBackground?: boolean;\n icon?: Struct.ContentTypeSchemaInfo['icon'];\n};\n\ntype IconComponent = React.ComponentType<Pick<React.SVGProps<SVGSVGElement>, 'height' | 'width'>>;\n\nconst ComponentIcon = ({\n showBackground = true,\n icon = 'dashboard',\n ...props\n}: ComponentIconProps) => {\n const Icon = COMPONENT_ICONS[icon as keyof typeof COMPONENT_ICONS] || COMPONENT_ICONS.dashboard;\n\n return (\n <Flex\n alignItems=\"center\"\n background={showBackground ? 'neutral200' : undefined}\n justifyContent=\"center\"\n height={8}\n width={8}\n color=\"neutral600\"\n borderRadius={showBackground ? '50%' : 0}\n {...props}\n >\n <Icon height=\"2rem\" width=\"2rem\" />\n </Flex>\n );\n};\n\nconst COMPONENT_ICONS: Record<string, IconComponent> = {\n alien: Icons.Alien,\n apps: Icons.GridNine,\n archive: Icons.Archive,\n arrowDown: Icons.ArrowDown,\n arrowLeft: Icons.ArrowLeft,\n arrowRight: Icons.ArrowRight,\n arrowUp: Icons.ArrowUp,\n attachment: Icons.Paperclip,\n bell: Icons.Bell,\n bold: Icons.Bold,\n book: Icons.Book,\n briefcase: Icons.Briefcase,\n brush: Icons.PaintBrush,\n bulletList: Icons.BulletList,\n calendar: Icons.Calendar,\n car: Icons.Car,\n cast: Icons.Cast,\n chartBubble: Icons.ChartBubble,\n chartCircle: Icons.ChartCircle,\n chartPie: Icons.ChartPie,\n check: Icons.Check,\n clock: Icons.Clock,\n cloud: Icons.Cloud,\n code: Icons.Code,\n cog: Icons.Cog,\n collapse: Icons.Collapse,\n command: Icons.Command,\n connector: Icons.Faders,\n crop: Icons.Crop,\n crown: Icons.Crown,\n cup: Icons.Coffee,\n cursor: Icons.Cursor,\n dashboard: Icons.SquaresFour,\n database: Icons.Database,\n discuss: Icons.Discuss,\n doctor: Icons.Stethoscope,\n earth: Icons.Earth,\n emotionHappy: Icons.EmotionHappy,\n emotionUnhappy: Icons.EmotionUnhappy,\n envelop: Icons.Mail,\n exit: Icons.SignOut,\n expand: Icons.Expand,\n eye: Icons.Eye,\n feather: Icons.Feather,\n file: Icons.File,\n fileError: Icons.FileError,\n filePdf: Icons.FilePdf,\n fileXls: Icons.FileXls,\n fileZip: Icons.FileZip,\n fileCsv: Icons.FileCsv,\n filter: Icons.Filter,\n folder: Icons.Folder,\n gate: Icons.CastleTurret,\n gift: Icons.Gift,\n globe: Icons.Globe,\n grid: Icons.GridFour,\n handHeart: Icons.HandHeart,\n hashtag: Icons.Hashtag,\n headphone: Icons.Headphones,\n heart: Icons.Heart,\n house: Icons.House,\n information: Icons.Information,\n italic: Icons.Italic,\n key: Icons.Key,\n landscape: Icons.Images,\n layer: Icons.ListPlus,\n layout: Icons.Layout,\n lightbulb: Icons.Lightbulb,\n link: Icons.Link,\n lock: Icons.Lock,\n magic: Icons.Magic,\n manyToMany: Icons.ManyToMany,\n manyToOne: Icons.ManyToOne,\n manyWays: Icons.ManyWays,\n medium: Symbols.Medium,\n message: Icons.Message,\n microphone: Icons.Microphone,\n monitor: Icons.Monitor,\n moon: Icons.Moon,\n music: Icons.MusicNotes,\n oneToMany: Icons.OneToMany,\n oneToOne: Icons.OneToOne,\n oneWay: Icons.OneWay,\n paint: Icons.PaintBrush,\n paintBrush: Icons.PaintBrush,\n paperPlane: Icons.PaperPlane,\n pencil: Icons.Pencil,\n phone: Icons.Phone,\n picture: Icons.Image,\n pin: Icons.Pin,\n pinMap: Icons.PinMap,\n plane: Icons.Plane,\n play: Icons.Play,\n plus: Icons.Plus,\n priceTag: Icons.PriceTag,\n puzzle: Icons.PuzzlePiece,\n question: Icons.Question,\n quote: Icons.Quotes,\n refresh: Icons.ArrowClockwise,\n restaurant: Icons.Restaurant,\n rocket: Icons.Rocket,\n rotate: Icons.ArrowsCounterClockwise,\n scissors: Icons.Scissors,\n search: Icons.Search,\n seed: Icons.Plant,\n server: Icons.Server,\n shield: Icons.Shield,\n shirt: Icons.Shirt,\n shoppingCart: Icons.ShoppingCart,\n slideshow: Icons.PresentationChart,\n stack: Icons.Stack,\n star: Icons.Star,\n store: Icons.Store,\n strikeThrough: Icons.StrikeThrough,\n sun: Icons.Sun,\n television: Icons.Television,\n thumbDown: Icons.ThumbDown,\n thumbUp: Icons.ThumbUp,\n train: Icons.Train,\n twitter: Symbols.X,\n typhoon: Icons.Typhoon,\n underline: Icons.Underline,\n user: Icons.User,\n volumeMute: Icons.VolumeMute,\n volumeUp: Icons.VolumeUp,\n walk: Icons.Walk,\n wheelchair: Icons.Wheelchair,\n write: Icons.Feather,\n};\n\nexport { ComponentIcon, COMPONENT_ICONS };\nexport type { ComponentIconProps };\n"],"names":["ComponentIcon","showBackground","icon","props","Icon","COMPONENT_ICONS","dashboard","_jsx","Flex","alignItems","background","undefined","justifyContent","height","width","color","borderRadius","alien","Icons","Alien","apps","GridNine","archive","Archive","arrowDown","ArrowDown","arrowLeft","ArrowLeft","arrowRight","ArrowRight","arrowUp","ArrowUp","attachment","Paperclip","bell","Bell","bold","Bold","book","Book","briefcase","Briefcase","brush","PaintBrush","bulletList","BulletList","calendar","Calendar","car","Car","cast","Cast","chartBubble","ChartBubble","chartCircle","ChartCircle","chartPie","ChartPie","check","Check","clock","Clock","cloud","Cloud","code","Code","cog","Cog","collapse","Collapse","command","Command","connector","Faders","crop","Crop","crown","Crown","cup","Coffee","cursor","Cursor","SquaresFour","database","Database","discuss","Discuss","doctor","Stethoscope","earth","Earth","emotionHappy","EmotionHappy","emotionUnhappy","EmotionUnhappy","envelop","Mail","exit","SignOut","expand","Expand","eye","Eye","feather","Feather","file","File","fileError","FileError","filePdf","FilePdf","fileXls","FileXls","fileZip","FileZip","fileCsv","FileCsv","filter","Filter","folder","Folder","gate","CastleTurret","gift","Gift","globe","Globe","grid","GridFour","handHeart","HandHeart","hashtag","Hashtag","headphone","Headphones","heart","Heart","house","House","information","Information","italic","Italic","key","Key","landscape","Images","layer","ListPlus","layout","Layout","lightbulb","Lightbulb","link","Link","lock","Lock","magic","Magic","manyToMany","ManyToMany","manyToOne","ManyToOne","manyWays","ManyWays","medium","Symbols","Medium","message","Message","microphone","Microphone","monitor","Monitor","moon","Moon","music","MusicNotes","oneToMany","OneToMany","oneToOne","OneToOne","oneWay","OneWay","paint","paintBrush","paperPlane","PaperPlane","pencil","Pencil","phone","Phone","picture","Image","pin","Pin","pinMap","PinMap","plane","Plane","play","Play","plus","Plus","priceTag","PriceTag","puzzle","PuzzlePiece","question","Question","quote","Quotes","refresh","ArrowClockwise","restaurant","Restaurant","rocket","Rocket","rotate","ArrowsCounterClockwise","scissors","Scissors","search","Search","seed","Plant","server","Server","shield","Shield","shirt","Shirt","shoppingCart","ShoppingCart","slideshow","PresentationChart","stack","Stack","star","Star","store","Store","strikeThrough","StrikeThrough","sun","Sun","television","Television","thumbDown","ThumbDown","thumbUp","ThumbUp","train","Train","twitter","X","typhoon","Typhoon","underline","Underline","user","User","volumeMute","VolumeMute","volumeUp","VolumeUp","walk","Walk","wheelchair","Wheelchair","write"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ComponentIcon.mjs","sources":["../../../admin/src/components/ComponentIcon.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { Flex, FlexProps } from '@strapi/design-system';\nimport * as Icons from '@strapi/icons';\nimport * as Symbols from '@strapi/icons/symbols';\n\nimport type { Struct } from '@strapi/types';\n\ninterface ComponentIconProps extends FlexProps {\n showBackground?: boolean;\n icon?: Struct.ContentTypeSchemaInfo['icon'];\n}\n\nconst ComponentIcon = ({\n showBackground = true,\n icon = 'dashboard',\n ...props\n}: ComponentIconProps) => {\n const Icon = COMPONENT_ICONS[icon as keyof typeof COMPONENT_ICONS] || COMPONENT_ICONS.dashboard;\n\n return (\n <Flex\n alignItems=\"center\"\n background={showBackground ? 'neutral200' : undefined}\n justifyContent=\"center\"\n height={8}\n width={8}\n color=\"neutral600\"\n borderRadius={showBackground ? '50%' : 0}\n {...props}\n >\n <Icon height=\"2rem\" width=\"2rem\" />\n </Flex>\n );\n};\n\nconst COMPONENT_ICONS: Record<string, React.ComponentType<any>> = {\n alien: Icons.Alien,\n apps: Icons.GridNine,\n archive: Icons.Archive,\n arrowDown: Icons.ArrowDown,\n arrowLeft: Icons.ArrowLeft,\n arrowRight: Icons.ArrowRight,\n arrowUp: Icons.ArrowUp,\n attachment: Icons.Paperclip,\n bell: Icons.Bell,\n bold: Icons.Bold,\n book: Icons.Book,\n briefcase: Icons.Briefcase,\n brush: Icons.PaintBrush,\n bulletList: Icons.BulletList,\n calendar: Icons.Calendar,\n car: Icons.Car,\n cast: Icons.Cast,\n chartBubble: Icons.ChartBubble,\n chartCircle: Icons.ChartCircle,\n chartPie: Icons.ChartPie,\n check: Icons.Check,\n clock: Icons.Clock,\n cloud: Icons.Cloud,\n code: Icons.Code,\n cog: Icons.Cog,\n collapse: Icons.Collapse,\n command: Icons.Command,\n connector: Icons.Faders,\n crop: Icons.Crop,\n crown: Icons.Crown,\n cup: Icons.Coffee,\n cursor: Icons.Cursor,\n dashboard: Icons.SquaresFour,\n database: Icons.Database,\n discuss: Icons.Discuss,\n doctor: Icons.Stethoscope,\n earth: Icons.Earth,\n emotionHappy: Icons.EmotionHappy,\n emotionUnhappy: Icons.EmotionUnhappy,\n envelop: Icons.Mail,\n exit: Icons.SignOut,\n expand: Icons.Expand,\n eye: Icons.Eye,\n feather: Icons.Feather,\n file: Icons.File,\n fileError: Icons.FileError,\n filePdf: Icons.FilePdf,\n fileXls: Icons.FileXls,\n fileZip: Icons.FileZip,\n fileCsv: Icons.FileCsv,\n filter: Icons.Filter,\n folder: Icons.Folder,\n gate: Icons.CastleTurret,\n gift: Icons.Gift,\n globe: Icons.Globe,\n grid: Icons.GridFour,\n handHeart: Icons.HandHeart,\n hashtag: Icons.Hashtag,\n headphone: Icons.Headphones,\n heart: Icons.Heart,\n house: Icons.House,\n information: Icons.Information,\n italic: Icons.Italic,\n key: Icons.Key,\n landscape: Icons.Images,\n layer: Icons.ListPlus,\n layout: Icons.Layout,\n lightbulb: Icons.Lightbulb,\n link: Icons.Link,\n lock: Icons.Lock,\n magic: Icons.Magic,\n manyToMany: Icons.ManyToMany,\n manyToOne: Icons.ManyToOne,\n manyWays: Icons.ManyWays,\n medium: Symbols.Medium,\n message: Icons.Message,\n microphone: Icons.Microphone,\n monitor: Icons.Monitor,\n moon: Icons.Moon,\n music: Icons.MusicNotes,\n oneToMany: Icons.OneToMany,\n oneToOne: Icons.OneToOne,\n oneWay: Icons.OneWay,\n paint: Icons.PaintBrush,\n paintBrush: Icons.PaintBrush,\n paperPlane: Icons.PaperPlane,\n pencil: Icons.Pencil,\n phone: Icons.Phone,\n picture: Icons.Image,\n pin: Icons.Pin,\n pinMap: Icons.PinMap,\n plane: Icons.Plane,\n play: Icons.Play,\n plus: Icons.Plus,\n priceTag: Icons.PriceTag,\n puzzle: Icons.PuzzlePiece,\n question: Icons.Question,\n quote: Icons.Quotes,\n refresh: Icons.ArrowClockwise,\n restaurant: Icons.Restaurant,\n rocket: Icons.Rocket,\n rotate: Icons.ArrowsCounterClockwise,\n scissors: Icons.Scissors,\n search: Icons.Search,\n seed: Icons.Plant,\n server: Icons.Server,\n shield: Icons.Shield,\n shirt: Icons.Shirt,\n shoppingCart: Icons.ShoppingCart,\n slideshow: Icons.PresentationChart,\n stack: Icons.Stack,\n star: Icons.Star,\n store: Icons.Store,\n strikeThrough: Icons.StrikeThrough,\n sun: Icons.Sun,\n television: Icons.Television,\n thumbDown: Icons.ThumbDown,\n thumbUp: Icons.ThumbUp,\n train: Icons.Train,\n twitter: Symbols.X,\n typhoon: Icons.Typhoon,\n underline: Icons.Underline,\n user: Icons.User,\n volumeMute: Icons.VolumeMute,\n volumeUp: Icons.VolumeUp,\n walk: Icons.Walk,\n wheelchair: Icons.Wheelchair,\n write: Icons.Feather,\n};\n\nexport { ComponentIcon, COMPONENT_ICONS };\nexport type { ComponentIconProps };\n"],"names":["ComponentIcon","showBackground","icon","props","Icon","COMPONENT_ICONS","dashboard","_jsx","Flex","alignItems","background","undefined","justifyContent","height","width","color","borderRadius","alien","Icons","Alien","apps","GridNine","archive","Archive","arrowDown","ArrowDown","arrowLeft","ArrowLeft","arrowRight","ArrowRight","arrowUp","ArrowUp","attachment","Paperclip","bell","Bell","bold","Bold","book","Book","briefcase","Briefcase","brush","PaintBrush","bulletList","BulletList","calendar","Calendar","car","Car","cast","Cast","chartBubble","ChartBubble","chartCircle","ChartCircle","chartPie","ChartPie","check","Check","clock","Clock","cloud","Cloud","code","Code","cog","Cog","collapse","Collapse","command","Command","connector","Faders","crop","Crop","crown","Crown","cup","Coffee","cursor","Cursor","SquaresFour","database","Database","discuss","Discuss","doctor","Stethoscope","earth","Earth","emotionHappy","EmotionHappy","emotionUnhappy","EmotionUnhappy","envelop","Mail","exit","SignOut","expand","Expand","eye","Eye","feather","Feather","file","File","fileError","FileError","filePdf","FilePdf","fileXls","FileXls","fileZip","FileZip","fileCsv","FileCsv","filter","Filter","folder","Folder","gate","CastleTurret","gift","Gift","globe","Globe","grid","GridFour","handHeart","HandHeart","hashtag","Hashtag","headphone","Headphones","heart","Heart","house","House","information","Information","italic","Italic","key","Key","landscape","Images","layer","ListPlus","layout","Layout","lightbulb","Lightbulb","link","Link","lock","Lock","magic","Magic","manyToMany","ManyToMany","manyToOne","ManyToOne","manyWays","ManyWays","medium","Symbols","Medium","message","Message","microphone","Microphone","monitor","Monitor","moon","Moon","music","MusicNotes","oneToMany","OneToMany","oneToOne","OneToOne","oneWay","OneWay","paint","paintBrush","paperPlane","PaperPlane","pencil","Pencil","phone","Phone","picture","Image","pin","Pin","pinMap","PinMap","plane","Plane","play","Play","plus","Plus","priceTag","PriceTag","puzzle","PuzzlePiece","question","Question","quote","Quotes","refresh","ArrowClockwise","restaurant","Restaurant","rocket","Rocket","rotate","ArrowsCounterClockwise","scissors","Scissors","search","Search","seed","Plant","server","Server","shield","Shield","shirt","Shirt","shoppingCart","ShoppingCart","slideshow","PresentationChart","stack","Stack","star","Star","store","Store","strikeThrough","StrikeThrough","sun","Sun","television","Television","thumbDown","ThumbDown","thumbUp","ThumbUp","train","Train","twitter","X","typhoon","Typhoon","underline","Underline","user","User","volumeMute","VolumeMute","volumeUp","VolumeUp","walk","Walk","wheelchair","Wheelchair","write"],"mappings":"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"}
1
+ {"version":3,"file":"ComponentIcon.mjs","sources":["../../../admin/src/components/ComponentIcon.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { Flex, FlexProps } from '@strapi/design-system';\nimport * as Icons from '@strapi/icons';\nimport * as Symbols from '@strapi/icons/symbols';\n\nimport type { Struct } from '@strapi/types';\n\ntype ComponentIconProps = FlexProps & {\n showBackground?: boolean;\n icon?: Struct.ContentTypeSchemaInfo['icon'];\n};\n\ntype IconComponent = React.ComponentType<Pick<React.SVGProps<SVGSVGElement>, 'height' | 'width'>>;\n\nconst ComponentIcon = ({\n showBackground = true,\n icon = 'dashboard',\n ...props\n}: ComponentIconProps) => {\n const Icon = COMPONENT_ICONS[icon as keyof typeof COMPONENT_ICONS] || COMPONENT_ICONS.dashboard;\n\n return (\n <Flex\n alignItems=\"center\"\n background={showBackground ? 'neutral200' : undefined}\n justifyContent=\"center\"\n height={8}\n width={8}\n color=\"neutral600\"\n borderRadius={showBackground ? '50%' : 0}\n {...props}\n >\n <Icon height=\"2rem\" width=\"2rem\" />\n </Flex>\n );\n};\n\nconst COMPONENT_ICONS: Record<string, IconComponent> = {\n alien: Icons.Alien,\n apps: Icons.GridNine,\n archive: Icons.Archive,\n arrowDown: Icons.ArrowDown,\n arrowLeft: Icons.ArrowLeft,\n arrowRight: Icons.ArrowRight,\n arrowUp: Icons.ArrowUp,\n attachment: Icons.Paperclip,\n bell: Icons.Bell,\n bold: Icons.Bold,\n book: Icons.Book,\n briefcase: Icons.Briefcase,\n brush: Icons.PaintBrush,\n bulletList: Icons.BulletList,\n calendar: Icons.Calendar,\n car: Icons.Car,\n cast: Icons.Cast,\n chartBubble: Icons.ChartBubble,\n chartCircle: Icons.ChartCircle,\n chartPie: Icons.ChartPie,\n check: Icons.Check,\n clock: Icons.Clock,\n cloud: Icons.Cloud,\n code: Icons.Code,\n cog: Icons.Cog,\n collapse: Icons.Collapse,\n command: Icons.Command,\n connector: Icons.Faders,\n crop: Icons.Crop,\n crown: Icons.Crown,\n cup: Icons.Coffee,\n cursor: Icons.Cursor,\n dashboard: Icons.SquaresFour,\n database: Icons.Database,\n discuss: Icons.Discuss,\n doctor: Icons.Stethoscope,\n earth: Icons.Earth,\n emotionHappy: Icons.EmotionHappy,\n emotionUnhappy: Icons.EmotionUnhappy,\n envelop: Icons.Mail,\n exit: Icons.SignOut,\n expand: Icons.Expand,\n eye: Icons.Eye,\n feather: Icons.Feather,\n file: Icons.File,\n fileError: Icons.FileError,\n filePdf: Icons.FilePdf,\n fileXls: Icons.FileXls,\n fileZip: Icons.FileZip,\n fileCsv: Icons.FileCsv,\n filter: Icons.Filter,\n folder: Icons.Folder,\n gate: Icons.CastleTurret,\n gift: Icons.Gift,\n globe: Icons.Globe,\n grid: Icons.GridFour,\n handHeart: Icons.HandHeart,\n hashtag: Icons.Hashtag,\n headphone: Icons.Headphones,\n heart: Icons.Heart,\n house: Icons.House,\n information: Icons.Information,\n italic: Icons.Italic,\n key: Icons.Key,\n landscape: Icons.Images,\n layer: Icons.ListPlus,\n layout: Icons.Layout,\n lightbulb: Icons.Lightbulb,\n link: Icons.Link,\n lock: Icons.Lock,\n magic: Icons.Magic,\n manyToMany: Icons.ManyToMany,\n manyToOne: Icons.ManyToOne,\n manyWays: Icons.ManyWays,\n medium: Symbols.Medium,\n message: Icons.Message,\n microphone: Icons.Microphone,\n monitor: Icons.Monitor,\n moon: Icons.Moon,\n music: Icons.MusicNotes,\n oneToMany: Icons.OneToMany,\n oneToOne: Icons.OneToOne,\n oneWay: Icons.OneWay,\n paint: Icons.PaintBrush,\n paintBrush: Icons.PaintBrush,\n paperPlane: Icons.PaperPlane,\n pencil: Icons.Pencil,\n phone: Icons.Phone,\n picture: Icons.Image,\n pin: Icons.Pin,\n pinMap: Icons.PinMap,\n plane: Icons.Plane,\n play: Icons.Play,\n plus: Icons.Plus,\n priceTag: Icons.PriceTag,\n puzzle: Icons.PuzzlePiece,\n question: Icons.Question,\n quote: Icons.Quotes,\n refresh: Icons.ArrowClockwise,\n restaurant: Icons.Restaurant,\n rocket: Icons.Rocket,\n rotate: Icons.ArrowsCounterClockwise,\n scissors: Icons.Scissors,\n search: Icons.Search,\n seed: Icons.Plant,\n server: Icons.Server,\n shield: Icons.Shield,\n shirt: Icons.Shirt,\n shoppingCart: Icons.ShoppingCart,\n slideshow: Icons.PresentationChart,\n stack: Icons.Stack,\n star: Icons.Star,\n store: Icons.Store,\n strikeThrough: Icons.StrikeThrough,\n sun: Icons.Sun,\n television: Icons.Television,\n thumbDown: Icons.ThumbDown,\n thumbUp: Icons.ThumbUp,\n train: Icons.Train,\n twitter: Symbols.X,\n typhoon: Icons.Typhoon,\n underline: Icons.Underline,\n user: Icons.User,\n volumeMute: Icons.VolumeMute,\n volumeUp: Icons.VolumeUp,\n walk: Icons.Walk,\n wheelchair: Icons.Wheelchair,\n write: Icons.Feather,\n};\n\nexport { ComponentIcon, COMPONENT_ICONS };\nexport type { ComponentIconProps };\n"],"names":["ComponentIcon","showBackground","icon","props","Icon","COMPONENT_ICONS","dashboard","_jsx","Flex","alignItems","background","undefined","justifyContent","height","width","color","borderRadius","alien","Icons","Alien","apps","GridNine","archive","Archive","arrowDown","ArrowDown","arrowLeft","ArrowLeft","arrowRight","ArrowRight","arrowUp","ArrowUp","attachment","Paperclip","bell","Bell","bold","Bold","book","Book","briefcase","Briefcase","brush","PaintBrush","bulletList","BulletList","calendar","Calendar","car","Car","cast","Cast","chartBubble","ChartBubble","chartCircle","ChartCircle","chartPie","ChartPie","check","Check","clock","Clock","cloud","Cloud","code","Code","cog","Cog","collapse","Collapse","command","Command","connector","Faders","crop","Crop","crown","Crown","cup","Coffee","cursor","Cursor","SquaresFour","database","Database","discuss","Discuss","doctor","Stethoscope","earth","Earth","emotionHappy","EmotionHappy","emotionUnhappy","EmotionUnhappy","envelop","Mail","exit","SignOut","expand","Expand","eye","Eye","feather","Feather","file","File","fileError","FileError","filePdf","FilePdf","fileXls","FileXls","fileZip","FileZip","fileCsv","FileCsv","filter","Filter","folder","Folder","gate","CastleTurret","gift","Gift","globe","Globe","grid","GridFour","handHeart","HandHeart","hashtag","Hashtag","headphone","Headphones","heart","Heart","house","House","information","Information","italic","Italic","key","Key","landscape","Images","layer","ListPlus","layout","Layout","lightbulb","Lightbulb","link","Link","lock","Lock","magic","Magic","manyToMany","ManyToMany","manyToOne","ManyToOne","manyWays","ManyWays","medium","Symbols","Medium","message","Message","microphone","Microphone","monitor","Monitor","moon","Moon","music","MusicNotes","oneToMany","OneToMany","oneToOne","OneToOne","oneWay","OneWay","paint","paintBrush","paperPlane","PaperPlane","pencil","Pencil","phone","Phone","picture","Image","pin","Pin","pinMap","PinMap","plane","Plane","play","Play","plus","Plus","priceTag","PriceTag","puzzle","PuzzlePiece","question","Question","quote","Quotes","refresh","ArrowClockwise","restaurant","Restaurant","rocket","Rocket","rotate","ArrowsCounterClockwise","scissors","Scissors","search","Search","seed","Plant","server","Server","shield","Shield","shirt","Shirt","shoppingCart","ShoppingCart","slideshow","PresentationChart","stack","Stack","star","Star","store","Store","strikeThrough","StrikeThrough","sun","Sun","television","Television","thumbDown","ThumbDown","thumbUp","ThumbUp","train","Train","twitter","X","typhoon","Typhoon","underline","Underline","user","User","volumeMute","VolumeMute","volumeUp","VolumeUp","walk","Walk","wheelchair","Wheelchair","write"],"mappings":"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"}
@@ -37,6 +37,7 @@ function _interopNamespace(e) {
37
37
 
38
38
  var React__namespace = /*#__PURE__*/_interopNamespace(React);
39
39
 
40
+ const EMPTY_METADATAS = {};
40
41
  const GRID_COLUMNS = 12;
41
42
  /* -------------------------------------------------------------------------------------------------
42
43
  * Drag and Drop
@@ -86,20 +87,20 @@ const SortableItem = ({ id, children })=>{
86
87
  }))
87
88
  }));
88
89
  };
89
- const Fields = ({ attributes, fieldSizes, components, metadatas = {} })=>{
90
+ const Fields = ({ attributes, fieldSizes, components, metadatas = EMPTY_METADATAS })=>{
90
91
  const { formatMessage } = reactIntl.useIntl();
91
92
  const layout = strapiAdmin.useForm('Fields', (state)=>state.values.layout ?? []);
92
93
  const onChange = strapiAdmin.useForm('Fields', (state)=>state.onChange);
93
94
  const addFieldRow = strapiAdmin.useForm('Fields', (state)=>state.addFieldRow);
94
95
  const removeFieldRow = strapiAdmin.useForm('Fields', (state)=>state.removeFieldRow);
95
- const existingFields = layout.map((row)=>row.children.map((field)=>field.name)).flat();
96
+ const existingFields = new Set(layout.flatMap((row)=>row.children.map((field)=>field.name)));
96
97
  /**
97
98
  * Get the fields that are not already in the layout
98
99
  * But also check that they are visible before we give users
99
100
  * the option to display them. e.g. `id` is not visible.
100
101
  */ const remainingFields = Object.entries(metadatas).reduce((acc, current)=>{
101
102
  const [name, { visible, ...field }] = current;
102
- if (!existingFields.includes(name) && visible === true) {
103
+ if (!existingFields.has(name) && visible === true) {
103
104
  const type = attributes[name]?.type;
104
105
  const size = type ? fieldSizes[type] : GRID_COLUMNS;
105
106
  acc.push({
@@ -237,7 +238,7 @@ const Fields = ({ attributes, fieldSizes, components, metadatas = {} })=>{
237
238
  }, 0);
238
239
  const isNotEnoughSpace = spaceTaken + draggedItem.size > GRID_COLUMNS;
239
240
  const canSwapSameSizeItem = overItem && overItem.name !== TEMP_FIELD_NAME && overItem.size === draggedItem.size && activeIndex !== -1 && overIndex !== -1;
240
- const canCreateNewRowForItem = activeContainerIndex !== overContainerIndex && GRID_COLUMNS - spaceTaken === 0;
241
+ const canCreateNewRowForItem = activeContainerIndex !== overContainerIndex && GRID_COLUMNS - spaceTaken < draggedItem.size;
241
242
  const isHoveringOverSpacer = overItem?.name === TEMP_FIELD_NAME;
242
243
  /**
243
244
  * Not enough space in the hovered row
@@ -285,7 +286,10 @@ const Fields = ({ attributes, fieldSizes, components, metadatas = {} })=>{
285
286
  }
286
287
  }
287
288
  const newContainerPrototype = draft[overContainerIndex];
288
- const newContainerId = `container-${draft.length}`;
289
+ // Using draft.length directly can collide with an existing container id
290
+ // (e.g. after rows were removed), causing React key conflicts and flicker.
291
+ const findFreeContainerId = (i)=>containersAsDictionary[`container-${i}`] ? findFreeContainerId(i + 1) : `container-${i}`;
292
+ const newContainerId = findFreeContainerId(draft.length);
289
293
  draft.splice(insertIndex, 0, {
290
294
  ...newContainerPrototype,
291
295
  dndId: newContainerId,
@@ -305,7 +309,7 @@ const Fields = ({ attributes, fieldSizes, components, metadatas = {} })=>{
305
309
  // There is room for the item in the container, drop it
306
310
  targetChildren.splice(overIndex, 0, draggedItem);
307
311
  });
308
- setContainers(update);
312
+ setContainers(update.filter((container)=>container.children.length > 0));
309
313
  },
310
314
  onDragEnd: (event)=>{
311
315
  const { active, over } = event;