@strapi/content-manager 5.30.0 → 5.31.0

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 (170) hide show
  1. package/dist/admin/components/ComponentIcon.js +3 -0
  2. package/dist/admin/components/ComponentIcon.js.map +1 -1
  3. package/dist/admin/components/ComponentIcon.mjs +3 -0
  4. package/dist/admin/components/ComponentIcon.mjs.map +1 -1
  5. package/dist/admin/components/ConfigurationForm/Fields.js.map +1 -1
  6. package/dist/admin/components/ConfigurationForm/Fields.mjs.map +1 -1
  7. package/dist/admin/components/RelativeTime.js.map +1 -1
  8. package/dist/admin/components/RelativeTime.mjs.map +1 -1
  9. package/dist/admin/components/Widgets.js.map +1 -1
  10. package/dist/admin/components/Widgets.mjs.map +1 -1
  11. package/dist/admin/content-manager.js.map +1 -1
  12. package/dist/admin/content-manager.mjs.map +1 -1
  13. package/dist/admin/history/components/HistoryAction.js.map +1 -1
  14. package/dist/admin/history/components/HistoryAction.mjs.map +1 -1
  15. package/dist/admin/history/components/VersionHeader.js.map +1 -1
  16. package/dist/admin/history/components/VersionHeader.mjs.map +1 -1
  17. package/dist/admin/history/components/VersionInputRenderer.js.map +1 -1
  18. package/dist/admin/history/components/VersionInputRenderer.mjs.map +1 -1
  19. package/dist/admin/history/components/VersionsList.js.map +1 -1
  20. package/dist/admin/history/components/VersionsList.mjs.map +1 -1
  21. package/dist/admin/history/pages/History.js.map +1 -1
  22. package/dist/admin/history/pages/History.mjs.map +1 -1
  23. package/dist/admin/history/services/historyVersion.js.map +1 -1
  24. package/dist/admin/history/services/historyVersion.mjs.map +1 -1
  25. package/dist/admin/hooks/useContentManagerInitData.js.map +1 -1
  26. package/dist/admin/hooks/useContentManagerInitData.mjs.map +1 -1
  27. package/dist/admin/hooks/useDocumentActions.js +24 -5
  28. package/dist/admin/hooks/useDocumentActions.js.map +1 -1
  29. package/dist/admin/hooks/useDocumentActions.mjs +24 -5
  30. package/dist/admin/hooks/useDocumentActions.mjs.map +1 -1
  31. package/dist/admin/index.js.map +1 -1
  32. package/dist/admin/index.mjs.map +1 -1
  33. package/dist/admin/pages/EditView/components/DocumentActions.js +5 -3
  34. package/dist/admin/pages/EditView/components/DocumentActions.js.map +1 -1
  35. package/dist/admin/pages/EditView/components/DocumentActions.mjs +5 -3
  36. package/dist/admin/pages/EditView/components/DocumentActions.mjs.map +1 -1
  37. package/dist/admin/pages/EditView/components/DocumentStatus.js.map +1 -1
  38. package/dist/admin/pages/EditView/components/DocumentStatus.mjs.map +1 -1
  39. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/Blocks/Code.js.map +1 -1
  40. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/Blocks/Code.mjs.map +1 -1
  41. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/Blocks/Link.js.map +1 -1
  42. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/Blocks/Link.mjs.map +1 -1
  43. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/Blocks/Quote.js.map +1 -1
  44. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/Blocks/Quote.mjs.map +1 -1
  45. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/BlocksContent.js.map +1 -1
  46. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/BlocksContent.mjs.map +1 -1
  47. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/BlocksToolbar.js.map +1 -1
  48. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/BlocksToolbar.mjs.map +1 -1
  49. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/Modifiers.js.map +1 -1
  50. package/dist/admin/pages/EditView/components/FormInputs/BlocksInput/Modifiers.mjs.map +1 -1
  51. package/dist/admin/pages/EditView/components/FormInputs/Component/NonRepeatable.js.map +1 -1
  52. package/dist/admin/pages/EditView/components/FormInputs/Component/NonRepeatable.mjs.map +1 -1
  53. package/dist/admin/pages/EditView/components/FormInputs/Component/Repeatable.js.map +1 -1
  54. package/dist/admin/pages/EditView/components/FormInputs/Component/Repeatable.mjs.map +1 -1
  55. package/dist/admin/pages/EditView/components/FormInputs/DynamicZone/DynamicComponent.js.map +1 -1
  56. package/dist/admin/pages/EditView/components/FormInputs/DynamicZone/DynamicComponent.mjs.map +1 -1
  57. package/dist/admin/pages/EditView/components/FormInputs/DynamicZone/Field.js.map +1 -1
  58. package/dist/admin/pages/EditView/components/FormInputs/DynamicZone/Field.mjs.map +1 -1
  59. package/dist/admin/pages/EditView/components/FormInputs/Relations/RelationModal.js +1 -0
  60. package/dist/admin/pages/EditView/components/FormInputs/Relations/RelationModal.js.map +1 -1
  61. package/dist/admin/pages/EditView/components/FormInputs/Relations/RelationModal.mjs +1 -0
  62. package/dist/admin/pages/EditView/components/FormInputs/Relations/RelationModal.mjs.map +1 -1
  63. package/dist/admin/pages/EditView/components/FormInputs/Relations/Relations.js.map +1 -1
  64. package/dist/admin/pages/EditView/components/FormInputs/Relations/Relations.mjs.map +1 -1
  65. package/dist/admin/pages/EditView/components/FormInputs/Wysiwyg/Editor.js.map +1 -1
  66. package/dist/admin/pages/EditView/components/FormInputs/Wysiwyg/Editor.mjs.map +1 -1
  67. package/dist/admin/pages/EditView/components/FormInputs/Wysiwyg/EditorLayout.js.map +1 -1
  68. package/dist/admin/pages/EditView/components/FormInputs/Wysiwyg/EditorLayout.mjs.map +1 -1
  69. package/dist/admin/pages/EditView/components/FormInputs/Wysiwyg/PreviewWysiwyg.js.map +1 -1
  70. package/dist/admin/pages/EditView/components/FormInputs/Wysiwyg/PreviewWysiwyg.mjs.map +1 -1
  71. package/dist/admin/pages/EditView/components/FormInputs/Wysiwyg/WysiwygStyles.js.map +1 -1
  72. package/dist/admin/pages/EditView/components/FormInputs/Wysiwyg/WysiwygStyles.mjs.map +1 -1
  73. package/dist/admin/pages/EditView/components/FormInputs/Wysiwyg/utils/utils.js.map +1 -1
  74. package/dist/admin/pages/EditView/components/FormInputs/Wysiwyg/utils/utils.mjs.map +1 -1
  75. package/dist/admin/pages/EditView/components/FormLayout.js.map +1 -1
  76. package/dist/admin/pages/EditView/components/FormLayout.mjs.map +1 -1
  77. package/dist/admin/pages/EditView/components/Header.js.map +1 -1
  78. package/dist/admin/pages/EditView/components/Header.mjs.map +1 -1
  79. package/dist/admin/pages/EditView/components/InputRenderer.js +19 -17
  80. package/dist/admin/pages/EditView/components/InputRenderer.js.map +1 -1
  81. package/dist/admin/pages/EditView/components/InputRenderer.mjs +19 -17
  82. package/dist/admin/pages/EditView/components/InputRenderer.mjs.map +1 -1
  83. package/dist/admin/pages/EditView/utils/data.js.map +1 -1
  84. package/dist/admin/pages/EditView/utils/data.mjs.map +1 -1
  85. package/dist/admin/pages/ListConfiguration/ListConfigurationPage.js.map +1 -1
  86. package/dist/admin/pages/ListConfiguration/ListConfigurationPage.mjs.map +1 -1
  87. package/dist/admin/pages/ListConfiguration/components/DraggableCard.js.map +1 -1
  88. package/dist/admin/pages/ListConfiguration/components/DraggableCard.mjs.map +1 -1
  89. package/dist/admin/pages/ListConfiguration/components/Header.js.map +1 -1
  90. package/dist/admin/pages/ListConfiguration/components/Header.mjs.map +1 -1
  91. package/dist/admin/pages/ListView/ListViewPage.js +0 -2
  92. package/dist/admin/pages/ListView/ListViewPage.js.map +1 -1
  93. package/dist/admin/pages/ListView/ListViewPage.mjs +0 -2
  94. package/dist/admin/pages/ListView/ListViewPage.mjs.map +1 -1
  95. package/dist/admin/pages/ListView/components/AutoCloneFailureModal.js.map +1 -1
  96. package/dist/admin/pages/ListView/components/AutoCloneFailureModal.mjs.map +1 -1
  97. package/dist/admin/pages/ListView/components/BulkActions/PublishAction.js.map +1 -1
  98. package/dist/admin/pages/ListView/components/BulkActions/PublishAction.mjs.map +1 -1
  99. package/dist/admin/pages/ListView/components/TableActions.js.map +1 -1
  100. package/dist/admin/pages/ListView/components/TableActions.mjs.map +1 -1
  101. package/dist/admin/pages/ListView/components/TableCells/Media.js.map +1 -1
  102. package/dist/admin/pages/ListView/components/TableCells/Media.mjs.map +1 -1
  103. package/dist/admin/preview/services/preview.js.map +1 -1
  104. package/dist/admin/preview/services/preview.mjs.map +1 -1
  105. package/dist/admin/preview/utils/fieldUtils.js.map +1 -1
  106. package/dist/admin/preview/utils/fieldUtils.mjs.map +1 -1
  107. package/dist/admin/preview/utils/previewScript.js.map +1 -1
  108. package/dist/admin/preview/utils/previewScript.mjs.map +1 -1
  109. package/dist/admin/router.js.map +1 -1
  110. package/dist/admin/router.mjs.map +1 -1
  111. package/dist/admin/services/documents.js.map +1 -1
  112. package/dist/admin/services/documents.mjs.map +1 -1
  113. package/dist/admin/services/homepage.js.map +1 -1
  114. package/dist/admin/services/homepage.mjs.map +1 -1
  115. package/dist/admin/services/relations.js.map +1 -1
  116. package/dist/admin/services/relations.mjs.map +1 -1
  117. package/dist/admin/src/history/services/historyVersion.d.ts +1 -1
  118. package/dist/admin/src/preview/services/preview.d.ts +1 -1
  119. package/dist/admin/src/services/api.d.ts +1 -1
  120. package/dist/admin/src/services/components.d.ts +2 -2
  121. package/dist/admin/src/services/contentTypes.d.ts +3 -3
  122. package/dist/admin/src/services/documents.d.ts +16 -16
  123. package/dist/admin/src/services/homepage.d.ts +1 -1
  124. package/dist/admin/src/services/init.d.ts +1 -1
  125. package/dist/admin/src/services/relations.d.ts +2 -2
  126. package/dist/admin/src/services/uid.d.ts +3 -3
  127. package/dist/admin/translations/fr.json.js +1 -1
  128. package/dist/admin/translations/fr.json.mjs +1 -1
  129. package/dist/admin/utils/translations.js.map +1 -1
  130. package/dist/admin/utils/translations.mjs.map +1 -1
  131. package/dist/admin/utils/urls.js.map +1 -1
  132. package/dist/admin/utils/urls.mjs.map +1 -1
  133. package/dist/admin/utils/users.js.map +1 -1
  134. package/dist/admin/utils/users.mjs.map +1 -1
  135. package/dist/admin/utils/validation.js.map +1 -1
  136. package/dist/admin/utils/validation.mjs.map +1 -1
  137. package/dist/server/controllers/relations.js.map +1 -1
  138. package/dist/server/controllers/relations.mjs.map +1 -1
  139. package/dist/server/controllers/single-types.js +3 -1
  140. package/dist/server/controllers/single-types.js.map +1 -1
  141. package/dist/server/controllers/single-types.mjs +3 -1
  142. package/dist/server/controllers/single-types.mjs.map +1 -1
  143. package/dist/server/controllers/validation/dimensions.js.map +1 -1
  144. package/dist/server/controllers/validation/dimensions.mjs.map +1 -1
  145. package/dist/server/controllers/validation/index.js.map +1 -1
  146. package/dist/server/controllers/validation/index.mjs.map +1 -1
  147. package/dist/server/history/utils.js.map +1 -1
  148. package/dist/server/history/utils.mjs.map +1 -1
  149. package/dist/server/homepage/services/homepage.js.map +1 -1
  150. package/dist/server/homepage/services/homepage.mjs.map +1 -1
  151. package/dist/server/middlewares/routing.js.map +1 -1
  152. package/dist/server/middlewares/routing.mjs.map +1 -1
  153. package/dist/server/preview/services/preview.js.map +1 -1
  154. package/dist/server/preview/services/preview.mjs.map +1 -1
  155. package/dist/server/preview/utils.js.map +1 -1
  156. package/dist/server/preview/utils.mjs.map +1 -1
  157. package/dist/server/services/configuration.js.map +1 -1
  158. package/dist/server/services/configuration.mjs.map +1 -1
  159. package/dist/server/services/document-metadata.js +23 -1
  160. package/dist/server/services/document-metadata.js.map +1 -1
  161. package/dist/server/services/document-metadata.mjs +23 -1
  162. package/dist/server/services/document-metadata.mjs.map +1 -1
  163. package/dist/server/services/field-sizes.js.map +1 -1
  164. package/dist/server/services/field-sizes.mjs.map +1 -1
  165. package/dist/server/services/uid.js.map +1 -1
  166. package/dist/server/services/uid.mjs.map +1 -1
  167. package/dist/server/services/utils/store.js.map +1 -1
  168. package/dist/server/services/utils/store.mjs.map +1 -1
  169. package/dist/server/src/services/document-metadata.d.ts.map +1 -1
  170. package/package.json +6 -6
@@ -1 +1 @@
1
- {"version":3,"file":"documents.js","sources":["../../../admin/src/services/documents.ts"],"sourcesContent":["/**\n * Related to fetching the actual content of a collection type or single type.\n */\nimport { stringify } from 'qs';\n\nimport { SINGLE_TYPES } from '../constants/collections';\n\nimport { contentManagerApi } from './api';\n\nimport type {\n Clone,\n Create,\n Delete,\n Find,\n FindOne,\n BulkDelete,\n BulkPublish,\n BulkUnpublish,\n Discard,\n CountDraftRelations,\n CountManyEntriesDraftRelations,\n Publish,\n Unpublish,\n Update,\n} from '../../../shared/contracts/collection-types';\n\nconst documentApi = contentManagerApi.injectEndpoints({\n overrideExisting: true,\n endpoints: (builder) => ({\n autoCloneDocument: builder.mutation<\n Clone.Response,\n Clone.Params & {\n params?: Find.Request['query'] & Clone.Request['query'];\n }\n >({\n query: ({ model, sourceId, params }) => ({\n url: `/content-manager/collection-types/${model}/auto-clone/${sourceId}`,\n method: 'POST',\n config: {\n params,\n },\n }),\n invalidatesTags: (_result, error, { model }) => {\n if (error) {\n return [];\n }\n\n return [\n { type: 'Document', id: `${model}_LIST` },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ];\n },\n }),\n cloneDocument: builder.mutation<\n Clone.Response,\n Clone.Params & {\n data: Clone.Request['body'];\n params?: Clone.Request['query'];\n }\n >({\n query: ({ model, sourceId, data, params }) => ({\n url: `/content-manager/collection-types/${model}/clone/${sourceId}`,\n method: 'POST',\n data,\n config: {\n params,\n },\n }),\n invalidatesTags: (_result, _error, { model }) => [\n { type: 'Document', id: `${model}_LIST` },\n { type: 'UidAvailability', id: model },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ],\n }),\n /**\n * Creates a new collection-type document. This should ONLY be used for collection-types.\n * single-types should always be using `updateDocument` since they always exist.\n */\n createDocument: builder.mutation<\n Create.Response,\n Create.Params & {\n data: Create.Request['body'];\n params?: Create.Request['query'];\n }\n >({\n query: ({ model, data, params }) => ({\n url: `/content-manager/collection-types/${model}`,\n method: 'POST',\n data,\n config: {\n params,\n },\n }),\n invalidatesTags: (result, _error, { model }) => [\n { type: 'Document', id: `${model}_LIST` },\n 'Relations',\n { type: 'UidAvailability', id: model },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ],\n transformResponse: (response: Create.Response, meta, arg): Create.Response => {\n /**\n * TODO v6\n * Adapt plugin:users-permissions.user to return the same response\n * shape as all other requests. The error is returned as expected.\n */\n if (!('data' in response) && arg.model === 'plugin::users-permissions.user') {\n return {\n data: response,\n meta: {\n availableStatus: [],\n availableLocales: [],\n },\n };\n }\n\n return response;\n },\n }),\n deleteDocument: builder.mutation<\n Delete.Response,\n Pick<Delete.Params, 'model'> &\n Pick<Partial<Delete.Params>, 'documentId'> & {\n collectionType: string;\n params?: Find.Request['query'];\n }\n >({\n query: ({ collectionType, model, documentId, params }) => ({\n url: `/content-manager/${collectionType}/${model}${\n collectionType !== SINGLE_TYPES && documentId ? `/${documentId}` : ''\n }`,\n method: 'DELETE',\n config: {\n params,\n },\n }),\n invalidatesTags: (_result, _error, { collectionType, model, documentId }) => [\n { type: 'Document', id: collectionType !== SINGLE_TYPES ? `${model}_LIST` : model },\n {\n type: 'Document',\n id: collectionType !== SINGLE_TYPES ? `${model}_${documentId}` : model,\n },\n { type: 'Document', id: `${model}_ALL_ITEMS` },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ],\n }),\n deleteManyDocuments: builder.mutation<\n BulkDelete.Response,\n BulkDelete.Params & BulkDelete.Request['body'] & { params?: Find.Request['query'] }\n >({\n query: ({ model, params, ...body }) => ({\n url: `/content-manager/collection-types/${model}/actions/bulkDelete`,\n method: 'POST',\n data: body,\n config: {\n params,\n },\n }),\n invalidatesTags: (_res, _error, { model }) => [\n { type: 'Document', id: `${model}_LIST` },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ],\n }),\n discardDocument: builder.mutation<\n Discard.Response,\n Pick<Discard.Params, 'model'> &\n Partial<Pick<Discard.Params, 'documentId'>> & {\n collectionType: string;\n params?: Find.Request['query'] & {\n [key: string]: any;\n };\n }\n >({\n query: ({ collectionType, model, documentId, params }) => ({\n url: documentId\n ? `/content-manager/${collectionType}/${model}/${documentId}/actions/discard`\n : `/content-manager/${collectionType}/${model}/actions/discard`,\n method: 'POST',\n config: {\n params,\n },\n }),\n invalidatesTags: (_result, _error, { collectionType, model, documentId }) => {\n return [\n {\n type: 'Document',\n id: collectionType !== SINGLE_TYPES ? `${model}_${documentId}` : model,\n },\n { type: 'Document', id: `${model}_LIST` },\n 'Relations',\n { type: 'UidAvailability', id: model },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ];\n },\n }),\n /**\n * Gets all documents of a collection type or single type.\n * By passing different params you can get different results e.g. only published documents or 'es' documents.\n */\n getAllDocuments: builder.query<\n Find.Response,\n Find.Params & {\n params?: Find.Request['query'] & {\n [key: string]: any;\n };\n }\n >({\n query: ({ model, params }) => ({\n url: `/content-manager/collection-types/${model}`,\n method: 'GET',\n config: {\n params: stringify(params, { encode: true }),\n },\n }),\n providesTags: (result, _error, arg) => {\n return [\n { type: 'Document', id: `ALL_LIST` },\n { type: 'Document', id: `${arg.model}_LIST` },\n ...(result?.results.map(({ documentId }) => ({\n type: 'Document' as const,\n id: `${arg.model}_${documentId}`,\n })) ?? []),\n ];\n },\n }),\n getDraftRelationCount: builder.query<\n CountDraftRelations.Response,\n {\n collectionType: string;\n model: string;\n /**\n * You don't pass the documentId if the document is a single-type\n */\n documentId?: string;\n params?: CountDraftRelations.Request['query'];\n }\n >({\n query: ({ collectionType, model, documentId, params }) => ({\n url: documentId\n ? `/content-manager/${collectionType}/${model}/${documentId}/actions/countDraftRelations`\n : `/content-manager/${collectionType}/${model}/actions/countDraftRelations`,\n method: 'GET',\n config: {\n params,\n },\n }),\n }),\n getDocument: builder.query<\n FindOne.Response,\n Pick<FindOne.Params, 'model'> &\n Partial<Pick<FindOne.Params, 'documentId'>> & {\n collectionType: string;\n params?: FindOne.Request['query'];\n }\n >({\n // @ts-expect-error – TODO: fix ts error where data unknown doesn't work with response via an assertion?\n queryFn: async (\n { collectionType, model, documentId, params },\n _api,\n _extraOpts,\n baseQuery\n ) => {\n const res = await baseQuery({\n url: `/content-manager/${collectionType}/${model}${documentId ? `/${documentId}` : ''}`,\n method: 'GET',\n config: {\n params,\n },\n });\n\n /**\n * To stop the query from locking itself in multiple retries, we intercept the error here and manage correctly.\n * This is because single-types don't have a list view and fetching them with the route `/single-types/:model`\n * never returns a list, just a single document but this won't exist if you've not made one before.\n */\n if (res.error && res.error.name === 'NotFoundError' && collectionType === SINGLE_TYPES) {\n return { data: { document: undefined }, error: undefined };\n }\n\n return res;\n },\n providesTags: (result, _error, { collectionType, model, documentId }) => {\n return [\n // we prefer the result's id because we don't fetch single-types with an ID.\n {\n type: 'Document',\n id:\n collectionType !== SINGLE_TYPES\n ? `${model}_${result && 'documentId' in result ? result.documentId : documentId}`\n : model,\n },\n // Make it easy to invalidate all individual documents queries for a model\n {\n type: 'Document',\n id: `${model}_ALL_ITEMS`,\n },\n ];\n },\n }),\n getManyDraftRelationCount: builder.query<\n CountManyEntriesDraftRelations.Response['data'],\n CountManyEntriesDraftRelations.Request['query'] & {\n model: string;\n }\n >({\n query: ({ model, ...params }) => ({\n url: `/content-manager/collection-types/${model}/actions/countManyEntriesDraftRelations`,\n method: 'GET',\n config: {\n params,\n },\n }),\n transformResponse: (response: CountManyEntriesDraftRelations.Response) => response.data,\n }),\n /**\n * This endpoint will either create or update documents at the same time as publishing.\n */\n publishDocument: builder.mutation<\n Publish.Response,\n Pick<Publish.Params, 'model'> &\n Partial<Pick<Publish.Params, 'documentId'>> & {\n collectionType: string;\n data: Publish.Request['body'];\n params?: Publish.Request['query'];\n }\n >({\n query: ({ collectionType, model, documentId, params, data }) => ({\n url: documentId\n ? `/content-manager/${collectionType}/${model}/${documentId}/actions/publish`\n : `/content-manager/${collectionType}/${model}/actions/publish`,\n method: 'POST',\n data,\n config: {\n params,\n },\n }),\n invalidatesTags: (_result, _error, { collectionType, model, documentId }) => {\n return [\n {\n type: 'Document',\n id: collectionType !== SINGLE_TYPES ? `${model}_${documentId}` : model,\n },\n { type: 'Document', id: `${model}_LIST` },\n 'Relations',\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n {\n type: 'AILocalizationJobs',\n id: collectionType !== SINGLE_TYPES ? `${model}_${documentId}` : model,\n },\n ];\n },\n }),\n publishManyDocuments: builder.mutation<\n BulkPublish.Response,\n BulkPublish.Params & BulkPublish.Request['body'] & { params?: BulkPublish.Request['query'] }\n >({\n query: ({ model, params, ...body }) => ({\n url: `/content-manager/collection-types/${model}/actions/bulkPublish`,\n method: 'POST',\n data: body,\n config: {\n params,\n },\n }),\n invalidatesTags: (_res, _error, { model, documentIds }) => {\n return [\n ...documentIds.map((id) => ({ type: 'Document' as const, id: `${model}_${id}` })),\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ];\n },\n }),\n updateDocument: builder.mutation<\n Update.Response,\n Pick<Update.Params, 'model'> &\n Partial<Pick<Update.Params, 'documentId'>> & {\n collectionType: string;\n data: Update.Request['body'];\n params?: Update.Request['query'];\n }\n >({\n query: ({ collectionType, model, documentId, data, params }) => ({\n url: `/content-manager/${collectionType}/${model}${documentId ? `/${documentId}` : ''}`,\n method: 'PUT',\n data,\n config: {\n params,\n },\n }),\n invalidatesTags: (_result, _error, { collectionType, model, documentId }) => {\n return [\n {\n type: 'Document',\n id: collectionType !== SINGLE_TYPES ? `${model}_${documentId}` : model,\n },\n 'Relations',\n { type: 'UidAvailability', id: model },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n {\n type: 'AILocalizationJobs',\n id: collectionType !== SINGLE_TYPES ? `${model}_${documentId}` : model,\n },\n ];\n },\n async onQueryStarted({ data, ...patch }, { dispatch, queryFulfilled }) {\n // Optimistically update the cache with the new data\n const patchResult = dispatch(\n documentApi.util.updateQueryData('getDocument', patch, (draft) => {\n Object.assign(draft.data, data);\n })\n );\n try {\n await queryFulfilled;\n } catch {\n // Rollback the optimistic update if there's an error\n patchResult.undo();\n }\n },\n transformResponse: (response: Update.Response, meta, arg): Update.Response => {\n /**\n * TODO v6\n * Adapt plugin:users-permissions.user to return the same response\n * shape as all other requests. The error is returned as expected.\n */\n if (!('data' in response) && arg.model === 'plugin::users-permissions.user') {\n return {\n data: response,\n meta: {\n availableStatus: [],\n availableLocales: [],\n },\n };\n }\n\n return response;\n },\n }),\n unpublishDocument: builder.mutation<\n Unpublish.Response,\n Pick<Unpublish.Params, 'model'> &\n Partial<Pick<Unpublish.Params, 'documentId'>> & {\n collectionType: string;\n params?: Unpublish.Request['query'];\n data: Unpublish.Request['body'];\n }\n >({\n query: ({ collectionType, model, documentId, params, data }) => ({\n url: documentId\n ? `/content-manager/${collectionType}/${model}/${documentId}/actions/unpublish`\n : `/content-manager/${collectionType}/${model}/actions/unpublish`,\n method: 'POST',\n data,\n config: {\n params,\n },\n }),\n invalidatesTags: (_result, _error, { collectionType, model, documentId }) => {\n return [\n {\n type: 'Document',\n id: collectionType !== SINGLE_TYPES ? `${model}_${documentId}` : model,\n },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ];\n },\n }),\n unpublishManyDocuments: builder.mutation<\n BulkUnpublish.Response,\n Pick<BulkUnpublish.Params, 'model'> &\n BulkUnpublish.Request['body'] & {\n params?: BulkUnpublish.Request['query'];\n }\n >({\n query: ({ model, params, ...body }) => ({\n url: `/content-manager/collection-types/${model}/actions/bulkUnpublish`,\n method: 'POST',\n data: body,\n config: {\n params,\n },\n }),\n invalidatesTags: (_res, _error, { model, documentIds }) => [\n ...documentIds.map((id) => ({ type: 'Document' as const, id: `${model}_${id}` })),\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ],\n }),\n }),\n});\n\nconst {\n useAutoCloneDocumentMutation,\n useCloneDocumentMutation,\n useCreateDocumentMutation,\n useDeleteDocumentMutation,\n useDeleteManyDocumentsMutation,\n useDiscardDocumentMutation,\n useGetAllDocumentsQuery,\n useLazyGetDocumentQuery,\n useGetDocumentQuery,\n useLazyGetDraftRelationCountQuery,\n useGetManyDraftRelationCountQuery,\n usePublishDocumentMutation,\n usePublishManyDocumentsMutation,\n useUpdateDocumentMutation,\n useUnpublishDocumentMutation,\n useUnpublishManyDocumentsMutation,\n} = documentApi;\n\nexport {\n useAutoCloneDocumentMutation,\n useCloneDocumentMutation,\n useCreateDocumentMutation,\n useDeleteDocumentMutation,\n useDeleteManyDocumentsMutation,\n useDiscardDocumentMutation,\n useGetAllDocumentsQuery,\n useLazyGetDocumentQuery,\n useGetDocumentQuery,\n useLazyGetDraftRelationCountQuery as useGetDraftRelationCountQuery,\n useGetManyDraftRelationCountQuery,\n usePublishDocumentMutation,\n usePublishManyDocumentsMutation,\n useUpdateDocumentMutation,\n useUnpublishDocumentMutation,\n useUnpublishManyDocumentsMutation,\n};\n"],"names":["documentApi","contentManagerApi","injectEndpoints","overrideExisting","endpoints","builder","autoCloneDocument","mutation","query","model","sourceId","params","url","method","config","invalidatesTags","_result","error","type","id","cloneDocument","data","_error","createDocument","result","transformResponse","response","meta","arg","availableStatus","availableLocales","deleteDocument","collectionType","documentId","SINGLE_TYPES","deleteManyDocuments","body","_res","discardDocument","getAllDocuments","stringify","encode","providesTags","results","map","getDraftRelationCount","getDocument","queryFn","_api","_extraOpts","baseQuery","res","name","document","undefined","getManyDraftRelationCount","publishDocument","publishManyDocuments","documentIds","updateDocument","onQueryStarted","patch","dispatch","queryFulfilled","patchResult","util","updateQueryData","draft","Object","assign","undo","unpublishDocument","unpublishManyDocuments","useAutoCloneDocumentMutation","useCloneDocumentMutation","useCreateDocumentMutation","useDeleteDocumentMutation","useDeleteManyDocumentsMutation","useDiscardDocumentMutation","useGetAllDocumentsQuery","useLazyGetDocumentQuery","useGetDocumentQuery","useLazyGetDraftRelationCountQuery","useGetManyDraftRelationCountQuery","usePublishDocumentMutation","usePublishManyDocumentsMutation","useUpdateDocumentMutation","useUnpublishDocumentMutation","useUnpublishManyDocumentsMutation"],"mappings":"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"}
1
+ {"version":3,"file":"documents.js","sources":["../../../admin/src/services/documents.ts"],"sourcesContent":["/**\n * Related to fetching the actual content of a collection type or single type.\n */\nimport { stringify } from 'qs';\n\nimport { SINGLE_TYPES } from '../constants/collections';\n\nimport { contentManagerApi } from './api';\n\nimport type {\n Clone,\n Create,\n Delete,\n Find,\n FindOne,\n BulkDelete,\n BulkPublish,\n BulkUnpublish,\n Discard,\n CountDraftRelations,\n CountManyEntriesDraftRelations,\n Publish,\n Unpublish,\n Update,\n} from '../../../shared/contracts/collection-types';\n\nconst documentApi = contentManagerApi.injectEndpoints({\n overrideExisting: true,\n endpoints: (builder) => ({\n autoCloneDocument: builder.mutation<\n Clone.Response,\n Clone.Params & {\n params?: Find.Request['query'] & Clone.Request['query'];\n }\n >({\n query: ({ model, sourceId, params }) => ({\n url: `/content-manager/collection-types/${model}/auto-clone/${sourceId}`,\n method: 'POST',\n config: {\n params,\n },\n }),\n invalidatesTags: (_result, error, { model }) => {\n if (error) {\n return [];\n }\n\n return [\n { type: 'Document', id: `${model}_LIST` },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ];\n },\n }),\n cloneDocument: builder.mutation<\n Clone.Response,\n Clone.Params & {\n data: Clone.Request['body'];\n params?: Clone.Request['query'];\n }\n >({\n query: ({ model, sourceId, data, params }) => ({\n url: `/content-manager/collection-types/${model}/clone/${sourceId}`,\n method: 'POST',\n data,\n config: {\n params,\n },\n }),\n invalidatesTags: (_result, _error, { model }) => [\n { type: 'Document', id: `${model}_LIST` },\n { type: 'UidAvailability', id: model },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ],\n }),\n /**\n * Creates a new collection-type document. This should ONLY be used for collection-types.\n * single-types should always be using `updateDocument` since they always exist.\n */\n createDocument: builder.mutation<\n Create.Response,\n Create.Params & {\n data: Create.Request['body'];\n params?: Create.Request['query'];\n }\n >({\n query: ({ model, data, params }) => ({\n url: `/content-manager/collection-types/${model}`,\n method: 'POST',\n data,\n config: {\n params,\n },\n }),\n invalidatesTags: (result, _error, { model }) => [\n { type: 'Document', id: `${model}_LIST` },\n 'Relations',\n { type: 'UidAvailability', id: model },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ],\n transformResponse: (response: Create.Response, meta, arg): Create.Response => {\n /**\n * TODO v6\n * Adapt plugin:users-permissions.user to return the same response\n * shape as all other requests. The error is returned as expected.\n */\n if (!('data' in response) && arg.model === 'plugin::users-permissions.user') {\n return {\n data: response,\n meta: {\n availableStatus: [],\n availableLocales: [],\n },\n };\n }\n\n return response;\n },\n }),\n deleteDocument: builder.mutation<\n Delete.Response,\n Pick<Delete.Params, 'model'> &\n Pick<Partial<Delete.Params>, 'documentId'> & {\n collectionType: string;\n params?: Find.Request['query'];\n }\n >({\n query: ({ collectionType, model, documentId, params }) => ({\n url: `/content-manager/${collectionType}/${model}${\n collectionType !== SINGLE_TYPES && documentId ? `/${documentId}` : ''\n }`,\n method: 'DELETE',\n config: {\n params,\n },\n }),\n invalidatesTags: (_result, _error, { collectionType, model, documentId }) => [\n { type: 'Document', id: collectionType !== SINGLE_TYPES ? `${model}_LIST` : model },\n {\n type: 'Document',\n id: collectionType !== SINGLE_TYPES ? `${model}_${documentId}` : model,\n },\n { type: 'Document', id: `${model}_ALL_ITEMS` },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ],\n }),\n deleteManyDocuments: builder.mutation<\n BulkDelete.Response,\n BulkDelete.Params & BulkDelete.Request['body'] & { params?: Find.Request['query'] }\n >({\n query: ({ model, params, ...body }) => ({\n url: `/content-manager/collection-types/${model}/actions/bulkDelete`,\n method: 'POST',\n data: body,\n config: {\n params,\n },\n }),\n invalidatesTags: (_res, _error, { model }) => [\n { type: 'Document', id: `${model}_LIST` },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ],\n }),\n discardDocument: builder.mutation<\n Discard.Response,\n Pick<Discard.Params, 'model'> &\n Partial<Pick<Discard.Params, 'documentId'>> & {\n collectionType: string;\n params?: Find.Request['query'] & {\n [key: string]: any;\n };\n }\n >({\n query: ({ collectionType, model, documentId, params }) => ({\n url: documentId\n ? `/content-manager/${collectionType}/${model}/${documentId}/actions/discard`\n : `/content-manager/${collectionType}/${model}/actions/discard`,\n method: 'POST',\n config: {\n params,\n },\n }),\n invalidatesTags: (_result, _error, { collectionType, model, documentId }) => {\n return [\n {\n type: 'Document',\n id: collectionType !== SINGLE_TYPES ? `${model}_${documentId}` : model,\n },\n { type: 'Document', id: `${model}_LIST` },\n 'Relations',\n { type: 'UidAvailability', id: model },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ];\n },\n }),\n /**\n * Gets all documents of a collection type or single type.\n * By passing different params you can get different results e.g. only published documents or 'es' documents.\n */\n getAllDocuments: builder.query<\n Find.Response,\n Find.Params & {\n params?: Find.Request['query'] & {\n [key: string]: any;\n };\n }\n >({\n query: ({ model, params }) => ({\n url: `/content-manager/collection-types/${model}`,\n method: 'GET',\n config: {\n params: stringify(params, { encode: true }),\n },\n }),\n providesTags: (result, _error, arg) => {\n return [\n { type: 'Document', id: `ALL_LIST` },\n { type: 'Document', id: `${arg.model}_LIST` },\n ...(result?.results.map(({ documentId }) => ({\n type: 'Document' as const,\n id: `${arg.model}_${documentId}`,\n })) ?? []),\n ];\n },\n }),\n getDraftRelationCount: builder.query<\n CountDraftRelations.Response,\n {\n collectionType: string;\n model: string;\n /**\n * You don't pass the documentId if the document is a single-type\n */\n documentId?: string;\n params?: CountDraftRelations.Request['query'];\n }\n >({\n query: ({ collectionType, model, documentId, params }) => ({\n url: documentId\n ? `/content-manager/${collectionType}/${model}/${documentId}/actions/countDraftRelations`\n : `/content-manager/${collectionType}/${model}/actions/countDraftRelations`,\n method: 'GET',\n config: {\n params,\n },\n }),\n }),\n getDocument: builder.query<\n FindOne.Response,\n Pick<FindOne.Params, 'model'> &\n Partial<Pick<FindOne.Params, 'documentId'>> & {\n collectionType: string;\n params?: FindOne.Request['query'];\n }\n >({\n // @ts-expect-error – TODO: fix ts error where data unknown doesn't work with response via an assertion?\n queryFn: async (\n { collectionType, model, documentId, params },\n _api,\n _extraOpts,\n baseQuery\n ) => {\n const res = await baseQuery({\n url: `/content-manager/${collectionType}/${model}${documentId ? `/${documentId}` : ''}`,\n method: 'GET',\n config: {\n params,\n },\n });\n\n /**\n * To stop the query from locking itself in multiple retries, we intercept the error here and manage correctly.\n * This is because single-types don't have a list view and fetching them with the route `/single-types/:model`\n * never returns a list, just a single document but this won't exist if you've not made one before.\n */\n if (res.error && res.error.name === 'NotFoundError' && collectionType === SINGLE_TYPES) {\n return { data: { document: undefined }, error: undefined };\n }\n\n return res;\n },\n providesTags: (result, _error, { collectionType, model, documentId }) => {\n return [\n // we prefer the result's id because we don't fetch single-types with an ID.\n {\n type: 'Document',\n id:\n collectionType !== SINGLE_TYPES\n ? `${model}_${result && 'documentId' in result ? result.documentId : documentId}`\n : model,\n },\n // Make it easy to invalidate all individual documents queries for a model\n {\n type: 'Document',\n id: `${model}_ALL_ITEMS`,\n },\n ];\n },\n }),\n getManyDraftRelationCount: builder.query<\n CountManyEntriesDraftRelations.Response['data'],\n CountManyEntriesDraftRelations.Request['query'] & {\n model: string;\n }\n >({\n query: ({ model, ...params }) => ({\n url: `/content-manager/collection-types/${model}/actions/countManyEntriesDraftRelations`,\n method: 'GET',\n config: {\n params,\n },\n }),\n transformResponse: (response: CountManyEntriesDraftRelations.Response) => response.data,\n }),\n /**\n * This endpoint will either create or update documents at the same time as publishing.\n */\n publishDocument: builder.mutation<\n Publish.Response,\n Pick<Publish.Params, 'model'> &\n Partial<Pick<Publish.Params, 'documentId'>> & {\n collectionType: string;\n data: Publish.Request['body'];\n params?: Publish.Request['query'];\n }\n >({\n query: ({ collectionType, model, documentId, params, data }) => ({\n url: documentId\n ? `/content-manager/${collectionType}/${model}/${documentId}/actions/publish`\n : `/content-manager/${collectionType}/${model}/actions/publish`,\n method: 'POST',\n data,\n config: {\n params,\n },\n }),\n invalidatesTags: (_result, _error, { collectionType, model, documentId }) => {\n return [\n {\n type: 'Document',\n id: collectionType !== SINGLE_TYPES ? `${model}_${documentId}` : model,\n },\n { type: 'Document', id: `${model}_LIST` },\n 'Relations',\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n {\n type: 'AILocalizationJobs',\n id: collectionType !== SINGLE_TYPES ? `${model}_${documentId}` : model,\n },\n ];\n },\n }),\n publishManyDocuments: builder.mutation<\n BulkPublish.Response,\n BulkPublish.Params & BulkPublish.Request['body'] & { params?: BulkPublish.Request['query'] }\n >({\n query: ({ model, params, ...body }) => ({\n url: `/content-manager/collection-types/${model}/actions/bulkPublish`,\n method: 'POST',\n data: body,\n config: {\n params,\n },\n }),\n invalidatesTags: (_res, _error, { model, documentIds }) => {\n return [\n ...documentIds.map((id) => ({ type: 'Document' as const, id: `${model}_${id}` })),\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ];\n },\n }),\n updateDocument: builder.mutation<\n Update.Response,\n Pick<Update.Params, 'model'> &\n Partial<Pick<Update.Params, 'documentId'>> & {\n collectionType: string;\n data: Update.Request['body'];\n params?: Update.Request['query'];\n }\n >({\n query: ({ collectionType, model, documentId, data, params }) => ({\n url: `/content-manager/${collectionType}/${model}${documentId ? `/${documentId}` : ''}`,\n method: 'PUT',\n data,\n config: {\n params,\n },\n }),\n invalidatesTags: (_result, _error, { collectionType, model, documentId }) => {\n return [\n {\n type: 'Document',\n id: collectionType !== SINGLE_TYPES ? `${model}_${documentId}` : model,\n },\n 'Relations',\n { type: 'UidAvailability', id: model },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n {\n type: 'AILocalizationJobs',\n id: collectionType !== SINGLE_TYPES ? `${model}_${documentId}` : model,\n },\n ];\n },\n async onQueryStarted({ data, ...patch }, { dispatch, queryFulfilled }) {\n // Optimistically update the cache with the new data\n const patchResult = dispatch(\n documentApi.util.updateQueryData('getDocument', patch, (draft) => {\n Object.assign(draft.data, data);\n })\n );\n try {\n await queryFulfilled;\n } catch {\n // Rollback the optimistic update if there's an error\n patchResult.undo();\n }\n },\n transformResponse: (response: Update.Response, meta, arg): Update.Response => {\n /**\n * TODO v6\n * Adapt plugin:users-permissions.user to return the same response\n * shape as all other requests. The error is returned as expected.\n */\n if (!('data' in response) && arg.model === 'plugin::users-permissions.user') {\n return {\n data: response,\n meta: {\n availableStatus: [],\n availableLocales: [],\n },\n };\n }\n\n return response;\n },\n }),\n unpublishDocument: builder.mutation<\n Unpublish.Response,\n Pick<Unpublish.Params, 'model'> &\n Partial<Pick<Unpublish.Params, 'documentId'>> & {\n collectionType: string;\n params?: Unpublish.Request['query'];\n data: Unpublish.Request['body'];\n }\n >({\n query: ({ collectionType, model, documentId, params, data }) => ({\n url: documentId\n ? `/content-manager/${collectionType}/${model}/${documentId}/actions/unpublish`\n : `/content-manager/${collectionType}/${model}/actions/unpublish`,\n method: 'POST',\n data,\n config: {\n params,\n },\n }),\n invalidatesTags: (_result, _error, { collectionType, model, documentId }) => {\n return [\n {\n type: 'Document',\n id: collectionType !== SINGLE_TYPES ? `${model}_${documentId}` : model,\n },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ];\n },\n }),\n unpublishManyDocuments: builder.mutation<\n BulkUnpublish.Response,\n Pick<BulkUnpublish.Params, 'model'> &\n BulkUnpublish.Request['body'] & {\n params?: BulkUnpublish.Request['query'];\n }\n >({\n query: ({ model, params, ...body }) => ({\n url: `/content-manager/collection-types/${model}/actions/bulkUnpublish`,\n method: 'POST',\n data: body,\n config: {\n params,\n },\n }),\n invalidatesTags: (_res, _error, { model, documentIds }) => [\n ...documentIds.map((id) => ({ type: 'Document' as const, id: `${model}_${id}` })),\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ],\n }),\n }),\n});\n\nconst {\n useAutoCloneDocumentMutation,\n useCloneDocumentMutation,\n useCreateDocumentMutation,\n useDeleteDocumentMutation,\n useDeleteManyDocumentsMutation,\n useDiscardDocumentMutation,\n useGetAllDocumentsQuery,\n useLazyGetDocumentQuery,\n useGetDocumentQuery,\n useLazyGetDraftRelationCountQuery,\n useGetManyDraftRelationCountQuery,\n usePublishDocumentMutation,\n usePublishManyDocumentsMutation,\n useUpdateDocumentMutation,\n useUnpublishDocumentMutation,\n useUnpublishManyDocumentsMutation,\n} = documentApi;\n\nexport {\n useAutoCloneDocumentMutation,\n useCloneDocumentMutation,\n useCreateDocumentMutation,\n useDeleteDocumentMutation,\n useDeleteManyDocumentsMutation,\n useDiscardDocumentMutation,\n useGetAllDocumentsQuery,\n useLazyGetDocumentQuery,\n useGetDocumentQuery,\n useLazyGetDraftRelationCountQuery as useGetDraftRelationCountQuery,\n useGetManyDraftRelationCountQuery,\n usePublishDocumentMutation,\n usePublishManyDocumentsMutation,\n useUpdateDocumentMutation,\n useUnpublishDocumentMutation,\n useUnpublishManyDocumentsMutation,\n};\n"],"names":["documentApi","contentManagerApi","injectEndpoints","overrideExisting","endpoints","builder","autoCloneDocument","mutation","query","model","sourceId","params","url","method","config","invalidatesTags","_result","error","type","id","cloneDocument","data","_error","createDocument","result","transformResponse","response","meta","arg","availableStatus","availableLocales","deleteDocument","collectionType","documentId","SINGLE_TYPES","deleteManyDocuments","body","_res","discardDocument","getAllDocuments","stringify","encode","providesTags","results","map","getDraftRelationCount","getDocument","queryFn","_api","_extraOpts","baseQuery","res","name","document","undefined","getManyDraftRelationCount","publishDocument","publishManyDocuments","documentIds","updateDocument","onQueryStarted","patch","dispatch","queryFulfilled","patchResult","util","updateQueryData","draft","Object","assign","undo","unpublishDocument","unpublishManyDocuments","useAutoCloneDocumentMutation","useCloneDocumentMutation","useCreateDocumentMutation","useDeleteDocumentMutation","useDeleteManyDocumentsMutation","useDiscardDocumentMutation","useGetAllDocumentsQuery","useLazyGetDocumentQuery","useGetDocumentQuery","useLazyGetDraftRelationCountQuery","useGetManyDraftRelationCountQuery","usePublishDocumentMutation","usePublishManyDocumentsMutation","useUpdateDocumentMutation","useUnpublishDocumentMutation","useUnpublishManyDocumentsMutation"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"documents.mjs","sources":["../../../admin/src/services/documents.ts"],"sourcesContent":["/**\n * Related to fetching the actual content of a collection type or single type.\n */\nimport { stringify } from 'qs';\n\nimport { SINGLE_TYPES } from '../constants/collections';\n\nimport { contentManagerApi } from './api';\n\nimport type {\n Clone,\n Create,\n Delete,\n Find,\n FindOne,\n BulkDelete,\n BulkPublish,\n BulkUnpublish,\n Discard,\n CountDraftRelations,\n CountManyEntriesDraftRelations,\n Publish,\n Unpublish,\n Update,\n} from '../../../shared/contracts/collection-types';\n\nconst documentApi = contentManagerApi.injectEndpoints({\n overrideExisting: true,\n endpoints: (builder) => ({\n autoCloneDocument: builder.mutation<\n Clone.Response,\n Clone.Params & {\n params?: Find.Request['query'] & Clone.Request['query'];\n }\n >({\n query: ({ model, sourceId, params }) => ({\n url: `/content-manager/collection-types/${model}/auto-clone/${sourceId}`,\n method: 'POST',\n config: {\n params,\n },\n }),\n invalidatesTags: (_result, error, { model }) => {\n if (error) {\n return [];\n }\n\n return [\n { type: 'Document', id: `${model}_LIST` },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ];\n },\n }),\n cloneDocument: builder.mutation<\n Clone.Response,\n Clone.Params & {\n data: Clone.Request['body'];\n params?: Clone.Request['query'];\n }\n >({\n query: ({ model, sourceId, data, params }) => ({\n url: `/content-manager/collection-types/${model}/clone/${sourceId}`,\n method: 'POST',\n data,\n config: {\n params,\n },\n }),\n invalidatesTags: (_result, _error, { model }) => [\n { type: 'Document', id: `${model}_LIST` },\n { type: 'UidAvailability', id: model },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ],\n }),\n /**\n * Creates a new collection-type document. This should ONLY be used for collection-types.\n * single-types should always be using `updateDocument` since they always exist.\n */\n createDocument: builder.mutation<\n Create.Response,\n Create.Params & {\n data: Create.Request['body'];\n params?: Create.Request['query'];\n }\n >({\n query: ({ model, data, params }) => ({\n url: `/content-manager/collection-types/${model}`,\n method: 'POST',\n data,\n config: {\n params,\n },\n }),\n invalidatesTags: (result, _error, { model }) => [\n { type: 'Document', id: `${model}_LIST` },\n 'Relations',\n { type: 'UidAvailability', id: model },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ],\n transformResponse: (response: Create.Response, meta, arg): Create.Response => {\n /**\n * TODO v6\n * Adapt plugin:users-permissions.user to return the same response\n * shape as all other requests. The error is returned as expected.\n */\n if (!('data' in response) && arg.model === 'plugin::users-permissions.user') {\n return {\n data: response,\n meta: {\n availableStatus: [],\n availableLocales: [],\n },\n };\n }\n\n return response;\n },\n }),\n deleteDocument: builder.mutation<\n Delete.Response,\n Pick<Delete.Params, 'model'> &\n Pick<Partial<Delete.Params>, 'documentId'> & {\n collectionType: string;\n params?: Find.Request['query'];\n }\n >({\n query: ({ collectionType, model, documentId, params }) => ({\n url: `/content-manager/${collectionType}/${model}${\n collectionType !== SINGLE_TYPES && documentId ? `/${documentId}` : ''\n }`,\n method: 'DELETE',\n config: {\n params,\n },\n }),\n invalidatesTags: (_result, _error, { collectionType, model, documentId }) => [\n { type: 'Document', id: collectionType !== SINGLE_TYPES ? `${model}_LIST` : model },\n {\n type: 'Document',\n id: collectionType !== SINGLE_TYPES ? `${model}_${documentId}` : model,\n },\n { type: 'Document', id: `${model}_ALL_ITEMS` },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ],\n }),\n deleteManyDocuments: builder.mutation<\n BulkDelete.Response,\n BulkDelete.Params & BulkDelete.Request['body'] & { params?: Find.Request['query'] }\n >({\n query: ({ model, params, ...body }) => ({\n url: `/content-manager/collection-types/${model}/actions/bulkDelete`,\n method: 'POST',\n data: body,\n config: {\n params,\n },\n }),\n invalidatesTags: (_res, _error, { model }) => [\n { type: 'Document', id: `${model}_LIST` },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ],\n }),\n discardDocument: builder.mutation<\n Discard.Response,\n Pick<Discard.Params, 'model'> &\n Partial<Pick<Discard.Params, 'documentId'>> & {\n collectionType: string;\n params?: Find.Request['query'] & {\n [key: string]: any;\n };\n }\n >({\n query: ({ collectionType, model, documentId, params }) => ({\n url: documentId\n ? `/content-manager/${collectionType}/${model}/${documentId}/actions/discard`\n : `/content-manager/${collectionType}/${model}/actions/discard`,\n method: 'POST',\n config: {\n params,\n },\n }),\n invalidatesTags: (_result, _error, { collectionType, model, documentId }) => {\n return [\n {\n type: 'Document',\n id: collectionType !== SINGLE_TYPES ? `${model}_${documentId}` : model,\n },\n { type: 'Document', id: `${model}_LIST` },\n 'Relations',\n { type: 'UidAvailability', id: model },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ];\n },\n }),\n /**\n * Gets all documents of a collection type or single type.\n * By passing different params you can get different results e.g. only published documents or 'es' documents.\n */\n getAllDocuments: builder.query<\n Find.Response,\n Find.Params & {\n params?: Find.Request['query'] & {\n [key: string]: any;\n };\n }\n >({\n query: ({ model, params }) => ({\n url: `/content-manager/collection-types/${model}`,\n method: 'GET',\n config: {\n params: stringify(params, { encode: true }),\n },\n }),\n providesTags: (result, _error, arg) => {\n return [\n { type: 'Document', id: `ALL_LIST` },\n { type: 'Document', id: `${arg.model}_LIST` },\n ...(result?.results.map(({ documentId }) => ({\n type: 'Document' as const,\n id: `${arg.model}_${documentId}`,\n })) ?? []),\n ];\n },\n }),\n getDraftRelationCount: builder.query<\n CountDraftRelations.Response,\n {\n collectionType: string;\n model: string;\n /**\n * You don't pass the documentId if the document is a single-type\n */\n documentId?: string;\n params?: CountDraftRelations.Request['query'];\n }\n >({\n query: ({ collectionType, model, documentId, params }) => ({\n url: documentId\n ? `/content-manager/${collectionType}/${model}/${documentId}/actions/countDraftRelations`\n : `/content-manager/${collectionType}/${model}/actions/countDraftRelations`,\n method: 'GET',\n config: {\n params,\n },\n }),\n }),\n getDocument: builder.query<\n FindOne.Response,\n Pick<FindOne.Params, 'model'> &\n Partial<Pick<FindOne.Params, 'documentId'>> & {\n collectionType: string;\n params?: FindOne.Request['query'];\n }\n >({\n // @ts-expect-error – TODO: fix ts error where data unknown doesn't work with response via an assertion?\n queryFn: async (\n { collectionType, model, documentId, params },\n _api,\n _extraOpts,\n baseQuery\n ) => {\n const res = await baseQuery({\n url: `/content-manager/${collectionType}/${model}${documentId ? `/${documentId}` : ''}`,\n method: 'GET',\n config: {\n params,\n },\n });\n\n /**\n * To stop the query from locking itself in multiple retries, we intercept the error here and manage correctly.\n * This is because single-types don't have a list view and fetching them with the route `/single-types/:model`\n * never returns a list, just a single document but this won't exist if you've not made one before.\n */\n if (res.error && res.error.name === 'NotFoundError' && collectionType === SINGLE_TYPES) {\n return { data: { document: undefined }, error: undefined };\n }\n\n return res;\n },\n providesTags: (result, _error, { collectionType, model, documentId }) => {\n return [\n // we prefer the result's id because we don't fetch single-types with an ID.\n {\n type: 'Document',\n id:\n collectionType !== SINGLE_TYPES\n ? `${model}_${result && 'documentId' in result ? result.documentId : documentId}`\n : model,\n },\n // Make it easy to invalidate all individual documents queries for a model\n {\n type: 'Document',\n id: `${model}_ALL_ITEMS`,\n },\n ];\n },\n }),\n getManyDraftRelationCount: builder.query<\n CountManyEntriesDraftRelations.Response['data'],\n CountManyEntriesDraftRelations.Request['query'] & {\n model: string;\n }\n >({\n query: ({ model, ...params }) => ({\n url: `/content-manager/collection-types/${model}/actions/countManyEntriesDraftRelations`,\n method: 'GET',\n config: {\n params,\n },\n }),\n transformResponse: (response: CountManyEntriesDraftRelations.Response) => response.data,\n }),\n /**\n * This endpoint will either create or update documents at the same time as publishing.\n */\n publishDocument: builder.mutation<\n Publish.Response,\n Pick<Publish.Params, 'model'> &\n Partial<Pick<Publish.Params, 'documentId'>> & {\n collectionType: string;\n data: Publish.Request['body'];\n params?: Publish.Request['query'];\n }\n >({\n query: ({ collectionType, model, documentId, params, data }) => ({\n url: documentId\n ? `/content-manager/${collectionType}/${model}/${documentId}/actions/publish`\n : `/content-manager/${collectionType}/${model}/actions/publish`,\n method: 'POST',\n data,\n config: {\n params,\n },\n }),\n invalidatesTags: (_result, _error, { collectionType, model, documentId }) => {\n return [\n {\n type: 'Document',\n id: collectionType !== SINGLE_TYPES ? `${model}_${documentId}` : model,\n },\n { type: 'Document', id: `${model}_LIST` },\n 'Relations',\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n {\n type: 'AILocalizationJobs',\n id: collectionType !== SINGLE_TYPES ? `${model}_${documentId}` : model,\n },\n ];\n },\n }),\n publishManyDocuments: builder.mutation<\n BulkPublish.Response,\n BulkPublish.Params & BulkPublish.Request['body'] & { params?: BulkPublish.Request['query'] }\n >({\n query: ({ model, params, ...body }) => ({\n url: `/content-manager/collection-types/${model}/actions/bulkPublish`,\n method: 'POST',\n data: body,\n config: {\n params,\n },\n }),\n invalidatesTags: (_res, _error, { model, documentIds }) => {\n return [\n ...documentIds.map((id) => ({ type: 'Document' as const, id: `${model}_${id}` })),\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ];\n },\n }),\n updateDocument: builder.mutation<\n Update.Response,\n Pick<Update.Params, 'model'> &\n Partial<Pick<Update.Params, 'documentId'>> & {\n collectionType: string;\n data: Update.Request['body'];\n params?: Update.Request['query'];\n }\n >({\n query: ({ collectionType, model, documentId, data, params }) => ({\n url: `/content-manager/${collectionType}/${model}${documentId ? `/${documentId}` : ''}`,\n method: 'PUT',\n data,\n config: {\n params,\n },\n }),\n invalidatesTags: (_result, _error, { collectionType, model, documentId }) => {\n return [\n {\n type: 'Document',\n id: collectionType !== SINGLE_TYPES ? `${model}_${documentId}` : model,\n },\n 'Relations',\n { type: 'UidAvailability', id: model },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n {\n type: 'AILocalizationJobs',\n id: collectionType !== SINGLE_TYPES ? `${model}_${documentId}` : model,\n },\n ];\n },\n async onQueryStarted({ data, ...patch }, { dispatch, queryFulfilled }) {\n // Optimistically update the cache with the new data\n const patchResult = dispatch(\n documentApi.util.updateQueryData('getDocument', patch, (draft) => {\n Object.assign(draft.data, data);\n })\n );\n try {\n await queryFulfilled;\n } catch {\n // Rollback the optimistic update if there's an error\n patchResult.undo();\n }\n },\n transformResponse: (response: Update.Response, meta, arg): Update.Response => {\n /**\n * TODO v6\n * Adapt plugin:users-permissions.user to return the same response\n * shape as all other requests. The error is returned as expected.\n */\n if (!('data' in response) && arg.model === 'plugin::users-permissions.user') {\n return {\n data: response,\n meta: {\n availableStatus: [],\n availableLocales: [],\n },\n };\n }\n\n return response;\n },\n }),\n unpublishDocument: builder.mutation<\n Unpublish.Response,\n Pick<Unpublish.Params, 'model'> &\n Partial<Pick<Unpublish.Params, 'documentId'>> & {\n collectionType: string;\n params?: Unpublish.Request['query'];\n data: Unpublish.Request['body'];\n }\n >({\n query: ({ collectionType, model, documentId, params, data }) => ({\n url: documentId\n ? `/content-manager/${collectionType}/${model}/${documentId}/actions/unpublish`\n : `/content-manager/${collectionType}/${model}/actions/unpublish`,\n method: 'POST',\n data,\n config: {\n params,\n },\n }),\n invalidatesTags: (_result, _error, { collectionType, model, documentId }) => {\n return [\n {\n type: 'Document',\n id: collectionType !== SINGLE_TYPES ? `${model}_${documentId}` : model,\n },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ];\n },\n }),\n unpublishManyDocuments: builder.mutation<\n BulkUnpublish.Response,\n Pick<BulkUnpublish.Params, 'model'> &\n BulkUnpublish.Request['body'] & {\n params?: BulkUnpublish.Request['query'];\n }\n >({\n query: ({ model, params, ...body }) => ({\n url: `/content-manager/collection-types/${model}/actions/bulkUnpublish`,\n method: 'POST',\n data: body,\n config: {\n params,\n },\n }),\n invalidatesTags: (_res, _error, { model, documentIds }) => [\n ...documentIds.map((id) => ({ type: 'Document' as const, id: `${model}_${id}` })),\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ],\n }),\n }),\n});\n\nconst {\n useAutoCloneDocumentMutation,\n useCloneDocumentMutation,\n useCreateDocumentMutation,\n useDeleteDocumentMutation,\n useDeleteManyDocumentsMutation,\n useDiscardDocumentMutation,\n useGetAllDocumentsQuery,\n useLazyGetDocumentQuery,\n useGetDocumentQuery,\n useLazyGetDraftRelationCountQuery,\n useGetManyDraftRelationCountQuery,\n usePublishDocumentMutation,\n usePublishManyDocumentsMutation,\n useUpdateDocumentMutation,\n useUnpublishDocumentMutation,\n useUnpublishManyDocumentsMutation,\n} = documentApi;\n\nexport {\n useAutoCloneDocumentMutation,\n useCloneDocumentMutation,\n useCreateDocumentMutation,\n useDeleteDocumentMutation,\n useDeleteManyDocumentsMutation,\n useDiscardDocumentMutation,\n useGetAllDocumentsQuery,\n useLazyGetDocumentQuery,\n useGetDocumentQuery,\n useLazyGetDraftRelationCountQuery as useGetDraftRelationCountQuery,\n useGetManyDraftRelationCountQuery,\n usePublishDocumentMutation,\n usePublishManyDocumentsMutation,\n useUpdateDocumentMutation,\n useUnpublishDocumentMutation,\n useUnpublishManyDocumentsMutation,\n};\n"],"names":["documentApi","contentManagerApi","injectEndpoints","overrideExisting","endpoints","builder","autoCloneDocument","mutation","query","model","sourceId","params","url","method","config","invalidatesTags","_result","error","type","id","cloneDocument","data","_error","createDocument","result","transformResponse","response","meta","arg","availableStatus","availableLocales","deleteDocument","collectionType","documentId","SINGLE_TYPES","deleteManyDocuments","body","_res","discardDocument","getAllDocuments","stringify","encode","providesTags","results","map","getDraftRelationCount","getDocument","queryFn","_api","_extraOpts","baseQuery","res","name","document","undefined","getManyDraftRelationCount","publishDocument","publishManyDocuments","documentIds","updateDocument","onQueryStarted","patch","dispatch","queryFulfilled","patchResult","util","updateQueryData","draft","Object","assign","undo","unpublishDocument","unpublishManyDocuments","useAutoCloneDocumentMutation","useCloneDocumentMutation","useCreateDocumentMutation","useDeleteDocumentMutation","useDeleteManyDocumentsMutation","useDiscardDocumentMutation","useGetAllDocumentsQuery","useLazyGetDocumentQuery","useGetDocumentQuery","useLazyGetDraftRelationCountQuery","useGetManyDraftRelationCountQuery","usePublishDocumentMutation","usePublishManyDocumentsMutation","useUpdateDocumentMutation","useUnpublishDocumentMutation","useUnpublishManyDocumentsMutation"],"mappings":"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"}
1
+ {"version":3,"file":"documents.mjs","sources":["../../../admin/src/services/documents.ts"],"sourcesContent":["/**\n * Related to fetching the actual content of a collection type or single type.\n */\nimport { stringify } from 'qs';\n\nimport { SINGLE_TYPES } from '../constants/collections';\n\nimport { contentManagerApi } from './api';\n\nimport type {\n Clone,\n Create,\n Delete,\n Find,\n FindOne,\n BulkDelete,\n BulkPublish,\n BulkUnpublish,\n Discard,\n CountDraftRelations,\n CountManyEntriesDraftRelations,\n Publish,\n Unpublish,\n Update,\n} from '../../../shared/contracts/collection-types';\n\nconst documentApi = contentManagerApi.injectEndpoints({\n overrideExisting: true,\n endpoints: (builder) => ({\n autoCloneDocument: builder.mutation<\n Clone.Response,\n Clone.Params & {\n params?: Find.Request['query'] & Clone.Request['query'];\n }\n >({\n query: ({ model, sourceId, params }) => ({\n url: `/content-manager/collection-types/${model}/auto-clone/${sourceId}`,\n method: 'POST',\n config: {\n params,\n },\n }),\n invalidatesTags: (_result, error, { model }) => {\n if (error) {\n return [];\n }\n\n return [\n { type: 'Document', id: `${model}_LIST` },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ];\n },\n }),\n cloneDocument: builder.mutation<\n Clone.Response,\n Clone.Params & {\n data: Clone.Request['body'];\n params?: Clone.Request['query'];\n }\n >({\n query: ({ model, sourceId, data, params }) => ({\n url: `/content-manager/collection-types/${model}/clone/${sourceId}`,\n method: 'POST',\n data,\n config: {\n params,\n },\n }),\n invalidatesTags: (_result, _error, { model }) => [\n { type: 'Document', id: `${model}_LIST` },\n { type: 'UidAvailability', id: model },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ],\n }),\n /**\n * Creates a new collection-type document. This should ONLY be used for collection-types.\n * single-types should always be using `updateDocument` since they always exist.\n */\n createDocument: builder.mutation<\n Create.Response,\n Create.Params & {\n data: Create.Request['body'];\n params?: Create.Request['query'];\n }\n >({\n query: ({ model, data, params }) => ({\n url: `/content-manager/collection-types/${model}`,\n method: 'POST',\n data,\n config: {\n params,\n },\n }),\n invalidatesTags: (result, _error, { model }) => [\n { type: 'Document', id: `${model}_LIST` },\n 'Relations',\n { type: 'UidAvailability', id: model },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ],\n transformResponse: (response: Create.Response, meta, arg): Create.Response => {\n /**\n * TODO v6\n * Adapt plugin:users-permissions.user to return the same response\n * shape as all other requests. The error is returned as expected.\n */\n if (!('data' in response) && arg.model === 'plugin::users-permissions.user') {\n return {\n data: response,\n meta: {\n availableStatus: [],\n availableLocales: [],\n },\n };\n }\n\n return response;\n },\n }),\n deleteDocument: builder.mutation<\n Delete.Response,\n Pick<Delete.Params, 'model'> &\n Pick<Partial<Delete.Params>, 'documentId'> & {\n collectionType: string;\n params?: Find.Request['query'];\n }\n >({\n query: ({ collectionType, model, documentId, params }) => ({\n url: `/content-manager/${collectionType}/${model}${\n collectionType !== SINGLE_TYPES && documentId ? `/${documentId}` : ''\n }`,\n method: 'DELETE',\n config: {\n params,\n },\n }),\n invalidatesTags: (_result, _error, { collectionType, model, documentId }) => [\n { type: 'Document', id: collectionType !== SINGLE_TYPES ? `${model}_LIST` : model },\n {\n type: 'Document',\n id: collectionType !== SINGLE_TYPES ? `${model}_${documentId}` : model,\n },\n { type: 'Document', id: `${model}_ALL_ITEMS` },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ],\n }),\n deleteManyDocuments: builder.mutation<\n BulkDelete.Response,\n BulkDelete.Params & BulkDelete.Request['body'] & { params?: Find.Request['query'] }\n >({\n query: ({ model, params, ...body }) => ({\n url: `/content-manager/collection-types/${model}/actions/bulkDelete`,\n method: 'POST',\n data: body,\n config: {\n params,\n },\n }),\n invalidatesTags: (_res, _error, { model }) => [\n { type: 'Document', id: `${model}_LIST` },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ],\n }),\n discardDocument: builder.mutation<\n Discard.Response,\n Pick<Discard.Params, 'model'> &\n Partial<Pick<Discard.Params, 'documentId'>> & {\n collectionType: string;\n params?: Find.Request['query'] & {\n [key: string]: any;\n };\n }\n >({\n query: ({ collectionType, model, documentId, params }) => ({\n url: documentId\n ? `/content-manager/${collectionType}/${model}/${documentId}/actions/discard`\n : `/content-manager/${collectionType}/${model}/actions/discard`,\n method: 'POST',\n config: {\n params,\n },\n }),\n invalidatesTags: (_result, _error, { collectionType, model, documentId }) => {\n return [\n {\n type: 'Document',\n id: collectionType !== SINGLE_TYPES ? `${model}_${documentId}` : model,\n },\n { type: 'Document', id: `${model}_LIST` },\n 'Relations',\n { type: 'UidAvailability', id: model },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ];\n },\n }),\n /**\n * Gets all documents of a collection type or single type.\n * By passing different params you can get different results e.g. only published documents or 'es' documents.\n */\n getAllDocuments: builder.query<\n Find.Response,\n Find.Params & {\n params?: Find.Request['query'] & {\n [key: string]: any;\n };\n }\n >({\n query: ({ model, params }) => ({\n url: `/content-manager/collection-types/${model}`,\n method: 'GET',\n config: {\n params: stringify(params, { encode: true }),\n },\n }),\n providesTags: (result, _error, arg) => {\n return [\n { type: 'Document', id: `ALL_LIST` },\n { type: 'Document', id: `${arg.model}_LIST` },\n ...(result?.results.map(({ documentId }) => ({\n type: 'Document' as const,\n id: `${arg.model}_${documentId}`,\n })) ?? []),\n ];\n },\n }),\n getDraftRelationCount: builder.query<\n CountDraftRelations.Response,\n {\n collectionType: string;\n model: string;\n /**\n * You don't pass the documentId if the document is a single-type\n */\n documentId?: string;\n params?: CountDraftRelations.Request['query'];\n }\n >({\n query: ({ collectionType, model, documentId, params }) => ({\n url: documentId\n ? `/content-manager/${collectionType}/${model}/${documentId}/actions/countDraftRelations`\n : `/content-manager/${collectionType}/${model}/actions/countDraftRelations`,\n method: 'GET',\n config: {\n params,\n },\n }),\n }),\n getDocument: builder.query<\n FindOne.Response,\n Pick<FindOne.Params, 'model'> &\n Partial<Pick<FindOne.Params, 'documentId'>> & {\n collectionType: string;\n params?: FindOne.Request['query'];\n }\n >({\n // @ts-expect-error – TODO: fix ts error where data unknown doesn't work with response via an assertion?\n queryFn: async (\n { collectionType, model, documentId, params },\n _api,\n _extraOpts,\n baseQuery\n ) => {\n const res = await baseQuery({\n url: `/content-manager/${collectionType}/${model}${documentId ? `/${documentId}` : ''}`,\n method: 'GET',\n config: {\n params,\n },\n });\n\n /**\n * To stop the query from locking itself in multiple retries, we intercept the error here and manage correctly.\n * This is because single-types don't have a list view and fetching them with the route `/single-types/:model`\n * never returns a list, just a single document but this won't exist if you've not made one before.\n */\n if (res.error && res.error.name === 'NotFoundError' && collectionType === SINGLE_TYPES) {\n return { data: { document: undefined }, error: undefined };\n }\n\n return res;\n },\n providesTags: (result, _error, { collectionType, model, documentId }) => {\n return [\n // we prefer the result's id because we don't fetch single-types with an ID.\n {\n type: 'Document',\n id:\n collectionType !== SINGLE_TYPES\n ? `${model}_${result && 'documentId' in result ? result.documentId : documentId}`\n : model,\n },\n // Make it easy to invalidate all individual documents queries for a model\n {\n type: 'Document',\n id: `${model}_ALL_ITEMS`,\n },\n ];\n },\n }),\n getManyDraftRelationCount: builder.query<\n CountManyEntriesDraftRelations.Response['data'],\n CountManyEntriesDraftRelations.Request['query'] & {\n model: string;\n }\n >({\n query: ({ model, ...params }) => ({\n url: `/content-manager/collection-types/${model}/actions/countManyEntriesDraftRelations`,\n method: 'GET',\n config: {\n params,\n },\n }),\n transformResponse: (response: CountManyEntriesDraftRelations.Response) => response.data,\n }),\n /**\n * This endpoint will either create or update documents at the same time as publishing.\n */\n publishDocument: builder.mutation<\n Publish.Response,\n Pick<Publish.Params, 'model'> &\n Partial<Pick<Publish.Params, 'documentId'>> & {\n collectionType: string;\n data: Publish.Request['body'];\n params?: Publish.Request['query'];\n }\n >({\n query: ({ collectionType, model, documentId, params, data }) => ({\n url: documentId\n ? `/content-manager/${collectionType}/${model}/${documentId}/actions/publish`\n : `/content-manager/${collectionType}/${model}/actions/publish`,\n method: 'POST',\n data,\n config: {\n params,\n },\n }),\n invalidatesTags: (_result, _error, { collectionType, model, documentId }) => {\n return [\n {\n type: 'Document',\n id: collectionType !== SINGLE_TYPES ? `${model}_${documentId}` : model,\n },\n { type: 'Document', id: `${model}_LIST` },\n 'Relations',\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n {\n type: 'AILocalizationJobs',\n id: collectionType !== SINGLE_TYPES ? `${model}_${documentId}` : model,\n },\n ];\n },\n }),\n publishManyDocuments: builder.mutation<\n BulkPublish.Response,\n BulkPublish.Params & BulkPublish.Request['body'] & { params?: BulkPublish.Request['query'] }\n >({\n query: ({ model, params, ...body }) => ({\n url: `/content-manager/collection-types/${model}/actions/bulkPublish`,\n method: 'POST',\n data: body,\n config: {\n params,\n },\n }),\n invalidatesTags: (_res, _error, { model, documentIds }) => {\n return [\n ...documentIds.map((id) => ({ type: 'Document' as const, id: `${model}_${id}` })),\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ];\n },\n }),\n updateDocument: builder.mutation<\n Update.Response,\n Pick<Update.Params, 'model'> &\n Partial<Pick<Update.Params, 'documentId'>> & {\n collectionType: string;\n data: Update.Request['body'];\n params?: Update.Request['query'];\n }\n >({\n query: ({ collectionType, model, documentId, data, params }) => ({\n url: `/content-manager/${collectionType}/${model}${documentId ? `/${documentId}` : ''}`,\n method: 'PUT',\n data,\n config: {\n params,\n },\n }),\n invalidatesTags: (_result, _error, { collectionType, model, documentId }) => {\n return [\n {\n type: 'Document',\n id: collectionType !== SINGLE_TYPES ? `${model}_${documentId}` : model,\n },\n 'Relations',\n { type: 'UidAvailability', id: model },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n {\n type: 'AILocalizationJobs',\n id: collectionType !== SINGLE_TYPES ? `${model}_${documentId}` : model,\n },\n ];\n },\n async onQueryStarted({ data, ...patch }, { dispatch, queryFulfilled }) {\n // Optimistically update the cache with the new data\n const patchResult = dispatch(\n documentApi.util.updateQueryData('getDocument', patch, (draft) => {\n Object.assign(draft.data, data);\n })\n );\n try {\n await queryFulfilled;\n } catch {\n // Rollback the optimistic update if there's an error\n patchResult.undo();\n }\n },\n transformResponse: (response: Update.Response, meta, arg): Update.Response => {\n /**\n * TODO v6\n * Adapt plugin:users-permissions.user to return the same response\n * shape as all other requests. The error is returned as expected.\n */\n if (!('data' in response) && arg.model === 'plugin::users-permissions.user') {\n return {\n data: response,\n meta: {\n availableStatus: [],\n availableLocales: [],\n },\n };\n }\n\n return response;\n },\n }),\n unpublishDocument: builder.mutation<\n Unpublish.Response,\n Pick<Unpublish.Params, 'model'> &\n Partial<Pick<Unpublish.Params, 'documentId'>> & {\n collectionType: string;\n params?: Unpublish.Request['query'];\n data: Unpublish.Request['body'];\n }\n >({\n query: ({ collectionType, model, documentId, params, data }) => ({\n url: documentId\n ? `/content-manager/${collectionType}/${model}/${documentId}/actions/unpublish`\n : `/content-manager/${collectionType}/${model}/actions/unpublish`,\n method: 'POST',\n data,\n config: {\n params,\n },\n }),\n invalidatesTags: (_result, _error, { collectionType, model, documentId }) => {\n return [\n {\n type: 'Document',\n id: collectionType !== SINGLE_TYPES ? `${model}_${documentId}` : model,\n },\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ];\n },\n }),\n unpublishManyDocuments: builder.mutation<\n BulkUnpublish.Response,\n Pick<BulkUnpublish.Params, 'model'> &\n BulkUnpublish.Request['body'] & {\n params?: BulkUnpublish.Request['query'];\n }\n >({\n query: ({ model, params, ...body }) => ({\n url: `/content-manager/collection-types/${model}/actions/bulkUnpublish`,\n method: 'POST',\n data: body,\n config: {\n params,\n },\n }),\n invalidatesTags: (_res, _error, { model, documentIds }) => [\n ...documentIds.map((id) => ({ type: 'Document' as const, id: `${model}_${id}` })),\n 'RecentDocumentList',\n 'CountDocuments',\n 'UpcomingReleasesList',\n ],\n }),\n }),\n});\n\nconst {\n useAutoCloneDocumentMutation,\n useCloneDocumentMutation,\n useCreateDocumentMutation,\n useDeleteDocumentMutation,\n useDeleteManyDocumentsMutation,\n useDiscardDocumentMutation,\n useGetAllDocumentsQuery,\n useLazyGetDocumentQuery,\n useGetDocumentQuery,\n useLazyGetDraftRelationCountQuery,\n useGetManyDraftRelationCountQuery,\n usePublishDocumentMutation,\n usePublishManyDocumentsMutation,\n useUpdateDocumentMutation,\n useUnpublishDocumentMutation,\n useUnpublishManyDocumentsMutation,\n} = documentApi;\n\nexport {\n useAutoCloneDocumentMutation,\n useCloneDocumentMutation,\n useCreateDocumentMutation,\n useDeleteDocumentMutation,\n useDeleteManyDocumentsMutation,\n useDiscardDocumentMutation,\n useGetAllDocumentsQuery,\n useLazyGetDocumentQuery,\n useGetDocumentQuery,\n useLazyGetDraftRelationCountQuery as useGetDraftRelationCountQuery,\n useGetManyDraftRelationCountQuery,\n usePublishDocumentMutation,\n usePublishManyDocumentsMutation,\n useUpdateDocumentMutation,\n useUnpublishDocumentMutation,\n useUnpublishManyDocumentsMutation,\n};\n"],"names":["documentApi","contentManagerApi","injectEndpoints","overrideExisting","endpoints","builder","autoCloneDocument","mutation","query","model","sourceId","params","url","method","config","invalidatesTags","_result","error","type","id","cloneDocument","data","_error","createDocument","result","transformResponse","response","meta","arg","availableStatus","availableLocales","deleteDocument","collectionType","documentId","SINGLE_TYPES","deleteManyDocuments","body","_res","discardDocument","getAllDocuments","stringify","encode","providesTags","results","map","getDraftRelationCount","getDocument","queryFn","_api","_extraOpts","baseQuery","res","name","document","undefined","getManyDraftRelationCount","publishDocument","publishManyDocuments","documentIds","updateDocument","onQueryStarted","patch","dispatch","queryFulfilled","patchResult","util","updateQueryData","draft","Object","assign","undo","unpublishDocument","unpublishManyDocuments","useAutoCloneDocumentMutation","useCloneDocumentMutation","useCreateDocumentMutation","useDeleteDocumentMutation","useDeleteManyDocumentsMutation","useDiscardDocumentMutation","useGetAllDocumentsQuery","useLazyGetDocumentQuery","useGetDocumentQuery","useLazyGetDraftRelationCountQuery","useGetManyDraftRelationCountQuery","usePublishDocumentMutation","usePublishManyDocumentsMutation","useUpdateDocumentMutation","useUnpublishDocumentMutation","useUnpublishManyDocumentsMutation"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"homepage.js","sources":["../../../admin/src/services/homepage.ts"],"sourcesContent":["import * as Homepage from '../../../shared/contracts/homepage';\n\nimport { contentManagerApi } from './api';\n\nconst homepageService = contentManagerApi\n .enhanceEndpoints({\n addTagTypes: ['RecentDocumentList'],\n })\n .injectEndpoints({\n /**\n * TODO: Remove overrideExisting when we remove the future flag\n * and delete the old homepage service in the admin\n */\n overrideExisting: true,\n endpoints: (builder) => ({\n getRecentDocuments: builder.query<\n Homepage.GetRecentDocuments.Response['data'],\n Homepage.GetRecentDocuments.Request['query']\n >({\n query: (params) => `/content-manager/homepage/recent-documents?action=${params.action}`,\n transformResponse: (response: Homepage.GetRecentDocuments.Response) => response.data,\n providesTags: (res, _err, { action }) => [\n { type: 'RecentDocumentList' as const, id: action },\n ],\n }),\n }),\n });\n\nconst { useGetRecentDocumentsQuery } = homepageService;\n\nexport { useGetRecentDocumentsQuery };\n"],"names":["homepageService","contentManagerApi","enhanceEndpoints","addTagTypes","injectEndpoints","overrideExisting","endpoints","builder","getRecentDocuments","query","params","action","transformResponse","response","data","providesTags","res","_err","type","id","useGetRecentDocumentsQuery"],"mappings":";;;;AAIA,MAAMA,eAAAA,GAAkBC,qBACrBC,CAAAA,gBAAgB,CAAC;IAChBC,WAAa,EAAA;AAAC,QAAA;AAAqB;AACrC,CAAA,CAAA,CACCC,eAAe,CAAC;AACf;;;AAGC,QACDC,gBAAkB,EAAA,IAAA;IAClBC,SAAW,EAAA,CAACC,WAAa;YACvBC,kBAAoBD,EAAAA,OAAAA,CAAQE,KAAK,CAG/B;gBACAA,KAAO,EAAA,CAACC,SAAW,CAAC,kDAAkD,EAAEA,MAAOC,CAAAA,MAAM,CAAC,CAAC;gBACvFC,iBAAmB,EAAA,CAACC,QAAmDA,GAAAA,QAAAA,CAASC,IAAI;AACpFC,gBAAAA,YAAAA,EAAc,CAACC,GAAKC,EAAAA,IAAAA,EAAM,EAAEN,MAAM,EAAE,GAAK;AACvC,wBAAA;4BAAEO,IAAM,EAAA,oBAAA;4BAA+BC,EAAIR,EAAAA;AAAO;AACnD;AACH,aAAA;SACF;AACF,CAAA,CAAA;AAEI,MAAA,EAAES,0BAA0B,EAAE,GAAGpB;;;;"}
1
+ {"version":3,"file":"homepage.js","sources":["../../../admin/src/services/homepage.ts"],"sourcesContent":["import * as Homepage from '../../../shared/contracts/homepage';\n\nimport { contentManagerApi } from './api';\n\nconst homepageService = contentManagerApi\n .enhanceEndpoints({\n addTagTypes: ['RecentDocumentList'],\n })\n .injectEndpoints({\n /**\n * TODO: Remove overrideExisting when we remove the future flag\n * and delete the old homepage service in the admin\n */\n overrideExisting: true,\n endpoints: (builder) => ({\n getRecentDocuments: builder.query<\n Homepage.GetRecentDocuments.Response['data'],\n Homepage.GetRecentDocuments.Request['query']\n >({\n query: (params) => `/content-manager/homepage/recent-documents?action=${params.action}`,\n transformResponse: (response: Homepage.GetRecentDocuments.Response) => response.data,\n providesTags: (res, _err, { action }) => [\n { type: 'RecentDocumentList' as const, id: action },\n ],\n }),\n }),\n });\n\nconst { useGetRecentDocumentsQuery } = homepageService;\n\nexport { useGetRecentDocumentsQuery };\n"],"names":["homepageService","contentManagerApi","enhanceEndpoints","addTagTypes","injectEndpoints","overrideExisting","endpoints","builder","getRecentDocuments","query","params","action","transformResponse","response","data","providesTags","res","_err","type","id","useGetRecentDocumentsQuery"],"mappings":";;;;AAIA,MAAMA,eAAAA,GAAkBC,qBACrBC,CAAAA,gBAAgB,CAAC;IAChBC,WAAa,EAAA;AAAC,QAAA;AAAqB;AACrC,CAAA,CAAA,CACCC,eAAe,CAAC;AACf;;;AAGC,QACDC,gBAAkB,EAAA,IAAA;IAClBC,SAAW,EAAA,CAACC,WAAa;YACvBC,kBAAoBD,EAAAA,OAAAA,CAAQE,KAAK,CAG/B;AACAA,gBAAAA,KAAAA,EAAO,CAACC,MAAW,GAAA,CAAC,kDAAkD,EAAEA,MAAAA,CAAOC,MAAM,CAAE,CAAA;gBACvFC,iBAAmB,EAAA,CAACC,QAAmDA,GAAAA,QAAAA,CAASC,IAAI;AACpFC,gBAAAA,YAAAA,EAAc,CAACC,GAAKC,EAAAA,IAAAA,EAAM,EAAEN,MAAM,EAAE,GAAK;AACvC,wBAAA;4BAAEO,IAAM,EAAA,oBAAA;4BAA+BC,EAAIR,EAAAA;AAAO;AACnD;AACH,aAAA;SACF;AACF,CAAA,CAAA;AAEI,MAAA,EAAES,0BAA0B,EAAE,GAAGpB;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"homepage.mjs","sources":["../../../admin/src/services/homepage.ts"],"sourcesContent":["import * as Homepage from '../../../shared/contracts/homepage';\n\nimport { contentManagerApi } from './api';\n\nconst homepageService = contentManagerApi\n .enhanceEndpoints({\n addTagTypes: ['RecentDocumentList'],\n })\n .injectEndpoints({\n /**\n * TODO: Remove overrideExisting when we remove the future flag\n * and delete the old homepage service in the admin\n */\n overrideExisting: true,\n endpoints: (builder) => ({\n getRecentDocuments: builder.query<\n Homepage.GetRecentDocuments.Response['data'],\n Homepage.GetRecentDocuments.Request['query']\n >({\n query: (params) => `/content-manager/homepage/recent-documents?action=${params.action}`,\n transformResponse: (response: Homepage.GetRecentDocuments.Response) => response.data,\n providesTags: (res, _err, { action }) => [\n { type: 'RecentDocumentList' as const, id: action },\n ],\n }),\n }),\n });\n\nconst { useGetRecentDocumentsQuery } = homepageService;\n\nexport { useGetRecentDocumentsQuery };\n"],"names":["homepageService","contentManagerApi","enhanceEndpoints","addTagTypes","injectEndpoints","overrideExisting","endpoints","builder","getRecentDocuments","query","params","action","transformResponse","response","data","providesTags","res","_err","type","id","useGetRecentDocumentsQuery"],"mappings":";;AAIA,MAAMA,eAAAA,GAAkBC,iBACrBC,CAAAA,gBAAgB,CAAC;IAChBC,WAAa,EAAA;AAAC,QAAA;AAAqB;AACrC,CAAA,CAAA,CACCC,eAAe,CAAC;AACf;;;AAGC,QACDC,gBAAkB,EAAA,IAAA;IAClBC,SAAW,EAAA,CAACC,WAAa;YACvBC,kBAAoBD,EAAAA,OAAAA,CAAQE,KAAK,CAG/B;gBACAA,KAAO,EAAA,CAACC,SAAW,CAAC,kDAAkD,EAAEA,MAAOC,CAAAA,MAAM,CAAC,CAAC;gBACvFC,iBAAmB,EAAA,CAACC,QAAmDA,GAAAA,QAAAA,CAASC,IAAI;AACpFC,gBAAAA,YAAAA,EAAc,CAACC,GAAKC,EAAAA,IAAAA,EAAM,EAAEN,MAAM,EAAE,GAAK;AACvC,wBAAA;4BAAEO,IAAM,EAAA,oBAAA;4BAA+BC,EAAIR,EAAAA;AAAO;AACnD;AACH,aAAA;SACF;AACF,CAAA,CAAA;AAEI,MAAA,EAAES,0BAA0B,EAAE,GAAGpB;;;;"}
1
+ {"version":3,"file":"homepage.mjs","sources":["../../../admin/src/services/homepage.ts"],"sourcesContent":["import * as Homepage from '../../../shared/contracts/homepage';\n\nimport { contentManagerApi } from './api';\n\nconst homepageService = contentManagerApi\n .enhanceEndpoints({\n addTagTypes: ['RecentDocumentList'],\n })\n .injectEndpoints({\n /**\n * TODO: Remove overrideExisting when we remove the future flag\n * and delete the old homepage service in the admin\n */\n overrideExisting: true,\n endpoints: (builder) => ({\n getRecentDocuments: builder.query<\n Homepage.GetRecentDocuments.Response['data'],\n Homepage.GetRecentDocuments.Request['query']\n >({\n query: (params) => `/content-manager/homepage/recent-documents?action=${params.action}`,\n transformResponse: (response: Homepage.GetRecentDocuments.Response) => response.data,\n providesTags: (res, _err, { action }) => [\n { type: 'RecentDocumentList' as const, id: action },\n ],\n }),\n }),\n });\n\nconst { useGetRecentDocumentsQuery } = homepageService;\n\nexport { useGetRecentDocumentsQuery };\n"],"names":["homepageService","contentManagerApi","enhanceEndpoints","addTagTypes","injectEndpoints","overrideExisting","endpoints","builder","getRecentDocuments","query","params","action","transformResponse","response","data","providesTags","res","_err","type","id","useGetRecentDocumentsQuery"],"mappings":";;AAIA,MAAMA,eAAAA,GAAkBC,iBACrBC,CAAAA,gBAAgB,CAAC;IAChBC,WAAa,EAAA;AAAC,QAAA;AAAqB;AACrC,CAAA,CAAA,CACCC,eAAe,CAAC;AACf;;;AAGC,QACDC,gBAAkB,EAAA,IAAA;IAClBC,SAAW,EAAA,CAACC,WAAa;YACvBC,kBAAoBD,EAAAA,OAAAA,CAAQE,KAAK,CAG/B;AACAA,gBAAAA,KAAAA,EAAO,CAACC,MAAW,GAAA,CAAC,kDAAkD,EAAEA,MAAAA,CAAOC,MAAM,CAAE,CAAA;gBACvFC,iBAAmB,EAAA,CAACC,QAAmDA,GAAAA,QAAAA,CAASC,IAAI;AACpFC,gBAAAA,YAAAA,EAAc,CAACC,GAAKC,EAAAA,IAAAA,EAAM,EAAEN,MAAM,EAAE,GAAK;AACvC,wBAAA;4BAAEO,IAAM,EAAA,oBAAA;4BAA+BC,EAAIR,EAAAA;AAAO;AACnD;AACH,aAAA;SACF;AACF,CAAA,CAAA;AAEI,MAAA,EAAES,0BAA0B,EAAE,GAAGpB;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"relations.js","sources":["../../../admin/src/services/relations.ts"],"sourcesContent":["import { generateNKeysBetween } from 'fractional-indexing';\n\nimport {\n RelationResult as RelResult,\n FindAvailable,\n FindExisting,\n} from '../../../shared/contracts/relations';\n\nimport { contentManagerApi } from './api';\n\nimport type { Modules } from '@strapi/types';\nimport type { errors } from '@strapi/utils';\n\ninterface RelationResult extends RelResult {\n __temp_key__: string;\n}\n\ntype GetRelationsResponse =\n | {\n results: Array<RelationResult>;\n pagination: {\n page: NonNullable<Modules.EntityService.Params.Pagination.PageNotation['page']>;\n pageSize: NonNullable<Modules.EntityService.Params.Pagination.PageNotation['pageSize']>;\n pageCount: number;\n total: number;\n } | null;\n error?: never;\n }\n | {\n results?: never;\n pagination?: never;\n error: errors.ApplicationError | errors.YupValidationError;\n };\n\nconst relationsApi = contentManagerApi.injectEndpoints({\n endpoints: (build) => ({\n getRelations: build.query<\n GetRelationsResponse,\n FindExisting.Params & {\n params?: FindExisting.Request['query'];\n }\n >({\n query: ({ model, id, targetField, params }) => {\n return {\n url: `/content-manager/relations/${model}/${id}/${targetField}`,\n method: 'GET',\n config: {\n params,\n },\n };\n },\n serializeQueryArgs: (args) => {\n const { endpointName, queryArgs } = args;\n return {\n endpointName,\n model: queryArgs.model,\n id: queryArgs.id,\n targetField: queryArgs.targetField,\n locale: queryArgs.params?.locale,\n status: queryArgs.params?.status,\n };\n },\n merge: (currentCache, newItems) => {\n if (currentCache.pagination && newItems.pagination) {\n if (currentCache.pagination.page < newItems.pagination.page) {\n /**\n * Relations will always have unique IDs, so we can therefore assume\n * that we only need to push the new items to the cache.\n *\n * Push new items at the beginning as latest items are shown first\n */\n currentCache.results = [\n ...prepareTempKeys(newItems.results, currentCache.results),\n ...currentCache.results,\n ];\n currentCache.pagination = newItems.pagination;\n } else if (newItems.pagination.page === 1) {\n /**\n * We're resetting the relations\n */\n currentCache.results = prepareTempKeys(newItems.results);\n currentCache.pagination = newItems.pagination;\n }\n }\n },\n forceRefetch({ currentArg, previousArg }) {\n if (!currentArg?.params && !previousArg?.params) {\n return false;\n }\n\n return (\n currentArg?.params?.page !== previousArg?.params?.page ||\n currentArg?.params?.pageSize !== previousArg?.params?.pageSize\n );\n },\n transformResponse: (response: FindExisting.Response) => {\n if ('results' in response && response.results) {\n return {\n ...response,\n results: prepareTempKeys(response.results.toReversed()),\n };\n } else {\n return response;\n }\n },\n providesTags: ['Relations'],\n }),\n searchRelations: build.query<\n FindAvailable.Response,\n FindAvailable.Params & {\n params?: FindAvailable.Request['query'];\n }\n >({\n query: ({ model, targetField, params }) => {\n return {\n url: `/content-manager/relations/${model}/${targetField}`,\n method: 'GET',\n config: {\n params,\n },\n };\n },\n serializeQueryArgs: (args) => {\n const { endpointName, queryArgs } = args;\n return {\n endpointName,\n model: queryArgs.model,\n targetField: queryArgs.targetField,\n _q: queryArgs.params?._q,\n idsToOmit: queryArgs.params?.idsToOmit,\n idsToInclude: queryArgs.params?.idsToInclude,\n };\n },\n merge: (currentCache, newItems) => {\n if (currentCache.pagination && newItems.pagination) {\n if (currentCache.pagination.page < newItems.pagination.page) {\n /**\n * Relations will always have unique IDs, so we can therefore assume\n * that we only need to push the new items to the cache.\n */\n const existingIds = currentCache.results.map((item) => item.documentId);\n const uniqueNewItems = newItems.results.filter(\n (item) => !existingIds.includes(item.documentId)\n );\n currentCache.results.push(...uniqueNewItems);\n currentCache.pagination = newItems.pagination;\n } else if (newItems.pagination.page === 1) {\n /**\n * We're resetting the relations\n */\n currentCache.results = newItems.results;\n currentCache.pagination = newItems.pagination;\n }\n }\n },\n forceRefetch({ currentArg, previousArg }) {\n if (!currentArg?.params && !previousArg?.params) {\n return false;\n }\n\n return (\n currentArg?.params?.page !== previousArg?.params?.page ||\n currentArg?.params?.pageSize !== previousArg?.params?.pageSize\n );\n },\n transformResponse: (response: FindAvailable.Response) => {\n if (response.results) {\n return {\n ...response,\n results: response.results,\n };\n } else {\n return response;\n }\n },\n }),\n }),\n});\n\n/**\n * @internal\n * @description Adds a `__temp_key__` to each relation item. This gives us\n * a stable identifier regardless of it's ids etc. that we can then use for drag and drop.\n */\nconst prepareTempKeys = (relations: RelResult[], existingRelations: RelationResult[] = []) => {\n const [firstItem] = existingRelations.slice(0);\n const keys = generateNKeysBetween(null, firstItem?.__temp_key__ ?? null, relations.length);\n\n return relations.map((datum, index) => ({\n ...datum,\n __temp_key__: keys[index],\n }));\n};\n\nconst { useGetRelationsQuery, useLazySearchRelationsQuery } = relationsApi;\n\nexport { useGetRelationsQuery, useLazySearchRelationsQuery };\nexport type { RelationResult };\n"],"names":["relationsApi","contentManagerApi","injectEndpoints","endpoints","build","getRelations","query","model","id","targetField","params","url","method","config","serializeQueryArgs","args","endpointName","queryArgs","locale","status","merge","currentCache","newItems","pagination","page","results","prepareTempKeys","forceRefetch","currentArg","previousArg","pageSize","transformResponse","response","toReversed","providesTags","searchRelations","_q","idsToOmit","idsToInclude","existingIds","map","item","documentId","uniqueNewItems","filter","includes","push","relations","existingRelations","firstItem","slice","keys","generateNKeysBetween","__temp_key__","length","datum","index","useGetRelationsQuery","useLazySearchRelationsQuery"],"mappings":"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"}
1
+ {"version":3,"file":"relations.js","sources":["../../../admin/src/services/relations.ts"],"sourcesContent":["import { generateNKeysBetween } from 'fractional-indexing';\n\nimport {\n RelationResult as RelResult,\n FindAvailable,\n FindExisting,\n} from '../../../shared/contracts/relations';\n\nimport { contentManagerApi } from './api';\n\nimport type { Modules } from '@strapi/types';\nimport type { errors } from '@strapi/utils';\n\ninterface RelationResult extends RelResult {\n __temp_key__: string;\n}\n\ntype GetRelationsResponse =\n | {\n results: Array<RelationResult>;\n pagination: {\n page: NonNullable<Modules.EntityService.Params.Pagination.PageNotation['page']>;\n pageSize: NonNullable<Modules.EntityService.Params.Pagination.PageNotation['pageSize']>;\n pageCount: number;\n total: number;\n } | null;\n error?: never;\n }\n | {\n results?: never;\n pagination?: never;\n error: errors.ApplicationError | errors.YupValidationError;\n };\n\nconst relationsApi = contentManagerApi.injectEndpoints({\n endpoints: (build) => ({\n getRelations: build.query<\n GetRelationsResponse,\n FindExisting.Params & {\n params?: FindExisting.Request['query'];\n }\n >({\n query: ({ model, id, targetField, params }) => {\n return {\n url: `/content-manager/relations/${model}/${id}/${targetField}`,\n method: 'GET',\n config: {\n params,\n },\n };\n },\n serializeQueryArgs: (args) => {\n const { endpointName, queryArgs } = args;\n return {\n endpointName,\n model: queryArgs.model,\n id: queryArgs.id,\n targetField: queryArgs.targetField,\n locale: queryArgs.params?.locale,\n status: queryArgs.params?.status,\n };\n },\n merge: (currentCache, newItems) => {\n if (currentCache.pagination && newItems.pagination) {\n if (currentCache.pagination.page < newItems.pagination.page) {\n /**\n * Relations will always have unique IDs, so we can therefore assume\n * that we only need to push the new items to the cache.\n *\n * Push new items at the beginning as latest items are shown first\n */\n currentCache.results = [\n ...prepareTempKeys(newItems.results, currentCache.results),\n ...currentCache.results,\n ];\n currentCache.pagination = newItems.pagination;\n } else if (newItems.pagination.page === 1) {\n /**\n * We're resetting the relations\n */\n currentCache.results = prepareTempKeys(newItems.results);\n currentCache.pagination = newItems.pagination;\n }\n }\n },\n forceRefetch({ currentArg, previousArg }) {\n if (!currentArg?.params && !previousArg?.params) {\n return false;\n }\n\n return (\n currentArg?.params?.page !== previousArg?.params?.page ||\n currentArg?.params?.pageSize !== previousArg?.params?.pageSize\n );\n },\n transformResponse: (response: FindExisting.Response) => {\n if ('results' in response && response.results) {\n return {\n ...response,\n results: prepareTempKeys(response.results.toReversed()),\n };\n } else {\n return response;\n }\n },\n providesTags: ['Relations'],\n }),\n searchRelations: build.query<\n FindAvailable.Response,\n FindAvailable.Params & {\n params?: FindAvailable.Request['query'];\n }\n >({\n query: ({ model, targetField, params }) => {\n return {\n url: `/content-manager/relations/${model}/${targetField}`,\n method: 'GET',\n config: {\n params,\n },\n };\n },\n serializeQueryArgs: (args) => {\n const { endpointName, queryArgs } = args;\n return {\n endpointName,\n model: queryArgs.model,\n targetField: queryArgs.targetField,\n _q: queryArgs.params?._q,\n idsToOmit: queryArgs.params?.idsToOmit,\n idsToInclude: queryArgs.params?.idsToInclude,\n };\n },\n merge: (currentCache, newItems) => {\n if (currentCache.pagination && newItems.pagination) {\n if (currentCache.pagination.page < newItems.pagination.page) {\n /**\n * Relations will always have unique IDs, so we can therefore assume\n * that we only need to push the new items to the cache.\n */\n const existingIds = currentCache.results.map((item) => item.documentId);\n const uniqueNewItems = newItems.results.filter(\n (item) => !existingIds.includes(item.documentId)\n );\n currentCache.results.push(...uniqueNewItems);\n currentCache.pagination = newItems.pagination;\n } else if (newItems.pagination.page === 1) {\n /**\n * We're resetting the relations\n */\n currentCache.results = newItems.results;\n currentCache.pagination = newItems.pagination;\n }\n }\n },\n forceRefetch({ currentArg, previousArg }) {\n if (!currentArg?.params && !previousArg?.params) {\n return false;\n }\n\n return (\n currentArg?.params?.page !== previousArg?.params?.page ||\n currentArg?.params?.pageSize !== previousArg?.params?.pageSize\n );\n },\n transformResponse: (response: FindAvailable.Response) => {\n if (response.results) {\n return {\n ...response,\n results: response.results,\n };\n } else {\n return response;\n }\n },\n }),\n }),\n});\n\n/**\n * @internal\n * @description Adds a `__temp_key__` to each relation item. This gives us\n * a stable identifier regardless of it's ids etc. that we can then use for drag and drop.\n */\nconst prepareTempKeys = (relations: RelResult[], existingRelations: RelationResult[] = []) => {\n const [firstItem] = existingRelations.slice(0);\n const keys = generateNKeysBetween(null, firstItem?.__temp_key__ ?? null, relations.length);\n\n return relations.map((datum, index) => ({\n ...datum,\n __temp_key__: keys[index],\n }));\n};\n\nconst { useGetRelationsQuery, useLazySearchRelationsQuery } = relationsApi;\n\nexport { useGetRelationsQuery, useLazySearchRelationsQuery };\nexport type { RelationResult };\n"],"names":["relationsApi","contentManagerApi","injectEndpoints","endpoints","build","getRelations","query","model","id","targetField","params","url","method","config","serializeQueryArgs","args","endpointName","queryArgs","locale","status","merge","currentCache","newItems","pagination","page","results","prepareTempKeys","forceRefetch","currentArg","previousArg","pageSize","transformResponse","response","toReversed","providesTags","searchRelations","_q","idsToOmit","idsToInclude","existingIds","map","item","documentId","uniqueNewItems","filter","includes","push","relations","existingRelations","firstItem","slice","keys","generateNKeysBetween","__temp_key__","length","datum","index","useGetRelationsQuery","useLazySearchRelationsQuery"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"relations.mjs","sources":["../../../admin/src/services/relations.ts"],"sourcesContent":["import { generateNKeysBetween } from 'fractional-indexing';\n\nimport {\n RelationResult as RelResult,\n FindAvailable,\n FindExisting,\n} from '../../../shared/contracts/relations';\n\nimport { contentManagerApi } from './api';\n\nimport type { Modules } from '@strapi/types';\nimport type { errors } from '@strapi/utils';\n\ninterface RelationResult extends RelResult {\n __temp_key__: string;\n}\n\ntype GetRelationsResponse =\n | {\n results: Array<RelationResult>;\n pagination: {\n page: NonNullable<Modules.EntityService.Params.Pagination.PageNotation['page']>;\n pageSize: NonNullable<Modules.EntityService.Params.Pagination.PageNotation['pageSize']>;\n pageCount: number;\n total: number;\n } | null;\n error?: never;\n }\n | {\n results?: never;\n pagination?: never;\n error: errors.ApplicationError | errors.YupValidationError;\n };\n\nconst relationsApi = contentManagerApi.injectEndpoints({\n endpoints: (build) => ({\n getRelations: build.query<\n GetRelationsResponse,\n FindExisting.Params & {\n params?: FindExisting.Request['query'];\n }\n >({\n query: ({ model, id, targetField, params }) => {\n return {\n url: `/content-manager/relations/${model}/${id}/${targetField}`,\n method: 'GET',\n config: {\n params,\n },\n };\n },\n serializeQueryArgs: (args) => {\n const { endpointName, queryArgs } = args;\n return {\n endpointName,\n model: queryArgs.model,\n id: queryArgs.id,\n targetField: queryArgs.targetField,\n locale: queryArgs.params?.locale,\n status: queryArgs.params?.status,\n };\n },\n merge: (currentCache, newItems) => {\n if (currentCache.pagination && newItems.pagination) {\n if (currentCache.pagination.page < newItems.pagination.page) {\n /**\n * Relations will always have unique IDs, so we can therefore assume\n * that we only need to push the new items to the cache.\n *\n * Push new items at the beginning as latest items are shown first\n */\n currentCache.results = [\n ...prepareTempKeys(newItems.results, currentCache.results),\n ...currentCache.results,\n ];\n currentCache.pagination = newItems.pagination;\n } else if (newItems.pagination.page === 1) {\n /**\n * We're resetting the relations\n */\n currentCache.results = prepareTempKeys(newItems.results);\n currentCache.pagination = newItems.pagination;\n }\n }\n },\n forceRefetch({ currentArg, previousArg }) {\n if (!currentArg?.params && !previousArg?.params) {\n return false;\n }\n\n return (\n currentArg?.params?.page !== previousArg?.params?.page ||\n currentArg?.params?.pageSize !== previousArg?.params?.pageSize\n );\n },\n transformResponse: (response: FindExisting.Response) => {\n if ('results' in response && response.results) {\n return {\n ...response,\n results: prepareTempKeys(response.results.toReversed()),\n };\n } else {\n return response;\n }\n },\n providesTags: ['Relations'],\n }),\n searchRelations: build.query<\n FindAvailable.Response,\n FindAvailable.Params & {\n params?: FindAvailable.Request['query'];\n }\n >({\n query: ({ model, targetField, params }) => {\n return {\n url: `/content-manager/relations/${model}/${targetField}`,\n method: 'GET',\n config: {\n params,\n },\n };\n },\n serializeQueryArgs: (args) => {\n const { endpointName, queryArgs } = args;\n return {\n endpointName,\n model: queryArgs.model,\n targetField: queryArgs.targetField,\n _q: queryArgs.params?._q,\n idsToOmit: queryArgs.params?.idsToOmit,\n idsToInclude: queryArgs.params?.idsToInclude,\n };\n },\n merge: (currentCache, newItems) => {\n if (currentCache.pagination && newItems.pagination) {\n if (currentCache.pagination.page < newItems.pagination.page) {\n /**\n * Relations will always have unique IDs, so we can therefore assume\n * that we only need to push the new items to the cache.\n */\n const existingIds = currentCache.results.map((item) => item.documentId);\n const uniqueNewItems = newItems.results.filter(\n (item) => !existingIds.includes(item.documentId)\n );\n currentCache.results.push(...uniqueNewItems);\n currentCache.pagination = newItems.pagination;\n } else if (newItems.pagination.page === 1) {\n /**\n * We're resetting the relations\n */\n currentCache.results = newItems.results;\n currentCache.pagination = newItems.pagination;\n }\n }\n },\n forceRefetch({ currentArg, previousArg }) {\n if (!currentArg?.params && !previousArg?.params) {\n return false;\n }\n\n return (\n currentArg?.params?.page !== previousArg?.params?.page ||\n currentArg?.params?.pageSize !== previousArg?.params?.pageSize\n );\n },\n transformResponse: (response: FindAvailable.Response) => {\n if (response.results) {\n return {\n ...response,\n results: response.results,\n };\n } else {\n return response;\n }\n },\n }),\n }),\n});\n\n/**\n * @internal\n * @description Adds a `__temp_key__` to each relation item. This gives us\n * a stable identifier regardless of it's ids etc. that we can then use for drag and drop.\n */\nconst prepareTempKeys = (relations: RelResult[], existingRelations: RelationResult[] = []) => {\n const [firstItem] = existingRelations.slice(0);\n const keys = generateNKeysBetween(null, firstItem?.__temp_key__ ?? null, relations.length);\n\n return relations.map((datum, index) => ({\n ...datum,\n __temp_key__: keys[index],\n }));\n};\n\nconst { useGetRelationsQuery, useLazySearchRelationsQuery } = relationsApi;\n\nexport { useGetRelationsQuery, useLazySearchRelationsQuery };\nexport type { RelationResult };\n"],"names":["relationsApi","contentManagerApi","injectEndpoints","endpoints","build","getRelations","query","model","id","targetField","params","url","method","config","serializeQueryArgs","args","endpointName","queryArgs","locale","status","merge","currentCache","newItems","pagination","page","results","prepareTempKeys","forceRefetch","currentArg","previousArg","pageSize","transformResponse","response","toReversed","providesTags","searchRelations","_q","idsToOmit","idsToInclude","existingIds","map","item","documentId","uniqueNewItems","filter","includes","push","relations","existingRelations","firstItem","slice","keys","generateNKeysBetween","__temp_key__","length","datum","index","useGetRelationsQuery","useLazySearchRelationsQuery"],"mappings":"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"}
1
+ {"version":3,"file":"relations.mjs","sources":["../../../admin/src/services/relations.ts"],"sourcesContent":["import { generateNKeysBetween } from 'fractional-indexing';\n\nimport {\n RelationResult as RelResult,\n FindAvailable,\n FindExisting,\n} from '../../../shared/contracts/relations';\n\nimport { contentManagerApi } from './api';\n\nimport type { Modules } from '@strapi/types';\nimport type { errors } from '@strapi/utils';\n\ninterface RelationResult extends RelResult {\n __temp_key__: string;\n}\n\ntype GetRelationsResponse =\n | {\n results: Array<RelationResult>;\n pagination: {\n page: NonNullable<Modules.EntityService.Params.Pagination.PageNotation['page']>;\n pageSize: NonNullable<Modules.EntityService.Params.Pagination.PageNotation['pageSize']>;\n pageCount: number;\n total: number;\n } | null;\n error?: never;\n }\n | {\n results?: never;\n pagination?: never;\n error: errors.ApplicationError | errors.YupValidationError;\n };\n\nconst relationsApi = contentManagerApi.injectEndpoints({\n endpoints: (build) => ({\n getRelations: build.query<\n GetRelationsResponse,\n FindExisting.Params & {\n params?: FindExisting.Request['query'];\n }\n >({\n query: ({ model, id, targetField, params }) => {\n return {\n url: `/content-manager/relations/${model}/${id}/${targetField}`,\n method: 'GET',\n config: {\n params,\n },\n };\n },\n serializeQueryArgs: (args) => {\n const { endpointName, queryArgs } = args;\n return {\n endpointName,\n model: queryArgs.model,\n id: queryArgs.id,\n targetField: queryArgs.targetField,\n locale: queryArgs.params?.locale,\n status: queryArgs.params?.status,\n };\n },\n merge: (currentCache, newItems) => {\n if (currentCache.pagination && newItems.pagination) {\n if (currentCache.pagination.page < newItems.pagination.page) {\n /**\n * Relations will always have unique IDs, so we can therefore assume\n * that we only need to push the new items to the cache.\n *\n * Push new items at the beginning as latest items are shown first\n */\n currentCache.results = [\n ...prepareTempKeys(newItems.results, currentCache.results),\n ...currentCache.results,\n ];\n currentCache.pagination = newItems.pagination;\n } else if (newItems.pagination.page === 1) {\n /**\n * We're resetting the relations\n */\n currentCache.results = prepareTempKeys(newItems.results);\n currentCache.pagination = newItems.pagination;\n }\n }\n },\n forceRefetch({ currentArg, previousArg }) {\n if (!currentArg?.params && !previousArg?.params) {\n return false;\n }\n\n return (\n currentArg?.params?.page !== previousArg?.params?.page ||\n currentArg?.params?.pageSize !== previousArg?.params?.pageSize\n );\n },\n transformResponse: (response: FindExisting.Response) => {\n if ('results' in response && response.results) {\n return {\n ...response,\n results: prepareTempKeys(response.results.toReversed()),\n };\n } else {\n return response;\n }\n },\n providesTags: ['Relations'],\n }),\n searchRelations: build.query<\n FindAvailable.Response,\n FindAvailable.Params & {\n params?: FindAvailable.Request['query'];\n }\n >({\n query: ({ model, targetField, params }) => {\n return {\n url: `/content-manager/relations/${model}/${targetField}`,\n method: 'GET',\n config: {\n params,\n },\n };\n },\n serializeQueryArgs: (args) => {\n const { endpointName, queryArgs } = args;\n return {\n endpointName,\n model: queryArgs.model,\n targetField: queryArgs.targetField,\n _q: queryArgs.params?._q,\n idsToOmit: queryArgs.params?.idsToOmit,\n idsToInclude: queryArgs.params?.idsToInclude,\n };\n },\n merge: (currentCache, newItems) => {\n if (currentCache.pagination && newItems.pagination) {\n if (currentCache.pagination.page < newItems.pagination.page) {\n /**\n * Relations will always have unique IDs, so we can therefore assume\n * that we only need to push the new items to the cache.\n */\n const existingIds = currentCache.results.map((item) => item.documentId);\n const uniqueNewItems = newItems.results.filter(\n (item) => !existingIds.includes(item.documentId)\n );\n currentCache.results.push(...uniqueNewItems);\n currentCache.pagination = newItems.pagination;\n } else if (newItems.pagination.page === 1) {\n /**\n * We're resetting the relations\n */\n currentCache.results = newItems.results;\n currentCache.pagination = newItems.pagination;\n }\n }\n },\n forceRefetch({ currentArg, previousArg }) {\n if (!currentArg?.params && !previousArg?.params) {\n return false;\n }\n\n return (\n currentArg?.params?.page !== previousArg?.params?.page ||\n currentArg?.params?.pageSize !== previousArg?.params?.pageSize\n );\n },\n transformResponse: (response: FindAvailable.Response) => {\n if (response.results) {\n return {\n ...response,\n results: response.results,\n };\n } else {\n return response;\n }\n },\n }),\n }),\n});\n\n/**\n * @internal\n * @description Adds a `__temp_key__` to each relation item. This gives us\n * a stable identifier regardless of it's ids etc. that we can then use for drag and drop.\n */\nconst prepareTempKeys = (relations: RelResult[], existingRelations: RelationResult[] = []) => {\n const [firstItem] = existingRelations.slice(0);\n const keys = generateNKeysBetween(null, firstItem?.__temp_key__ ?? null, relations.length);\n\n return relations.map((datum, index) => ({\n ...datum,\n __temp_key__: keys[index],\n }));\n};\n\nconst { useGetRelationsQuery, useLazySearchRelationsQuery } = relationsApi;\n\nexport { useGetRelationsQuery, useLazySearchRelationsQuery };\nexport type { RelationResult };\n"],"names":["relationsApi","contentManagerApi","injectEndpoints","endpoints","build","getRelations","query","model","id","targetField","params","url","method","config","serializeQueryArgs","args","endpointName","queryArgs","locale","status","merge","currentCache","newItems","pagination","page","results","prepareTempKeys","forceRefetch","currentArg","previousArg","pageSize","transformResponse","response","toReversed","providesTags","searchRelations","_q","idsToOmit","idsToInclude","existingIds","map","item","documentId","uniqueNewItems","filter","includes","push","relations","existingRelations","firstItem","slice","keys","generateNKeysBetween","__temp_key__","length","datum","index","useGetRelationsQuery","useLazySearchRelationsQuery"],"mappings":";;;AAkCA,MAAMA,YAAAA,GAAeC,iBAAkBC,CAAAA,eAAe,CAAC;IACrDC,SAAW,EAAA,CAACC,SAAW;YACrBC,YAAcD,EAAAA,KAAAA,CAAME,KAAK,CAKvB;gBACAA,KAAO,EAAA,CAAC,EAAEC,KAAK,EAAEC,EAAE,EAAEC,WAAW,EAAEC,MAAM,EAAE,GAAA;oBACxC,OAAO;wBACLC,GAAK,EAAA,CAAC,2BAA2B,EAAEJ,KAAAA,CAAM,CAAC,EAAEC,EAAAA,CAAG,CAAC,EAAEC,WAAa,CAAA,CAAA;wBAC/DG,MAAQ,EAAA,KAAA;wBACRC,MAAQ,EAAA;AACNH,4BAAAA;AACF;AACF,qBAAA;AACF,iBAAA;AACAI,gBAAAA,kBAAAA,EAAoB,CAACC,IAAAA,GAAAA;AACnB,oBAAA,MAAM,EAAEC,YAAY,EAAEC,SAAS,EAAE,GAAGF,IAAAA;oBACpC,OAAO;AACLC,wBAAAA,YAAAA;AACAT,wBAAAA,KAAAA,EAAOU,UAAUV,KAAK;AACtBC,wBAAAA,EAAAA,EAAIS,UAAUT,EAAE;AAChBC,wBAAAA,WAAAA,EAAaQ,UAAUR,WAAW;wBAClCS,MAAQD,EAAAA,SAAAA,CAAUP,MAAM,EAAEQ,MAAAA;wBAC1BC,MAAQF,EAAAA,SAAAA,CAAUP,MAAM,EAAES;AAC5B,qBAAA;AACF,iBAAA;AACAC,gBAAAA,KAAAA,EAAO,CAACC,YAAcC,EAAAA,QAAAA,GAAAA;AACpB,oBAAA,IAAID,YAAaE,CAAAA,UAAU,IAAID,QAAAA,CAASC,UAAU,EAAE;wBAClD,IAAIF,YAAAA,CAAaE,UAAU,CAACC,IAAI,GAAGF,QAASC,CAAAA,UAAU,CAACC,IAAI,EAAE;AAC3D;;;;;gBAMAH,YAAAA,CAAaI,OAAO,GAAG;AAClBC,gCAAAA,GAAAA,eAAAA,CAAgBJ,QAASG,CAAAA,OAAO,EAAEJ,YAAAA,CAAaI,OAAO,CAAA;AACtDJ,gCAAAA,GAAAA,YAAAA,CAAaI;AACjB,6BAAA;4BACDJ,YAAaE,CAAAA,UAAU,GAAGD,QAAAA,CAASC,UAAU;AAC/C,yBAAA,MAAO,IAAID,QAASC,CAAAA,UAAU,CAACC,IAAI,KAAK,CAAG,EAAA;AACzC;;AAEC,gBACDH,YAAaI,CAAAA,OAAO,GAAGC,eAAAA,CAAgBJ,SAASG,OAAO,CAAA;4BACvDJ,YAAaE,CAAAA,UAAU,GAAGD,QAAAA,CAASC,UAAU;AAC/C;AACF;AACF,iBAAA;AACAI,gBAAAA,YAAAA,CAAAA,CAAa,EAAEC,UAAU,EAAEC,WAAW,EAAE,EAAA;AACtC,oBAAA,IAAI,CAACD,UAAAA,EAAYlB,MAAU,IAAA,CAACmB,aAAanB,MAAQ,EAAA;wBAC/C,OAAO,KAAA;AACT;oBAEA,OACEkB,UAAAA,EAAYlB,MAAQc,EAAAA,IAAAA,KAASK,WAAanB,EAAAA,MAAAA,EAAQc,QAClDI,UAAYlB,EAAAA,MAAAA,EAAQoB,QAAaD,KAAAA,WAAAA,EAAanB,MAAQoB,EAAAA,QAAAA;AAE1D,iBAAA;AACAC,gBAAAA,iBAAAA,EAAmB,CAACC,QAAAA,GAAAA;AAClB,oBAAA,IAAI,SAAaA,IAAAA,QAAAA,IAAYA,QAASP,CAAAA,OAAO,EAAE;wBAC7C,OAAO;AACL,4BAAA,GAAGO,QAAQ;AACXP,4BAAAA,OAAAA,EAASC,eAAgBM,CAAAA,QAAAA,CAASP,OAAO,CAACQ,UAAU,EAAA;AACtD,yBAAA;qBACK,MAAA;wBACL,OAAOD,QAAAA;AACT;AACF,iBAAA;gBACAE,YAAc,EAAA;AAAC,oBAAA;AAAY;AAC7B,aAAA,CAAA;YACAC,eAAiB/B,EAAAA,KAAAA,CAAME,KAAK,CAK1B;AACAA,gBAAAA,KAAAA,EAAO,CAAC,EAAEC,KAAK,EAAEE,WAAW,EAAEC,MAAM,EAAE,GAAA;oBACpC,OAAO;AACLC,wBAAAA,GAAAA,EAAK,CAAC,2BAA2B,EAAEJ,KAAM,CAAA,CAAC,EAAEE,WAAa,CAAA,CAAA;wBACzDG,MAAQ,EAAA,KAAA;wBACRC,MAAQ,EAAA;AACNH,4BAAAA;AACF;AACF,qBAAA;AACF,iBAAA;AACAI,gBAAAA,kBAAAA,EAAoB,CAACC,IAAAA,GAAAA;AACnB,oBAAA,MAAM,EAAEC,YAAY,EAAEC,SAAS,EAAE,GAAGF,IAAAA;oBACpC,OAAO;AACLC,wBAAAA,YAAAA;AACAT,wBAAAA,KAAAA,EAAOU,UAAUV,KAAK;AACtBE,wBAAAA,WAAAA,EAAaQ,UAAUR,WAAW;wBAClC2B,EAAInB,EAAAA,SAAAA,CAAUP,MAAM,EAAE0B,EAAAA;wBACtBC,SAAWpB,EAAAA,SAAAA,CAAUP,MAAM,EAAE2B,SAAAA;wBAC7BC,YAAcrB,EAAAA,SAAAA,CAAUP,MAAM,EAAE4B;AAClC,qBAAA;AACF,iBAAA;AACAlB,gBAAAA,KAAAA,EAAO,CAACC,YAAcC,EAAAA,QAAAA,GAAAA;AACpB,oBAAA,IAAID,YAAaE,CAAAA,UAAU,IAAID,QAAAA,CAASC,UAAU,EAAE;wBAClD,IAAIF,YAAAA,CAAaE,UAAU,CAACC,IAAI,GAAGF,QAASC,CAAAA,UAAU,CAACC,IAAI,EAAE;AAC3D;;;gBAIA,MAAMe,WAAclB,GAAAA,YAAAA,CAAaI,OAAO,CAACe,GAAG,CAAC,CAACC,IAASA,GAAAA,IAAAA,CAAKC,UAAU,CAAA;AACtE,4BAAA,MAAMC,cAAiBrB,GAAAA,QAAAA,CAASG,OAAO,CAACmB,MAAM,CAC5C,CAACH,IAAAA,GAAS,CAACF,WAAAA,CAAYM,QAAQ,CAACJ,KAAKC,UAAU,CAAA,CAAA;4BAEjDrB,YAAaI,CAAAA,OAAO,CAACqB,IAAI,CAAIH,GAAAA,cAAAA,CAAAA;4BAC7BtB,YAAaE,CAAAA,UAAU,GAAGD,QAAAA,CAASC,UAAU;AAC/C,yBAAA,MAAO,IAAID,QAASC,CAAAA,UAAU,CAACC,IAAI,KAAK,CAAG,EAAA;AACzC;;AAEC,gBACDH,YAAaI,CAAAA,OAAO,GAAGH,QAAAA,CAASG,OAAO;4BACvCJ,YAAaE,CAAAA,UAAU,GAAGD,QAAAA,CAASC,UAAU;AAC/C;AACF;AACF,iBAAA;AACAI,gBAAAA,YAAAA,CAAAA,CAAa,EAAEC,UAAU,EAAEC,WAAW,EAAE,EAAA;AACtC,oBAAA,IAAI,CAACD,UAAAA,EAAYlB,MAAU,IAAA,CAACmB,aAAanB,MAAQ,EAAA;wBAC/C,OAAO,KAAA;AACT;oBAEA,OACEkB,UAAAA,EAAYlB,MAAQc,EAAAA,IAAAA,KAASK,WAAanB,EAAAA,MAAAA,EAAQc,QAClDI,UAAYlB,EAAAA,MAAAA,EAAQoB,QAAaD,KAAAA,WAAAA,EAAanB,MAAQoB,EAAAA,QAAAA;AAE1D,iBAAA;AACAC,gBAAAA,iBAAAA,EAAmB,CAACC,QAAAA,GAAAA;oBAClB,IAAIA,QAAAA,CAASP,OAAO,EAAE;wBACpB,OAAO;AACL,4BAAA,GAAGO,QAAQ;AACXP,4BAAAA,OAAAA,EAASO,SAASP;AACpB,yBAAA;qBACK,MAAA;wBACL,OAAOO,QAAAA;AACT;AACF;AACF,aAAA;SACF;AACF,CAAA,CAAA;AAEA;;;;AAIC,IACD,MAAMN,eAAAA,GAAkB,CAACqB,SAAAA,EAAwBC,oBAAsC,EAAE,GAAA;AACvF,IAAA,MAAM,CAACC,SAAAA,CAAU,GAAGD,iBAAAA,CAAkBE,KAAK,CAAC,CAAA,CAAA;AAC5C,IAAA,MAAMC,OAAOC,oBAAqB,CAAA,IAAA,EAAMH,WAAWI,YAAgB,IAAA,IAAA,EAAMN,UAAUO,MAAM,CAAA;AAEzF,IAAA,OAAOP,UAAUP,GAAG,CAAC,CAACe,KAAAA,EAAOC,SAAW;AACtC,YAAA,GAAGD,KAAK;YACRF,YAAcF,EAAAA,IAAI,CAACK,KAAM;SAC3B,CAAA,CAAA;AACF,CAAA;AAEA,MAAM,EAAEC,oBAAoB,EAAEC,2BAA2B,EAAE,GAAG1D;;;;"}
@@ -8,5 +8,5 @@ declare const useGetHistoryVersionsQuery: import("@reduxjs/toolkit/dist/query/re
8
8
  contentType: import("@strapi/types/dist/uid").ContentType;
9
9
  documentId?: Data.ID | undefined;
10
10
  locale?: string | undefined;
11
- } & Partial<Pick<import("../../../../shared/contracts/history-versions").Pagination, "page" | "pageSize">>, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AIUsage" | "ComponentConfiguration" | "ContentTypesConfiguration" | "ContentTypeSettings" | "Document" | "InitialData" | "HistoryVersion" | "Relations" | "UidAvailability" | "RecentDocumentList" | "CountDocuments" | "UpcomingReleasesList" | "AILocalizationJobs", GetHistoryVersions.Response, "adminApi">>, useRestoreVersionMutation: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseMutation<import("@reduxjs/toolkit/query").MutationDefinition<RestoreVersion, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AIUsage" | "ComponentConfiguration" | "ContentTypesConfiguration" | "ContentTypeSettings" | "Document" | "InitialData" | "HistoryVersion" | "Relations" | "UidAvailability" | "RecentDocumentList" | "CountDocuments" | "UpcomingReleasesList" | "AILocalizationJobs", RestoreHistoryVersion.Response, "adminApi">>;
11
+ } & Partial<Pick<import("../../../../shared/contracts/history-versions").Pagination, "page" | "pageSize">>, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AIUsage" | "AIFeatureConfig" | "ComponentConfiguration" | "ContentTypesConfiguration" | "ContentTypeSettings" | "Document" | "InitialData" | "HistoryVersion" | "Relations" | "UidAvailability" | "RecentDocumentList" | "CountDocuments" | "UpcomingReleasesList" | "AILocalizationJobs", GetHistoryVersions.Response, "adminApi">>, useRestoreVersionMutation: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseMutation<import("@reduxjs/toolkit/query").MutationDefinition<RestoreVersion, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AIUsage" | "AIFeatureConfig" | "ComponentConfiguration" | "ContentTypesConfiguration" | "ContentTypeSettings" | "Document" | "InitialData" | "HistoryVersion" | "Relations" | "UidAvailability" | "RecentDocumentList" | "CountDocuments" | "UpcomingReleasesList" | "AILocalizationJobs", RestoreHistoryVersion.Response, "adminApi">>;
12
12
  export { useGetHistoryVersionsQuery, useRestoreVersionMutation };
@@ -1,3 +1,3 @@
1
1
  import { GetPreviewUrl } from '../../../../shared/contracts/preview';
2
- declare const useGetPreviewUrlQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseQuery<import("@reduxjs/toolkit/query").QueryDefinition<GetPreviewUrl.Request, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AIUsage" | "ComponentConfiguration" | "ContentTypesConfiguration" | "ContentTypeSettings" | "Document" | "InitialData" | "HistoryVersion" | "Relations" | "UidAvailability" | "RecentDocumentList" | "CountDocuments" | "UpcomingReleasesList" | "AILocalizationJobs", GetPreviewUrl.Response, "adminApi">>;
2
+ declare const useGetPreviewUrlQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseQuery<import("@reduxjs/toolkit/query").QueryDefinition<GetPreviewUrl.Request, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AIUsage" | "AIFeatureConfig" | "ComponentConfiguration" | "ContentTypesConfiguration" | "ContentTypeSettings" | "Document" | "InitialData" | "HistoryVersion" | "Relations" | "UidAvailability" | "RecentDocumentList" | "CountDocuments" | "UpcomingReleasesList" | "AILocalizationJobs", GetPreviewUrl.Response, "adminApi">>;
3
3
  export { useGetPreviewUrlQuery };
@@ -1,2 +1,2 @@
1
- declare const contentManagerApi: import("@reduxjs/toolkit/query").Api<import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, import("@reduxjs/toolkit/dist/query/endpointDefinitions").UpdateDefinitions<{}, "GuidedTourMeta" | "HomepageKeyStatistics" | "AIUsage" | "ComponentConfiguration" | "ContentTypesConfiguration" | "ContentTypeSettings" | "Document" | "InitialData" | "HistoryVersion" | "Relations" | "UidAvailability" | "RecentDocumentList" | "CountDocuments" | "UpcomingReleasesList" | "AILocalizationJobs", never>, "adminApi", "GuidedTourMeta" | "HomepageKeyStatistics" | "AIUsage" | "ComponentConfiguration" | "ContentTypesConfiguration" | "ContentTypeSettings" | "Document" | "InitialData" | "HistoryVersion" | "Relations" | "UidAvailability" | "RecentDocumentList" | "CountDocuments" | "UpcomingReleasesList" | "AILocalizationJobs", typeof import("@reduxjs/toolkit/query").coreModuleName | typeof import("@reduxjs/toolkit/dist/query/react").reactHooksModuleName>;
1
+ declare const contentManagerApi: import("@reduxjs/toolkit/query").Api<import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, import("@reduxjs/toolkit/dist/query/endpointDefinitions").UpdateDefinitions<{}, "GuidedTourMeta" | "HomepageKeyStatistics" | "AIUsage" | "AIFeatureConfig" | "ComponentConfiguration" | "ContentTypesConfiguration" | "ContentTypeSettings" | "Document" | "InitialData" | "HistoryVersion" | "Relations" | "UidAvailability" | "RecentDocumentList" | "CountDocuments" | "UpcomingReleasesList" | "AILocalizationJobs", never>, "adminApi", "GuidedTourMeta" | "HomepageKeyStatistics" | "AIUsage" | "AIFeatureConfig" | "ComponentConfiguration" | "ContentTypesConfiguration" | "ContentTypeSettings" | "Document" | "InitialData" | "HistoryVersion" | "Relations" | "UidAvailability" | "RecentDocumentList" | "CountDocuments" | "UpcomingReleasesList" | "AILocalizationJobs", typeof import("@reduxjs/toolkit/query").coreModuleName | typeof import("@reduxjs/toolkit/dist/query/react").reactHooksModuleName>;
2
2
  export { contentManagerApi };
@@ -1,5 +1,5 @@
1
- declare const useGetComponentConfigurationQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseQuery<import("@reduxjs/toolkit/query").QueryDefinition<string, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AIUsage" | "ComponentConfiguration" | "ContentTypesConfiguration" | "ContentTypeSettings" | "Document" | "InitialData" | "HistoryVersion" | "Relations" | "UidAvailability" | "RecentDocumentList" | "CountDocuments" | "UpcomingReleasesList" | "AILocalizationJobs", {
1
+ declare const useGetComponentConfigurationQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseQuery<import("@reduxjs/toolkit/query").QueryDefinition<string, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AIUsage" | "AIFeatureConfig" | "ComponentConfiguration" | "ContentTypesConfiguration" | "ContentTypeSettings" | "Document" | "InitialData" | "HistoryVersion" | "Relations" | "UidAvailability" | "RecentDocumentList" | "CountDocuments" | "UpcomingReleasesList" | "AILocalizationJobs", {
2
2
  component: import("../../../shared/contracts/components").ComponentConfiguration;
3
3
  components: Record<string, import("../../../shared/contracts/components").ComponentConfiguration>;
4
- }, "adminApi">>, useUpdateComponentConfigurationMutation: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseMutation<import("@reduxjs/toolkit/query").MutationDefinition<any, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AIUsage" | "ComponentConfiguration" | "ContentTypesConfiguration" | "ContentTypeSettings" | "Document" | "InitialData" | "HistoryVersion" | "Relations" | "UidAvailability" | "RecentDocumentList" | "CountDocuments" | "UpcomingReleasesList" | "AILocalizationJobs", import("../../../shared/contracts/components").ComponentConfiguration, "adminApi">>;
4
+ }, "adminApi">>, useUpdateComponentConfigurationMutation: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseMutation<import("@reduxjs/toolkit/query").MutationDefinition<any, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AIUsage" | "AIFeatureConfig" | "ComponentConfiguration" | "ContentTypesConfiguration" | "ContentTypeSettings" | "Document" | "InitialData" | "HistoryVersion" | "Relations" | "UidAvailability" | "RecentDocumentList" | "CountDocuments" | "UpcomingReleasesList" | "AILocalizationJobs", import("../../../shared/contracts/components").ComponentConfiguration, "adminApi">>;
5
5
  export { useGetComponentConfigurationQuery, useUpdateComponentConfigurationMutation };
@@ -1,7 +1,7 @@
1
- declare const useGetContentTypeConfigurationQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseQuery<import("@reduxjs/toolkit/query").QueryDefinition<string, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AIUsage" | "ComponentConfiguration" | "ContentTypesConfiguration" | "ContentTypeSettings" | "Document" | "InitialData" | "HistoryVersion" | "Relations" | "UidAvailability" | "RecentDocumentList" | "CountDocuments" | "UpcomingReleasesList" | "AILocalizationJobs", {
1
+ declare const useGetContentTypeConfigurationQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseQuery<import("@reduxjs/toolkit/query").QueryDefinition<string, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AIUsage" | "AIFeatureConfig" | "ComponentConfiguration" | "ContentTypesConfiguration" | "ContentTypeSettings" | "Document" | "InitialData" | "HistoryVersion" | "Relations" | "UidAvailability" | "RecentDocumentList" | "CountDocuments" | "UpcomingReleasesList" | "AILocalizationJobs", {
2
2
  contentType: import("../../../shared/contracts/content-types").Configuration;
3
3
  components: Record<string, import("../../../shared/contracts/components").ComponentConfiguration>;
4
- }, "adminApi">>, useGetAllContentTypeSettingsQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseQuery<import("@reduxjs/toolkit/query").QueryDefinition<void, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AIUsage" | "ComponentConfiguration" | "ContentTypesConfiguration" | "ContentTypeSettings" | "Document" | "InitialData" | "HistoryVersion" | "Relations" | "UidAvailability" | "RecentDocumentList" | "CountDocuments" | "UpcomingReleasesList" | "AILocalizationJobs", {
4
+ }, "adminApi">>, useGetAllContentTypeSettingsQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseQuery<import("@reduxjs/toolkit/query").QueryDefinition<void, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AIUsage" | "AIFeatureConfig" | "ComponentConfiguration" | "ContentTypesConfiguration" | "ContentTypeSettings" | "Document" | "InitialData" | "HistoryVersion" | "Relations" | "UidAvailability" | "RecentDocumentList" | "CountDocuments" | "UpcomingReleasesList" | "AILocalizationJobs", {
5
5
  uid: string;
6
6
  settings: import("../../../shared/contracts/content-types").Settings;
7
7
  }[], "adminApi">>, useUpdateContentTypeConfigurationMutation: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseMutation<import("@reduxjs/toolkit/query").MutationDefinition<{
@@ -10,7 +10,7 @@ declare const useGetContentTypeConfigurationQuery: import("@reduxjs/toolkit/dist
10
10
  settings: import("../../../shared/contracts/content-types").Settings;
11
11
  } & {
12
12
  uid: string;
13
- }, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AIUsage" | "ComponentConfiguration" | "ContentTypesConfiguration" | "ContentTypeSettings" | "Document" | "InitialData" | "HistoryVersion" | "Relations" | "UidAvailability" | "RecentDocumentList" | "CountDocuments" | "UpcomingReleasesList" | "AILocalizationJobs", {
13
+ }, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "GuidedTourMeta" | "HomepageKeyStatistics" | "AIUsage" | "AIFeatureConfig" | "ComponentConfiguration" | "ContentTypesConfiguration" | "ContentTypeSettings" | "Document" | "InitialData" | "HistoryVersion" | "Relations" | "UidAvailability" | "RecentDocumentList" | "CountDocuments" | "UpcomingReleasesList" | "AILocalizationJobs", {
14
14
  contentType: import("../../../shared/contracts/content-types").Configuration;
15
15
  components: Record<string, import("../../../shared/contracts/components").ComponentConfiguration>;
16
16
  }, "adminApi">>;