@strapi/content-manager 0.0.0-experimental.5788c38836be65c0321a2dcadbdf44f04b798e8a → 0.0.0-experimental.5a6cf698f4104d2c95bb57a4c7beaca233d26e5a

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 (72) hide show
  1. package/dist/_chunks/{ComponentConfigurationPage-D1YuKq8j.mjs → ComponentConfigurationPage-DfFSZQxe.mjs} +3 -3
  2. package/dist/_chunks/{ComponentConfigurationPage-D1YuKq8j.mjs.map → ComponentConfigurationPage-DfFSZQxe.mjs.map} +1 -1
  3. package/dist/_chunks/{ComponentConfigurationPage-B42mQr1K.js → ComponentConfigurationPage-FqfsxQ1j.js} +3 -3
  4. package/dist/_chunks/{ComponentConfigurationPage-B42mQr1K.js.map → ComponentConfigurationPage-FqfsxQ1j.js.map} +1 -1
  5. package/dist/_chunks/{EditConfigurationPage-NC89F29V.js → EditConfigurationPage-Cn0e8t3I.js} +3 -3
  6. package/dist/_chunks/{EditConfigurationPage-NC89F29V.js.map → EditConfigurationPage-Cn0e8t3I.js.map} +1 -1
  7. package/dist/_chunks/{EditConfigurationPage-C9yiwgI_.mjs → EditConfigurationPage-DdPNAbl3.mjs} +3 -3
  8. package/dist/_chunks/{EditConfigurationPage-C9yiwgI_.mjs.map → EditConfigurationPage-DdPNAbl3.mjs.map} +1 -1
  9. package/dist/_chunks/{EditViewPage-k8UcfVwt.mjs → EditViewPage-B82x_x1b.mjs} +3 -3
  10. package/dist/_chunks/{EditViewPage-k8UcfVwt.mjs.map → EditViewPage-B82x_x1b.mjs.map} +1 -1
  11. package/dist/_chunks/{EditViewPage-DYDpe5Wi.js → EditViewPage-DlxEHhUt.js} +3 -3
  12. package/dist/_chunks/{EditViewPage-DYDpe5Wi.js.map → EditViewPage-DlxEHhUt.js.map} +1 -1
  13. package/dist/_chunks/{Field-Crhugun2.js → Field-COL25JiC.js} +11 -7
  14. package/dist/_chunks/Field-COL25JiC.js.map +1 -0
  15. package/dist/_chunks/{Field-BLL5lknV.mjs → Field-DufHXW17.mjs} +11 -7
  16. package/dist/_chunks/Field-DufHXW17.mjs.map +1 -0
  17. package/dist/_chunks/{Form-DUU19g6M.js → Form-BssUwrTO.js} +3 -3
  18. package/dist/_chunks/Form-BssUwrTO.js.map +1 -0
  19. package/dist/_chunks/{Form-UHu2eOuG.mjs → Form-u_kAOhwB.mjs} +3 -3
  20. package/dist/_chunks/Form-u_kAOhwB.mjs.map +1 -0
  21. package/dist/_chunks/{History-CyA8tvJZ.js → History-C9t9UqpO.js} +23 -10
  22. package/dist/_chunks/History-C9t9UqpO.js.map +1 -0
  23. package/dist/_chunks/{History-CpxkZXS3.mjs → History-DRwA3oMM.mjs} +24 -11
  24. package/dist/_chunks/History-DRwA3oMM.mjs.map +1 -0
  25. package/dist/_chunks/{ListConfigurationPage-pJV7aG2V.js → ListConfigurationPage-BXYPohh-.js} +2 -2
  26. package/dist/_chunks/{ListConfigurationPage-pJV7aG2V.js.map → ListConfigurationPage-BXYPohh-.js.map} +1 -1
  27. package/dist/_chunks/{ListConfigurationPage-OUwV8QF1.mjs → ListConfigurationPage-BxfQJzPk.mjs} +2 -2
  28. package/dist/_chunks/{ListConfigurationPage-OUwV8QF1.mjs.map → ListConfigurationPage-BxfQJzPk.mjs.map} +1 -1
  29. package/dist/_chunks/{ListViewPage-BOnhCGkE.mjs → ListViewPage-CELx2ysp.mjs} +3 -3
  30. package/dist/_chunks/{ListViewPage-BOnhCGkE.mjs.map → ListViewPage-CELx2ysp.mjs.map} +1 -1
  31. package/dist/_chunks/{ListViewPage-BIT0M8VG.js → ListViewPage-D2VD8Szg.js} +3 -3
  32. package/dist/_chunks/{ListViewPage-BIT0M8VG.js.map → ListViewPage-D2VD8Szg.js.map} +1 -1
  33. package/dist/_chunks/{NoContentTypePage-uIBsBUmH.js → NoContentTypePage-BV9IjJSM.js} +2 -2
  34. package/dist/_chunks/{NoContentTypePage-uIBsBUmH.js.map → NoContentTypePage-BV9IjJSM.js.map} +1 -1
  35. package/dist/_chunks/{NoContentTypePage-CwjlHGTn.mjs → NoContentTypePage-DtJ9jcfk.mjs} +2 -2
  36. package/dist/_chunks/{NoContentTypePage-CwjlHGTn.mjs.map → NoContentTypePage-DtJ9jcfk.mjs.map} +1 -1
  37. package/dist/_chunks/{NoPermissionsPage-CcWbyT_z.mjs → NoPermissionsPage-DWleVYK7.mjs} +2 -2
  38. package/dist/_chunks/{NoPermissionsPage-CcWbyT_z.mjs.map → NoPermissionsPage-DWleVYK7.mjs.map} +1 -1
  39. package/dist/_chunks/{NoPermissionsPage-C8wkEaOF.js → NoPermissionsPage-Dp8NpF9I.js} +2 -2
  40. package/dist/_chunks/{NoPermissionsPage-C8wkEaOF.js.map → NoPermissionsPage-Dp8NpF9I.js.map} +1 -1
  41. package/dist/_chunks/{Relations-wIdWJnA9.mjs → Relations-BTcf5xaw.mjs} +3 -3
  42. package/dist/_chunks/{Relations-wIdWJnA9.mjs.map → Relations-BTcf5xaw.mjs.map} +1 -1
  43. package/dist/_chunks/{Relations-CwRu_eZv.js → Relations-DR7EUgyC.js} +3 -3
  44. package/dist/_chunks/{Relations-CwRu_eZv.js.map → Relations-DR7EUgyC.js.map} +1 -1
  45. package/dist/_chunks/{index-BO-T2BdP.js → index-BdMf2lfT.js} +34 -21
  46. package/dist/_chunks/index-BdMf2lfT.js.map +1 -0
  47. package/dist/_chunks/{index-BQ8DxaCa.mjs → index-wnqzm4Q8.mjs} +35 -22
  48. package/dist/_chunks/index-wnqzm4Q8.mjs.map +1 -0
  49. package/dist/_chunks/{layout-N63eyE5E.mjs → layout-2CfjL0T9.mjs} +3 -3
  50. package/dist/_chunks/{layout-N63eyE5E.mjs.map → layout-2CfjL0T9.mjs.map} +1 -1
  51. package/dist/_chunks/{layout-BTB1_M8g.js → layout-B2MyZU-_.js} +3 -3
  52. package/dist/_chunks/{layout-BTB1_M8g.js.map → layout-B2MyZU-_.js.map} +1 -1
  53. package/dist/_chunks/{relations-C9AQuM2z.js → relations-BH7JJGGe.js} +2 -2
  54. package/dist/_chunks/{relations-C9AQuM2z.js.map → relations-BH7JJGGe.js.map} +1 -1
  55. package/dist/_chunks/{relations-Bh9r0CVE.mjs → relations-C0w0GcXi.mjs} +2 -2
  56. package/dist/_chunks/{relations-Bh9r0CVE.mjs.map → relations-C0w0GcXi.mjs.map} +1 -1
  57. package/dist/admin/index.js +1 -1
  58. package/dist/admin/index.mjs +1 -1
  59. package/dist/server/index.js +6 -1
  60. package/dist/server/index.js.map +1 -1
  61. package/dist/server/index.mjs +6 -1
  62. package/dist/server/index.mjs.map +1 -1
  63. package/dist/server/src/history/services/history.d.ts.map +1 -1
  64. package/package.json +7 -7
  65. package/dist/_chunks/Field-BLL5lknV.mjs.map +0 -1
  66. package/dist/_chunks/Field-Crhugun2.js.map +0 -1
  67. package/dist/_chunks/Form-DUU19g6M.js.map +0 -1
  68. package/dist/_chunks/Form-UHu2eOuG.mjs.map +0 -1
  69. package/dist/_chunks/History-CpxkZXS3.mjs.map +0 -1
  70. package/dist/_chunks/History-CyA8tvJZ.js.map +0 -1
  71. package/dist/_chunks/index-BO-T2BdP.js.map +0 -1
  72. package/dist/_chunks/index-BQ8DxaCa.mjs.map +0 -1
@@ -1,6 +1,6 @@
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, useQueryParams, getYupValidationErrors, useForm, useTracking, useGuidedTour, BackButton, DescriptionComponentRenderer, useTable, Table } from "@strapi/admin/strapi-admin";
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";
@@ -100,6 +100,7 @@ const DocumentRBAC = ({ children, permissions }) => {
100
100
  if (!slug) {
101
101
  throw new Error("Cannot find the slug param in the URL");
102
102
  }
103
+ const [{ rawQuery }] = useQueryParams();
103
104
  const userPermissions = useAuth("DocumentRBAC", (state) => state.permissions);
104
105
  const contentTypePermissions = React.useMemo(() => {
105
106
  const contentTypePermissions2 = userPermissions.filter(
@@ -110,7 +111,14 @@ const DocumentRBAC = ({ children, permissions }) => {
110
111
  return { ...acc, [action]: [permission] };
111
112
  }, {});
112
113
  }, [slug, userPermissions]);
113
- const { isLoading, allowedActions } = useRBAC(contentTypePermissions, permissions ?? void 0);
114
+ const { isLoading, allowedActions } = useRBAC(
115
+ contentTypePermissions,
116
+ permissions ?? void 0,
117
+ // TODO: useRBAC context should be typed and built differently
118
+ // We are passing raw query as context to the hook so that it can
119
+ // rely on the locale provided from DocumentRBAC for its permission calculations.
120
+ rawQuery
121
+ );
114
122
  const canCreateFields = !isLoading && allowedActions.canCreate ? extractAndDedupeFields(contentTypePermissions.create) : [];
115
123
  const canReadFields = !isLoading && allowedActions.canRead ? extractAndDedupeFields(contentTypePermissions.read) : [];
116
124
  const canUpdateFields = !isLoading && allowedActions.canUpdate ? extractAndDedupeFields(contentTypePermissions.update) : [];
@@ -461,12 +469,15 @@ const buildValidParams = (query) => {
461
469
  const isBaseQueryError = (error) => {
462
470
  return error.name !== void 0;
463
471
  };
464
- const arrayValidator = (options) => ({
472
+ const arrayValidator = (attribute, options) => ({
465
473
  message: translatedErrors.required,
466
474
  test(value) {
467
475
  if (options.status === "draft") {
468
476
  return true;
469
477
  }
478
+ if (!attribute.required) {
479
+ return true;
480
+ }
470
481
  if (!value) {
471
482
  return false;
472
483
  }
@@ -500,7 +511,7 @@ const createYupSchema = (attributes = {}, components = {}, options = { status: n
500
511
  ...acc,
501
512
  [name]: transformSchema(
502
513
  yup.array().of(createModelSchema(attributes3).nullable(false))
503
- ).test(arrayValidator(options))
514
+ ).test(arrayValidator(attribute, options))
504
515
  };
505
516
  } else {
506
517
  return {
@@ -527,7 +538,7 @@ const createYupSchema = (attributes = {}, components = {}, options = { status: n
527
538
  }
528
539
  )
529
540
  )
530
- ).test(arrayValidator(options))
541
+ ).test(arrayValidator(attribute, options))
531
542
  };
532
543
  case "relation":
533
544
  return {
@@ -1163,16 +1174,18 @@ const useDoc = () => {
1163
1174
  if (!slug) {
1164
1175
  throw new Error("Could not find model in url params");
1165
1176
  }
1177
+ const document = useDocument(
1178
+ { documentId: origin || id, model: slug, collectionType, params },
1179
+ {
1180
+ skip: id === "create" || !origin && !id && collectionType !== SINGLE_TYPES
1181
+ }
1182
+ );
1183
+ const returnId = origin || id === "create" ? void 0 : id;
1166
1184
  return {
1167
1185
  collectionType,
1168
1186
  model: slug,
1169
- id: origin || id === "create" ? void 0 : id,
1170
- ...useDocument(
1171
- { documentId: origin || id, model: slug, collectionType, params },
1172
- {
1173
- skip: id === "create" || !origin && !id && collectionType !== SINGLE_TYPES
1174
- }
1175
- )
1187
+ id: returnId,
1188
+ ...document
1176
1189
  };
1177
1190
  };
1178
1191
  const useContentManagerContext = () => {
@@ -1652,7 +1665,7 @@ const useDocumentActions = () => {
1652
1665
  };
1653
1666
  };
1654
1667
  const ProtectedHistoryPage = lazy(
1655
- () => import("./History-CpxkZXS3.mjs").then((mod) => ({ default: mod.ProtectedHistoryPage }))
1668
+ () => import("./History-DRwA3oMM.mjs").then((mod) => ({ default: mod.ProtectedHistoryPage }))
1656
1669
  );
1657
1670
  const routes$1 = [
1658
1671
  {
@@ -1665,31 +1678,31 @@ const routes$1 = [
1665
1678
  }
1666
1679
  ];
1667
1680
  const ProtectedEditViewPage = lazy(
1668
- () => import("./EditViewPage-k8UcfVwt.mjs").then((mod) => ({ default: mod.ProtectedEditViewPage }))
1681
+ () => import("./EditViewPage-B82x_x1b.mjs").then((mod) => ({ default: mod.ProtectedEditViewPage }))
1669
1682
  );
1670
1683
  const ProtectedListViewPage = lazy(
1671
- () => import("./ListViewPage-BOnhCGkE.mjs").then((mod) => ({ default: mod.ProtectedListViewPage }))
1684
+ () => import("./ListViewPage-CELx2ysp.mjs").then((mod) => ({ default: mod.ProtectedListViewPage }))
1672
1685
  );
1673
1686
  const ProtectedListConfiguration = lazy(
1674
- () => import("./ListConfigurationPage-OUwV8QF1.mjs").then((mod) => ({
1687
+ () => import("./ListConfigurationPage-BxfQJzPk.mjs").then((mod) => ({
1675
1688
  default: mod.ProtectedListConfiguration
1676
1689
  }))
1677
1690
  );
1678
1691
  const ProtectedEditConfigurationPage = lazy(
1679
- () => import("./EditConfigurationPage-C9yiwgI_.mjs").then((mod) => ({
1692
+ () => import("./EditConfigurationPage-DdPNAbl3.mjs").then((mod) => ({
1680
1693
  default: mod.ProtectedEditConfigurationPage
1681
1694
  }))
1682
1695
  );
1683
1696
  const ProtectedComponentConfigurationPage = lazy(
1684
- () => import("./ComponentConfigurationPage-D1YuKq8j.mjs").then((mod) => ({
1697
+ () => import("./ComponentConfigurationPage-DfFSZQxe.mjs").then((mod) => ({
1685
1698
  default: mod.ProtectedComponentConfigurationPage
1686
1699
  }))
1687
1700
  );
1688
1701
  const NoPermissions = lazy(
1689
- () => import("./NoPermissionsPage-CcWbyT_z.mjs").then((mod) => ({ default: mod.NoPermissions }))
1702
+ () => import("./NoPermissionsPage-DWleVYK7.mjs").then((mod) => ({ default: mod.NoPermissions }))
1690
1703
  );
1691
1704
  const NoContentType = lazy(
1692
- () => import("./NoContentTypePage-CwjlHGTn.mjs").then((mod) => ({ default: mod.NoContentType }))
1705
+ () => import("./NoContentTypePage-DtJ9jcfk.mjs").then((mod) => ({ default: mod.NoContentType }))
1693
1706
  );
1694
1707
  const CollectionTypePages = () => {
1695
1708
  const { collectionType } = useParams();
@@ -3996,7 +4009,7 @@ const index = {
3996
4009
  app.router.addRoute({
3997
4010
  path: "content-manager/*",
3998
4011
  lazy: async () => {
3999
- const { Layout } = await import("./layout-N63eyE5E.mjs");
4012
+ const { Layout } = await import("./layout-2CfjL0T9.mjs");
4000
4013
  return {
4001
4014
  Component: Layout
4002
4015
  };
@@ -4074,4 +4087,4 @@ export {
4074
4087
  capitalise as y,
4075
4088
  useUpdateContentTypeConfigurationMutation as z
4076
4089
  };
4077
- //# sourceMappingURL=index-BQ8DxaCa.mjs.map
4090
+ //# sourceMappingURL=index-wnqzm4Q8.mjs.map