@strapi/content-manager 0.0.0-experimental.afa3b513b8f95459043f33fb94f4bac03af1474f → 0.0.0-experimental.b05633daea1bf090c66312b8ab30ec13bdb52f57

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 (196) hide show
  1. package/dist/_chunks/CardDragPreview-C0QyJgRA.js.map +1 -1
  2. package/dist/_chunks/CardDragPreview-DOxamsuj.mjs.map +1 -1
  3. package/dist/_chunks/{ComponentConfigurationPage-CnL10QYC.mjs → ComponentConfigurationPage-A5f-t42A.mjs} +4 -4
  4. package/dist/_chunks/{ComponentConfigurationPage-CnL10QYC.mjs.map → ComponentConfigurationPage-A5f-t42A.mjs.map} +1 -1
  5. package/dist/_chunks/{ComponentConfigurationPage-G4EIirP8.js → ComponentConfigurationPage-BtmEfYUS.js} +5 -6
  6. package/dist/_chunks/{ComponentConfigurationPage-G4EIirP8.js.map → ComponentConfigurationPage-BtmEfYUS.js.map} +1 -1
  7. package/dist/_chunks/{ComponentIcon-BXdiCGQp.js → ComponentIcon-CRbtQEUV.js} +2 -3
  8. package/dist/_chunks/{ComponentIcon-BXdiCGQp.js.map → ComponentIcon-CRbtQEUV.js.map} +1 -1
  9. package/dist/_chunks/ComponentIcon-u4bIXTFY.mjs.map +1 -1
  10. package/dist/_chunks/{EditConfigurationPage-B2AA1kVF.js → EditConfigurationPage-CXLQhPpj.js} +5 -6
  11. package/dist/_chunks/{EditConfigurationPage-B2AA1kVF.js.map → EditConfigurationPage-CXLQhPpj.js.map} +1 -1
  12. package/dist/_chunks/{EditConfigurationPage-I2kKh9dx.mjs → EditConfigurationPage-DN6yaDFZ.mjs} +4 -4
  13. package/dist/_chunks/{EditConfigurationPage-I2kKh9dx.mjs.map → EditConfigurationPage-DN6yaDFZ.mjs.map} +1 -1
  14. package/dist/_chunks/{EditViewPage-CHgoNwlc.js → EditViewPage-BW-BJJVg.js} +50 -11
  15. package/dist/_chunks/EditViewPage-BW-BJJVg.js.map +1 -0
  16. package/dist/_chunks/{EditViewPage-zFjJK0s8.mjs → EditViewPage-ONky_-8U.mjs} +50 -10
  17. package/dist/_chunks/EditViewPage-ONky_-8U.mjs.map +1 -0
  18. package/dist/_chunks/{Field-DPAzUS1M.mjs → Field-B4gAYDmQ.mjs} +215 -92
  19. package/dist/_chunks/Field-B4gAYDmQ.mjs.map +1 -0
  20. package/dist/_chunks/{Field-9DePZh-0.js → Field-BMlzghtV.js} +217 -94
  21. package/dist/_chunks/Field-BMlzghtV.js.map +1 -0
  22. package/dist/_chunks/FieldTypeIcon-CMlNO8PE.mjs.map +1 -1
  23. package/dist/_chunks/FieldTypeIcon-Dnwq_IRF.js.map +1 -1
  24. package/dist/_chunks/{Form-DPm-KZ1A.js → Form-DQPyv3UY.js} +6 -7
  25. package/dist/_chunks/Form-DQPyv3UY.js.map +1 -0
  26. package/dist/_chunks/{Form-CEkENbkF.mjs → Form-e4RpNQY0.mjs} +4 -4
  27. package/dist/_chunks/Form-e4RpNQY0.mjs.map +1 -0
  28. package/dist/_chunks/{History-utls71em.mjs → History-Bk2VCzmJ.mjs} +43 -100
  29. package/dist/_chunks/History-Bk2VCzmJ.mjs.map +1 -0
  30. package/dist/_chunks/{History-DXSbTWez.js → History-CzkXjAR0.js} +42 -100
  31. package/dist/_chunks/History-CzkXjAR0.js.map +1 -0
  32. package/dist/_chunks/{ListConfigurationPage-D5C7ACZ_.js → ListConfigurationPage-B9TbaEqp.js} +7 -7
  33. package/dist/_chunks/ListConfigurationPage-B9TbaEqp.js.map +1 -0
  34. package/dist/_chunks/{ListConfigurationPage-CuMXWWqb.mjs → ListConfigurationPage-BhNCzkQd.mjs} +7 -6
  35. package/dist/_chunks/ListConfigurationPage-BhNCzkQd.mjs.map +1 -0
  36. package/dist/_chunks/{ListViewPage-DfuwH1tt.js → ListViewPage-CIHO4H2J.js} +64 -42
  37. package/dist/_chunks/ListViewPage-CIHO4H2J.js.map +1 -0
  38. package/dist/_chunks/{ListViewPage-CdKd-PS_.mjs → ListViewPage-mK-sFVGU.mjs} +63 -40
  39. package/dist/_chunks/ListViewPage-mK-sFVGU.mjs.map +1 -0
  40. package/dist/_chunks/{NoContentTypePage-DkToTT7u.mjs → NoContentTypePage-BSVg7nZI.mjs} +2 -2
  41. package/dist/_chunks/{NoContentTypePage-DkToTT7u.mjs.map → NoContentTypePage-BSVg7nZI.mjs.map} +1 -1
  42. package/dist/_chunks/{NoContentTypePage-BIxlkWWi.js → NoContentTypePage-Dbfi49ek.js} +2 -2
  43. package/dist/_chunks/{NoContentTypePage-BIxlkWWi.js.map → NoContentTypePage-Dbfi49ek.js.map} +1 -1
  44. package/dist/_chunks/{NoPermissionsPage-Bu4GWYb-.js → NoPermissionsPage-CDvWOtEy.js} +2 -2
  45. package/dist/_chunks/{NoPermissionsPage-Bu4GWYb-.js.map → NoPermissionsPage-CDvWOtEy.js.map} +1 -1
  46. package/dist/_chunks/{NoPermissionsPage-DlWi4BAH.mjs → NoPermissionsPage-zpYME1_X.mjs} +2 -2
  47. package/dist/_chunks/{NoPermissionsPage-DlWi4BAH.mjs.map → NoPermissionsPage-zpYME1_X.mjs.map} +1 -1
  48. package/dist/_chunks/Preview-8U27vy1U.js +311 -0
  49. package/dist/_chunks/Preview-8U27vy1U.js.map +1 -0
  50. package/dist/_chunks/Preview-Dd3kQluA.mjs +293 -0
  51. package/dist/_chunks/Preview-Dd3kQluA.mjs.map +1 -0
  52. package/dist/_chunks/{Relations-QP5yn9_z.mjs → Relations-BvdARGTL.mjs} +75 -41
  53. package/dist/_chunks/Relations-BvdARGTL.mjs.map +1 -0
  54. package/dist/_chunks/{Relations-CFjTESWQ.js → Relations-CFMS6Dm8.js} +75 -42
  55. package/dist/_chunks/Relations-CFMS6Dm8.js.map +1 -0
  56. package/dist/_chunks/{en-BVzUkPxZ.js → en-BzQmavmK.js} +28 -11
  57. package/dist/_chunks/{en-BVzUkPxZ.js.map → en-BzQmavmK.js.map} +1 -1
  58. package/dist/_chunks/{en-CPTj6CjC.mjs → en-CSxLmrh1.mjs} +28 -11
  59. package/dist/_chunks/{en-CPTj6CjC.mjs.map → en-CSxLmrh1.mjs.map} +1 -1
  60. package/dist/_chunks/{es-EUonQTon.js → es-9K52xZIr.js} +2 -2
  61. package/dist/_chunks/{ja-CcFe8diO.js.map → es-9K52xZIr.js.map} +1 -1
  62. package/dist/_chunks/{es-CeXiYflN.mjs → es-D34tqjMw.mjs} +2 -2
  63. package/dist/_chunks/{es-CeXiYflN.mjs.map → es-D34tqjMw.mjs.map} +1 -1
  64. package/dist/_chunks/{fr-CD9VFbPM.mjs → fr--pg5jUbt.mjs} +13 -3
  65. package/dist/_chunks/{fr-CD9VFbPM.mjs.map → fr--pg5jUbt.mjs.map} +1 -1
  66. package/dist/_chunks/{fr-B7kGGg3E.js → fr-B2Kyv8Z9.js} +13 -3
  67. package/dist/_chunks/{fr-B7kGGg3E.js.map → fr-B2Kyv8Z9.js.map} +1 -1
  68. package/dist/_chunks/hooks-BAaaKPS_.js.map +1 -1
  69. package/dist/_chunks/{index-BHfS6_D5.mjs → index-B3tHjkLZ.mjs} +971 -724
  70. package/dist/_chunks/index-B3tHjkLZ.mjs.map +1 -0
  71. package/dist/_chunks/{index-DXiHxy70.js → index-TSBwtMDV.js} +969 -722
  72. package/dist/_chunks/index-TSBwtMDV.js.map +1 -0
  73. package/dist/_chunks/{ja-CcFe8diO.js → ja-7sfIbjxE.js} +2 -2
  74. package/dist/_chunks/{es-EUonQTon.js.map → ja-7sfIbjxE.js.map} +1 -1
  75. package/dist/_chunks/{ja-CtsUxOvk.mjs → ja-BHqhDq4V.mjs} +2 -2
  76. package/dist/_chunks/{ja-CtsUxOvk.mjs.map → ja-BHqhDq4V.mjs.map} +1 -1
  77. package/dist/_chunks/{layout-DX_52HSH.mjs → layout-C71zeI19.mjs} +4 -4
  78. package/dist/_chunks/{layout-DX_52HSH.mjs.map → layout-C71zeI19.mjs.map} +1 -1
  79. package/dist/_chunks/{layout-bE-WUnQ0.js → layout-CB2vrWLp.js} +5 -6
  80. package/dist/_chunks/{layout-bE-WUnQ0.js.map → layout-CB2vrWLp.js.map} +1 -1
  81. package/dist/_chunks/{objects-gigeqt7s.js → objects-BcXOv6_9.js} +2 -4
  82. package/dist/_chunks/{objects-gigeqt7s.js.map → objects-BcXOv6_9.js.map} +1 -1
  83. package/dist/_chunks/{objects-mKMAmfec.mjs → objects-D6yBsdmx.mjs} +2 -4
  84. package/dist/_chunks/{objects-mKMAmfec.mjs.map → objects-D6yBsdmx.mjs.map} +1 -1
  85. package/dist/_chunks/{relations-D706vblp.js → relations-8mON7ZVQ.js} +6 -7
  86. package/dist/_chunks/relations-8mON7ZVQ.js.map +1 -0
  87. package/dist/_chunks/{relations-SCVAL_aJ.mjs → relations-DcEHhh0U.mjs} +6 -7
  88. package/dist/_chunks/relations-DcEHhh0U.mjs.map +1 -0
  89. package/dist/_chunks/useDebounce-CtcjDB3L.js.map +1 -1
  90. package/dist/_chunks/useDebounce-DmuSJIF3.mjs.map +1 -1
  91. package/dist/_chunks/{useDragAndDrop-J0TUUbR6.js → useDragAndDrop-BMtgCYzL.js} +5 -9
  92. package/dist/_chunks/{useDragAndDrop-J0TUUbR6.js.map → useDragAndDrop-BMtgCYzL.js.map} +1 -1
  93. package/dist/_chunks/{useDragAndDrop-DdHgKsqq.mjs → useDragAndDrop-DJ6jqvZN.mjs} +4 -7
  94. package/dist/_chunks/{useDragAndDrop-DdHgKsqq.mjs.map → useDragAndDrop-DJ6jqvZN.mjs.map} +1 -1
  95. package/dist/admin/index.js +3 -1
  96. package/dist/admin/index.js.map +1 -1
  97. package/dist/admin/index.mjs +5 -3
  98. package/dist/admin/src/content-manager.d.ts +3 -2
  99. package/dist/admin/src/exports.d.ts +2 -1
  100. package/dist/admin/src/history/services/historyVersion.d.ts +1 -1
  101. package/dist/admin/src/hooks/useDocument.d.ts +32 -1
  102. package/dist/admin/src/pages/EditView/EditViewPage.d.ts +9 -1
  103. package/dist/admin/src/pages/EditView/components/DocumentActions.d.ts +1 -1
  104. package/dist/admin/src/pages/EditView/components/DocumentStatus.d.ts +3 -3
  105. package/dist/admin/src/pages/EditView/components/FormInputs/BlocksInput/Blocks/Code.d.ts +7 -0
  106. package/dist/admin/src/pages/EditView/components/FormInputs/BlocksInput/Blocks/utils/prismLanguages.d.ts +49 -0
  107. package/dist/admin/src/pages/EditView/components/FormInputs/BlocksInput/utils/constants.d.ts +1 -0
  108. package/dist/admin/src/pages/EditView/components/Header.d.ts +1 -0
  109. package/dist/admin/src/preview/components/PreviewContent.d.ts +2 -0
  110. package/dist/admin/src/preview/components/PreviewHeader.d.ts +2 -0
  111. package/dist/admin/src/preview/components/PreviewSidePanel.d.ts +3 -0
  112. package/dist/admin/src/preview/index.d.ts +4 -0
  113. package/dist/admin/src/preview/pages/Preview.d.ts +11 -0
  114. package/dist/admin/src/preview/routes.d.ts +3 -0
  115. package/dist/admin/src/preview/services/preview.d.ts +3 -0
  116. package/dist/admin/src/router.d.ts +1 -1
  117. package/dist/admin/src/services/api.d.ts +1 -1
  118. package/dist/admin/src/services/components.d.ts +2 -2
  119. package/dist/admin/src/services/contentTypes.d.ts +3 -3
  120. package/dist/admin/src/services/documents.d.ts +16 -19
  121. package/dist/admin/src/services/init.d.ts +1 -1
  122. package/dist/admin/src/services/relations.d.ts +2 -2
  123. package/dist/admin/src/services/uid.d.ts +3 -3
  124. package/dist/server/index.js +432 -194
  125. package/dist/server/index.js.map +1 -1
  126. package/dist/server/index.mjs +432 -193
  127. package/dist/server/index.mjs.map +1 -1
  128. package/dist/server/src/bootstrap.d.ts.map +1 -1
  129. package/dist/server/src/controllers/collection-types.d.ts.map +1 -1
  130. package/dist/server/src/controllers/index.d.ts.map +1 -1
  131. package/dist/server/src/controllers/relations.d.ts.map +1 -1
  132. package/dist/server/src/controllers/utils/metadata.d.ts +15 -1
  133. package/dist/server/src/controllers/utils/metadata.d.ts.map +1 -1
  134. package/dist/server/src/history/services/history.d.ts.map +1 -1
  135. package/dist/server/src/history/services/lifecycles.d.ts.map +1 -1
  136. package/dist/server/src/history/services/utils.d.ts +2 -3
  137. package/dist/server/src/history/services/utils.d.ts.map +1 -1
  138. package/dist/server/src/index.d.ts +4 -4
  139. package/dist/server/src/preview/controllers/index.d.ts +2 -0
  140. package/dist/server/src/preview/controllers/index.d.ts.map +1 -0
  141. package/dist/server/src/preview/controllers/preview.d.ts +13 -0
  142. package/dist/server/src/preview/controllers/preview.d.ts.map +1 -0
  143. package/dist/server/src/preview/controllers/validation/preview.d.ts +6 -0
  144. package/dist/server/src/preview/controllers/validation/preview.d.ts.map +1 -0
  145. package/dist/server/src/preview/index.d.ts +4 -0
  146. package/dist/server/src/preview/index.d.ts.map +1 -0
  147. package/dist/server/src/preview/routes/index.d.ts +8 -0
  148. package/dist/server/src/preview/routes/index.d.ts.map +1 -0
  149. package/dist/server/src/preview/routes/preview.d.ts +4 -0
  150. package/dist/server/src/preview/routes/preview.d.ts.map +1 -0
  151. package/dist/server/src/preview/services/index.d.ts +16 -0
  152. package/dist/server/src/preview/services/index.d.ts.map +1 -0
  153. package/dist/server/src/preview/services/preview-config.d.ts +32 -0
  154. package/dist/server/src/preview/services/preview-config.d.ts.map +1 -0
  155. package/dist/server/src/preview/services/preview.d.ts +12 -0
  156. package/dist/server/src/preview/services/preview.d.ts.map +1 -0
  157. package/dist/server/src/preview/utils.d.ts +19 -0
  158. package/dist/server/src/preview/utils.d.ts.map +1 -0
  159. package/dist/server/src/register.d.ts.map +1 -1
  160. package/dist/server/src/routes/index.d.ts.map +1 -1
  161. package/dist/server/src/services/document-manager.d.ts.map +1 -1
  162. package/dist/server/src/services/document-metadata.d.ts +8 -8
  163. package/dist/server/src/services/document-metadata.d.ts.map +1 -1
  164. package/dist/server/src/services/index.d.ts +4 -4
  165. package/dist/server/src/services/index.d.ts.map +1 -1
  166. package/dist/server/src/services/utils/configuration/index.d.ts +2 -2
  167. package/dist/server/src/services/utils/configuration/layouts.d.ts +2 -2
  168. package/dist/server/src/utils/index.d.ts +2 -0
  169. package/dist/server/src/utils/index.d.ts.map +1 -1
  170. package/dist/shared/contracts/index.d.ts +1 -0
  171. package/dist/shared/contracts/index.d.ts.map +1 -1
  172. package/dist/shared/contracts/preview.d.ts +27 -0
  173. package/dist/shared/contracts/preview.d.ts.map +1 -0
  174. package/dist/shared/index.js +4 -0
  175. package/dist/shared/index.js.map +1 -1
  176. package/dist/shared/index.mjs +4 -0
  177. package/dist/shared/index.mjs.map +1 -1
  178. package/package.json +14 -12
  179. package/dist/_chunks/EditViewPage-CHgoNwlc.js.map +0 -1
  180. package/dist/_chunks/EditViewPage-zFjJK0s8.mjs.map +0 -1
  181. package/dist/_chunks/Field-9DePZh-0.js.map +0 -1
  182. package/dist/_chunks/Field-DPAzUS1M.mjs.map +0 -1
  183. package/dist/_chunks/Form-CEkENbkF.mjs.map +0 -1
  184. package/dist/_chunks/Form-DPm-KZ1A.js.map +0 -1
  185. package/dist/_chunks/History-DXSbTWez.js.map +0 -1
  186. package/dist/_chunks/History-utls71em.mjs.map +0 -1
  187. package/dist/_chunks/ListConfigurationPage-CuMXWWqb.mjs.map +0 -1
  188. package/dist/_chunks/ListConfigurationPage-D5C7ACZ_.js.map +0 -1
  189. package/dist/_chunks/ListViewPage-CdKd-PS_.mjs.map +0 -1
  190. package/dist/_chunks/ListViewPage-DfuwH1tt.js.map +0 -1
  191. package/dist/_chunks/Relations-CFjTESWQ.js.map +0 -1
  192. package/dist/_chunks/Relations-QP5yn9_z.mjs.map +0 -1
  193. package/dist/_chunks/index-BHfS6_D5.mjs.map +0 -1
  194. package/dist/_chunks/index-DXiHxy70.js.map +0 -1
  195. package/dist/_chunks/relations-D706vblp.js.map +0 -1
  196. package/dist/_chunks/relations-SCVAL_aJ.mjs.map +0 -1
@@ -5,18 +5,69 @@ const strapiAdmin = require("@strapi/admin/strapi-admin");
5
5
  const designSystem = require("@strapi/design-system");
6
6
  const pipe$1 = require("lodash/fp/pipe");
7
7
  const reactIntl = require("react-intl");
8
- const index = require("./index-DXiHxy70.js");
8
+ const index = require("./index-TSBwtMDV.js");
9
9
  const fractionalIndexing = require("fractional-indexing");
10
- const Relations = require("./Relations-CFjTESWQ.js");
10
+ const Relations = require("./Relations-CFMS6Dm8.js");
11
11
  const Icons = require("@strapi/icons");
12
12
  const styledComponents = require("styled-components");
13
- const ComponentIcon = require("./ComponentIcon-BXdiCGQp.js");
13
+ const ComponentIcon = require("./ComponentIcon-CRbtQEUV.js");
14
14
  const reactDndHtml5Backend = require("react-dnd-html5-backend");
15
- const useDragAndDrop = require("./useDragAndDrop-J0TUUbR6.js");
16
- const objects = require("./objects-gigeqt7s.js");
15
+ const useDragAndDrop = require("./useDragAndDrop-BMtgCYzL.js");
16
+ const objects = require("./objects-BcXOv6_9.js");
17
17
  const slate = require("slate");
18
18
  const slateHistory = require("slate-history");
19
19
  const slateReact = require("slate-react");
20
+ const Prism = require("prismjs");
21
+ require("prismjs/themes/prism-solarizedlight.css");
22
+ require("prismjs/components/prism-asmatmel");
23
+ require("prismjs/components/prism-bash");
24
+ require("prismjs/components/prism-basic");
25
+ require("prismjs/components/prism-c");
26
+ require("prismjs/components/prism-clojure");
27
+ require("prismjs/components/prism-cobol");
28
+ require("prismjs/components/prism-cpp");
29
+ require("prismjs/components/prism-csharp");
30
+ require("prismjs/components/prism-dart");
31
+ require("prismjs/components/prism-docker");
32
+ require("prismjs/components/prism-elixir");
33
+ require("prismjs/components/prism-erlang");
34
+ require("prismjs/components/prism-fortran");
35
+ require("prismjs/components/prism-fsharp");
36
+ require("prismjs/components/prism-go");
37
+ require("prismjs/components/prism-graphql");
38
+ require("prismjs/components/prism-groovy");
39
+ require("prismjs/components/prism-haskell");
40
+ require("prismjs/components/prism-haxe");
41
+ require("prismjs/components/prism-ini");
42
+ require("prismjs/components/prism-java");
43
+ require("prismjs/components/prism-javascript");
44
+ require("prismjs/components/prism-jsx");
45
+ require("prismjs/components/prism-json");
46
+ require("prismjs/components/prism-julia");
47
+ require("prismjs/components/prism-kotlin");
48
+ require("prismjs/components/prism-latex");
49
+ require("prismjs/components/prism-lua");
50
+ require("prismjs/components/prism-markdown");
51
+ require("prismjs/components/prism-matlab");
52
+ require("prismjs/components/prism-makefile");
53
+ require("prismjs/components/prism-objectivec");
54
+ require("prismjs/components/prism-perl");
55
+ require("prismjs/components/prism-php");
56
+ require("prismjs/components/prism-powershell");
57
+ require("prismjs/components/prism-python");
58
+ require("prismjs/components/prism-r");
59
+ require("prismjs/components/prism-ruby");
60
+ require("prismjs/components/prism-rust");
61
+ require("prismjs/components/prism-sas");
62
+ require("prismjs/components/prism-scala");
63
+ require("prismjs/components/prism-scheme");
64
+ require("prismjs/components/prism-sql");
65
+ require("prismjs/components/prism-stata");
66
+ require("prismjs/components/prism-swift");
67
+ require("prismjs/components/prism-typescript");
68
+ require("prismjs/components/prism-tsx");
69
+ require("prismjs/components/prism-vbnet");
70
+ require("prismjs/components/prism-yaml");
20
71
  const useDebounce = require("./useDebounce-CtcjDB3L.js");
21
72
  const Toolbar = require("@radix-ui/react-toolbar");
22
73
  const reactRouterDom = require("react-router-dom");
@@ -37,8 +88,7 @@ require("highlight.js/styles/solarized-dark.css");
37
88
  require("codemirror5/addon/display/placeholder");
38
89
  const _interopDefault = (e) => e && e.__esModule ? e : { default: e };
39
90
  function _interopNamespace(e) {
40
- if (e && e.__esModule)
41
- return e;
91
+ if (e && e.__esModule) return e;
42
92
  const n = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } });
43
93
  if (e) {
44
94
  for (const k in e) {
@@ -56,6 +106,7 @@ function _interopNamespace(e) {
56
106
  }
57
107
  const React__namespace = /* @__PURE__ */ _interopNamespace(React);
58
108
  const pipe__default = /* @__PURE__ */ _interopDefault(pipe$1);
109
+ const Prism__namespace = /* @__PURE__ */ _interopNamespace(Prism);
59
110
  const Toolbar__namespace = /* @__PURE__ */ _interopNamespace(Toolbar);
60
111
  const CodeMirror__default = /* @__PURE__ */ _interopDefault(CodeMirror);
61
112
  const sanitizeHtml__default = /* @__PURE__ */ _interopDefault(sanitizeHtml);
@@ -197,7 +248,8 @@ const useLazyComponents = (componentUids = []) => {
197
248
  const codeLanguages = [
198
249
  {
199
250
  value: "asm",
200
- label: "Assembly"
251
+ label: "Assembly",
252
+ decorate: "asmatmel"
201
253
  },
202
254
  {
203
255
  value: "bash",
@@ -233,7 +285,8 @@ const codeLanguages = [
233
285
  },
234
286
  {
235
287
  value: "dockerfile",
236
- label: "Dockerfile"
288
+ label: "Dockerfile",
289
+ decorate: "docker"
237
290
  },
238
291
  {
239
292
  value: "elixir",
@@ -389,7 +442,8 @@ const codeLanguages = [
389
442
  },
390
443
  {
391
444
  value: "typescript",
392
- label: "TypeScript"
445
+ label: "TypeScript",
446
+ decorate: "ts"
393
447
  },
394
448
  {
395
449
  value: "tsx",
@@ -405,7 +459,8 @@ const codeLanguages = [
405
459
  },
406
460
  {
407
461
  value: "yaml",
408
- label: "YAML"
462
+ label: "YAML",
463
+ decorate: "yml"
409
464
  }
410
465
  ];
411
466
  const baseHandleConvert = (editor, attributesToSet) => {
@@ -471,6 +526,29 @@ const pressEnterTwiceToExit = (editor) => {
471
526
  });
472
527
  }
473
528
  };
529
+ const decorateCode = ([node, path]) => {
530
+ const ranges = [];
531
+ if (!slate.Element.isElement(node) || node.type !== "code") return ranges;
532
+ const text = slate.Node.string(node);
533
+ const language = codeLanguages.find((lang) => lang.value === node.language);
534
+ const decorateKey = language?.decorate ?? language?.value;
535
+ const selectedLanguage = Prism__namespace.languages[decorateKey || "plaintext"];
536
+ const tokens = Prism__namespace.tokenize(text, selectedLanguage);
537
+ let start = 0;
538
+ for (const token of tokens) {
539
+ const length = token.length;
540
+ const end = start + length;
541
+ if (typeof token !== "string") {
542
+ ranges.push({
543
+ anchor: { path, offset: start },
544
+ focus: { path, offset: end },
545
+ className: `token ${token.type}`
546
+ });
547
+ }
548
+ start = end;
549
+ }
550
+ return ranges;
551
+ };
474
552
  const CodeBlock = styledComponents.styled.pre`
475
553
  border-radius: ${({ theme }) => theme.borderRadius};
476
554
  background-color: ${({ theme }) => theme.colors.neutral100};
@@ -542,7 +620,7 @@ const CodeEditor = (props) => {
542
620
  const codeBlocks = {
543
621
  code: {
544
622
  renderElement: (props) => /* @__PURE__ */ jsxRuntime.jsx(CodeEditor, { ...props }),
545
- icon: Icons.Code,
623
+ icon: Icons.CodeBlock,
546
624
  label: {
547
625
  id: "components.Blocks.blocks.code",
548
626
  defaultMessage: "Code block"
@@ -731,8 +809,7 @@ const ImageDialog = () => {
731
809
  const [isOpen, setIsOpen] = React__namespace.useState(true);
732
810
  const { editor } = useBlocksEditorContext("ImageDialog");
733
811
  const components = strapiAdmin.useStrapiApp("ImageDialog", (state) => state.components);
734
- if (!components || !isOpen)
735
- return null;
812
+ if (!components || !isOpen) return null;
736
813
  const MediaLibraryDialog = components["media-library"];
737
814
  const insertImages = (images) => {
738
815
  slate.Transforms.unwrapNodes(editor, {
@@ -741,14 +818,12 @@ const ImageDialog = () => {
741
818
  });
742
819
  const nodeEntryBeingReplaced = slate.Editor.above(editor, {
743
820
  match(node) {
744
- if (slate.Editor.isEditor(node))
745
- return false;
821
+ if (slate.Editor.isEditor(node)) return false;
746
822
  const isInlineNode = ["text", "link"].includes(node.type);
747
823
  return !isInlineNode;
748
824
  }
749
825
  });
750
- if (!nodeEntryBeingReplaced)
751
- return;
826
+ if (!nodeEntryBeingReplaced) return;
752
827
  const [, pathToInsert] = nodeEntryBeingReplaced;
753
828
  slate.Transforms.removeNodes(editor);
754
829
  const nodesToInsert = images.map((image) => {
@@ -926,8 +1001,7 @@ const LinkContent = React__namespace.forwardRef(
926
1001
  slateReact.ReactEditor.focus(editor);
927
1002
  };
928
1003
  React__namespace.useEffect(() => {
929
- if (popoverOpen)
930
- linkInputRef.current?.focus();
1004
+ if (popoverOpen) linkInputRef.current?.focus();
931
1005
  }, [popoverOpen]);
932
1006
  const inputNotDirty = !linkText || !linkUrl || link.url && link.url === linkUrl && elementText && elementText === linkText;
933
1007
  return /* @__PURE__ */ jsxRuntime.jsxs(designSystem.Popover.Root, { open: popoverOpen, children: [
@@ -997,11 +1071,11 @@ const LinkContent = React__namespace.forwardRef(
997
1071
  ),
998
1072
  /* @__PURE__ */ jsxRuntime.jsxs(designSystem.Flex, { gap: 2, children: [
999
1073
  /* @__PURE__ */ jsxRuntime.jsx(designSystem.Button, { variant: "tertiary", onClick: handleClose, children: formatMessage({
1000
- id: "components.Blocks.popover.cancel",
1074
+ id: "global.cancel",
1001
1075
  defaultMessage: "Cancel"
1002
1076
  }) }),
1003
1077
  /* @__PURE__ */ jsxRuntime.jsx(designSystem.Button, { disabled: Boolean(inputNotDirty) || isSaveDisabled, onClick: handleSave, children: formatMessage({
1004
- id: "components.Blocks.popover.save",
1078
+ id: "global.save",
1005
1079
  defaultMessage: "Save"
1006
1080
  }) })
1007
1081
  ] })
@@ -1082,8 +1156,7 @@ const isText$1 = (node) => {
1082
1156
  return slate.Node.isNode(node) && !slate.Editor.isEditor(node) && node.type === "text";
1083
1157
  };
1084
1158
  const handleBackspaceKeyOnList = (editor, event) => {
1085
- if (!editor.selection)
1086
- return;
1159
+ if (!editor.selection) return;
1087
1160
  const [currentListItem, currentListItemPath] = slate.Editor.parent(editor, editor.selection.anchor);
1088
1161
  const [currentList, currentListPath] = slate.Editor.parent(editor, currentListItemPath);
1089
1162
  const isListEmpty = currentList.children.length === 1 && isText$1(currentListItem.children[0]) && currentListItem.children[0].text === "";
@@ -1192,8 +1265,7 @@ const handleEnterKeyOnList = (editor) => {
1192
1265
  };
1193
1266
  const handleConvertToList = (editor, format) => {
1194
1267
  const convertedPath = baseHandleConvert(editor, { type: "list-item" });
1195
- if (!convertedPath)
1196
- return;
1268
+ if (!convertedPath) return;
1197
1269
  slate.Transforms.wrapNodes(editor, { type: "list", format, children: [] }, { at: convertedPath });
1198
1270
  };
1199
1271
  const handleTabOnList = (editor) => {
@@ -1205,8 +1277,7 @@ const handleTabOnList = (editor) => {
1205
1277
  }
1206
1278
  const [currentListItem, currentListItemPath] = currentListItemEntry;
1207
1279
  const [currentList] = slate.Editor.parent(editor, currentListItemPath);
1208
- if (currentListItem === currentList.children[0])
1209
- return;
1280
+ if (currentListItem === currentList.children[0]) return;
1210
1281
  const currentListItemIndex = currentList.children.findIndex((item) => item === currentListItem);
1211
1282
  const previousNode = currentList.children[currentListItemIndex - 1];
1212
1283
  if (previousNode.type === "list") {
@@ -1573,8 +1644,7 @@ const isListNode = (node) => {
1573
1644
  const ListButton = ({ block, format }) => {
1574
1645
  const { editor, disabled, blocks } = useBlocksEditorContext("ListButton");
1575
1646
  const isListActive = () => {
1576
- if (!editor.selection)
1577
- return false;
1647
+ if (!editor.selection) return false;
1578
1648
  const currentListEntry = slate.Editor.above(editor, {
1579
1649
  match: (node) => !slate.Editor.isEditor(node) && node.type === "list",
1580
1650
  at: editor.selection.anchor
@@ -1648,8 +1718,7 @@ const LinkButton = ({ disabled }) => {
1648
1718
  const { editor } = useBlocksEditorContext("LinkButton");
1649
1719
  const isLinkActive = () => {
1650
1720
  const { selection } = editor;
1651
- if (!selection)
1652
- return false;
1721
+ if (!selection) return false;
1653
1722
  const [match] = Array.from(
1654
1723
  slate.Editor.nodes(editor, {
1655
1724
  at: slate.Editor.unhangRange(editor, selection),
@@ -1855,8 +1924,7 @@ const DragAndDropElement = ({
1855
1924
  displayedValue: children
1856
1925
  },
1857
1926
  onDropItem(currentIndex, newIndex) {
1858
- if (newIndex)
1859
- handleMoveBlock(newIndex, currentIndex);
1927
+ if (newIndex) handleMoveBlock(newIndex, currentIndex);
1860
1928
  }
1861
1929
  });
1862
1930
  const composedBoxRefs = designSystem.useComposedRefs(blockRef, dropRef);
@@ -1962,7 +2030,7 @@ const baseRenderLeaf = (props, modifiers2) => {
1962
2030
  }
1963
2031
  return currentChildren;
1964
2032
  }, props.children);
1965
- return /* @__PURE__ */ jsxRuntime.jsx("span", { ...props.attributes, children: wrappedChildren });
2033
+ return /* @__PURE__ */ jsxRuntime.jsx("span", { ...props.attributes, className: props.leaf.className, children: wrappedChildren });
1966
2034
  };
1967
2035
  const baseRenderElement = ({
1968
2036
  props,
@@ -2000,8 +2068,7 @@ const BlocksContent = ({ placeholder, ariaLabelId }) => {
2000
2068
  [modifiers2]
2001
2069
  );
2002
2070
  const handleMoveBlocks = (editor2, event) => {
2003
- if (!editor2.selection)
2004
- return;
2071
+ if (!editor2.selection) return;
2005
2072
  const start = slate.Range.start(editor2.selection);
2006
2073
  const currentIndex = [start.path[0]];
2007
2074
  let newIndexPosition = 0;
@@ -2138,8 +2205,7 @@ const BlocksContent = ({ placeholder, ariaLabelId }) => {
2138
2205
  }
2139
2206
  };
2140
2207
  const handleScrollSelectionIntoView = () => {
2141
- if (!editor.selection)
2142
- return;
2208
+ if (!editor.selection) return;
2143
2209
  const domRange = slateReact.ReactEditor.toDOMRange(editor, editor.selection);
2144
2210
  const domRect = domRange.getBoundingClientRect();
2145
2211
  const blocksInput = blocksRef.current;
@@ -2177,6 +2243,7 @@ const BlocksContent = ({ placeholder, ariaLabelId }) => {
2177
2243
  readOnly: disabled,
2178
2244
  placeholder,
2179
2245
  isExpandedMode,
2246
+ decorate: decorateCode,
2180
2247
  renderElement,
2181
2248
  renderLeaf,
2182
2249
  onKeyDown: handleKeyDown,
@@ -2333,8 +2400,7 @@ const InlineCode = styledComponents.styled.code`
2333
2400
  `;
2334
2401
  const baseCheckIsActive = (editor, name2) => {
2335
2402
  const marks = slate.Editor.marks(editor);
2336
- if (!marks)
2337
- return false;
2403
+ if (!marks) return false;
2338
2404
  return Boolean(marks[name2]);
2339
2405
  };
2340
2406
  const baseHandleToggle = (editor, name2) => {
@@ -2658,7 +2724,7 @@ const Initializer = ({ disabled, name: name2, onClick }) => {
2658
2724
  designSystem.Box,
2659
2725
  {
2660
2726
  tag: "button",
2661
- background: "neutral100",
2727
+ background: disabled ? "neutral150" : "neutral100",
2662
2728
  borderColor: field.error ? "danger600" : "neutral200",
2663
2729
  hasRadius: true,
2664
2730
  disabled,
@@ -2666,32 +2732,32 @@ const Initializer = ({ disabled, name: name2, onClick }) => {
2666
2732
  paddingTop: 9,
2667
2733
  paddingBottom: 9,
2668
2734
  type: "button",
2735
+ style: { cursor: disabled ? "not-allowed" : "pointer" },
2669
2736
  children: /* @__PURE__ */ jsxRuntime.jsxs(designSystem.Flex, { direction: "column", gap: 2, children: [
2670
- /* @__PURE__ */ jsxRuntime.jsx(designSystem.Flex, { justifyContent: "center", children: /* @__PURE__ */ jsxRuntime.jsx(CircleIcon, {}) }),
2671
- /* @__PURE__ */ jsxRuntime.jsx(designSystem.Flex, { justifyContent: "center", children: /* @__PURE__ */ jsxRuntime.jsx(designSystem.Typography, { textColor: "primary600", variant: "pi", fontWeight: "bold", children: formatMessage({
2672
- id: index.getTranslation("components.empty-repeatable"),
2673
- defaultMessage: "No entry yet. Click on the button below to add one."
2674
- }) }) })
2737
+ /* @__PURE__ */ jsxRuntime.jsx(designSystem.Flex, { justifyContent: "center", color: disabled ? "neutral500" : "primary600", children: /* @__PURE__ */ jsxRuntime.jsx(Icons.PlusCircle, { width: "3.2rem", height: "3.2rem" }) }),
2738
+ /* @__PURE__ */ jsxRuntime.jsx(designSystem.Flex, { justifyContent: "center", children: /* @__PURE__ */ jsxRuntime.jsx(
2739
+ designSystem.Typography,
2740
+ {
2741
+ textColor: disabled ? "neutral600" : "primary600",
2742
+ variant: "pi",
2743
+ fontWeight: "bold",
2744
+ children: formatMessage({
2745
+ id: index.getTranslation("components.empty-repeatable"),
2746
+ defaultMessage: "No entry yet. Click to add one."
2747
+ })
2748
+ }
2749
+ ) })
2675
2750
  ] })
2676
2751
  }
2677
2752
  ) });
2678
2753
  };
2679
- const CircleIcon = styledComponents.styled(Icons.PlusCircle)`
2680
- width: 2.4rem;
2681
- height: 2.4rem;
2682
- > circle {
2683
- fill: ${({ theme }) => theme.colors.primary200};
2684
- }
2685
- > path {
2686
- fill: ${({ theme }) => theme.colors.primary600};
2687
- }
2688
- `;
2689
2754
  const NonRepeatableComponent = ({
2690
2755
  attribute,
2691
2756
  name: name2,
2692
2757
  children,
2693
2758
  layout
2694
2759
  }) => {
2760
+ const { formatMessage } = reactIntl.useIntl();
2695
2761
  const { value } = strapiAdmin.useField(name2);
2696
2762
  const level = Relations.useComponent("NonRepeatableComponent", (state) => state.level);
2697
2763
  const isNested = level > 0;
@@ -2708,6 +2774,10 @@ const NonRepeatableComponent = ({
2708
2774
  children: /* @__PURE__ */ jsxRuntime.jsx(designSystem.Flex, { direction: "column", alignItems: "stretch", gap: 6, children: layout.map((row, index2) => {
2709
2775
  return /* @__PURE__ */ jsxRuntime.jsx(designSystem.Grid.Root, { gap: 4, children: row.map(({ size, ...field }) => {
2710
2776
  const completeFieldName = `${name2}.${field.name}`;
2777
+ const translatedLabel = formatMessage({
2778
+ id: `content-manager.components.${attribute.component}.${field.name}`,
2779
+ defaultMessage: field.label
2780
+ });
2711
2781
  return /* @__PURE__ */ jsxRuntime.jsx(
2712
2782
  designSystem.Grid.Item,
2713
2783
  {
@@ -2716,7 +2786,7 @@ const NonRepeatableComponent = ({
2716
2786
  xs: 12,
2717
2787
  direction: "column",
2718
2788
  alignItems: "stretch",
2719
- children: children({ ...field, name: completeFieldName })
2789
+ children: children({ ...field, label: translatedLabel, name: completeFieldName })
2720
2790
  },
2721
2791
  completeFieldName
2722
2792
  );
@@ -2738,13 +2808,34 @@ const RepeatableComponent = ({
2738
2808
  const { search: searchString } = reactRouterDom.useLocation();
2739
2809
  const search = React__namespace.useMemo(() => new URLSearchParams(searchString), [searchString]);
2740
2810
  const { components } = index.useDoc();
2741
- const { value = [], error } = strapiAdmin.useField(name2);
2811
+ const {
2812
+ value = [],
2813
+ error,
2814
+ rawError
2815
+ } = strapiAdmin.useField(name2);
2742
2816
  const addFieldRow = strapiAdmin.useForm("RepeatableComponent", (state) => state.addFieldRow);
2743
2817
  const moveFieldRow = strapiAdmin.useForm("RepeatableComponent", (state) => state.moveFieldRow);
2744
2818
  const removeFieldRow = strapiAdmin.useForm("RepeatableComponent", (state) => state.removeFieldRow);
2745
2819
  const { max = Infinity } = attribute;
2746
2820
  const [collapseToOpen, setCollapseToOpen] = React__namespace.useState("");
2747
2821
  const [liveText, setLiveText] = React__namespace.useState("");
2822
+ React__namespace.useEffect(() => {
2823
+ const hasNestedErrors = rawError && Array.isArray(rawError) && rawError.length > 0;
2824
+ const hasNestedValue = value && Array.isArray(value) && value.length > 0;
2825
+ if (hasNestedErrors && hasNestedValue) {
2826
+ const errorOpenItems = rawError.map((_, idx) => {
2827
+ return value[idx] ? value[idx].__temp_key__ : null;
2828
+ }).filter((value2) => !!value2);
2829
+ if (errorOpenItems && errorOpenItems.length > 0) {
2830
+ setCollapseToOpen((collapseToOpen2) => {
2831
+ if (!errorOpenItems.includes(collapseToOpen2)) {
2832
+ return errorOpenItems[0];
2833
+ }
2834
+ return collapseToOpen2;
2835
+ });
2836
+ }
2837
+ }
2838
+ }, [rawError, value]);
2748
2839
  const componentTmpKeyWithFocussedField = React__namespace.useMemo(() => {
2749
2840
  if (search.has("field")) {
2750
2841
  const fieldParam = search.get("field");
@@ -2897,6 +2988,10 @@ const RepeatableComponent = ({
2897
2988
  children: layout.map((row, index22) => {
2898
2989
  return /* @__PURE__ */ jsxRuntime.jsx(designSystem.Grid.Root, { gap: 4, children: row.map(({ size, ...field }) => {
2899
2990
  const completeFieldName = `${nameWithIndex}.${field.name}`;
2991
+ const translatedLabel = formatMessage({
2992
+ id: `content-manager.components.${attribute.component}.${field.name}`,
2993
+ defaultMessage: field.label
2994
+ });
2900
2995
  return /* @__PURE__ */ jsxRuntime.jsx(
2901
2996
  designSystem.Grid.Item,
2902
2997
  {
@@ -2905,7 +3000,11 @@ const RepeatableComponent = ({
2905
3000
  xs: 12,
2906
3001
  direction: "column",
2907
3002
  alignItems: "stretch",
2908
- children: children({ ...field, name: completeFieldName })
3003
+ children: children({
3004
+ ...field,
3005
+ label: translatedLabel,
3006
+ name: completeFieldName
3007
+ })
2909
3008
  },
2910
3009
  completeFieldName
2911
3010
  );
@@ -3749,8 +3848,7 @@ const Wrapper = styledComponents.styled.div`
3749
3848
  `;
3750
3849
  var listRE = /^(\s*)(>[> ]*|[*+-] \[[x ]\]\s|[*+-]\s|(\d+)([.)]))(\s*)/, emptyListRE = /^(\s*)(>[> ]*|[*+-] \[[x ]\]|[*+-]|(\d+)[.)])(\s*)$/, unorderedListRE = /[*+-]\s/;
3751
3850
  function newlineAndIndentContinueMarkdownList(cm) {
3752
- if (cm.getOption("disableInput"))
3753
- return CodeMirror__default.default.Pass;
3851
+ if (cm.getOption("disableInput")) return CodeMirror__default.default.Pass;
3754
3852
  var ranges = cm.listSelections(), replacements = [];
3755
3853
  for (var i = 0; i < ranges.length; i++) {
3756
3854
  var pos = ranges[i].head;
@@ -3784,8 +3882,7 @@ function newlineAndIndentContinueMarkdownList(cm) {
3784
3882
  var numbered = !(unorderedListRE.test(match[2]) || match[2].indexOf(">") >= 0);
3785
3883
  var bullet = numbered ? parseInt(match[3], 10) + 1 + match[4] : match[2].replace("x", " ");
3786
3884
  replacements[i] = "\n" + indent + bullet + after;
3787
- if (numbered)
3788
- incrementRemainingMarkdownListNumbers(cm, pos);
3885
+ if (numbered) incrementRemainingMarkdownListNumbers(cm, pos);
3789
3886
  }
3790
3887
  }
3791
3888
  cm.replaceSelections(replacements);
@@ -3803,10 +3900,8 @@ function incrementRemainingMarkdownListNumbers(cm, pos) {
3803
3900
  var newNumber = parseInt(startItem[3], 10) + lookAhead - skipCount;
3804
3901
  var nextNumber = parseInt(nextItem[3], 10), itemNumber = nextNumber;
3805
3902
  if (startIndent === nextIndent && !isNaN(nextNumber)) {
3806
- if (newNumber === nextNumber)
3807
- itemNumber = nextNumber + 1;
3808
- if (newNumber > nextNumber)
3809
- itemNumber = newNumber + 1;
3903
+ if (newNumber === nextNumber) itemNumber = nextNumber + 1;
3904
+ if (newNumber > nextNumber) itemNumber = newNumber + 1;
3810
3905
  cm.replaceRange(
3811
3906
  nextLine.replace(listRE, nextIndent + itemNumber + nextItem[4] + nextItem[5]),
3812
3907
  {
@@ -3819,10 +3914,8 @@ function incrementRemainingMarkdownListNumbers(cm, pos) {
3819
3914
  }
3820
3915
  );
3821
3916
  } else {
3822
- if (startIndent.length > nextIndent.length)
3823
- return;
3824
- if (startIndent.length < nextIndent.length && lookAhead === 1)
3825
- return;
3917
+ if (startIndent.length > nextIndent.length) return;
3918
+ if (startIndent.length < nextIndent.length && lookAhead === 1) return;
3826
3919
  skipCount += 1;
3827
3920
  }
3828
3921
  }
@@ -4959,15 +5052,19 @@ const Wysiwyg = React__namespace.forwardRef(
4959
5052
  );
4960
5053
  const MemoizedWysiwyg = React__namespace.memo(Wysiwyg);
4961
5054
  const InputRenderer = ({ visible, hint: providedHint, ...props }) => {
4962
- const { id } = index.useDoc();
5055
+ const { id, document: document2, collectionType } = index.useDoc();
4963
5056
  const isFormDisabled = strapiAdmin.useForm("InputRenderer", (state) => state.disabled);
4964
5057
  const isInDynamicZone = useDynamicZone("isInDynamicZone", (state) => state.isInDynamicZone);
4965
5058
  const canCreateFields = index.useDocumentRBAC("InputRenderer", (rbac) => rbac.canCreateFields);
4966
5059
  const canReadFields = index.useDocumentRBAC("InputRenderer", (rbac) => rbac.canReadFields);
4967
5060
  const canUpdateFields = index.useDocumentRBAC("InputRenderer", (rbac) => rbac.canUpdateFields);
4968
5061
  const canUserAction = index.useDocumentRBAC("InputRenderer", (rbac) => rbac.canUserAction);
4969
- const editableFields = id ? canUpdateFields : canCreateFields;
4970
- const readableFields = id ? canReadFields : canCreateFields;
5062
+ let idToCheck = id;
5063
+ if (collectionType === index.SINGLE_TYPES) {
5064
+ idToCheck = document2?.documentId;
5065
+ }
5066
+ const editableFields = idToCheck ? canUpdateFields : canCreateFields;
5067
+ const readableFields = idToCheck ? canReadFields : canCreateFields;
4971
5068
  const canUserReadField = canUserAction(props.name, readableFields, props.type);
4972
5069
  const canUserEditField = canUserAction(props.name, editableFields, props.type);
4973
5070
  const fields = strapiAdmin.useStrapiApp("InputRenderer", (app) => app.fields);
@@ -4978,6 +5075,7 @@ const InputRenderer = ({ visible, hint: providedHint, ...props }) => {
4978
5075
  const {
4979
5076
  edit: { components }
4980
5077
  } = index.useDocLayout();
5078
+ const field = strapiAdmin.useField(props.name);
4981
5079
  if (!visible) {
4982
5080
  return null;
4983
5081
  }
@@ -4988,7 +5086,7 @@ const InputRenderer = ({ visible, hint: providedHint, ...props }) => {
4988
5086
  if (attributeHasCustomFieldProperty(props.attribute)) {
4989
5087
  const CustomInput = lazyComponentStore[props.attribute.customField];
4990
5088
  if (CustomInput) {
4991
- return /* @__PURE__ */ jsxRuntime.jsx(CustomInput, { ...props, hint, disabled: fieldIsDisabled });
5089
+ return /* @__PURE__ */ jsxRuntime.jsx(CustomInput, { ...props, ...field, hint, disabled: fieldIsDisabled });
4992
5090
  }
4993
5091
  return /* @__PURE__ */ jsxRuntime.jsx(
4994
5092
  strapiAdmin.InputRenderer,
@@ -5149,6 +5247,14 @@ const DynamicComponent = ({
5149
5247
  React__namespace.useEffect(() => {
5150
5248
  dragPreviewRef(reactDndHtml5Backend.getEmptyImage(), { captureDraggingState: false });
5151
5249
  }, [dragPreviewRef, index$1]);
5250
+ const accordionValue = React__namespace.useId();
5251
+ const { value = [], rawError } = strapiAdmin.useField(`${name2}.${index$1}`);
5252
+ const [collapseToOpen, setCollapseToOpen] = React__namespace.useState("");
5253
+ React__namespace.useEffect(() => {
5254
+ if (rawError && value) {
5255
+ setCollapseToOpen(accordionValue);
5256
+ }
5257
+ }, [rawError, value, accordionValue]);
5152
5258
  const composedBoxRefs = designSystem.useComposedRefs(boxRef, dropRef);
5153
5259
  const accordionActions = disabled ? null : /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
5154
5260
  /* @__PURE__ */ jsxRuntime.jsx(
@@ -5214,10 +5320,9 @@ const DynamicComponent = ({
5214
5320
  ] })
5215
5321
  ] });
5216
5322
  const accordionTitle = title ? `${displayName} ${title}` : displayName;
5217
- const accordionValue = React__namespace.useId();
5218
5323
  return /* @__PURE__ */ jsxRuntime.jsxs(ComponentContainer, { tag: "li", width: "100%", children: [
5219
5324
  /* @__PURE__ */ jsxRuntime.jsx(designSystem.Flex, { justifyContent: "center", children: /* @__PURE__ */ jsxRuntime.jsx(Rectangle, { background: "neutral200" }) }),
5220
- /* @__PURE__ */ jsxRuntime.jsx(StyledBox, { ref: composedBoxRefs, hasRadius: true, children: isDragging ? /* @__PURE__ */ jsxRuntime.jsx(Preview, {}) : /* @__PURE__ */ jsxRuntime.jsx(designSystem.Accordion.Root, { children: /* @__PURE__ */ jsxRuntime.jsxs(designSystem.Accordion.Item, { value: accordionValue, children: [
5325
+ /* @__PURE__ */ jsxRuntime.jsx(StyledBox, { ref: composedBoxRefs, hasRadius: true, children: isDragging ? /* @__PURE__ */ jsxRuntime.jsx(Preview, {}) : /* @__PURE__ */ jsxRuntime.jsx(designSystem.Accordion.Root, { value: collapseToOpen, onValueChange: setCollapseToOpen, children: /* @__PURE__ */ jsxRuntime.jsxs(designSystem.Accordion.Item, { value: accordionValue, children: [
5221
5326
  /* @__PURE__ */ jsxRuntime.jsxs(designSystem.Accordion.Header, { children: [
5222
5327
  /* @__PURE__ */ jsxRuntime.jsx(
5223
5328
  designSystem.Accordion.Trigger,
@@ -5228,21 +5333,39 @@ const DynamicComponent = ({
5228
5333
  ),
5229
5334
  /* @__PURE__ */ jsxRuntime.jsx(designSystem.Accordion.Actions, { children: accordionActions })
5230
5335
  ] }),
5231
- /* @__PURE__ */ jsxRuntime.jsx(designSystem.Accordion.Content, { children: /* @__PURE__ */ jsxRuntime.jsx(AccordionContentRadius, { background: "neutral0", children: /* @__PURE__ */ jsxRuntime.jsx(designSystem.Box, { paddingLeft: 6, paddingRight: 6, paddingTop: 6, paddingBottom: 6, children: components[componentUid]?.layout?.map((row, rowInd) => /* @__PURE__ */ jsxRuntime.jsx(designSystem.Grid.Root, { gap: 4, children: row.map(({ size, ...field }) => {
5232
- const fieldName = `${name2}.${index$1}.${field.name}`;
5233
- return /* @__PURE__ */ jsxRuntime.jsx(
5234
- designSystem.Grid.Item,
5235
- {
5236
- col: size,
5237
- s: 12,
5238
- xs: 12,
5239
- direction: "column",
5240
- alignItems: "stretch",
5241
- children: /* @__PURE__ */ jsxRuntime.jsx(MemoizedInputRenderer, { ...field, name: fieldName })
5242
- },
5243
- fieldName
5244
- );
5245
- }) }, rowInd)) }) }) })
5336
+ /* @__PURE__ */ jsxRuntime.jsx(designSystem.Accordion.Content, { children: /* @__PURE__ */ jsxRuntime.jsx(AccordionContentRadius, { background: "neutral0", children: /* @__PURE__ */ jsxRuntime.jsx(designSystem.Box, { paddingLeft: 6, paddingRight: 6, paddingTop: 6, paddingBottom: 6, children: /* @__PURE__ */ jsxRuntime.jsx(designSystem.Grid.Root, { gap: 4, children: components[componentUid]?.layout?.map((row, rowInd) => /* @__PURE__ */ jsxRuntime.jsx(
5337
+ designSystem.Grid.Item,
5338
+ {
5339
+ col: 12,
5340
+ s: 12,
5341
+ xs: 12,
5342
+ direction: "column",
5343
+ alignItems: "stretch",
5344
+ children: /* @__PURE__ */ jsxRuntime.jsx(designSystem.Grid.Root, { gap: 4, children: row.map(({ size, ...field }) => {
5345
+ const fieldName = `${name2}.${index$1}.${field.name}`;
5346
+ const fieldWithTranslatedLabel = {
5347
+ ...field,
5348
+ label: formatMessage({
5349
+ id: `content-manager.components.${componentUid}.${field.name}`,
5350
+ defaultMessage: field.label
5351
+ })
5352
+ };
5353
+ return /* @__PURE__ */ jsxRuntime.jsx(
5354
+ designSystem.Grid.Item,
5355
+ {
5356
+ col: size,
5357
+ s: 12,
5358
+ xs: 12,
5359
+ direction: "column",
5360
+ alignItems: "stretch",
5361
+ children: /* @__PURE__ */ jsxRuntime.jsx(MemoizedInputRenderer, { ...fieldWithTranslatedLabel, name: fieldName })
5362
+ },
5363
+ fieldName
5364
+ );
5365
+ }) })
5366
+ },
5367
+ rowInd
5368
+ )) }) }) }) })
5246
5369
  ] }) }) })
5247
5370
  ] });
5248
5371
  };
@@ -5548,4 +5671,4 @@ exports.transformDocument = transformDocument;
5548
5671
  exports.useDynamicZone = useDynamicZone;
5549
5672
  exports.useFieldHint = useFieldHint;
5550
5673
  exports.useLazyComponents = useLazyComponents;
5551
- //# sourceMappingURL=Field-9DePZh-0.js.map
5674
+ //# sourceMappingURL=Field-BMlzghtV.js.map