@strapi/content-releases 0.0.0-experimental.f6c00790e260ea5a9b6b86abac5fea02b05d569c → 0.0.0-experimental.f736daceb203b33d9ed36a1149e21f2814d1935c
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/_chunks/{App-JwN_xBnA.mjs → App-CiZCkScI.mjs} +300 -116
- package/dist/_chunks/App-CiZCkScI.mjs.map +1 -0
- package/dist/_chunks/{App-BFo3ibui.js → App-SGjO5UPV.js} +340 -157
- package/dist/_chunks/App-SGjO5UPV.js.map +1 -0
- package/dist/_chunks/{PurchaseContentReleases-Be3acS2L.js → PurchaseContentReleases--qQepXpP.js} +2 -2
- package/dist/_chunks/PurchaseContentReleases--qQepXpP.js.map +1 -0
- package/dist/_chunks/{PurchaseContentReleases-_MxP6-Dt.mjs → PurchaseContentReleases-D-n-w-st.mjs} +2 -2
- package/dist/_chunks/{PurchaseContentReleases-_MxP6-Dt.mjs.map → PurchaseContentReleases-D-n-w-st.mjs.map} +1 -1
- package/dist/_chunks/{ReleasesSettingsPage-BanjZwEc.js → ReleasesSettingsPage-Cto_NLUd.js} +3 -3
- package/dist/_chunks/{ReleasesSettingsPage-BanjZwEc.js.map → ReleasesSettingsPage-Cto_NLUd.js.map} +1 -1
- package/dist/_chunks/{ReleasesSettingsPage-CNMXGcZC.mjs → ReleasesSettingsPage-DQT8N3A-.mjs} +3 -3
- package/dist/_chunks/{ReleasesSettingsPage-CNMXGcZC.mjs.map → ReleasesSettingsPage-DQT8N3A-.mjs.map} +1 -1
- package/dist/_chunks/{en-CmYoEnA7.js → en-BWPPsSH-.js} +11 -2
- package/dist/_chunks/en-BWPPsSH-.js.map +1 -0
- package/dist/_chunks/{en-D0yVZFqf.mjs → en-D9Q4YW03.mjs} +11 -2
- package/dist/_chunks/en-D9Q4YW03.mjs.map +1 -0
- package/dist/_chunks/{index-C_e6DQb0.mjs → index-BjvFfTtA.mjs} +68 -24
- package/dist/_chunks/index-BjvFfTtA.mjs.map +1 -0
- package/dist/_chunks/{index-Em3KctMx.js → index-CyU534vL.js} +69 -26
- package/dist/_chunks/index-CyU534vL.js.map +1 -0
- package/dist/_chunks/{schemas-z5zp-_Gd.js → schemas-DBYv9gK8.js} +3 -4
- package/dist/_chunks/schemas-DBYv9gK8.js.map +1 -0
- package/dist/_chunks/{schemas-63pFihNF.mjs → schemas-DdA2ic2U.mjs} +2 -2
- package/dist/_chunks/schemas-DdA2ic2U.mjs.map +1 -0
- package/dist/admin/index.js +1 -1
- package/dist/admin/index.mjs +1 -1
- package/dist/admin/src/components/EntryValidationPopover.d.ts +13 -0
- package/dist/admin/src/services/release.d.ts +28 -28
- package/dist/server/index.js +108 -14
- package/dist/server/index.js.map +1 -1
- package/dist/server/index.mjs +107 -12
- package/dist/server/index.mjs.map +1 -1
- package/dist/server/src/controllers/release.d.ts.map +1 -1
- package/dist/server/src/index.d.ts +2 -6
- package/dist/server/src/index.d.ts.map +1 -1
- package/dist/server/src/middlewares/documents.d.ts.map +1 -1
- package/dist/server/src/migrations/database/5.0.0-document-id-in-actions.d.ts.map +1 -1
- package/dist/server/src/services/index.d.ts +2 -6
- package/dist/server/src/services/index.d.ts.map +1 -1
- package/dist/server/src/services/release-action.d.ts +3 -7
- package/dist/server/src/services/release-action.d.ts.map +1 -1
- package/dist/server/src/utils/index.d.ts.map +1 -1
- package/dist/shared/contracts/release-actions.d.ts +8 -1
- package/dist/shared/contracts/release-actions.d.ts.map +1 -1
- package/package.json +16 -16
- package/dist/_chunks/App-BFo3ibui.js.map +0 -1
- package/dist/_chunks/App-JwN_xBnA.mjs.map +0 -1
- package/dist/_chunks/PurchaseContentReleases-Be3acS2L.js.map +0 -1
- package/dist/_chunks/en-CmYoEnA7.js.map +0 -1
- package/dist/_chunks/en-D0yVZFqf.mjs.map +0 -1
- package/dist/_chunks/index-C_e6DQb0.mjs.map +0 -1
- package/dist/_chunks/index-Em3KctMx.js.map +0 -1
- package/dist/_chunks/schemas-63pFihNF.mjs.map +0 -1
- package/dist/_chunks/schemas-z5zp-_Gd.js.map +0 -1
- package/strapi-server.js +0 -3
|
@@ -21,92 +21,92 @@ type GetReleasesTabResponse = GetReleases.Response & {
|
|
|
21
21
|
activeTab: 'pending' | 'done';
|
|
22
22
|
};
|
|
23
23
|
};
|
|
24
|
-
declare const releaseApi: 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<{}, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings", never> & {
|
|
24
|
+
declare const releaseApi: 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<{}, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings" | "Document", never> & {
|
|
25
25
|
getReleasesForEntry: import("@reduxjs/toolkit/query").QueryDefinition<Partial<{
|
|
26
26
|
contentType: string;
|
|
27
27
|
entryDocumentId: any;
|
|
28
28
|
locale?: string | undefined;
|
|
29
29
|
hasEntryAttached?: boolean | undefined;
|
|
30
|
-
}>, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings", GetReleasesByDocumentAttached.Response, "adminApi">;
|
|
31
|
-
getReleases: import("@reduxjs/toolkit/query").QueryDefinition<void | GetReleasesQueryParams, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings", GetReleasesTabResponse, "adminApi">;
|
|
30
|
+
}>, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings" | "Document", GetReleasesByDocumentAttached.Response, "adminApi">;
|
|
31
|
+
getReleases: import("@reduxjs/toolkit/query").QueryDefinition<void | GetReleasesQueryParams, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings" | "Document", GetReleasesTabResponse, "adminApi">;
|
|
32
32
|
getRelease: import("@reduxjs/toolkit/query").QueryDefinition<{
|
|
33
33
|
id: import("@strapi/types/dist/data").ID;
|
|
34
|
-
}, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings", GetRelease.Response, "adminApi">;
|
|
34
|
+
}, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings" | "Document", GetRelease.Response, "adminApi">;
|
|
35
35
|
getReleaseActions: import("@reduxjs/toolkit/query").QueryDefinition<{
|
|
36
36
|
releaseId: import("@strapi/types/dist/data").ID;
|
|
37
37
|
} & Partial<Pick<import("../../../shared/contracts/releases").Pagination, "page" | "pageSize">> & {
|
|
38
38
|
groupBy?: ReleaseActionGroupBy | undefined;
|
|
39
|
-
}, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings", GetReleaseActions.Response, "adminApi">;
|
|
39
|
+
}, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings" | "Document", GetReleaseActions.Response, "adminApi">;
|
|
40
40
|
createRelease: import("@reduxjs/toolkit/query").MutationDefinition<{
|
|
41
41
|
name: string;
|
|
42
42
|
scheduledAt: Date | null;
|
|
43
43
|
timezone: string | null;
|
|
44
|
-
}, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings", CreateRelease.Response, "adminApi">;
|
|
44
|
+
}, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings" | "Document", CreateRelease.Response, "adminApi">;
|
|
45
45
|
updateRelease: import("@reduxjs/toolkit/query").MutationDefinition<{
|
|
46
46
|
id: import("@strapi/types/dist/data").ID;
|
|
47
47
|
} & {
|
|
48
48
|
name: string;
|
|
49
49
|
scheduledAt?: Date | null | undefined;
|
|
50
50
|
timezone?: string | null | undefined;
|
|
51
|
-
}, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings", void, "adminApi">;
|
|
52
|
-
createReleaseAction: import("@reduxjs/toolkit/query").MutationDefinition<CreateReleaseAction.Request, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings", CreateReleaseAction.Response, "adminApi">;
|
|
53
|
-
createManyReleaseActions: import("@reduxjs/toolkit/query").MutationDefinition<CreateManyReleaseActions.Request, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings", CreateManyReleaseActions.Response, "adminApi">;
|
|
51
|
+
}, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings" | "Document", void, "adminApi">;
|
|
52
|
+
createReleaseAction: import("@reduxjs/toolkit/query").MutationDefinition<CreateReleaseAction.Request, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings" | "Document", CreateReleaseAction.Response, "adminApi">;
|
|
53
|
+
createManyReleaseActions: import("@reduxjs/toolkit/query").MutationDefinition<CreateManyReleaseActions.Request, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings" | "Document", CreateManyReleaseActions.Response, "adminApi">;
|
|
54
54
|
updateReleaseAction: import("@reduxjs/toolkit/query").MutationDefinition<UpdateReleaseAction.Request & {
|
|
55
55
|
query: GetReleaseActions.Request['query'];
|
|
56
56
|
} & {
|
|
57
57
|
actionPath: [string, number];
|
|
58
|
-
}, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings", UpdateReleaseAction.Response, "adminApi">;
|
|
59
|
-
deleteReleaseAction: import("@reduxjs/toolkit/query").MutationDefinition<DeleteReleaseAction.Request, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings", DeleteReleaseAction.Response, "adminApi">;
|
|
58
|
+
}, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings" | "Document", UpdateReleaseAction.Response, "adminApi">;
|
|
59
|
+
deleteReleaseAction: import("@reduxjs/toolkit/query").MutationDefinition<DeleteReleaseAction.Request, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings" | "Document", DeleteReleaseAction.Response, "adminApi">;
|
|
60
60
|
publishRelease: import("@reduxjs/toolkit/query").MutationDefinition<{
|
|
61
61
|
id: import("@strapi/types/dist/data").ID;
|
|
62
|
-
}, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings", PublishRelease.Response, "adminApi">;
|
|
62
|
+
}, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings" | "Document", PublishRelease.Response, "adminApi">;
|
|
63
63
|
deleteRelease: import("@reduxjs/toolkit/query").MutationDefinition<{
|
|
64
64
|
id: import("@strapi/types/dist/data").ID;
|
|
65
|
-
}, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings", DeleteRelease.Response, "adminApi">;
|
|
65
|
+
}, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings" | "Document", DeleteRelease.Response, "adminApi">;
|
|
66
66
|
getMappedEntriesInReleases: import("@reduxjs/toolkit/query").QueryDefinition<{
|
|
67
67
|
contentTypeUid: import("@strapi/types/dist/uid").ContentType;
|
|
68
68
|
documentIds: string[];
|
|
69
69
|
locale?: string | undefined;
|
|
70
|
-
}, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings", {
|
|
70
|
+
}, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings" | "Document", {
|
|
71
71
|
[documentId: string]: Pick<import("../../../shared/contracts/releases").Release, "id" | "name">[];
|
|
72
72
|
}, "adminApi">;
|
|
73
|
-
getReleaseSettings: import("@reduxjs/toolkit/query").QueryDefinition<void | GetSettings.Request, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings", GetSettings.Response, "adminApi">;
|
|
74
|
-
updateReleaseSettings: import("@reduxjs/toolkit/query").MutationDefinition<import("../../../shared/contracts/settings").Settings, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings", void, "adminApi">;
|
|
75
|
-
}, "adminApi", "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings", typeof import("@reduxjs/toolkit/query").coreModuleName | typeof import("@reduxjs/toolkit/dist/query/react").reactHooksModuleName>;
|
|
76
|
-
declare const useGetReleasesQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseQuery<import("@reduxjs/toolkit/query").QueryDefinition<void | GetReleasesQueryParams, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings", GetReleasesTabResponse, "adminApi">>, useGetReleasesForEntryQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseQuery<import("@reduxjs/toolkit/query").QueryDefinition<Partial<{
|
|
73
|
+
getReleaseSettings: import("@reduxjs/toolkit/query").QueryDefinition<void | GetSettings.Request, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings" | "Document", GetSettings.Response, "adminApi">;
|
|
74
|
+
updateReleaseSettings: import("@reduxjs/toolkit/query").MutationDefinition<import("../../../shared/contracts/settings").Settings, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings" | "Document", void, "adminApi">;
|
|
75
|
+
}, "adminApi", "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings" | "Document", typeof import("@reduxjs/toolkit/query").coreModuleName | typeof import("@reduxjs/toolkit/dist/query/react").reactHooksModuleName>;
|
|
76
|
+
declare const useGetReleasesQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseQuery<import("@reduxjs/toolkit/query").QueryDefinition<void | GetReleasesQueryParams, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings" | "Document", GetReleasesTabResponse, "adminApi">>, useGetReleasesForEntryQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseQuery<import("@reduxjs/toolkit/query").QueryDefinition<Partial<{
|
|
77
77
|
contentType: string;
|
|
78
78
|
entryDocumentId: any;
|
|
79
79
|
locale?: string | undefined;
|
|
80
80
|
hasEntryAttached?: boolean | undefined;
|
|
81
|
-
}>, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings", GetReleasesByDocumentAttached.Response, "adminApi">>, useGetReleaseQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseQuery<import("@reduxjs/toolkit/query").QueryDefinition<{
|
|
81
|
+
}>, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings" | "Document", GetReleasesByDocumentAttached.Response, "adminApi">>, useGetReleaseQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseQuery<import("@reduxjs/toolkit/query").QueryDefinition<{
|
|
82
82
|
id: import("@strapi/types/dist/data").ID;
|
|
83
|
-
}, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings", GetRelease.Response, "adminApi">>, useGetReleaseActionsQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseQuery<import("@reduxjs/toolkit/query").QueryDefinition<{
|
|
83
|
+
}, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings" | "Document", GetRelease.Response, "adminApi">>, useGetReleaseActionsQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseQuery<import("@reduxjs/toolkit/query").QueryDefinition<{
|
|
84
84
|
releaseId: import("@strapi/types/dist/data").ID;
|
|
85
85
|
} & Partial<Pick<import("../../../shared/contracts/releases").Pagination, "page" | "pageSize">> & {
|
|
86
86
|
groupBy?: ReleaseActionGroupBy | undefined;
|
|
87
|
-
}, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings", GetReleaseActions.Response, "adminApi">>, useCreateReleaseMutation: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseMutation<import("@reduxjs/toolkit/query").MutationDefinition<{
|
|
87
|
+
}, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings" | "Document", GetReleaseActions.Response, "adminApi">>, useCreateReleaseMutation: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseMutation<import("@reduxjs/toolkit/query").MutationDefinition<{
|
|
88
88
|
name: string;
|
|
89
89
|
scheduledAt: Date | null;
|
|
90
90
|
timezone: string | null;
|
|
91
|
-
}, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings", CreateRelease.Response, "adminApi">>, useCreateReleaseActionMutation: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseMutation<import("@reduxjs/toolkit/query").MutationDefinition<CreateReleaseAction.Request, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings", CreateReleaseAction.Response, "adminApi">>, useCreateManyReleaseActionsMutation: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseMutation<import("@reduxjs/toolkit/query").MutationDefinition<CreateManyReleaseActions.Request, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings", CreateManyReleaseActions.Response, "adminApi">>, useUpdateReleaseMutation: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseMutation<import("@reduxjs/toolkit/query").MutationDefinition<{
|
|
91
|
+
}, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings" | "Document", CreateRelease.Response, "adminApi">>, useCreateReleaseActionMutation: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseMutation<import("@reduxjs/toolkit/query").MutationDefinition<CreateReleaseAction.Request, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings" | "Document", CreateReleaseAction.Response, "adminApi">>, useCreateManyReleaseActionsMutation: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseMutation<import("@reduxjs/toolkit/query").MutationDefinition<CreateManyReleaseActions.Request, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings" | "Document", CreateManyReleaseActions.Response, "adminApi">>, useUpdateReleaseMutation: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseMutation<import("@reduxjs/toolkit/query").MutationDefinition<{
|
|
92
92
|
id: import("@strapi/types/dist/data").ID;
|
|
93
93
|
} & {
|
|
94
94
|
name: string;
|
|
95
95
|
scheduledAt?: Date | null | undefined;
|
|
96
96
|
timezone?: string | null | undefined;
|
|
97
|
-
}, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings", void, "adminApi">>, useUpdateReleaseActionMutation: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseMutation<import("@reduxjs/toolkit/query").MutationDefinition<UpdateReleaseAction.Request & {
|
|
97
|
+
}, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings" | "Document", void, "adminApi">>, useUpdateReleaseActionMutation: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseMutation<import("@reduxjs/toolkit/query").MutationDefinition<UpdateReleaseAction.Request & {
|
|
98
98
|
query: GetReleaseActions.Request['query'];
|
|
99
99
|
} & {
|
|
100
100
|
actionPath: [string, number];
|
|
101
|
-
}, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings", UpdateReleaseAction.Response, "adminApi">>, usePublishReleaseMutation: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseMutation<import("@reduxjs/toolkit/query").MutationDefinition<{
|
|
101
|
+
}, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings" | "Document", UpdateReleaseAction.Response, "adminApi">>, usePublishReleaseMutation: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseMutation<import("@reduxjs/toolkit/query").MutationDefinition<{
|
|
102
102
|
id: import("@strapi/types/dist/data").ID;
|
|
103
|
-
}, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings", PublishRelease.Response, "adminApi">>, useDeleteReleaseActionMutation: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseMutation<import("@reduxjs/toolkit/query").MutationDefinition<DeleteReleaseAction.Request, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings", DeleteReleaseAction.Response, "adminApi">>, useDeleteReleaseMutation: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseMutation<import("@reduxjs/toolkit/query").MutationDefinition<{
|
|
103
|
+
}, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings" | "Document", PublishRelease.Response, "adminApi">>, useDeleteReleaseActionMutation: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseMutation<import("@reduxjs/toolkit/query").MutationDefinition<DeleteReleaseAction.Request, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings" | "Document", DeleteReleaseAction.Response, "adminApi">>, useDeleteReleaseMutation: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseMutation<import("@reduxjs/toolkit/query").MutationDefinition<{
|
|
104
104
|
id: import("@strapi/types/dist/data").ID;
|
|
105
|
-
}, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings", DeleteRelease.Response, "adminApi">>, useGetMappedEntriesInReleasesQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseQuery<import("@reduxjs/toolkit/query").QueryDefinition<{
|
|
105
|
+
}, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings" | "Document", DeleteRelease.Response, "adminApi">>, useGetMappedEntriesInReleasesQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseQuery<import("@reduxjs/toolkit/query").QueryDefinition<{
|
|
106
106
|
contentTypeUid: import("@strapi/types/dist/uid").ContentType;
|
|
107
107
|
documentIds: string[];
|
|
108
108
|
locale?: string | undefined;
|
|
109
|
-
}, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings", {
|
|
109
|
+
}, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings" | "Document", {
|
|
110
110
|
[documentId: string]: Pick<import("../../../shared/contracts/releases").Release, "id" | "name">[];
|
|
111
|
-
}, "adminApi">>, useGetReleaseSettingsQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseQuery<import("@reduxjs/toolkit/query").QueryDefinition<void | GetSettings.Request, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings", GetSettings.Response, "adminApi">>, useUpdateReleaseSettingsMutation: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseMutation<import("@reduxjs/toolkit/query").MutationDefinition<import("../../../shared/contracts/settings").Settings, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings", void, "adminApi">>;
|
|
111
|
+
}, "adminApi">>, useGetReleaseSettingsQuery: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseQuery<import("@reduxjs/toolkit/query").QueryDefinition<void | GetSettings.Request, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings" | "Document", GetSettings.Response, "adminApi">>, useUpdateReleaseSettingsMutation: import("@reduxjs/toolkit/dist/query/react/buildHooks").UseMutation<import("@reduxjs/toolkit/query").MutationDefinition<import("../../../shared/contracts/settings").Settings, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@strapi/admin/strapi-admin").QueryArguments, unknown, import("@strapi/admin/strapi-admin").BaseQueryError, {}, {}>, "Release" | "ReleaseAction" | "EntriesInRelease" | "ReleaseSettings" | "Document", void, "adminApi">>;
|
|
112
112
|
export { useGetReleasesQuery, useGetReleasesForEntryQuery, useGetReleaseQuery, useGetReleaseActionsQuery, useCreateReleaseMutation, useCreateReleaseActionMutation, useCreateManyReleaseActionsMutation, useUpdateReleaseMutation, useUpdateReleaseActionMutation, usePublishReleaseMutation, useDeleteReleaseActionMutation, useDeleteReleaseMutation, useGetMappedEntriesInReleasesQuery, useGetReleaseSettingsQuery, useUpdateReleaseSettingsMutation, releaseApi, };
|
package/dist/server/index.js
CHANGED
|
@@ -7,8 +7,7 @@ const nodeSchedule = require("node-schedule");
|
|
|
7
7
|
const yup = require("yup");
|
|
8
8
|
const _interopDefault = (e) => e && e.__esModule ? e : { default: e };
|
|
9
9
|
function _interopNamespace(e) {
|
|
10
|
-
if (e && e.__esModule)
|
|
11
|
-
return e;
|
|
10
|
+
if (e && e.__esModule) return e;
|
|
12
11
|
const n = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } });
|
|
13
12
|
if (e) {
|
|
14
13
|
for (const k in e) {
|
|
@@ -111,6 +110,13 @@ const isEntryValid = async (contentTypeUid, entry, { strapi: strapi2 }) => {
|
|
|
111
110
|
// @ts-expect-error - FIXME: entity here is unnecessary
|
|
112
111
|
entry
|
|
113
112
|
);
|
|
113
|
+
const workflowsService = strapi2.plugin("review-workflows").service("workflows");
|
|
114
|
+
const workflow = await workflowsService.getAssignedWorkflow(contentTypeUid, {
|
|
115
|
+
populate: "stageRequiredToPublish"
|
|
116
|
+
});
|
|
117
|
+
if (workflow?.stageRequiredToPublish) {
|
|
118
|
+
return entry.strapi_stage.id === workflow.stageRequiredToPublish.id;
|
|
119
|
+
}
|
|
114
120
|
return true;
|
|
115
121
|
} catch {
|
|
116
122
|
return false;
|
|
@@ -124,7 +130,11 @@ const getEntry = async ({
|
|
|
124
130
|
status = "draft"
|
|
125
131
|
}, { strapi: strapi2 }) => {
|
|
126
132
|
if (documentId) {
|
|
127
|
-
|
|
133
|
+
const entry = await strapi2.documents(contentType).findOne({ documentId, locale, populate, status });
|
|
134
|
+
if (status === "published" && !entry) {
|
|
135
|
+
return strapi2.documents(contentType).findOne({ documentId, locale, populate, status: "draft" });
|
|
136
|
+
}
|
|
137
|
+
return entry;
|
|
128
138
|
}
|
|
129
139
|
return strapi2.documents(contentType).findFirst({ locale, populate, status });
|
|
130
140
|
};
|
|
@@ -329,6 +339,10 @@ async function enableContentTypeLocalized({ oldContentTypes, contentTypes: conte
|
|
|
329
339
|
const addEntryDocumentToReleaseActions = {
|
|
330
340
|
name: "content-releases::5.0.0-add-entry-document-id-to-release-actions",
|
|
331
341
|
async up(trx, db) {
|
|
342
|
+
const hasTable = await trx.schema.hasTable("strapi_release_actions");
|
|
343
|
+
if (!hasTable) {
|
|
344
|
+
return;
|
|
345
|
+
}
|
|
332
346
|
const hasPolymorphicColumn = await trx.schema.hasColumn("strapi_release_actions", "target_id");
|
|
333
347
|
if (hasPolymorphicColumn) {
|
|
334
348
|
const hasEntryDocumentIdColumn = await trx.schema.hasColumn(
|
|
@@ -370,6 +384,7 @@ const register = async ({ strapi: strapi2 }) => {
|
|
|
370
384
|
const updateActionsStatusAndUpdateReleaseStatus = async (contentType, entry) => {
|
|
371
385
|
const releases = await strapi.db.query(RELEASE_MODEL_UID).findMany({
|
|
372
386
|
where: {
|
|
387
|
+
releasedAt: null,
|
|
373
388
|
actions: {
|
|
374
389
|
contentType,
|
|
375
390
|
entryDocumentId: entry.documentId,
|
|
@@ -378,7 +393,7 @@ const updateActionsStatusAndUpdateReleaseStatus = async (contentType, entry) =>
|
|
|
378
393
|
}
|
|
379
394
|
});
|
|
380
395
|
const entryStatus = await isEntryValid(contentType, entry, { strapi });
|
|
381
|
-
await strapi.db.query(RELEASE_ACTION_MODEL_UID).
|
|
396
|
+
await strapi.db.query(RELEASE_ACTION_MODEL_UID).updateMany({
|
|
382
397
|
where: {
|
|
383
398
|
contentType,
|
|
384
399
|
entryDocumentId: entry.documentId,
|
|
@@ -482,8 +497,8 @@ const bootstrap = async ({ strapi: strapi2 }) => {
|
|
|
482
497
|
const { where } = event.params;
|
|
483
498
|
deleteReleasesActionsAndUpdateReleaseStatus({
|
|
484
499
|
contentType: model.uid,
|
|
485
|
-
locale: where
|
|
486
|
-
...where
|
|
500
|
+
locale: where?.locale ?? null,
|
|
501
|
+
...where?.documentId && { entryDocumentId: where.documentId }
|
|
487
502
|
});
|
|
488
503
|
}
|
|
489
504
|
} catch (error) {
|
|
@@ -937,6 +952,14 @@ const createReleaseActionService = ({ strapi: strapi2 }) => {
|
|
|
937
952
|
validateEntryData(action.contentType, action.entryDocumentId),
|
|
938
953
|
validateUniqueEntry(releaseId, action)
|
|
939
954
|
]);
|
|
955
|
+
const model = strapi2.contentType(action.contentType);
|
|
956
|
+
if (model.kind === "singleType") {
|
|
957
|
+
const document = await strapi2.db.query(model.uid).findOne({ select: ["documentId"] });
|
|
958
|
+
if (!document) {
|
|
959
|
+
throw new utils.errors.NotFoundError(`No entry found for contentType ${action.contentType}`);
|
|
960
|
+
}
|
|
961
|
+
action.entryDocumentId = document.documentId;
|
|
962
|
+
}
|
|
940
963
|
const release2 = await strapi2.db.query(RELEASE_MODEL_UID).findOne({ where: { id: releaseId } });
|
|
941
964
|
if (!release2) {
|
|
942
965
|
throw new utils.errors.NotFoundError(`No release found for id ${releaseId}`);
|
|
@@ -1030,16 +1053,26 @@ const createReleaseActionService = ({ strapi: strapi2 }) => {
|
|
|
1030
1053
|
const groupName = getGroupName(groupBy);
|
|
1031
1054
|
return ___default.default.groupBy(groupName)(formattedData);
|
|
1032
1055
|
},
|
|
1033
|
-
getContentTypeModelsFromActions(actions) {
|
|
1056
|
+
async getContentTypeModelsFromActions(actions) {
|
|
1034
1057
|
const contentTypeUids = actions.reduce((acc, action) => {
|
|
1035
1058
|
if (!acc.includes(action.contentType)) {
|
|
1036
1059
|
acc.push(action.contentType);
|
|
1037
1060
|
}
|
|
1038
1061
|
return acc;
|
|
1039
1062
|
}, []);
|
|
1040
|
-
const
|
|
1041
|
-
|
|
1042
|
-
|
|
1063
|
+
const workflowsService = strapi2.plugin("review-workflows").service("workflows");
|
|
1064
|
+
const contentTypeModelsMap = await utils.async.reduce(contentTypeUids)(
|
|
1065
|
+
async (accPromise, contentTypeUid) => {
|
|
1066
|
+
const acc = await accPromise;
|
|
1067
|
+
const contentTypeModel = strapi2.getModel(contentTypeUid);
|
|
1068
|
+
const workflow = await workflowsService.getAssignedWorkflow(contentTypeUid, {
|
|
1069
|
+
populate: "stageRequiredToPublish"
|
|
1070
|
+
});
|
|
1071
|
+
acc[contentTypeUid] = {
|
|
1072
|
+
...contentTypeModel,
|
|
1073
|
+
hasReviewWorkflow: !!workflow,
|
|
1074
|
+
stageRequiredToPublish: workflow?.stageRequiredToPublish
|
|
1075
|
+
};
|
|
1043
1076
|
return acc;
|
|
1044
1077
|
},
|
|
1045
1078
|
{}
|
|
@@ -1067,7 +1100,7 @@ const createReleaseActionService = ({ strapi: strapi2 }) => {
|
|
|
1067
1100
|
`Action with id ${actionId} not found in release with id ${releaseId} or it is already published`
|
|
1068
1101
|
);
|
|
1069
1102
|
}
|
|
1070
|
-
const actionStatus = update.type === "publish" ? getDraftEntryValidStatus(
|
|
1103
|
+
const actionStatus = update.type === "publish" ? await getDraftEntryValidStatus(
|
|
1071
1104
|
{
|
|
1072
1105
|
contentType: action.contentType,
|
|
1073
1106
|
documentId: action.entryDocumentId,
|
|
@@ -1114,6 +1147,54 @@ const createReleaseActionService = ({ strapi: strapi2 }) => {
|
|
|
1114
1147
|
}
|
|
1115
1148
|
getService("release", { strapi: strapi2 }).updateReleaseStatus(releaseId);
|
|
1116
1149
|
return deletedAction;
|
|
1150
|
+
},
|
|
1151
|
+
async validateActionsByContentTypes(contentTypeUids) {
|
|
1152
|
+
const actions = await strapi2.db.query(RELEASE_ACTION_MODEL_UID).findMany({
|
|
1153
|
+
where: {
|
|
1154
|
+
contentType: {
|
|
1155
|
+
$in: contentTypeUids
|
|
1156
|
+
},
|
|
1157
|
+
// We only want to validate actions that are going to be published
|
|
1158
|
+
type: "publish",
|
|
1159
|
+
release: {
|
|
1160
|
+
releasedAt: {
|
|
1161
|
+
$null: true
|
|
1162
|
+
}
|
|
1163
|
+
}
|
|
1164
|
+
},
|
|
1165
|
+
populate: { release: true }
|
|
1166
|
+
});
|
|
1167
|
+
const releasesUpdated = [];
|
|
1168
|
+
await utils.async.map(actions, async (action) => {
|
|
1169
|
+
const isValid = await getDraftEntryValidStatus(
|
|
1170
|
+
{
|
|
1171
|
+
contentType: action.contentType,
|
|
1172
|
+
documentId: action.entryDocumentId,
|
|
1173
|
+
locale: action.locale
|
|
1174
|
+
},
|
|
1175
|
+
{ strapi: strapi2 }
|
|
1176
|
+
);
|
|
1177
|
+
await strapi2.db.query(RELEASE_ACTION_MODEL_UID).update({
|
|
1178
|
+
where: {
|
|
1179
|
+
id: action.id
|
|
1180
|
+
},
|
|
1181
|
+
data: {
|
|
1182
|
+
isEntryValid: isValid
|
|
1183
|
+
}
|
|
1184
|
+
});
|
|
1185
|
+
if (!releasesUpdated.includes(action.release.id)) {
|
|
1186
|
+
releasesUpdated.push(action.release.id);
|
|
1187
|
+
}
|
|
1188
|
+
return {
|
|
1189
|
+
id: action.id,
|
|
1190
|
+
isEntryValid: isValid
|
|
1191
|
+
};
|
|
1192
|
+
});
|
|
1193
|
+
if (releasesUpdated.length > 0) {
|
|
1194
|
+
await utils.async.map(releasesUpdated, async (releaseId) => {
|
|
1195
|
+
await getService("release", { strapi: strapi2 }).updateReleaseStatus(releaseId);
|
|
1196
|
+
});
|
|
1197
|
+
}
|
|
1117
1198
|
}
|
|
1118
1199
|
};
|
|
1119
1200
|
};
|
|
@@ -1308,7 +1389,15 @@ const releaseController = {
|
|
|
1308
1389
|
const releaseService = getService("release", { strapi });
|
|
1309
1390
|
const query = await permissionsManager.sanitizeQuery(ctx.query);
|
|
1310
1391
|
await validatefindByDocumentAttachedParams(query);
|
|
1311
|
-
const
|
|
1392
|
+
const model = strapi.getModel(query.contentType);
|
|
1393
|
+
if (model.kind && model.kind === "singleType") {
|
|
1394
|
+
const document = await strapi.db.query(model.uid).findOne({ select: ["documentId"] });
|
|
1395
|
+
if (!document) {
|
|
1396
|
+
throw new utils.errors.NotFoundError(`No entry found for contentType ${query.contentType}`);
|
|
1397
|
+
}
|
|
1398
|
+
query.entryDocumentId = document.documentId;
|
|
1399
|
+
}
|
|
1400
|
+
const { contentType, hasEntryAttached, entryDocumentId, locale } = query;
|
|
1312
1401
|
const isEntryAttached = typeof hasEntryAttached === "string" ? Boolean(JSON.parse(hasEntryAttached)) : false;
|
|
1313
1402
|
if (isEntryAttached) {
|
|
1314
1403
|
const releases = await releaseService.findMany({
|
|
@@ -1322,7 +1411,12 @@ const releaseController = {
|
|
|
1322
1411
|
},
|
|
1323
1412
|
populate: {
|
|
1324
1413
|
actions: {
|
|
1325
|
-
fields: ["type"]
|
|
1414
|
+
fields: ["type"],
|
|
1415
|
+
filters: {
|
|
1416
|
+
contentType,
|
|
1417
|
+
entryDocumentId: entryDocumentId ?? null,
|
|
1418
|
+
locale: locale ?? null
|
|
1419
|
+
}
|
|
1326
1420
|
}
|
|
1327
1421
|
}
|
|
1328
1422
|
});
|
|
@@ -1619,7 +1713,7 @@ const releaseActionController = {
|
|
|
1619
1713
|
entry: action.entry ? await contentTypeOutputSanitizers[action.contentType](action.entry) : {}
|
|
1620
1714
|
}));
|
|
1621
1715
|
const groupedData = await releaseActionService.groupActions(sanitizedResults, query.sort);
|
|
1622
|
-
const contentTypes2 = releaseActionService.getContentTypeModelsFromActions(results);
|
|
1716
|
+
const contentTypes2 = await releaseActionService.getContentTypeModelsFromActions(results);
|
|
1623
1717
|
const releaseService = getService("release", { strapi });
|
|
1624
1718
|
const components = await releaseService.getAllComponents();
|
|
1625
1719
|
ctx.body = {
|