@strapi/content-manager 5.49.0 → 5.50.1

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 (381) hide show
  1. package/dist/admin/components/ComponentIcon.js.map +1 -1
  2. package/dist/admin/components/ComponentIcon.mjs.map +1 -1
  3. package/dist/admin/components/ConfigurationForm/Fields.js.map +1 -1
  4. package/dist/admin/components/ConfigurationForm/Fields.mjs.map +1 -1
  5. package/dist/admin/components/DragLayer.js.map +1 -1
  6. package/dist/admin/components/DragLayer.mjs.map +1 -1
  7. package/dist/admin/components/LeftMenu.js +66 -67
  8. package/dist/admin/components/LeftMenu.js.map +1 -1
  9. package/dist/admin/components/LeftMenu.mjs +68 -69
  10. package/dist/admin/components/LeftMenu.mjs.map +1 -1
  11. package/dist/admin/history/components/VersionInputRenderer.js +3 -3
  12. package/dist/admin/history/components/VersionInputRenderer.js.map +1 -1
  13. package/dist/admin/history/components/VersionInputRenderer.mjs +3 -3
  14. package/dist/admin/history/components/VersionInputRenderer.mjs.map +1 -1
  15. package/dist/admin/history/routes.js.map +1 -1
  16. package/dist/admin/history/routes.mjs.map +1 -1
  17. package/dist/admin/hooks/useDocumentActions.js +15 -8
  18. package/dist/admin/hooks/useDocumentActions.js.map +1 -1
  19. package/dist/admin/hooks/useDocumentActions.mjs +15 -8
  20. package/dist/admin/hooks/useDocumentActions.mjs.map +1 -1
  21. package/dist/admin/hooks/useDocumentContext.js.map +1 -1
  22. package/dist/admin/hooks/useDocumentContext.mjs.map +1 -1
  23. package/dist/admin/index.js.map +1 -1
  24. package/dist/admin/index.mjs.map +1 -1
  25. package/dist/admin/layout.js +21 -7
  26. package/dist/admin/layout.js.map +1 -1
  27. package/dist/admin/layout.mjs +23 -9
  28. package/dist/admin/layout.mjs.map +1 -1
  29. package/dist/admin/pages/ComponentConfigurationPage.js.map +1 -1
  30. package/dist/admin/pages/ComponentConfigurationPage.mjs.map +1 -1
  31. package/dist/admin/pages/EditView/components/DocumentActions.js +168 -78
  32. package/dist/admin/pages/EditView/components/DocumentActions.js.map +1 -1
  33. package/dist/admin/pages/EditView/components/DocumentActions.mjs +168 -79
  34. package/dist/admin/pages/EditView/components/DocumentActions.mjs.map +1 -1
  35. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/Blocks/List.js +6 -3
  36. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/Blocks/List.js.map +1 -1
  37. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/Blocks/List.mjs +6 -3
  38. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/Blocks/List.mjs.map +1 -1
  39. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/BlocksInput.js +1 -1
  40. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/BlocksInput.js.map +1 -1
  41. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/BlocksInput.mjs +1 -1
  42. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/BlocksInput.mjs.map +1 -1
  43. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/BlocksToolbar.js.map +1 -1
  44. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/BlocksToolbar.mjs.map +1 -1
  45. package/dist/admin/pages/EditView/components/FormInputs/Component/Initializer.js.map +1 -1
  46. package/dist/admin/pages/EditView/components/FormInputs/Component/Initializer.mjs.map +1 -1
  47. package/dist/admin/pages/EditView/components/FormInputs/Component/Input.js +1 -1
  48. package/dist/admin/pages/EditView/components/FormInputs/Component/Input.js.map +1 -1
  49. package/dist/admin/pages/EditView/components/FormInputs/Component/Input.mjs +1 -1
  50. package/dist/admin/pages/EditView/components/FormInputs/Component/Input.mjs.map +1 -1
  51. package/dist/admin/pages/EditView/components/FormInputs/Component/Repeatable.js +2 -1
  52. package/dist/admin/pages/EditView/components/FormInputs/Component/Repeatable.js.map +1 -1
  53. package/dist/admin/pages/EditView/components/FormInputs/Component/Repeatable.mjs +2 -1
  54. package/dist/admin/pages/EditView/components/FormInputs/Component/Repeatable.mjs.map +1 -1
  55. package/dist/admin/pages/EditView/components/FormInputs/DynamicZone/ComponentCategory.js +6 -1
  56. package/dist/admin/pages/EditView/components/FormInputs/DynamicZone/ComponentCategory.js.map +1 -1
  57. package/dist/admin/pages/EditView/components/FormInputs/DynamicZone/ComponentCategory.mjs +2 -1
  58. package/dist/admin/pages/EditView/components/FormInputs/DynamicZone/ComponentCategory.mjs.map +1 -1
  59. package/dist/admin/pages/EditView/components/FormInputs/DynamicZone/DynamicComponent.js +6 -2
  60. package/dist/admin/pages/EditView/components/FormInputs/DynamicZone/DynamicComponent.js.map +1 -1
  61. package/dist/admin/pages/EditView/components/FormInputs/DynamicZone/DynamicComponent.mjs +3 -2
  62. package/dist/admin/pages/EditView/components/FormInputs/DynamicZone/DynamicComponent.mjs.map +1 -1
  63. package/dist/admin/pages/EditView/components/FormInputs/DynamicZone/Field.js +6 -1
  64. package/dist/admin/pages/EditView/components/FormInputs/DynamicZone/Field.js.map +1 -1
  65. package/dist/admin/pages/EditView/components/FormInputs/DynamicZone/Field.mjs +6 -1
  66. package/dist/admin/pages/EditView/components/FormInputs/DynamicZone/Field.mjs.map +1 -1
  67. package/dist/admin/pages/EditView/components/FormInputs/Relations/Relations.js +8 -5
  68. package/dist/admin/pages/EditView/components/FormInputs/Relations/Relations.js.map +1 -1
  69. package/dist/admin/pages/EditView/components/FormInputs/Relations/Relations.mjs +8 -5
  70. package/dist/admin/pages/EditView/components/FormInputs/Relations/Relations.mjs.map +1 -1
  71. package/dist/admin/pages/EditView/components/FormInputs/UID.js +5 -4
  72. package/dist/admin/pages/EditView/components/FormInputs/UID.js.map +1 -1
  73. package/dist/admin/pages/EditView/components/FormInputs/UID.mjs +5 -4
  74. package/dist/admin/pages/EditView/components/FormInputs/UID.mjs.map +1 -1
  75. package/dist/admin/pages/EditView/components/FormInputs/Wysiwyg/Editor.js.map +1 -1
  76. package/dist/admin/pages/EditView/components/FormInputs/Wysiwyg/Editor.mjs.map +1 -1
  77. package/dist/admin/pages/EditView/components/FormInputs/Wysiwyg/Field.js +2 -2
  78. package/dist/admin/pages/EditView/components/FormInputs/Wysiwyg/Field.js.map +1 -1
  79. package/dist/admin/pages/EditView/components/FormInputs/Wysiwyg/Field.mjs +2 -2
  80. package/dist/admin/pages/EditView/components/FormInputs/Wysiwyg/Field.mjs.map +1 -1
  81. package/dist/admin/pages/EditView/components/FormInputs/Wysiwyg/utils/utils.js.map +1 -1
  82. package/dist/admin/pages/EditView/components/FormInputs/Wysiwyg/utils/utils.mjs.map +1 -1
  83. package/dist/admin/pages/EditView/components/Panels.js.map +1 -1
  84. package/dist/admin/pages/EditView/components/Panels.mjs.map +1 -1
  85. package/dist/admin/pages/EditView/utils/data.js.map +1 -1
  86. package/dist/admin/pages/EditView/utils/data.mjs.map +1 -1
  87. package/dist/admin/pages/EditView/utils/draftRelationCounts.js +117 -0
  88. package/dist/admin/pages/EditView/utils/draftRelationCounts.js.map +1 -0
  89. package/dist/admin/pages/EditView/utils/draftRelationCounts.mjs +109 -0
  90. package/dist/admin/pages/EditView/utils/draftRelationCounts.mjs.map +1 -0
  91. package/dist/admin/pages/ListConfiguration/components/Settings.js.map +1 -1
  92. package/dist/admin/pages/ListConfiguration/components/Settings.mjs.map +1 -1
  93. package/dist/admin/pages/ListConfiguration/components/SortDisplayedFields.js.map +1 -1
  94. package/dist/admin/pages/ListConfiguration/components/SortDisplayedFields.mjs.map +1 -1
  95. package/dist/admin/pages/ListView/ListViewPage.js +71 -11
  96. package/dist/admin/pages/ListView/ListViewPage.js.map +1 -1
  97. package/dist/admin/pages/ListView/ListViewPage.mjs +73 -13
  98. package/dist/admin/pages/ListView/ListViewPage.mjs.map +1 -1
  99. package/dist/admin/pages/ListView/components/BulkActions/Actions.js +2 -1
  100. package/dist/admin/pages/ListView/components/BulkActions/Actions.js.map +1 -1
  101. package/dist/admin/pages/ListView/components/BulkActions/Actions.mjs +2 -1
  102. package/dist/admin/pages/ListView/components/BulkActions/Actions.mjs.map +1 -1
  103. package/dist/admin/pages/ListView/components/BulkActions/ConfirmBulkActionDialog.js +1 -1
  104. package/dist/admin/pages/ListView/components/BulkActions/ConfirmBulkActionDialog.js.map +1 -1
  105. package/dist/admin/pages/ListView/components/BulkActions/ConfirmBulkActionDialog.mjs +1 -1
  106. package/dist/admin/pages/ListView/components/BulkActions/ConfirmBulkActionDialog.mjs.map +1 -1
  107. package/dist/admin/pages/ListView/components/BulkActions/PublishAction.js.map +1 -1
  108. package/dist/admin/pages/ListView/components/BulkActions/PublishAction.mjs.map +1 -1
  109. package/dist/admin/pages/ListView/components/Filters.js +5 -3
  110. package/dist/admin/pages/ListView/components/Filters.js.map +1 -1
  111. package/dist/admin/pages/ListView/components/Filters.mjs +5 -3
  112. package/dist/admin/pages/ListView/components/Filters.mjs.map +1 -1
  113. package/dist/admin/pages/ListView/components/TableActions.js +37 -0
  114. package/dist/admin/pages/ListView/components/TableActions.js.map +1 -1
  115. package/dist/admin/pages/ListView/components/TableActions.mjs +39 -2
  116. package/dist/admin/pages/ListView/components/TableActions.mjs.map +1 -1
  117. package/dist/admin/pages/ListView/components/TableCells/CellContent.js +28 -3
  118. package/dist/admin/pages/ListView/components/TableCells/CellContent.js.map +1 -1
  119. package/dist/admin/pages/ListView/components/TableCells/CellContent.mjs +28 -4
  120. package/dist/admin/pages/ListView/components/TableCells/CellContent.mjs.map +1 -1
  121. package/dist/admin/pages/ListView/components/TableCells/CellValue.js +8 -7
  122. package/dist/admin/pages/ListView/components/TableCells/CellValue.js.map +1 -1
  123. package/dist/admin/pages/ListView/components/TableCells/CellValue.mjs +8 -7
  124. package/dist/admin/pages/ListView/components/TableCells/CellValue.mjs.map +1 -1
  125. package/dist/admin/pages/ListView/components/TableCells/Components.js.map +1 -1
  126. package/dist/admin/pages/ListView/components/TableCells/Components.mjs.map +1 -1
  127. package/dist/admin/pages/ListView/components/TableCells/Relations.js +1 -1
  128. package/dist/admin/pages/ListView/components/TableCells/Relations.js.map +1 -1
  129. package/dist/admin/pages/ListView/components/TableCells/Relations.mjs +1 -1
  130. package/dist/admin/pages/ListView/components/TableCells/Relations.mjs.map +1 -1
  131. package/dist/admin/preview/pages/Preview.js +40 -11
  132. package/dist/admin/preview/pages/Preview.js.map +1 -1
  133. package/dist/admin/preview/pages/Preview.mjs +41 -12
  134. package/dist/admin/preview/pages/Preview.mjs.map +1 -1
  135. package/dist/admin/preview/routes.js.map +1 -1
  136. package/dist/admin/preview/routes.mjs.map +1 -1
  137. package/dist/admin/preview/utils/constants.js +9 -15
  138. package/dist/admin/preview/utils/constants.js.map +1 -1
  139. package/dist/admin/preview/utils/constants.mjs +10 -15
  140. package/dist/admin/preview/utils/constants.mjs.map +1 -1
  141. package/dist/admin/preview/utils/fieldUtils.js.map +1 -1
  142. package/dist/admin/preview/utils/fieldUtils.mjs.map +1 -1
  143. package/dist/admin/router.js.map +1 -1
  144. package/dist/admin/router.mjs.map +1 -1
  145. package/dist/admin/services/documents.js.map +1 -1
  146. package/dist/admin/services/documents.mjs.map +1 -1
  147. package/dist/admin/src/components/ComponentIcon.d.ts +4 -3
  148. package/dist/admin/src/components/DragLayer.d.ts +1 -1
  149. package/dist/admin/src/components/InjectionZone.d.ts +1 -2
  150. package/dist/admin/src/content-manager.d.ts +15 -15
  151. package/dist/admin/src/history/routes.d.ts +2 -2
  152. package/dist/admin/src/history/services/historyVersion.d.ts +3 -3
  153. package/dist/admin/src/hooks/useContentTypeSchema.d.ts +1 -1
  154. package/dist/admin/src/hooks/useDocument.d.ts +8 -9
  155. package/dist/admin/src/hooks/useDocumentActions.d.ts +17 -16
  156. package/dist/admin/src/hooks/useDocumentContext.d.ts +1 -1
  157. package/dist/admin/src/hooks/useDocumentLayout.d.ts +3 -3
  158. package/dist/admin/src/hooks/useDragAndDrop.d.ts +4 -4
  159. package/dist/admin/src/hooks/useKeyboardDragAndDrop.d.ts +1 -1
  160. package/dist/admin/src/hooks/usePersistentQueryParams.d.ts +0 -1
  161. package/dist/admin/src/index.d.ts +1 -1
  162. package/dist/admin/src/modules/app.d.ts +5 -5
  163. package/dist/admin/src/pages/EditView/EditViewPage.d.ts +1 -1
  164. package/dist/admin/src/pages/EditView/components/DocumentActions.d.ts +12 -1
  165. package/dist/admin/src/pages/EditView/components/EditorToolbarObserver.d.ts +1 -1
  166. package/dist/admin/src/pages/EditView/components/FormInputs/BlocksInput/BlocksEditor.d.ts +1 -1
  167. package/dist/admin/src/pages/EditView/components/FormInputs/BlocksInput/utils/conversions.d.ts +2 -2
  168. package/dist/admin/src/pages/EditView/components/FormInputs/ComponentContext.d.ts +1 -2
  169. package/dist/admin/src/pages/EditView/components/FormInputs/Relations/Relations.d.ts +4 -4
  170. package/dist/admin/src/pages/EditView/components/FormInputs/UID.d.ts +1 -1
  171. package/dist/admin/src/pages/EditView/components/FormInputs/Wysiwyg/Editor.d.ts +1 -1
  172. package/dist/admin/src/pages/EditView/components/FormInputs/Wysiwyg/EditorLayout.d.ts +2 -2
  173. package/dist/admin/src/pages/EditView/components/FormInputs/Wysiwyg/WysiwygStyles.d.ts +19 -20
  174. package/dist/admin/src/pages/EditView/components/FormInputs/Wysiwyg/utils/utils.d.ts +7 -1
  175. package/dist/admin/src/pages/EditView/components/FormLayout.d.ts +12 -12
  176. package/dist/admin/src/pages/EditView/utils/draftRelationCounts.d.ts +26 -0
  177. package/dist/admin/src/pages/ListView/components/BulkActions/PublishAction.d.ts +1 -1
  178. package/dist/admin/src/pages/ListView/components/Filters.d.ts +1 -1
  179. package/dist/admin/src/pages/ListView/components/TableCells/CellContent.d.ts +11 -2
  180. package/dist/admin/src/pages/ListView/components/TableCells/CellValue.d.ts +1 -1
  181. package/dist/admin/src/pages/formatComponentConfigurationEditLayout.d.ts +1 -1
  182. package/dist/admin/src/preview/routes.d.ts +2 -2
  183. package/dist/admin/src/preview/services/preview.d.ts +1 -1
  184. package/dist/admin/src/preview/utils/constants.d.ts +1 -7
  185. package/dist/admin/src/preview/utils/getSendMessage.d.ts +0 -1
  186. package/dist/admin/src/router.d.ts +2 -2
  187. package/dist/admin/src/services/api.d.ts +1 -1
  188. package/dist/admin/src/services/components.d.ts +2 -2
  189. package/dist/admin/src/services/contentTypes.d.ts +3 -3
  190. package/dist/admin/src/services/documents.d.ts +49 -89
  191. package/dist/admin/src/services/homepage.d.ts +1 -1
  192. package/dist/admin/src/services/init.d.ts +1 -1
  193. package/dist/admin/src/services/relations.d.ts +8 -22
  194. package/dist/admin/src/services/uid.d.ts +8 -8
  195. package/dist/admin/src/utils/api.d.ts +2 -2
  196. package/dist/admin/src/utils/conditionalFields.d.ts +1 -0
  197. package/dist/admin/src/utils/layouts/normalizeContentManagerLayout.d.ts +4 -4
  198. package/dist/admin/src/utils/objects.d.ts +7 -4
  199. package/dist/admin/src/utils/users.d.ts +1 -1
  200. package/dist/admin/src/utils/validation.d.ts +2 -1
  201. package/dist/admin/translations/en.json.js +6 -2
  202. package/dist/admin/translations/en.json.js.map +1 -1
  203. package/dist/admin/translations/en.json.mjs +6 -2
  204. package/dist/admin/translations/en.json.mjs.map +1 -1
  205. package/dist/admin/translations/ja.json.js +262 -87
  206. package/dist/admin/translations/ja.json.js.map +1 -1
  207. package/dist/admin/translations/ja.json.mjs +262 -87
  208. package/dist/admin/translations/ja.json.mjs.map +1 -1
  209. package/dist/admin/utils/api.js +6 -1
  210. package/dist/admin/utils/api.js.map +1 -1
  211. package/dist/admin/utils/api.mjs +6 -1
  212. package/dist/admin/utils/api.mjs.map +1 -1
  213. package/dist/admin/utils/conditionalFields.js.map +1 -1
  214. package/dist/admin/utils/conditionalFields.mjs.map +1 -1
  215. package/dist/admin/utils/objects.js +43 -13
  216. package/dist/admin/utils/objects.js.map +1 -1
  217. package/dist/admin/utils/objects.mjs +43 -13
  218. package/dist/admin/utils/objects.mjs.map +1 -1
  219. package/dist/admin/utils/validation.js.map +1 -1
  220. package/dist/admin/utils/validation.mjs.map +1 -1
  221. package/dist/server/controllers/collection-types.js +6 -3
  222. package/dist/server/controllers/collection-types.js.map +1 -1
  223. package/dist/server/controllers/collection-types.mjs +6 -3
  224. package/dist/server/controllers/collection-types.mjs.map +1 -1
  225. package/dist/server/controllers/relations.js +5 -4
  226. package/dist/server/controllers/relations.js.map +1 -1
  227. package/dist/server/controllers/relations.mjs +5 -4
  228. package/dist/server/controllers/relations.mjs.map +1 -1
  229. package/dist/server/controllers/single-types.js +2 -2
  230. package/dist/server/controllers/single-types.js.map +1 -1
  231. package/dist/server/controllers/single-types.mjs +2 -2
  232. package/dist/server/controllers/single-types.mjs.map +1 -1
  233. package/dist/server/controllers/validation/model-configuration.js +3 -1
  234. package/dist/server/controllers/validation/model-configuration.js.map +1 -1
  235. package/dist/server/controllers/validation/model-configuration.mjs +3 -1
  236. package/dist/server/controllers/validation/model-configuration.mjs.map +1 -1
  237. package/dist/server/homepage/services/homepage.js +27 -7
  238. package/dist/server/homepage/services/homepage.js.map +1 -1
  239. package/dist/server/homepage/services/homepage.mjs +27 -7
  240. package/dist/server/homepage/services/homepage.mjs.map +1 -1
  241. package/dist/server/preview/controllers/preview.js +9 -0
  242. package/dist/server/preview/controllers/preview.js.map +1 -1
  243. package/dist/server/preview/controllers/preview.mjs +9 -0
  244. package/dist/server/preview/controllers/preview.mjs.map +1 -1
  245. package/dist/server/preview/controllers/previewScript.js +1450 -0
  246. package/dist/server/preview/routes/preview.js +11 -0
  247. package/dist/server/preview/routes/preview.js.map +1 -1
  248. package/dist/server/preview/routes/preview.mjs +11 -0
  249. package/dist/server/preview/routes/preview.mjs.map +1 -1
  250. package/dist/server/services/document-manager.js +13 -19
  251. package/dist/server/services/document-manager.js.map +1 -1
  252. package/dist/server/services/document-manager.mjs +13 -19
  253. package/dist/server/services/document-manager.mjs.map +1 -1
  254. package/dist/server/services/permission.js +4 -3
  255. package/dist/server/services/permission.js.map +1 -1
  256. package/dist/server/services/permission.mjs +4 -3
  257. package/dist/server/services/permission.mjs.map +1 -1
  258. package/dist/server/services/utils/draft-relations.js +9 -0
  259. package/dist/server/services/utils/draft-relations.js.map +1 -0
  260. package/dist/server/services/utils/draft-relations.mjs +7 -0
  261. package/dist/server/services/utils/draft-relations.mjs.map +1 -0
  262. package/dist/server/services/utils/draft.js +118 -25
  263. package/dist/server/services/utils/draft.js.map +1 -1
  264. package/dist/server/services/utils/draft.mjs +118 -25
  265. package/dist/server/services/utils/draft.mjs.map +1 -1
  266. package/dist/server/services/utils/populate.js +15 -1
  267. package/dist/server/services/utils/populate.js.map +1 -1
  268. package/dist/server/services/utils/populate.mjs +15 -1
  269. package/dist/server/services/utils/populate.mjs.map +1 -1
  270. package/dist/server/src/controllers/collection-types.d.ts.map +1 -1
  271. package/dist/server/src/controllers/index.d.ts +1 -1
  272. package/dist/server/src/controllers/relations.d.ts.map +1 -1
  273. package/dist/server/src/controllers/utils/clone.d.ts.map +1 -1
  274. package/dist/server/src/controllers/utils/document-status.d.ts +1 -1
  275. package/dist/server/src/controllers/utils/document-status.d.ts.map +1 -1
  276. package/dist/server/src/controllers/utils/metadata.d.ts +5 -5
  277. package/dist/server/src/controllers/utils/metadata.d.ts.map +1 -1
  278. package/dist/server/src/controllers/validation/dimensions.d.ts.map +1 -1
  279. package/dist/server/src/controllers/validation/index.d.ts +3 -3
  280. package/dist/server/src/controllers/validation/index.d.ts.map +1 -1
  281. package/dist/server/src/controllers/validation/model-configuration.d.ts.map +1 -1
  282. package/dist/server/src/controllers/validation/relations.d.ts +2 -2
  283. package/dist/server/src/history/controllers/history-version.d.ts +1 -7
  284. package/dist/server/src/history/controllers/history-version.d.ts.map +1 -1
  285. package/dist/server/src/history/controllers/index.d.ts +2 -1
  286. package/dist/server/src/history/controllers/index.d.ts.map +1 -1
  287. package/dist/server/src/history/controllers/validation/history-version.d.ts +1 -1
  288. package/dist/server/src/history/services/history.d.ts +0 -2
  289. package/dist/server/src/history/services/history.d.ts.map +1 -1
  290. package/dist/server/src/history/services/lifecycles.d.ts.map +1 -1
  291. package/dist/server/src/history/services/utils.d.ts +3 -3
  292. package/dist/server/src/history/services/utils.d.ts.map +1 -1
  293. package/dist/server/src/history/utils.d.ts +1 -18
  294. package/dist/server/src/history/utils.d.ts.map +1 -1
  295. package/dist/server/src/homepage/controllers/homepage.d.ts +0 -1
  296. package/dist/server/src/homepage/controllers/homepage.d.ts.map +1 -1
  297. package/dist/server/src/homepage/controllers/index.d.ts +2 -1
  298. package/dist/server/src/homepage/controllers/index.d.ts.map +1 -1
  299. package/dist/server/src/homepage/index.d.ts +4 -8
  300. package/dist/server/src/homepage/index.d.ts.map +1 -1
  301. package/dist/server/src/homepage/services/homepage-query-utils.d.ts.map +1 -1
  302. package/dist/server/src/homepage/services/homepage.d.ts +3 -4
  303. package/dist/server/src/homepage/services/homepage.d.ts.map +1 -1
  304. package/dist/server/src/homepage/services/index.d.ts +4 -8
  305. package/dist/server/src/homepage/services/index.d.ts.map +1 -1
  306. package/dist/server/src/index.d.ts +79 -85
  307. package/dist/server/src/index.d.ts.map +1 -1
  308. package/dist/server/src/mcp/derive-content-type-mcp-tools.d.ts.map +1 -1
  309. package/dist/server/src/mcp/handlers/collection-handlers.d.ts.map +1 -1
  310. package/dist/server/src/mcp/handlers/single-type-handlers.d.ts.map +1 -1
  311. package/dist/server/src/mcp/permissions.d.ts +1 -1
  312. package/dist/server/src/mcp/permissions.d.ts.map +1 -1
  313. package/dist/server/src/mcp/register-content-manager-mcp-tools.d.ts.map +1 -1
  314. package/dist/server/src/mcp/sanitizers/shape-relations.d.ts.map +1 -1
  315. package/dist/server/src/mcp/schemas/blocks-schema.d.ts.map +1 -1
  316. package/dist/server/src/mcp/schemas/data-schema.d.ts.map +1 -1
  317. package/dist/server/src/mcp/schemas/filters-schema.d.ts.map +1 -1
  318. package/dist/server/src/mcp/schemas/output-schemas.d.ts.map +1 -1
  319. package/dist/server/src/mcp/schemas/sort-schema.d.ts.map +1 -1
  320. package/dist/server/src/mcp/utils.d.ts.map +1 -1
  321. package/dist/server/src/middlewares/routing.d.ts.map +1 -1
  322. package/dist/server/src/policies/hasPermissions.d.ts.map +1 -1
  323. package/dist/server/src/policies/index.d.ts.map +1 -1
  324. package/dist/server/src/preview/controllers/index.d.ts +2 -1
  325. package/dist/server/src/preview/controllers/index.d.ts.map +1 -1
  326. package/dist/server/src/preview/controllers/preview.d.ts +5 -0
  327. package/dist/server/src/preview/controllers/preview.d.ts.map +1 -1
  328. package/dist/server/src/preview/controllers/validation/preview.d.ts +1 -2
  329. package/dist/server/src/preview/controllers/validation/preview.d.ts.map +1 -1
  330. package/dist/server/src/preview/routes/preview.d.ts.map +1 -1
  331. package/dist/server/src/preview/services/index.d.ts +1 -1
  332. package/dist/server/src/preview/services/index.d.ts.map +1 -1
  333. package/dist/server/src/preview/services/preview-config.d.ts +1 -1
  334. package/dist/server/src/preview/services/preview-config.d.ts.map +1 -1
  335. package/dist/server/src/preview/services/preview.d.ts.map +1 -1
  336. package/dist/server/src/preview/utils.d.ts +1 -16
  337. package/dist/server/src/preview/utils.d.ts.map +1 -1
  338. package/dist/server/src/services/components.d.ts +2 -2
  339. package/dist/server/src/services/components.d.ts.map +1 -1
  340. package/dist/server/src/services/configuration.d.ts.map +1 -1
  341. package/dist/server/src/services/content-types.d.ts.map +1 -1
  342. package/dist/server/src/services/data-mapper.d.ts +5 -5
  343. package/dist/server/src/services/data-mapper.d.ts.map +1 -1
  344. package/dist/server/src/services/document-manager.d.ts +14 -14
  345. package/dist/server/src/services/document-manager.d.ts.map +1 -1
  346. package/dist/server/src/services/document-metadata.d.ts +6 -6
  347. package/dist/server/src/services/document-metadata.d.ts.map +1 -1
  348. package/dist/server/src/services/field-sizes.d.ts +2 -2
  349. package/dist/server/src/services/field-sizes.d.ts.map +1 -1
  350. package/dist/server/src/services/index.d.ts +78 -84
  351. package/dist/server/src/services/index.d.ts.map +1 -1
  352. package/dist/server/src/services/metrics.d.ts.map +1 -1
  353. package/dist/server/src/services/permission-checker.d.ts +12 -31
  354. package/dist/server/src/services/permission-checker.d.ts.map +1 -1
  355. package/dist/server/src/services/permission.d.ts.map +1 -1
  356. package/dist/server/src/services/populate-builder.d.ts +4 -4
  357. package/dist/server/src/services/populate-builder.d.ts.map +1 -1
  358. package/dist/server/src/services/uid.d.ts.map +1 -1
  359. package/dist/server/src/services/utils/configuration/attributes.d.ts.map +1 -1
  360. package/dist/server/src/services/utils/configuration/settings.d.ts.map +1 -1
  361. package/dist/server/src/services/utils/count.d.ts.map +1 -1
  362. package/dist/server/src/services/utils/draft-relations.d.ts +19 -0
  363. package/dist/server/src/services/utils/draft-relations.d.ts.map +1 -0
  364. package/dist/server/src/services/utils/draft.d.ts +8 -7
  365. package/dist/server/src/services/utils/draft.d.ts.map +1 -1
  366. package/dist/server/src/services/utils/populate.d.ts.map +1 -1
  367. package/dist/server/src/services/utils/store.d.ts.map +1 -1
  368. package/dist/server/src/utils/index.d.ts.map +1 -1
  369. package/dist/server/src/validation/policies/hasPermissions.d.ts +1 -1
  370. package/dist/server/src/validation/zod.d.ts +1 -1
  371. package/dist/server/src/validation/zod.d.ts.map +1 -1
  372. package/dist/shared/contracts/collection-types.d.ts +4 -1
  373. package/dist/shared/contracts/collection-types.d.ts.map +1 -1
  374. package/dist/shared/contracts/single-types.d.ts +4 -1
  375. package/dist/shared/contracts/single-types.d.ts.map +1 -1
  376. package/package.json +9 -9
  377. package/dist/admin/preview/utils/previewScript.js +0 -1068
  378. package/dist/admin/preview/utils/previewScript.js.map +0 -1
  379. package/dist/admin/preview/utils/previewScript.mjs +0 -1066
  380. package/dist/admin/preview/utils/previewScript.mjs.map +0 -1
  381. package/dist/admin/src/preview/utils/previewScript.d.ts +0 -32
@@ -1 +1 @@
1
- {"version":3,"file":"CellContent.mjs","sources":["../../../../../../admin/src/pages/ListView/components/TableCells/CellContent.tsx"],"sourcesContent":["import { Tooltip, Typography } from '@strapi/design-system';\nimport isEmpty from 'lodash/isEmpty';\n\nimport { CellValue } from './CellValue';\nimport { SingleComponent, RepeatableComponent } from './Components';\nimport { MediaSingle, MediaMultiple } from './Media';\nimport { RelationMultiple, RelationSingle } from './Relations';\n\nimport type { ListFieldLayout } from '../../../../hooks/useDocumentLayout';\nimport type { Schema, Data } from '@strapi/types';\n\ninterface CellContentProps extends Omit<ListFieldLayout, 'cellFormatter'> {\n content: Schema.Attribute.Value<Schema.Attribute.AnyAttribute>;\n rowId: Data.ID;\n}\n\nconst CellContent = ({ content, mainField, attribute, rowId, name }: CellContentProps) => {\n const isIdColumn = name === 'id';\n\n if (!hasContent(content, mainField, attribute)) {\n return (\n <Typography\n textColor=\"neutral800\"\n paddingLeft={attribute.type === ('relation' || 'component') ? '1.6rem' : 0}\n paddingRight={attribute.type === ('relation' || 'component') ? '1.6rem' : 0}\n >\n -\n </Typography>\n );\n }\n\n switch (attribute.type) {\n case 'media':\n if (!attribute.multiple) {\n return <MediaSingle {...content} />;\n }\n\n return <MediaMultiple content={content} />;\n\n case 'relation': {\n if (isSingleRelation(attribute.relation)) {\n return <RelationSingle mainField={mainField} content={content} />;\n }\n\n return <RelationMultiple rowId={rowId} mainField={mainField} content={content} name={name} />;\n }\n\n case 'component':\n if (attribute.repeatable) {\n return <RepeatableComponent mainField={mainField} content={content} />;\n }\n\n return <SingleComponent mainField={mainField} content={content} />;\n\n case 'string':\n return (\n <Tooltip label={content}>\n <Typography maxWidth=\"30rem\" ellipsis textColor=\"neutral800\">\n <CellValue isIdColumn={isIdColumn} type={attribute.type} value={content} />\n </Typography>\n </Tooltip>\n );\n\n default:\n return (\n <Typography maxWidth=\"30rem\" ellipsis textColor=\"neutral800\">\n <CellValue isIdColumn={isIdColumn} type={attribute.type} value={content} />\n </Typography>\n );\n }\n};\n\nconst hasContent = (\n content: CellContentProps['content'],\n mainField: CellContentProps['mainField'],\n attribute: CellContentProps['attribute']\n) => {\n if (attribute.type === 'component') {\n // Repeatable fields show the ID as fallback, in case the mainField\n // doesn't have any content\n if (attribute.repeatable || !mainField) {\n return content?.length > 0;\n }\n\n const value = content?.[mainField.name];\n\n // relations, media ... show the id as fallback\n if (mainField.name === 'id' && ![undefined, null].includes(value)) {\n return true;\n }\n\n return !isEmpty(value);\n }\n\n if (attribute.type === 'relation') {\n if (isSingleRelation(attribute.relation)) {\n return !isEmpty(content);\n }\n\n if (Array.isArray(content)) {\n return content.length > 0;\n }\n\n return content?.count > 0;\n }\n\n /*\n Biginteger fields need to be treated as strings, as `isNumber`\n doesn't deal with them.\n */\n if (['integer', 'decimal', 'float', 'number'].includes(attribute.type)) {\n return typeof content === 'number';\n }\n\n if (attribute.type === 'boolean') {\n return content !== null;\n }\n\n return !isEmpty(content);\n};\n\nconst isSingleRelation = (\n type: Extract<CellContentProps['attribute'], { type: 'relation' }>['relation']\n) => ['oneToOne', 'manyToOne', 'oneToOneMorph'].includes(type);\n\nexport { CellContent };\nexport type { CellContentProps };\n"],"names":["CellContent","content","mainField","attribute","rowId","name","isIdColumn","hasContent","_jsx","Typography","textColor","paddingLeft","type","paddingRight","multiple","MediaSingle","MediaMultiple","isSingleRelation","relation","RelationSingle","RelationMultiple","repeatable","RepeatableComponent","SingleComponent","Tooltip","label","maxWidth","ellipsis","CellValue","value","length","undefined","includes","isEmpty","Array","isArray","count"],"mappings":"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"}
1
+ {"version":3,"file":"CellContent.mjs","sources":["../../../../../../admin/src/pages/ListView/components/TableCells/CellContent.tsx"],"sourcesContent":["import type { MouseEvent } from 'react';\n\nimport { Tooltip, Typography } from '@strapi/design-system';\nimport isEmpty from 'lodash/isEmpty';\nimport { Link as ReactRouterLink } from 'react-router-dom';\n\nimport { CellValue } from './CellValue';\nimport { SingleComponent, RepeatableComponent } from './Components';\nimport { MediaSingle, MediaMultiple } from './Media';\nimport { RelationMultiple, RelationSingle } from './Relations';\n\nimport type { ListFieldLayout } from '../../../../hooks/useDocumentLayout';\nimport type { Schema, Data } from '@strapi/types';\nimport type { To } from 'react-router-dom';\n\ninterface CellContentProps extends Omit<ListFieldLayout, 'cellFormatter'> {\n content: Schema.Attribute.Value<Schema.Attribute.AnyAttribute>;\n rowId: Data.ID;\n /**\n * When set, the cell renders its value as a navigational link to the entry.\n * Used for the primary (first scalar) column so users can open an entry in a\n * new tab via right-click / cmd+click / middle-click, while a plain click\n * still navigates within the SPA. Only passed for non-interactive cell types.\n */\n linkTo?: To;\n}\n\nconst CellContent = ({ content, mainField, attribute, rowId, name, linkTo }: CellContentProps) => {\n const isIdColumn = name === 'id';\n\n if (!hasContent(content, mainField, attribute)) {\n return (\n <Typography\n textColor=\"neutral800\"\n paddingLeft={attribute.type === 'relation' || attribute.type === 'component' ? '1.6rem' : 0}\n paddingRight={\n attribute.type === 'relation' || attribute.type === 'component' ? '1.6rem' : 0\n }\n >\n -\n </Typography>\n );\n }\n\n // Primary scalar column: render the value as a link to the entry so it gets\n // native open-in-new-tab semantics. stopPropagation prevents the row's own\n // onClick from firing a second navigation; React Router's Link still handles\n // the click (stopPropagation does not preventDefault).\n if (linkTo) {\n const link = (\n <Typography\n tag={ReactRouterLink}\n to={linkTo}\n onClick={(e: MouseEvent) => e.stopPropagation()}\n maxWidth=\"30rem\"\n ellipsis\n textColor=\"neutral800\"\n >\n <CellValue isIdColumn={isIdColumn} type={attribute.type} value={content} />\n </Typography>\n );\n\n return attribute.type === 'string' ? <Tooltip label={content}>{link}</Tooltip> : link;\n }\n\n switch (attribute.type) {\n case 'media':\n if (!attribute.multiple) {\n return <MediaSingle {...content} />;\n }\n\n return <MediaMultiple content={content} />;\n\n case 'relation': {\n if (isSingleRelation(attribute.relation)) {\n return <RelationSingle mainField={mainField} content={content} />;\n }\n\n return <RelationMultiple rowId={rowId} mainField={mainField} content={content} name={name} />;\n }\n\n case 'component':\n if (attribute.repeatable) {\n return <RepeatableComponent mainField={mainField} content={content} />;\n }\n\n return <SingleComponent mainField={mainField} content={content} />;\n\n case 'string':\n return (\n <Tooltip label={content}>\n <Typography maxWidth=\"30rem\" ellipsis textColor=\"neutral800\">\n <CellValue isIdColumn={isIdColumn} type={attribute.type} value={content} />\n </Typography>\n </Tooltip>\n );\n\n default:\n return (\n <Typography maxWidth=\"30rem\" ellipsis textColor=\"neutral800\">\n <CellValue isIdColumn={isIdColumn} type={attribute.type} value={content} />\n </Typography>\n );\n }\n};\n\nconst hasContent = (\n content: CellContentProps['content'],\n mainField: CellContentProps['mainField'],\n attribute: CellContentProps['attribute']\n) => {\n if (attribute.type === 'component') {\n // Repeatable fields show the ID as fallback, in case the mainField\n // doesn't have any content\n if (attribute.repeatable || !mainField) {\n return content?.length > 0;\n }\n\n const value = content?.[mainField.name];\n\n // relations, media ... show the id as fallback\n if (mainField.name === 'id' && ![undefined, null].includes(value)) {\n return true;\n }\n\n return !isEmpty(value);\n }\n\n if (attribute.type === 'relation') {\n if (isSingleRelation(attribute.relation)) {\n return !isEmpty(content);\n }\n\n if (Array.isArray(content)) {\n return content.length > 0;\n }\n\n return content?.count > 0;\n }\n\n /*\n Biginteger fields need to be treated as strings, as `isNumber`\n doesn't deal with them.\n */\n if (['integer', 'decimal', 'float', 'number'].includes(attribute.type)) {\n return typeof content === 'number';\n }\n\n if (attribute.type === 'boolean') {\n return content !== null;\n }\n\n return !isEmpty(content);\n};\n\nconst isSingleRelation = (\n type: Extract<CellContentProps['attribute'], { type: 'relation' }>['relation']\n) => ['oneToOne', 'manyToOne', 'oneToOneMorph'].includes(type);\n\nexport { CellContent, hasContent };\nexport type { CellContentProps };\n"],"names":["CellContent","content","mainField","attribute","rowId","name","linkTo","isIdColumn","hasContent","_jsx","Typography","textColor","paddingLeft","type","paddingRight","link","tag","ReactRouterLink","to","onClick","e","stopPropagation","maxWidth","ellipsis","CellValue","value","Tooltip","label","multiple","MediaSingle","MediaMultiple","isSingleRelation","relation","RelationSingle","RelationMultiple","repeatable","RepeatableComponent","SingleComponent","length","undefined","includes","isEmpty","Array","isArray","count"],"mappings":";;;;;;;;;AA2BA,MAAMA,WAAAA,GAAc,CAAC,EAAEC,OAAO,EAAEC,SAAS,EAAEC,SAAS,EAAEC,KAAK,EAAEC,IAAI,EAAEC,MAAM,EAAoB,GAAA;AAC3F,IAAA,MAAMC,aAAaF,IAAAA,KAAS,IAAA;AAE5B,IAAA,IAAI,CAACG,UAAAA,CAAWP,OAAAA,EAASC,SAAAA,EAAWC,SAAAA,CAAAA,EAAY;AAC9C,QAAA,qBACEM,GAAA,CAACC,UAAAA,EAAAA;YACCC,SAAAA,EAAU,YAAA;YACVC,WAAAA,EAAaT,SAAAA,CAAUU,IAAI,KAAK,UAAA,IAAcV,UAAUU,IAAI,KAAK,cAAc,QAAA,GAAW,CAAA;YAC1FC,YAAAA,EACEX,SAAAA,CAAUU,IAAI,KAAK,UAAA,IAAcV,UAAUU,IAAI,KAAK,cAAc,QAAA,GAAW,CAAA;AAEhF,YAAA,QAAA,EAAA;;AAIL,IAAA;;;;;AAMA,IAAA,IAAIP,MAAAA,EAAQ;AACV,QAAA,MAAMS,qBACJN,GAAA,CAACC,UAAAA,EAAAA;YACCM,GAAAA,EAAKC,IAAAA;YACLC,EAAAA,EAAIZ,MAAAA;YACJa,OAAAA,EAAS,CAACC,CAAAA,GAAkBA,CAAAA,CAAEC,eAAe,EAAA;YAC7CC,QAAAA,EAAS,OAAA;YACTC,QAAQ,EAAA,IAAA;YACRZ,SAAAA,EAAU,YAAA;AAEV,YAAA,QAAA,gBAAAF,GAAA,CAACe,SAAAA,EAAAA;gBAAUjB,UAAAA,EAAYA,UAAAA;AAAYM,gBAAAA,IAAAA,EAAMV,UAAUU,IAAI;gBAAEY,KAAAA,EAAOxB;;;AAIpE,QAAA,OAAOE,SAAAA,CAAUU,IAAI,KAAK,QAAA,iBAAWJ,GAAA,CAACiB,OAAAA,EAAAA;YAAQC,KAAAA,EAAO1B,OAAAA;AAAUc,YAAAA,QAAAA,EAAAA;AAAkBA,SAAAA,CAAAA,GAAAA,IAAAA;AACnF,IAAA;AAEA,IAAA,OAAQZ,UAAUU,IAAI;QACpB,KAAK,OAAA;YACH,IAAI,CAACV,SAAAA,CAAUyB,QAAQ,EAAE;AACvB,gBAAA,qBAAOnB,GAAA,CAACoB,WAAAA,EAAAA;AAAa,oBAAA,GAAG5B;;AAC1B,YAAA;AAEA,YAAA,qBAAOQ,GAAA,CAACqB,aAAAA,EAAAA;gBAAc7B,OAAAA,EAASA;;QAEjC,KAAK,UAAA;AAAY,YAAA;gBACf,IAAI8B,gBAAAA,CAAiB5B,SAAAA,CAAU6B,QAAQ,CAAA,EAAG;AACxC,oBAAA,qBAAOvB,GAAA,CAACwB,cAAAA,EAAAA;wBAAe/B,SAAAA,EAAWA,SAAAA;wBAAWD,OAAAA,EAASA;;AACxD,gBAAA;AAEA,gBAAA,qBAAOQ,GAAA,CAACyB,gBAAAA,EAAAA;oBAAiB9B,KAAAA,EAAOA,KAAAA;oBAAOF,SAAAA,EAAWA,SAAAA;oBAAWD,OAAAA,EAASA,OAAAA;oBAASI,IAAAA,EAAMA;;AACvF,YAAA;QAEA,KAAK,WAAA;YACH,IAAIF,SAAAA,CAAUgC,UAAU,EAAE;AACxB,gBAAA,qBAAO1B,GAAA,CAAC2B,mBAAAA,EAAAA;oBAAoBlC,SAAAA,EAAWA,SAAAA;oBAAWD,OAAAA,EAASA;;AAC7D,YAAA;AAEA,YAAA,qBAAOQ,GAAA,CAAC4B,eAAAA,EAAAA;gBAAgBnC,SAAAA,EAAWA,SAAAA;gBAAWD,OAAAA,EAASA;;QAEzD,KAAK,QAAA;AACH,YAAA,qBACEQ,GAAA,CAACiB,OAAAA,EAAAA;gBAAQC,KAAAA,EAAO1B,OAAAA;AACd,gBAAA,QAAA,gBAAAQ,GAAA,CAACC,UAAAA,EAAAA;oBAAWY,QAAAA,EAAS,OAAA;oBAAQC,QAAQ,EAAA,IAAA;oBAACZ,SAAAA,EAAU,YAAA;AAC9C,oBAAA,QAAA,gBAAAF,GAAA,CAACe,SAAAA,EAAAA;wBAAUjB,UAAAA,EAAYA,UAAAA;AAAYM,wBAAAA,IAAAA,EAAMV,UAAUU,IAAI;wBAAEY,KAAAA,EAAOxB;;;;AAKxE,QAAA;AACE,YAAA,qBACEQ,GAAA,CAACC,UAAAA,EAAAA;gBAAWY,QAAAA,EAAS,OAAA;gBAAQC,QAAQ,EAAA,IAAA;gBAACZ,SAAAA,EAAU,YAAA;AAC9C,gBAAA,QAAA,gBAAAF,GAAA,CAACe,SAAAA,EAAAA;oBAAUjB,UAAAA,EAAYA,UAAAA;AAAYM,oBAAAA,IAAAA,EAAMV,UAAUU,IAAI;oBAAEY,KAAAA,EAAOxB;;;AAGxE;AACF;AAEA,MAAMO,UAAAA,GAAa,CACjBP,OAAAA,EACAC,SAAAA,EACAC,SAAAA,GAAAA;IAEA,IAAIA,SAAAA,CAAUU,IAAI,KAAK,WAAA,EAAa;;;AAGlC,QAAA,IAAIV,SAAAA,CAAUgC,UAAU,IAAI,CAACjC,SAAAA,EAAW;AACtC,YAAA,OAAOD,SAASqC,MAAAA,GAAS,CAAA;AAC3B,QAAA;AAEA,QAAA,MAAMb,KAAAA,GAAQxB,OAAAA,GAAUC,SAAAA,CAAUG,IAAI,CAAC;;AAGvC,QAAA,IAAIH,SAAAA,CAAUG,IAAI,KAAK,IAAA,IAAQ,CAAC;AAACkC,YAAAA,SAAAA;AAAW,YAAA;SAAK,CAACC,QAAQ,CAACf,KAAAA,CAAAA,EAAQ;YACjE,OAAO,IAAA;AACT,QAAA;AAEA,QAAA,OAAO,CAACgB,OAAAA,CAAQhB,KAAAA,CAAAA;AAClB,IAAA;IAEA,IAAItB,SAAAA,CAAUU,IAAI,KAAK,UAAA,EAAY;QACjC,IAAIkB,gBAAAA,CAAiB5B,SAAAA,CAAU6B,QAAQ,CAAA,EAAG;AACxC,YAAA,OAAO,CAACS,OAAAA,CAAQxC,OAAAA,CAAAA;AAClB,QAAA;QAEA,IAAIyC,KAAAA,CAAMC,OAAO,CAAC1C,OAAAA,CAAAA,EAAU;YAC1B,OAAOA,OAAAA,CAAQqC,MAAM,GAAG,CAAA;AAC1B,QAAA;AAEA,QAAA,OAAOrC,SAAS2C,KAAAA,GAAQ,CAAA;AAC1B,IAAA;AAEA;;;AAGA,KACA,IAAI;AAAC,QAAA,SAAA;AAAW,QAAA,SAAA;AAAW,QAAA,OAAA;AAAS,QAAA;AAAS,KAAA,CAACJ,QAAQ,CAACrC,SAAAA,CAAUU,IAAI,CAAA,EAAG;AACtE,QAAA,OAAO,OAAOZ,OAAAA,KAAY,QAAA;AAC5B,IAAA;IAEA,IAAIE,SAAAA,CAAUU,IAAI,KAAK,SAAA,EAAW;AAChC,QAAA,OAAOZ,OAAAA,KAAY,IAAA;AACrB,IAAA;AAEA,IAAA,OAAO,CAACwC,OAAAA,CAAQxC,OAAAA,CAAAA;AAClB;AAEA,MAAM8B,gBAAAA,GAAmB,CACvBlB,IAAAA,GACG;AAAC,QAAA,UAAA;AAAY,QAAA,WAAA;AAAa,QAAA;AAAgB,KAAA,CAAC2B,QAAQ,CAAC3B,IAAAA,CAAAA;;;;"}
@@ -12,7 +12,7 @@ var toString__default = /*#__PURE__*/_interopDefault(toString);
12
12
  const CellValue = ({ isIdColumn = false, type, value })=>{
13
13
  const { formatDate, formatTime, formatNumber, formatMessage } = reactIntl.useIntl();
14
14
  let formattedValue = value;
15
- if (type === 'date') {
15
+ if (type === 'date' && typeof value === 'string') {
16
16
  formattedValue = formatDate(parseISO__default.default(value), {
17
17
  dateStyle: 'full'
18
18
  });
@@ -23,12 +23,12 @@ const CellValue = ({ isIdColumn = false, type, value })=>{
23
23
  timeStyle: 'short'
24
24
  });
25
25
  }
26
- if (type === 'time') {
26
+ if (type === 'time' && typeof value === 'string') {
27
27
  const [hour, minute, second] = value.split(':');
28
28
  const date = new Date();
29
- date.setHours(hour);
30
- date.setMinutes(minute);
31
- date.setSeconds(second);
29
+ date.setHours(Number(hour));
30
+ date.setMinutes(Number(minute));
31
+ date.setSeconds(Number(second));
32
32
  formattedValue = formatTime(date, {
33
33
  timeStyle: 'short'
34
34
  });
@@ -44,9 +44,10 @@ const CellValue = ({ isIdColumn = false, type, value })=>{
44
44
  });
45
45
  }
46
46
  if (type === 'boolean') {
47
+ const booleanValue = Boolean(value);
47
48
  formattedValue = formatMessage({
48
- id: value ? 'app.components.ToggleCheckbox.on-label' : 'app.components.ToggleCheckbox.off-label',
49
- defaultMessage: value ? 'true' : 'false'
49
+ id: booleanValue ? 'app.components.ToggleCheckbox.on-label' : 'app.components.ToggleCheckbox.off-label',
50
+ defaultMessage: booleanValue ? 'true' : 'false'
50
51
  });
51
52
  }
52
53
  if ([
@@ -1 +1 @@
1
- {"version":3,"file":"CellValue.js","sources":["../../../../../../admin/src/pages/ListView/components/TableCells/CellValue.tsx"],"sourcesContent":["import parseISO from 'date-fns/parseISO';\nimport toString from 'lodash/toString';\nimport { useIntl } from 'react-intl';\n\nimport type { Schema } from '@strapi/types';\n\ninterface CellValueProps {\n isIdColumn?: boolean;\n type: Schema.Attribute.Kind | 'custom';\n value: any;\n}\n\nconst CellValue = ({ isIdColumn = false, type, value }: CellValueProps) => {\n const { formatDate, formatTime, formatNumber, formatMessage } = useIntl();\n let formattedValue = value;\n\n if (type === 'date') {\n formattedValue = formatDate(parseISO(value), { dateStyle: 'full' });\n }\n\n if (type === 'datetime') {\n formattedValue = formatDate(value, { dateStyle: 'full', timeStyle: 'short' });\n }\n\n if (type === 'time') {\n const [hour, minute, second] = value.split(':');\n const date = new Date();\n date.setHours(hour);\n date.setMinutes(minute);\n date.setSeconds(second);\n\n formattedValue = formatTime(date, {\n timeStyle: 'short',\n });\n }\n\n if (['float', 'decimal'].includes(type)) {\n formattedValue = formatNumber(value, {\n // Should be kept in sync with the corresponding value\n // in the design-system/NumberInput: https://github.com/strapi/design-system/blob/main/packages/strapi-design-system/src/NumberInput/NumberInput.js#L53\n maximumFractionDigits: 20,\n });\n }\n\n if (type === 'boolean') {\n formattedValue = formatMessage({\n id: value\n ? 'app.components.ToggleCheckbox.on-label'\n : 'app.components.ToggleCheckbox.off-label',\n defaultMessage: value ? 'true' : 'false',\n });\n }\n\n if (['integer', 'biginteger'].includes(type)) {\n formattedValue = formatNumber(value, { maximumFractionDigits: 0, useGrouping: !isIdColumn });\n }\n\n return toString(formattedValue);\n};\n\nexport { CellValue };\nexport type { CellValueProps };\n"],"names":["CellValue","isIdColumn","type","value","formatDate","formatTime","formatNumber","formatMessage","useIntl","formattedValue","parseISO","dateStyle","timeStyle","hour","minute","second","split","date","Date","setHours","setMinutes","setSeconds","includes","maximumFractionDigits","id","defaultMessage","useGrouping","toString"],"mappings":";;;;;;;;;;;AAYA,MAAMA,SAAAA,GAAY,CAAC,EAAEC,UAAAA,GAAa,KAAK,EAAEC,IAAI,EAAEC,KAAK,EAAkB,GAAA;IACpE,MAAM,EAAEC,UAAU,EAAEC,UAAU,EAAEC,YAAY,EAAEC,aAAa,EAAE,GAAGC,iBAAAA,EAAAA;AAChE,IAAA,IAAIC,cAAAA,GAAiBN,KAAAA;AAErB,IAAA,IAAID,SAAS,MAAA,EAAQ;QACnBO,cAAAA,GAAiBL,UAAAA,CAAWM,0BAASP,KAAAA,CAAAA,EAAQ;YAAEQ,SAAAA,EAAW;AAAO,SAAA,CAAA;AACnE,IAAA;AAEA,IAAA,IAAIT,SAAS,UAAA,EAAY;AACvBO,QAAAA,cAAAA,GAAiBL,WAAWD,KAAAA,EAAO;YAAEQ,SAAAA,EAAW,MAAA;YAAQC,SAAAA,EAAW;AAAQ,SAAA,CAAA;AAC7E,IAAA;AAEA,IAAA,IAAIV,SAAS,MAAA,EAAQ;AACnB,QAAA,MAAM,CAACW,IAAAA,EAAMC,MAAAA,EAAQC,OAAO,GAAGZ,KAAAA,CAAMa,KAAK,CAAC,GAAA,CAAA;AAC3C,QAAA,MAAMC,OAAO,IAAIC,IAAAA,EAAAA;AACjBD,QAAAA,IAAAA,CAAKE,QAAQ,CAACN,IAAAA,CAAAA;AACdI,QAAAA,IAAAA,CAAKG,UAAU,CAACN,MAAAA,CAAAA;AAChBG,QAAAA,IAAAA,CAAKI,UAAU,CAACN,MAAAA,CAAAA;AAEhBN,QAAAA,cAAAA,GAAiBJ,WAAWY,IAAAA,EAAM;YAChCL,SAAAA,EAAW;AACb,SAAA,CAAA;AACF,IAAA;IAEA,IAAI;AAAC,QAAA,OAAA;AAAS,QAAA;KAAU,CAACU,QAAQ,CAACpB,IAAAA,CAAAA,EAAO;AACvCO,QAAAA,cAAAA,GAAiBH,aAAaH,KAAAA,EAAO;;;YAGnCoB,qBAAAA,EAAuB;AACzB,SAAA,CAAA;AACF,IAAA;AAEA,IAAA,IAAIrB,SAAS,SAAA,EAAW;AACtBO,QAAAA,cAAAA,GAAiBF,aAAAA,CAAc;AAC7BiB,YAAAA,EAAAA,EAAIrB,QACA,wCAAA,GACA,yCAAA;AACJsB,YAAAA,cAAAA,EAAgBtB,QAAQ,MAAA,GAAS;AACnC,SAAA,CAAA;AACF,IAAA;IAEA,IAAI;AAAC,QAAA,SAAA;AAAW,QAAA;KAAa,CAACmB,QAAQ,CAACpB,IAAAA,CAAAA,EAAO;AAC5CO,QAAAA,cAAAA,GAAiBH,aAAaH,KAAAA,EAAO;YAAEoB,qBAAAA,EAAuB,CAAA;AAAGG,YAAAA,WAAAA,EAAa,CAACzB;AAAW,SAAA,CAAA;AAC5F,IAAA;AAEA,IAAA,OAAO0B,yBAAAA,CAASlB,cAAAA,CAAAA;AAClB;;;;"}
1
+ {"version":3,"file":"CellValue.js","sources":["../../../../../../admin/src/pages/ListView/components/TableCells/CellValue.tsx"],"sourcesContent":["import parseISO from 'date-fns/parseISO';\nimport toString from 'lodash/toString';\nimport { useIntl } from 'react-intl';\n\nimport type { Schema } from '@strapi/types';\n\ninterface CellValueProps {\n isIdColumn?: boolean;\n type: Schema.Attribute.Kind | 'custom';\n value: unknown;\n}\n\nconst CellValue = ({ isIdColumn = false, type, value }: CellValueProps) => {\n const { formatDate, formatTime, formatNumber, formatMessage } = useIntl();\n let formattedValue = value;\n\n if (type === 'date' && typeof value === 'string') {\n formattedValue = formatDate(parseISO(value), { dateStyle: 'full' });\n }\n\n if (type === 'datetime') {\n formattedValue = formatDate(value as Parameters<typeof formatDate>[0], {\n dateStyle: 'full',\n timeStyle: 'short',\n });\n }\n\n if (type === 'time' && typeof value === 'string') {\n const [hour, minute, second] = value.split(':');\n const date = new Date();\n date.setHours(Number(hour));\n date.setMinutes(Number(minute));\n date.setSeconds(Number(second));\n\n formattedValue = formatTime(date, {\n timeStyle: 'short',\n });\n }\n\n if (['float', 'decimal'].includes(type)) {\n formattedValue = formatNumber(value as Parameters<typeof formatNumber>[0], {\n // Should be kept in sync with the corresponding value\n // in the design-system/NumberInput: https://github.com/strapi/design-system/blob/main/packages/strapi-design-system/src/NumberInput/NumberInput.js#L53\n maximumFractionDigits: 20,\n });\n }\n\n if (type === 'boolean') {\n const booleanValue = Boolean(value);\n formattedValue = formatMessage({\n id: booleanValue\n ? 'app.components.ToggleCheckbox.on-label'\n : 'app.components.ToggleCheckbox.off-label',\n defaultMessage: booleanValue ? 'true' : 'false',\n });\n }\n\n if (['integer', 'biginteger'].includes(type)) {\n formattedValue = formatNumber(value as Parameters<typeof formatNumber>[0], {\n maximumFractionDigits: 0,\n useGrouping: !isIdColumn,\n });\n }\n\n return toString(formattedValue);\n};\n\nexport { CellValue };\nexport type { CellValueProps };\n"],"names":["CellValue","isIdColumn","type","value","formatDate","formatTime","formatNumber","formatMessage","useIntl","formattedValue","parseISO","dateStyle","timeStyle","hour","minute","second","split","date","Date","setHours","Number","setMinutes","setSeconds","includes","maximumFractionDigits","booleanValue","Boolean","id","defaultMessage","useGrouping","toString"],"mappings":";;;;;;;;;;;AAYA,MAAMA,SAAAA,GAAY,CAAC,EAAEC,UAAAA,GAAa,KAAK,EAAEC,IAAI,EAAEC,KAAK,EAAkB,GAAA;IACpE,MAAM,EAAEC,UAAU,EAAEC,UAAU,EAAEC,YAAY,EAAEC,aAAa,EAAE,GAAGC,iBAAAA,EAAAA;AAChE,IAAA,IAAIC,cAAAA,GAAiBN,KAAAA;AAErB,IAAA,IAAID,IAAAA,KAAS,MAAA,IAAU,OAAOC,KAAAA,KAAU,QAAA,EAAU;QAChDM,cAAAA,GAAiBL,UAAAA,CAAWM,0BAASP,KAAAA,CAAAA,EAAQ;YAAEQ,SAAAA,EAAW;AAAO,SAAA,CAAA;AACnE,IAAA;AAEA,IAAA,IAAIT,SAAS,UAAA,EAAY;AACvBO,QAAAA,cAAAA,GAAiBL,WAAWD,KAAAA,EAA2C;YACrEQ,SAAAA,EAAW,MAAA;YACXC,SAAAA,EAAW;AACb,SAAA,CAAA;AACF,IAAA;AAEA,IAAA,IAAIV,IAAAA,KAAS,MAAA,IAAU,OAAOC,KAAAA,KAAU,QAAA,EAAU;AAChD,QAAA,MAAM,CAACU,IAAAA,EAAMC,MAAAA,EAAQC,OAAO,GAAGZ,KAAAA,CAAMa,KAAK,CAAC,GAAA,CAAA;AAC3C,QAAA,MAAMC,OAAO,IAAIC,IAAAA,EAAAA;QACjBD,IAAAA,CAAKE,QAAQ,CAACC,MAAAA,CAAOP,IAAAA,CAAAA,CAAAA;QACrBI,IAAAA,CAAKI,UAAU,CAACD,MAAAA,CAAON,MAAAA,CAAAA,CAAAA;QACvBG,IAAAA,CAAKK,UAAU,CAACF,MAAAA,CAAOL,MAAAA,CAAAA,CAAAA;AAEvBN,QAAAA,cAAAA,GAAiBJ,WAAWY,IAAAA,EAAM;YAChCL,SAAAA,EAAW;AACb,SAAA,CAAA;AACF,IAAA;IAEA,IAAI;AAAC,QAAA,OAAA;AAAS,QAAA;KAAU,CAACW,QAAQ,CAACrB,IAAAA,CAAAA,EAAO;AACvCO,QAAAA,cAAAA,GAAiBH,aAAaH,KAAAA,EAA6C;;;YAGzEqB,qBAAAA,EAAuB;AACzB,SAAA,CAAA;AACF,IAAA;AAEA,IAAA,IAAItB,SAAS,SAAA,EAAW;AACtB,QAAA,MAAMuB,eAAeC,OAAAA,CAAQvB,KAAAA,CAAAA;AAC7BM,QAAAA,cAAAA,GAAiBF,aAAAA,CAAc;AAC7BoB,YAAAA,EAAAA,EAAIF,eACA,wCAAA,GACA,yCAAA;AACJG,YAAAA,cAAAA,EAAgBH,eAAe,MAAA,GAAS;AAC1C,SAAA,CAAA;AACF,IAAA;IAEA,IAAI;AAAC,QAAA,SAAA;AAAW,QAAA;KAAa,CAACF,QAAQ,CAACrB,IAAAA,CAAAA,EAAO;AAC5CO,QAAAA,cAAAA,GAAiBH,aAAaH,KAAAA,EAA6C;YACzEqB,qBAAAA,EAAuB,CAAA;AACvBK,YAAAA,WAAAA,EAAa,CAAC5B;AAChB,SAAA,CAAA;AACF,IAAA;AAEA,IAAA,OAAO6B,yBAAAA,CAASrB,cAAAA,CAAAA;AAClB;;;;"}
@@ -5,7 +5,7 @@ import { useIntl } from 'react-intl';
5
5
  const CellValue = ({ isIdColumn = false, type, value })=>{
6
6
  const { formatDate, formatTime, formatNumber, formatMessage } = useIntl();
7
7
  let formattedValue = value;
8
- if (type === 'date') {
8
+ if (type === 'date' && typeof value === 'string') {
9
9
  formattedValue = formatDate(parseISO(value), {
10
10
  dateStyle: 'full'
11
11
  });
@@ -16,12 +16,12 @@ const CellValue = ({ isIdColumn = false, type, value })=>{
16
16
  timeStyle: 'short'
17
17
  });
18
18
  }
19
- if (type === 'time') {
19
+ if (type === 'time' && typeof value === 'string') {
20
20
  const [hour, minute, second] = value.split(':');
21
21
  const date = new Date();
22
- date.setHours(hour);
23
- date.setMinutes(minute);
24
- date.setSeconds(second);
22
+ date.setHours(Number(hour));
23
+ date.setMinutes(Number(minute));
24
+ date.setSeconds(Number(second));
25
25
  formattedValue = formatTime(date, {
26
26
  timeStyle: 'short'
27
27
  });
@@ -37,9 +37,10 @@ const CellValue = ({ isIdColumn = false, type, value })=>{
37
37
  });
38
38
  }
39
39
  if (type === 'boolean') {
40
+ const booleanValue = Boolean(value);
40
41
  formattedValue = formatMessage({
41
- id: value ? 'app.components.ToggleCheckbox.on-label' : 'app.components.ToggleCheckbox.off-label',
42
- defaultMessage: value ? 'true' : 'false'
42
+ id: booleanValue ? 'app.components.ToggleCheckbox.on-label' : 'app.components.ToggleCheckbox.off-label',
43
+ defaultMessage: booleanValue ? 'true' : 'false'
43
44
  });
44
45
  }
45
46
  if ([
@@ -1 +1 @@
1
- {"version":3,"file":"CellValue.mjs","sources":["../../../../../../admin/src/pages/ListView/components/TableCells/CellValue.tsx"],"sourcesContent":["import parseISO from 'date-fns/parseISO';\nimport toString from 'lodash/toString';\nimport { useIntl } from 'react-intl';\n\nimport type { Schema } from '@strapi/types';\n\ninterface CellValueProps {\n isIdColumn?: boolean;\n type: Schema.Attribute.Kind | 'custom';\n value: any;\n}\n\nconst CellValue = ({ isIdColumn = false, type, value }: CellValueProps) => {\n const { formatDate, formatTime, formatNumber, formatMessage } = useIntl();\n let formattedValue = value;\n\n if (type === 'date') {\n formattedValue = formatDate(parseISO(value), { dateStyle: 'full' });\n }\n\n if (type === 'datetime') {\n formattedValue = formatDate(value, { dateStyle: 'full', timeStyle: 'short' });\n }\n\n if (type === 'time') {\n const [hour, minute, second] = value.split(':');\n const date = new Date();\n date.setHours(hour);\n date.setMinutes(minute);\n date.setSeconds(second);\n\n formattedValue = formatTime(date, {\n timeStyle: 'short',\n });\n }\n\n if (['float', 'decimal'].includes(type)) {\n formattedValue = formatNumber(value, {\n // Should be kept in sync with the corresponding value\n // in the design-system/NumberInput: https://github.com/strapi/design-system/blob/main/packages/strapi-design-system/src/NumberInput/NumberInput.js#L53\n maximumFractionDigits: 20,\n });\n }\n\n if (type === 'boolean') {\n formattedValue = formatMessage({\n id: value\n ? 'app.components.ToggleCheckbox.on-label'\n : 'app.components.ToggleCheckbox.off-label',\n defaultMessage: value ? 'true' : 'false',\n });\n }\n\n if (['integer', 'biginteger'].includes(type)) {\n formattedValue = formatNumber(value, { maximumFractionDigits: 0, useGrouping: !isIdColumn });\n }\n\n return toString(formattedValue);\n};\n\nexport { CellValue };\nexport type { CellValueProps };\n"],"names":["CellValue","isIdColumn","type","value","formatDate","formatTime","formatNumber","formatMessage","useIntl","formattedValue","parseISO","dateStyle","timeStyle","hour","minute","second","split","date","Date","setHours","setMinutes","setSeconds","includes","maximumFractionDigits","id","defaultMessage","useGrouping","toString"],"mappings":";;;;AAYA,MAAMA,SAAAA,GAAY,CAAC,EAAEC,UAAAA,GAAa,KAAK,EAAEC,IAAI,EAAEC,KAAK,EAAkB,GAAA;IACpE,MAAM,EAAEC,UAAU,EAAEC,UAAU,EAAEC,YAAY,EAAEC,aAAa,EAAE,GAAGC,OAAAA,EAAAA;AAChE,IAAA,IAAIC,cAAAA,GAAiBN,KAAAA;AAErB,IAAA,IAAID,SAAS,MAAA,EAAQ;QACnBO,cAAAA,GAAiBL,UAAAA,CAAWM,SAASP,KAAAA,CAAAA,EAAQ;YAAEQ,SAAAA,EAAW;AAAO,SAAA,CAAA;AACnE,IAAA;AAEA,IAAA,IAAIT,SAAS,UAAA,EAAY;AACvBO,QAAAA,cAAAA,GAAiBL,WAAWD,KAAAA,EAAO;YAAEQ,SAAAA,EAAW,MAAA;YAAQC,SAAAA,EAAW;AAAQ,SAAA,CAAA;AAC7E,IAAA;AAEA,IAAA,IAAIV,SAAS,MAAA,EAAQ;AACnB,QAAA,MAAM,CAACW,IAAAA,EAAMC,MAAAA,EAAQC,OAAO,GAAGZ,KAAAA,CAAMa,KAAK,CAAC,GAAA,CAAA;AAC3C,QAAA,MAAMC,OAAO,IAAIC,IAAAA,EAAAA;AACjBD,QAAAA,IAAAA,CAAKE,QAAQ,CAACN,IAAAA,CAAAA;AACdI,QAAAA,IAAAA,CAAKG,UAAU,CAACN,MAAAA,CAAAA;AAChBG,QAAAA,IAAAA,CAAKI,UAAU,CAACN,MAAAA,CAAAA;AAEhBN,QAAAA,cAAAA,GAAiBJ,WAAWY,IAAAA,EAAM;YAChCL,SAAAA,EAAW;AACb,SAAA,CAAA;AACF,IAAA;IAEA,IAAI;AAAC,QAAA,OAAA;AAAS,QAAA;KAAU,CAACU,QAAQ,CAACpB,IAAAA,CAAAA,EAAO;AACvCO,QAAAA,cAAAA,GAAiBH,aAAaH,KAAAA,EAAO;;;YAGnCoB,qBAAAA,EAAuB;AACzB,SAAA,CAAA;AACF,IAAA;AAEA,IAAA,IAAIrB,SAAS,SAAA,EAAW;AACtBO,QAAAA,cAAAA,GAAiBF,aAAAA,CAAc;AAC7BiB,YAAAA,EAAAA,EAAIrB,QACA,wCAAA,GACA,yCAAA;AACJsB,YAAAA,cAAAA,EAAgBtB,QAAQ,MAAA,GAAS;AACnC,SAAA,CAAA;AACF,IAAA;IAEA,IAAI;AAAC,QAAA,SAAA;AAAW,QAAA;KAAa,CAACmB,QAAQ,CAACpB,IAAAA,CAAAA,EAAO;AAC5CO,QAAAA,cAAAA,GAAiBH,aAAaH,KAAAA,EAAO;YAAEoB,qBAAAA,EAAuB,CAAA;AAAGG,YAAAA,WAAAA,EAAa,CAACzB;AAAW,SAAA,CAAA;AAC5F,IAAA;AAEA,IAAA,OAAO0B,QAAAA,CAASlB,cAAAA,CAAAA;AAClB;;;;"}
1
+ {"version":3,"file":"CellValue.mjs","sources":["../../../../../../admin/src/pages/ListView/components/TableCells/CellValue.tsx"],"sourcesContent":["import parseISO from 'date-fns/parseISO';\nimport toString from 'lodash/toString';\nimport { useIntl } from 'react-intl';\n\nimport type { Schema } from '@strapi/types';\n\ninterface CellValueProps {\n isIdColumn?: boolean;\n type: Schema.Attribute.Kind | 'custom';\n value: unknown;\n}\n\nconst CellValue = ({ isIdColumn = false, type, value }: CellValueProps) => {\n const { formatDate, formatTime, formatNumber, formatMessage } = useIntl();\n let formattedValue = value;\n\n if (type === 'date' && typeof value === 'string') {\n formattedValue = formatDate(parseISO(value), { dateStyle: 'full' });\n }\n\n if (type === 'datetime') {\n formattedValue = formatDate(value as Parameters<typeof formatDate>[0], {\n dateStyle: 'full',\n timeStyle: 'short',\n });\n }\n\n if (type === 'time' && typeof value === 'string') {\n const [hour, minute, second] = value.split(':');\n const date = new Date();\n date.setHours(Number(hour));\n date.setMinutes(Number(minute));\n date.setSeconds(Number(second));\n\n formattedValue = formatTime(date, {\n timeStyle: 'short',\n });\n }\n\n if (['float', 'decimal'].includes(type)) {\n formattedValue = formatNumber(value as Parameters<typeof formatNumber>[0], {\n // Should be kept in sync with the corresponding value\n // in the design-system/NumberInput: https://github.com/strapi/design-system/blob/main/packages/strapi-design-system/src/NumberInput/NumberInput.js#L53\n maximumFractionDigits: 20,\n });\n }\n\n if (type === 'boolean') {\n const booleanValue = Boolean(value);\n formattedValue = formatMessage({\n id: booleanValue\n ? 'app.components.ToggleCheckbox.on-label'\n : 'app.components.ToggleCheckbox.off-label',\n defaultMessage: booleanValue ? 'true' : 'false',\n });\n }\n\n if (['integer', 'biginteger'].includes(type)) {\n formattedValue = formatNumber(value as Parameters<typeof formatNumber>[0], {\n maximumFractionDigits: 0,\n useGrouping: !isIdColumn,\n });\n }\n\n return toString(formattedValue);\n};\n\nexport { CellValue };\nexport type { CellValueProps };\n"],"names":["CellValue","isIdColumn","type","value","formatDate","formatTime","formatNumber","formatMessage","useIntl","formattedValue","parseISO","dateStyle","timeStyle","hour","minute","second","split","date","Date","setHours","Number","setMinutes","setSeconds","includes","maximumFractionDigits","booleanValue","Boolean","id","defaultMessage","useGrouping","toString"],"mappings":";;;;AAYA,MAAMA,SAAAA,GAAY,CAAC,EAAEC,UAAAA,GAAa,KAAK,EAAEC,IAAI,EAAEC,KAAK,EAAkB,GAAA;IACpE,MAAM,EAAEC,UAAU,EAAEC,UAAU,EAAEC,YAAY,EAAEC,aAAa,EAAE,GAAGC,OAAAA,EAAAA;AAChE,IAAA,IAAIC,cAAAA,GAAiBN,KAAAA;AAErB,IAAA,IAAID,IAAAA,KAAS,MAAA,IAAU,OAAOC,KAAAA,KAAU,QAAA,EAAU;QAChDM,cAAAA,GAAiBL,UAAAA,CAAWM,SAASP,KAAAA,CAAAA,EAAQ;YAAEQ,SAAAA,EAAW;AAAO,SAAA,CAAA;AACnE,IAAA;AAEA,IAAA,IAAIT,SAAS,UAAA,EAAY;AACvBO,QAAAA,cAAAA,GAAiBL,WAAWD,KAAAA,EAA2C;YACrEQ,SAAAA,EAAW,MAAA;YACXC,SAAAA,EAAW;AACb,SAAA,CAAA;AACF,IAAA;AAEA,IAAA,IAAIV,IAAAA,KAAS,MAAA,IAAU,OAAOC,KAAAA,KAAU,QAAA,EAAU;AAChD,QAAA,MAAM,CAACU,IAAAA,EAAMC,MAAAA,EAAQC,OAAO,GAAGZ,KAAAA,CAAMa,KAAK,CAAC,GAAA,CAAA;AAC3C,QAAA,MAAMC,OAAO,IAAIC,IAAAA,EAAAA;QACjBD,IAAAA,CAAKE,QAAQ,CAACC,MAAAA,CAAOP,IAAAA,CAAAA,CAAAA;QACrBI,IAAAA,CAAKI,UAAU,CAACD,MAAAA,CAAON,MAAAA,CAAAA,CAAAA;QACvBG,IAAAA,CAAKK,UAAU,CAACF,MAAAA,CAAOL,MAAAA,CAAAA,CAAAA;AAEvBN,QAAAA,cAAAA,GAAiBJ,WAAWY,IAAAA,EAAM;YAChCL,SAAAA,EAAW;AACb,SAAA,CAAA;AACF,IAAA;IAEA,IAAI;AAAC,QAAA,OAAA;AAAS,QAAA;KAAU,CAACW,QAAQ,CAACrB,IAAAA,CAAAA,EAAO;AACvCO,QAAAA,cAAAA,GAAiBH,aAAaH,KAAAA,EAA6C;;;YAGzEqB,qBAAAA,EAAuB;AACzB,SAAA,CAAA;AACF,IAAA;AAEA,IAAA,IAAItB,SAAS,SAAA,EAAW;AACtB,QAAA,MAAMuB,eAAeC,OAAAA,CAAQvB,KAAAA,CAAAA;AAC7BM,QAAAA,cAAAA,GAAiBF,aAAAA,CAAc;AAC7BoB,YAAAA,EAAAA,EAAIF,eACA,wCAAA,GACA,yCAAA;AACJG,YAAAA,cAAAA,EAAgBH,eAAe,MAAA,GAAS;AAC1C,SAAA,CAAA;AACF,IAAA;IAEA,IAAI;AAAC,QAAA,SAAA;AAAW,QAAA;KAAa,CAACF,QAAQ,CAACrB,IAAAA,CAAAA,EAAO;AAC5CO,QAAAA,cAAAA,GAAiBH,aAAaH,KAAAA,EAA6C;YACzEqB,qBAAAA,EAAuB,CAAA;AACvBK,YAAAA,WAAAA,EAAa,CAAC5B;AAChB,SAAA,CAAA;AACF,IAAA;AAEA,IAAA,OAAO6B,QAAAA,CAASrB,cAAAA,CAAAA;AAClB;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"Components.js","sources":["../../../../../../admin/src/pages/ListView/components/TableCells/Components.tsx"],"sourcesContent":["import { Badge, Tooltip, Typography, Menu } from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\nimport { styled } from 'styled-components';\n\nimport { CellContentProps } from './CellContent';\nimport { CellValue } from './CellValue';\n\nimport type { Schema } from '@strapi/types';\n\n/* -------------------------------------------------------------------------------------------------\n * SingleComponent\n * -----------------------------------------------------------------------------------------------*/\n\ninterface SingleComponentProps extends Pick<CellContentProps, 'mainField'> {\n content: Schema.Attribute.Value<Schema.Attribute.Component<`${string}.${string}`, false>>;\n}\n\nconst SingleComponent = ({ content, mainField }: SingleComponentProps) => {\n if (!mainField) {\n return null;\n }\n\n return (\n <Tooltip label={content[mainField.name]}>\n <Typography maxWidth=\"25rem\" textColor=\"neutral800\" ellipsis>\n <CellValue type={mainField.type} value={content[mainField.name]} />\n </Typography>\n </Tooltip>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * RepeatableComponent\n * -----------------------------------------------------------------------------------------------*/\n\ninterface RepeatableComponentProps extends Pick<CellContentProps, 'mainField'> {\n content: Schema.Attribute.Value<Schema.Attribute.Component<`${string}.${string}`, true>>;\n}\n\nconst RepeatableComponent = ({ content, mainField }: RepeatableComponentProps) => {\n const { formatMessage } = useIntl();\n\n if (!mainField) {\n return null;\n }\n\n return (\n <Menu.Root>\n <Menu.Trigger onClick={(e) => e.stopPropagation()}>\n <Badge>{content.length}</Badge>\n {formatMessage(\n {\n id: 'content-manager.containers.list.items',\n defaultMessage: '{number, plural, =0 {items} one {item} other {items}}',\n },\n { number: content.length }\n )}\n </Menu.Trigger>\n <Menu.Content>\n {content.map((item) => (\n <Menu.Item key={item.id} disabled>\n <Typography maxWidth=\"50rem\" ellipsis>\n <CellValue type={mainField.type} value={item[mainField.name]} />\n </Typography>\n </Menu.Item>\n ))}\n </Menu.Content>\n </Menu.Root>\n );\n};\n\nexport { SingleComponent, RepeatableComponent };\nexport type { SingleComponentProps, RepeatableComponentProps };\n"],"names":["SingleComponent","content","mainField","_jsx","Tooltip","label","name","Typography","maxWidth","textColor","ellipsis","CellValue","type","value","RepeatableComponent","formatMessage","useIntl","_jsxs","Menu","Root","Trigger","onClick","e","stopPropagation","Badge","length","id","defaultMessage","number","Content","map","item","Item","disabled"],"mappings":";;;;;;;AAiBA,MAAMA,kBAAkB,CAAC,EAAEC,OAAO,EAAEC,SAAS,EAAwB,GAAA;AACnE,IAAA,IAAI,CAACA,SAAAA,EAAW;QACd,OAAO,IAAA;AACT,IAAA;AAEA,IAAA,qBACEC,cAAA,CAACC,oBAAAA,EAAAA;AAAQC,QAAAA,KAAAA,EAAOJ,OAAO,CAACC,SAAAA,CAAUI,IAAI,CAAC;AACrC,QAAA,QAAA,gBAAAH,cAAA,CAACI,uBAAAA,EAAAA;YAAWC,QAAAA,EAAS,OAAA;YAAQC,SAAAA,EAAU,YAAA;YAAaC,QAAQ,EAAA,IAAA;AAC1D,YAAA,QAAA,gBAAAP,cAAA,CAACQ,mBAAAA,EAAAA;AAAUC,gBAAAA,IAAAA,EAAMV,UAAUU,IAAI;AAAEC,gBAAAA,KAAAA,EAAOZ,OAAO,CAACC,SAAAA,CAAUI,IAAI;;;;AAItE;AAUA,MAAMQ,sBAAsB,CAAC,EAAEb,OAAO,EAAEC,SAAS,EAA4B,GAAA;IAC3E,MAAM,EAAEa,aAAa,EAAE,GAAGC,iBAAAA,EAAAA;AAE1B,IAAA,IAAI,CAACd,SAAAA,EAAW;QACd,OAAO,IAAA;AACT,IAAA;IAEA,qBACEe,eAAA,CAACC,kBAAKC,IAAI,EAAA;;AACR,0BAAAF,eAAA,CAACC,kBAAKE,OAAO,EAAA;gBAACC,OAAAA,EAAS,CAACC,CAAAA,GAAMA,CAAAA,CAAEC,eAAe,EAAA;;kCAC7CpB,cAAA,CAACqB,kBAAAA,EAAAA;AAAOvB,wBAAAA,QAAAA,EAAAA,OAAAA,CAAQwB;;oBACfV,aAAAA,CACC;wBACEW,EAAAA,EAAI,uCAAA;wBACJC,cAAAA,EAAgB;qBAClB,EACA;AAAEC,wBAAAA,MAAAA,EAAQ3B,QAAQwB;AAAO,qBAAA;;;AAG7B,0BAAAtB,cAAA,CAACe,kBAAKW,OAAO,EAAA;AACV5B,gBAAAA,QAAAA,EAAAA,OAAAA,CAAQ6B,GAAG,CAAC,CAACC,IAAAA,iBACZ5B,cAAA,CAACe,kBAAKc,IAAI,EAAA;wBAAeC,QAAQ,EAAA,IAAA;AAC/B,wBAAA,QAAA,gBAAA9B,cAAA,CAACI,uBAAAA,EAAAA;4BAAWC,QAAAA,EAAS,OAAA;4BAAQE,QAAQ,EAAA,IAAA;AACnC,4BAAA,QAAA,gBAAAP,cAAA,CAACQ,mBAAAA,EAAAA;AAAUC,gCAAAA,IAAAA,EAAMV,UAAUU,IAAI;AAAEC,gCAAAA,KAAAA,EAAOkB,IAAI,CAAC7B,SAAAA,CAAUI,IAAI;;;AAF/CyB,qBAAAA,EAAAA,IAAAA,CAAKL,EAAE,CAAA;;;;AASjC;;;;;"}
1
+ {"version":3,"file":"Components.js","sources":["../../../../../../admin/src/pages/ListView/components/TableCells/Components.tsx"],"sourcesContent":["import { Badge, Tooltip, Typography, Menu } from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\n\nimport { CellContentProps } from './CellContent';\nimport { CellValue } from './CellValue';\n\nimport type { Schema } from '@strapi/types';\n\n/* -------------------------------------------------------------------------------------------------\n * SingleComponent\n * -----------------------------------------------------------------------------------------------*/\n\ninterface SingleComponentProps extends Pick<CellContentProps, 'mainField'> {\n content: Schema.Attribute.Value<Schema.Attribute.Component<`${string}.${string}`, false>>;\n}\n\nconst SingleComponent = ({ content, mainField }: SingleComponentProps) => {\n if (!mainField) {\n return null;\n }\n\n return (\n <Tooltip label={content[mainField.name]}>\n <Typography maxWidth=\"25rem\" textColor=\"neutral800\" ellipsis>\n <CellValue type={mainField.type} value={content[mainField.name]} />\n </Typography>\n </Tooltip>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * RepeatableComponent\n * -----------------------------------------------------------------------------------------------*/\n\ninterface RepeatableComponentProps extends Pick<CellContentProps, 'mainField'> {\n content: Schema.Attribute.Value<Schema.Attribute.Component<`${string}.${string}`, true>>;\n}\n\nconst RepeatableComponent = ({ content, mainField }: RepeatableComponentProps) => {\n const { formatMessage } = useIntl();\n\n if (!mainField) {\n return null;\n }\n\n return (\n <Menu.Root>\n <Menu.Trigger onClick={(e) => e.stopPropagation()}>\n <Badge>{content.length}</Badge>\n {formatMessage(\n {\n id: 'content-manager.containers.list.items',\n defaultMessage: '{number, plural, =0 {items} one {item} other {items}}',\n },\n { number: content.length }\n )}\n </Menu.Trigger>\n <Menu.Content>\n {content.map((item) => (\n <Menu.Item key={item.id} disabled>\n <Typography maxWidth=\"50rem\" ellipsis>\n <CellValue type={mainField.type} value={item[mainField.name]} />\n </Typography>\n </Menu.Item>\n ))}\n </Menu.Content>\n </Menu.Root>\n );\n};\n\nexport { SingleComponent, RepeatableComponent };\nexport type { SingleComponentProps, RepeatableComponentProps };\n"],"names":["SingleComponent","content","mainField","_jsx","Tooltip","label","name","Typography","maxWidth","textColor","ellipsis","CellValue","type","value","RepeatableComponent","formatMessage","useIntl","_jsxs","Menu","Root","Trigger","onClick","e","stopPropagation","Badge","length","id","defaultMessage","number","Content","map","item","Item","disabled"],"mappings":";;;;;;;AAgBA,MAAMA,kBAAkB,CAAC,EAAEC,OAAO,EAAEC,SAAS,EAAwB,GAAA;AACnE,IAAA,IAAI,CAACA,SAAAA,EAAW;QACd,OAAO,IAAA;AACT,IAAA;AAEA,IAAA,qBACEC,cAAA,CAACC,oBAAAA,EAAAA;AAAQC,QAAAA,KAAAA,EAAOJ,OAAO,CAACC,SAAAA,CAAUI,IAAI,CAAC;AACrC,QAAA,QAAA,gBAAAH,cAAA,CAACI,uBAAAA,EAAAA;YAAWC,QAAAA,EAAS,OAAA;YAAQC,SAAAA,EAAU,YAAA;YAAaC,QAAQ,EAAA,IAAA;AAC1D,YAAA,QAAA,gBAAAP,cAAA,CAACQ,mBAAAA,EAAAA;AAAUC,gBAAAA,IAAAA,EAAMV,UAAUU,IAAI;AAAEC,gBAAAA,KAAAA,EAAOZ,OAAO,CAACC,SAAAA,CAAUI,IAAI;;;;AAItE;AAUA,MAAMQ,sBAAsB,CAAC,EAAEb,OAAO,EAAEC,SAAS,EAA4B,GAAA;IAC3E,MAAM,EAAEa,aAAa,EAAE,GAAGC,iBAAAA,EAAAA;AAE1B,IAAA,IAAI,CAACd,SAAAA,EAAW;QACd,OAAO,IAAA;AACT,IAAA;IAEA,qBACEe,eAAA,CAACC,kBAAKC,IAAI,EAAA;;AACR,0BAAAF,eAAA,CAACC,kBAAKE,OAAO,EAAA;gBAACC,OAAAA,EAAS,CAACC,CAAAA,GAAMA,CAAAA,CAAEC,eAAe,EAAA;;kCAC7CpB,cAAA,CAACqB,kBAAAA,EAAAA;AAAOvB,wBAAAA,QAAAA,EAAAA,OAAAA,CAAQwB;;oBACfV,aAAAA,CACC;wBACEW,EAAAA,EAAI,uCAAA;wBACJC,cAAAA,EAAgB;qBAClB,EACA;AAAEC,wBAAAA,MAAAA,EAAQ3B,QAAQwB;AAAO,qBAAA;;;AAG7B,0BAAAtB,cAAA,CAACe,kBAAKW,OAAO,EAAA;AACV5B,gBAAAA,QAAAA,EAAAA,OAAAA,CAAQ6B,GAAG,CAAC,CAACC,IAAAA,iBACZ5B,cAAA,CAACe,kBAAKc,IAAI,EAAA;wBAAeC,QAAQ,EAAA,IAAA;AAC/B,wBAAA,QAAA,gBAAA9B,cAAA,CAACI,uBAAAA,EAAAA;4BAAWC,QAAAA,EAAS,OAAA;4BAAQE,QAAQ,EAAA,IAAA;AACnC,4BAAA,QAAA,gBAAAP,cAAA,CAACQ,mBAAAA,EAAAA;AAAUC,gCAAAA,IAAAA,EAAMV,UAAUU,IAAI;AAAEC,gCAAAA,KAAAA,EAAOkB,IAAI,CAAC7B,SAAAA,CAAUI,IAAI;;;AAF/CyB,qBAAAA,EAAAA,IAAAA,CAAKL,EAAE,CAAA;;;;AASjC;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"Components.mjs","sources":["../../../../../../admin/src/pages/ListView/components/TableCells/Components.tsx"],"sourcesContent":["import { Badge, Tooltip, Typography, Menu } from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\nimport { styled } from 'styled-components';\n\nimport { CellContentProps } from './CellContent';\nimport { CellValue } from './CellValue';\n\nimport type { Schema } from '@strapi/types';\n\n/* -------------------------------------------------------------------------------------------------\n * SingleComponent\n * -----------------------------------------------------------------------------------------------*/\n\ninterface SingleComponentProps extends Pick<CellContentProps, 'mainField'> {\n content: Schema.Attribute.Value<Schema.Attribute.Component<`${string}.${string}`, false>>;\n}\n\nconst SingleComponent = ({ content, mainField }: SingleComponentProps) => {\n if (!mainField) {\n return null;\n }\n\n return (\n <Tooltip label={content[mainField.name]}>\n <Typography maxWidth=\"25rem\" textColor=\"neutral800\" ellipsis>\n <CellValue type={mainField.type} value={content[mainField.name]} />\n </Typography>\n </Tooltip>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * RepeatableComponent\n * -----------------------------------------------------------------------------------------------*/\n\ninterface RepeatableComponentProps extends Pick<CellContentProps, 'mainField'> {\n content: Schema.Attribute.Value<Schema.Attribute.Component<`${string}.${string}`, true>>;\n}\n\nconst RepeatableComponent = ({ content, mainField }: RepeatableComponentProps) => {\n const { formatMessage } = useIntl();\n\n if (!mainField) {\n return null;\n }\n\n return (\n <Menu.Root>\n <Menu.Trigger onClick={(e) => e.stopPropagation()}>\n <Badge>{content.length}</Badge>\n {formatMessage(\n {\n id: 'content-manager.containers.list.items',\n defaultMessage: '{number, plural, =0 {items} one {item} other {items}}',\n },\n { number: content.length }\n )}\n </Menu.Trigger>\n <Menu.Content>\n {content.map((item) => (\n <Menu.Item key={item.id} disabled>\n <Typography maxWidth=\"50rem\" ellipsis>\n <CellValue type={mainField.type} value={item[mainField.name]} />\n </Typography>\n </Menu.Item>\n ))}\n </Menu.Content>\n </Menu.Root>\n );\n};\n\nexport { SingleComponent, RepeatableComponent };\nexport type { SingleComponentProps, RepeatableComponentProps };\n"],"names":["SingleComponent","content","mainField","_jsx","Tooltip","label","name","Typography","maxWidth","textColor","ellipsis","CellValue","type","value","RepeatableComponent","formatMessage","useIntl","_jsxs","Menu","Root","Trigger","onClick","e","stopPropagation","Badge","length","id","defaultMessage","number","Content","map","item","Item","disabled"],"mappings":";;;;;AAiBA,MAAMA,kBAAkB,CAAC,EAAEC,OAAO,EAAEC,SAAS,EAAwB,GAAA;AACnE,IAAA,IAAI,CAACA,SAAAA,EAAW;QACd,OAAO,IAAA;AACT,IAAA;AAEA,IAAA,qBACEC,GAAA,CAACC,OAAAA,EAAAA;AAAQC,QAAAA,KAAAA,EAAOJ,OAAO,CAACC,SAAAA,CAAUI,IAAI,CAAC;AACrC,QAAA,QAAA,gBAAAH,GAAA,CAACI,UAAAA,EAAAA;YAAWC,QAAAA,EAAS,OAAA;YAAQC,SAAAA,EAAU,YAAA;YAAaC,QAAQ,EAAA,IAAA;AAC1D,YAAA,QAAA,gBAAAP,GAAA,CAACQ,SAAAA,EAAAA;AAAUC,gBAAAA,IAAAA,EAAMV,UAAUU,IAAI;AAAEC,gBAAAA,KAAAA,EAAOZ,OAAO,CAACC,SAAAA,CAAUI,IAAI;;;;AAItE;AAUA,MAAMQ,sBAAsB,CAAC,EAAEb,OAAO,EAAEC,SAAS,EAA4B,GAAA;IAC3E,MAAM,EAAEa,aAAa,EAAE,GAAGC,OAAAA,EAAAA;AAE1B,IAAA,IAAI,CAACd,SAAAA,EAAW;QACd,OAAO,IAAA;AACT,IAAA;IAEA,qBACEe,IAAA,CAACC,KAAKC,IAAI,EAAA;;AACR,0BAAAF,IAAA,CAACC,KAAKE,OAAO,EAAA;gBAACC,OAAAA,EAAS,CAACC,CAAAA,GAAMA,CAAAA,CAAEC,eAAe,EAAA;;kCAC7CpB,GAAA,CAACqB,KAAAA,EAAAA;AAAOvB,wBAAAA,QAAAA,EAAAA,OAAAA,CAAQwB;;oBACfV,aAAAA,CACC;wBACEW,EAAAA,EAAI,uCAAA;wBACJC,cAAAA,EAAgB;qBAClB,EACA;AAAEC,wBAAAA,MAAAA,EAAQ3B,QAAQwB;AAAO,qBAAA;;;AAG7B,0BAAAtB,GAAA,CAACe,KAAKW,OAAO,EAAA;AACV5B,gBAAAA,QAAAA,EAAAA,OAAAA,CAAQ6B,GAAG,CAAC,CAACC,IAAAA,iBACZ5B,GAAA,CAACe,KAAKc,IAAI,EAAA;wBAAeC,QAAQ,EAAA,IAAA;AAC/B,wBAAA,QAAA,gBAAA9B,GAAA,CAACI,UAAAA,EAAAA;4BAAWC,QAAAA,EAAS,OAAA;4BAAQE,QAAQ,EAAA,IAAA;AACnC,4BAAA,QAAA,gBAAAP,GAAA,CAACQ,SAAAA,EAAAA;AAAUC,gCAAAA,IAAAA,EAAMV,UAAUU,IAAI;AAAEC,gCAAAA,KAAAA,EAAOkB,IAAI,CAAC7B,SAAAA,CAAUI,IAAI;;;AAF/CyB,qBAAAA,EAAAA,IAAAA,CAAKL,EAAE,CAAA;;;;AASjC;;;;"}
1
+ {"version":3,"file":"Components.mjs","sources":["../../../../../../admin/src/pages/ListView/components/TableCells/Components.tsx"],"sourcesContent":["import { Badge, Tooltip, Typography, Menu } from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\n\nimport { CellContentProps } from './CellContent';\nimport { CellValue } from './CellValue';\n\nimport type { Schema } from '@strapi/types';\n\n/* -------------------------------------------------------------------------------------------------\n * SingleComponent\n * -----------------------------------------------------------------------------------------------*/\n\ninterface SingleComponentProps extends Pick<CellContentProps, 'mainField'> {\n content: Schema.Attribute.Value<Schema.Attribute.Component<`${string}.${string}`, false>>;\n}\n\nconst SingleComponent = ({ content, mainField }: SingleComponentProps) => {\n if (!mainField) {\n return null;\n }\n\n return (\n <Tooltip label={content[mainField.name]}>\n <Typography maxWidth=\"25rem\" textColor=\"neutral800\" ellipsis>\n <CellValue type={mainField.type} value={content[mainField.name]} />\n </Typography>\n </Tooltip>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * RepeatableComponent\n * -----------------------------------------------------------------------------------------------*/\n\ninterface RepeatableComponentProps extends Pick<CellContentProps, 'mainField'> {\n content: Schema.Attribute.Value<Schema.Attribute.Component<`${string}.${string}`, true>>;\n}\n\nconst RepeatableComponent = ({ content, mainField }: RepeatableComponentProps) => {\n const { formatMessage } = useIntl();\n\n if (!mainField) {\n return null;\n }\n\n return (\n <Menu.Root>\n <Menu.Trigger onClick={(e) => e.stopPropagation()}>\n <Badge>{content.length}</Badge>\n {formatMessage(\n {\n id: 'content-manager.containers.list.items',\n defaultMessage: '{number, plural, =0 {items} one {item} other {items}}',\n },\n { number: content.length }\n )}\n </Menu.Trigger>\n <Menu.Content>\n {content.map((item) => (\n <Menu.Item key={item.id} disabled>\n <Typography maxWidth=\"50rem\" ellipsis>\n <CellValue type={mainField.type} value={item[mainField.name]} />\n </Typography>\n </Menu.Item>\n ))}\n </Menu.Content>\n </Menu.Root>\n );\n};\n\nexport { SingleComponent, RepeatableComponent };\nexport type { SingleComponentProps, RepeatableComponentProps };\n"],"names":["SingleComponent","content","mainField","_jsx","Tooltip","label","name","Typography","maxWidth","textColor","ellipsis","CellValue","type","value","RepeatableComponent","formatMessage","useIntl","_jsxs","Menu","Root","Trigger","onClick","e","stopPropagation","Badge","length","id","defaultMessage","number","Content","map","item","Item","disabled"],"mappings":";;;;;AAgBA,MAAMA,kBAAkB,CAAC,EAAEC,OAAO,EAAEC,SAAS,EAAwB,GAAA;AACnE,IAAA,IAAI,CAACA,SAAAA,EAAW;QACd,OAAO,IAAA;AACT,IAAA;AAEA,IAAA,qBACEC,GAAA,CAACC,OAAAA,EAAAA;AAAQC,QAAAA,KAAAA,EAAOJ,OAAO,CAACC,SAAAA,CAAUI,IAAI,CAAC;AACrC,QAAA,QAAA,gBAAAH,GAAA,CAACI,UAAAA,EAAAA;YAAWC,QAAAA,EAAS,OAAA;YAAQC,SAAAA,EAAU,YAAA;YAAaC,QAAQ,EAAA,IAAA;AAC1D,YAAA,QAAA,gBAAAP,GAAA,CAACQ,SAAAA,EAAAA;AAAUC,gBAAAA,IAAAA,EAAMV,UAAUU,IAAI;AAAEC,gBAAAA,KAAAA,EAAOZ,OAAO,CAACC,SAAAA,CAAUI,IAAI;;;;AAItE;AAUA,MAAMQ,sBAAsB,CAAC,EAAEb,OAAO,EAAEC,SAAS,EAA4B,GAAA;IAC3E,MAAM,EAAEa,aAAa,EAAE,GAAGC,OAAAA,EAAAA;AAE1B,IAAA,IAAI,CAACd,SAAAA,EAAW;QACd,OAAO,IAAA;AACT,IAAA;IAEA,qBACEe,IAAA,CAACC,KAAKC,IAAI,EAAA;;AACR,0BAAAF,IAAA,CAACC,KAAKE,OAAO,EAAA;gBAACC,OAAAA,EAAS,CAACC,CAAAA,GAAMA,CAAAA,CAAEC,eAAe,EAAA;;kCAC7CpB,GAAA,CAACqB,KAAAA,EAAAA;AAAOvB,wBAAAA,QAAAA,EAAAA,OAAAA,CAAQwB;;oBACfV,aAAAA,CACC;wBACEW,EAAAA,EAAI,uCAAA;wBACJC,cAAAA,EAAgB;qBAClB,EACA;AAAEC,wBAAAA,MAAAA,EAAQ3B,QAAQwB;AAAO,qBAAA;;;AAG7B,0BAAAtB,GAAA,CAACe,KAAKW,OAAO,EAAA;AACV5B,gBAAAA,QAAAA,EAAAA,OAAAA,CAAQ6B,GAAG,CAAC,CAACC,IAAAA,iBACZ5B,GAAA,CAACe,KAAKc,IAAI,EAAA;wBAAeC,QAAQ,EAAA,IAAA;AAC/B,wBAAA,QAAA,gBAAA9B,GAAA,CAACI,UAAAA,EAAAA;4BAAWC,QAAAA,EAAS,OAAA;4BAAQE,QAAQ,EAAA,IAAA;AACnC,4BAAA,QAAA,gBAAAP,GAAA,CAACQ,SAAAA,EAAAA;AAAUC,gCAAAA,IAAAA,EAAMV,UAAUU,IAAI;AAAEC,gCAAAA,KAAAA,EAAOkB,IAAI,CAAC7B,SAAAA,CAAUI,IAAI;;;AAF/CyB,qBAAAA,EAAAA,IAAAA,CAAKL,EAAE,CAAA;;;;AASjC;;;;"}
@@ -61,7 +61,7 @@ const RelationMultiple = ({ mainField, content, rowId, name })=>{
61
61
  React__namespace.useEffect(()=>{
62
62
  if (data) {
63
63
  notifyStatus(formatMessage({
64
- id: translations.getTranslation('DynamicTable.relation-loaded'),
64
+ id: translations.getTranslation('ListViewTable.relation-loaded'),
65
65
  defaultMessage: 'Relations have been loaded'
66
66
  }));
67
67
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Relations.js","sources":["../../../../../../admin/src/pages/ListView/components/TableCells/Relations.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { useQueryParams } from '@strapi/admin/strapi-admin';\nimport { Typography, Loader, useNotifyAT, Menu } from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\n\nimport { useDoc } from '../../../../hooks/useDocument';\nimport { useGetRelationsQuery } from '../../../../services/relations';\nimport { getRelationLabel } from '../../../../utils/relations';\nimport { getTranslation } from '../../../../utils/translations';\n\nimport type { CellContentProps } from './CellContent';\n\n/* -------------------------------------------------------------------------------------------------\n * RelationSingle\n * -----------------------------------------------------------------------------------------------*/\n\ninterface RelationSingleProps extends Pick<CellContentProps, 'mainField' | 'content'> {}\n\nconst RelationSingle = ({ mainField, content }: RelationSingleProps) => {\n return (\n <Typography maxWidth=\"50rem\" textColor=\"neutral800\" ellipsis>\n {getRelationLabel(content, mainField)}\n </Typography>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * RelationMultiple\n * -----------------------------------------------------------------------------------------------*/\n\ninterface RelationMultipleProps\n extends Pick<CellContentProps, 'mainField' | 'content' | 'name' | 'rowId'> {}\n\nconst RelationMultiple = ({ mainField, content, rowId, name }: RelationMultipleProps) => {\n const { model } = useDoc();\n const { formatMessage } = useIntl();\n const { notifyStatus } = useNotifyAT();\n const [isOpen, setIsOpen] = React.useState(false);\n const [{ query }] = useQueryParams<{ plugins?: { i18n?: { locale?: string } } }>();\n const locale = query.plugins?.i18n?.locale;\n\n const [targetField] = name.split('.');\n\n const { data, isLoading } = useGetRelationsQuery(\n {\n model,\n id: rowId,\n targetField,\n params: { locale },\n },\n {\n skip: !isOpen,\n refetchOnMountOrArgChange: true,\n }\n );\n\n const contentCount = Array.isArray(content) ? content.length : content.count;\n\n React.useEffect(() => {\n if (data) {\n notifyStatus(\n formatMessage({\n id: getTranslation('DynamicTable.relation-loaded'),\n defaultMessage: 'Relations have been loaded',\n })\n );\n }\n }, [data, formatMessage, notifyStatus]);\n\n return (\n <Menu.Root onOpenChange={(isOpen) => setIsOpen(isOpen)}>\n <Menu.Trigger onClick={(e) => e.stopPropagation()}>\n <Typography style={{ cursor: 'pointer' }} textColor=\"neutral800\" fontWeight=\"regular\">\n {contentCount > 0\n ? formatMessage(\n {\n id: 'content-manager.containers.list.items',\n defaultMessage: '{number} {number, plural, =0 {items} one {item} other {items}}',\n },\n { number: contentCount }\n )\n : '-'}\n </Typography>\n </Menu.Trigger>\n <Menu.Content>\n {isLoading && (\n <Menu.Item disabled>\n <Loader small>\n {formatMessage({\n id: getTranslation('ListViewTable.relation-loading'),\n defaultMessage: 'Relations are loading',\n })}\n </Loader>\n </Menu.Item>\n )}\n {data?.results && (\n <>\n {data.results.map((entry) => (\n <Menu.Item key={entry.documentId}>\n <Typography maxWidth=\"50rem\" ellipsis>\n {getRelationLabel(entry, mainField)}\n </Typography>\n </Menu.Item>\n ))}\n\n {data?.pagination && data?.pagination.total > 10 && (\n <Menu.Item\n aria-disabled\n aria-label={formatMessage({\n id: getTranslation('ListViewTable.relation-more'),\n defaultMessage: 'This relation contains more entities than displayed',\n })}\n >\n <Typography>…</Typography>\n </Menu.Item>\n )}\n </>\n )}\n </Menu.Content>\n </Menu.Root>\n );\n};\n\nexport { RelationSingle, RelationMultiple };\nexport type { RelationSingleProps, RelationMultipleProps };\n"],"names":["RelationSingle","mainField","content","_jsx","Typography","maxWidth","textColor","ellipsis","getRelationLabel","RelationMultiple","rowId","name","model","useDoc","formatMessage","useIntl","notifyStatus","useNotifyAT","isOpen","setIsOpen","React","useState","query","useQueryParams","locale","plugins","i18n","targetField","split","data","isLoading","useGetRelationsQuery","id","params","skip","refetchOnMountOrArgChange","contentCount","Array","isArray","length","count","useEffect","getTranslation","defaultMessage","_jsxs","Menu","Root","onOpenChange","Trigger","onClick","e","stopPropagation","style","cursor","fontWeight","number","Content","Item","disabled","Loader","small","results","_Fragment","map","entry","documentId","pagination","total","aria-disabled","aria-label"],"mappings":"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"}
1
+ {"version":3,"file":"Relations.js","sources":["../../../../../../admin/src/pages/ListView/components/TableCells/Relations.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { useQueryParams } from '@strapi/admin/strapi-admin';\nimport { Typography, Loader, useNotifyAT, Menu } from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\n\nimport { useDoc } from '../../../../hooks/useDocument';\nimport { useGetRelationsQuery } from '../../../../services/relations';\nimport { getRelationLabel } from '../../../../utils/relations';\nimport { getTranslation } from '../../../../utils/translations';\n\nimport type { CellContentProps } from './CellContent';\n\n/* -------------------------------------------------------------------------------------------------\n * RelationSingle\n * -----------------------------------------------------------------------------------------------*/\n\ninterface RelationSingleProps extends Pick<CellContentProps, 'mainField' | 'content'> {}\n\nconst RelationSingle = ({ mainField, content }: RelationSingleProps) => {\n return (\n <Typography maxWidth=\"50rem\" textColor=\"neutral800\" ellipsis>\n {getRelationLabel(content, mainField)}\n </Typography>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * RelationMultiple\n * -----------------------------------------------------------------------------------------------*/\n\ninterface RelationMultipleProps\n extends Pick<CellContentProps, 'mainField' | 'content' | 'name' | 'rowId'> {}\n\nconst RelationMultiple = ({ mainField, content, rowId, name }: RelationMultipleProps) => {\n const { model } = useDoc();\n const { formatMessage } = useIntl();\n const { notifyStatus } = useNotifyAT();\n const [isOpen, setIsOpen] = React.useState(false);\n const [{ query }] = useQueryParams<{ plugins?: { i18n?: { locale?: string } } }>();\n const locale = query.plugins?.i18n?.locale;\n\n const [targetField] = name.split('.');\n\n const { data, isLoading } = useGetRelationsQuery(\n {\n model,\n id: rowId,\n targetField,\n params: { locale },\n },\n {\n skip: !isOpen,\n refetchOnMountOrArgChange: true,\n }\n );\n\n const contentCount = Array.isArray(content) ? content.length : content.count;\n\n React.useEffect(() => {\n if (data) {\n notifyStatus(\n formatMessage({\n id: getTranslation('ListViewTable.relation-loaded'),\n defaultMessage: 'Relations have been loaded',\n })\n );\n }\n }, [data, formatMessage, notifyStatus]);\n\n return (\n <Menu.Root onOpenChange={(isOpen) => setIsOpen(isOpen)}>\n <Menu.Trigger onClick={(e) => e.stopPropagation()}>\n <Typography style={{ cursor: 'pointer' }} textColor=\"neutral800\" fontWeight=\"regular\">\n {contentCount > 0\n ? formatMessage(\n {\n id: 'content-manager.containers.list.items',\n defaultMessage: '{number} {number, plural, =0 {items} one {item} other {items}}',\n },\n { number: contentCount }\n )\n : '-'}\n </Typography>\n </Menu.Trigger>\n <Menu.Content>\n {isLoading && (\n <Menu.Item disabled>\n <Loader small>\n {formatMessage({\n id: getTranslation('ListViewTable.relation-loading'),\n defaultMessage: 'Relations are loading',\n })}\n </Loader>\n </Menu.Item>\n )}\n {data?.results && (\n <>\n {data.results.map((entry) => (\n <Menu.Item key={entry.documentId}>\n <Typography maxWidth=\"50rem\" ellipsis>\n {getRelationLabel(entry, mainField)}\n </Typography>\n </Menu.Item>\n ))}\n\n {data?.pagination && data?.pagination.total > 10 && (\n <Menu.Item\n aria-disabled\n aria-label={formatMessage({\n id: getTranslation('ListViewTable.relation-more'),\n defaultMessage: 'This relation contains more entities than displayed',\n })}\n >\n <Typography>…</Typography>\n </Menu.Item>\n )}\n </>\n )}\n </Menu.Content>\n </Menu.Root>\n );\n};\n\nexport { RelationSingle, RelationMultiple };\nexport type { RelationSingleProps, RelationMultipleProps };\n"],"names":["RelationSingle","mainField","content","_jsx","Typography","maxWidth","textColor","ellipsis","getRelationLabel","RelationMultiple","rowId","name","model","useDoc","formatMessage","useIntl","notifyStatus","useNotifyAT","isOpen","setIsOpen","React","useState","query","useQueryParams","locale","plugins","i18n","targetField","split","data","isLoading","useGetRelationsQuery","id","params","skip","refetchOnMountOrArgChange","contentCount","Array","isArray","length","count","useEffect","getTranslation","defaultMessage","_jsxs","Menu","Root","onOpenChange","Trigger","onClick","e","stopPropagation","style","cursor","fontWeight","number","Content","Item","disabled","Loader","small","results","_Fragment","map","entry","documentId","pagination","total","aria-disabled","aria-label"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmBA,MAAMA,iBAAiB,CAAC,EAAEC,SAAS,EAAEC,OAAO,EAAuB,GAAA;AACjE,IAAA,qBACEC,cAAA,CAACC,uBAAAA,EAAAA;QAAWC,QAAAA,EAAS,OAAA;QAAQC,SAAAA,EAAU,YAAA;QAAaC,QAAQ,EAAA,IAAA;AACzDC,QAAAA,QAAAA,EAAAA,0BAAAA,CAAiBN,OAAAA,EAASD,SAAAA;;AAGjC;AASA,MAAMQ,gBAAAA,GAAmB,CAAC,EAAER,SAAS,EAAEC,OAAO,EAAEQ,KAAK,EAAEC,IAAI,EAAyB,GAAA;IAClF,MAAM,EAAEC,KAAK,EAAE,GAAGC,kBAAAA,EAAAA;IAClB,MAAM,EAAEC,aAAa,EAAE,GAAGC,iBAAAA,EAAAA;IAC1B,MAAM,EAAEC,YAAY,EAAE,GAAGC,wBAAAA,EAAAA;AACzB,IAAA,MAAM,CAACC,MAAAA,EAAQC,SAAAA,CAAU,GAAGC,gBAAAA,CAAMC,QAAQ,CAAC,KAAA,CAAA;AAC3C,IAAA,MAAM,CAAC,EAAEC,KAAK,EAAE,CAAC,GAAGC,0BAAAA,EAAAA;AACpB,IAAA,MAAMC,MAAAA,GAASF,KAAAA,CAAMG,OAAO,EAAEC,IAAAA,EAAMF,MAAAA;AAEpC,IAAA,MAAM,CAACG,WAAAA,CAAY,GAAGhB,IAAAA,CAAKiB,KAAK,CAAC,GAAA,CAAA;AAEjC,IAAA,MAAM,EAAEC,IAAI,EAAEC,SAAS,EAAE,GAAGC,gCAAAA,CAC1B;AACEnB,QAAAA,KAAAA;QACAoB,EAAAA,EAAItB,KAAAA;AACJiB,QAAAA,WAAAA;QACAM,MAAAA,EAAQ;AAAET,YAAAA;AAAO;KACnB,EACA;AACEU,QAAAA,IAAAA,EAAM,CAAChB,MAAAA;QACPiB,yBAAAA,EAA2B;AAC7B,KAAA,CAAA;IAGF,MAAMC,YAAAA,GAAeC,MAAMC,OAAO,CAACpC,WAAWA,OAAAA,CAAQqC,MAAM,GAAGrC,OAAAA,CAAQsC,KAAK;AAE5EpB,IAAAA,gBAAAA,CAAMqB,SAAS,CAAC,IAAA;AACd,QAAA,IAAIZ,IAAAA,EAAM;AACRb,YAAAA,YAAAA,CACEF,aAAAA,CAAc;AACZkB,gBAAAA,EAAAA,EAAIU,2BAAAA,CAAe,+BAAA,CAAA;gBACnBC,cAAAA,EAAgB;AAClB,aAAA,CAAA,CAAA;AAEJ,QAAA;IACF,CAAA,EAAG;AAACd,QAAAA,IAAAA;AAAMf,QAAAA,aAAAA;AAAeE,QAAAA;AAAa,KAAA,CAAA;IAEtC,qBACE4B,eAAA,CAACC,kBAAKC,IAAI,EAAA;QAACC,YAAAA,EAAc,CAAC7B,SAAWC,SAAAA,CAAUD,MAAAA,CAAAA;;AAC7C,0BAAAf,cAAA,CAAC0C,kBAAKG,OAAO,EAAA;gBAACC,OAAAA,EAAS,CAACC,CAAAA,GAAMA,CAAAA,CAAEC,eAAe,EAAA;AAC7C,gBAAA,QAAA,gBAAAhD,cAAA,CAACC,uBAAAA,EAAAA;oBAAWgD,KAAAA,EAAO;wBAAEC,MAAAA,EAAQ;AAAU,qBAAA;oBAAG/C,SAAAA,EAAU,YAAA;oBAAagD,UAAAA,EAAW,SAAA;AACzElB,oBAAAA,QAAAA,EAAAA,YAAAA,GAAe,IACZtB,aAAAA,CACE;wBACEkB,EAAAA,EAAI,uCAAA;wBACJW,cAAAA,EAAgB;qBAClB,EACA;wBAAEY,MAAAA,EAAQnB;qBAAa,CAAA,GAEzB;;;AAGR,0BAAAQ,eAAA,CAACC,kBAAKW,OAAO,EAAA;;oBACV1B,SAAAA,kBACC3B,cAAA,CAAC0C,kBAAKY,IAAI,EAAA;wBAACC,QAAQ,EAAA,IAAA;AACjB,wBAAA,QAAA,gBAAAvD,cAAA,CAACwD,mBAAAA,EAAAA;4BAAOC,KAAK,EAAA,IAAA;sCACV9C,aAAAA,CAAc;AACbkB,gCAAAA,EAAAA,EAAIU,2BAAAA,CAAe,gCAAA,CAAA;gCACnBC,cAAAA,EAAgB;AAClB,6BAAA;;;AAILd,oBAAAA,IAAAA,EAAMgC,OAAAA,kBACLjB,eAAA,CAAAkB,mBAAA,EAAA;;4BACGjC,IAAAA,CAAKgC,OAAO,CAACE,GAAG,CAAC,CAACC,KAAAA,iBACjB7D,cAAA,CAAC0C,kBAAKY,IAAI,EAAA;AACR,oCAAA,QAAA,gBAAAtD,cAAA,CAACC,uBAAAA,EAAAA;wCAAWC,QAAAA,EAAS,OAAA;wCAAQE,QAAQ,EAAA,IAAA;AAClCC,wCAAAA,QAAAA,EAAAA,0BAAAA,CAAiBwD,KAAAA,EAAO/D,SAAAA;;AAFb+D,iCAAAA,EAAAA,KAAAA,CAAMC,UAAU,CAAA,CAAA;AAOjCpC,4BAAAA,IAAAA,EAAMqC,cAAcrC,IAAAA,EAAMqC,UAAAA,CAAWC,QAAQ,EAAA,kBAC5ChE,cAAA,CAAC0C,kBAAKY,IAAI,EAAA;gCACRW,eAAa,EAAA,IAAA;AACbC,gCAAAA,YAAAA,EAAYvD,aAAAA,CAAc;AACxBkB,oCAAAA,EAAAA,EAAIU,2BAAAA,CAAe,6BAAA,CAAA;oCACnBC,cAAAA,EAAgB;AAClB,iCAAA,CAAA;AAEA,gCAAA,QAAA,gBAAAxC,cAAA,CAACC,uBAAAA,EAAAA;AAAW,oCAAA,QAAA,EAAA;;;;;;;;;AAQ5B;;;;;"}
@@ -39,7 +39,7 @@ const RelationMultiple = ({ mainField, content, rowId, name })=>{
39
39
  React.useEffect(()=>{
40
40
  if (data) {
41
41
  notifyStatus(formatMessage({
42
- id: getTranslation('DynamicTable.relation-loaded'),
42
+ id: getTranslation('ListViewTable.relation-loaded'),
43
43
  defaultMessage: 'Relations have been loaded'
44
44
  }));
45
45
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Relations.mjs","sources":["../../../../../../admin/src/pages/ListView/components/TableCells/Relations.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { useQueryParams } from '@strapi/admin/strapi-admin';\nimport { Typography, Loader, useNotifyAT, Menu } from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\n\nimport { useDoc } from '../../../../hooks/useDocument';\nimport { useGetRelationsQuery } from '../../../../services/relations';\nimport { getRelationLabel } from '../../../../utils/relations';\nimport { getTranslation } from '../../../../utils/translations';\n\nimport type { CellContentProps } from './CellContent';\n\n/* -------------------------------------------------------------------------------------------------\n * RelationSingle\n * -----------------------------------------------------------------------------------------------*/\n\ninterface RelationSingleProps extends Pick<CellContentProps, 'mainField' | 'content'> {}\n\nconst RelationSingle = ({ mainField, content }: RelationSingleProps) => {\n return (\n <Typography maxWidth=\"50rem\" textColor=\"neutral800\" ellipsis>\n {getRelationLabel(content, mainField)}\n </Typography>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * RelationMultiple\n * -----------------------------------------------------------------------------------------------*/\n\ninterface RelationMultipleProps\n extends Pick<CellContentProps, 'mainField' | 'content' | 'name' | 'rowId'> {}\n\nconst RelationMultiple = ({ mainField, content, rowId, name }: RelationMultipleProps) => {\n const { model } = useDoc();\n const { formatMessage } = useIntl();\n const { notifyStatus } = useNotifyAT();\n const [isOpen, setIsOpen] = React.useState(false);\n const [{ query }] = useQueryParams<{ plugins?: { i18n?: { locale?: string } } }>();\n const locale = query.plugins?.i18n?.locale;\n\n const [targetField] = name.split('.');\n\n const { data, isLoading } = useGetRelationsQuery(\n {\n model,\n id: rowId,\n targetField,\n params: { locale },\n },\n {\n skip: !isOpen,\n refetchOnMountOrArgChange: true,\n }\n );\n\n const contentCount = Array.isArray(content) ? content.length : content.count;\n\n React.useEffect(() => {\n if (data) {\n notifyStatus(\n formatMessage({\n id: getTranslation('DynamicTable.relation-loaded'),\n defaultMessage: 'Relations have been loaded',\n })\n );\n }\n }, [data, formatMessage, notifyStatus]);\n\n return (\n <Menu.Root onOpenChange={(isOpen) => setIsOpen(isOpen)}>\n <Menu.Trigger onClick={(e) => e.stopPropagation()}>\n <Typography style={{ cursor: 'pointer' }} textColor=\"neutral800\" fontWeight=\"regular\">\n {contentCount > 0\n ? formatMessage(\n {\n id: 'content-manager.containers.list.items',\n defaultMessage: '{number} {number, plural, =0 {items} one {item} other {items}}',\n },\n { number: contentCount }\n )\n : '-'}\n </Typography>\n </Menu.Trigger>\n <Menu.Content>\n {isLoading && (\n <Menu.Item disabled>\n <Loader small>\n {formatMessage({\n id: getTranslation('ListViewTable.relation-loading'),\n defaultMessage: 'Relations are loading',\n })}\n </Loader>\n </Menu.Item>\n )}\n {data?.results && (\n <>\n {data.results.map((entry) => (\n <Menu.Item key={entry.documentId}>\n <Typography maxWidth=\"50rem\" ellipsis>\n {getRelationLabel(entry, mainField)}\n </Typography>\n </Menu.Item>\n ))}\n\n {data?.pagination && data?.pagination.total > 10 && (\n <Menu.Item\n aria-disabled\n aria-label={formatMessage({\n id: getTranslation('ListViewTable.relation-more'),\n defaultMessage: 'This relation contains more entities than displayed',\n })}\n >\n <Typography>…</Typography>\n </Menu.Item>\n )}\n </>\n )}\n </Menu.Content>\n </Menu.Root>\n );\n};\n\nexport { RelationSingle, RelationMultiple };\nexport type { RelationSingleProps, RelationMultipleProps };\n"],"names":["RelationSingle","mainField","content","_jsx","Typography","maxWidth","textColor","ellipsis","getRelationLabel","RelationMultiple","rowId","name","model","useDoc","formatMessage","useIntl","notifyStatus","useNotifyAT","isOpen","setIsOpen","React","useState","query","useQueryParams","locale","plugins","i18n","targetField","split","data","isLoading","useGetRelationsQuery","id","params","skip","refetchOnMountOrArgChange","contentCount","Array","isArray","length","count","useEffect","getTranslation","defaultMessage","_jsxs","Menu","Root","onOpenChange","Trigger","onClick","e","stopPropagation","style","cursor","fontWeight","number","Content","Item","disabled","Loader","small","results","_Fragment","map","entry","documentId","pagination","total","aria-disabled","aria-label"],"mappings":"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"}
1
+ {"version":3,"file":"Relations.mjs","sources":["../../../../../../admin/src/pages/ListView/components/TableCells/Relations.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { useQueryParams } from '@strapi/admin/strapi-admin';\nimport { Typography, Loader, useNotifyAT, Menu } from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\n\nimport { useDoc } from '../../../../hooks/useDocument';\nimport { useGetRelationsQuery } from '../../../../services/relations';\nimport { getRelationLabel } from '../../../../utils/relations';\nimport { getTranslation } from '../../../../utils/translations';\n\nimport type { CellContentProps } from './CellContent';\n\n/* -------------------------------------------------------------------------------------------------\n * RelationSingle\n * -----------------------------------------------------------------------------------------------*/\n\ninterface RelationSingleProps extends Pick<CellContentProps, 'mainField' | 'content'> {}\n\nconst RelationSingle = ({ mainField, content }: RelationSingleProps) => {\n return (\n <Typography maxWidth=\"50rem\" textColor=\"neutral800\" ellipsis>\n {getRelationLabel(content, mainField)}\n </Typography>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * RelationMultiple\n * -----------------------------------------------------------------------------------------------*/\n\ninterface RelationMultipleProps\n extends Pick<CellContentProps, 'mainField' | 'content' | 'name' | 'rowId'> {}\n\nconst RelationMultiple = ({ mainField, content, rowId, name }: RelationMultipleProps) => {\n const { model } = useDoc();\n const { formatMessage } = useIntl();\n const { notifyStatus } = useNotifyAT();\n const [isOpen, setIsOpen] = React.useState(false);\n const [{ query }] = useQueryParams<{ plugins?: { i18n?: { locale?: string } } }>();\n const locale = query.plugins?.i18n?.locale;\n\n const [targetField] = name.split('.');\n\n const { data, isLoading } = useGetRelationsQuery(\n {\n model,\n id: rowId,\n targetField,\n params: { locale },\n },\n {\n skip: !isOpen,\n refetchOnMountOrArgChange: true,\n }\n );\n\n const contentCount = Array.isArray(content) ? content.length : content.count;\n\n React.useEffect(() => {\n if (data) {\n notifyStatus(\n formatMessage({\n id: getTranslation('ListViewTable.relation-loaded'),\n defaultMessage: 'Relations have been loaded',\n })\n );\n }\n }, [data, formatMessage, notifyStatus]);\n\n return (\n <Menu.Root onOpenChange={(isOpen) => setIsOpen(isOpen)}>\n <Menu.Trigger onClick={(e) => e.stopPropagation()}>\n <Typography style={{ cursor: 'pointer' }} textColor=\"neutral800\" fontWeight=\"regular\">\n {contentCount > 0\n ? formatMessage(\n {\n id: 'content-manager.containers.list.items',\n defaultMessage: '{number} {number, plural, =0 {items} one {item} other {items}}',\n },\n { number: contentCount }\n )\n : '-'}\n </Typography>\n </Menu.Trigger>\n <Menu.Content>\n {isLoading && (\n <Menu.Item disabled>\n <Loader small>\n {formatMessage({\n id: getTranslation('ListViewTable.relation-loading'),\n defaultMessage: 'Relations are loading',\n })}\n </Loader>\n </Menu.Item>\n )}\n {data?.results && (\n <>\n {data.results.map((entry) => (\n <Menu.Item key={entry.documentId}>\n <Typography maxWidth=\"50rem\" ellipsis>\n {getRelationLabel(entry, mainField)}\n </Typography>\n </Menu.Item>\n ))}\n\n {data?.pagination && data?.pagination.total > 10 && (\n <Menu.Item\n aria-disabled\n aria-label={formatMessage({\n id: getTranslation('ListViewTable.relation-more'),\n defaultMessage: 'This relation contains more entities than displayed',\n })}\n >\n <Typography>…</Typography>\n </Menu.Item>\n )}\n </>\n )}\n </Menu.Content>\n </Menu.Root>\n );\n};\n\nexport { RelationSingle, RelationMultiple };\nexport type { RelationSingleProps, RelationMultipleProps };\n"],"names":["RelationSingle","mainField","content","_jsx","Typography","maxWidth","textColor","ellipsis","getRelationLabel","RelationMultiple","rowId","name","model","useDoc","formatMessage","useIntl","notifyStatus","useNotifyAT","isOpen","setIsOpen","React","useState","query","useQueryParams","locale","plugins","i18n","targetField","split","data","isLoading","useGetRelationsQuery","id","params","skip","refetchOnMountOrArgChange","contentCount","Array","isArray","length","count","useEffect","getTranslation","defaultMessage","_jsxs","Menu","Root","onOpenChange","Trigger","onClick","e","stopPropagation","style","cursor","fontWeight","number","Content","Item","disabled","Loader","small","results","_Fragment","map","entry","documentId","pagination","total","aria-disabled","aria-label"],"mappings":";;;;;;;;;;AAmBA,MAAMA,iBAAiB,CAAC,EAAEC,SAAS,EAAEC,OAAO,EAAuB,GAAA;AACjE,IAAA,qBACEC,GAAA,CAACC,UAAAA,EAAAA;QAAWC,QAAAA,EAAS,OAAA;QAAQC,SAAAA,EAAU,YAAA;QAAaC,QAAQ,EAAA,IAAA;AACzDC,QAAAA,QAAAA,EAAAA,gBAAAA,CAAiBN,OAAAA,EAASD,SAAAA;;AAGjC;AASA,MAAMQ,gBAAAA,GAAmB,CAAC,EAAER,SAAS,EAAEC,OAAO,EAAEQ,KAAK,EAAEC,IAAI,EAAyB,GAAA;IAClF,MAAM,EAAEC,KAAK,EAAE,GAAGC,MAAAA,EAAAA;IAClB,MAAM,EAAEC,aAAa,EAAE,GAAGC,OAAAA,EAAAA;IAC1B,MAAM,EAAEC,YAAY,EAAE,GAAGC,WAAAA,EAAAA;AACzB,IAAA,MAAM,CAACC,MAAAA,EAAQC,SAAAA,CAAU,GAAGC,KAAAA,CAAMC,QAAQ,CAAC,KAAA,CAAA;AAC3C,IAAA,MAAM,CAAC,EAAEC,KAAK,EAAE,CAAC,GAAGC,cAAAA,EAAAA;AACpB,IAAA,MAAMC,MAAAA,GAASF,KAAAA,CAAMG,OAAO,EAAEC,IAAAA,EAAMF,MAAAA;AAEpC,IAAA,MAAM,CAACG,WAAAA,CAAY,GAAGhB,IAAAA,CAAKiB,KAAK,CAAC,GAAA,CAAA;AAEjC,IAAA,MAAM,EAAEC,IAAI,EAAEC,SAAS,EAAE,GAAGC,oBAAAA,CAC1B;AACEnB,QAAAA,KAAAA;QACAoB,EAAAA,EAAItB,KAAAA;AACJiB,QAAAA,WAAAA;QACAM,MAAAA,EAAQ;AAAET,YAAAA;AAAO;KACnB,EACA;AACEU,QAAAA,IAAAA,EAAM,CAAChB,MAAAA;QACPiB,yBAAAA,EAA2B;AAC7B,KAAA,CAAA;IAGF,MAAMC,YAAAA,GAAeC,MAAMC,OAAO,CAACpC,WAAWA,OAAAA,CAAQqC,MAAM,GAAGrC,OAAAA,CAAQsC,KAAK;AAE5EpB,IAAAA,KAAAA,CAAMqB,SAAS,CAAC,IAAA;AACd,QAAA,IAAIZ,IAAAA,EAAM;AACRb,YAAAA,YAAAA,CACEF,aAAAA,CAAc;AACZkB,gBAAAA,EAAAA,EAAIU,cAAAA,CAAe,+BAAA,CAAA;gBACnBC,cAAAA,EAAgB;AAClB,aAAA,CAAA,CAAA;AAEJ,QAAA;IACF,CAAA,EAAG;AAACd,QAAAA,IAAAA;AAAMf,QAAAA,aAAAA;AAAeE,QAAAA;AAAa,KAAA,CAAA;IAEtC,qBACE4B,IAAA,CAACC,KAAKC,IAAI,EAAA;QAACC,YAAAA,EAAc,CAAC7B,SAAWC,SAAAA,CAAUD,MAAAA,CAAAA;;AAC7C,0BAAAf,GAAA,CAAC0C,KAAKG,OAAO,EAAA;gBAACC,OAAAA,EAAS,CAACC,CAAAA,GAAMA,CAAAA,CAAEC,eAAe,EAAA;AAC7C,gBAAA,QAAA,gBAAAhD,GAAA,CAACC,UAAAA,EAAAA;oBAAWgD,KAAAA,EAAO;wBAAEC,MAAAA,EAAQ;AAAU,qBAAA;oBAAG/C,SAAAA,EAAU,YAAA;oBAAagD,UAAAA,EAAW,SAAA;AACzElB,oBAAAA,QAAAA,EAAAA,YAAAA,GAAe,IACZtB,aAAAA,CACE;wBACEkB,EAAAA,EAAI,uCAAA;wBACJW,cAAAA,EAAgB;qBAClB,EACA;wBAAEY,MAAAA,EAAQnB;qBAAa,CAAA,GAEzB;;;AAGR,0BAAAQ,IAAA,CAACC,KAAKW,OAAO,EAAA;;oBACV1B,SAAAA,kBACC3B,GAAA,CAAC0C,KAAKY,IAAI,EAAA;wBAACC,QAAQ,EAAA,IAAA;AACjB,wBAAA,QAAA,gBAAAvD,GAAA,CAACwD,MAAAA,EAAAA;4BAAOC,KAAK,EAAA,IAAA;sCACV9C,aAAAA,CAAc;AACbkB,gCAAAA,EAAAA,EAAIU,cAAAA,CAAe,gCAAA,CAAA;gCACnBC,cAAAA,EAAgB;AAClB,6BAAA;;;AAILd,oBAAAA,IAAAA,EAAMgC,OAAAA,kBACLjB,IAAA,CAAAkB,QAAA,EAAA;;4BACGjC,IAAAA,CAAKgC,OAAO,CAACE,GAAG,CAAC,CAACC,KAAAA,iBACjB7D,GAAA,CAAC0C,KAAKY,IAAI,EAAA;AACR,oCAAA,QAAA,gBAAAtD,GAAA,CAACC,UAAAA,EAAAA;wCAAWC,QAAAA,EAAS,OAAA;wCAAQE,QAAQ,EAAA,IAAA;AAClCC,wCAAAA,QAAAA,EAAAA,gBAAAA,CAAiBwD,KAAAA,EAAO/D,SAAAA;;AAFb+D,iCAAAA,EAAAA,KAAAA,CAAMC,UAAU,CAAA,CAAA;AAOjCpC,4BAAAA,IAAAA,EAAMqC,cAAcrC,IAAAA,EAAMqC,UAAAA,CAAWC,QAAQ,EAAA,kBAC5ChE,GAAA,CAAC0C,KAAKY,IAAI,EAAA;gCACRW,eAAa,EAAA,IAAA;AACbC,gCAAAA,YAAAA,EAAYvD,aAAAA,CAAc;AACxBkB,oCAAAA,EAAAA,EAAIU,cAAAA,CAAe,6BAAA,CAAA;oCACnBC,cAAAA,EAAgB;AAClB,iCAAA,CAAA;AAEA,gCAAA,QAAA,gBAAAxC,GAAA,CAACC,UAAAA,EAAAA;AAAW,oCAAA,QAAA,EAAA;;;;;;;;;AAQ5B;;;;"}
@@ -22,7 +22,6 @@ var PreviewHeader = require('../components/PreviewHeader.js');
22
22
  var preview = require('../services/preview.js');
23
23
  var constants = require('../utils/constants.js');
24
24
  var getSendMessage = require('../utils/getSendMessage.js');
25
- var previewScript = require('../utils/previewScript.js');
26
25
 
27
26
  function _interopNamespace(e) {
28
27
  if (e && e.__esModule) return e;
@@ -67,6 +66,26 @@ var React__namespace = /*#__PURE__*/_interopNamespace(React);
67
66
  }
68
67
  ];
69
68
  const [PreviewProvider, usePreviewContext] = strapiAdmin.createContext('PreviewPage');
69
+ const getPreviewScript = (()=>{
70
+ let previewScript = '';
71
+ return async (previewHighlightColors)=>{
72
+ if (!previewScript) {
73
+ const resp = await fetch(`${window.strapi.backendURL}/content-manager/preview/script`);
74
+ if (!resp.ok) {
75
+ throw new Error('Could not retrieve preview script from server.');
76
+ }
77
+ previewScript = await resp.text();
78
+ if (!previewScript) {
79
+ throw new Error('Could not retrieve preview script from server.');
80
+ }
81
+ }
82
+ return `(${previewScript})(${JSON.stringify({
83
+ colors: previewHighlightColors,
84
+ events: constants.INTERNAL_EVENTS,
85
+ parentOrigin: window.location.origin
86
+ })})`;
87
+ };
88
+ })();
70
89
  /* -------------------------------------------------------------------------------------------------
71
90
  * PreviewPage
72
91
  * -----------------------------------------------------------------------------------------------*/ const AnimatedArrow = styledComponents.styled(Icons.ArrowLineLeft)`
@@ -96,7 +115,7 @@ const PreviewPage = ()=>{
96
115
  };
97
116
  // Listen for ready message from iframe before injecting script
98
117
  React__namespace.useEffect(()=>{
99
- const handleMessage = (event)=>{
118
+ const handleMessage = async (event)=>{
100
119
  // Only listen to events from the preview iframe
101
120
  if (iframeRef.current) {
102
121
  const previewOrigin = new URL(iframeRef.current?.src).origin;
@@ -105,24 +124,34 @@ const PreviewPage = ()=>{
105
124
  }
106
125
  }
107
126
  if (event.data?.type === constants.PUBLIC_EVENTS.PREVIEW_READY) {
108
- const script = `(${previewScript.previewScript.toString()})(${JSON.stringify({
109
- shouldRun: true,
110
- colors: previewHighlightColors
111
- })})`;
112
- const sendMessage = getSendMessage.getSendMessage(iframeRef);
113
- sendMessage(constants.PUBLIC_EVENTS.STRAPI_SCRIPT, {
114
- script
115
- });
127
+ try {
128
+ const script = await getPreviewScript(previewHighlightColors);
129
+ const sendMessage = getSendMessage.getSendMessage(iframeRef);
130
+ sendMessage(constants.PUBLIC_EVENTS.STRAPI_SCRIPT, {
131
+ script
132
+ });
133
+ } catch {
134
+ toggleNotification({
135
+ type: 'danger',
136
+ message: formatMessage({
137
+ id: 'content-manager.preview.error.script-failed',
138
+ defaultMessage: 'Could not load the live preview script. Visual editing may not be available.'
139
+ })
140
+ });
141
+ }
116
142
  }
117
143
  };
118
144
  window.addEventListener('message', handleMessage);
119
145
  return ()=>{
120
146
  window.removeEventListener('message', handleMessage);
121
147
  };
148
+ // Preserve the existing dependency behavior: previewHighlightColors is derived from theme.
149
+ // eslint-disable-next-line react-hooks/exhaustive-deps
122
150
  }, [
123
151
  documentId,
124
152
  toggleNotification,
125
- theme
153
+ theme,
154
+ formatMessage
126
155
  ]);
127
156
  if (!collectionType) {
128
157
  throw new Error('Could not find collectionType in url params');