@strapi/content-manager 0.0.0-next.c3eb27c3a05a30387b6b44e15d3661201d54787d → 0.0.0-next.c9f32f6f0c2be1b88323373117f12eb33219d20e

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 (94) hide show
  1. package/dist/_chunks/{ComponentConfigurationPage-UGIFDkPO.mjs → ComponentConfigurationPage-BaJMOQyq.mjs} +3 -3
  2. package/dist/_chunks/{ComponentConfigurationPage-UGIFDkPO.mjs.map → ComponentConfigurationPage-BaJMOQyq.mjs.map} +1 -1
  3. package/dist/_chunks/{ComponentConfigurationPage-Cr0ttPAZ.js → ComponentConfigurationPage-N-CTtgQa.js} +3 -3
  4. package/dist/_chunks/{ComponentConfigurationPage-Cr0ttPAZ.js.map → ComponentConfigurationPage-N-CTtgQa.js.map} +1 -1
  5. package/dist/_chunks/{EditConfigurationPage-Ds3BOL2z.js → EditConfigurationPage-BHkjAbxH.js} +3 -3
  6. package/dist/_chunks/{EditConfigurationPage-Ds3BOL2z.js.map → EditConfigurationPage-BHkjAbxH.js.map} +1 -1
  7. package/dist/_chunks/{EditConfigurationPage-7hF4_8yK.mjs → EditConfigurationPage-CKK-5LfX.mjs} +3 -3
  8. package/dist/_chunks/{EditConfigurationPage-7hF4_8yK.mjs.map → EditConfigurationPage-CKK-5LfX.mjs.map} +1 -1
  9. package/dist/_chunks/{EditViewPage-CA98g5_g.mjs → EditViewPage-B11aeMcf.mjs} +3 -3
  10. package/dist/_chunks/{EditViewPage-CA98g5_g.mjs.map → EditViewPage-B11aeMcf.mjs.map} +1 -1
  11. package/dist/_chunks/{EditViewPage-DoQm9llG.js → EditViewPage-QPUftxUd.js} +3 -3
  12. package/dist/_chunks/{EditViewPage-DoQm9llG.js.map → EditViewPage-QPUftxUd.js.map} +1 -1
  13. package/dist/_chunks/{Field-B2C1tq9_.mjs → Field-Bj_RgtGo.mjs} +20 -21
  14. package/dist/_chunks/Field-Bj_RgtGo.mjs.map +1 -0
  15. package/dist/_chunks/{Field-CQtLQzHl.js → Field-DUK83cfh.js} +19 -20
  16. package/dist/_chunks/Field-DUK83cfh.js.map +1 -0
  17. package/dist/_chunks/{Form-YQaS3_NH.js → Form-DHmBRlHd.js} +2 -2
  18. package/dist/_chunks/{Form-YQaS3_NH.js.map → Form-DHmBRlHd.js.map} +1 -1
  19. package/dist/_chunks/{Form-CxQ2pPjq.mjs → Form-DLMSoXV7.mjs} +2 -2
  20. package/dist/_chunks/{Form-CxQ2pPjq.mjs.map → Form-DLMSoXV7.mjs.map} +1 -1
  21. package/dist/_chunks/{History-DTYKr2Cg.mjs → History-CfCSNlG9.mjs} +9 -56
  22. package/dist/_chunks/History-CfCSNlG9.mjs.map +1 -0
  23. package/dist/_chunks/{History-DbdpigyF.js → History-Di3zm4HT.js} +8 -55
  24. package/dist/_chunks/History-Di3zm4HT.js.map +1 -0
  25. package/dist/_chunks/{ListConfigurationPage-DQG-j52q.mjs → ListConfigurationPage-0mtv_iqk.mjs} +5 -4
  26. package/dist/_chunks/ListConfigurationPage-0mtv_iqk.mjs.map +1 -0
  27. package/dist/_chunks/{ListConfigurationPage-DRGhXnUA.js → ListConfigurationPage-Cq361KIt.js} +4 -3
  28. package/dist/_chunks/ListConfigurationPage-Cq361KIt.js.map +1 -0
  29. package/dist/_chunks/{ListViewPage-DAekmnvp.mjs → ListViewPage-BxLVROX8.mjs} +50 -49
  30. package/dist/_chunks/ListViewPage-BxLVROX8.mjs.map +1 -0
  31. package/dist/_chunks/{ListViewPage-CVIEfYWN.js → ListViewPage-DFDcG8gM.js} +50 -49
  32. package/dist/_chunks/ListViewPage-DFDcG8gM.js.map +1 -0
  33. package/dist/_chunks/{NoContentTypePage-5kwUPeFg.mjs → NoContentTypePage-BRfDd67_.mjs} +2 -2
  34. package/dist/_chunks/{NoContentTypePage-5kwUPeFg.mjs.map → NoContentTypePage-BRfDd67_.mjs.map} +1 -1
  35. package/dist/_chunks/{NoContentTypePage-CTcfA2-Q.js → NoContentTypePage-BSyvnDZZ.js} +2 -2
  36. package/dist/_chunks/{NoContentTypePage-CTcfA2-Q.js.map → NoContentTypePage-BSyvnDZZ.js.map} +1 -1
  37. package/dist/_chunks/{NoPermissionsPage-d-JtEVAw.mjs → NoPermissionsPage-CV9V8KWa.mjs} +2 -2
  38. package/dist/_chunks/{NoPermissionsPage-d-JtEVAw.mjs.map → NoPermissionsPage-CV9V8KWa.mjs.map} +1 -1
  39. package/dist/_chunks/{NoPermissionsPage-pVeCVj9a.js → NoPermissionsPage-DyLphsn_.js} +2 -2
  40. package/dist/_chunks/{NoPermissionsPage-pVeCVj9a.js.map → NoPermissionsPage-DyLphsn_.js.map} +1 -1
  41. package/dist/_chunks/{Preview-gkmvcwhu.mjs → Preview-C_B1nx3g.mjs} +67 -83
  42. package/dist/_chunks/Preview-C_B1nx3g.mjs.map +1 -0
  43. package/dist/_chunks/{Preview-COsm52rZ.js → Preview-D_3aO6Ly.js} +64 -80
  44. package/dist/_chunks/Preview-D_3aO6Ly.js.map +1 -0
  45. package/dist/_chunks/{Relations-7ItTFWp7.mjs → Relations-C6pwmDXh.mjs} +3 -3
  46. package/dist/_chunks/{Relations-7ItTFWp7.mjs.map → Relations-C6pwmDXh.mjs.map} +1 -1
  47. package/dist/_chunks/{Relations-Beo_uDz1.js → Relations-Cne2AlrL.js} +3 -3
  48. package/dist/_chunks/{Relations-Beo_uDz1.js.map → Relations-Cne2AlrL.js.map} +1 -1
  49. package/dist/_chunks/{en-D_BMf0hT.mjs → en-DhFUjrNW.mjs} +5 -3
  50. package/dist/_chunks/{en-D_BMf0hT.mjs.map → en-DhFUjrNW.mjs.map} +1 -1
  51. package/dist/_chunks/{en-CHOp_xJv.js → en-Ic0kXjxB.js} +5 -3
  52. package/dist/_chunks/{en-CHOp_xJv.js.map → en-Ic0kXjxB.js.map} +1 -1
  53. package/dist/_chunks/{index-D3IiO0X8.mjs → index-BpxR3En4.mjs} +62 -45
  54. package/dist/_chunks/index-BpxR3En4.mjs.map +1 -0
  55. package/dist/_chunks/{index-CJX65DLa.js → index-T-aWjbj2.js} +61 -44
  56. package/dist/_chunks/index-T-aWjbj2.js.map +1 -0
  57. package/dist/_chunks/{layout-9fI2_QJt.js → layout-BEuNwv-F.js} +3 -3
  58. package/dist/_chunks/{layout-9fI2_QJt.js.map → layout-BEuNwv-F.js.map} +1 -1
  59. package/dist/_chunks/{layout-OhrmoJVB.mjs → layout-DhMZ_lDx.mjs} +3 -3
  60. package/dist/_chunks/{layout-OhrmoJVB.mjs.map → layout-DhMZ_lDx.mjs.map} +1 -1
  61. package/dist/_chunks/{relations-sRERvWmr.mjs → relations-BdnxoX6f.mjs} +2 -2
  62. package/dist/_chunks/{relations-sRERvWmr.mjs.map → relations-BdnxoX6f.mjs.map} +1 -1
  63. package/dist/_chunks/{relations-DIT8sP52.js → relations-kLcuobLk.js} +2 -2
  64. package/dist/_chunks/{relations-DIT8sP52.js.map → relations-kLcuobLk.js.map} +1 -1
  65. package/dist/admin/index.js +1 -1
  66. package/dist/admin/index.mjs +1 -1
  67. package/dist/admin/src/pages/EditView/components/DocumentStatus.d.ts +2 -2
  68. package/dist/admin/src/services/documents.d.ts +0 -3
  69. package/dist/server/index.js +56 -9
  70. package/dist/server/index.js.map +1 -1
  71. package/dist/server/index.mjs +57 -10
  72. package/dist/server/index.mjs.map +1 -1
  73. package/dist/server/src/preview/controllers/validation/preview.d.ts.map +1 -1
  74. package/dist/server/src/preview/index.d.ts.map +1 -1
  75. package/dist/server/src/preview/services/index.d.ts +1 -0
  76. package/dist/server/src/preview/services/index.d.ts.map +1 -1
  77. package/dist/server/src/preview/services/preview-config.d.ts +2 -0
  78. package/dist/server/src/preview/services/preview-config.d.ts.map +1 -1
  79. package/dist/server/src/preview/utils.d.ts +1 -0
  80. package/dist/server/src/preview/utils.d.ts.map +1 -1
  81. package/dist/server/src/register.d.ts.map +1 -1
  82. package/package.json +9 -9
  83. package/dist/_chunks/Field-B2C1tq9_.mjs.map +0 -1
  84. package/dist/_chunks/Field-CQtLQzHl.js.map +0 -1
  85. package/dist/_chunks/History-DTYKr2Cg.mjs.map +0 -1
  86. package/dist/_chunks/History-DbdpigyF.js.map +0 -1
  87. package/dist/_chunks/ListConfigurationPage-DQG-j52q.mjs.map +0 -1
  88. package/dist/_chunks/ListConfigurationPage-DRGhXnUA.js.map +0 -1
  89. package/dist/_chunks/ListViewPage-CVIEfYWN.js.map +0 -1
  90. package/dist/_chunks/ListViewPage-DAekmnvp.mjs.map +0 -1
  91. package/dist/_chunks/Preview-COsm52rZ.js.map +0 -1
  92. package/dist/_chunks/Preview-gkmvcwhu.mjs.map +0 -1
  93. package/dist/_chunks/index-CJX65DLa.js.map +0 -1
  94. package/dist/_chunks/index-D3IiO0X8.mjs.map +0 -1
@@ -7,11 +7,11 @@ const designSystem = require("@strapi/design-system");
7
7
  const mapValues = require("lodash/fp/mapValues");
8
8
  const reactIntl = require("react-intl");
9
9
  const reactRouterDom = require("react-router-dom");
10
+ const styledComponents = require("styled-components");
10
11
  const yup = require("yup");
12
+ const qs = require("qs");
11
13
  const pipe = require("lodash/fp/pipe");
12
14
  const dateFns = require("date-fns");
13
- const styledComponents = require("styled-components");
14
- const qs = require("qs");
15
15
  const toolkit = require("@reduxjs/toolkit");
16
16
  const _interopDefault = (e) => e && e.__esModule ? e : { default: e };
17
17
  function _interopNamespace(e) {
@@ -296,7 +296,7 @@ const documentApi = contentManagerApi.injectEndpoints({
296
296
  url: `/content-manager/collection-types/${model}`,
297
297
  method: "GET",
298
298
  config: {
299
- params
299
+ params: qs.stringify(params, { encode: true })
300
300
  }
301
301
  }),
302
302
  providesTags: (result, _error, arg) => {
@@ -484,9 +484,6 @@ const buildValidParams = (query) => {
484
484
  {}
485
485
  )
486
486
  };
487
- if ("_q" in validQueryParams) {
488
- validQueryParams._q = encodeURIComponent(validQueryParams._q);
489
- }
490
487
  return validQueryParams;
491
488
  };
492
489
  const isBaseQueryError = (error) => {
@@ -1686,7 +1683,7 @@ const useDocumentActions = () => {
1686
1683
  };
1687
1684
  };
1688
1685
  const ProtectedHistoryPage = React__namespace.lazy(
1689
- () => Promise.resolve().then(() => require("./History-DbdpigyF.js")).then((mod) => ({ default: mod.ProtectedHistoryPage }))
1686
+ () => Promise.resolve().then(() => require("./History-Di3zm4HT.js")).then((mod) => ({ default: mod.ProtectedHistoryPage }))
1690
1687
  );
1691
1688
  const routes$2 = [
1692
1689
  {
@@ -1699,7 +1696,7 @@ const routes$2 = [
1699
1696
  }
1700
1697
  ];
1701
1698
  const ProtectedPreviewPage = React__namespace.lazy(
1702
- () => Promise.resolve().then(() => require("./Preview-COsm52rZ.js")).then((mod) => ({ default: mod.ProtectedPreviewPage }))
1699
+ () => Promise.resolve().then(() => require("./Preview-D_3aO6Ly.js")).then((mod) => ({ default: mod.ProtectedPreviewPage }))
1703
1700
  );
1704
1701
  const routes$1 = [
1705
1702
  {
@@ -1712,31 +1709,31 @@ const routes$1 = [
1712
1709
  }
1713
1710
  ];
1714
1711
  const ProtectedEditViewPage = React.lazy(
1715
- () => Promise.resolve().then(() => require("./EditViewPage-DoQm9llG.js")).then((mod) => ({ default: mod.ProtectedEditViewPage }))
1712
+ () => Promise.resolve().then(() => require("./EditViewPage-QPUftxUd.js")).then((mod) => ({ default: mod.ProtectedEditViewPage }))
1716
1713
  );
1717
1714
  const ProtectedListViewPage = React.lazy(
1718
- () => Promise.resolve().then(() => require("./ListViewPage-CVIEfYWN.js")).then((mod) => ({ default: mod.ProtectedListViewPage }))
1715
+ () => Promise.resolve().then(() => require("./ListViewPage-DFDcG8gM.js")).then((mod) => ({ default: mod.ProtectedListViewPage }))
1719
1716
  );
1720
1717
  const ProtectedListConfiguration = React.lazy(
1721
- () => Promise.resolve().then(() => require("./ListConfigurationPage-DRGhXnUA.js")).then((mod) => ({
1718
+ () => Promise.resolve().then(() => require("./ListConfigurationPage-Cq361KIt.js")).then((mod) => ({
1722
1719
  default: mod.ProtectedListConfiguration
1723
1720
  }))
1724
1721
  );
1725
1722
  const ProtectedEditConfigurationPage = React.lazy(
1726
- () => Promise.resolve().then(() => require("./EditConfigurationPage-Ds3BOL2z.js")).then((mod) => ({
1723
+ () => Promise.resolve().then(() => require("./EditConfigurationPage-BHkjAbxH.js")).then((mod) => ({
1727
1724
  default: mod.ProtectedEditConfigurationPage
1728
1725
  }))
1729
1726
  );
1730
1727
  const ProtectedComponentConfigurationPage = React.lazy(
1731
- () => Promise.resolve().then(() => require("./ComponentConfigurationPage-Cr0ttPAZ.js")).then((mod) => ({
1728
+ () => Promise.resolve().then(() => require("./ComponentConfigurationPage-N-CTtgQa.js")).then((mod) => ({
1732
1729
  default: mod.ProtectedComponentConfigurationPage
1733
1730
  }))
1734
1731
  );
1735
1732
  const NoPermissions = React.lazy(
1736
- () => Promise.resolve().then(() => require("./NoPermissionsPage-pVeCVj9a.js")).then((mod) => ({ default: mod.NoPermissions }))
1733
+ () => Promise.resolve().then(() => require("./NoPermissionsPage-DyLphsn_.js")).then((mod) => ({ default: mod.NoPermissions }))
1737
1734
  );
1738
1735
  const NoContentType = React.lazy(
1739
- () => Promise.resolve().then(() => require("./NoContentTypePage-CTcfA2-Q.js")).then((mod) => ({ default: mod.NoContentType }))
1736
+ () => Promise.resolve().then(() => require("./NoContentTypePage-BSyvnDZZ.js")).then((mod) => ({ default: mod.NoContentType }))
1740
1737
  );
1741
1738
  const CollectionTypePages = () => {
1742
1739
  const { collectionType } = reactRouterDom.useParams();
@@ -1881,6 +1878,11 @@ const DocumentActionButton = (action) => {
1881
1878
  ) : null
1882
1879
  ] });
1883
1880
  };
1881
+ const MenuItem = styledComponents.styled(designSystem.Menu.Item)`
1882
+ &:hover {
1883
+ background: ${({ theme, isVariantDanger, isDisabled }) => isVariantDanger && !isDisabled ? theme.colors.danger100 : "neutral"};
1884
+ }
1885
+ `;
1884
1886
  const DocumentActionsMenu = ({
1885
1887
  actions: actions2,
1886
1888
  children,
@@ -1939,11 +1941,13 @@ const DocumentActionsMenu = ({
1939
1941
  /* @__PURE__ */ jsxRuntime.jsxs(designSystem.Menu.Content, { maxHeight: void 0, popoverPlacement: "bottom-end", children: [
1940
1942
  actions2.map((action) => {
1941
1943
  return /* @__PURE__ */ jsxRuntime.jsx(
1942
- designSystem.Menu.Item,
1944
+ MenuItem,
1943
1945
  {
1944
1946
  disabled: action.disabled,
1945
1947
  onSelect: handleClick(action),
1946
1948
  display: "block",
1949
+ isVariantDanger: action.variant === "danger",
1950
+ isDisabled: action.disabled,
1947
1951
  children: /* @__PURE__ */ jsxRuntime.jsx(designSystem.Flex, { justifyContent: "space-between", gap: 4, children: /* @__PURE__ */ jsxRuntime.jsxs(
1948
1952
  designSystem.Flex,
1949
1953
  {
@@ -2099,6 +2103,7 @@ const PublishAction$1 = ({
2099
2103
  const { _unstableFormatValidationErrors: formatValidationErrors } = strapiAdmin.useAPIErrorHandler();
2100
2104
  const isListView = reactRouterDom.useMatch(LIST_PATH) !== null;
2101
2105
  const isCloning = reactRouterDom.useMatch(CLONE_PATH) !== null;
2106
+ const { id } = reactRouterDom.useParams();
2102
2107
  const { formatMessage } = reactIntl.useIntl();
2103
2108
  const canPublish = useDocumentRBAC("PublishAction", ({ canPublish: canPublish2 }) => canPublish2);
2104
2109
  const { publish } = useDocumentActions();
@@ -2201,10 +2206,12 @@ const PublishAction$1 = ({
2201
2206
  transformData(formValues)
2202
2207
  );
2203
2208
  if ("data" in res && collectionType !== SINGLE_TYPES) {
2204
- navigate({
2205
- pathname: `../${collectionType}/${model}/${res.data.documentId}`,
2206
- search: rawQuery
2207
- });
2209
+ if (id === "create") {
2210
+ navigate({
2211
+ pathname: `../${collectionType}/${model}/${res.data.documentId}`,
2212
+ search: rawQuery
2213
+ });
2214
+ }
2208
2215
  } else if ("error" in res && isBaseQueryError(res.error) && res.error.name === "ValidationError") {
2209
2216
  setErrors(formatValidationErrors(res.error));
2210
2217
  }
@@ -2288,7 +2295,7 @@ const UpdateAction = ({
2288
2295
  */
2289
2296
  disabled: isSubmitting || !modified && !isCloning || activeTab === "published",
2290
2297
  label: formatMessage({
2291
- id: "content-manager.containers.Edit.save",
2298
+ id: "global.save",
2292
2299
  defaultMessage: "Save"
2293
2300
  }),
2294
2301
  onClick: async () => {
@@ -2553,7 +2560,7 @@ const RelativeTime = React__namespace.forwardRef(
2553
2560
  });
2554
2561
  const unit = intervals.find((intervalUnit) => {
2555
2562
  return interval[intervalUnit] > 0 && Object.keys(interval).includes(intervalUnit);
2556
- });
2563
+ }) ?? "seconds";
2557
2564
  const relativeTime = dateFns.isPast(timestamp) ? -interval[unit] : interval[unit];
2558
2565
  const customInterval = customIntervals.find(
2559
2566
  (custom) => interval[custom.unit] < custom.threshold
@@ -2587,10 +2594,10 @@ const getDisplayName = ({
2587
2594
  return email ?? "";
2588
2595
  };
2589
2596
  const capitalise = (str) => str.charAt(0).toUpperCase() + str.slice(1);
2590
- const DocumentStatus = ({ status = "draft", ...restProps }) => {
2597
+ const DocumentStatus = ({ status = "draft", size = "S", ...restProps }) => {
2591
2598
  const statusVariant = status === "draft" ? "secondary" : status === "published" ? "success" : "alternative";
2592
2599
  const { formatMessage } = reactIntl.useIntl();
2593
- return /* @__PURE__ */ jsxRuntime.jsx(designSystem.Status, { ...restProps, size: "S", variant: statusVariant, children: /* @__PURE__ */ jsxRuntime.jsx(designSystem.Typography, { tag: "span", variant: "omega", fontWeight: "bold", children: formatMessage({
2600
+ return /* @__PURE__ */ jsxRuntime.jsx(designSystem.Status, { ...restProps, size, variant: statusVariant, children: /* @__PURE__ */ jsxRuntime.jsx(designSystem.Typography, { tag: "span", variant: "omega", fontWeight: "bold", children: formatMessage({
2594
2601
  id: `content-manager.containers.List.${status}`,
2595
2602
  defaultMessage: capitalise(status)
2596
2603
  }) }) });
@@ -2598,12 +2605,18 @@ const DocumentStatus = ({ status = "draft", ...restProps }) => {
2598
2605
  const Header = ({ isCreating, status, title: documentTitle = "Untitled" }) => {
2599
2606
  const { formatMessage } = reactIntl.useIntl();
2600
2607
  const isCloning = reactRouterDom.useMatch(CLONE_PATH) !== null;
2608
+ const params = reactRouterDom.useParams();
2601
2609
  const title = isCreating ? formatMessage({
2602
2610
  id: "content-manager.containers.edit.title.new",
2603
2611
  defaultMessage: "Create an entry"
2604
2612
  }) : documentTitle;
2605
2613
  return /* @__PURE__ */ jsxRuntime.jsxs(designSystem.Flex, { direction: "column", alignItems: "flex-start", paddingTop: 6, paddingBottom: 4, gap: 2, children: [
2606
- /* @__PURE__ */ jsxRuntime.jsx(strapiAdmin.BackButton, {}),
2614
+ /* @__PURE__ */ jsxRuntime.jsx(
2615
+ strapiAdmin.BackButton,
2616
+ {
2617
+ fallback: params.collectionType === SINGLE_TYPES ? void 0 : `../${COLLECTION_TYPES}/${params.slug}`
2618
+ }
2619
+ ),
2607
2620
  /* @__PURE__ */ jsxRuntime.jsxs(designSystem.Flex, { width: "100%", justifyContent: "space-between", gap: "80px", alignItems: "flex-start", children: [
2608
2621
  /* @__PURE__ */ jsxRuntime.jsx(designSystem.Typography, { variant: "alpha", tag: "h1", children: title }),
2609
2622
  /* @__PURE__ */ jsxRuntime.jsx(HeaderToolbar, {})
@@ -3290,18 +3303,10 @@ const SelectedEntriesTableContent = ({
3290
3303
  search: row.locale && `?plugins[i18n][locale]=${row.locale}`
3291
3304
  },
3292
3305
  state: { from: pathname },
3293
- label: formatMessage(
3294
- { id: "app.component.HelperPluginTable.edit", defaultMessage: "Edit {target}" },
3295
- {
3296
- target: formatMessage(
3297
- {
3298
- id: "content-manager.components.ListViewHelperPluginTable.row-line",
3299
- defaultMessage: "item line {number}"
3300
- },
3301
- { number: index2 + 1 }
3302
- )
3303
- }
3304
- ),
3306
+ label: formatMessage({
3307
+ id: "content-manager.bulk-publish.edit",
3308
+ defaultMessage: "Edit"
3309
+ }),
3305
3310
  target: "_blank",
3306
3311
  marginLeft: "auto",
3307
3312
  variant: "ghost",
@@ -3945,17 +3950,27 @@ const HistoryAction = ({ model, document }) => {
3945
3950
  const { formatMessage } = reactIntl.useIntl();
3946
3951
  const [{ query }] = strapiAdmin.useQueryParams();
3947
3952
  const navigate = reactRouterDom.useNavigate();
3953
+ const { trackUsage } = strapiAdmin.useTracking();
3954
+ const { pathname } = reactRouterDom.useLocation();
3948
3955
  const pluginsQueryParams = qs.stringify({ plugins: query.plugins }, { encode: false });
3949
3956
  if (!window.strapi.features.isEnabled("cms-content-history")) {
3950
3957
  return null;
3951
3958
  }
3959
+ const handleOnClick = () => {
3960
+ const destination = { pathname: "history", search: pluginsQueryParams };
3961
+ trackUsage("willNavigate", {
3962
+ from: pathname,
3963
+ to: `${pathname}/${destination.pathname}`
3964
+ });
3965
+ navigate(destination);
3966
+ };
3952
3967
  return {
3953
3968
  icon: /* @__PURE__ */ jsxRuntime.jsx(Icons.ClockCounterClockwise, {}),
3954
3969
  label: formatMessage({
3955
3970
  id: "content-manager.history.document-action",
3956
3971
  defaultMessage: "Content History"
3957
3972
  }),
3958
- onClick: () => navigate({ pathname: "history", search: pluginsQueryParams }),
3973
+ onClick: handleOnClick,
3959
3974
  disabled: (
3960
3975
  /**
3961
3976
  * The user is creating a new document.
@@ -4042,6 +4057,7 @@ const { useGetPreviewUrlQuery } = previewApi;
4042
4057
  const PreviewSidePanel = ({ model, documentId, document }) => {
4043
4058
  const { formatMessage } = reactIntl.useIntl();
4044
4059
  const { trackUsage } = strapiAdmin.useTracking();
4060
+ const { pathname } = reactRouterDom.useLocation();
4045
4061
  const [{ query }] = strapiAdmin.useQueryParams();
4046
4062
  const { data, error } = useGetPreviewUrlQuery({
4047
4063
  params: {
@@ -4056,8 +4072,9 @@ const PreviewSidePanel = ({ model, documentId, document }) => {
4056
4072
  if (!data?.data?.url || error) {
4057
4073
  return null;
4058
4074
  }
4059
- const handleClick = () => {
4060
- trackUsage("willOpenPreview");
4075
+ const trackNavigation = () => {
4076
+ const destinationPathname = pathname.replace(/\/$/, "") + "/preview";
4077
+ trackUsage("willNavigate", { from: pathname, to: destinationPathname });
4061
4078
  };
4062
4079
  return {
4063
4080
  title: formatMessage({ id: "content-manager.preview.panel.title", defaultMessage: "Preview" }),
@@ -4067,7 +4084,7 @@ const PreviewSidePanel = ({ model, documentId, document }) => {
4067
4084
  variant: "tertiary",
4068
4085
  tag: reactRouterDom.Link,
4069
4086
  to: { pathname: "preview", search: qs.stringify(query, { encode: false }) },
4070
- onClick: handleClick,
4087
+ onClick: trackNavigation,
4071
4088
  flex: "auto",
4072
4089
  children: formatMessage({
4073
4090
  id: "content-manager.preview.panel.button",
@@ -4106,7 +4123,7 @@ const index = {
4106
4123
  app.router.addRoute({
4107
4124
  path: "content-manager/*",
4108
4125
  lazy: async () => {
4109
- const { Layout } = await Promise.resolve().then(() => require("./layout-9fI2_QJt.js"));
4126
+ const { Layout } = await Promise.resolve().then(() => require("./layout-BEuNwv-F.js"));
4110
4127
  return {
4111
4128
  Component: Layout
4112
4129
  };
@@ -4126,7 +4143,7 @@ const index = {
4126
4143
  async registerTrads({ locales }) {
4127
4144
  const importedTrads = await Promise.all(
4128
4145
  locales.map((locale) => {
4129
- 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-CHOp_xJv.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 }) => {
4146
+ 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-Ic0kXjxB.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 }) => {
4130
4147
  return {
4131
4148
  data: prefixPluginTranslations(data, PLUGIN_ID),
4132
4149
  locale
@@ -4186,4 +4203,4 @@ exports.useGetContentTypeConfigurationQuery = useGetContentTypeConfigurationQuer
4186
4203
  exports.useGetInitialDataQuery = useGetInitialDataQuery;
4187
4204
  exports.useGetPreviewUrlQuery = useGetPreviewUrlQuery;
4188
4205
  exports.useUpdateContentTypeConfigurationMutation = useUpdateContentTypeConfigurationMutation;
4189
- //# sourceMappingURL=index-CJX65DLa.js.map
4206
+ //# sourceMappingURL=index-T-aWjbj2.js.map