@strapi/content-manager 0.0.0-experimental.fed75ee8e64c57dbed0b670b25ef026b69baab10 → 0.0.0-next.20afc21f5d54593dc724202ebca562df76601077

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 (148) hide show
  1. package/dist/_chunks/{ComponentConfigurationPage-DNRPa10q.js → ComponentConfigurationPage-CpJNPBgk.js} +4 -4
  2. package/dist/_chunks/{ComponentConfigurationPage-DNRPa10q.js.map → ComponentConfigurationPage-CpJNPBgk.js.map} +1 -1
  3. package/dist/_chunks/{ComponentConfigurationPage-BVM7LScS.mjs → ComponentConfigurationPage-TYDPg5WG.mjs} +4 -4
  4. package/dist/_chunks/{ComponentConfigurationPage-BVM7LScS.mjs.map → ComponentConfigurationPage-TYDPg5WG.mjs.map} +1 -1
  5. package/dist/_chunks/{EditConfigurationPage-BrG0mEfF.js → EditConfigurationPage-CFDe6SA1.js} +4 -4
  6. package/dist/_chunks/{EditConfigurationPage-BrG0mEfF.js.map → EditConfigurationPage-CFDe6SA1.js.map} +1 -1
  7. package/dist/_chunks/{EditConfigurationPage-BWq-9Zhk.mjs → EditConfigurationPage-DqL8Pq5r.mjs} +4 -4
  8. package/dist/_chunks/{EditConfigurationPage-BWq-9Zhk.mjs.map → EditConfigurationPage-DqL8Pq5r.mjs.map} +1 -1
  9. package/dist/_chunks/{EditViewPage-Dx0QnTxn.mjs → EditViewPage-RXrFLav2.mjs} +3 -3
  10. package/dist/_chunks/EditViewPage-RXrFLav2.mjs.map +1 -0
  11. package/dist/_chunks/{EditViewPage-BbY0bNNE.js → EditViewPage-khfP2CR3.js} +3 -3
  12. package/dist/_chunks/EditViewPage-khfP2CR3.js.map +1 -0
  13. package/dist/_chunks/{Field-DVZSGAon.mjs → Field--rQeS6Zj.mjs} +5 -5
  14. package/dist/_chunks/Field--rQeS6Zj.mjs.map +1 -0
  15. package/dist/_chunks/{Field-CglKum3X.js → Field-C1ftmTe9.js} +5 -5
  16. package/dist/_chunks/Field-C1ftmTe9.js.map +1 -0
  17. package/dist/_chunks/{Form-BQwxPqu3.mjs → Form-COtGXyUE.mjs} +2 -2
  18. package/dist/_chunks/{Form-BQwxPqu3.mjs.map → Form-COtGXyUE.mjs.map} +1 -1
  19. package/dist/_chunks/{Form-B7nYNIUm.js → Form-CwdX5oLw.js} +2 -2
  20. package/dist/_chunks/{Form-B7nYNIUm.js.map → Form-CwdX5oLw.js.map} +1 -1
  21. package/dist/_chunks/{History-Bmu6tx6s.mjs → History-BevwkPO1.mjs} +18 -34
  22. package/dist/_chunks/History-BevwkPO1.mjs.map +1 -0
  23. package/dist/_chunks/{History-3JN4BIS1.js → History-DKS2aqqM.js} +18 -34
  24. package/dist/_chunks/History-DKS2aqqM.js.map +1 -0
  25. package/dist/_chunks/{ListConfigurationPage-DwijcJ17.mjs → ListConfigurationPage-DNfZDtDA.mjs} +3 -3
  26. package/dist/_chunks/{ListConfigurationPage-DwijcJ17.mjs.map → ListConfigurationPage-DNfZDtDA.mjs.map} +1 -1
  27. package/dist/_chunks/{ListConfigurationPage-BcC28SV0.js → ListConfigurationPage-LSYSPZHH.js} +3 -3
  28. package/dist/_chunks/{ListConfigurationPage-BcC28SV0.js.map → ListConfigurationPage-LSYSPZHH.js.map} +1 -1
  29. package/dist/_chunks/{ListViewPage-DzhuS3CW.mjs → ListViewPage-C1PyuYRS.mjs} +15 -4
  30. package/dist/_chunks/{ListViewPage-DzhuS3CW.mjs.map → ListViewPage-C1PyuYRS.mjs.map} +1 -1
  31. package/dist/_chunks/{ListViewPage-ZPNQ6jWC.js → ListViewPage-DlUpqLIo.js} +15 -4
  32. package/dist/_chunks/ListViewPage-DlUpqLIo.js.map +1 -0
  33. package/dist/_chunks/{NoContentTypePage-BKMgOyd3.mjs → NoContentTypePage-C9q744z1.mjs} +2 -2
  34. package/dist/_chunks/{NoContentTypePage-BKMgOyd3.mjs.map → NoContentTypePage-C9q744z1.mjs.map} +1 -1
  35. package/dist/_chunks/{NoContentTypePage-DzwJNXvn.js → NoContentTypePage-m8wt3sf6.js} +2 -2
  36. package/dist/_chunks/{NoContentTypePage-DzwJNXvn.js.map → NoContentTypePage-m8wt3sf6.js.map} +1 -1
  37. package/dist/_chunks/{NoPermissionsPage-DBbGJqL9.mjs → NoPermissionsPage-8BM-LWta.mjs} +2 -2
  38. package/dist/_chunks/{NoPermissionsPage-DBbGJqL9.mjs.map → NoPermissionsPage-8BM-LWta.mjs.map} +1 -1
  39. package/dist/_chunks/{NoPermissionsPage-GaweP-NG.js → NoPermissionsPage-DLfPsA0Q.js} +2 -2
  40. package/dist/_chunks/{NoPermissionsPage-GaweP-NG.js.map → NoPermissionsPage-DLfPsA0Q.js.map} +1 -1
  41. package/dist/_chunks/{Relations-B7VtRA3g.mjs → Relations-D25xRcFy.mjs} +44 -18
  42. package/dist/_chunks/Relations-D25xRcFy.mjs.map +1 -0
  43. package/dist/_chunks/{Relations-BHXq_cKF.js → Relations-OMriCP_L.js} +43 -17
  44. package/dist/_chunks/Relations-OMriCP_L.js.map +1 -0
  45. package/dist/_chunks/{en-Bm0D0IWz.js → en-Bdpa50w3.js} +6 -2
  46. package/dist/_chunks/{en-Bm0D0IWz.js.map → en-Bdpa50w3.js.map} +1 -1
  47. package/dist/_chunks/{en-DKV44jRb.mjs → en-CZw4xdPY.mjs} +6 -2
  48. package/dist/_chunks/{en-DKV44jRb.mjs.map → en-CZw4xdPY.mjs.map} +1 -1
  49. package/dist/_chunks/{es-EUonQTon.js → es-9K52xZIr.js} +2 -2
  50. package/dist/_chunks/{ja-CcFe8diO.js.map → es-9K52xZIr.js.map} +1 -1
  51. package/dist/_chunks/{es-CeXiYflN.mjs → es-D34tqjMw.mjs} +2 -2
  52. package/dist/_chunks/{es-CeXiYflN.mjs.map → es-D34tqjMw.mjs.map} +1 -1
  53. package/dist/_chunks/{fr-CD9VFbPM.mjs → fr--pg5jUbt.mjs} +13 -3
  54. package/dist/_chunks/{fr-CD9VFbPM.mjs.map → fr--pg5jUbt.mjs.map} +1 -1
  55. package/dist/_chunks/{fr-B7kGGg3E.js → fr-B2Kyv8Z9.js} +13 -3
  56. package/dist/_chunks/{fr-B7kGGg3E.js.map → fr-B2Kyv8Z9.js.map} +1 -1
  57. package/dist/_chunks/{index-TaRzG09p.mjs → index-BvGihCJp.mjs} +128 -53
  58. package/dist/_chunks/index-BvGihCJp.mjs.map +1 -0
  59. package/dist/_chunks/{index-DcA8_tJw.js → index-DqZnjo8F.js} +127 -51
  60. package/dist/_chunks/index-DqZnjo8F.js.map +1 -0
  61. package/dist/_chunks/{ja-CcFe8diO.js → ja-7sfIbjxE.js} +2 -2
  62. package/dist/_chunks/{es-EUonQTon.js.map → ja-7sfIbjxE.js.map} +1 -1
  63. package/dist/_chunks/{ja-CtsUxOvk.mjs → ja-BHqhDq4V.mjs} +2 -2
  64. package/dist/_chunks/{ja-CtsUxOvk.mjs.map → ja-BHqhDq4V.mjs.map} +1 -1
  65. package/dist/_chunks/{layout-CrgXpOxT.js → layout-CmaemAO3.js} +3 -3
  66. package/dist/_chunks/{layout-CrgXpOxT.js.map → layout-CmaemAO3.js.map} +1 -1
  67. package/dist/_chunks/{layout-aX-RJhd5.mjs → layout-ykHSe2KQ.mjs} +3 -3
  68. package/dist/_chunks/{layout-aX-RJhd5.mjs.map → layout-ykHSe2KQ.mjs.map} +1 -1
  69. package/dist/_chunks/{objects-gigeqt7s.js → objects-BcXOv6_9.js} +2 -4
  70. package/dist/_chunks/{objects-gigeqt7s.js.map → objects-BcXOv6_9.js.map} +1 -1
  71. package/dist/_chunks/{objects-mKMAmfec.mjs → objects-D6yBsdmx.mjs} +2 -4
  72. package/dist/_chunks/{objects-mKMAmfec.mjs.map → objects-D6yBsdmx.mjs.map} +1 -1
  73. package/dist/_chunks/{relations-Z6RA1sBS.js → relations-D9fKsCLY.js} +3 -7
  74. package/dist/_chunks/relations-D9fKsCLY.js.map +1 -0
  75. package/dist/_chunks/{relations-D3Hlx6QX.mjs → relations-u-Vz51Ea.mjs} +3 -7
  76. package/dist/_chunks/relations-u-Vz51Ea.mjs.map +1 -0
  77. package/dist/admin/index.js +1 -1
  78. package/dist/admin/index.mjs +1 -1
  79. package/dist/admin/src/preview/components/PreviewSidePanel.d.ts +3 -0
  80. package/dist/admin/src/preview/constants.d.ts +1 -0
  81. package/dist/admin/src/preview/index.d.ts +4 -0
  82. package/dist/admin/src/preview/services/preview.d.ts +3 -0
  83. package/dist/server/index.js +344 -144
  84. package/dist/server/index.js.map +1 -1
  85. package/dist/server/index.mjs +344 -144
  86. package/dist/server/index.mjs.map +1 -1
  87. package/dist/server/src/bootstrap.d.ts.map +1 -1
  88. package/dist/server/src/controllers/index.d.ts.map +1 -1
  89. package/dist/server/src/controllers/relations.d.ts.map +1 -1
  90. package/dist/server/src/controllers/utils/metadata.d.ts +15 -1
  91. package/dist/server/src/controllers/utils/metadata.d.ts.map +1 -1
  92. package/dist/server/src/history/services/lifecycles.d.ts.map +1 -1
  93. package/dist/server/src/history/services/utils.d.ts +2 -3
  94. package/dist/server/src/history/services/utils.d.ts.map +1 -1
  95. package/dist/server/src/index.d.ts +4 -4
  96. package/dist/server/src/preview/constants.d.ts +2 -0
  97. package/dist/server/src/preview/constants.d.ts.map +1 -0
  98. package/dist/server/src/preview/controllers/index.d.ts +2 -0
  99. package/dist/server/src/preview/controllers/index.d.ts.map +1 -0
  100. package/dist/server/src/preview/controllers/preview.d.ts +13 -0
  101. package/dist/server/src/preview/controllers/preview.d.ts.map +1 -0
  102. package/dist/server/src/preview/controllers/validation/preview.d.ts +6 -0
  103. package/dist/server/src/preview/controllers/validation/preview.d.ts.map +1 -0
  104. package/dist/server/src/preview/index.d.ts +4 -0
  105. package/dist/server/src/preview/index.d.ts.map +1 -0
  106. package/dist/server/src/preview/routes/index.d.ts +8 -0
  107. package/dist/server/src/preview/routes/index.d.ts.map +1 -0
  108. package/dist/server/src/preview/routes/preview.d.ts +4 -0
  109. package/dist/server/src/preview/routes/preview.d.ts.map +1 -0
  110. package/dist/server/src/preview/services/index.d.ts +15 -0
  111. package/dist/server/src/preview/services/index.d.ts.map +1 -0
  112. package/dist/server/src/preview/services/preview-config.d.ts +30 -0
  113. package/dist/server/src/preview/services/preview-config.d.ts.map +1 -0
  114. package/dist/server/src/preview/services/preview.d.ts +12 -0
  115. package/dist/server/src/preview/services/preview.d.ts.map +1 -0
  116. package/dist/server/src/preview/utils.d.ts +18 -0
  117. package/dist/server/src/preview/utils.d.ts.map +1 -0
  118. package/dist/server/src/routes/index.d.ts.map +1 -1
  119. package/dist/server/src/services/document-metadata.d.ts +8 -8
  120. package/dist/server/src/services/document-metadata.d.ts.map +1 -1
  121. package/dist/server/src/services/index.d.ts +4 -4
  122. package/dist/server/src/services/index.d.ts.map +1 -1
  123. package/dist/server/src/services/utils/configuration/index.d.ts +2 -2
  124. package/dist/server/src/services/utils/configuration/layouts.d.ts +2 -2
  125. package/dist/server/src/utils/index.d.ts +2 -0
  126. package/dist/server/src/utils/index.d.ts.map +1 -1
  127. package/dist/shared/contracts/index.d.ts +1 -0
  128. package/dist/shared/contracts/index.d.ts.map +1 -1
  129. package/dist/shared/contracts/preview.d.ts +27 -0
  130. package/dist/shared/contracts/preview.d.ts.map +1 -0
  131. package/dist/shared/index.js +4 -0
  132. package/dist/shared/index.js.map +1 -1
  133. package/dist/shared/index.mjs +4 -0
  134. package/dist/shared/index.mjs.map +1 -1
  135. package/package.json +7 -7
  136. package/dist/_chunks/EditViewPage-BbY0bNNE.js.map +0 -1
  137. package/dist/_chunks/EditViewPage-Dx0QnTxn.mjs.map +0 -1
  138. package/dist/_chunks/Field-CglKum3X.js.map +0 -1
  139. package/dist/_chunks/Field-DVZSGAon.mjs.map +0 -1
  140. package/dist/_chunks/History-3JN4BIS1.js.map +0 -1
  141. package/dist/_chunks/History-Bmu6tx6s.mjs.map +0 -1
  142. package/dist/_chunks/ListViewPage-ZPNQ6jWC.js.map +0 -1
  143. package/dist/_chunks/Relations-B7VtRA3g.mjs.map +0 -1
  144. package/dist/_chunks/Relations-BHXq_cKF.js.map +0 -1
  145. package/dist/_chunks/index-DcA8_tJw.js.map +0 -1
  146. package/dist/_chunks/index-TaRzG09p.mjs.map +0 -1
  147. package/dist/_chunks/relations-D3Hlx6QX.mjs.map +0 -1
  148. package/dist/_chunks/relations-Z6RA1sBS.js.map +0 -1
@@ -4,6 +4,7 @@ const jsxRuntime = require("react/jsx-runtime");
4
4
  const strapiAdmin = require("@strapi/admin/strapi-admin");
5
5
  const React = require("react");
6
6
  const designSystem = require("@strapi/design-system");
7
+ const mapValues = require("lodash/fp/mapValues");
7
8
  const reactIntl = require("react-intl");
8
9
  const reactRouterDom = require("react-router-dom");
9
10
  const yup = require("yup");
@@ -32,6 +33,7 @@ function _interopNamespace(e) {
32
33
  return Object.freeze(n);
33
34
  }
34
35
  const React__namespace = /* @__PURE__ */ _interopNamespace(React);
36
+ const mapValues__default = /* @__PURE__ */ _interopDefault(mapValues);
35
37
  const yup__namespace = /* @__PURE__ */ _interopNamespace(yup);
36
38
  const pipe__default = /* @__PURE__ */ _interopDefault(pipe);
37
39
  const __variableDynamicImportRuntimeHelper = (glob, path) => {
@@ -989,9 +991,10 @@ const formatEditLayout = (data, {
989
991
  currentPanelIndex += 2;
990
992
  } else {
991
993
  if (!panels[currentPanelIndex]) {
992
- panels.push([]);
994
+ panels.push([row]);
995
+ } else {
996
+ panels[currentPanelIndex].push(row);
993
997
  }
994
- panels[currentPanelIndex].push(row);
995
998
  }
996
999
  return panels;
997
1000
  }, []);
@@ -1249,9 +1252,6 @@ const useContentManagerContext = () => {
1249
1252
  };
1250
1253
  };
1251
1254
  const prefixPluginTranslations = (trad, pluginId) => {
1252
- if (!pluginId) {
1253
- throw new TypeError("pluginId can't be empty");
1254
- }
1255
1255
  return Object.keys(trad).reduce((acc, current) => {
1256
1256
  acc[`${pluginId}.${current}`] = trad[current];
1257
1257
  return acc;
@@ -1686,7 +1686,7 @@ const useDocumentActions = () => {
1686
1686
  };
1687
1687
  };
1688
1688
  const ProtectedHistoryPage = React.lazy(
1689
- () => Promise.resolve().then(() => require("./History-3JN4BIS1.js")).then((mod) => ({ default: mod.ProtectedHistoryPage }))
1689
+ () => Promise.resolve().then(() => require("./History-DKS2aqqM.js")).then((mod) => ({ default: mod.ProtectedHistoryPage }))
1690
1690
  );
1691
1691
  const routes$1 = [
1692
1692
  {
@@ -1699,31 +1699,31 @@ const routes$1 = [
1699
1699
  }
1700
1700
  ];
1701
1701
  const ProtectedEditViewPage = React.lazy(
1702
- () => Promise.resolve().then(() => require("./EditViewPage-BbY0bNNE.js")).then((mod) => ({ default: mod.ProtectedEditViewPage }))
1702
+ () => Promise.resolve().then(() => require("./EditViewPage-khfP2CR3.js")).then((mod) => ({ default: mod.ProtectedEditViewPage }))
1703
1703
  );
1704
1704
  const ProtectedListViewPage = React.lazy(
1705
- () => Promise.resolve().then(() => require("./ListViewPage-ZPNQ6jWC.js")).then((mod) => ({ default: mod.ProtectedListViewPage }))
1705
+ () => Promise.resolve().then(() => require("./ListViewPage-DlUpqLIo.js")).then((mod) => ({ default: mod.ProtectedListViewPage }))
1706
1706
  );
1707
1707
  const ProtectedListConfiguration = React.lazy(
1708
- () => Promise.resolve().then(() => require("./ListConfigurationPage-BcC28SV0.js")).then((mod) => ({
1708
+ () => Promise.resolve().then(() => require("./ListConfigurationPage-LSYSPZHH.js")).then((mod) => ({
1709
1709
  default: mod.ProtectedListConfiguration
1710
1710
  }))
1711
1711
  );
1712
1712
  const ProtectedEditConfigurationPage = React.lazy(
1713
- () => Promise.resolve().then(() => require("./EditConfigurationPage-BrG0mEfF.js")).then((mod) => ({
1713
+ () => Promise.resolve().then(() => require("./EditConfigurationPage-CFDe6SA1.js")).then((mod) => ({
1714
1714
  default: mod.ProtectedEditConfigurationPage
1715
1715
  }))
1716
1716
  );
1717
1717
  const ProtectedComponentConfigurationPage = React.lazy(
1718
- () => Promise.resolve().then(() => require("./ComponentConfigurationPage-DNRPa10q.js")).then((mod) => ({
1718
+ () => Promise.resolve().then(() => require("./ComponentConfigurationPage-CpJNPBgk.js")).then((mod) => ({
1719
1719
  default: mod.ProtectedComponentConfigurationPage
1720
1720
  }))
1721
1721
  );
1722
1722
  const NoPermissions = React.lazy(
1723
- () => Promise.resolve().then(() => require("./NoPermissionsPage-GaweP-NG.js")).then((mod) => ({ default: mod.NoPermissions }))
1723
+ () => Promise.resolve().then(() => require("./NoPermissionsPage-DLfPsA0Q.js")).then((mod) => ({ default: mod.NoPermissions }))
1724
1724
  );
1725
1725
  const NoContentType = React.lazy(
1726
- () => Promise.resolve().then(() => require("./NoContentTypePage-DzwJNXvn.js")).then((mod) => ({ default: mod.NoContentType }))
1726
+ () => Promise.resolve().then(() => require("./NoContentTypePage-m8wt3sf6.js")).then((mod) => ({ default: mod.NoContentType }))
1727
1727
  );
1728
1728
  const CollectionTypePages = () => {
1729
1729
  const { collectionType } = reactRouterDom.useParams();
@@ -2077,6 +2077,18 @@ const DocumentActionModal = ({
2077
2077
  typeof Footer === "function" ? /* @__PURE__ */ jsxRuntime.jsx(Footer, { onClose: handleClose }) : Footer
2078
2078
  ] }) });
2079
2079
  };
2080
+ const transformData = (data) => {
2081
+ if (Array.isArray(data)) {
2082
+ return data.map(transformData);
2083
+ }
2084
+ if (typeof data === "object" && data !== null) {
2085
+ if ("apiData" in data) {
2086
+ return data.apiData;
2087
+ }
2088
+ return mapValues__default.default(transformData)(data);
2089
+ }
2090
+ return data;
2091
+ };
2080
2092
  const PublishAction$1 = ({
2081
2093
  activeTab,
2082
2094
  documentId,
@@ -2190,7 +2202,7 @@ const PublishAction$1 = ({
2190
2202
  documentId,
2191
2203
  params
2192
2204
  },
2193
- formDocumentToData(formValues)
2205
+ transformData(formValues)
2194
2206
  );
2195
2207
  if ("data" in res && collectionType !== SINGLE_TYPES) {
2196
2208
  navigate({
@@ -2249,36 +2261,6 @@ const PublishAction$1 = ({
2249
2261
  };
2250
2262
  };
2251
2263
  PublishAction$1.type = "publish";
2252
- const formDocumentToData = (document) => {
2253
- return Object.keys(document).reduce((acc, key) => {
2254
- if (document[key] !== void 0) {
2255
- acc[key] = document[key];
2256
- }
2257
- if (typeof document[key] === "object" && document[key] !== null) {
2258
- if ("connect" in document[key] && document[key].connect !== null) {
2259
- acc[key] = {
2260
- ...acc[key],
2261
- connect: document[key].connect.map((item) => {
2262
- return {
2263
- documentId: item.documentId
2264
- };
2265
- })
2266
- };
2267
- }
2268
- if ("disconnect" in document[key] && document[key].disconnect !== null) {
2269
- acc[key] = {
2270
- ...acc[key],
2271
- disconnect: document[key].disconnect.map((item) => {
2272
- return {
2273
- documentId: item.documentId
2274
- };
2275
- })
2276
- };
2277
- }
2278
- }
2279
- return acc;
2280
- }, {});
2281
- };
2282
2264
  const UpdateAction = ({
2283
2265
  activeTab,
2284
2266
  documentId,
@@ -2336,7 +2318,7 @@ const UpdateAction = ({
2336
2318
  documentId: cloneMatch.params.origin,
2337
2319
  params
2338
2320
  },
2339
- formDocumentToData(document)
2321
+ transformData(document)
2340
2322
  );
2341
2323
  if ("data" in res) {
2342
2324
  navigate(
@@ -2357,7 +2339,7 @@ const UpdateAction = ({
2357
2339
  documentId,
2358
2340
  params
2359
2341
  },
2360
- formDocumentToData(document)
2342
+ transformData(document)
2361
2343
  );
2362
2344
  if ("error" in res && isBaseQueryError(res.error) && res.error.name === "ValidationError") {
2363
2345
  setErrors(formatValidationErrors(res.error));
@@ -2370,7 +2352,7 @@ const UpdateAction = ({
2370
2352
  model,
2371
2353
  params
2372
2354
  },
2373
- formDocumentToData(document)
2355
+ transformData(document)
2374
2356
  );
2375
2357
  if ("data" in res && collectionType !== SINGLE_TYPES) {
2376
2358
  navigate(
@@ -3058,7 +3040,7 @@ const Panel = React__namespace.forwardRef(({ children, title }, ref) => {
3058
3040
  justifyContent: "stretch",
3059
3041
  alignItems: "flex-start",
3060
3042
  children: [
3061
- /* @__PURE__ */ jsxRuntime.jsx(designSystem.Typography, { tag: "h2", variant: "sigma", textTransform: "uppercase", children: title }),
3043
+ /* @__PURE__ */ jsxRuntime.jsx(designSystem.Typography, { tag: "h2", variant: "sigma", textTransform: "uppercase", textColor: "neutral600", children: title }),
3062
3044
  children
3063
3045
  ]
3064
3046
  }
@@ -4041,6 +4023,97 @@ const { setInitialData } = actions;
4041
4023
  const reducer = toolkit.combineReducers({
4042
4024
  app: reducer$1
4043
4025
  });
4026
+ const previewApi = contentManagerApi.injectEndpoints({
4027
+ endpoints: (builder) => ({
4028
+ getPreviewUrl: builder.query({
4029
+ query({ query, params }) {
4030
+ return {
4031
+ url: `/content-manager/preview/url/${params.contentType}`,
4032
+ method: "GET",
4033
+ config: {
4034
+ params: query
4035
+ }
4036
+ };
4037
+ }
4038
+ })
4039
+ })
4040
+ });
4041
+ const { useGetPreviewUrlQuery } = previewApi;
4042
+ const PreviewSidePanel = ({ model, documentId, document }) => {
4043
+ const { formatMessage } = reactIntl.useIntl();
4044
+ const { toggleNotification } = strapiAdmin.useNotification();
4045
+ const { copy } = strapiAdmin.useClipboard();
4046
+ const { trackUsage } = strapiAdmin.useTracking();
4047
+ const { data, error } = useGetPreviewUrlQuery({
4048
+ params: {
4049
+ contentType: model
4050
+ },
4051
+ query: {
4052
+ documentId,
4053
+ locale: document?.locale,
4054
+ status: document?.status
4055
+ }
4056
+ });
4057
+ if (!data?.data?.url || error) {
4058
+ return null;
4059
+ }
4060
+ const { url } = data.data;
4061
+ const handleCopyLink = () => {
4062
+ copy(url);
4063
+ toggleNotification({
4064
+ message: formatMessage({
4065
+ id: "content-manager.preview.copy.success",
4066
+ defaultMessage: "Copied preview link"
4067
+ }),
4068
+ type: "success"
4069
+ });
4070
+ };
4071
+ const handleClick = () => {
4072
+ trackUsage("willOpenPreview");
4073
+ };
4074
+ return {
4075
+ title: formatMessage({ id: "content-manager.preview.panel.title", defaultMessage: "Preview" }),
4076
+ content: /* @__PURE__ */ jsxRuntime.jsxs(designSystem.Flex, { gap: 2, width: "100%", children: [
4077
+ /* @__PURE__ */ jsxRuntime.jsx(
4078
+ designSystem.Button,
4079
+ {
4080
+ variant: "tertiary",
4081
+ tag: reactRouterDom.Link,
4082
+ to: url,
4083
+ onClick: handleClick,
4084
+ target: "_blank",
4085
+ flex: "auto",
4086
+ children: formatMessage({
4087
+ id: "content-manager.preview.panel.button",
4088
+ defaultMessage: "Open preview"
4089
+ })
4090
+ }
4091
+ ),
4092
+ /* @__PURE__ */ jsxRuntime.jsx(
4093
+ designSystem.IconButton,
4094
+ {
4095
+ type: "button",
4096
+ label: formatMessage({
4097
+ id: "preview.copy.label",
4098
+ defaultMessage: "Copy preview link"
4099
+ }),
4100
+ onClick: handleCopyLink,
4101
+ children: /* @__PURE__ */ jsxRuntime.jsx(Icons.Link, {})
4102
+ }
4103
+ )
4104
+ ] })
4105
+ };
4106
+ };
4107
+ const FEATURE_ID = "preview";
4108
+ const previewAdmin = {
4109
+ bootstrap(app) {
4110
+ if (!window.strapi.future.isEnabled(FEATURE_ID)) {
4111
+ return;
4112
+ }
4113
+ const contentManagerPluginApis = app.getPlugin("content-manager").apis;
4114
+ contentManagerPluginApis.addEditViewSidePanel([PreviewSidePanel]);
4115
+ }
4116
+ };
4044
4117
  const index = {
4045
4118
  register(app) {
4046
4119
  const cm = new ContentManagerPlugin();
@@ -4060,7 +4133,7 @@ const index = {
4060
4133
  app.router.addRoute({
4061
4134
  path: "content-manager/*",
4062
4135
  lazy: async () => {
4063
- const { Layout } = await Promise.resolve().then(() => require("./layout-CrgXpOxT.js"));
4136
+ const { Layout } = await Promise.resolve().then(() => require("./layout-CmaemAO3.js"));
4064
4137
  return {
4065
4138
  Component: Layout
4066
4139
  };
@@ -4073,11 +4146,14 @@ const index = {
4073
4146
  if (typeof historyAdmin.bootstrap === "function") {
4074
4147
  historyAdmin.bootstrap(app);
4075
4148
  }
4149
+ if (typeof previewAdmin.bootstrap === "function") {
4150
+ previewAdmin.bootstrap(app);
4151
+ }
4076
4152
  },
4077
4153
  async registerTrads({ locales }) {
4078
4154
  const importedTrads = await Promise.all(
4079
4155
  locales.map((locale) => {
4080
- return __variableDynamicImportRuntimeHelper(/* @__PURE__ */ Object.assign({ "./translations/ar.json": () => Promise.resolve().then(() => require("./ar-BUUWXIYu.js")), "./translations/ca.json": () => Promise.resolve().then(() => require("./ca-Cmk45QO6.js")), "./translations/cs.json": () => Promise.resolve().then(() => require("./cs-CkJy6B2v.js")), "./translations/de.json": () => Promise.resolve().then(() => require("./de-CCEmbAah.js")), "./translations/en.json": () => Promise.resolve().then(() => require("./en-Bm0D0IWz.js")), "./translations/es.json": () => Promise.resolve().then(() => require("./es-EUonQTon.js")), "./translations/eu.json": () => Promise.resolve().then(() => require("./eu-VDH-3ovk.js")), "./translations/fr.json": () => Promise.resolve().then(() => require("./fr-B7kGGg3E.js")), "./translations/gu.json": () => Promise.resolve().then(() => require("./gu-BRmF601H.js")), "./translations/hi.json": () => Promise.resolve().then(() => require("./hi-CCJBptSq.js")), "./translations/hu.json": () => Promise.resolve().then(() => require("./hu-sNV_yLYy.js")), "./translations/id.json": () => Promise.resolve().then(() => require("./id-B5Ser98A.js")), "./translations/it.json": () => Promise.resolve().then(() => require("./it-DkBIs7vD.js")), "./translations/ja.json": () => Promise.resolve().then(() => require("./ja-CcFe8diO.js")), "./translations/ko.json": () => Promise.resolve().then(() => require("./ko-woFZPmLk.js")), "./translations/ml.json": () => Promise.resolve().then(() => require("./ml-C2W8N8k1.js")), "./translations/ms.json": () => Promise.resolve().then(() => require("./ms-BuFotyP_.js")), "./translations/nl.json": () => Promise.resolve().then(() => require("./nl-bbEOHChV.js")), "./translations/pl.json": () => Promise.resolve().then(() => require("./pl-uzwG-hk7.js")), "./translations/pt-BR.json": () => Promise.resolve().then(() => require("./pt-BR-BiOz37D9.js")), "./translations/pt.json": () => Promise.resolve().then(() => require("./pt-CeXQuq50.js")), "./translations/ru.json": () => Promise.resolve().then(() => require("./ru-BT3ybNny.js")), "./translations/sa.json": () => Promise.resolve().then(() => require("./sa-CcvkYInH.js")), "./translations/sk.json": () => Promise.resolve().then(() => require("./sk-CvY09Xjv.js")), "./translations/sv.json": () => Promise.resolve().then(() => require("./sv-MYDuzgvT.js")), "./translations/th.json": () => Promise.resolve().then(() => require("./th-D9_GfAjc.js")), "./translations/tr.json": () => Promise.resolve().then(() => require("./tr-D9UH-O_R.js")), "./translations/uk.json": () => Promise.resolve().then(() => require("./uk-C8EiqJY7.js")), "./translations/vi.json": () => Promise.resolve().then(() => require("./vi-CJlYDheJ.js")), "./translations/zh-Hans.json": () => Promise.resolve().then(() => require("./zh-Hans-9kOncHGw.js")), "./translations/zh.json": () => Promise.resolve().then(() => require("./zh-CQQfszqR.js")) }), `./translations/${locale}.json`).then(({ default: data }) => {
4156
+ return __variableDynamicImportRuntimeHelper(/* @__PURE__ */ Object.assign({ "./translations/ar.json": () => Promise.resolve().then(() => require("./ar-BUUWXIYu.js")), "./translations/ca.json": () => Promise.resolve().then(() => require("./ca-Cmk45QO6.js")), "./translations/cs.json": () => Promise.resolve().then(() => require("./cs-CkJy6B2v.js")), "./translations/de.json": () => Promise.resolve().then(() => require("./de-CCEmbAah.js")), "./translations/en.json": () => Promise.resolve().then(() => require("./en-Bdpa50w3.js")), "./translations/es.json": () => Promise.resolve().then(() => require("./es-9K52xZIr.js")), "./translations/eu.json": () => Promise.resolve().then(() => require("./eu-VDH-3ovk.js")), "./translations/fr.json": () => Promise.resolve().then(() => require("./fr-B2Kyv8Z9.js")), "./translations/gu.json": () => Promise.resolve().then(() => require("./gu-BRmF601H.js")), "./translations/hi.json": () => Promise.resolve().then(() => require("./hi-CCJBptSq.js")), "./translations/hu.json": () => Promise.resolve().then(() => require("./hu-sNV_yLYy.js")), "./translations/id.json": () => Promise.resolve().then(() => require("./id-B5Ser98A.js")), "./translations/it.json": () => Promise.resolve().then(() => require("./it-DkBIs7vD.js")), "./translations/ja.json": () => Promise.resolve().then(() => require("./ja-7sfIbjxE.js")), "./translations/ko.json": () => Promise.resolve().then(() => require("./ko-woFZPmLk.js")), "./translations/ml.json": () => Promise.resolve().then(() => require("./ml-C2W8N8k1.js")), "./translations/ms.json": () => Promise.resolve().then(() => require("./ms-BuFotyP_.js")), "./translations/nl.json": () => Promise.resolve().then(() => require("./nl-bbEOHChV.js")), "./translations/pl.json": () => Promise.resolve().then(() => require("./pl-uzwG-hk7.js")), "./translations/pt-BR.json": () => Promise.resolve().then(() => require("./pt-BR-BiOz37D9.js")), "./translations/pt.json": () => Promise.resolve().then(() => require("./pt-CeXQuq50.js")), "./translations/ru.json": () => Promise.resolve().then(() => require("./ru-BT3ybNny.js")), "./translations/sa.json": () => Promise.resolve().then(() => require("./sa-CcvkYInH.js")), "./translations/sk.json": () => Promise.resolve().then(() => require("./sk-CvY09Xjv.js")), "./translations/sv.json": () => Promise.resolve().then(() => require("./sv-MYDuzgvT.js")), "./translations/th.json": () => Promise.resolve().then(() => require("./th-D9_GfAjc.js")), "./translations/tr.json": () => Promise.resolve().then(() => require("./tr-D9UH-O_R.js")), "./translations/uk.json": () => Promise.resolve().then(() => require("./uk-C8EiqJY7.js")), "./translations/vi.json": () => Promise.resolve().then(() => require("./vi-CJlYDheJ.js")), "./translations/zh-Hans.json": () => Promise.resolve().then(() => require("./zh-Hans-9kOncHGw.js")), "./translations/zh.json": () => Promise.resolve().then(() => require("./zh-CQQfszqR.js")) }), `./translations/${locale}.json`).then(({ default: data }) => {
4081
4157
  return {
4082
4158
  data: prefixPluginTranslations(data, PLUGIN_ID),
4083
4159
  locale
@@ -4136,4 +4212,4 @@ exports.useGetAllDocumentsQuery = useGetAllDocumentsQuery;
4136
4212
  exports.useGetContentTypeConfigurationQuery = useGetContentTypeConfigurationQuery;
4137
4213
  exports.useGetInitialDataQuery = useGetInitialDataQuery;
4138
4214
  exports.useUpdateContentTypeConfigurationMutation = useUpdateContentTypeConfigurationMutation;
4139
- //# sourceMappingURL=index-DcA8_tJw.js.map
4215
+ //# sourceMappingURL=index-DqZnjo8F.js.map