@strapi/content-manager 0.0.0-next.39c0188c3aa01bec7b64b948211571d5159e811d → 0.0.0-next.3a1d87a9c3b1d4d89f741c6ecd7f501230fd8d76

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 (439) hide show
  1. package/dist/_chunks/CardDragPreview-C0QyJgRA.js +69 -0
  2. package/dist/_chunks/CardDragPreview-C0QyJgRA.js.map +1 -0
  3. package/dist/_chunks/CardDragPreview-DOxamsuj.mjs +70 -0
  4. package/dist/_chunks/CardDragPreview-DOxamsuj.mjs.map +1 -0
  5. package/dist/_chunks/ComponentConfigurationPage-DMxUlNOo.js +254 -0
  6. package/dist/_chunks/ComponentConfigurationPage-DMxUlNOo.js.map +1 -0
  7. package/dist/_chunks/ComponentConfigurationPage-baEkO-OV.mjs +236 -0
  8. package/dist/_chunks/ComponentConfigurationPage-baEkO-OV.mjs.map +1 -0
  9. package/dist/_chunks/ComponentIcon-CRbtQEUV.js +175 -0
  10. package/dist/_chunks/ComponentIcon-CRbtQEUV.js.map +1 -0
  11. package/dist/_chunks/ComponentIcon-u4bIXTFY.mjs +157 -0
  12. package/dist/_chunks/ComponentIcon-u4bIXTFY.mjs.map +1 -0
  13. package/dist/_chunks/EditConfigurationPage-CXxV7mKn.js +150 -0
  14. package/dist/_chunks/EditConfigurationPage-CXxV7mKn.js.map +1 -0
  15. package/dist/_chunks/EditConfigurationPage-YR8-4VCS.mjs +132 -0
  16. package/dist/_chunks/EditConfigurationPage-YR8-4VCS.mjs.map +1 -0
  17. package/dist/_chunks/EditViewPage-BfR6jAR6.js +209 -0
  18. package/dist/_chunks/EditViewPage-BfR6jAR6.js.map +1 -0
  19. package/dist/_chunks/EditViewPage-DFF7c27p.mjs +191 -0
  20. package/dist/_chunks/EditViewPage-DFF7c27p.mjs.map +1 -0
  21. package/dist/_chunks/FieldTypeIcon-CMlNO8PE.mjs +50 -0
  22. package/dist/_chunks/FieldTypeIcon-CMlNO8PE.mjs.map +1 -0
  23. package/dist/_chunks/FieldTypeIcon-Dnwq_IRF.js +49 -0
  24. package/dist/_chunks/FieldTypeIcon-Dnwq_IRF.js.map +1 -0
  25. package/dist/_chunks/Form-CjcMRP5A.js +778 -0
  26. package/dist/_chunks/Form-CjcMRP5A.js.map +1 -0
  27. package/dist/_chunks/Form-MSOSfGGN.mjs +758 -0
  28. package/dist/_chunks/Form-MSOSfGGN.mjs.map +1 -0
  29. package/dist/_chunks/History-BgZ7gVuF.js +1019 -0
  30. package/dist/_chunks/History-BgZ7gVuF.js.map +1 -0
  31. package/dist/_chunks/History-WOQNVho-.mjs +999 -0
  32. package/dist/_chunks/History-WOQNVho-.mjs.map +1 -0
  33. package/dist/_chunks/Input-BkKwZ6Qt.mjs +5585 -0
  34. package/dist/_chunks/Input-BkKwZ6Qt.mjs.map +1 -0
  35. package/dist/_chunks/Input-BwOibhc3.js +5617 -0
  36. package/dist/_chunks/Input-BwOibhc3.js.map +1 -0
  37. package/dist/_chunks/ListConfigurationPage-BeXfr6uW.mjs +633 -0
  38. package/dist/_chunks/ListConfigurationPage-BeXfr6uW.mjs.map +1 -0
  39. package/dist/_chunks/ListConfigurationPage-DnJ3nbwL.js +652 -0
  40. package/dist/_chunks/ListConfigurationPage-DnJ3nbwL.js.map +1 -0
  41. package/dist/_chunks/ListViewPage-CJFDudKl.js +877 -0
  42. package/dist/_chunks/ListViewPage-CJFDudKl.js.map +1 -0
  43. package/dist/_chunks/ListViewPage-VK2v44Q1.mjs +854 -0
  44. package/dist/_chunks/ListViewPage-VK2v44Q1.mjs.map +1 -0
  45. package/dist/_chunks/NoContentTypePage-T8ttty6K.mjs +51 -0
  46. package/dist/_chunks/NoContentTypePage-T8ttty6K.mjs.map +1 -0
  47. package/dist/_chunks/NoContentTypePage-en2PwWgI.js +51 -0
  48. package/dist/_chunks/NoContentTypePage-en2PwWgI.js.map +1 -0
  49. package/dist/_chunks/NoPermissionsPage-CcjILry3.js +23 -0
  50. package/dist/_chunks/NoPermissionsPage-CcjILry3.js.map +1 -0
  51. package/dist/_chunks/NoPermissionsPage-CokBHhhy.mjs +23 -0
  52. package/dist/_chunks/NoPermissionsPage-CokBHhhy.mjs.map +1 -0
  53. package/dist/_chunks/Preview-BF81YhRj.mjs +287 -0
  54. package/dist/_chunks/Preview-BF81YhRj.mjs.map +1 -0
  55. package/dist/_chunks/Preview-DgzAuzWQ.js +305 -0
  56. package/dist/_chunks/Preview-DgzAuzWQ.js.map +1 -0
  57. package/dist/_chunks/Relations-1O-JcM4t.js +747 -0
  58. package/dist/_chunks/Relations-1O-JcM4t.js.map +1 -0
  59. package/dist/_chunks/Relations-BncdhGCd.mjs +728 -0
  60. package/dist/_chunks/Relations-BncdhGCd.mjs.map +1 -0
  61. package/dist/_chunks/ar-BUUWXIYu.js +226 -0
  62. package/dist/{admin/chunks/ar-DckYq_WK.js.map → _chunks/ar-BUUWXIYu.js.map} +1 -1
  63. package/dist/_chunks/ar-CCEVvqGG.mjs +226 -0
  64. package/dist/_chunks/ar-CCEVvqGG.mjs.map +1 -0
  65. package/dist/_chunks/ca-5U32ON2v.mjs +201 -0
  66. package/dist/_chunks/ca-5U32ON2v.mjs.map +1 -0
  67. package/dist/_chunks/ca-Cmk45QO6.js +201 -0
  68. package/dist/{admin/chunks/de-CbImAUA5.js.map → _chunks/ca-Cmk45QO6.js.map} +1 -1
  69. package/dist/_chunks/cs-CM2aBUar.mjs +125 -0
  70. package/dist/_chunks/cs-CM2aBUar.mjs.map +1 -0
  71. package/dist/_chunks/cs-CkJy6B2v.js +125 -0
  72. package/dist/{admin/chunks/cs-C7OSYFQ7.js.map → _chunks/cs-CkJy6B2v.js.map} +1 -1
  73. package/dist/_chunks/de-C72KDNOl.mjs +199 -0
  74. package/dist/_chunks/de-C72KDNOl.mjs.map +1 -0
  75. package/dist/_chunks/de-CCEmbAah.js +199 -0
  76. package/dist/{admin/chunks/es-C8vLuvZL.js.map → _chunks/de-CCEmbAah.js.map} +1 -1
  77. package/dist/_chunks/en-BZaUty0m.mjs +311 -0
  78. package/dist/{admin/chunks/en-C1CjdAtC.js.map → _chunks/en-BZaUty0m.mjs.map} +1 -1
  79. package/dist/_chunks/en-CzCnBk4S.js +311 -0
  80. package/dist/{admin/chunks/en-LfhocNG2.js.map → _chunks/en-CzCnBk4S.js.map} +1 -1
  81. package/dist/_chunks/es-9K52xZIr.js +196 -0
  82. package/dist/{admin/chunks/de-5QRlDHyR.js.map → _chunks/es-9K52xZIr.js.map} +1 -1
  83. package/dist/_chunks/es-D34tqjMw.mjs +196 -0
  84. package/dist/_chunks/es-D34tqjMw.mjs.map +1 -0
  85. package/dist/_chunks/eu-CdALomew.mjs +202 -0
  86. package/dist/_chunks/eu-CdALomew.mjs.map +1 -0
  87. package/dist/_chunks/eu-VDH-3ovk.js +202 -0
  88. package/dist/_chunks/eu-VDH-3ovk.js.map +1 -0
  89. package/dist/_chunks/fr--pg5jUbt.mjs +216 -0
  90. package/dist/_chunks/fr--pg5jUbt.mjs.map +1 -0
  91. package/dist/_chunks/fr-B2Kyv8Z9.js +216 -0
  92. package/dist/_chunks/fr-B2Kyv8Z9.js.map +1 -0
  93. package/dist/_chunks/gu-BRmF601H.js +200 -0
  94. package/dist/_chunks/gu-BRmF601H.js.map +1 -0
  95. package/dist/_chunks/gu-CNpaMDpH.mjs +200 -0
  96. package/dist/_chunks/gu-CNpaMDpH.mjs.map +1 -0
  97. package/dist/_chunks/hi-CCJBptSq.js +200 -0
  98. package/dist/_chunks/hi-CCJBptSq.js.map +1 -0
  99. package/dist/_chunks/hi-Dwvd04m3.mjs +200 -0
  100. package/dist/_chunks/hi-Dwvd04m3.mjs.map +1 -0
  101. package/dist/{admin/chunks/hooks-D-sOYd1s.js → _chunks/hooks-BAaaKPS_.js} +3 -6
  102. package/dist/_chunks/hooks-BAaaKPS_.js.map +1 -0
  103. package/dist/_chunks/hooks-E5u1mcgM.mjs +8 -0
  104. package/dist/_chunks/hooks-E5u1mcgM.mjs.map +1 -0
  105. package/dist/_chunks/hu-CeYvaaO0.mjs +202 -0
  106. package/dist/_chunks/hu-CeYvaaO0.mjs.map +1 -0
  107. package/dist/_chunks/hu-sNV_yLYy.js +202 -0
  108. package/dist/_chunks/hu-sNV_yLYy.js.map +1 -0
  109. package/dist/_chunks/id-B5Ser98A.js +160 -0
  110. package/dist/{admin/chunks/it-BAHrwmYS.js.map → _chunks/id-B5Ser98A.js.map} +1 -1
  111. package/dist/_chunks/id-BtwA9WJT.mjs +160 -0
  112. package/dist/_chunks/id-BtwA9WJT.mjs.map +1 -0
  113. package/dist/_chunks/index-DiluOUp6.mjs +4423 -0
  114. package/dist/_chunks/index-DiluOUp6.mjs.map +1 -0
  115. package/dist/_chunks/index-EXJvmn4t.js +4442 -0
  116. package/dist/_chunks/index-EXJvmn4t.js.map +1 -0
  117. package/dist/_chunks/it-BrVPqaf1.mjs +162 -0
  118. package/dist/_chunks/it-BrVPqaf1.mjs.map +1 -0
  119. package/dist/_chunks/it-DkBIs7vD.js +162 -0
  120. package/dist/{admin/chunks/id-D7V5S1rB.js.map → _chunks/it-DkBIs7vD.js.map} +1 -1
  121. package/dist/_chunks/ja-7sfIbjxE.js +196 -0
  122. package/dist/{admin/chunks/it-CQFpa_Dc.js.map → _chunks/ja-7sfIbjxE.js.map} +1 -1
  123. package/dist/_chunks/ja-BHqhDq4V.mjs +196 -0
  124. package/dist/_chunks/ja-BHqhDq4V.mjs.map +1 -0
  125. package/dist/_chunks/ko-HVQRlfUI.mjs +195 -0
  126. package/dist/_chunks/ko-HVQRlfUI.mjs.map +1 -0
  127. package/dist/_chunks/ko-woFZPmLk.js +195 -0
  128. package/dist/{admin/chunks/es-DkoWSExG.js.map → _chunks/ko-woFZPmLk.js.map} +1 -1
  129. package/dist/_chunks/layout-4TbKVax8.js +488 -0
  130. package/dist/_chunks/layout-4TbKVax8.js.map +1 -0
  131. package/dist/_chunks/layout-mSwsYzxv.mjs +471 -0
  132. package/dist/_chunks/layout-mSwsYzxv.mjs.map +1 -0
  133. package/dist/_chunks/ml-BihZwQit.mjs +200 -0
  134. package/dist/_chunks/ml-BihZwQit.mjs.map +1 -0
  135. package/dist/_chunks/ml-C2W8N8k1.js +200 -0
  136. package/dist/_chunks/ml-C2W8N8k1.js.map +1 -0
  137. package/dist/_chunks/ms-BuFotyP_.js +144 -0
  138. package/dist/{admin/chunks/cs-BJFxwIWj.js.map → _chunks/ms-BuFotyP_.js.map} +1 -1
  139. package/dist/_chunks/ms-m_WjyWx7.mjs +144 -0
  140. package/dist/_chunks/ms-m_WjyWx7.mjs.map +1 -0
  141. package/dist/_chunks/nl-D4R9gHx5.mjs +202 -0
  142. package/dist/_chunks/nl-D4R9gHx5.mjs.map +1 -0
  143. package/dist/_chunks/nl-bbEOHChV.js +202 -0
  144. package/dist/_chunks/nl-bbEOHChV.js.map +1 -0
  145. package/dist/_chunks/objects-BcXOv6_9.js +47 -0
  146. package/dist/_chunks/objects-BcXOv6_9.js.map +1 -0
  147. package/dist/_chunks/objects-D6yBsdmx.mjs +45 -0
  148. package/dist/_chunks/objects-D6yBsdmx.mjs.map +1 -0
  149. package/dist/_chunks/pl-sbx9mSt_.mjs +199 -0
  150. package/dist/_chunks/pl-sbx9mSt_.mjs.map +1 -0
  151. package/dist/_chunks/pl-uzwG-hk7.js +199 -0
  152. package/dist/{admin/chunks/ca-DviY7mRj.js.map → _chunks/pl-uzwG-hk7.js.map} +1 -1
  153. package/dist/_chunks/pt-BR-BiOz37D9.js +201 -0
  154. package/dist/{admin/chunks/pt-BR-CcotyBGJ.js.map → _chunks/pt-BR-BiOz37D9.js.map} +1 -1
  155. package/dist/_chunks/pt-BR-C71iDxnh.mjs +201 -0
  156. package/dist/_chunks/pt-BR-C71iDxnh.mjs.map +1 -0
  157. package/dist/_chunks/pt-BsaFvS8-.mjs +95 -0
  158. package/dist/_chunks/pt-BsaFvS8-.mjs.map +1 -0
  159. package/dist/_chunks/pt-CeXQuq50.js +95 -0
  160. package/dist/_chunks/pt-CeXQuq50.js.map +1 -0
  161. package/dist/_chunks/relations--YOvQBqv.mjs +134 -0
  162. package/dist/_chunks/relations--YOvQBqv.mjs.map +1 -0
  163. package/dist/_chunks/relations-Ai6Izh7h.js +133 -0
  164. package/dist/_chunks/relations-Ai6Izh7h.js.map +1 -0
  165. package/dist/_chunks/ru-BE6A4Exp.mjs +231 -0
  166. package/dist/{admin/chunks/ar-DeQBSsfl.js.map → _chunks/ru-BE6A4Exp.mjs.map} +1 -1
  167. package/dist/_chunks/ru-BT3ybNny.js +231 -0
  168. package/dist/{admin/chunks/ru-CB4BUyQp.js.map → _chunks/ru-BT3ybNny.js.map} +1 -1
  169. package/dist/_chunks/sa-CcvkYInH.js +200 -0
  170. package/dist/_chunks/sa-CcvkYInH.js.map +1 -0
  171. package/dist/_chunks/sa-Dag0k-Z8.mjs +200 -0
  172. package/dist/_chunks/sa-Dag0k-Z8.mjs.map +1 -0
  173. package/dist/_chunks/sk-BFg-R8qJ.mjs +202 -0
  174. package/dist/_chunks/sk-BFg-R8qJ.mjs.map +1 -0
  175. package/dist/_chunks/sk-CvY09Xjv.js +202 -0
  176. package/dist/_chunks/sk-CvY09Xjv.js.map +1 -0
  177. package/dist/_chunks/sv-CUnfWGsh.mjs +202 -0
  178. package/dist/_chunks/sv-CUnfWGsh.mjs.map +1 -0
  179. package/dist/_chunks/sv-MYDuzgvT.js +202 -0
  180. package/dist/_chunks/sv-MYDuzgvT.js.map +1 -0
  181. package/dist/_chunks/th-BqbI8lIT.mjs +148 -0
  182. package/dist/_chunks/th-BqbI8lIT.mjs.map +1 -0
  183. package/dist/_chunks/th-D9_GfAjc.js +148 -0
  184. package/dist/{admin/chunks/ms-CvSC0OdG.js.map → _chunks/th-D9_GfAjc.js.map} +1 -1
  185. package/dist/_chunks/tr-CgeK3wJM.mjs +199 -0
  186. package/dist/_chunks/tr-CgeK3wJM.mjs.map +1 -0
  187. package/dist/_chunks/tr-D9UH-O_R.js +199 -0
  188. package/dist/_chunks/tr-D9UH-O_R.js.map +1 -0
  189. package/dist/_chunks/uk-C8EiqJY7.js +144 -0
  190. package/dist/{admin/chunks/ms-Bh09NFff.js.map → _chunks/uk-C8EiqJY7.js.map} +1 -1
  191. package/dist/_chunks/uk-CR-zDhAY.mjs +144 -0
  192. package/dist/_chunks/uk-CR-zDhAY.mjs.map +1 -0
  193. package/dist/_chunks/useDragAndDrop-BMtgCYzL.js +245 -0
  194. package/dist/_chunks/useDragAndDrop-BMtgCYzL.js.map +1 -0
  195. package/dist/_chunks/useDragAndDrop-DJ6jqvZN.mjs +228 -0
  196. package/dist/_chunks/useDragAndDrop-DJ6jqvZN.mjs.map +1 -0
  197. package/dist/_chunks/usePrev-CZGy2Vjf.mjs +29 -0
  198. package/dist/_chunks/usePrev-CZGy2Vjf.mjs.map +1 -0
  199. package/dist/_chunks/usePrev-D5J_2fEu.js +28 -0
  200. package/dist/_chunks/usePrev-D5J_2fEu.js.map +1 -0
  201. package/dist/_chunks/vi-CJlYDheJ.js +111 -0
  202. package/dist/{admin/chunks/vi-CvBGlTjr.js.map → _chunks/vi-CJlYDheJ.js.map} +1 -1
  203. package/dist/_chunks/vi-DUXIk_fw.mjs +111 -0
  204. package/dist/_chunks/vi-DUXIk_fw.mjs.map +1 -0
  205. package/dist/_chunks/zh-BWZspA60.mjs +209 -0
  206. package/dist/_chunks/zh-BWZspA60.mjs.map +1 -0
  207. package/dist/_chunks/zh-CQQfszqR.js +209 -0
  208. package/dist/{admin/chunks/ca-ClDTvatJ.js.map → _chunks/zh-CQQfszqR.js.map} +1 -1
  209. package/dist/_chunks/zh-Hans-9kOncHGw.js +952 -0
  210. package/dist/{admin/chunks/zh-Hans-CI0HKio3.js.map → _chunks/zh-Hans-9kOncHGw.js.map} +1 -1
  211. package/dist/_chunks/zh-Hans-BPQcRIyH.mjs +952 -0
  212. package/dist/{admin/chunks/zh-Hans-JVK9x7xr.js.map → _chunks/zh-Hans-BPQcRIyH.mjs.map} +1 -1
  213. package/dist/admin/index.js +4 -23
  214. package/dist/admin/index.js.map +1 -1
  215. package/dist/admin/index.mjs +13 -16
  216. package/dist/admin/index.mjs.map +1 -1
  217. package/dist/admin/src/history/services/historyVersion.d.ts +1 -1
  218. package/dist/admin/src/hooks/useDocument.d.ts +2 -2
  219. package/dist/admin/src/preview/components/PreviewContent.d.ts +1 -2
  220. package/dist/admin/src/preview/components/PreviewHeader.d.ts +1 -2
  221. package/dist/admin/src/preview/index.d.ts +3 -2
  222. package/dist/server/index.js +4396 -5468
  223. package/dist/server/index.js.map +1 -1
  224. package/dist/server/index.mjs +4368 -5442
  225. package/dist/server/index.mjs.map +1 -1
  226. package/dist/server/src/controllers/utils/metadata.d.ts +1 -1
  227. package/dist/server/src/controllers/utils/metadata.d.ts.map +1 -1
  228. package/dist/server/src/history/services/utils.d.ts.map +1 -1
  229. package/dist/server/src/services/utils/count.d.ts +1 -1
  230. package/dist/server/src/services/utils/count.d.ts.map +1 -1
  231. package/dist/server/src/services/utils/populate.d.ts +1 -1
  232. package/dist/server/src/services/utils/populate.d.ts.map +1 -1
  233. package/dist/shared/contracts/collection-types.d.ts +1 -0
  234. package/dist/shared/contracts/components.d.ts +1 -0
  235. package/dist/shared/contracts/content-types.d.ts +1 -0
  236. package/dist/shared/contracts/history-versions.d.ts +1 -0
  237. package/dist/shared/contracts/index.d.ts +1 -0
  238. package/dist/shared/contracts/init.d.ts +1 -0
  239. package/dist/shared/contracts/preview.d.ts +1 -0
  240. package/dist/shared/contracts/relations.d.ts +2 -1
  241. package/dist/shared/contracts/relations.d.ts.map +1 -1
  242. package/dist/shared/contracts/review-workflows.d.ts +1 -0
  243. package/dist/shared/contracts/single-types.d.ts +1 -0
  244. package/dist/shared/contracts/uid.d.ts +1 -0
  245. package/dist/shared/index.d.ts +1 -0
  246. package/dist/shared/index.js +24 -35
  247. package/dist/shared/index.js.map +1 -1
  248. package/dist/shared/index.mjs +25 -34
  249. package/dist/shared/index.mjs.map +1 -1
  250. package/package.json +10 -13
  251. package/dist/admin/chunks/CardDragPreview-DwuraT0K.js +0 -80
  252. package/dist/admin/chunks/CardDragPreview-DwuraT0K.js.map +0 -1
  253. package/dist/admin/chunks/CardDragPreview-_dubYgXO.js +0 -82
  254. package/dist/admin/chunks/CardDragPreview-_dubYgXO.js.map +0 -1
  255. package/dist/admin/chunks/ComponentConfigurationPage-Co2eC_-C.js +0 -276
  256. package/dist/admin/chunks/ComponentConfigurationPage-Co2eC_-C.js.map +0 -1
  257. package/dist/admin/chunks/ComponentConfigurationPage-Dj1bNvEF.js +0 -298
  258. package/dist/admin/chunks/ComponentConfigurationPage-Dj1bNvEF.js.map +0 -1
  259. package/dist/admin/chunks/ComponentIcon-BZcTc4rj.js +0 -153
  260. package/dist/admin/chunks/ComponentIcon-BZcTc4rj.js.map +0 -1
  261. package/dist/admin/chunks/ComponentIcon-C-EjOUPA.js +0 -176
  262. package/dist/admin/chunks/ComponentIcon-C-EjOUPA.js.map +0 -1
  263. package/dist/admin/chunks/EditConfigurationPage-Dm5woBp9.js +0 -180
  264. package/dist/admin/chunks/EditConfigurationPage-Dm5woBp9.js.map +0 -1
  265. package/dist/admin/chunks/EditConfigurationPage-zd9OLaVh.js +0 -158
  266. package/dist/admin/chunks/EditConfigurationPage-zd9OLaVh.js.map +0 -1
  267. package/dist/admin/chunks/EditViewPage-DsBKmSPb.js +0 -337
  268. package/dist/admin/chunks/EditViewPage-DsBKmSPb.js.map +0 -1
  269. package/dist/admin/chunks/EditViewPage-kAIaYTg0.js +0 -314
  270. package/dist/admin/chunks/EditViewPage-kAIaYTg0.js.map +0 -1
  271. package/dist/admin/chunks/FieldTypeIcon-BY6MrVF4.js +0 -56
  272. package/dist/admin/chunks/FieldTypeIcon-BY6MrVF4.js.map +0 -1
  273. package/dist/admin/chunks/FieldTypeIcon-Bxh-7Jin.js +0 -58
  274. package/dist/admin/chunks/FieldTypeIcon-Bxh-7Jin.js.map +0 -1
  275. package/dist/admin/chunks/Form-BO69oITe.js +0 -955
  276. package/dist/admin/chunks/Form-BO69oITe.js.map +0 -1
  277. package/dist/admin/chunks/Form-BPIhJKyf.js +0 -978
  278. package/dist/admin/chunks/Form-BPIhJKyf.js.map +0 -1
  279. package/dist/admin/chunks/History-BzvpM-Gw.js +0 -1357
  280. package/dist/admin/chunks/History-BzvpM-Gw.js.map +0 -1
  281. package/dist/admin/chunks/History-DBQ96jv2.js +0 -1380
  282. package/dist/admin/chunks/History-DBQ96jv2.js.map +0 -1
  283. package/dist/admin/chunks/Input-BlDcbhUC.js +0 -6755
  284. package/dist/admin/chunks/Input-BlDcbhUC.js.map +0 -1
  285. package/dist/admin/chunks/Input-Dh1MtWno.js +0 -6786
  286. package/dist/admin/chunks/Input-Dh1MtWno.js.map +0 -1
  287. package/dist/admin/chunks/ListConfigurationPage-8d3BsQIr.js +0 -818
  288. package/dist/admin/chunks/ListConfigurationPage-8d3BsQIr.js.map +0 -1
  289. package/dist/admin/chunks/ListConfigurationPage-DK0ARecn.js +0 -795
  290. package/dist/admin/chunks/ListConfigurationPage-DK0ARecn.js.map +0 -1
  291. package/dist/admin/chunks/ListViewPage-BF2q7N6W.js +0 -1132
  292. package/dist/admin/chunks/ListViewPage-BF2q7N6W.js.map +0 -1
  293. package/dist/admin/chunks/ListViewPage-CS1ED-vI.js +0 -1154
  294. package/dist/admin/chunks/ListViewPage-CS1ED-vI.js.map +0 -1
  295. package/dist/admin/chunks/NoContentTypePage-C5Qxz3I4.js +0 -59
  296. package/dist/admin/chunks/NoContentTypePage-C5Qxz3I4.js.map +0 -1
  297. package/dist/admin/chunks/NoContentTypePage-DjdXr1-j.js +0 -57
  298. package/dist/admin/chunks/NoContentTypePage-DjdXr1-j.js.map +0 -1
  299. package/dist/admin/chunks/NoPermissionsPage-BUwtKUEP.js +0 -36
  300. package/dist/admin/chunks/NoPermissionsPage-BUwtKUEP.js.map +0 -1
  301. package/dist/admin/chunks/NoPermissionsPage-C5dC0MtL.js +0 -38
  302. package/dist/admin/chunks/NoPermissionsPage-C5dC0MtL.js.map +0 -1
  303. package/dist/admin/chunks/Preview-C9kXTY6C.js +0 -531
  304. package/dist/admin/chunks/Preview-C9kXTY6C.js.map +0 -1
  305. package/dist/admin/chunks/Preview-DBvmhR7Q.js +0 -553
  306. package/dist/admin/chunks/Preview-DBvmhR7Q.js.map +0 -1
  307. package/dist/admin/chunks/Relations-Cn0atFpd.js +0 -827
  308. package/dist/admin/chunks/Relations-Cn0atFpd.js.map +0 -1
  309. package/dist/admin/chunks/Relations-XHxDKEvT.js +0 -853
  310. package/dist/admin/chunks/Relations-XHxDKEvT.js.map +0 -1
  311. package/dist/admin/chunks/ar-DckYq_WK.js +0 -222
  312. package/dist/admin/chunks/ar-DeQBSsfl.js +0 -227
  313. package/dist/admin/chunks/ca-ClDTvatJ.js +0 -202
  314. package/dist/admin/chunks/ca-DviY7mRj.js +0 -197
  315. package/dist/admin/chunks/cs-BJFxwIWj.js +0 -126
  316. package/dist/admin/chunks/cs-C7OSYFQ7.js +0 -122
  317. package/dist/admin/chunks/de-5QRlDHyR.js +0 -195
  318. package/dist/admin/chunks/de-CbImAUA5.js +0 -200
  319. package/dist/admin/chunks/en-C1CjdAtC.js +0 -313
  320. package/dist/admin/chunks/en-LfhocNG2.js +0 -308
  321. package/dist/admin/chunks/es-C8vLuvZL.js +0 -197
  322. package/dist/admin/chunks/es-DkoWSExG.js +0 -192
  323. package/dist/admin/chunks/eu-BG1xX7HK.js +0 -198
  324. package/dist/admin/chunks/eu-BG1xX7HK.js.map +0 -1
  325. package/dist/admin/chunks/eu-BJW3AvXu.js +0 -203
  326. package/dist/admin/chunks/eu-BJW3AvXu.js.map +0 -1
  327. package/dist/admin/chunks/fr-CFdRaRVj.js +0 -215
  328. package/dist/admin/chunks/fr-CFdRaRVj.js.map +0 -1
  329. package/dist/admin/chunks/fr-gQSilC7w.js +0 -220
  330. package/dist/admin/chunks/fr-gQSilC7w.js.map +0 -1
  331. package/dist/admin/chunks/gu-D5MMMXRs.js +0 -196
  332. package/dist/admin/chunks/gu-D5MMMXRs.js.map +0 -1
  333. package/dist/admin/chunks/gu-DPU4wyx7.js +0 -201
  334. package/dist/admin/chunks/gu-DPU4wyx7.js.map +0 -1
  335. package/dist/admin/chunks/hi-Dp4omeBb.js +0 -201
  336. package/dist/admin/chunks/hi-Dp4omeBb.js.map +0 -1
  337. package/dist/admin/chunks/hi-lp17SCjr.js +0 -196
  338. package/dist/admin/chunks/hi-lp17SCjr.js.map +0 -1
  339. package/dist/admin/chunks/hooks-D-sOYd1s.js.map +0 -1
  340. package/dist/admin/chunks/hooks-DMvik5y_.js +0 -7
  341. package/dist/admin/chunks/hooks-DMvik5y_.js.map +0 -1
  342. package/dist/admin/chunks/hu-CLka1U2C.js +0 -198
  343. package/dist/admin/chunks/hu-CLka1U2C.js.map +0 -1
  344. package/dist/admin/chunks/hu-CtFJuhTd.js +0 -203
  345. package/dist/admin/chunks/hu-CtFJuhTd.js.map +0 -1
  346. package/dist/admin/chunks/id-D7V5S1rB.js +0 -161
  347. package/dist/admin/chunks/id-USfY9m1g.js +0 -156
  348. package/dist/admin/chunks/id-USfY9m1g.js.map +0 -1
  349. package/dist/admin/chunks/index-BczuAULz.js +0 -5416
  350. package/dist/admin/chunks/index-BczuAULz.js.map +0 -1
  351. package/dist/admin/chunks/index-BkyR-Bnu.js +0 -5350
  352. package/dist/admin/chunks/index-BkyR-Bnu.js.map +0 -1
  353. package/dist/admin/chunks/it-BAHrwmYS.js +0 -158
  354. package/dist/admin/chunks/it-CQFpa_Dc.js +0 -163
  355. package/dist/admin/chunks/ja-BWKmBJFT.js +0 -192
  356. package/dist/admin/chunks/ja-BWKmBJFT.js.map +0 -1
  357. package/dist/admin/chunks/ja-jdQM-B79.js +0 -197
  358. package/dist/admin/chunks/ja-jdQM-B79.js.map +0 -1
  359. package/dist/admin/chunks/ko-CgADGBNt.js +0 -191
  360. package/dist/admin/chunks/ko-CgADGBNt.js.map +0 -1
  361. package/dist/admin/chunks/ko-k46sEyzt.js +0 -196
  362. package/dist/admin/chunks/ko-k46sEyzt.js.map +0 -1
  363. package/dist/admin/chunks/layout-DcDoRT8g.js +0 -618
  364. package/dist/admin/chunks/layout-DcDoRT8g.js.map +0 -1
  365. package/dist/admin/chunks/layout-fghBgRgX.js +0 -598
  366. package/dist/admin/chunks/layout-fghBgRgX.js.map +0 -1
  367. package/dist/admin/chunks/ml-CnhCfOn_.js +0 -196
  368. package/dist/admin/chunks/ml-CnhCfOn_.js.map +0 -1
  369. package/dist/admin/chunks/ml-DqxPwODx.js +0 -201
  370. package/dist/admin/chunks/ml-DqxPwODx.js.map +0 -1
  371. package/dist/admin/chunks/ms-Bh09NFff.js +0 -140
  372. package/dist/admin/chunks/ms-CvSC0OdG.js +0 -145
  373. package/dist/admin/chunks/nl-BEubhS8C.js +0 -203
  374. package/dist/admin/chunks/nl-BEubhS8C.js.map +0 -1
  375. package/dist/admin/chunks/nl-C8HYflTc.js +0 -198
  376. package/dist/admin/chunks/nl-C8HYflTc.js.map +0 -1
  377. package/dist/admin/chunks/objects-C3EebVVe.js +0 -76
  378. package/dist/admin/chunks/objects-C3EebVVe.js.map +0 -1
  379. package/dist/admin/chunks/objects-wl73iEma.js +0 -73
  380. package/dist/admin/chunks/objects-wl73iEma.js.map +0 -1
  381. package/dist/admin/chunks/pl-DWhGDzmM.js +0 -200
  382. package/dist/admin/chunks/pl-DWhGDzmM.js.map +0 -1
  383. package/dist/admin/chunks/pl-MFCZJZuZ.js +0 -195
  384. package/dist/admin/chunks/pl-MFCZJZuZ.js.map +0 -1
  385. package/dist/admin/chunks/pt-BR-CPtAXD-4.js +0 -202
  386. package/dist/admin/chunks/pt-BR-CPtAXD-4.js.map +0 -1
  387. package/dist/admin/chunks/pt-BR-CcotyBGJ.js +0 -197
  388. package/dist/admin/chunks/pt-BoPxN80n.js +0 -96
  389. package/dist/admin/chunks/pt-BoPxN80n.js.map +0 -1
  390. package/dist/admin/chunks/pt-HbmgeiYO.js +0 -93
  391. package/dist/admin/chunks/pt-HbmgeiYO.js.map +0 -1
  392. package/dist/admin/chunks/relations-CgaydhiM.js +0 -178
  393. package/dist/admin/chunks/relations-CgaydhiM.js.map +0 -1
  394. package/dist/admin/chunks/relations-DPVgU_rq.js +0 -173
  395. package/dist/admin/chunks/relations-DPVgU_rq.js.map +0 -1
  396. package/dist/admin/chunks/ru-C0op0ALG.js +0 -232
  397. package/dist/admin/chunks/ru-C0op0ALG.js.map +0 -1
  398. package/dist/admin/chunks/ru-CB4BUyQp.js +0 -230
  399. package/dist/admin/chunks/sa-B_FuPyMw.js +0 -201
  400. package/dist/admin/chunks/sa-B_FuPyMw.js.map +0 -1
  401. package/dist/admin/chunks/sa-n_aPA-pU.js +0 -196
  402. package/dist/admin/chunks/sa-n_aPA-pU.js.map +0 -1
  403. package/dist/admin/chunks/sk-D_iXML2C.js +0 -203
  404. package/dist/admin/chunks/sk-D_iXML2C.js.map +0 -1
  405. package/dist/admin/chunks/sk-tn_BDjE2.js +0 -198
  406. package/dist/admin/chunks/sk-tn_BDjE2.js.map +0 -1
  407. package/dist/admin/chunks/sv-BstBC1Yp.js +0 -203
  408. package/dist/admin/chunks/sv-BstBC1Yp.js.map +0 -1
  409. package/dist/admin/chunks/sv-cq4ZrQRd.js +0 -198
  410. package/dist/admin/chunks/sv-cq4ZrQRd.js.map +0 -1
  411. package/dist/admin/chunks/th-lXoOCqPC.js +0 -149
  412. package/dist/admin/chunks/th-lXoOCqPC.js.map +0 -1
  413. package/dist/admin/chunks/th-mUH7hEtc.js +0 -144
  414. package/dist/admin/chunks/th-mUH7hEtc.js.map +0 -1
  415. package/dist/admin/chunks/tr-CkS6sLIE.js +0 -200
  416. package/dist/admin/chunks/tr-CkS6sLIE.js.map +0 -1
  417. package/dist/admin/chunks/tr-Yt38daxh.js +0 -195
  418. package/dist/admin/chunks/tr-Yt38daxh.js.map +0 -1
  419. package/dist/admin/chunks/uk-B24MoTVg.js +0 -145
  420. package/dist/admin/chunks/uk-B24MoTVg.js.map +0 -1
  421. package/dist/admin/chunks/uk-Cpgmm7gE.js +0 -140
  422. package/dist/admin/chunks/uk-Cpgmm7gE.js.map +0 -1
  423. package/dist/admin/chunks/useDragAndDrop-HYwNDExe.js +0 -247
  424. package/dist/admin/chunks/useDragAndDrop-HYwNDExe.js.map +0 -1
  425. package/dist/admin/chunks/useDragAndDrop-gcqEJMnO.js +0 -271
  426. package/dist/admin/chunks/useDragAndDrop-gcqEJMnO.js.map +0 -1
  427. package/dist/admin/chunks/usePrev-Bjw2dhmq.js +0 -18
  428. package/dist/admin/chunks/usePrev-Bjw2dhmq.js.map +0 -1
  429. package/dist/admin/chunks/usePrev-DIYl-IAL.js +0 -21
  430. package/dist/admin/chunks/usePrev-DIYl-IAL.js.map +0 -1
  431. package/dist/admin/chunks/vi-BGr1X_HZ.js +0 -112
  432. package/dist/admin/chunks/vi-BGr1X_HZ.js.map +0 -1
  433. package/dist/admin/chunks/vi-CvBGlTjr.js +0 -108
  434. package/dist/admin/chunks/zh-BmF-sHaT.js +0 -205
  435. package/dist/admin/chunks/zh-BmF-sHaT.js.map +0 -1
  436. package/dist/admin/chunks/zh-DwFu_Kfj.js +0 -210
  437. package/dist/admin/chunks/zh-DwFu_Kfj.js.map +0 -1
  438. package/dist/admin/chunks/zh-Hans-CI0HKio3.js +0 -934
  439. package/dist/admin/chunks/zh-Hans-JVK9x7xr.js +0 -953
@@ -0,0 +1,877 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("react/jsx-runtime");
4
+ const React = require("react");
5
+ const strapiAdmin = require("@strapi/admin/strapi-admin");
6
+ const designSystem = require("@strapi/design-system");
7
+ const Icons = require("@strapi/icons");
8
+ const isEqual = require("lodash/isEqual");
9
+ const qs = require("qs");
10
+ const reactIntl = require("react-intl");
11
+ const reactRouterDom = require("react-router-dom");
12
+ const styledComponents = require("styled-components");
13
+ const index = require("./index-EXJvmn4t.js");
14
+ const usePrev = require("./usePrev-D5J_2fEu.js");
15
+ const isEmpty = require("lodash/isEmpty");
16
+ const parseISO = require("date-fns/parseISO");
17
+ const toString = require("lodash/toString");
18
+ const relations = require("./relations-Ai6Izh7h.js");
19
+ const hooks = require("./hooks-BAaaKPS_.js");
20
+ const _interopDefault = (e) => e && e.__esModule ? e : { default: e };
21
+ function _interopNamespace(e) {
22
+ if (e && e.__esModule) return e;
23
+ const n = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } });
24
+ if (e) {
25
+ for (const k in e) {
26
+ if (k !== "default") {
27
+ const d = Object.getOwnPropertyDescriptor(e, k);
28
+ Object.defineProperty(n, k, d.get ? d : {
29
+ enumerable: true,
30
+ get: () => e[k]
31
+ });
32
+ }
33
+ }
34
+ }
35
+ n.default = e;
36
+ return Object.freeze(n);
37
+ }
38
+ const React__namespace = /* @__PURE__ */ _interopNamespace(React);
39
+ const isEqual__default = /* @__PURE__ */ _interopDefault(isEqual);
40
+ const isEmpty__default = /* @__PURE__ */ _interopDefault(isEmpty);
41
+ const parseISO__default = /* @__PURE__ */ _interopDefault(parseISO);
42
+ const toString__default = /* @__PURE__ */ _interopDefault(toString);
43
+ const NOT_ALLOWED_FILTERS = [
44
+ "json",
45
+ "component",
46
+ "media",
47
+ "richtext",
48
+ "dynamiczone",
49
+ "password",
50
+ "blocks"
51
+ ];
52
+ const DEFAULT_ALLOWED_FILTERS = ["createdAt", "updatedAt"];
53
+ const USER_FILTER_ATTRIBUTES = [...index.CREATOR_FIELDS, "strapi_assignee"];
54
+ const FiltersImpl = ({ disabled, schema }) => {
55
+ const { attributes, uid: model, options } = schema;
56
+ const { formatMessage, locale } = reactIntl.useIntl();
57
+ const { trackUsage } = strapiAdmin.useTracking();
58
+ const allPermissions = strapiAdmin.useAuth("FiltersImpl", (state) => state.permissions);
59
+ const [{ query }] = strapiAdmin.useQueryParams();
60
+ const { schemas } = index.useContentTypeSchema();
61
+ const canReadAdminUsers = React__namespace.useMemo(
62
+ () => allPermissions.filter(
63
+ (permission) => permission.action === "admin::users.read" && permission.subject === null
64
+ ).length > 0,
65
+ [allPermissions]
66
+ );
67
+ const selectedUserIds = (query?.filters?.$and ?? []).reduce((acc, filter) => {
68
+ const [key, value] = Object.entries(filter)[0];
69
+ if (typeof value.id !== "object") {
70
+ return acc;
71
+ }
72
+ const id = value.id.$eq || value.id.$ne;
73
+ if (id && USER_FILTER_ATTRIBUTES.includes(key) && !acc.includes(id)) {
74
+ acc.push(id);
75
+ }
76
+ return acc;
77
+ }, []);
78
+ const { data: userData, isLoading: isLoadingAdminUsers } = strapiAdmin.useAdminUsers(
79
+ { filters: { id: { $in: selectedUserIds } } },
80
+ {
81
+ // fetch the list of admin users only if the filter contains users and the
82
+ // current user has permissions to display users
83
+ skip: selectedUserIds.length === 0 || !canReadAdminUsers
84
+ }
85
+ );
86
+ const { users = [] } = userData ?? {};
87
+ const { metadata } = index.useGetContentTypeConfigurationQuery(model, {
88
+ selectFromResult: ({ data }) => ({ metadata: data?.contentType.metadatas ?? {} })
89
+ });
90
+ const formatter = designSystem.useCollator(locale, {
91
+ sensitivity: "base"
92
+ });
93
+ const displayedFilters = React__namespace.useMemo(() => {
94
+ const [{ properties: { fields = [] } = { fields: [] } }] = allPermissions.filter(
95
+ (permission) => permission.action === "plugin::content-manager.explorer.read" && permission.subject === model
96
+ );
97
+ const allowedFields = fields.filter((field) => {
98
+ const attribute = attributes[field] ?? {};
99
+ return attribute.type && !NOT_ALLOWED_FILTERS.includes(attribute.type);
100
+ });
101
+ return [
102
+ "id",
103
+ ...allowedFields,
104
+ ...DEFAULT_ALLOWED_FILTERS,
105
+ ...canReadAdminUsers ? index.CREATOR_FIELDS : []
106
+ ].map((name) => {
107
+ const attribute = attributes[name];
108
+ if (NOT_ALLOWED_FILTERS.includes(attribute.type)) {
109
+ return null;
110
+ }
111
+ const { mainField: mainFieldName = "", label } = metadata[name].list;
112
+ let filter = {
113
+ name,
114
+ label: label ?? "",
115
+ mainField: index.getMainField(attribute, mainFieldName, { schemas, components: {} }),
116
+ // @ts-expect-error – TODO: this is filtered out above in the `allowedFields` call but TS complains, is there a better way to solve this?
117
+ type: attribute.type
118
+ };
119
+ if (attribute.type === "relation" && "target" in attribute && attribute.target === "admin::user") {
120
+ filter = {
121
+ ...filter,
122
+ input: AdminUsersFilter,
123
+ options: users.map((user) => ({
124
+ label: index.getDisplayName(user),
125
+ value: user.id.toString()
126
+ })),
127
+ operators: [
128
+ {
129
+ label: formatMessage({
130
+ id: "components.FilterOptions.FILTER_TYPES.$eq",
131
+ defaultMessage: "is"
132
+ }),
133
+ value: "$eq"
134
+ },
135
+ {
136
+ label: formatMessage({
137
+ id: "components.FilterOptions.FILTER_TYPES.$ne",
138
+ defaultMessage: "is not"
139
+ }),
140
+ value: "$ne"
141
+ }
142
+ ],
143
+ mainField: {
144
+ name: "id",
145
+ type: "integer"
146
+ }
147
+ };
148
+ }
149
+ if (attribute.type === "enumeration") {
150
+ filter = {
151
+ ...filter,
152
+ options: attribute.enum.map((value) => ({
153
+ label: value,
154
+ value
155
+ }))
156
+ };
157
+ }
158
+ return filter;
159
+ }).filter(Boolean).toSorted((a, b) => formatter.compare(a.label, b.label));
160
+ }, [
161
+ allPermissions,
162
+ canReadAdminUsers,
163
+ model,
164
+ attributes,
165
+ metadata,
166
+ schemas,
167
+ users,
168
+ formatMessage,
169
+ formatter
170
+ ]);
171
+ const onOpenChange = (isOpen) => {
172
+ if (isOpen) {
173
+ trackUsage("willFilterEntries");
174
+ }
175
+ };
176
+ const handleFilterChange = (data) => {
177
+ const attribute = attributes[data.name];
178
+ if (attribute) {
179
+ trackUsage("didFilterEntries", {
180
+ useRelation: attribute.type === "relation"
181
+ });
182
+ }
183
+ };
184
+ return /* @__PURE__ */ jsxRuntime.jsxs(
185
+ strapiAdmin.Filters.Root,
186
+ {
187
+ disabled,
188
+ options: displayedFilters,
189
+ onOpenChange,
190
+ onChange: handleFilterChange,
191
+ children: [
192
+ /* @__PURE__ */ jsxRuntime.jsx(strapiAdmin.Filters.Trigger, {}),
193
+ /* @__PURE__ */ jsxRuntime.jsx(strapiAdmin.Filters.Popover, {}),
194
+ /* @__PURE__ */ jsxRuntime.jsx(strapiAdmin.Filters.List, {})
195
+ ]
196
+ }
197
+ );
198
+ };
199
+ const AdminUsersFilter = ({ name }) => {
200
+ const [pageSize, setPageSize] = React__namespace.useState(10);
201
+ const [search, setSearch] = React__namespace.useState("");
202
+ const { formatMessage } = reactIntl.useIntl();
203
+ const debouncedSearch = usePrev.useDebounce(search, 300);
204
+ const { data, isLoading } = strapiAdmin.useAdminUsers({
205
+ pageSize,
206
+ _q: debouncedSearch
207
+ });
208
+ const field = strapiAdmin.useField(name);
209
+ const handleOpenChange = (isOpen) => {
210
+ if (!isOpen) {
211
+ setPageSize(10);
212
+ }
213
+ };
214
+ const { users = [], pagination } = data ?? {};
215
+ const { pageCount = 1, page = 1 } = pagination ?? {};
216
+ return /* @__PURE__ */ jsxRuntime.jsx(
217
+ designSystem.Combobox,
218
+ {
219
+ value: field.value,
220
+ "aria-label": formatMessage({
221
+ id: "content-manager.components.Filters.usersSelect.label",
222
+ defaultMessage: "Search and select a user to filter"
223
+ }),
224
+ onOpenChange: handleOpenChange,
225
+ onChange: (value) => field.onChange(name, value),
226
+ loading: isLoading,
227
+ onLoadMore: () => setPageSize(pageSize + 10),
228
+ hasMoreItems: page < pageCount,
229
+ onInputChange: (e) => {
230
+ setSearch(e.currentTarget.value);
231
+ },
232
+ children: users.map((user) => {
233
+ return /* @__PURE__ */ jsxRuntime.jsx(designSystem.ComboboxOption, { value: user.id.toString(), children: index.getDisplayName(user) }, user.id);
234
+ })
235
+ }
236
+ );
237
+ };
238
+ const CellValue = ({ type, value }) => {
239
+ const { formatDate, formatTime, formatNumber } = reactIntl.useIntl();
240
+ let formattedValue = value;
241
+ if (type === "date") {
242
+ formattedValue = formatDate(parseISO__default.default(value), { dateStyle: "full" });
243
+ }
244
+ if (type === "datetime") {
245
+ formattedValue = formatDate(value, { dateStyle: "full", timeStyle: "short" });
246
+ }
247
+ if (type === "time") {
248
+ const [hour, minute, second] = value.split(":");
249
+ const date = /* @__PURE__ */ new Date();
250
+ date.setHours(hour);
251
+ date.setMinutes(minute);
252
+ date.setSeconds(second);
253
+ formattedValue = formatTime(date, {
254
+ timeStyle: "short"
255
+ });
256
+ }
257
+ if (["float", "decimal"].includes(type)) {
258
+ formattedValue = formatNumber(value, {
259
+ // Should be kept in sync with the corresponding value
260
+ // in the design-system/NumberInput: https://github.com/strapi/design-system/blob/main/packages/strapi-design-system/src/NumberInput/NumberInput.js#L53
261
+ maximumFractionDigits: 20
262
+ });
263
+ }
264
+ if (["integer", "biginteger"].includes(type)) {
265
+ formattedValue = formatNumber(value, { maximumFractionDigits: 0 });
266
+ }
267
+ return toString__default.default(formattedValue);
268
+ };
269
+ const SingleComponent = ({ content, mainField }) => {
270
+ if (!mainField) {
271
+ return null;
272
+ }
273
+ return /* @__PURE__ */ jsxRuntime.jsx(designSystem.Tooltip, { label: content[mainField.name], children: /* @__PURE__ */ jsxRuntime.jsx(designSystem.Typography, { maxWidth: "25rem", textColor: "neutral800", ellipsis: true, children: /* @__PURE__ */ jsxRuntime.jsx(CellValue, { type: mainField.type, value: content[mainField.name] }) }) });
274
+ };
275
+ const RepeatableComponent = ({ content, mainField }) => {
276
+ const { formatMessage } = reactIntl.useIntl();
277
+ if (!mainField) {
278
+ return null;
279
+ }
280
+ return /* @__PURE__ */ jsxRuntime.jsxs(designSystem.Menu.Root, { children: [
281
+ /* @__PURE__ */ jsxRuntime.jsxs(designSystem.Menu.Trigger, { onClick: (e) => e.stopPropagation(), children: [
282
+ /* @__PURE__ */ jsxRuntime.jsx(designSystem.Badge, { children: content.length }),
283
+ formatMessage(
284
+ {
285
+ id: "content-manager.containers.list.items",
286
+ defaultMessage: "{number, plural, =0 {items} one {item} other {items}}"
287
+ },
288
+ { number: content.length }
289
+ )
290
+ ] }),
291
+ /* @__PURE__ */ jsxRuntime.jsx(designSystem.Menu.Content, { children: content.map((item) => /* @__PURE__ */ jsxRuntime.jsx(designSystem.Menu.Item, { disabled: true, children: /* @__PURE__ */ jsxRuntime.jsx(designSystem.Typography, { maxWidth: "50rem", ellipsis: true, children: /* @__PURE__ */ jsxRuntime.jsx(CellValue, { type: mainField.type, value: item[mainField.name] }) }) }, item.id)) })
292
+ ] });
293
+ };
294
+ const getFileExtension = (ext) => ext && ext[0] === "." ? ext.substring(1) : ext;
295
+ const MediaSingle = ({ url, mime, alternativeText, name, ext, formats }) => {
296
+ const fileURL = usePrev.prefixFileUrlWithBackendUrl(url);
297
+ if (mime.includes("image")) {
298
+ const thumbnail = formats?.thumbnail?.url;
299
+ const mediaURL = usePrev.prefixFileUrlWithBackendUrl(thumbnail) || fileURL;
300
+ return /* @__PURE__ */ jsxRuntime.jsx(
301
+ designSystem.Avatar.Item,
302
+ {
303
+ src: mediaURL,
304
+ alt: alternativeText || name,
305
+ fallback: alternativeText || name,
306
+ preview: true
307
+ }
308
+ );
309
+ }
310
+ const fileExtension = getFileExtension(ext);
311
+ const fileName = name.length > 100 ? `${name.substring(0, 100)}...` : name;
312
+ return /* @__PURE__ */ jsxRuntime.jsx(designSystem.Tooltip, { description: fileName, children: /* @__PURE__ */ jsxRuntime.jsx(FileWrapper, { children: fileExtension }) });
313
+ };
314
+ const FileWrapper = ({ children }) => {
315
+ return /* @__PURE__ */ jsxRuntime.jsx(
316
+ designSystem.Flex,
317
+ {
318
+ tag: "span",
319
+ position: "relative",
320
+ borderRadius: "50%",
321
+ width: "26px",
322
+ height: "26px",
323
+ borderColor: "neutral200",
324
+ background: "neutral150",
325
+ paddingLeft: "1px",
326
+ justifyContent: "center",
327
+ alignItems: "center",
328
+ children: /* @__PURE__ */ jsxRuntime.jsx(FileTypography, { variant: "sigma", textColor: "neutral600", children })
329
+ }
330
+ );
331
+ };
332
+ const FileTypography = styledComponents.styled(designSystem.Typography)`
333
+ font-size: 0.9rem;
334
+ line-height: 0.9rem;
335
+ `;
336
+ const MediaMultiple = ({ content }) => {
337
+ return /* @__PURE__ */ jsxRuntime.jsx(designSystem.Avatar.Group, { children: content.map((file, index2) => {
338
+ const key = `${file.id}${index2}`;
339
+ if (index2 === 3) {
340
+ const remainingFiles = `+${content.length - 3}`;
341
+ return /* @__PURE__ */ jsxRuntime.jsx(FileWrapper, { children: remainingFiles }, key);
342
+ }
343
+ if (index2 > 3) {
344
+ return null;
345
+ }
346
+ return /* @__PURE__ */ jsxRuntime.jsx(MediaSingle, { ...file }, key);
347
+ }) });
348
+ };
349
+ const RelationSingle = ({ mainField, content }) => {
350
+ return /* @__PURE__ */ jsxRuntime.jsx(designSystem.Typography, { maxWidth: "50rem", textColor: "neutral800", ellipsis: true, children: relations.getRelationLabel(content, mainField) });
351
+ };
352
+ const RelationMultiple = ({ mainField, content, rowId, name }) => {
353
+ const { model } = index.useDoc();
354
+ const { formatMessage } = reactIntl.useIntl();
355
+ const { notifyStatus } = designSystem.useNotifyAT();
356
+ const [isOpen, setIsOpen] = React__namespace.useState(false);
357
+ const [targetField] = name.split(".");
358
+ const { data, isLoading } = relations.useGetRelationsQuery(
359
+ {
360
+ model,
361
+ id: rowId,
362
+ targetField
363
+ },
364
+ {
365
+ skip: !isOpen,
366
+ refetchOnMountOrArgChange: true
367
+ }
368
+ );
369
+ const contentCount = Array.isArray(content) ? content.length : content.count;
370
+ React__namespace.useEffect(() => {
371
+ if (data) {
372
+ notifyStatus(
373
+ formatMessage({
374
+ id: index.getTranslation("DynamicTable.relation-loaded"),
375
+ defaultMessage: "Relations have been loaded"
376
+ })
377
+ );
378
+ }
379
+ }, [data, formatMessage, notifyStatus]);
380
+ return /* @__PURE__ */ jsxRuntime.jsxs(designSystem.Menu.Root, { onOpenChange: (isOpen2) => setIsOpen(isOpen2), children: [
381
+ /* @__PURE__ */ jsxRuntime.jsx(designSystem.Menu.Trigger, { onClick: (e) => e.stopPropagation(), children: /* @__PURE__ */ jsxRuntime.jsx(designSystem.Typography, { style: { cursor: "pointer" }, textColor: "neutral800", fontWeight: "regular", children: contentCount > 0 ? formatMessage(
382
+ {
383
+ id: "content-manager.containers.list.items",
384
+ defaultMessage: "{number} {number, plural, =0 {items} one {item} other {items}}"
385
+ },
386
+ { number: contentCount }
387
+ ) : "-" }) }),
388
+ /* @__PURE__ */ jsxRuntime.jsxs(designSystem.Menu.Content, { children: [
389
+ isLoading && /* @__PURE__ */ jsxRuntime.jsx(designSystem.Menu.Item, { disabled: true, children: /* @__PURE__ */ jsxRuntime.jsx(designSystem.Loader, { small: true, children: formatMessage({
390
+ id: index.getTranslation("ListViewTable.relation-loading"),
391
+ defaultMessage: "Relations are loading"
392
+ }) }) }),
393
+ data?.results && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
394
+ data.results.map((entry) => /* @__PURE__ */ jsxRuntime.jsx(designSystem.Menu.Item, { disabled: true, children: /* @__PURE__ */ jsxRuntime.jsx(designSystem.Typography, { maxWidth: "50rem", ellipsis: true, children: relations.getRelationLabel(entry, mainField) }) }, entry.documentId)),
395
+ data?.pagination && data?.pagination.total > 10 && /* @__PURE__ */ jsxRuntime.jsx(
396
+ designSystem.Menu.Item,
397
+ {
398
+ "aria-disabled": true,
399
+ "aria-label": formatMessage({
400
+ id: index.getTranslation("ListViewTable.relation-more"),
401
+ defaultMessage: "This relation contains more entities than displayed"
402
+ }),
403
+ children: /* @__PURE__ */ jsxRuntime.jsx(designSystem.Typography, { children: "…" })
404
+ }
405
+ )
406
+ ] })
407
+ ] })
408
+ ] });
409
+ };
410
+ const CellContent = ({ content, mainField, attribute, rowId, name }) => {
411
+ if (!hasContent(content, mainField, attribute)) {
412
+ return /* @__PURE__ */ jsxRuntime.jsx(
413
+ designSystem.Typography,
414
+ {
415
+ textColor: "neutral800",
416
+ paddingLeft: attribute.type === "relation" ? "1.6rem" : 0,
417
+ paddingRight: attribute.type === "relation" ? "1.6rem" : 0,
418
+ children: "-"
419
+ }
420
+ );
421
+ }
422
+ switch (attribute.type) {
423
+ case "media":
424
+ if (!attribute.multiple) {
425
+ return /* @__PURE__ */ jsxRuntime.jsx(MediaSingle, { ...content });
426
+ }
427
+ return /* @__PURE__ */ jsxRuntime.jsx(MediaMultiple, { content });
428
+ case "relation": {
429
+ if (isSingleRelation(attribute.relation)) {
430
+ return /* @__PURE__ */ jsxRuntime.jsx(RelationSingle, { mainField, content });
431
+ }
432
+ return /* @__PURE__ */ jsxRuntime.jsx(RelationMultiple, { rowId, mainField, content, name });
433
+ }
434
+ case "component":
435
+ if (attribute.repeatable) {
436
+ return /* @__PURE__ */ jsxRuntime.jsx(RepeatableComponent, { mainField, content });
437
+ }
438
+ return /* @__PURE__ */ jsxRuntime.jsx(SingleComponent, { mainField, content });
439
+ case "string":
440
+ return /* @__PURE__ */ jsxRuntime.jsx(designSystem.Tooltip, { description: content, children: /* @__PURE__ */ jsxRuntime.jsx(designSystem.Typography, { maxWidth: "30rem", ellipsis: true, textColor: "neutral800", children: /* @__PURE__ */ jsxRuntime.jsx(CellValue, { type: attribute.type, value: content }) }) });
441
+ default:
442
+ return /* @__PURE__ */ jsxRuntime.jsx(designSystem.Typography, { maxWidth: "30rem", ellipsis: true, textColor: "neutral800", children: /* @__PURE__ */ jsxRuntime.jsx(CellValue, { type: attribute.type, value: content }) });
443
+ }
444
+ };
445
+ const hasContent = (content, mainField, attribute) => {
446
+ if (attribute.type === "component") {
447
+ if (attribute.repeatable || !mainField) {
448
+ return content?.length > 0;
449
+ }
450
+ const value = content?.[mainField.name];
451
+ if (mainField.name === "id" && ![void 0, null].includes(value)) {
452
+ return true;
453
+ }
454
+ return !isEmpty__default.default(value);
455
+ }
456
+ if (attribute.type === "relation") {
457
+ if (isSingleRelation(attribute.relation)) {
458
+ return !isEmpty__default.default(content);
459
+ }
460
+ if (Array.isArray(content)) {
461
+ return content.length > 0;
462
+ }
463
+ return content?.count > 0;
464
+ }
465
+ if (["integer", "decimal", "float", "number"].includes(attribute.type)) {
466
+ return typeof content === "number";
467
+ }
468
+ if (attribute.type === "boolean") {
469
+ return content !== null;
470
+ }
471
+ return !isEmpty__default.default(content);
472
+ };
473
+ const isSingleRelation = (type) => ["oneToOne", "manyToOne", "oneToOneMorph"].includes(type);
474
+ const ViewSettingsMenu = (props) => {
475
+ const permissions = hooks.useTypedSelector(
476
+ (state) => state.admin_app.permissions.contentManager?.collectionTypesConfigurations ?? []
477
+ );
478
+ const [{ query }] = strapiAdmin.useQueryParams();
479
+ const { formatMessage } = reactIntl.useIntl();
480
+ const {
481
+ allowedActions: { canConfigureView }
482
+ } = strapiAdmin.useRBAC(permissions);
483
+ return /* @__PURE__ */ jsxRuntime.jsxs(designSystem.Popover.Root, { children: [
484
+ /* @__PURE__ */ jsxRuntime.jsx(designSystem.Popover.Trigger, { children: /* @__PURE__ */ jsxRuntime.jsx(
485
+ designSystem.IconButton,
486
+ {
487
+ label: formatMessage({
488
+ id: "components.ViewSettings.tooltip",
489
+ defaultMessage: "View Settings"
490
+ }),
491
+ children: /* @__PURE__ */ jsxRuntime.jsx(Icons.Cog, {})
492
+ }
493
+ ) }),
494
+ /* @__PURE__ */ jsxRuntime.jsx(designSystem.Popover.Content, { side: "bottom", align: "end", sideOffset: 4, children: /* @__PURE__ */ jsxRuntime.jsxs(designSystem.Flex, { alignItems: "stretch", direction: "column", padding: 3, gap: 3, children: [
495
+ canConfigureView ? /* @__PURE__ */ jsxRuntime.jsx(
496
+ designSystem.LinkButton,
497
+ {
498
+ size: "S",
499
+ startIcon: /* @__PURE__ */ jsxRuntime.jsx(Icons.ListPlus, {}),
500
+ variant: "secondary",
501
+ tag: reactRouterDom.NavLink,
502
+ to: {
503
+ pathname: "configurations/list",
504
+ search: query.plugins ? qs.stringify({ plugins: query.plugins }, { encode: false }) : ""
505
+ },
506
+ children: formatMessage({
507
+ id: "app.links.configure-view",
508
+ defaultMessage: "Configure the view"
509
+ })
510
+ }
511
+ ) : null,
512
+ /* @__PURE__ */ jsxRuntime.jsx(FieldPicker, { ...props })
513
+ ] }) })
514
+ ] });
515
+ };
516
+ const FieldPicker = ({ headers = [], resetHeaders, setHeaders }) => {
517
+ const { trackUsage } = strapiAdmin.useTracking();
518
+ const { formatMessage, locale } = reactIntl.useIntl();
519
+ const { schema, model } = index.useDoc();
520
+ const { list } = index.useDocumentLayout(model);
521
+ const formatter = designSystem.useCollator(locale, {
522
+ sensitivity: "base"
523
+ });
524
+ const attributes = schema?.attributes ?? {};
525
+ const columns = Object.keys(attributes).filter((name) => index.checkIfAttributeIsDisplayable(attributes[name])).map((name) => ({
526
+ name,
527
+ label: list.metadatas[name]?.label ?? ""
528
+ })).sort((a, b) => formatter.compare(a.label, b.label));
529
+ const handleChange = (name) => {
530
+ trackUsage("didChangeDisplayedFields");
531
+ const newHeaders = headers.includes(name) ? headers.filter((header) => header !== name) : [...headers, name];
532
+ setHeaders(newHeaders);
533
+ };
534
+ const handleReset = () => {
535
+ resetHeaders();
536
+ };
537
+ return /* @__PURE__ */ jsxRuntime.jsxs(
538
+ designSystem.Flex,
539
+ {
540
+ tag: "fieldset",
541
+ direction: "column",
542
+ alignItems: "stretch",
543
+ gap: 3,
544
+ borderWidth: 0,
545
+ maxHeight: "240px",
546
+ overflow: "scroll",
547
+ children: [
548
+ /* @__PURE__ */ jsxRuntime.jsxs(designSystem.Flex, { justifyContent: "space-between", children: [
549
+ /* @__PURE__ */ jsxRuntime.jsx(designSystem.Typography, { tag: "legend", variant: "pi", fontWeight: "bold", children: formatMessage({
550
+ id: "containers.list.displayedFields",
551
+ defaultMessage: "Displayed fields"
552
+ }) }),
553
+ /* @__PURE__ */ jsxRuntime.jsx(designSystem.TextButton, { onClick: handleReset, children: formatMessage({
554
+ id: "app.components.Button.reset",
555
+ defaultMessage: "Reset"
556
+ }) })
557
+ ] }),
558
+ /* @__PURE__ */ jsxRuntime.jsx(designSystem.Flex, { direction: "column", alignItems: "stretch", children: columns.map((header) => {
559
+ const isActive = headers.includes(header.name);
560
+ return /* @__PURE__ */ jsxRuntime.jsx(
561
+ designSystem.Flex,
562
+ {
563
+ wrap: "wrap",
564
+ gap: 2,
565
+ background: isActive ? "primary100" : "transparent",
566
+ hasRadius: true,
567
+ padding: 2,
568
+ children: /* @__PURE__ */ jsxRuntime.jsx(
569
+ designSystem.Checkbox,
570
+ {
571
+ onCheckedChange: () => handleChange(header.name),
572
+ checked: isActive,
573
+ name: header.name,
574
+ children: /* @__PURE__ */ jsxRuntime.jsx(designSystem.Typography, { fontSize: 1, children: header.label })
575
+ }
576
+ )
577
+ },
578
+ header.name
579
+ );
580
+ }) })
581
+ ]
582
+ }
583
+ );
584
+ };
585
+ const { INJECT_COLUMN_IN_TABLE } = index.HOOKS;
586
+ const LayoutsHeaderCustom = styledComponents.styled(strapiAdmin.Layouts.Header)`
587
+ overflow-wrap: anywhere;
588
+ `;
589
+ const ListViewPage = () => {
590
+ const { trackUsage } = strapiAdmin.useTracking();
591
+ const navigate = reactRouterDom.useNavigate();
592
+ const { formatMessage } = reactIntl.useIntl();
593
+ const { toggleNotification } = strapiAdmin.useNotification();
594
+ const { _unstableFormatAPIError: formatAPIError } = strapiAdmin.useAPIErrorHandler(index.getTranslation);
595
+ const { collectionType, model, schema } = index.useDoc();
596
+ const { list } = index.useDocumentLayout(model);
597
+ const [displayedHeaders, setDisplayedHeaders] = React__namespace.useState([]);
598
+ const listLayout = usePrev.usePrev(list.layout);
599
+ React__namespace.useEffect(() => {
600
+ if (!isEqual__default.default(listLayout, list.layout)) {
601
+ setDisplayedHeaders(list.layout);
602
+ }
603
+ }, [list.layout, listLayout]);
604
+ const handleSetHeaders = (headers) => {
605
+ setDisplayedHeaders(
606
+ index.convertListLayoutToFieldLayouts(headers, schema.attributes, list.metadatas)
607
+ );
608
+ };
609
+ const [{ query }] = strapiAdmin.useQueryParams({
610
+ page: "1",
611
+ pageSize: list.settings.pageSize.toString(),
612
+ sort: list.settings.defaultSortBy ? `${list.settings.defaultSortBy}:${list.settings.defaultSortOrder}` : ""
613
+ });
614
+ const params = React__namespace.useMemo(() => index.buildValidParams(query), [query]);
615
+ const { data, error, isFetching } = index.useGetAllDocumentsQuery({
616
+ model,
617
+ params
618
+ });
619
+ React__namespace.useEffect(() => {
620
+ if (error) {
621
+ toggleNotification({
622
+ type: "danger",
623
+ message: formatAPIError(error)
624
+ });
625
+ }
626
+ }, [error, formatAPIError, toggleNotification]);
627
+ const { results = [], pagination } = data ?? {};
628
+ React__namespace.useEffect(() => {
629
+ if (pagination && pagination.pageCount > 0 && pagination.page > pagination.pageCount) {
630
+ navigate(
631
+ {
632
+ search: qs.stringify({
633
+ ...query,
634
+ page: pagination.pageCount
635
+ })
636
+ },
637
+ { replace: true }
638
+ );
639
+ }
640
+ }, [pagination, formatMessage, query, navigate]);
641
+ const { canCreate } = index.useDocumentRBAC("ListViewPage", ({ canCreate: canCreate2 }) => ({
642
+ canCreate: canCreate2
643
+ }));
644
+ const runHookWaterfall = strapiAdmin.useStrapiApp("ListViewPage", ({ runHookWaterfall: runHookWaterfall2 }) => runHookWaterfall2);
645
+ const tableHeaders = React__namespace.useMemo(() => {
646
+ const headers = runHookWaterfall(INJECT_COLUMN_IN_TABLE, {
647
+ displayedHeaders,
648
+ layout: list
649
+ });
650
+ const formattedHeaders = headers.displayedHeaders.map((header) => {
651
+ const translation = typeof header.label === "string" ? {
652
+ id: `content-manager.content-types.${model}.${header.name}`,
653
+ defaultMessage: header.label
654
+ } : header.label;
655
+ return {
656
+ ...header,
657
+ label: formatMessage(translation),
658
+ name: `${header.name}${header.mainField?.name ? `.${header.mainField.name}` : ""}`
659
+ };
660
+ });
661
+ if (schema?.options?.draftAndPublish) {
662
+ formattedHeaders.push({
663
+ attribute: {
664
+ type: "custom"
665
+ },
666
+ name: "status",
667
+ label: formatMessage({
668
+ id: index.getTranslation(`containers.list.table-headers.status`),
669
+ defaultMessage: "status"
670
+ }),
671
+ searchable: false,
672
+ sortable: false
673
+ });
674
+ }
675
+ return formattedHeaders;
676
+ }, [
677
+ displayedHeaders,
678
+ formatMessage,
679
+ list,
680
+ runHookWaterfall,
681
+ schema?.options?.draftAndPublish,
682
+ model
683
+ ]);
684
+ if (isFetching) {
685
+ return /* @__PURE__ */ jsxRuntime.jsx(strapiAdmin.Page.Loading, {});
686
+ }
687
+ if (error) {
688
+ return /* @__PURE__ */ jsxRuntime.jsx(strapiAdmin.Page.Error, {});
689
+ }
690
+ const contentTypeTitle = schema?.info.displayName ? formatMessage({ id: schema.info.displayName, defaultMessage: schema.info.displayName }) : formatMessage({
691
+ id: "content-manager.containers.untitled",
692
+ defaultMessage: "Untitled"
693
+ });
694
+ const handleRowClick = (id) => () => {
695
+ trackUsage("willEditEntryFromList");
696
+ navigate({
697
+ pathname: id.toString(),
698
+ search: qs.stringify({ plugins: query.plugins })
699
+ });
700
+ };
701
+ return /* @__PURE__ */ jsxRuntime.jsxs(strapiAdmin.Page.Main, { children: [
702
+ /* @__PURE__ */ jsxRuntime.jsx(strapiAdmin.Page.Title, { children: `${contentTypeTitle}` }),
703
+ /* @__PURE__ */ jsxRuntime.jsx(
704
+ LayoutsHeaderCustom,
705
+ {
706
+ primaryAction: canCreate ? /* @__PURE__ */ jsxRuntime.jsx(CreateButton, {}) : null,
707
+ subtitle: formatMessage(
708
+ {
709
+ id: index.getTranslation("pages.ListView.header-subtitle"),
710
+ defaultMessage: "{number, plural, =0 {# entries} one {# entry} other {# entries}} found"
711
+ },
712
+ { number: pagination?.total }
713
+ ),
714
+ title: contentTypeTitle,
715
+ navigationAction: /* @__PURE__ */ jsxRuntime.jsx(strapiAdmin.BackButton, {})
716
+ }
717
+ ),
718
+ /* @__PURE__ */ jsxRuntime.jsx(
719
+ strapiAdmin.Layouts.Action,
720
+ {
721
+ endActions: /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
722
+ /* @__PURE__ */ jsxRuntime.jsx(index.InjectionZone, { area: "listView.actions" }),
723
+ /* @__PURE__ */ jsxRuntime.jsx(
724
+ ViewSettingsMenu,
725
+ {
726
+ setHeaders: handleSetHeaders,
727
+ resetHeaders: () => setDisplayedHeaders(list.layout),
728
+ headers: displayedHeaders.map((header) => header.name)
729
+ }
730
+ )
731
+ ] }),
732
+ startActions: /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
733
+ list.settings.searchable && /* @__PURE__ */ jsxRuntime.jsx(
734
+ strapiAdmin.SearchInput,
735
+ {
736
+ disabled: results.length === 0,
737
+ label: formatMessage(
738
+ { id: "app.component.search.label", defaultMessage: "Search for {target}" },
739
+ { target: contentTypeTitle }
740
+ ),
741
+ placeholder: formatMessage({
742
+ id: "global.search",
743
+ defaultMessage: "Search"
744
+ }),
745
+ trackedEvent: "didSearch"
746
+ }
747
+ ),
748
+ list.settings.filterable && schema ? /* @__PURE__ */ jsxRuntime.jsx(FiltersImpl, { disabled: results.length === 0, schema }) : null
749
+ ] })
750
+ }
751
+ ),
752
+ /* @__PURE__ */ jsxRuntime.jsx(strapiAdmin.Layouts.Content, { children: /* @__PURE__ */ jsxRuntime.jsxs(designSystem.Flex, { gap: 4, direction: "column", alignItems: "stretch", children: [
753
+ /* @__PURE__ */ jsxRuntime.jsxs(strapiAdmin.Table.Root, { rows: results, headers: tableHeaders, isLoading: isFetching, children: [
754
+ /* @__PURE__ */ jsxRuntime.jsx(TableActionsBar, {}),
755
+ /* @__PURE__ */ jsxRuntime.jsxs(strapiAdmin.Table.Content, { children: [
756
+ /* @__PURE__ */ jsxRuntime.jsxs(strapiAdmin.Table.Head, { children: [
757
+ /* @__PURE__ */ jsxRuntime.jsx(strapiAdmin.Table.HeaderCheckboxCell, {}),
758
+ tableHeaders.map((header) => /* @__PURE__ */ jsxRuntime.jsx(strapiAdmin.Table.HeaderCell, { ...header }, header.name))
759
+ ] }),
760
+ /* @__PURE__ */ jsxRuntime.jsx(strapiAdmin.Table.Loading, {}),
761
+ /* @__PURE__ */ jsxRuntime.jsx(strapiAdmin.Table.Empty, { action: canCreate ? /* @__PURE__ */ jsxRuntime.jsx(CreateButton, { variant: "secondary" }) : null }),
762
+ /* @__PURE__ */ jsxRuntime.jsx(strapiAdmin.Table.Body, { children: results.map((row) => {
763
+ return /* @__PURE__ */ jsxRuntime.jsxs(
764
+ strapiAdmin.Table.Row,
765
+ {
766
+ cursor: "pointer",
767
+ onClick: handleRowClick(row.documentId),
768
+ children: [
769
+ /* @__PURE__ */ jsxRuntime.jsx(strapiAdmin.Table.CheckboxCell, { id: row.id }),
770
+ tableHeaders.map(({ cellFormatter, ...header }) => {
771
+ if (header.name === "status") {
772
+ const { status } = row;
773
+ return /* @__PURE__ */ jsxRuntime.jsx(strapiAdmin.Table.Cell, { children: /* @__PURE__ */ jsxRuntime.jsx(index.DocumentStatus, { status, maxWidth: "min-content" }) }, header.name);
774
+ }
775
+ if (["createdBy", "updatedBy"].includes(header.name.split(".")[0])) {
776
+ return /* @__PURE__ */ jsxRuntime.jsx(strapiAdmin.Table.Cell, { children: /* @__PURE__ */ jsxRuntime.jsx(designSystem.Typography, { textColor: "neutral800", children: row[header.name.split(".")[0]] ? index.getDisplayName(row[header.name.split(".")[0]]) : "-" }) }, header.name);
777
+ }
778
+ if (typeof cellFormatter === "function") {
779
+ return /* @__PURE__ */ jsxRuntime.jsx(strapiAdmin.Table.Cell, { children: cellFormatter(row, header, { collectionType, model }) }, header.name);
780
+ }
781
+ return /* @__PURE__ */ jsxRuntime.jsx(strapiAdmin.Table.Cell, { children: /* @__PURE__ */ jsxRuntime.jsx(
782
+ CellContent,
783
+ {
784
+ content: row[header.name.split(".")[0]],
785
+ rowId: row.documentId,
786
+ ...header
787
+ }
788
+ ) }, header.name);
789
+ }),
790
+ /* @__PURE__ */ jsxRuntime.jsx(ActionsCell, { onClick: (e) => e.stopPropagation(), children: /* @__PURE__ */ jsxRuntime.jsx(index.TableActions, { document: row }) })
791
+ ]
792
+ },
793
+ row.id
794
+ );
795
+ }) })
796
+ ] })
797
+ ] }),
798
+ /* @__PURE__ */ jsxRuntime.jsxs(
799
+ strapiAdmin.Pagination.Root,
800
+ {
801
+ ...pagination,
802
+ onPageSizeChange: () => trackUsage("willChangeNumberOfEntriesPerPage"),
803
+ children: [
804
+ /* @__PURE__ */ jsxRuntime.jsx(strapiAdmin.Pagination.PageSize, {}),
805
+ /* @__PURE__ */ jsxRuntime.jsx(strapiAdmin.Pagination.Links, {})
806
+ ]
807
+ }
808
+ )
809
+ ] }) })
810
+ ] });
811
+ };
812
+ const ActionsCell = styledComponents.styled(strapiAdmin.Table.Cell)`
813
+ display: flex;
814
+ justify-content: flex-end;
815
+ `;
816
+ const TableActionsBar = () => {
817
+ const selectRow = strapiAdmin.useTable("TableActionsBar", (state) => state.selectRow);
818
+ const [{ query }] = strapiAdmin.useQueryParams();
819
+ const locale = query?.plugins?.i18n?.locale;
820
+ const prevLocale = usePrev.usePrev(locale);
821
+ React__namespace.useEffect(() => {
822
+ if (prevLocale !== locale) {
823
+ selectRow([]);
824
+ }
825
+ }, [selectRow, prevLocale, locale]);
826
+ return /* @__PURE__ */ jsxRuntime.jsx(strapiAdmin.Table.ActionBar, { children: /* @__PURE__ */ jsxRuntime.jsx(index.BulkActionsRenderer, {}) });
827
+ };
828
+ const CreateButton = ({ variant }) => {
829
+ const { formatMessage } = reactIntl.useIntl();
830
+ const { trackUsage } = strapiAdmin.useTracking();
831
+ const [{ query }] = strapiAdmin.useQueryParams();
832
+ return /* @__PURE__ */ jsxRuntime.jsx(
833
+ designSystem.Button,
834
+ {
835
+ variant,
836
+ tag: reactRouterDom.Link,
837
+ onClick: () => {
838
+ trackUsage("willCreateEntry", { status: "draft" });
839
+ },
840
+ startIcon: /* @__PURE__ */ jsxRuntime.jsx(Icons.Plus, {}),
841
+ style: { textDecoration: "none" },
842
+ to: {
843
+ pathname: "create",
844
+ search: qs.stringify({ plugins: query.plugins })
845
+ },
846
+ minWidth: "max-content",
847
+ marginLeft: 2,
848
+ children: formatMessage({
849
+ id: index.getTranslation("HeaderLayout.button.label-add-entry"),
850
+ defaultMessage: "Create new entry"
851
+ })
852
+ }
853
+ );
854
+ };
855
+ const ProtectedListViewPage = () => {
856
+ const { slug = "" } = reactRouterDom.useParams();
857
+ const {
858
+ permissions = [],
859
+ isLoading,
860
+ error
861
+ } = strapiAdmin.useRBAC(
862
+ index.PERMISSIONS.map((action) => ({
863
+ action,
864
+ subject: slug
865
+ }))
866
+ );
867
+ if (isLoading) {
868
+ return /* @__PURE__ */ jsxRuntime.jsx(strapiAdmin.Page.Loading, {});
869
+ }
870
+ if (error || !slug) {
871
+ return /* @__PURE__ */ jsxRuntime.jsx(strapiAdmin.Page.Error, {});
872
+ }
873
+ return /* @__PURE__ */ jsxRuntime.jsx(strapiAdmin.Page.Protect, { permissions, children: ({ permissions: permissions2 }) => /* @__PURE__ */ jsxRuntime.jsx(index.DocumentRBAC, { permissions: permissions2, children: /* @__PURE__ */ jsxRuntime.jsx(ListViewPage, {}) }) });
874
+ };
875
+ exports.ListViewPage = ListViewPage;
876
+ exports.ProtectedListViewPage = ProtectedListViewPage;
877
+ //# sourceMappingURL=ListViewPage-CJFDudKl.js.map