@strapi/content-manager 0.0.0-next.ce84fada19d58a7dfbdd553035e6558f8befcba4 → 0.0.0-next.d65d44102fd32871728c0d74ec4f2519b7cc0a16
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.
- package/dist/_chunks/{ComponentConfigurationPage-DfFSZQxe.mjs → ComponentConfigurationPage-DhWA-JzT.mjs} +4 -4
- package/dist/_chunks/{ComponentConfigurationPage-DfFSZQxe.mjs.map → ComponentConfigurationPage-DhWA-JzT.mjs.map} +1 -1
- package/dist/_chunks/{ComponentConfigurationPage-FqfsxQ1j.js → ComponentConfigurationPage-UduDBv3m.js} +4 -4
- package/dist/_chunks/{ComponentConfigurationPage-FqfsxQ1j.js.map → ComponentConfigurationPage-UduDBv3m.js.map} +1 -1
- package/dist/_chunks/{EditConfigurationPage-DdPNAbl3.mjs → EditConfigurationPage-5tmx_7Hp.mjs} +4 -4
- package/dist/_chunks/{EditConfigurationPage-DdPNAbl3.mjs.map → EditConfigurationPage-5tmx_7Hp.mjs.map} +1 -1
- package/dist/_chunks/{EditConfigurationPage-Cn0e8t3I.js → EditConfigurationPage-Cp9UzUfs.js} +4 -4
- package/dist/_chunks/{EditConfigurationPage-Cn0e8t3I.js.map → EditConfigurationPage-Cp9UzUfs.js.map} +1 -1
- package/dist/_chunks/{EditViewPage-B82x_x1b.mjs → EditViewPage-BKoISUOu.mjs} +38 -8
- package/dist/_chunks/EditViewPage-BKoISUOu.mjs.map +1 -0
- package/dist/_chunks/{EditViewPage-DlxEHhUt.js → EditViewPage-C7l2Emuj.js} +37 -7
- package/dist/_chunks/EditViewPage-C7l2Emuj.js.map +1 -0
- package/dist/_chunks/{Field-COL25JiC.js → Field-BPSJpDfE.js} +43 -24
- package/dist/_chunks/Field-BPSJpDfE.js.map +1 -0
- package/dist/_chunks/{Field-DufHXW17.mjs → Field-BZxzYf1x.mjs} +44 -25
- package/dist/_chunks/Field-BZxzYf1x.mjs.map +1 -0
- package/dist/_chunks/{Form-u_kAOhwB.mjs → Form-8qyOU6YG.mjs} +2 -2
- package/dist/_chunks/{Form-u_kAOhwB.mjs.map → Form-8qyOU6YG.mjs.map} +1 -1
- package/dist/_chunks/{Form-BssUwrTO.js → Form-DLkqDd2G.js} +2 -2
- package/dist/_chunks/{Form-BssUwrTO.js.map → Form-DLkqDd2G.js.map} +1 -1
- package/dist/_chunks/{History-C9t9UqpO.js → History-DYMicybF.js} +22 -92
- package/dist/_chunks/History-DYMicybF.js.map +1 -0
- package/dist/_chunks/{History-DRwA3oMM.mjs → History-N_kRb1Yr.mjs} +23 -93
- package/dist/_chunks/History-N_kRb1Yr.mjs.map +1 -0
- package/dist/_chunks/{ListConfigurationPage-BxfQJzPk.mjs → ListConfigurationPage-BM3qVxug.mjs} +6 -5
- package/dist/_chunks/ListConfigurationPage-BM3qVxug.mjs.map +1 -0
- package/dist/_chunks/{ListConfigurationPage-BXYPohh-.js → ListConfigurationPage-rUF9iGWq.js} +5 -4
- package/dist/_chunks/ListConfigurationPage-rUF9iGWq.js.map +1 -0
- package/dist/_chunks/{ListViewPage-D2VD8Szg.js → ListViewPage-BSLzd7cZ.js} +62 -39
- package/dist/_chunks/ListViewPage-BSLzd7cZ.js.map +1 -0
- package/dist/_chunks/{ListViewPage-CELx2ysp.mjs → ListViewPage-CWilGbZb.mjs} +62 -39
- package/dist/_chunks/ListViewPage-CWilGbZb.mjs.map +1 -0
- package/dist/_chunks/{NoContentTypePage-BV9IjJSM.js → NoContentTypePage-CQccVhIX.js} +2 -2
- package/dist/_chunks/{NoContentTypePage-BV9IjJSM.js.map → NoContentTypePage-CQccVhIX.js.map} +1 -1
- package/dist/_chunks/{NoContentTypePage-DtJ9jcfk.mjs → NoContentTypePage-VWYlePwI.mjs} +2 -2
- package/dist/_chunks/{NoContentTypePage-DtJ9jcfk.mjs.map → NoContentTypePage-VWYlePwI.mjs.map} +1 -1
- package/dist/_chunks/{NoPermissionsPage-Dp8NpF9I.js → NoPermissionsPage-Af32Gg2m.js} +2 -2
- package/dist/_chunks/{NoPermissionsPage-Dp8NpF9I.js.map → NoPermissionsPage-Af32Gg2m.js.map} +1 -1
- package/dist/_chunks/{NoPermissionsPage-DWleVYK7.mjs → NoPermissionsPage-CS2tCmfr.mjs} +2 -2
- package/dist/_chunks/{NoPermissionsPage-DWleVYK7.mjs.map → NoPermissionsPage-CS2tCmfr.mjs.map} +1 -1
- package/dist/_chunks/Preview-D4KzuJFL.js +291 -0
- package/dist/_chunks/Preview-D4KzuJFL.js.map +1 -0
- package/dist/_chunks/Preview-kPkuZbBJ.mjs +272 -0
- package/dist/_chunks/Preview-kPkuZbBJ.mjs.map +1 -0
- package/dist/_chunks/{Relations-BTcf5xaw.mjs → Relations-5k27Rh54.mjs} +44 -17
- package/dist/_chunks/Relations-5k27Rh54.mjs.map +1 -0
- package/dist/_chunks/{Relations-DR7EUgyC.js → Relations-D_Ki5aVM.js} +43 -16
- package/dist/_chunks/Relations-D_Ki5aVM.js.map +1 -0
- package/dist/_chunks/{en-Bm0D0IWz.js → en-BK8Xyl5I.js} +16 -4
- package/dist/_chunks/{en-Bm0D0IWz.js.map → en-BK8Xyl5I.js.map} +1 -1
- package/dist/_chunks/{en-DKV44jRb.mjs → en-Dtk_ot79.mjs} +16 -4
- package/dist/_chunks/{en-DKV44jRb.mjs.map → en-Dtk_ot79.mjs.map} +1 -1
- package/dist/_chunks/{es-EUonQTon.js → es-9K52xZIr.js} +2 -2
- package/dist/_chunks/{ja-CcFe8diO.js.map → es-9K52xZIr.js.map} +1 -1
- package/dist/_chunks/{es-CeXiYflN.mjs → es-D34tqjMw.mjs} +2 -2
- package/dist/_chunks/{es-CeXiYflN.mjs.map → es-D34tqjMw.mjs.map} +1 -1
- package/dist/_chunks/{fr-CD9VFbPM.mjs → fr--pg5jUbt.mjs} +13 -3
- package/dist/_chunks/{fr-CD9VFbPM.mjs.map → fr--pg5jUbt.mjs.map} +1 -1
- package/dist/_chunks/{fr-B7kGGg3E.js → fr-B2Kyv8Z9.js} +13 -3
- package/dist/_chunks/{fr-B7kGGg3E.js.map → fr-B2Kyv8Z9.js.map} +1 -1
- package/dist/_chunks/{index-wnqzm4Q8.mjs → index-BLPa8Dq-.mjs} +208 -94
- package/dist/_chunks/index-BLPa8Dq-.mjs.map +1 -0
- package/dist/_chunks/{index-BdMf2lfT.js → index-DwOsF7wF.js} +205 -90
- package/dist/_chunks/index-DwOsF7wF.js.map +1 -0
- package/dist/_chunks/{ja-CcFe8diO.js → ja-7sfIbjxE.js} +2 -2
- package/dist/_chunks/{es-EUonQTon.js.map → ja-7sfIbjxE.js.map} +1 -1
- package/dist/_chunks/{ja-CtsUxOvk.mjs → ja-BHqhDq4V.mjs} +2 -2
- package/dist/_chunks/{ja-CtsUxOvk.mjs.map → ja-BHqhDq4V.mjs.map} +1 -1
- package/dist/_chunks/{layout-2CfjL0T9.mjs → layout-2Si0j0jO.mjs} +3 -3
- package/dist/_chunks/{layout-2CfjL0T9.mjs.map → layout-2Si0j0jO.mjs.map} +1 -1
- package/dist/_chunks/{layout-B2MyZU-_.js → layout-CN2bFL9V.js} +3 -3
- package/dist/_chunks/{layout-B2MyZU-_.js.map → layout-CN2bFL9V.js.map} +1 -1
- package/dist/_chunks/{objects-gigeqt7s.js → objects-BcXOv6_9.js} +2 -4
- package/dist/_chunks/{objects-gigeqt7s.js.map → objects-BcXOv6_9.js.map} +1 -1
- package/dist/_chunks/{objects-mKMAmfec.mjs → objects-D6yBsdmx.mjs} +2 -4
- package/dist/_chunks/{objects-mKMAmfec.mjs.map → objects-D6yBsdmx.mjs.map} +1 -1
- package/dist/_chunks/{relations-BH7JJGGe.js → relations-B0E0XUY7.js} +6 -7
- package/dist/_chunks/relations-B0E0XUY7.js.map +1 -0
- package/dist/_chunks/{relations-C0w0GcXi.mjs → relations-CAxDjUJF.mjs} +6 -7
- package/dist/_chunks/relations-CAxDjUJF.mjs.map +1 -0
- package/dist/admin/index.js +1 -1
- package/dist/admin/index.mjs +4 -4
- package/dist/admin/src/pages/EditView/EditViewPage.d.ts +9 -1
- package/dist/admin/src/pages/EditView/components/DocumentStatus.d.ts +2 -2
- package/dist/admin/src/preview/components/PreviewContent.d.ts +2 -0
- package/dist/admin/src/preview/components/PreviewHeader.d.ts +2 -0
- package/dist/admin/src/preview/components/PreviewSidePanel.d.ts +3 -0
- package/dist/admin/src/preview/constants.d.ts +1 -0
- package/dist/admin/src/preview/index.d.ts +4 -0
- package/dist/admin/src/preview/pages/Preview.d.ts +11 -0
- package/dist/admin/src/preview/routes.d.ts +3 -0
- package/dist/admin/src/preview/services/preview.d.ts +3 -0
- package/dist/admin/src/router.d.ts +1 -1
- package/dist/admin/src/services/documents.d.ts +0 -3
- package/dist/server/index.js +391 -144
- package/dist/server/index.js.map +1 -1
- package/dist/server/index.mjs +392 -145
- package/dist/server/index.mjs.map +1 -1
- package/dist/server/src/bootstrap.d.ts.map +1 -1
- package/dist/server/src/controllers/index.d.ts.map +1 -1
- package/dist/server/src/controllers/relations.d.ts.map +1 -1
- package/dist/server/src/controllers/utils/metadata.d.ts +15 -1
- package/dist/server/src/controllers/utils/metadata.d.ts.map +1 -1
- package/dist/server/src/history/services/lifecycles.d.ts.map +1 -1
- package/dist/server/src/history/services/utils.d.ts +2 -3
- package/dist/server/src/history/services/utils.d.ts.map +1 -1
- package/dist/server/src/index.d.ts +4 -4
- package/dist/server/src/preview/constants.d.ts +2 -0
- package/dist/server/src/preview/constants.d.ts.map +1 -0
- package/dist/server/src/preview/controllers/index.d.ts +2 -0
- package/dist/server/src/preview/controllers/index.d.ts.map +1 -0
- package/dist/server/src/preview/controllers/preview.d.ts +13 -0
- package/dist/server/src/preview/controllers/preview.d.ts.map +1 -0
- package/dist/server/src/preview/controllers/validation/preview.d.ts +6 -0
- package/dist/server/src/preview/controllers/validation/preview.d.ts.map +1 -0
- package/dist/server/src/preview/index.d.ts +4 -0
- package/dist/server/src/preview/index.d.ts.map +1 -0
- package/dist/server/src/preview/routes/index.d.ts +8 -0
- package/dist/server/src/preview/routes/index.d.ts.map +1 -0
- package/dist/server/src/preview/routes/preview.d.ts +4 -0
- package/dist/server/src/preview/routes/preview.d.ts.map +1 -0
- package/dist/server/src/preview/services/index.d.ts +16 -0
- package/dist/server/src/preview/services/index.d.ts.map +1 -0
- package/dist/server/src/preview/services/preview-config.d.ts +32 -0
- package/dist/server/src/preview/services/preview-config.d.ts.map +1 -0
- package/dist/server/src/preview/services/preview.d.ts +12 -0
- package/dist/server/src/preview/services/preview.d.ts.map +1 -0
- package/dist/server/src/preview/utils.d.ts +19 -0
- package/dist/server/src/preview/utils.d.ts.map +1 -0
- package/dist/server/src/register.d.ts.map +1 -1
- package/dist/server/src/routes/index.d.ts.map +1 -1
- package/dist/server/src/services/document-manager.d.ts.map +1 -1
- package/dist/server/src/services/document-metadata.d.ts +8 -8
- package/dist/server/src/services/document-metadata.d.ts.map +1 -1
- package/dist/server/src/services/index.d.ts +4 -4
- package/dist/server/src/services/index.d.ts.map +1 -1
- package/dist/server/src/services/utils/configuration/index.d.ts +2 -2
- package/dist/server/src/services/utils/configuration/layouts.d.ts +2 -2
- package/dist/server/src/utils/index.d.ts +2 -0
- package/dist/server/src/utils/index.d.ts.map +1 -1
- package/dist/shared/contracts/index.d.ts +1 -0
- package/dist/shared/contracts/index.d.ts.map +1 -1
- package/dist/shared/contracts/preview.d.ts +27 -0
- package/dist/shared/contracts/preview.d.ts.map +1 -0
- package/dist/shared/index.js +4 -0
- package/dist/shared/index.js.map +1 -1
- package/dist/shared/index.mjs +4 -0
- package/dist/shared/index.mjs.map +1 -1
- package/package.json +10 -10
- package/dist/_chunks/EditViewPage-B82x_x1b.mjs.map +0 -1
- package/dist/_chunks/EditViewPage-DlxEHhUt.js.map +0 -1
- package/dist/_chunks/Field-COL25JiC.js.map +0 -1
- package/dist/_chunks/Field-DufHXW17.mjs.map +0 -1
- package/dist/_chunks/History-C9t9UqpO.js.map +0 -1
- package/dist/_chunks/History-DRwA3oMM.mjs.map +0 -1
- package/dist/_chunks/ListConfigurationPage-BXYPohh-.js.map +0 -1
- package/dist/_chunks/ListConfigurationPage-BxfQJzPk.mjs.map +0 -1
- package/dist/_chunks/ListViewPage-CELx2ysp.mjs.map +0 -1
- package/dist/_chunks/ListViewPage-D2VD8Szg.js.map +0 -1
- package/dist/_chunks/Relations-BTcf5xaw.mjs.map +0 -1
- package/dist/_chunks/Relations-DR7EUgyC.js.map +0 -1
- package/dist/_chunks/index-BdMf2lfT.js.map +0 -1
- package/dist/_chunks/index-wnqzm4Q8.mjs.map +0 -1
- package/dist/_chunks/relations-BH7JJGGe.js.map +0 -1
- package/dist/_chunks/relations-C0w0GcXi.mjs.map +0 -1
@@ -3,15 +3,16 @@ import { jsx, Fragment, jsxs } from "react/jsx-runtime";
|
|
3
3
|
import { useStrapiApp, createContext, useQueryParams, useAuth, useRBAC, Page, adminApi, translatedErrors, useNotification, useAPIErrorHandler, getYupValidationErrors, useForm, useTracking, useGuidedTour, BackButton, DescriptionComponentRenderer, useTable, Table } from "@strapi/admin/strapi-admin";
|
4
4
|
import * as React from "react";
|
5
5
|
import { lazy } from "react";
|
6
|
-
import {
|
6
|
+
import { Menu, Button, VisuallyHidden, Flex, Dialog, Modal, Typography, Radio, Status, Box, SingleSelect, SingleSelectOption, IconButton, Loader, Tooltip, LinkButton } from "@strapi/design-system";
|
7
|
+
import mapValues from "lodash/fp/mapValues";
|
7
8
|
import { useIntl } from "react-intl";
|
8
9
|
import { useParams, useNavigate, Navigate, useMatch, useLocation, Link, NavLink } from "react-router-dom";
|
10
|
+
import { styled } from "styled-components";
|
9
11
|
import * as yup from "yup";
|
10
12
|
import { ValidationError } from "yup";
|
13
|
+
import { stringify } from "qs";
|
11
14
|
import pipe from "lodash/fp/pipe";
|
12
15
|
import { intervalToDuration, isPast } from "date-fns";
|
13
|
-
import { styled } from "styled-components";
|
14
|
-
import { stringify } from "qs";
|
15
16
|
import { createSlice, combineReducers } from "@reduxjs/toolkit";
|
16
17
|
const __variableDynamicImportRuntimeHelper = (glob, path) => {
|
17
18
|
const v = glob[path];
|
@@ -273,7 +274,7 @@ const documentApi = contentManagerApi.injectEndpoints({
|
|
273
274
|
url: `/content-manager/collection-types/${model}`,
|
274
275
|
method: "GET",
|
275
276
|
config: {
|
276
|
-
params
|
277
|
+
params: stringify(params, { encode: true })
|
277
278
|
}
|
278
279
|
}),
|
279
280
|
providesTags: (result, _error, arg) => {
|
@@ -461,9 +462,6 @@ const buildValidParams = (query) => {
|
|
461
462
|
{}
|
462
463
|
)
|
463
464
|
};
|
464
|
-
if ("_q" in validQueryParams) {
|
465
|
-
validQueryParams._q = encodeURIComponent(validQueryParams._q);
|
466
|
-
}
|
467
465
|
return validQueryParams;
|
468
466
|
};
|
469
467
|
const isBaseQueryError = (error) => {
|
@@ -968,9 +966,10 @@ const formatEditLayout = (data, {
|
|
968
966
|
currentPanelIndex += 2;
|
969
967
|
} else {
|
970
968
|
if (!panels[currentPanelIndex]) {
|
971
|
-
panels.push([]);
|
969
|
+
panels.push([row]);
|
970
|
+
} else {
|
971
|
+
panels[currentPanelIndex].push(row);
|
972
972
|
}
|
973
|
-
panels[currentPanelIndex].push(row);
|
974
973
|
}
|
975
974
|
return panels;
|
976
975
|
}, []);
|
@@ -1228,9 +1227,6 @@ const useContentManagerContext = () => {
|
|
1228
1227
|
};
|
1229
1228
|
};
|
1230
1229
|
const prefixPluginTranslations = (trad, pluginId) => {
|
1231
|
-
if (!pluginId) {
|
1232
|
-
throw new TypeError("pluginId can't be empty");
|
1233
|
-
}
|
1234
1230
|
return Object.keys(trad).reduce((acc, current) => {
|
1235
1231
|
acc[`${pluginId}.${current}`] = trad[current];
|
1236
1232
|
return acc;
|
@@ -1664,10 +1660,10 @@ const useDocumentActions = () => {
|
|
1664
1660
|
update
|
1665
1661
|
};
|
1666
1662
|
};
|
1667
|
-
const ProtectedHistoryPage = lazy(
|
1668
|
-
() => import("./History-
|
1663
|
+
const ProtectedHistoryPage = React.lazy(
|
1664
|
+
() => import("./History-N_kRb1Yr.mjs").then((mod) => ({ default: mod.ProtectedHistoryPage }))
|
1669
1665
|
);
|
1670
|
-
const routes$
|
1666
|
+
const routes$2 = [
|
1671
1667
|
{
|
1672
1668
|
path: ":collectionType/:slug/:id/history",
|
1673
1669
|
Component: ProtectedHistoryPage
|
@@ -1677,32 +1673,45 @@ const routes$1 = [
|
|
1677
1673
|
Component: ProtectedHistoryPage
|
1678
1674
|
}
|
1679
1675
|
];
|
1676
|
+
const ProtectedPreviewPage = React.lazy(
|
1677
|
+
() => import("./Preview-kPkuZbBJ.mjs").then((mod) => ({ default: mod.ProtectedPreviewPage }))
|
1678
|
+
);
|
1679
|
+
const routes$1 = [
|
1680
|
+
{
|
1681
|
+
path: ":collectionType/:slug/:id/preview",
|
1682
|
+
Component: ProtectedPreviewPage
|
1683
|
+
},
|
1684
|
+
{
|
1685
|
+
path: ":collectionType/:slug/preview",
|
1686
|
+
Component: ProtectedPreviewPage
|
1687
|
+
}
|
1688
|
+
];
|
1680
1689
|
const ProtectedEditViewPage = lazy(
|
1681
|
-
() => import("./EditViewPage-
|
1690
|
+
() => import("./EditViewPage-BKoISUOu.mjs").then((mod) => ({ default: mod.ProtectedEditViewPage }))
|
1682
1691
|
);
|
1683
1692
|
const ProtectedListViewPage = lazy(
|
1684
|
-
() => import("./ListViewPage-
|
1693
|
+
() => import("./ListViewPage-CWilGbZb.mjs").then((mod) => ({ default: mod.ProtectedListViewPage }))
|
1685
1694
|
);
|
1686
1695
|
const ProtectedListConfiguration = lazy(
|
1687
|
-
() => import("./ListConfigurationPage-
|
1696
|
+
() => import("./ListConfigurationPage-BM3qVxug.mjs").then((mod) => ({
|
1688
1697
|
default: mod.ProtectedListConfiguration
|
1689
1698
|
}))
|
1690
1699
|
);
|
1691
1700
|
const ProtectedEditConfigurationPage = lazy(
|
1692
|
-
() => import("./EditConfigurationPage-
|
1701
|
+
() => import("./EditConfigurationPage-5tmx_7Hp.mjs").then((mod) => ({
|
1693
1702
|
default: mod.ProtectedEditConfigurationPage
|
1694
1703
|
}))
|
1695
1704
|
);
|
1696
1705
|
const ProtectedComponentConfigurationPage = lazy(
|
1697
|
-
() => import("./ComponentConfigurationPage-
|
1706
|
+
() => import("./ComponentConfigurationPage-DhWA-JzT.mjs").then((mod) => ({
|
1698
1707
|
default: mod.ProtectedComponentConfigurationPage
|
1699
1708
|
}))
|
1700
1709
|
);
|
1701
1710
|
const NoPermissions = lazy(
|
1702
|
-
() => import("./NoPermissionsPage-
|
1711
|
+
() => import("./NoPermissionsPage-CS2tCmfr.mjs").then((mod) => ({ default: mod.NoPermissions }))
|
1703
1712
|
);
|
1704
1713
|
const NoContentType = lazy(
|
1705
|
-
() => import("./NoContentTypePage-
|
1714
|
+
() => import("./NoContentTypePage-VWYlePwI.mjs").then((mod) => ({ default: mod.NoContentType }))
|
1706
1715
|
);
|
1707
1716
|
const CollectionTypePages = () => {
|
1708
1717
|
const { collectionType } = useParams();
|
@@ -1714,7 +1723,7 @@ const CollectionTypePages = () => {
|
|
1714
1723
|
const CLONE_RELATIVE_PATH = ":collectionType/:slug/clone/:origin";
|
1715
1724
|
const CLONE_PATH = `/content-manager/${CLONE_RELATIVE_PATH}`;
|
1716
1725
|
const LIST_RELATIVE_PATH = ":collectionType/:slug";
|
1717
|
-
const LIST_PATH = `/content-manager
|
1726
|
+
const LIST_PATH = `/content-manager/collection-types/:slug`;
|
1718
1727
|
const routes = [
|
1719
1728
|
{
|
1720
1729
|
path: LIST_RELATIVE_PATH,
|
@@ -1748,6 +1757,7 @@ const routes = [
|
|
1748
1757
|
path: "no-content-types",
|
1749
1758
|
Component: NoContentType
|
1750
1759
|
},
|
1760
|
+
...routes$2,
|
1751
1761
|
...routes$1
|
1752
1762
|
];
|
1753
1763
|
const DocumentActions = ({ actions: actions2 }) => {
|
@@ -1846,6 +1856,11 @@ const DocumentActionButton = (action) => {
|
|
1846
1856
|
) : null
|
1847
1857
|
] });
|
1848
1858
|
};
|
1859
|
+
const MenuItem = styled(Menu.Item)`
|
1860
|
+
&:hover {
|
1861
|
+
background: ${({ theme, isVariantDanger, isDisabled }) => isVariantDanger && !isDisabled ? theme.colors.danger100 : "neutral"};
|
1862
|
+
}
|
1863
|
+
`;
|
1849
1864
|
const DocumentActionsMenu = ({
|
1850
1865
|
actions: actions2,
|
1851
1866
|
children,
|
@@ -1904,48 +1919,32 @@ const DocumentActionsMenu = ({
|
|
1904
1919
|
/* @__PURE__ */ jsxs(Menu.Content, { maxHeight: void 0, popoverPlacement: "bottom-end", children: [
|
1905
1920
|
actions2.map((action) => {
|
1906
1921
|
return /* @__PURE__ */ jsx(
|
1907
|
-
|
1922
|
+
MenuItem,
|
1908
1923
|
{
|
1909
1924
|
disabled: action.disabled,
|
1910
1925
|
onSelect: handleClick(action),
|
1911
1926
|
display: "block",
|
1912
|
-
|
1913
|
-
|
1914
|
-
|
1915
|
-
|
1916
|
-
|
1917
|
-
|
1918
|
-
|
1919
|
-
|
1920
|
-
|
1921
|
-
|
1922
|
-
|
1923
|
-
|
1924
|
-
|
1925
|
-
|
1926
|
-
|
1927
|
-
|
1928
|
-
|
1929
|
-
|
1930
|
-
|
1931
|
-
|
1932
|
-
|
1933
|
-
Flex,
|
1934
|
-
{
|
1935
|
-
alignItems: "center",
|
1936
|
-
background: "alternative100",
|
1937
|
-
borderStyle: "solid",
|
1938
|
-
borderColor: "alternative200",
|
1939
|
-
borderWidth: "1px",
|
1940
|
-
height: 5,
|
1941
|
-
paddingLeft: 2,
|
1942
|
-
paddingRight: 2,
|
1943
|
-
hasRadius: true,
|
1944
|
-
color: "alternative600",
|
1945
|
-
children: /* @__PURE__ */ jsx(Typography, { variant: "sigma", fontWeight: "bold", lineHeight: 1, children: formatMessage({ id: "global.new", defaultMessage: "New" }) })
|
1946
|
-
}
|
1947
|
-
)
|
1948
|
-
] })
|
1927
|
+
isVariantDanger: action.variant === "danger",
|
1928
|
+
isDisabled: action.disabled,
|
1929
|
+
children: /* @__PURE__ */ jsx(Flex, { justifyContent: "space-between", gap: 4, children: /* @__PURE__ */ jsxs(
|
1930
|
+
Flex,
|
1931
|
+
{
|
1932
|
+
color: !action.disabled ? convertActionVariantToColor(action.variant) : "inherit",
|
1933
|
+
gap: 2,
|
1934
|
+
tag: "span",
|
1935
|
+
children: [
|
1936
|
+
/* @__PURE__ */ jsx(
|
1937
|
+
Flex,
|
1938
|
+
{
|
1939
|
+
tag: "span",
|
1940
|
+
color: !action.disabled ? convertActionVariantToIconColor(action.variant) : "inherit",
|
1941
|
+
children: action.icon
|
1942
|
+
}
|
1943
|
+
),
|
1944
|
+
action.label
|
1945
|
+
]
|
1946
|
+
}
|
1947
|
+
) })
|
1949
1948
|
},
|
1950
1949
|
action.id
|
1951
1950
|
);
|
@@ -2056,6 +2055,18 @@ const DocumentActionModal = ({
|
|
2056
2055
|
typeof Footer === "function" ? /* @__PURE__ */ jsx(Footer, { onClose: handleClose }) : Footer
|
2057
2056
|
] }) });
|
2058
2057
|
};
|
2058
|
+
const transformData = (data) => {
|
2059
|
+
if (Array.isArray(data)) {
|
2060
|
+
return data.map(transformData);
|
2061
|
+
}
|
2062
|
+
if (typeof data === "object" && data !== null) {
|
2063
|
+
if ("apiData" in data) {
|
2064
|
+
return data.apiData;
|
2065
|
+
}
|
2066
|
+
return mapValues(transformData)(data);
|
2067
|
+
}
|
2068
|
+
return data;
|
2069
|
+
};
|
2059
2070
|
const PublishAction$1 = ({
|
2060
2071
|
activeTab,
|
2061
2072
|
documentId,
|
@@ -2070,6 +2081,7 @@ const PublishAction$1 = ({
|
|
2070
2081
|
const { _unstableFormatValidationErrors: formatValidationErrors } = useAPIErrorHandler();
|
2071
2082
|
const isListView = useMatch(LIST_PATH) !== null;
|
2072
2083
|
const isCloning = useMatch(CLONE_PATH) !== null;
|
2084
|
+
const { id } = useParams();
|
2073
2085
|
const { formatMessage } = useIntl();
|
2074
2086
|
const canPublish = useDocumentRBAC("PublishAction", ({ canPublish: canPublish2 }) => canPublish2);
|
2075
2087
|
const { publish } = useDocumentActions();
|
@@ -2169,13 +2181,15 @@ const PublishAction$1 = ({
|
|
2169
2181
|
documentId,
|
2170
2182
|
params
|
2171
2183
|
},
|
2172
|
-
formValues
|
2184
|
+
transformData(formValues)
|
2173
2185
|
);
|
2174
2186
|
if ("data" in res && collectionType !== SINGLE_TYPES) {
|
2175
|
-
|
2176
|
-
|
2177
|
-
|
2178
|
-
|
2187
|
+
if (id === "create") {
|
2188
|
+
navigate({
|
2189
|
+
pathname: `../${collectionType}/${model}/${res.data.documentId}`,
|
2190
|
+
search: rawQuery
|
2191
|
+
});
|
2192
|
+
}
|
2179
2193
|
} else if ("error" in res && isBaseQueryError(res.error) && res.error.name === "ValidationError") {
|
2180
2194
|
setErrors(formatValidationErrors(res.error));
|
2181
2195
|
}
|
@@ -2259,7 +2273,7 @@ const UpdateAction = ({
|
|
2259
2273
|
*/
|
2260
2274
|
disabled: isSubmitting || !modified && !isCloning || activeTab === "published",
|
2261
2275
|
label: formatMessage({
|
2262
|
-
id: "
|
2276
|
+
id: "global.save",
|
2263
2277
|
defaultMessage: "Save"
|
2264
2278
|
}),
|
2265
2279
|
onClick: async () => {
|
@@ -2285,7 +2299,7 @@ const UpdateAction = ({
|
|
2285
2299
|
documentId: cloneMatch.params.origin,
|
2286
2300
|
params
|
2287
2301
|
},
|
2288
|
-
document
|
2302
|
+
transformData(document)
|
2289
2303
|
);
|
2290
2304
|
if ("data" in res) {
|
2291
2305
|
navigate(
|
@@ -2306,7 +2320,7 @@ const UpdateAction = ({
|
|
2306
2320
|
documentId,
|
2307
2321
|
params
|
2308
2322
|
},
|
2309
|
-
document
|
2323
|
+
transformData(document)
|
2310
2324
|
);
|
2311
2325
|
if ("error" in res && isBaseQueryError(res.error) && res.error.name === "ValidationError") {
|
2312
2326
|
setErrors(formatValidationErrors(res.error));
|
@@ -2319,7 +2333,7 @@ const UpdateAction = ({
|
|
2319
2333
|
model,
|
2320
2334
|
params
|
2321
2335
|
},
|
2322
|
-
document
|
2336
|
+
transformData(document)
|
2323
2337
|
);
|
2324
2338
|
if ("data" in res && collectionType !== SINGLE_TYPES) {
|
2325
2339
|
navigate(
|
@@ -2524,7 +2538,7 @@ const RelativeTime = React.forwardRef(
|
|
2524
2538
|
});
|
2525
2539
|
const unit = intervals.find((intervalUnit) => {
|
2526
2540
|
return interval[intervalUnit] > 0 && Object.keys(interval).includes(intervalUnit);
|
2527
|
-
});
|
2541
|
+
}) ?? "seconds";
|
2528
2542
|
const relativeTime = isPast(timestamp) ? -interval[unit] : interval[unit];
|
2529
2543
|
const customInterval = customIntervals.find(
|
2530
2544
|
(custom) => interval[custom.unit] < custom.threshold
|
@@ -2558,19 +2572,29 @@ const getDisplayName = ({
|
|
2558
2572
|
return email ?? "";
|
2559
2573
|
};
|
2560
2574
|
const capitalise = (str) => str.charAt(0).toUpperCase() + str.slice(1);
|
2561
|
-
const DocumentStatus = ({ status = "draft", ...restProps }) => {
|
2575
|
+
const DocumentStatus = ({ status = "draft", size = "S", ...restProps }) => {
|
2562
2576
|
const statusVariant = status === "draft" ? "secondary" : status === "published" ? "success" : "alternative";
|
2563
|
-
|
2577
|
+
const { formatMessage } = useIntl();
|
2578
|
+
return /* @__PURE__ */ jsx(Status, { ...restProps, size, variant: statusVariant, children: /* @__PURE__ */ jsx(Typography, { tag: "span", variant: "omega", fontWeight: "bold", children: formatMessage({
|
2579
|
+
id: `content-manager.containers.List.${status}`,
|
2580
|
+
defaultMessage: capitalise(status)
|
2581
|
+
}) }) });
|
2564
2582
|
};
|
2565
2583
|
const Header = ({ isCreating, status, title: documentTitle = "Untitled" }) => {
|
2566
2584
|
const { formatMessage } = useIntl();
|
2567
2585
|
const isCloning = useMatch(CLONE_PATH) !== null;
|
2586
|
+
const params = useParams();
|
2568
2587
|
const title = isCreating ? formatMessage({
|
2569
2588
|
id: "content-manager.containers.edit.title.new",
|
2570
2589
|
defaultMessage: "Create an entry"
|
2571
2590
|
}) : documentTitle;
|
2572
2591
|
return /* @__PURE__ */ jsxs(Flex, { direction: "column", alignItems: "flex-start", paddingTop: 6, paddingBottom: 4, gap: 2, children: [
|
2573
|
-
/* @__PURE__ */ jsx(
|
2592
|
+
/* @__PURE__ */ jsx(
|
2593
|
+
BackButton,
|
2594
|
+
{
|
2595
|
+
fallback: params.collectionType === SINGLE_TYPES ? void 0 : `../${COLLECTION_TYPES}/${params.slug}`
|
2596
|
+
}
|
2597
|
+
),
|
2574
2598
|
/* @__PURE__ */ jsxs(Flex, { width: "100%", justifyContent: "space-between", gap: "80px", alignItems: "flex-start", children: [
|
2575
2599
|
/* @__PURE__ */ jsx(Typography, { variant: "alpha", tag: "h1", children: title }),
|
2576
2600
|
/* @__PURE__ */ jsx(HeaderToolbar, {})
|
@@ -3007,7 +3031,7 @@ const Panel = React.forwardRef(({ children, title }, ref) => {
|
|
3007
3031
|
justifyContent: "stretch",
|
3008
3032
|
alignItems: "flex-start",
|
3009
3033
|
children: [
|
3010
|
-
/* @__PURE__ */ jsx(Typography, { tag: "h2", variant: "sigma", textTransform: "uppercase", children: title }),
|
3034
|
+
/* @__PURE__ */ jsx(Typography, { tag: "h2", variant: "sigma", textTransform: "uppercase", textColor: "neutral600", children: title }),
|
3011
3035
|
children
|
3012
3036
|
]
|
3013
3037
|
}
|
@@ -3257,18 +3281,10 @@ const SelectedEntriesTableContent = ({
|
|
3257
3281
|
search: row.locale && `?plugins[i18n][locale]=${row.locale}`
|
3258
3282
|
},
|
3259
3283
|
state: { from: pathname },
|
3260
|
-
label: formatMessage(
|
3261
|
-
|
3262
|
-
|
3263
|
-
|
3264
|
-
{
|
3265
|
-
id: "content-manager.components.ListViewHelperPluginTable.row-line",
|
3266
|
-
defaultMessage: "item line {number}"
|
3267
|
-
},
|
3268
|
-
{ number: index2 + 1 }
|
3269
|
-
)
|
3270
|
-
}
|
3271
|
-
),
|
3284
|
+
label: formatMessage({
|
3285
|
+
id: "content-manager.bulk-publish.edit",
|
3286
|
+
defaultMessage: "Edit"
|
3287
|
+
}),
|
3272
3288
|
target: "_blank",
|
3273
3289
|
marginLeft: "auto",
|
3274
3290
|
variant: "ghost",
|
@@ -3912,17 +3928,27 @@ const HistoryAction = ({ model, document }) => {
|
|
3912
3928
|
const { formatMessage } = useIntl();
|
3913
3929
|
const [{ query }] = useQueryParams();
|
3914
3930
|
const navigate = useNavigate();
|
3931
|
+
const { trackUsage } = useTracking();
|
3932
|
+
const { pathname } = useLocation();
|
3915
3933
|
const pluginsQueryParams = stringify({ plugins: query.plugins }, { encode: false });
|
3916
3934
|
if (!window.strapi.features.isEnabled("cms-content-history")) {
|
3917
3935
|
return null;
|
3918
3936
|
}
|
3937
|
+
const handleOnClick = () => {
|
3938
|
+
const destination = { pathname: "history", search: pluginsQueryParams };
|
3939
|
+
trackUsage("willNavigate", {
|
3940
|
+
from: pathname,
|
3941
|
+
to: `${pathname}/${destination.pathname}`
|
3942
|
+
});
|
3943
|
+
navigate(destination);
|
3944
|
+
};
|
3919
3945
|
return {
|
3920
3946
|
icon: /* @__PURE__ */ jsx(ClockCounterClockwise, {}),
|
3921
3947
|
label: formatMessage({
|
3922
3948
|
id: "content-manager.history.document-action",
|
3923
3949
|
defaultMessage: "Content History"
|
3924
3950
|
}),
|
3925
|
-
onClick:
|
3951
|
+
onClick: handleOnClick,
|
3926
3952
|
disabled: (
|
3927
3953
|
/**
|
3928
3954
|
* The user is creating a new document.
|
@@ -3990,6 +4016,90 @@ const { setInitialData } = actions;
|
|
3990
4016
|
const reducer = combineReducers({
|
3991
4017
|
app: reducer$1
|
3992
4018
|
});
|
4019
|
+
const previewApi = contentManagerApi.injectEndpoints({
|
4020
|
+
endpoints: (builder) => ({
|
4021
|
+
getPreviewUrl: builder.query({
|
4022
|
+
query({ query, params }) {
|
4023
|
+
return {
|
4024
|
+
url: `/content-manager/preview/url/${params.contentType}`,
|
4025
|
+
method: "GET",
|
4026
|
+
config: {
|
4027
|
+
params: query
|
4028
|
+
}
|
4029
|
+
};
|
4030
|
+
}
|
4031
|
+
})
|
4032
|
+
})
|
4033
|
+
});
|
4034
|
+
const { useGetPreviewUrlQuery } = previewApi;
|
4035
|
+
const ConditionalTooltip = ({ isShown, label, children }) => {
|
4036
|
+
if (isShown) {
|
4037
|
+
return /* @__PURE__ */ jsx(Tooltip, { label, children });
|
4038
|
+
}
|
4039
|
+
return children;
|
4040
|
+
};
|
4041
|
+
const PreviewSidePanel = ({ model, documentId, document }) => {
|
4042
|
+
const { formatMessage } = useIntl();
|
4043
|
+
const { trackUsage } = useTracking();
|
4044
|
+
const { pathname } = useLocation();
|
4045
|
+
const [{ query }] = useQueryParams();
|
4046
|
+
const isModified = useForm("PreviewSidePanel", (state) => state.modified);
|
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 trackNavigation = () => {
|
4061
|
+
const destinationPathname = pathname.replace(/\/$/, "") + "/preview";
|
4062
|
+
trackUsage("willNavigate", { from: pathname, to: destinationPathname });
|
4063
|
+
};
|
4064
|
+
return {
|
4065
|
+
title: formatMessage({ id: "content-manager.preview.panel.title", defaultMessage: "Preview" }),
|
4066
|
+
content: /* @__PURE__ */ jsx(Flex, { gap: 2, width: "100%", children: /* @__PURE__ */ jsx(
|
4067
|
+
ConditionalTooltip,
|
4068
|
+
{
|
4069
|
+
label: formatMessage({
|
4070
|
+
id: "content-manager.preview.panel.button-disabled-tooltip",
|
4071
|
+
defaultMessage: "Please save to open the preview"
|
4072
|
+
}),
|
4073
|
+
isShown: isModified,
|
4074
|
+
children: /* @__PURE__ */ jsx(
|
4075
|
+
Button,
|
4076
|
+
{
|
4077
|
+
variant: "tertiary",
|
4078
|
+
tag: Link,
|
4079
|
+
to: { pathname: "preview", search: stringify(query, { encode: false }) },
|
4080
|
+
onClick: trackNavigation,
|
4081
|
+
flex: "auto",
|
4082
|
+
disabled: isModified,
|
4083
|
+
children: formatMessage({
|
4084
|
+
id: "content-manager.preview.panel.button",
|
4085
|
+
defaultMessage: "Open preview"
|
4086
|
+
})
|
4087
|
+
}
|
4088
|
+
)
|
4089
|
+
}
|
4090
|
+
) })
|
4091
|
+
};
|
4092
|
+
};
|
4093
|
+
const FEATURE_ID = "preview";
|
4094
|
+
const previewAdmin = {
|
4095
|
+
bootstrap(app) {
|
4096
|
+
if (!window.strapi.future.isEnabled(FEATURE_ID)) {
|
4097
|
+
return;
|
4098
|
+
}
|
4099
|
+
const contentManagerPluginApis = app.getPlugin("content-manager").apis;
|
4100
|
+
contentManagerPluginApis.addEditViewSidePanel([PreviewSidePanel]);
|
4101
|
+
}
|
4102
|
+
};
|
3993
4103
|
const index = {
|
3994
4104
|
register(app) {
|
3995
4105
|
const cm = new ContentManagerPlugin();
|
@@ -4009,7 +4119,7 @@ const index = {
|
|
4009
4119
|
app.router.addRoute({
|
4010
4120
|
path: "content-manager/*",
|
4011
4121
|
lazy: async () => {
|
4012
|
-
const { Layout } = await import("./layout-
|
4122
|
+
const { Layout } = await import("./layout-2Si0j0jO.mjs");
|
4013
4123
|
return {
|
4014
4124
|
Component: Layout
|
4015
4125
|
};
|
@@ -4022,11 +4132,14 @@ const index = {
|
|
4022
4132
|
if (typeof historyAdmin.bootstrap === "function") {
|
4023
4133
|
historyAdmin.bootstrap(app);
|
4024
4134
|
}
|
4135
|
+
if (typeof previewAdmin.bootstrap === "function") {
|
4136
|
+
previewAdmin.bootstrap(app);
|
4137
|
+
}
|
4025
4138
|
},
|
4026
4139
|
async registerTrads({ locales }) {
|
4027
4140
|
const importedTrads = await Promise.all(
|
4028
4141
|
locales.map((locale) => {
|
4029
|
-
return __variableDynamicImportRuntimeHelper(/* @__PURE__ */ Object.assign({ "./translations/ar.json": () => import("./ar-CCEVvqGG.mjs"), "./translations/ca.json": () => import("./ca-5U32ON2v.mjs"), "./translations/cs.json": () => import("./cs-CM2aBUar.mjs"), "./translations/de.json": () => import("./de-C72KDNOl.mjs"), "./translations/en.json": () => import("./en-
|
4142
|
+
return __variableDynamicImportRuntimeHelper(/* @__PURE__ */ Object.assign({ "./translations/ar.json": () => import("./ar-CCEVvqGG.mjs"), "./translations/ca.json": () => import("./ca-5U32ON2v.mjs"), "./translations/cs.json": () => import("./cs-CM2aBUar.mjs"), "./translations/de.json": () => import("./de-C72KDNOl.mjs"), "./translations/en.json": () => import("./en-Dtk_ot79.mjs"), "./translations/es.json": () => import("./es-D34tqjMw.mjs"), "./translations/eu.json": () => import("./eu-CdALomew.mjs"), "./translations/fr.json": () => import("./fr--pg5jUbt.mjs"), "./translations/gu.json": () => import("./gu-CNpaMDpH.mjs"), "./translations/hi.json": () => import("./hi-Dwvd04m3.mjs"), "./translations/hu.json": () => import("./hu-CeYvaaO0.mjs"), "./translations/id.json": () => import("./id-BtwA9WJT.mjs"), "./translations/it.json": () => import("./it-BrVPqaf1.mjs"), "./translations/ja.json": () => import("./ja-BHqhDq4V.mjs"), "./translations/ko.json": () => import("./ko-HVQRlfUI.mjs"), "./translations/ml.json": () => import("./ml-BihZwQit.mjs"), "./translations/ms.json": () => import("./ms-m_WjyWx7.mjs"), "./translations/nl.json": () => import("./nl-D4R9gHx5.mjs"), "./translations/pl.json": () => import("./pl-sbx9mSt_.mjs"), "./translations/pt-BR.json": () => import("./pt-BR-C71iDxnh.mjs"), "./translations/pt.json": () => import("./pt-BsaFvS8-.mjs"), "./translations/ru.json": () => import("./ru-BE6A4Exp.mjs"), "./translations/sa.json": () => import("./sa-Dag0k-Z8.mjs"), "./translations/sk.json": () => import("./sk-BFg-R8qJ.mjs"), "./translations/sv.json": () => import("./sv-CUnfWGsh.mjs"), "./translations/th.json": () => import("./th-BqbI8lIT.mjs"), "./translations/tr.json": () => import("./tr-CgeK3wJM.mjs"), "./translations/uk.json": () => import("./uk-CR-zDhAY.mjs"), "./translations/vi.json": () => import("./vi-DUXIk_fw.mjs"), "./translations/zh-Hans.json": () => import("./zh-Hans-BPQcRIyH.mjs"), "./translations/zh.json": () => import("./zh-BWZspA60.mjs") }), `./translations/${locale}.json`).then(({ default: data }) => {
|
4030
4143
|
return {
|
4031
4144
|
data: prefixPluginTranslations(data, PLUGIN_ID),
|
4032
4145
|
locale
|
@@ -4053,9 +4166,10 @@ export {
|
|
4053
4166
|
HOOKS as H,
|
4054
4167
|
InjectionZone as I,
|
4055
4168
|
useDocument as J,
|
4056
|
-
|
4057
|
-
|
4058
|
-
|
4169
|
+
useGetPreviewUrlQuery as K,
|
4170
|
+
index as L,
|
4171
|
+
useContentManagerContext as M,
|
4172
|
+
useDocumentActions as N,
|
4059
4173
|
Panels as P,
|
4060
4174
|
RelativeTime as R,
|
4061
4175
|
SINGLE_TYPES as S,
|
@@ -4087,4 +4201,4 @@ export {
|
|
4087
4201
|
capitalise as y,
|
4088
4202
|
useUpdateContentTypeConfigurationMutation as z
|
4089
4203
|
};
|
4090
|
-
//# sourceMappingURL=index-
|
4204
|
+
//# sourceMappingURL=index-BLPa8Dq-.mjs.map
|