@strapi/content-manager 0.0.0-experimental.5788c38836be65c0321a2dcadbdf44f04b798e8a → 0.0.0-experimental.5a34dd1236f692f16e40784fcca5c11e0e55dc5a
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-B42mQr1K.js → ComponentConfigurationPage-CQDCxI8x.js} +3 -3
- package/dist/_chunks/{ComponentConfigurationPage-B42mQr1K.js.map → ComponentConfigurationPage-CQDCxI8x.js.map} +1 -1
- package/dist/_chunks/{ComponentConfigurationPage-D1YuKq8j.mjs → ComponentConfigurationPage-jmWwucg_.mjs} +3 -3
- package/dist/_chunks/{ComponentConfigurationPage-D1YuKq8j.mjs.map → ComponentConfigurationPage-jmWwucg_.mjs.map} +1 -1
- package/dist/_chunks/{EditConfigurationPage-NC89F29V.js → EditConfigurationPage-Ce4bIm4n.js} +3 -3
- package/dist/_chunks/{EditConfigurationPage-NC89F29V.js.map → EditConfigurationPage-Ce4bIm4n.js.map} +1 -1
- package/dist/_chunks/{EditConfigurationPage-C9yiwgI_.mjs → EditConfigurationPage-W07CEdm2.mjs} +3 -3
- package/dist/_chunks/{EditConfigurationPage-C9yiwgI_.mjs.map → EditConfigurationPage-W07CEdm2.mjs.map} +1 -1
- package/dist/_chunks/{EditViewPage-DYDpe5Wi.js → EditViewPage-CqHMM0P0.js} +3 -3
- package/dist/_chunks/EditViewPage-CqHMM0P0.js.map +1 -0
- package/dist/_chunks/{EditViewPage-k8UcfVwt.mjs → EditViewPage-al5OO1NR.mjs} +3 -3
- package/dist/_chunks/EditViewPage-al5OO1NR.mjs.map +1 -0
- package/dist/_chunks/{Field-Crhugun2.js → Field-DSOUlTCm.js} +11 -7
- package/dist/_chunks/Field-DSOUlTCm.js.map +1 -0
- package/dist/_chunks/{Field-BLL5lknV.mjs → Field-EeG6NQ7x.mjs} +11 -7
- package/dist/_chunks/Field-EeG6NQ7x.mjs.map +1 -0
- package/dist/_chunks/{Form-UHu2eOuG.mjs → Form-BAo9ANb_.mjs} +3 -3
- package/dist/_chunks/Form-BAo9ANb_.mjs.map +1 -0
- package/dist/_chunks/{Form-DUU19g6M.js → Form-DAEfHKzm.js} +3 -3
- package/dist/_chunks/Form-DAEfHKzm.js.map +1 -0
- package/dist/_chunks/{History-CpxkZXS3.mjs → History-BpLIu67W.mjs} +24 -11
- package/dist/_chunks/History-BpLIu67W.mjs.map +1 -0
- package/dist/_chunks/{History-CyA8tvJZ.js → History-CTFvy6XH.js} +23 -10
- package/dist/_chunks/History-CTFvy6XH.js.map +1 -0
- package/dist/_chunks/{ListConfigurationPage-pJV7aG2V.js → ListConfigurationPage-CDzlMBz_.js} +2 -2
- package/dist/_chunks/{ListConfigurationPage-pJV7aG2V.js.map → ListConfigurationPage-CDzlMBz_.js.map} +1 -1
- package/dist/_chunks/{ListConfigurationPage-OUwV8QF1.mjs → ListConfigurationPage-DOqj5f8Y.mjs} +2 -2
- package/dist/_chunks/{ListConfigurationPage-OUwV8QF1.mjs.map → ListConfigurationPage-DOqj5f8Y.mjs.map} +1 -1
- package/dist/_chunks/{ListViewPage-BOnhCGkE.mjs → ListViewPage-BbXYNI0v.mjs} +3 -3
- package/dist/_chunks/{ListViewPage-BOnhCGkE.mjs.map → ListViewPage-BbXYNI0v.mjs.map} +1 -1
- package/dist/_chunks/{ListViewPage-BIT0M8VG.js → ListViewPage-D0fpPYKp.js} +3 -3
- package/dist/_chunks/{ListViewPage-BIT0M8VG.js.map → ListViewPage-D0fpPYKp.js.map} +1 -1
- package/dist/_chunks/{NoContentTypePage-uIBsBUmH.js → NoContentTypePage-DTzkSAV5.js} +2 -2
- package/dist/_chunks/{NoContentTypePage-uIBsBUmH.js.map → NoContentTypePage-DTzkSAV5.js.map} +1 -1
- package/dist/_chunks/{NoContentTypePage-CwjlHGTn.mjs → NoContentTypePage-w2Q0VVOT.mjs} +2 -2
- package/dist/_chunks/{NoContentTypePage-CwjlHGTn.mjs.map → NoContentTypePage-w2Q0VVOT.mjs.map} +1 -1
- package/dist/_chunks/{NoPermissionsPage-C8wkEaOF.js → NoPermissionsPage-BoI2rU68.js} +2 -2
- package/dist/_chunks/{NoPermissionsPage-C8wkEaOF.js.map → NoPermissionsPage-BoI2rU68.js.map} +1 -1
- package/dist/_chunks/{NoPermissionsPage-CcWbyT_z.mjs → NoPermissionsPage-Km0Vk5Wp.mjs} +2 -2
- package/dist/_chunks/{NoPermissionsPage-CcWbyT_z.mjs.map → NoPermissionsPage-Km0Vk5Wp.mjs.map} +1 -1
- package/dist/_chunks/{Relations-wIdWJnA9.mjs → Relations-C_bpmSuQ.mjs} +22 -9
- package/dist/_chunks/Relations-C_bpmSuQ.mjs.map +1 -0
- package/dist/_chunks/{Relations-CwRu_eZv.js → Relations-D6Nz5ksc.js} +22 -9
- package/dist/_chunks/Relations-D6Nz5ksc.js.map +1 -0
- package/dist/_chunks/{index-BO-T2BdP.js → index-BsMu2oVP.js} +52 -25
- package/dist/_chunks/index-BsMu2oVP.js.map +1 -0
- package/dist/_chunks/{index-BQ8DxaCa.mjs → index-DcQ6xogO.mjs} +52 -26
- package/dist/_chunks/index-DcQ6xogO.mjs.map +1 -0
- package/dist/_chunks/{layout-BTB1_M8g.js → layout-B4aCAdTt.js} +3 -3
- package/dist/_chunks/{layout-BTB1_M8g.js.map → layout-B4aCAdTt.js.map} +1 -1
- package/dist/_chunks/{layout-N63eyE5E.mjs → layout-BavJ6v4B.mjs} +3 -3
- package/dist/_chunks/{layout-N63eyE5E.mjs.map → layout-BavJ6v4B.mjs.map} +1 -1
- package/dist/_chunks/{relations-Bh9r0CVE.mjs → relations-DMG453Od.mjs} +2 -2
- package/dist/_chunks/{relations-Bh9r0CVE.mjs.map → relations-DMG453Od.mjs.map} +1 -1
- package/dist/_chunks/{relations-C9AQuM2z.js → relations-Lrm9nz_m.js} +2 -2
- package/dist/_chunks/{relations-C9AQuM2z.js.map → relations-Lrm9nz_m.js.map} +1 -1
- package/dist/admin/index.js +1 -1
- package/dist/admin/index.mjs +1 -1
- package/dist/server/index.js +46 -15
- package/dist/server/index.js.map +1 -1
- package/dist/server/index.mjs +46 -15
- package/dist/server/index.mjs.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/history.d.ts.map +1 -1
- package/dist/server/src/index.d.ts +4 -4
- 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/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/package.json +7 -7
- package/dist/_chunks/EditViewPage-DYDpe5Wi.js.map +0 -1
- package/dist/_chunks/EditViewPage-k8UcfVwt.mjs.map +0 -1
- package/dist/_chunks/Field-BLL5lknV.mjs.map +0 -1
- package/dist/_chunks/Field-Crhugun2.js.map +0 -1
- package/dist/_chunks/Form-DUU19g6M.js.map +0 -1
- package/dist/_chunks/Form-UHu2eOuG.mjs.map +0 -1
- package/dist/_chunks/History-CpxkZXS3.mjs.map +0 -1
- package/dist/_chunks/History-CyA8tvJZ.js.map +0 -1
- package/dist/_chunks/Relations-CwRu_eZv.js.map +0 -1
- package/dist/_chunks/Relations-wIdWJnA9.mjs.map +0 -1
- package/dist/_chunks/index-BO-T2BdP.js.map +0 -1
- package/dist/_chunks/index-BQ8DxaCa.mjs.map +0 -1
@@ -1,9 +1,10 @@
|
|
1
1
|
import { More, Cross, WarningCircle, ListPlus, Pencil, Trash, Check, CrossCircle, CheckCircle, ArrowsCounterClockwise, ChevronRight, Duplicate, ClockCounterClockwise, Feather } from "@strapi/icons";
|
2
2
|
import { jsx, Fragment, jsxs } from "react/jsx-runtime";
|
3
|
-
import { useStrapiApp, createContext, useAuth, useRBAC, Page, adminApi, translatedErrors, useNotification, useAPIErrorHandler,
|
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
6
|
import { Button, Menu, VisuallyHidden, Flex, Typography, Dialog, Modal, 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";
|
9
10
|
import * as yup from "yup";
|
@@ -100,6 +101,7 @@ const DocumentRBAC = ({ children, permissions }) => {
|
|
100
101
|
if (!slug) {
|
101
102
|
throw new Error("Cannot find the slug param in the URL");
|
102
103
|
}
|
104
|
+
const [{ rawQuery }] = useQueryParams();
|
103
105
|
const userPermissions = useAuth("DocumentRBAC", (state) => state.permissions);
|
104
106
|
const contentTypePermissions = React.useMemo(() => {
|
105
107
|
const contentTypePermissions2 = userPermissions.filter(
|
@@ -110,7 +112,14 @@ const DocumentRBAC = ({ children, permissions }) => {
|
|
110
112
|
return { ...acc, [action]: [permission] };
|
111
113
|
}, {});
|
112
114
|
}, [slug, userPermissions]);
|
113
|
-
const { isLoading, allowedActions } = useRBAC(
|
115
|
+
const { isLoading, allowedActions } = useRBAC(
|
116
|
+
contentTypePermissions,
|
117
|
+
permissions ?? void 0,
|
118
|
+
// TODO: useRBAC context should be typed and built differently
|
119
|
+
// We are passing raw query as context to the hook so that it can
|
120
|
+
// rely on the locale provided from DocumentRBAC for its permission calculations.
|
121
|
+
rawQuery
|
122
|
+
);
|
114
123
|
const canCreateFields = !isLoading && allowedActions.canCreate ? extractAndDedupeFields(contentTypePermissions.create) : [];
|
115
124
|
const canReadFields = !isLoading && allowedActions.canRead ? extractAndDedupeFields(contentTypePermissions.read) : [];
|
116
125
|
const canUpdateFields = !isLoading && allowedActions.canUpdate ? extractAndDedupeFields(contentTypePermissions.update) : [];
|
@@ -461,12 +470,15 @@ const buildValidParams = (query) => {
|
|
461
470
|
const isBaseQueryError = (error) => {
|
462
471
|
return error.name !== void 0;
|
463
472
|
};
|
464
|
-
const arrayValidator = (options) => ({
|
473
|
+
const arrayValidator = (attribute, options) => ({
|
465
474
|
message: translatedErrors.required,
|
466
475
|
test(value) {
|
467
476
|
if (options.status === "draft") {
|
468
477
|
return true;
|
469
478
|
}
|
479
|
+
if (!attribute.required) {
|
480
|
+
return true;
|
481
|
+
}
|
470
482
|
if (!value) {
|
471
483
|
return false;
|
472
484
|
}
|
@@ -500,7 +512,7 @@ const createYupSchema = (attributes = {}, components = {}, options = { status: n
|
|
500
512
|
...acc,
|
501
513
|
[name]: transformSchema(
|
502
514
|
yup.array().of(createModelSchema(attributes3).nullable(false))
|
503
|
-
).test(arrayValidator(options))
|
515
|
+
).test(arrayValidator(attribute, options))
|
504
516
|
};
|
505
517
|
} else {
|
506
518
|
return {
|
@@ -527,7 +539,7 @@ const createYupSchema = (attributes = {}, components = {}, options = { status: n
|
|
527
539
|
}
|
528
540
|
)
|
529
541
|
)
|
530
|
-
).test(arrayValidator(options))
|
542
|
+
).test(arrayValidator(attribute, options))
|
531
543
|
};
|
532
544
|
case "relation":
|
533
545
|
return {
|
@@ -1163,16 +1175,18 @@ const useDoc = () => {
|
|
1163
1175
|
if (!slug) {
|
1164
1176
|
throw new Error("Could not find model in url params");
|
1165
1177
|
}
|
1178
|
+
const document = useDocument(
|
1179
|
+
{ documentId: origin || id, model: slug, collectionType, params },
|
1180
|
+
{
|
1181
|
+
skip: id === "create" || !origin && !id && collectionType !== SINGLE_TYPES
|
1182
|
+
}
|
1183
|
+
);
|
1184
|
+
const returnId = origin || id === "create" ? void 0 : id;
|
1166
1185
|
return {
|
1167
1186
|
collectionType,
|
1168
1187
|
model: slug,
|
1169
|
-
id:
|
1170
|
-
...
|
1171
|
-
{ documentId: origin || id, model: slug, collectionType, params },
|
1172
|
-
{
|
1173
|
-
skip: id === "create" || !origin && !id && collectionType !== SINGLE_TYPES
|
1174
|
-
}
|
1175
|
-
)
|
1188
|
+
id: returnId,
|
1189
|
+
...document
|
1176
1190
|
};
|
1177
1191
|
};
|
1178
1192
|
const useContentManagerContext = () => {
|
@@ -1652,7 +1666,7 @@ const useDocumentActions = () => {
|
|
1652
1666
|
};
|
1653
1667
|
};
|
1654
1668
|
const ProtectedHistoryPage = lazy(
|
1655
|
-
() => import("./History-
|
1669
|
+
() => import("./History-BpLIu67W.mjs").then((mod) => ({ default: mod.ProtectedHistoryPage }))
|
1656
1670
|
);
|
1657
1671
|
const routes$1 = [
|
1658
1672
|
{
|
@@ -1665,31 +1679,31 @@ const routes$1 = [
|
|
1665
1679
|
}
|
1666
1680
|
];
|
1667
1681
|
const ProtectedEditViewPage = lazy(
|
1668
|
-
() => import("./EditViewPage-
|
1682
|
+
() => import("./EditViewPage-al5OO1NR.mjs").then((mod) => ({ default: mod.ProtectedEditViewPage }))
|
1669
1683
|
);
|
1670
1684
|
const ProtectedListViewPage = lazy(
|
1671
|
-
() => import("./ListViewPage-
|
1685
|
+
() => import("./ListViewPage-BbXYNI0v.mjs").then((mod) => ({ default: mod.ProtectedListViewPage }))
|
1672
1686
|
);
|
1673
1687
|
const ProtectedListConfiguration = lazy(
|
1674
|
-
() => import("./ListConfigurationPage-
|
1688
|
+
() => import("./ListConfigurationPage-DOqj5f8Y.mjs").then((mod) => ({
|
1675
1689
|
default: mod.ProtectedListConfiguration
|
1676
1690
|
}))
|
1677
1691
|
);
|
1678
1692
|
const ProtectedEditConfigurationPage = lazy(
|
1679
|
-
() => import("./EditConfigurationPage-
|
1693
|
+
() => import("./EditConfigurationPage-W07CEdm2.mjs").then((mod) => ({
|
1680
1694
|
default: mod.ProtectedEditConfigurationPage
|
1681
1695
|
}))
|
1682
1696
|
);
|
1683
1697
|
const ProtectedComponentConfigurationPage = lazy(
|
1684
|
-
() => import("./ComponentConfigurationPage-
|
1698
|
+
() => import("./ComponentConfigurationPage-jmWwucg_.mjs").then((mod) => ({
|
1685
1699
|
default: mod.ProtectedComponentConfigurationPage
|
1686
1700
|
}))
|
1687
1701
|
);
|
1688
1702
|
const NoPermissions = lazy(
|
1689
|
-
() => import("./NoPermissionsPage-
|
1703
|
+
() => import("./NoPermissionsPage-Km0Vk5Wp.mjs").then((mod) => ({ default: mod.NoPermissions }))
|
1690
1704
|
);
|
1691
1705
|
const NoContentType = lazy(
|
1692
|
-
() => import("./NoContentTypePage-
|
1706
|
+
() => import("./NoContentTypePage-w2Q0VVOT.mjs").then((mod) => ({ default: mod.NoContentType }))
|
1693
1707
|
);
|
1694
1708
|
const CollectionTypePages = () => {
|
1695
1709
|
const { collectionType } = useParams();
|
@@ -2043,6 +2057,18 @@ const DocumentActionModal = ({
|
|
2043
2057
|
typeof Footer === "function" ? /* @__PURE__ */ jsx(Footer, { onClose: handleClose }) : Footer
|
2044
2058
|
] }) });
|
2045
2059
|
};
|
2060
|
+
const transformData = (data) => {
|
2061
|
+
if (Array.isArray(data)) {
|
2062
|
+
return data.map(transformData);
|
2063
|
+
}
|
2064
|
+
if (typeof data === "object" && data !== null) {
|
2065
|
+
if ("apiData" in data) {
|
2066
|
+
return data.apiData;
|
2067
|
+
}
|
2068
|
+
return mapValues(transformData)(data);
|
2069
|
+
}
|
2070
|
+
return data;
|
2071
|
+
};
|
2046
2072
|
const PublishAction$1 = ({
|
2047
2073
|
activeTab,
|
2048
2074
|
documentId,
|
@@ -2156,7 +2182,7 @@ const PublishAction$1 = ({
|
|
2156
2182
|
documentId,
|
2157
2183
|
params
|
2158
2184
|
},
|
2159
|
-
formValues
|
2185
|
+
transformData(formValues)
|
2160
2186
|
);
|
2161
2187
|
if ("data" in res && collectionType !== SINGLE_TYPES) {
|
2162
2188
|
navigate({
|
@@ -2272,7 +2298,7 @@ const UpdateAction = ({
|
|
2272
2298
|
documentId: cloneMatch.params.origin,
|
2273
2299
|
params
|
2274
2300
|
},
|
2275
|
-
document
|
2301
|
+
transformData(document)
|
2276
2302
|
);
|
2277
2303
|
if ("data" in res) {
|
2278
2304
|
navigate(
|
@@ -2293,7 +2319,7 @@ const UpdateAction = ({
|
|
2293
2319
|
documentId,
|
2294
2320
|
params
|
2295
2321
|
},
|
2296
|
-
document
|
2322
|
+
transformData(document)
|
2297
2323
|
);
|
2298
2324
|
if ("error" in res && isBaseQueryError(res.error) && res.error.name === "ValidationError") {
|
2299
2325
|
setErrors(formatValidationErrors(res.error));
|
@@ -2306,7 +2332,7 @@ const UpdateAction = ({
|
|
2306
2332
|
model,
|
2307
2333
|
params
|
2308
2334
|
},
|
2309
|
-
document
|
2335
|
+
transformData(document)
|
2310
2336
|
);
|
2311
2337
|
if ("data" in res && collectionType !== SINGLE_TYPES) {
|
2312
2338
|
navigate(
|
@@ -3996,7 +4022,7 @@ const index = {
|
|
3996
4022
|
app.router.addRoute({
|
3997
4023
|
path: "content-manager/*",
|
3998
4024
|
lazy: async () => {
|
3999
|
-
const { Layout } = await import("./layout-
|
4025
|
+
const { Layout } = await import("./layout-BavJ6v4B.mjs");
|
4000
4026
|
return {
|
4001
4027
|
Component: Layout
|
4002
4028
|
};
|
@@ -4074,4 +4100,4 @@ export {
|
|
4074
4100
|
capitalise as y,
|
4075
4101
|
useUpdateContentTypeConfigurationMutation as z
|
4076
4102
|
};
|
4077
|
-
//# sourceMappingURL=index-
|
4103
|
+
//# sourceMappingURL=index-DcQ6xogO.mjs.map
|