@strapi/content-manager 5.0.0-rc.11 → 5.0.0-rc.13

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 (91) hide show
  1. package/dist/_chunks/{ComponentConfigurationPage-qemkOlnj.mjs → ComponentConfigurationPage-CnL10QYC.mjs} +3 -3
  2. package/dist/_chunks/{ComponentConfigurationPage-qemkOlnj.mjs.map → ComponentConfigurationPage-CnL10QYC.mjs.map} +1 -1
  3. package/dist/_chunks/{ComponentConfigurationPage-D_M8iBw5.js → ComponentConfigurationPage-G4EIirP8.js} +3 -3
  4. package/dist/_chunks/{ComponentConfigurationPage-D_M8iBw5.js.map → ComponentConfigurationPage-G4EIirP8.js.map} +1 -1
  5. package/dist/_chunks/{EditConfigurationPage-BePwPuHy.js → EditConfigurationPage-B2AA1kVF.js} +3 -3
  6. package/dist/_chunks/{EditConfigurationPage-BePwPuHy.js.map → EditConfigurationPage-B2AA1kVF.js.map} +1 -1
  7. package/dist/_chunks/{EditConfigurationPage-CjUrEewK.mjs → EditConfigurationPage-I2kKh9dx.mjs} +3 -3
  8. package/dist/_chunks/{EditConfigurationPage-CjUrEewK.mjs.map → EditConfigurationPage-I2kKh9dx.mjs.map} +1 -1
  9. package/dist/_chunks/{EditViewPage-B-RJeiJD.js → EditViewPage-CHgoNwlc.js} +3 -3
  10. package/dist/_chunks/{EditViewPage-B-RJeiJD.js.map → EditViewPage-CHgoNwlc.js.map} +1 -1
  11. package/dist/_chunks/{EditViewPage-De8GyU8P.mjs → EditViewPage-zFjJK0s8.mjs} +3 -3
  12. package/dist/_chunks/{EditViewPage-De8GyU8P.mjs.map → EditViewPage-zFjJK0s8.mjs.map} +1 -1
  13. package/dist/_chunks/{Field-dq8Tg1M_.js → Field-9DePZh-0.js} +24 -62
  14. package/dist/_chunks/Field-9DePZh-0.js.map +1 -0
  15. package/dist/_chunks/{Field-pb2o8uBe.mjs → Field-DPAzUS1M.mjs} +20 -58
  16. package/dist/_chunks/Field-DPAzUS1M.mjs.map +1 -0
  17. package/dist/_chunks/{Form-DJn0Dxha.mjs → Form-CEkENbkF.mjs} +15 -7
  18. package/dist/_chunks/Form-CEkENbkF.mjs.map +1 -0
  19. package/dist/_chunks/{Form-DGIf4jQU.js → Form-DPm-KZ1A.js} +15 -7
  20. package/dist/_chunks/Form-DPm-KZ1A.js.map +1 -0
  21. package/dist/_chunks/{History-Dh2NEHnR.js → History-DXSbTWez.js} +4 -4
  22. package/dist/_chunks/{History-Dh2NEHnR.js.map → History-DXSbTWez.js.map} +1 -1
  23. package/dist/_chunks/{History-BowL3JKP.mjs → History-utls71em.mjs} +4 -4
  24. package/dist/_chunks/{History-BowL3JKP.mjs.map → History-utls71em.mjs.map} +1 -1
  25. package/dist/_chunks/{ListConfigurationPage-BpVOB-hn.mjs → ListConfigurationPage-CuMXWWqb.mjs} +2 -2
  26. package/dist/_chunks/{ListConfigurationPage-BpVOB-hn.mjs.map → ListConfigurationPage-CuMXWWqb.mjs.map} +1 -1
  27. package/dist/_chunks/{ListConfigurationPage-BxYCWz9e.js → ListConfigurationPage-D5C7ACZ_.js} +2 -2
  28. package/dist/_chunks/{ListConfigurationPage-BxYCWz9e.js.map → ListConfigurationPage-D5C7ACZ_.js.map} +1 -1
  29. package/dist/_chunks/{ListViewPage-CXFUjZQC.mjs → ListViewPage-CdKd-PS_.mjs} +39 -35
  30. package/dist/_chunks/ListViewPage-CdKd-PS_.mjs.map +1 -0
  31. package/dist/_chunks/{ListViewPage-4XsciqHZ.js → ListViewPage-DfuwH1tt.js} +42 -38
  32. package/dist/_chunks/ListViewPage-DfuwH1tt.js.map +1 -0
  33. package/dist/_chunks/{NoContentTypePage-C8OpoHeU.js → NoContentTypePage-BIxlkWWi.js} +2 -2
  34. package/dist/_chunks/{NoContentTypePage-C8OpoHeU.js.map → NoContentTypePage-BIxlkWWi.js.map} +1 -1
  35. package/dist/_chunks/{NoContentTypePage-DuhOTp3x.mjs → NoContentTypePage-DkToTT7u.mjs} +2 -2
  36. package/dist/_chunks/{NoContentTypePage-DuhOTp3x.mjs.map → NoContentTypePage-DkToTT7u.mjs.map} +1 -1
  37. package/dist/_chunks/{NoPermissionsPage-y_r7DVA2.js → NoPermissionsPage-Bu4GWYb-.js} +2 -2
  38. package/dist/_chunks/{NoPermissionsPage-y_r7DVA2.js.map → NoPermissionsPage-Bu4GWYb-.js.map} +1 -1
  39. package/dist/_chunks/{NoPermissionsPage-DVz3mzDz.mjs → NoPermissionsPage-DlWi4BAH.mjs} +2 -2
  40. package/dist/_chunks/{NoPermissionsPage-DVz3mzDz.mjs.map → NoPermissionsPage-DlWi4BAH.mjs.map} +1 -1
  41. package/dist/_chunks/{Relations-DPFCAa7b.js → Relations-CFjTESWQ.js} +3 -3
  42. package/dist/_chunks/{Relations-DPFCAa7b.js.map → Relations-CFjTESWQ.js.map} +1 -1
  43. package/dist/_chunks/{Relations-CVNLrn1Y.mjs → Relations-QP5yn9_z.mjs} +3 -3
  44. package/dist/_chunks/{Relations-CVNLrn1Y.mjs.map → Relations-QP5yn9_z.mjs.map} +1 -1
  45. package/dist/_chunks/{en-uOUIxfcQ.js → en-BVzUkPxZ.js} +6 -5
  46. package/dist/_chunks/{en-uOUIxfcQ.js.map → en-BVzUkPxZ.js.map} +1 -1
  47. package/dist/_chunks/{en-BrCTWlZv.mjs → en-CPTj6CjC.mjs} +6 -5
  48. package/dist/_chunks/{en-BrCTWlZv.mjs.map → en-CPTj6CjC.mjs.map} +1 -1
  49. package/dist/_chunks/{index-DiMrfcfy.mjs → index-BHfS6_D5.mjs} +106 -61
  50. package/dist/_chunks/{index-DiMrfcfy.mjs.map → index-BHfS6_D5.mjs.map} +1 -1
  51. package/dist/_chunks/{index-C3fJE-1-.js → index-DXiHxy70.js} +104 -59
  52. package/dist/_chunks/index-DXiHxy70.js.map +1 -0
  53. package/dist/_chunks/{layout-ls3gxfpH.mjs → layout-DX_52HSH.mjs} +5 -4
  54. package/dist/_chunks/{layout-ls3gxfpH.mjs.map → layout-DX_52HSH.mjs.map} +1 -1
  55. package/dist/_chunks/{layout-C788OmNr.js → layout-bE-WUnQ0.js} +5 -4
  56. package/dist/_chunks/{layout-C788OmNr.js.map → layout-bE-WUnQ0.js.map} +1 -1
  57. package/dist/_chunks/{relations-DYeotliT.js → relations-D706vblp.js} +2 -2
  58. package/dist/_chunks/{relations-DYeotliT.js.map → relations-D706vblp.js.map} +1 -1
  59. package/dist/_chunks/{relations-CLcOmGO0.mjs → relations-SCVAL_aJ.mjs} +2 -2
  60. package/dist/_chunks/{relations-CLcOmGO0.mjs.map → relations-SCVAL_aJ.mjs.map} +1 -1
  61. package/dist/_chunks/{usePrev-B9w_-eYc.js → useDebounce-CtcjDB3L.js} +14 -1
  62. package/dist/_chunks/useDebounce-CtcjDB3L.js.map +1 -0
  63. package/dist/_chunks/useDebounce-DmuSJIF3.mjs +29 -0
  64. package/dist/_chunks/useDebounce-DmuSJIF3.mjs.map +1 -0
  65. package/dist/admin/index.js +1 -1
  66. package/dist/admin/index.mjs +1 -1
  67. package/dist/admin/src/pages/EditView/components/FormInputs/Wysiwyg/WysiwygStyles.d.ts +0 -32
  68. package/dist/admin/src/pages/EditView/components/Header.d.ts +10 -11
  69. package/dist/admin/src/services/documents.d.ts +3 -1
  70. package/dist/server/index.js +18 -5
  71. package/dist/server/index.js.map +1 -1
  72. package/dist/server/index.mjs +18 -5
  73. package/dist/server/index.mjs.map +1 -1
  74. package/dist/server/src/controllers/collection-types.d.ts.map +1 -1
  75. package/dist/server/src/history/services/history.d.ts.map +1 -1
  76. package/dist/server/src/history/services/lifecycles.d.ts.map +1 -1
  77. package/dist/server/src/history/services/utils.d.ts +1 -0
  78. package/dist/server/src/history/services/utils.d.ts.map +1 -1
  79. package/dist/shared/contracts/collection-types.d.ts +3 -1
  80. package/dist/shared/contracts/collection-types.d.ts.map +1 -1
  81. package/package.json +9 -9
  82. package/dist/_chunks/Field-dq8Tg1M_.js.map +0 -1
  83. package/dist/_chunks/Field-pb2o8uBe.mjs.map +0 -1
  84. package/dist/_chunks/Form-DGIf4jQU.js.map +0 -1
  85. package/dist/_chunks/Form-DJn0Dxha.mjs.map +0 -1
  86. package/dist/_chunks/ListViewPage-4XsciqHZ.js.map +0 -1
  87. package/dist/_chunks/ListViewPage-CXFUjZQC.mjs.map +0 -1
  88. package/dist/_chunks/index-C3fJE-1-.js.map +0 -1
  89. package/dist/_chunks/usePrev-B9w_-eYc.js.map +0 -1
  90. package/dist/_chunks/usePrev-DH6iah0A.mjs +0 -16
  91. package/dist/_chunks/usePrev-DH6iah0A.mjs.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useDebounce-DmuSJIF3.mjs","sources":["../../admin/src/utils/urls.ts","../../admin/src/hooks/usePrev.ts","../../admin/src/hooks/useDebounce.ts"],"sourcesContent":["const prefixFileUrlWithBackendUrl = (fileURL?: string): string | undefined => {\n return !!fileURL && fileURL.startsWith('/') ? `${window.strapi.backendURL}${fileURL}` : fileURL;\n};\n\nexport { prefixFileUrlWithBackendUrl };\n","import { useEffect, useRef } from 'react';\n\nexport const usePrev = <T>(value: T): T | undefined => {\n const ref = useRef<T>();\n\n useEffect(() => {\n ref.current = value;\n }, [value]);\n\n return ref.current;\n};\n","import { useEffect, useState } from 'react';\n\nexport function useDebounce<TValue>(value: TValue, delay: number): TValue {\n const [debouncedValue, setDebouncedValue] = useState(value);\n\n useEffect(() => {\n const handler = setTimeout(() => {\n setDebouncedValue(value);\n }, delay);\n\n return () => {\n clearTimeout(handler);\n };\n }, [value, delay]);\n\n return debouncedValue;\n}\n"],"names":[],"mappings":";AAAM,MAAA,8BAA8B,CAAC,YAAyC;AAC5E,SAAO,CAAC,CAAC,WAAW,QAAQ,WAAW,GAAG,IAAI,GAAG,OAAO,OAAO,UAAU,GAAG,OAAO,KAAK;AAC1F;ACAa,MAAA,UAAU,CAAI,UAA4B;AACrD,QAAM,MAAM;AAEZ,YAAU,MAAM;AACd,QAAI,UAAU;AAAA,EAAA,GACb,CAAC,KAAK,CAAC;AAEV,SAAO,IAAI;AACb;ACRgB,SAAA,YAAoB,OAAe,OAAuB;AACxE,QAAM,CAAC,gBAAgB,iBAAiB,IAAI,SAAS,KAAK;AAE1D,YAAU,MAAM;AACR,UAAA,UAAU,WAAW,MAAM;AAC/B,wBAAkB,KAAK;AAAA,OACtB,KAAK;AAER,WAAO,MAAM;AACX,mBAAa,OAAO;AAAA,IAAA;AAAA,EACtB,GACC,CAAC,OAAO,KAAK,CAAC;AAEV,SAAA;AACT;"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
- const index = require("../_chunks/index-C3fJE-1-.js");
3
+ const index = require("../_chunks/index-DXiHxy70.js");
4
4
  require("@strapi/icons");
5
5
  exports.DocumentRBAC = index.DocumentRBAC;
6
6
  exports.buildValidParams = index.buildValidParams;
@@ -1,4 +1,4 @@
1
- import { l, d, K, J, L, h, f } from "../_chunks/index-DiMrfcfy.mjs";
1
+ import { l, d, K, J, L, h, f } from "../_chunks/index-BHfS6_D5.mjs";
2
2
  import "@strapi/icons";
3
3
  export {
4
4
  l as DocumentRBAC,
@@ -1,37 +1,5 @@
1
1
  /// <reference types="react" />
2
2
  import { IconButtonComponent } from '@strapi/design-system';
3
- export declare const CustomIconButton: import("styled-components").IStyledComponent<"web", import("styled-components/dist/types").FastOmit<import("@strapi/design-system").TransientBoxProps & {
4
- children?: import("react").ReactNode;
5
- } & import("@strapi/design-system/dist/types").AsProp<"button"> & Omit<Omit<import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "ref">, "children" | keyof import("@strapi/design-system/dist/types").AsProp<C> | keyof import("@strapi/design-system").TransientBoxProps> & {
6
- ref?: ((instance: HTMLButtonElement | null) => void) | import("react").RefObject<HTMLButtonElement> | null | undefined;
7
- } & import("@strapi/design-system").TransientFlexProps & Pick<import("@strapi/design-system").ButtonProps, "size" | "variant"> & {
8
- children: import("react").ReactNode;
9
- disabled?: boolean | undefined;
10
- label: string;
11
- onClick?: import("react").MouseEventHandler<HTMLButtonElement> | undefined;
12
- withTooltip?: boolean | undefined;
13
- }, never>> & Omit<IconButtonComponent, keyof import("react").Component<any, {}, any>>;
14
- export declare const CustomLinkIconButton: import("styled-components").IStyledComponent<"web", import("styled-components/dist/types").FastOmit<import("styled-components/dist/types").FastOmit<import("@strapi/design-system").TransientBoxProps & {
15
- children?: import("react").ReactNode;
16
- } & import("@strapi/design-system/dist/types").AsProp<"button"> & Omit<Omit<import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "ref">, "children" | keyof import("@strapi/design-system/dist/types").AsProp<C> | keyof import("@strapi/design-system").TransientBoxProps> & {
17
- ref?: ((instance: HTMLButtonElement | null) => void) | import("react").RefObject<HTMLButtonElement> | null | undefined;
18
- } & import("@strapi/design-system").TransientFlexProps & Pick<import("@strapi/design-system").ButtonProps, "size" | "variant"> & {
19
- children: import("react").ReactNode;
20
- disabled?: boolean | undefined;
21
- label: string;
22
- onClick?: import("react").MouseEventHandler<HTMLButtonElement> | undefined;
23
- withTooltip?: boolean | undefined;
24
- }, never>, never>> & Omit<import("styled-components").IStyledComponent<"web", import("styled-components/dist/types").FastOmit<import("@strapi/design-system").TransientBoxProps & {
25
- children?: import("react").ReactNode;
26
- } & import("@strapi/design-system/dist/types").AsProp<"button"> & Omit<Omit<import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "ref">, "children" | keyof import("@strapi/design-system/dist/types").AsProp<C> | keyof import("@strapi/design-system").TransientBoxProps> & {
27
- ref?: ((instance: HTMLButtonElement | null) => void) | import("react").RefObject<HTMLButtonElement> | null | undefined;
28
- } & import("@strapi/design-system").TransientFlexProps & Pick<import("@strapi/design-system").ButtonProps, "size" | "variant"> & {
29
- children: import("react").ReactNode;
30
- disabled?: boolean | undefined;
31
- label: string;
32
- onClick?: import("react").MouseEventHandler<HTMLButtonElement> | undefined;
33
- withTooltip?: boolean | undefined;
34
- }, never>> & Omit<IconButtonComponent, keyof import("react").Component<any, {}, any>>, keyof import("react").Component<any, {}, any>>;
35
3
  export declare const MainButtons: import("styled-components").IStyledComponent<"web", import("styled-components/dist/types").FastOmit<any, never>> | (import("styled-components").IStyledComponent<"web", import("styled-components/dist/types").FastOmit<any, never>> & Omit<any, keyof import("react").Component<any, {}, any>>);
36
4
  export declare const MoreButton: import("styled-components").IStyledComponent<"web", import("styled-components/dist/types").FastOmit<import("@strapi/design-system").TransientBoxProps & {
37
5
  children?: import("react").ReactNode;
@@ -6,20 +6,20 @@ interface HeaderProps {
6
6
  title?: string;
7
7
  }
8
8
  declare const Header: ({ isCreating, status, title: documentTitle }: HeaderProps) => import("react/jsx-runtime").JSX.Element;
9
- interface HeaderButtonAction {
9
+ interface DialogOptions {
10
+ type: 'dialog';
11
+ title: string;
12
+ content?: React.ReactNode;
13
+ footer?: React.ReactNode;
14
+ }
15
+ interface HeaderActionDescription {
10
16
  disabled?: boolean;
11
17
  label: string;
12
18
  icon?: React.ReactNode;
13
- /**
14
- * @default 'default'
15
- */
16
19
  type?: 'icon' | 'default';
17
- onClick?: (event: React.SyntheticEvent) => void;
18
- }
19
- interface HeaderSelectAction {
20
- disabled?: boolean;
21
- label: string;
22
- options: Array<{
20
+ onClick?: (event: React.SyntheticEvent) => Promise<boolean | void> | boolean | void;
21
+ dialog?: DialogOptions;
22
+ options?: Array<{
23
23
  disabled?: boolean;
24
24
  label: string;
25
25
  startIcon?: React.ReactNode;
@@ -29,7 +29,6 @@ interface HeaderSelectAction {
29
29
  onSelect?: (value: string) => void;
30
30
  value?: string;
31
31
  }
32
- type HeaderActionDescription = HeaderButtonAction | HeaderSelectAction;
33
32
  declare const DEFAULT_HEADER_ACTIONS: DocumentActionComponent[];
34
33
  export { Header, DEFAULT_HEADER_ACTIONS };
35
34
  export type { HeaderProps, HeaderActionDescription };
@@ -96,6 +96,8 @@ declare const useAutoCloneDocumentMutation: import("@reduxjs/toolkit/dist/query/
96
96
  }, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "ComponentConfiguration" | "ContentTypesConfiguration" | "ContentTypeSettings" | "Document" | "InitialData" | "HistoryVersion" | "Relations" | "UidAvailability", Unpublish.Response, "adminApi">>, useUnpublishManyDocumentsMutation: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseMutation<import("@reduxjs/toolkit/query").MutationDefinition<Pick<BulkUnpublish.Params, "model"> & {
97
97
  documentIds: string[];
98
98
  } & {
99
- params?: {} | undefined;
99
+ params?: {
100
+ locale?: string | string[] | null | undefined;
101
+ } | undefined;
100
102
  }, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "ComponentConfiguration" | "ContentTypesConfiguration" | "ContentTypeSettings" | "Document" | "InitialData" | "HistoryVersion" | "Relations" | "UidAvailability", BulkUnpublish.Response, "adminApi">>;
101
103
  export { useAutoCloneDocumentMutation, useCloneDocumentMutation, useCreateDocumentMutation, useDeleteDocumentMutation, useDeleteManyDocumentsMutation, useDiscardDocumentMutation, useGetAllDocumentsQuery, useLazyGetDocumentQuery, useGetDocumentQuery, useLazyGetDraftRelationCountQuery as useGetDraftRelationCountQuery, useGetManyDraftRelationCountQuery, usePublishDocumentMutation, usePublishManyDocumentsMutation, useUpdateDocumentMutation, useUnpublishDocumentMutation, useUnpublishManyDocumentsMutation, };
@@ -199,7 +199,9 @@ const createServiceUtils = ({ strapi: strapi2 }) => {
199
199
  return strapi2.db.query("plugin::upload.file").findOne({ where: { id: versionRelationData.id } });
200
200
  };
201
201
  const localesService = strapi2.plugin("i18n")?.service("locales");
202
+ const i18nContentTypeService = strapi2.plugin("i18n")?.service("content-types");
202
203
  const getDefaultLocale = async () => localesService ? localesService.getDefaultLocale() : null;
204
+ const isLocalizedContentType = (model) => i18nContentTypeService ? i18nContentTypeService.isLocalizedContentType(model) : false;
203
205
  const getLocaleDictionary = async () => {
204
206
  if (!localesService)
205
207
  return {};
@@ -317,6 +319,7 @@ const createServiceUtils = ({ strapi: strapi2 }) => {
317
319
  getRelationRestoreValue,
318
320
  getMediaRestoreValue,
319
321
  getDefaultLocale,
322
+ isLocalizedContentType,
320
323
  getLocaleDictionary,
321
324
  getRetentionDays,
322
325
  getVersionStatus,
@@ -339,7 +342,13 @@ const createHistoryService = ({ strapi: strapi2 }) => {
339
342
  });
340
343
  },
341
344
  async findVersionsPage(params) {
342
- const locale = params.query.locale || await serviceUtils.getDefaultLocale();
345
+ const model = strapi2.getModel(params.query.contentType);
346
+ const isLocalizedContentType = serviceUtils.isLocalizedContentType(model);
347
+ const defaultLocale = await serviceUtils.getDefaultLocale();
348
+ let locale = null;
349
+ if (isLocalizedContentType) {
350
+ locale = params.query.locale || defaultLocale;
351
+ }
343
352
  const [{ results, pagination }, localeDictionary] = await Promise.all([
344
353
  query.findPage({
345
354
  ...params.query,
@@ -555,11 +564,13 @@ const createLifecyclesService = ({ strapi: strapi2 }) => {
555
564
  }
556
565
  const uid2 = context.contentType.uid;
557
566
  const schemas = getSchemas(uid2);
567
+ const model = strapi2.getModel(uid2);
568
+ const isLocalizedContentType = serviceUtils.isLocalizedContentType(model);
558
569
  const localeEntries = await strapi2.db.query(uid2).findMany({
559
570
  where: {
560
571
  documentId,
561
- locale: { $in: locales },
562
- publishedAt: null
572
+ ...isLocalizedContentType ? { locale: { $in: locales } } : {},
573
+ ...strapiUtils.contentTypes.hasDraftAndPublish(strapi2.contentTypes[uid2]) ? { publishedAt: null } : {}
563
574
  },
564
575
  populate: serviceUtils.getDeepPopulate(
565
576
  uid2,
@@ -1776,7 +1787,7 @@ const collectionTypes = {
1776
1787
  permissionChecker2,
1777
1788
  model,
1778
1789
  // @ts-expect-error TODO: fix
1779
- { id, locale, publishedAt: null },
1790
+ { documentId: id, locale, publishedAt: null },
1780
1791
  { availableLocales: true, availableStatus: false }
1781
1792
  );
1782
1793
  ctx.body = { data: {}, meta };
@@ -1979,7 +1990,9 @@ const collectionTypes = {
1979
1990
  if (permissionChecker2.cannot.unpublish()) {
1980
1991
  return ctx.forbidden();
1981
1992
  }
1982
- const { locale } = await getDocumentLocaleAndStatus(body, model);
1993
+ const { locale } = await getDocumentLocaleAndStatus(body, model, {
1994
+ allowMultipleLocales: true
1995
+ });
1983
1996
  const entityPromises = documentIds.map(
1984
1997
  (documentId) => documentManager2.findLocales(documentId, model, { locale, isPublished: true })
1985
1998
  );