@strapi/content-releases 5.12.0 → 5.12.2

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 (259) hide show
  1. package/dist/admin/assets/purchase-page-illustration-dark.svg.js +6 -0
  2. package/dist/admin/assets/purchase-page-illustration-dark.svg.js.map +1 -0
  3. package/dist/admin/assets/purchase-page-illustration-dark.svg.mjs +4 -0
  4. package/dist/admin/assets/purchase-page-illustration-dark.svg.mjs.map +1 -0
  5. package/dist/admin/assets/purchase-page-illustration-light.svg.js +6 -0
  6. package/dist/admin/assets/purchase-page-illustration-light.svg.js.map +1 -0
  7. package/dist/admin/assets/purchase-page-illustration-light.svg.mjs +4 -0
  8. package/dist/admin/assets/purchase-page-illustration-light.svg.mjs.map +1 -0
  9. package/dist/admin/components/EntryValidationPopover.js +344 -0
  10. package/dist/admin/components/EntryValidationPopover.js.map +1 -0
  11. package/dist/admin/components/EntryValidationPopover.mjs +342 -0
  12. package/dist/admin/components/EntryValidationPopover.mjs.map +1 -0
  13. package/dist/admin/components/RelativeTime.js +76 -0
  14. package/dist/admin/components/RelativeTime.js.map +1 -0
  15. package/dist/admin/components/RelativeTime.mjs +55 -0
  16. package/dist/admin/components/RelativeTime.mjs.map +1 -0
  17. package/dist/admin/components/ReleaseAction.js +201 -0
  18. package/dist/admin/components/ReleaseAction.js.map +1 -0
  19. package/dist/admin/components/ReleaseAction.mjs +199 -0
  20. package/dist/admin/components/ReleaseAction.mjs.map +1 -0
  21. package/dist/admin/components/ReleaseActionMenu.js +243 -0
  22. package/dist/admin/components/ReleaseActionMenu.js.map +1 -0
  23. package/dist/admin/components/ReleaseActionMenu.mjs +222 -0
  24. package/dist/admin/components/ReleaseActionMenu.mjs.map +1 -0
  25. package/dist/admin/components/ReleaseActionModal.js +268 -0
  26. package/dist/admin/components/ReleaseActionModal.js.map +1 -0
  27. package/dist/admin/components/ReleaseActionModal.mjs +244 -0
  28. package/dist/admin/components/ReleaseActionModal.mjs.map +1 -0
  29. package/dist/admin/components/ReleaseActionOptions.js +104 -0
  30. package/dist/admin/components/ReleaseActionOptions.js.map +1 -0
  31. package/dist/admin/components/ReleaseActionOptions.mjs +102 -0
  32. package/dist/admin/components/ReleaseActionOptions.mjs.map +1 -0
  33. package/dist/admin/components/ReleaseListCell.js +103 -0
  34. package/dist/admin/components/ReleaseListCell.js.map +1 -0
  35. package/dist/admin/components/ReleaseListCell.mjs +100 -0
  36. package/dist/admin/components/ReleaseListCell.mjs.map +1 -0
  37. package/dist/admin/components/ReleaseModal.js +323 -0
  38. package/dist/admin/components/ReleaseModal.js.map +1 -0
  39. package/dist/admin/components/ReleaseModal.mjs +302 -0
  40. package/dist/admin/components/ReleaseModal.mjs.map +1 -0
  41. package/dist/admin/components/ReleasesPanel.js +138 -0
  42. package/dist/admin/components/ReleasesPanel.js.map +1 -0
  43. package/dist/admin/components/ReleasesPanel.mjs +136 -0
  44. package/dist/admin/components/ReleasesPanel.mjs.map +1 -0
  45. package/dist/admin/constants.js +77 -0
  46. package/dist/admin/constants.js.map +1 -0
  47. package/dist/admin/constants.mjs +75 -0
  48. package/dist/admin/constants.mjs.map +1 -0
  49. package/dist/admin/index.js +120 -14
  50. package/dist/admin/index.js.map +1 -1
  51. package/dist/admin/index.mjs +121 -13
  52. package/dist/admin/index.mjs.map +1 -1
  53. package/dist/admin/{chunks/hooks-DA5VbUAp.js → modules/hooks.js} +1 -1
  54. package/dist/admin/modules/hooks.js.map +1 -0
  55. package/dist/admin/{chunks/hooks-CFk_8Q0b.mjs → modules/hooks.mjs} +2 -2
  56. package/dist/admin/modules/hooks.mjs.map +1 -0
  57. package/dist/admin/pages/App.js +29 -0
  58. package/dist/admin/pages/App.js.map +1 -0
  59. package/dist/admin/pages/App.mjs +27 -0
  60. package/dist/admin/pages/App.mjs.map +1 -0
  61. package/dist/admin/pages/PurchaseContentReleases.js +192 -0
  62. package/dist/admin/pages/PurchaseContentReleases.js.map +1 -0
  63. package/dist/admin/pages/PurchaseContentReleases.mjs +190 -0
  64. package/dist/admin/pages/PurchaseContentReleases.mjs.map +1 -0
  65. package/dist/admin/pages/ReleaseDetailsPage.js +821 -0
  66. package/dist/admin/pages/ReleaseDetailsPage.js.map +1 -0
  67. package/dist/admin/pages/ReleaseDetailsPage.mjs +800 -0
  68. package/dist/admin/pages/ReleaseDetailsPage.mjs.map +1 -0
  69. package/dist/admin/pages/ReleasesPage.js +397 -0
  70. package/dist/admin/pages/ReleasesPage.js.map +1 -0
  71. package/dist/admin/pages/ReleasesPage.mjs +375 -0
  72. package/dist/admin/pages/ReleasesPage.mjs.map +1 -0
  73. package/dist/admin/{chunks/ReleasesSettingsPage-KRcoI1bC.js → pages/ReleasesSettingsPage.js} +9 -17
  74. package/dist/admin/pages/ReleasesSettingsPage.js.map +1 -0
  75. package/dist/admin/{chunks/ReleasesSettingsPage-DUKdFdvx.mjs → pages/ReleasesSettingsPage.mjs} +5 -13
  76. package/dist/admin/pages/ReleasesSettingsPage.mjs.map +1 -0
  77. package/dist/admin/pluginId.js +6 -0
  78. package/dist/admin/pluginId.js.map +1 -0
  79. package/dist/admin/pluginId.mjs +4 -0
  80. package/dist/admin/pluginId.mjs.map +1 -0
  81. package/dist/admin/services/release.js +464 -0
  82. package/dist/admin/services/release.js.map +1 -0
  83. package/dist/admin/services/release.mjs +447 -0
  84. package/dist/admin/services/release.mjs.map +1 -0
  85. package/dist/admin/store/hooks.js +8 -0
  86. package/dist/admin/store/hooks.js.map +1 -0
  87. package/dist/admin/store/hooks.mjs +6 -0
  88. package/dist/admin/store/hooks.mjs.map +1 -0
  89. package/dist/admin/{chunks/en-BOpqX2t_.js → translations/en.json.js} +2 -2
  90. package/dist/admin/translations/en.json.js.map +1 -0
  91. package/dist/admin/{chunks/en-aQo8Bn_U.mjs → translations/en.json.mjs} +1 -1
  92. package/dist/admin/translations/en.json.mjs.map +1 -0
  93. package/dist/admin/{chunks/uk-9T9su-bj.js → translations/uk.json.js} +2 -2
  94. package/dist/admin/translations/uk.json.js.map +1 -0
  95. package/dist/admin/{chunks/uk-Bp9HotPq.mjs → translations/uk.json.mjs} +1 -1
  96. package/dist/admin/translations/uk.json.mjs.map +1 -0
  97. package/dist/admin/utils/api.js +8 -0
  98. package/dist/admin/utils/api.js.map +1 -0
  99. package/dist/admin/utils/api.mjs +6 -0
  100. package/dist/admin/utils/api.mjs.map +1 -0
  101. package/dist/admin/utils/prefixPluginTranslations.js +11 -0
  102. package/dist/admin/utils/prefixPluginTranslations.js.map +1 -0
  103. package/dist/admin/utils/prefixPluginTranslations.mjs +9 -0
  104. package/dist/admin/utils/prefixPluginTranslations.mjs.map +1 -0
  105. package/dist/admin/utils/time.js +42 -0
  106. package/dist/admin/utils/time.js.map +1 -0
  107. package/dist/admin/utils/time.mjs +39 -0
  108. package/dist/admin/utils/time.mjs.map +1 -0
  109. package/dist/admin/{chunks/schemas-DS7NeFDN.js → validation/schemas.js} +1 -1
  110. package/dist/admin/validation/schemas.js.map +1 -0
  111. package/dist/admin/{chunks/schemas-DMt8h1z-.mjs → validation/schemas.mjs} +2 -2
  112. package/dist/admin/validation/schemas.mjs.map +1 -0
  113. package/dist/server/bootstrap.js +68 -0
  114. package/dist/server/bootstrap.js.map +1 -0
  115. package/dist/server/bootstrap.mjs +66 -0
  116. package/dist/server/bootstrap.mjs.map +1 -0
  117. package/dist/server/constants.js +74 -0
  118. package/dist/server/constants.js.map +1 -0
  119. package/dist/server/constants.mjs +69 -0
  120. package/dist/server/constants.mjs.map +1 -0
  121. package/dist/server/content-types/index.js +12 -0
  122. package/dist/server/content-types/index.js.map +1 -0
  123. package/dist/server/content-types/index.mjs +10 -0
  124. package/dist/server/content-types/index.mjs.map +1 -0
  125. package/dist/server/content-types/release/index.js +10 -0
  126. package/dist/server/content-types/release/index.js.map +1 -0
  127. package/dist/server/content-types/release/index.mjs +8 -0
  128. package/dist/server/content-types/release/index.mjs.map +1 -0
  129. package/dist/server/content-types/release/schema.js +58 -0
  130. package/dist/server/content-types/release/schema.js.map +1 -0
  131. package/dist/server/content-types/release/schema.mjs +56 -0
  132. package/dist/server/content-types/release/schema.mjs.map +1 -0
  133. package/dist/server/content-types/release-action/index.js +10 -0
  134. package/dist/server/content-types/release-action/index.js.map +1 -0
  135. package/dist/server/content-types/release-action/index.mjs +8 -0
  136. package/dist/server/content-types/release-action/index.mjs.map +1 -0
  137. package/dist/server/content-types/release-action/schema.js +55 -0
  138. package/dist/server/content-types/release-action/schema.js.map +1 -0
  139. package/dist/server/content-types/release-action/schema.mjs +53 -0
  140. package/dist/server/content-types/release-action/schema.mjs.map +1 -0
  141. package/dist/server/controllers/index.js +14 -0
  142. package/dist/server/controllers/index.js.map +1 -0
  143. package/dist/server/controllers/index.mjs +12 -0
  144. package/dist/server/controllers/index.mjs.map +1 -0
  145. package/dist/server/controllers/release-action.js +150 -0
  146. package/dist/server/controllers/release-action.js.map +1 -0
  147. package/dist/server/controllers/release-action.mjs +148 -0
  148. package/dist/server/controllers/release-action.mjs.map +1 -0
  149. package/dist/server/controllers/release.js +302 -0
  150. package/dist/server/controllers/release.js.map +1 -0
  151. package/dist/server/controllers/release.mjs +300 -0
  152. package/dist/server/controllers/release.mjs.map +1 -0
  153. package/dist/server/controllers/settings.js +37 -0
  154. package/dist/server/controllers/settings.js.map +1 -0
  155. package/dist/server/controllers/settings.mjs +35 -0
  156. package/dist/server/controllers/settings.mjs.map +1 -0
  157. package/dist/server/controllers/validation/release-action.js +34 -0
  158. package/dist/server/controllers/validation/release-action.js.map +1 -0
  159. package/dist/server/controllers/validation/release-action.mjs +30 -0
  160. package/dist/server/controllers/validation/release-action.mjs.map +1 -0
  161. package/dist/server/controllers/validation/release.js +26 -0
  162. package/dist/server/controllers/validation/release.js.map +1 -0
  163. package/dist/server/controllers/validation/release.mjs +22 -0
  164. package/dist/server/controllers/validation/release.mjs.map +1 -0
  165. package/dist/server/controllers/validation/settings.js +32 -0
  166. package/dist/server/controllers/validation/settings.js.map +1 -0
  167. package/dist/server/controllers/validation/settings.mjs +10 -0
  168. package/dist/server/controllers/validation/settings.mjs.map +1 -0
  169. package/dist/server/destroy.js +15 -0
  170. package/dist/server/destroy.js.map +1 -0
  171. package/dist/server/destroy.mjs +13 -0
  172. package/dist/server/destroy.mjs.map +1 -0
  173. package/dist/server/index.js +16 -2336
  174. package/dist/server/index.js.map +1 -1
  175. package/dist/server/index.mjs +7 -2308
  176. package/dist/server/index.mjs.map +1 -1
  177. package/dist/server/middlewares/documents.js +104 -0
  178. package/dist/server/middlewares/documents.js.map +1 -0
  179. package/dist/server/middlewares/documents.mjs +101 -0
  180. package/dist/server/middlewares/documents.mjs.map +1 -0
  181. package/dist/server/migrations/database/5.0.0-document-id-in-actions.js +51 -0
  182. package/dist/server/migrations/database/5.0.0-document-id-in-actions.js.map +1 -0
  183. package/dist/server/migrations/database/5.0.0-document-id-in-actions.mjs +49 -0
  184. package/dist/server/migrations/database/5.0.0-document-id-in-actions.mjs.map +1 -0
  185. package/dist/server/migrations/index.js +205 -0
  186. package/dist/server/migrations/index.js.map +1 -0
  187. package/dist/server/migrations/index.mjs +198 -0
  188. package/dist/server/migrations/index.mjs.map +1 -0
  189. package/dist/server/register.js +23 -0
  190. package/dist/server/register.js.map +1 -0
  191. package/dist/server/register.mjs +21 -0
  192. package/dist/server/register.mjs.map +1 -0
  193. package/dist/server/routes/index.js +14 -0
  194. package/dist/server/routes/index.js.map +1 -0
  195. package/dist/server/routes/index.mjs +12 -0
  196. package/dist/server/routes/index.mjs.map +1 -0
  197. package/dist/server/routes/release-action.js +100 -0
  198. package/dist/server/routes/release-action.js.map +1 -0
  199. package/dist/server/routes/release-action.mjs +98 -0
  200. package/dist/server/routes/release-action.mjs.map +1 -0
  201. package/dist/server/routes/release.js +154 -0
  202. package/dist/server/routes/release.js.map +1 -0
  203. package/dist/server/routes/release.mjs +152 -0
  204. package/dist/server/routes/release.mjs.map +1 -0
  205. package/dist/server/routes/settings.js +46 -0
  206. package/dist/server/routes/settings.js.map +1 -0
  207. package/dist/server/routes/settings.mjs +44 -0
  208. package/dist/server/routes/settings.mjs.map +1 -0
  209. package/dist/server/services/index.js +18 -0
  210. package/dist/server/services/index.js.map +1 -0
  211. package/dist/server/services/index.mjs +16 -0
  212. package/dist/server/services/index.mjs.map +1 -0
  213. package/dist/server/services/release-action.js +323 -0
  214. package/dist/server/services/release-action.js.map +1 -0
  215. package/dist/server/services/release-action.mjs +321 -0
  216. package/dist/server/services/release-action.mjs.map +1 -0
  217. package/dist/server/services/release.js +324 -0
  218. package/dist/server/services/release.js.map +1 -0
  219. package/dist/server/services/release.mjs +322 -0
  220. package/dist/server/services/release.mjs.map +1 -0
  221. package/dist/server/services/scheduling.js +70 -0
  222. package/dist/server/services/scheduling.js.map +1 -0
  223. package/dist/server/services/scheduling.mjs +68 -0
  224. package/dist/server/services/scheduling.mjs.map +1 -0
  225. package/dist/server/services/settings.js +34 -0
  226. package/dist/server/services/settings.js.map +1 -0
  227. package/dist/server/services/settings.mjs +32 -0
  228. package/dist/server/services/settings.mjs.map +1 -0
  229. package/dist/server/services/validation.js +91 -0
  230. package/dist/server/services/validation.js.map +1 -0
  231. package/dist/server/services/validation.mjs +86 -0
  232. package/dist/server/services/validation.mjs.map +1 -0
  233. package/dist/server/utils/index.js +93 -0
  234. package/dist/server/utils/index.js.map +1 -0
  235. package/dist/server/utils/index.mjs +87 -0
  236. package/dist/server/utils/index.mjs.map +1 -0
  237. package/package.json +7 -7
  238. package/dist/admin/chunks/App-BkWgp5q_.mjs +0 -1845
  239. package/dist/admin/chunks/App-BkWgp5q_.mjs.map +0 -1
  240. package/dist/admin/chunks/App-CJiqPP7-.js +0 -1866
  241. package/dist/admin/chunks/App-CJiqPP7-.js.map +0 -1
  242. package/dist/admin/chunks/PurchaseContentReleases-CzayeVUD.mjs +0 -193
  243. package/dist/admin/chunks/PurchaseContentReleases-CzayeVUD.mjs.map +0 -1
  244. package/dist/admin/chunks/PurchaseContentReleases-Z9uEPb5b.js +0 -195
  245. package/dist/admin/chunks/PurchaseContentReleases-Z9uEPb5b.js.map +0 -1
  246. package/dist/admin/chunks/ReleasesSettingsPage-DUKdFdvx.mjs.map +0 -1
  247. package/dist/admin/chunks/ReleasesSettingsPage-KRcoI1bC.js.map +0 -1
  248. package/dist/admin/chunks/en-BOpqX2t_.js.map +0 -1
  249. package/dist/admin/chunks/en-aQo8Bn_U.mjs.map +0 -1
  250. package/dist/admin/chunks/hooks-CFk_8Q0b.mjs.map +0 -1
  251. package/dist/admin/chunks/hooks-DA5VbUAp.js.map +0 -1
  252. package/dist/admin/chunks/index-DBUaMD56.mjs +0 -1619
  253. package/dist/admin/chunks/index-DBUaMD56.mjs.map +0 -1
  254. package/dist/admin/chunks/index-vjWrvGN3.js +0 -1658
  255. package/dist/admin/chunks/index-vjWrvGN3.js.map +0 -1
  256. package/dist/admin/chunks/schemas-DMt8h1z-.mjs.map +0 -1
  257. package/dist/admin/chunks/schemas-DS7NeFDN.js.map +0 -1
  258. package/dist/admin/chunks/uk-9T9su-bj.js.map +0 -1
  259. package/dist/admin/chunks/uk-Bp9HotPq.mjs.map +0 -1
@@ -0,0 +1,464 @@
1
+ 'use strict';
2
+
3
+ var strapiAdmin = require('@strapi/admin/strapi-admin');
4
+
5
+ // TODO: move this into the admin code & expose an improved version of enhanceEndpoints or a new function
6
+ const extendInvalidatesTags = (endpoint, extraTags)=>{
7
+ if (!endpoint) {
8
+ return;
9
+ }
10
+ const originalInvalidatesTags = endpoint.invalidatesTags;
11
+ const newInvalidatesTags = (result, err, args, meta)=>{
12
+ const originalTags = typeof originalInvalidatesTags === 'function' ? originalInvalidatesTags(result, err, args, meta) : originalInvalidatesTags;
13
+ return [
14
+ ...originalTags ?? [],
15
+ ...extraTags
16
+ ];
17
+ };
18
+ Object.assign(endpoint, {
19
+ invalidatesTags: newInvalidatesTags
20
+ });
21
+ };
22
+ const releaseApi = strapiAdmin.adminApi.enhanceEndpoints({
23
+ addTagTypes: [
24
+ 'Release',
25
+ 'ReleaseAction',
26
+ 'EntriesInRelease',
27
+ 'ReleaseSettings',
28
+ 'Document'
29
+ ],
30
+ endpoints: {
31
+ updateDocument (endpoint) {
32
+ extendInvalidatesTags(endpoint, [
33
+ {
34
+ type: 'Release',
35
+ id: 'LIST'
36
+ },
37
+ {
38
+ type: 'ReleaseAction',
39
+ id: 'LIST'
40
+ }
41
+ ]);
42
+ },
43
+ deleteDocument (endpoint) {
44
+ extendInvalidatesTags(endpoint, [
45
+ {
46
+ type: 'Release',
47
+ id: 'LIST'
48
+ },
49
+ {
50
+ type: 'ReleaseAction',
51
+ id: 'LIST'
52
+ }
53
+ ]);
54
+ },
55
+ deleteManyDocuments (endpoint) {
56
+ extendInvalidatesTags(endpoint, [
57
+ {
58
+ type: 'Release',
59
+ id: 'LIST'
60
+ },
61
+ {
62
+ type: 'ReleaseAction',
63
+ id: 'LIST'
64
+ }
65
+ ]);
66
+ },
67
+ discardDocument (endpoint) {
68
+ extendInvalidatesTags(endpoint, [
69
+ {
70
+ type: 'Release',
71
+ id: 'LIST'
72
+ },
73
+ {
74
+ type: 'ReleaseAction',
75
+ id: 'LIST'
76
+ }
77
+ ]);
78
+ },
79
+ createWorkflow (endpoint) {
80
+ extendInvalidatesTags(endpoint, [
81
+ {
82
+ type: 'Release',
83
+ id: 'LIST'
84
+ },
85
+ {
86
+ type: 'ReleaseAction',
87
+ id: 'LIST'
88
+ }
89
+ ]);
90
+ },
91
+ updateWorkflow (endpoint) {
92
+ extendInvalidatesTags(endpoint, [
93
+ {
94
+ type: 'Release',
95
+ id: 'LIST'
96
+ },
97
+ {
98
+ type: 'ReleaseAction',
99
+ id: 'LIST'
100
+ }
101
+ ]);
102
+ },
103
+ deleteWorkflow (endpoint) {
104
+ extendInvalidatesTags(endpoint, [
105
+ {
106
+ type: 'Release',
107
+ id: 'LIST'
108
+ },
109
+ {
110
+ type: 'ReleaseAction',
111
+ id: 'LIST'
112
+ }
113
+ ]);
114
+ }
115
+ }
116
+ }).injectEndpoints({
117
+ endpoints: (build)=>{
118
+ return {
119
+ getReleasesForEntry: build.query({
120
+ query (params) {
121
+ return {
122
+ url: '/content-releases/getByDocumentAttached',
123
+ method: 'GET',
124
+ config: {
125
+ params
126
+ }
127
+ };
128
+ },
129
+ providesTags: (result)=>result ? [
130
+ ...result.data.map(({ id })=>({
131
+ type: 'Release',
132
+ id
133
+ })),
134
+ {
135
+ type: 'Release',
136
+ id: 'LIST'
137
+ }
138
+ ] : []
139
+ }),
140
+ getReleases: build.query({
141
+ query ({ page, pageSize, filters } = {
142
+ page: 1,
143
+ pageSize: 16,
144
+ filters: {
145
+ releasedAt: {
146
+ $notNull: false
147
+ }
148
+ }
149
+ }) {
150
+ return {
151
+ url: '/content-releases',
152
+ method: 'GET',
153
+ config: {
154
+ params: {
155
+ page: page || 1,
156
+ pageSize: pageSize || 16,
157
+ filters: filters || {
158
+ releasedAt: {
159
+ $notNull: false
160
+ }
161
+ }
162
+ }
163
+ }
164
+ };
165
+ },
166
+ transformResponse (response, meta, arg) {
167
+ const releasedAtValue = arg?.filters?.releasedAt?.$notNull;
168
+ const isActiveDoneTab = releasedAtValue === 'true';
169
+ const newResponse = {
170
+ ...response,
171
+ meta: {
172
+ ...response.meta,
173
+ activeTab: isActiveDoneTab ? 'done' : 'pending'
174
+ }
175
+ };
176
+ return newResponse;
177
+ },
178
+ providesTags: (result)=>result ? [
179
+ ...result.data.map(({ id })=>({
180
+ type: 'Release',
181
+ id
182
+ })),
183
+ {
184
+ type: 'Release',
185
+ id: 'LIST'
186
+ }
187
+ ] : [
188
+ {
189
+ type: 'Release',
190
+ id: 'LIST'
191
+ }
192
+ ]
193
+ }),
194
+ getRelease: build.query({
195
+ query ({ id }) {
196
+ return {
197
+ url: `/content-releases/${id}`,
198
+ method: 'GET'
199
+ };
200
+ },
201
+ providesTags: (result, error, arg)=>[
202
+ {
203
+ type: 'Release',
204
+ id: 'LIST'
205
+ },
206
+ {
207
+ type: 'Release',
208
+ id: arg.id
209
+ }
210
+ ]
211
+ }),
212
+ getReleaseActions: build.query({
213
+ query ({ releaseId, ...params }) {
214
+ return {
215
+ url: `/content-releases/${releaseId}/actions`,
216
+ method: 'GET',
217
+ config: {
218
+ params
219
+ }
220
+ };
221
+ },
222
+ providesTags: [
223
+ {
224
+ type: 'ReleaseAction',
225
+ id: 'LIST'
226
+ }
227
+ ]
228
+ }),
229
+ createRelease: build.mutation({
230
+ query (data) {
231
+ return {
232
+ url: '/content-releases',
233
+ method: 'POST',
234
+ data
235
+ };
236
+ },
237
+ invalidatesTags: [
238
+ {
239
+ type: 'Release',
240
+ id: 'LIST'
241
+ }
242
+ ]
243
+ }),
244
+ updateRelease: build.mutation({
245
+ query ({ id, ...data }) {
246
+ return {
247
+ url: `/content-releases/${id}`,
248
+ method: 'PUT',
249
+ data
250
+ };
251
+ },
252
+ invalidatesTags: (result, error, arg)=>[
253
+ {
254
+ type: 'Release',
255
+ id: arg.id
256
+ }
257
+ ]
258
+ }),
259
+ createReleaseAction: build.mutation({
260
+ query ({ body, params }) {
261
+ return {
262
+ url: `/content-releases/${params.releaseId}/actions`,
263
+ method: 'POST',
264
+ data: body
265
+ };
266
+ },
267
+ invalidatesTags: [
268
+ {
269
+ type: 'Release',
270
+ id: 'LIST'
271
+ },
272
+ {
273
+ type: 'ReleaseAction',
274
+ id: 'LIST'
275
+ }
276
+ ]
277
+ }),
278
+ createManyReleaseActions: build.mutation({
279
+ query ({ body, params }) {
280
+ return {
281
+ url: `/content-releases/${params.releaseId}/actions/bulk`,
282
+ method: 'POST',
283
+ data: body
284
+ };
285
+ },
286
+ invalidatesTags: [
287
+ {
288
+ type: 'Release',
289
+ id: 'LIST'
290
+ },
291
+ {
292
+ type: 'ReleaseAction',
293
+ id: 'LIST'
294
+ },
295
+ {
296
+ type: 'EntriesInRelease'
297
+ }
298
+ ]
299
+ }),
300
+ updateReleaseAction: build.mutation({
301
+ query ({ body, params }) {
302
+ return {
303
+ url: `/content-releases/${params.releaseId}/actions/${params.actionId}`,
304
+ method: 'PUT',
305
+ data: body
306
+ };
307
+ },
308
+ invalidatesTags: (res, error, arg)=>[
309
+ {
310
+ type: 'ReleaseAction',
311
+ id: 'LIST'
312
+ },
313
+ {
314
+ type: 'Release',
315
+ id: 'LIST'
316
+ },
317
+ {
318
+ type: 'Release',
319
+ id: arg.params.releaseId
320
+ }
321
+ ],
322
+ async onQueryStarted ({ body, params, query, actionPath }, { dispatch, queryFulfilled }) {
323
+ // We need to mimic the same params received by the getReleaseActions query
324
+ const paramsWithoutActionId = {
325
+ releaseId: params.releaseId,
326
+ ...query
327
+ };
328
+ const patchResult = dispatch(releaseApi.util.updateQueryData('getReleaseActions', paramsWithoutActionId, (draft)=>{
329
+ const [key, index] = actionPath;
330
+ const action = draft.data[key][index];
331
+ if (action) {
332
+ action.type = body.type;
333
+ }
334
+ }));
335
+ try {
336
+ await queryFulfilled;
337
+ } catch {
338
+ patchResult.undo();
339
+ }
340
+ }
341
+ }),
342
+ deleteReleaseAction: build.mutation({
343
+ query ({ params }) {
344
+ return {
345
+ url: `/content-releases/${params.releaseId}/actions/${params.actionId}`,
346
+ method: 'DELETE'
347
+ };
348
+ },
349
+ invalidatesTags: (result, error, arg)=>[
350
+ {
351
+ type: 'Release',
352
+ id: 'LIST'
353
+ },
354
+ {
355
+ type: 'Release',
356
+ id: arg.params.releaseId
357
+ },
358
+ {
359
+ type: 'ReleaseAction',
360
+ id: 'LIST'
361
+ },
362
+ {
363
+ type: 'EntriesInRelease'
364
+ }
365
+ ]
366
+ }),
367
+ publishRelease: build.mutation({
368
+ query ({ id }) {
369
+ return {
370
+ url: `/content-releases/${id}/publish`,
371
+ method: 'POST'
372
+ };
373
+ },
374
+ invalidatesTags: (result, error, arg)=>[
375
+ {
376
+ type: 'Release',
377
+ id: arg.id
378
+ },
379
+ {
380
+ type: 'Document',
381
+ id: `ALL_LIST`
382
+ }
383
+ ]
384
+ }),
385
+ deleteRelease: build.mutation({
386
+ query ({ id }) {
387
+ return {
388
+ url: `/content-releases/${id}`,
389
+ method: 'DELETE'
390
+ };
391
+ },
392
+ invalidatesTags: ()=>[
393
+ {
394
+ type: 'Release',
395
+ id: 'LIST'
396
+ },
397
+ {
398
+ type: 'EntriesInRelease'
399
+ }
400
+ ]
401
+ }),
402
+ getMappedEntriesInReleases: build.query({
403
+ query (params) {
404
+ return {
405
+ url: '/content-releases/mapEntriesToReleases',
406
+ method: 'GET',
407
+ config: {
408
+ params
409
+ }
410
+ };
411
+ },
412
+ transformResponse (response) {
413
+ return response.data;
414
+ },
415
+ providesTags: [
416
+ {
417
+ type: 'EntriesInRelease'
418
+ }
419
+ ]
420
+ }),
421
+ getReleaseSettings: build.query({
422
+ query: ()=>'/content-releases/settings',
423
+ providesTags: [
424
+ {
425
+ type: 'ReleaseSettings'
426
+ }
427
+ ]
428
+ }),
429
+ updateReleaseSettings: build.mutation({
430
+ query (data) {
431
+ return {
432
+ url: '/content-releases/settings',
433
+ method: 'PUT',
434
+ data
435
+ };
436
+ },
437
+ invalidatesTags: [
438
+ {
439
+ type: 'ReleaseSettings'
440
+ }
441
+ ]
442
+ })
443
+ };
444
+ }
445
+ });
446
+ const { useGetReleasesQuery, useGetReleasesForEntryQuery, useGetReleaseQuery, useGetReleaseActionsQuery, useCreateReleaseMutation, useCreateReleaseActionMutation, useCreateManyReleaseActionsMutation, useUpdateReleaseMutation, useUpdateReleaseActionMutation, usePublishReleaseMutation, useDeleteReleaseActionMutation, useDeleteReleaseMutation, useGetMappedEntriesInReleasesQuery, useGetReleaseSettingsQuery, useUpdateReleaseSettingsMutation } = releaseApi;
447
+
448
+ exports.releaseApi = releaseApi;
449
+ exports.useCreateManyReleaseActionsMutation = useCreateManyReleaseActionsMutation;
450
+ exports.useCreateReleaseActionMutation = useCreateReleaseActionMutation;
451
+ exports.useCreateReleaseMutation = useCreateReleaseMutation;
452
+ exports.useDeleteReleaseActionMutation = useDeleteReleaseActionMutation;
453
+ exports.useDeleteReleaseMutation = useDeleteReleaseMutation;
454
+ exports.useGetMappedEntriesInReleasesQuery = useGetMappedEntriesInReleasesQuery;
455
+ exports.useGetReleaseActionsQuery = useGetReleaseActionsQuery;
456
+ exports.useGetReleaseQuery = useGetReleaseQuery;
457
+ exports.useGetReleaseSettingsQuery = useGetReleaseSettingsQuery;
458
+ exports.useGetReleasesForEntryQuery = useGetReleasesForEntryQuery;
459
+ exports.useGetReleasesQuery = useGetReleasesQuery;
460
+ exports.usePublishReleaseMutation = usePublishReleaseMutation;
461
+ exports.useUpdateReleaseActionMutation = useUpdateReleaseActionMutation;
462
+ exports.useUpdateReleaseMutation = useUpdateReleaseMutation;
463
+ exports.useUpdateReleaseSettingsMutation = useUpdateReleaseSettingsMutation;
464
+ //# sourceMappingURL=release.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"release.js","sources":["../../../admin/src/services/release.ts"],"sourcesContent":["import { adminApi } from '@strapi/admin/strapi-admin';\n\nimport {\n CreateReleaseAction,\n CreateManyReleaseActions,\n DeleteReleaseAction,\n} from '../../../shared/contracts/release-actions';\n\nimport type {\n GetReleaseActions,\n UpdateReleaseAction,\n ReleaseActionGroupBy,\n} from '../../../shared/contracts/release-actions';\nimport type {\n CreateRelease,\n DeleteRelease,\n GetReleases,\n GetReleasesByDocumentAttached,\n UpdateRelease,\n GetRelease,\n PublishRelease,\n MapEntriesToReleases,\n} from '../../../shared/contracts/releases';\nimport type { GetSettings, UpdateSettings } from '../../../shared/contracts/settings';\nimport type { EndpointDefinition } from '@reduxjs/toolkit/query';\n\nexport interface GetReleasesQueryParams {\n page?: number;\n pageSize?: number;\n filters?: {\n releasedAt?: {\n // TODO: this should be a boolean, find a way to avoid strings\n $notNull?: boolean | 'true' | 'false';\n };\n };\n}\n\nexport interface GetReleaseActionsQueryParams {\n page?: number;\n pageSize?: number;\n groupBy?: ReleaseActionGroupBy;\n}\n\ntype GetReleasesTabResponse = GetReleases.Response & {\n meta: {\n activeTab: 'pending' | 'done';\n };\n};\n\ntype AnyEndpointDefinition = EndpointDefinition<any, any, any, any>;\n\n// TODO: move this into the admin code & expose an improved version of enhanceEndpoints or a new function\nconst extendInvalidatesTags = (\n endpoint: AnyEndpointDefinition,\n extraTags: string[] | { type: string; id: string }[]\n) => {\n if (!endpoint) {\n return;\n }\n\n const originalInvalidatesTags = endpoint.invalidatesTags;\n\n const newInvalidatesTags: AnyEndpointDefinition['invalidatesTags'] = (\n result,\n err,\n args,\n meta\n ) => {\n const originalTags =\n typeof originalInvalidatesTags === 'function'\n ? originalInvalidatesTags(result, err, args, meta)\n : originalInvalidatesTags;\n\n return [...(originalTags ?? []), ...extraTags];\n };\n\n Object.assign(endpoint, { invalidatesTags: newInvalidatesTags });\n};\n\nconst releaseApi = adminApi\n .enhanceEndpoints({\n addTagTypes: ['Release', 'ReleaseAction', 'EntriesInRelease', 'ReleaseSettings', 'Document'],\n endpoints: {\n updateDocument(endpoint: AnyEndpointDefinition) {\n extendInvalidatesTags(endpoint, [\n { type: 'Release', id: 'LIST' },\n { type: 'ReleaseAction', id: 'LIST' },\n ]);\n },\n deleteDocument(endpoint: AnyEndpointDefinition) {\n extendInvalidatesTags(endpoint, [\n { type: 'Release', id: 'LIST' },\n { type: 'ReleaseAction', id: 'LIST' },\n ]);\n },\n deleteManyDocuments(endpoint: AnyEndpointDefinition) {\n extendInvalidatesTags(endpoint, [\n { type: 'Release', id: 'LIST' },\n { type: 'ReleaseAction', id: 'LIST' },\n ]);\n },\n discardDocument(endpoint: AnyEndpointDefinition) {\n extendInvalidatesTags(endpoint, [\n { type: 'Release', id: 'LIST' },\n { type: 'ReleaseAction', id: 'LIST' },\n ]);\n },\n createWorkflow(endpoint: AnyEndpointDefinition) {\n extendInvalidatesTags(endpoint, [\n { type: 'Release', id: 'LIST' },\n { type: 'ReleaseAction', id: 'LIST' },\n ]);\n },\n updateWorkflow(endpoint: AnyEndpointDefinition) {\n extendInvalidatesTags(endpoint, [\n { type: 'Release', id: 'LIST' },\n { type: 'ReleaseAction', id: 'LIST' },\n ]);\n },\n deleteWorkflow(endpoint: AnyEndpointDefinition) {\n extendInvalidatesTags(endpoint, [\n { type: 'Release', id: 'LIST' },\n { type: 'ReleaseAction', id: 'LIST' },\n ]);\n },\n },\n })\n .injectEndpoints({\n endpoints: (build) => {\n return {\n getReleasesForEntry: build.query<\n GetReleasesByDocumentAttached.Response,\n Partial<GetReleasesByDocumentAttached.Request['query']>\n >({\n query(params) {\n return {\n url: '/content-releases/getByDocumentAttached',\n method: 'GET',\n config: {\n params,\n },\n };\n },\n providesTags: (result) =>\n result\n ? [\n ...result.data.map(({ id }) => ({ type: 'Release' as const, id })),\n { type: 'Release', id: 'LIST' },\n ]\n : [],\n }),\n getReleases: build.query<GetReleasesTabResponse, GetReleasesQueryParams | void>({\n query(\n { page, pageSize, filters } = {\n page: 1,\n pageSize: 16,\n filters: {\n releasedAt: {\n $notNull: false,\n },\n },\n }\n ) {\n return {\n url: '/content-releases',\n method: 'GET',\n config: {\n params: {\n page: page || 1,\n pageSize: pageSize || 16,\n filters: filters || {\n releasedAt: {\n $notNull: false,\n },\n },\n },\n },\n };\n },\n transformResponse(response: GetReleasesTabResponse, meta, arg) {\n const releasedAtValue = arg?.filters?.releasedAt?.$notNull;\n const isActiveDoneTab = releasedAtValue === 'true';\n const newResponse: GetReleasesTabResponse = {\n ...response,\n meta: {\n ...response.meta,\n activeTab: isActiveDoneTab ? 'done' : 'pending',\n },\n };\n\n return newResponse;\n },\n providesTags: (result) =>\n result\n ? [\n ...result.data.map(({ id }) => ({ type: 'Release' as const, id })),\n { type: 'Release', id: 'LIST' },\n ]\n : [{ type: 'Release', id: 'LIST' }],\n }),\n getRelease: build.query<GetRelease.Response, GetRelease.Request['params']>({\n query({ id }) {\n return {\n url: `/content-releases/${id}`,\n method: 'GET',\n };\n },\n providesTags: (result, error, arg) => [\n { type: 'Release', id: 'LIST' },\n { type: 'Release' as const, id: arg.id },\n ],\n }),\n getReleaseActions: build.query<\n GetReleaseActions.Response,\n GetReleaseActions.Request['params'] & GetReleaseActions.Request['query']\n >({\n query({ releaseId, ...params }) {\n return {\n url: `/content-releases/${releaseId}/actions`,\n method: 'GET',\n config: {\n params,\n },\n };\n },\n providesTags: [{ type: 'ReleaseAction', id: 'LIST' }],\n }),\n createRelease: build.mutation<CreateRelease.Response, CreateRelease.Request['body']>({\n query(data) {\n return {\n url: '/content-releases',\n method: 'POST',\n data,\n };\n },\n invalidatesTags: [{ type: 'Release', id: 'LIST' }],\n }),\n updateRelease: build.mutation<\n void,\n UpdateRelease.Request['params'] & UpdateRelease.Request['body']\n >({\n query({ id, ...data }) {\n return {\n url: `/content-releases/${id}`,\n method: 'PUT',\n data,\n };\n },\n invalidatesTags: (result, error, arg) => [{ type: 'Release', id: arg.id }],\n }),\n createReleaseAction: build.mutation<\n CreateReleaseAction.Response,\n CreateReleaseAction.Request\n >({\n query({ body, params }) {\n return {\n url: `/content-releases/${params.releaseId}/actions`,\n method: 'POST',\n data: body,\n };\n },\n invalidatesTags: [\n { type: 'Release', id: 'LIST' },\n { type: 'ReleaseAction', id: 'LIST' },\n ],\n }),\n createManyReleaseActions: build.mutation<\n CreateManyReleaseActions.Response,\n CreateManyReleaseActions.Request\n >({\n query({ body, params }) {\n return {\n url: `/content-releases/${params.releaseId}/actions/bulk`,\n method: 'POST',\n data: body,\n };\n },\n invalidatesTags: [\n { type: 'Release', id: 'LIST' },\n { type: 'ReleaseAction', id: 'LIST' },\n { type: 'EntriesInRelease' },\n ],\n }),\n updateReleaseAction: build.mutation<\n UpdateReleaseAction.Response,\n UpdateReleaseAction.Request & { query: GetReleaseActions.Request['query'] } & {\n actionPath: [string, number];\n }\n >({\n query({ body, params }) {\n return {\n url: `/content-releases/${params.releaseId}/actions/${params.actionId}`,\n method: 'PUT',\n data: body,\n };\n },\n invalidatesTags: (res, error, arg) => [\n { type: 'ReleaseAction', id: 'LIST' },\n { type: 'Release', id: 'LIST' },\n { type: 'Release', id: arg.params.releaseId },\n ],\n async onQueryStarted({ body, params, query, actionPath }, { dispatch, queryFulfilled }) {\n // We need to mimic the same params received by the getReleaseActions query\n const paramsWithoutActionId = {\n releaseId: params.releaseId,\n ...query,\n };\n\n const patchResult = dispatch(\n releaseApi.util.updateQueryData(\n 'getReleaseActions',\n paramsWithoutActionId,\n (draft) => {\n const [key, index] = actionPath;\n const action = draft.data[key][index];\n\n if (action) {\n action.type = body.type;\n }\n }\n )\n );\n\n try {\n await queryFulfilled;\n } catch {\n patchResult.undo();\n }\n },\n }),\n deleteReleaseAction: build.mutation<\n DeleteReleaseAction.Response,\n DeleteReleaseAction.Request\n >({\n query({ params }) {\n return {\n url: `/content-releases/${params.releaseId}/actions/${params.actionId}`,\n method: 'DELETE',\n };\n },\n invalidatesTags: (result, error, arg) => [\n { type: 'Release', id: 'LIST' },\n { type: 'Release', id: arg.params.releaseId },\n { type: 'ReleaseAction', id: 'LIST' },\n { type: 'EntriesInRelease' },\n ],\n }),\n publishRelease: build.mutation<PublishRelease.Response, PublishRelease.Request['params']>({\n query({ id }) {\n return {\n url: `/content-releases/${id}/publish`,\n method: 'POST',\n };\n },\n invalidatesTags: (result, error, arg) => [\n { type: 'Release', id: arg.id },\n { type: 'Document', id: `ALL_LIST` },\n ],\n }),\n deleteRelease: build.mutation<DeleteRelease.Response, DeleteRelease.Request['params']>({\n query({ id }) {\n return {\n url: `/content-releases/${id}`,\n method: 'DELETE',\n };\n },\n invalidatesTags: () => [{ type: 'Release', id: 'LIST' }, { type: 'EntriesInRelease' }],\n }),\n getMappedEntriesInReleases: build.query<\n MapEntriesToReleases.Response['data'],\n MapEntriesToReleases.Request['query']\n >({\n query(params) {\n return {\n url: '/content-releases/mapEntriesToReleases',\n method: 'GET',\n config: {\n params,\n },\n };\n },\n transformResponse(response: MapEntriesToReleases.Response) {\n return response.data;\n },\n providesTags: [{ type: 'EntriesInRelease' }],\n }),\n getReleaseSettings: build.query<GetSettings.Response, GetSettings.Request | void>({\n query: () => '/content-releases/settings',\n providesTags: [{ type: 'ReleaseSettings' }],\n }),\n updateReleaseSettings: build.mutation<void, UpdateSettings.Request['body']>({\n query(data) {\n return {\n url: '/content-releases/settings',\n method: 'PUT',\n data,\n };\n },\n invalidatesTags: [{ type: 'ReleaseSettings' }],\n }),\n };\n },\n });\n\nconst {\n useGetReleasesQuery,\n useGetReleasesForEntryQuery,\n useGetReleaseQuery,\n useGetReleaseActionsQuery,\n useCreateReleaseMutation,\n useCreateReleaseActionMutation,\n useCreateManyReleaseActionsMutation,\n useUpdateReleaseMutation,\n useUpdateReleaseActionMutation,\n usePublishReleaseMutation,\n useDeleteReleaseActionMutation,\n useDeleteReleaseMutation,\n useGetMappedEntriesInReleasesQuery,\n useGetReleaseSettingsQuery,\n useUpdateReleaseSettingsMutation,\n} = releaseApi;\n\nexport {\n useGetReleasesQuery,\n useGetReleasesForEntryQuery,\n useGetReleaseQuery,\n useGetReleaseActionsQuery,\n useCreateReleaseMutation,\n useCreateReleaseActionMutation,\n useCreateManyReleaseActionsMutation,\n useUpdateReleaseMutation,\n useUpdateReleaseActionMutation,\n usePublishReleaseMutation,\n useDeleteReleaseActionMutation,\n useDeleteReleaseMutation,\n useGetMappedEntriesInReleasesQuery,\n useGetReleaseSettingsQuery,\n useUpdateReleaseSettingsMutation,\n releaseApi,\n};\n"],"names":["extendInvalidatesTags","endpoint","extraTags","originalInvalidatesTags","invalidatesTags","newInvalidatesTags","result","err","args","meta","originalTags","Object","assign","releaseApi","adminApi","enhanceEndpoints","addTagTypes","endpoints","updateDocument","type","id","deleteDocument","deleteManyDocuments","discardDocument","createWorkflow","updateWorkflow","deleteWorkflow","injectEndpoints","build","getReleasesForEntry","query","params","url","method","config","providesTags","data","map","getReleases","page","pageSize","filters","releasedAt","$notNull","transformResponse","response","arg","releasedAtValue","isActiveDoneTab","newResponse","activeTab","getRelease","error","getReleaseActions","releaseId","createRelease","mutation","updateRelease","createReleaseAction","body","createManyReleaseActions","updateReleaseAction","actionId","res","onQueryStarted","actionPath","dispatch","queryFulfilled","paramsWithoutActionId","patchResult","util","updateQueryData","draft","key","index","action","undo","deleteReleaseAction","publishRelease","deleteRelease","getMappedEntriesInReleases","getReleaseSettings","updateReleaseSettings","useGetReleasesQuery","useGetReleasesForEntryQuery","useGetReleaseQuery","useGetReleaseActionsQuery","useCreateReleaseMutation","useCreateReleaseActionMutation","useCreateManyReleaseActionsMutation","useUpdateReleaseMutation","useUpdateReleaseActionMutation","usePublishReleaseMutation","useDeleteReleaseActionMutation","useDeleteReleaseMutation","useGetMappedEntriesInReleasesQuery","useGetReleaseSettingsQuery","useUpdateReleaseSettingsMutation"],"mappings":"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"}