@strapi/content-manager 0.0.0-next.72ea34aaac6f60a1e1b8041850c21bed9eceb064 → 0.0.0-next.76a9dc5ca66301db734af3bc2111406c17ccb860
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/CardDragPreview-C0QyJgRA.js.map +1 -1
- package/dist/_chunks/CardDragPreview-DOxamsuj.mjs.map +1 -1
- package/dist/_chunks/{ComponentConfigurationPage-ClKl_TA2.js → ComponentConfigurationPage-BLWQy8ru.js} +4 -5
- package/dist/_chunks/{ComponentConfigurationPage-ClKl_TA2.js.map → ComponentConfigurationPage-BLWQy8ru.js.map} +1 -1
- package/dist/_chunks/{ComponentConfigurationPage-D3ZWDAHG.mjs → ComponentConfigurationPage-CtIa3aa2.mjs} +3 -3
- package/dist/_chunks/{ComponentConfigurationPage-D3ZWDAHG.mjs.map → ComponentConfigurationPage-CtIa3aa2.mjs.map} +1 -1
- package/dist/_chunks/{ComponentIcon-BXdiCGQp.js → ComponentIcon-CRbtQEUV.js} +2 -3
- package/dist/_chunks/{ComponentIcon-BXdiCGQp.js.map → ComponentIcon-CRbtQEUV.js.map} +1 -1
- package/dist/_chunks/ComponentIcon-u4bIXTFY.mjs.map +1 -1
- package/dist/_chunks/{EditConfigurationPage-BYCBSJxP.mjs → EditConfigurationPage-DsPR2DVk.mjs} +3 -3
- package/dist/_chunks/{EditConfigurationPage-BYCBSJxP.mjs.map → EditConfigurationPage-DsPR2DVk.mjs.map} +1 -1
- package/dist/_chunks/{EditConfigurationPage-OWez0Kxp.js → EditConfigurationPage-RQkymxCy.js} +4 -5
- package/dist/_chunks/{EditConfigurationPage-OWez0Kxp.js.map → EditConfigurationPage-RQkymxCy.js.map} +1 -1
- package/dist/_chunks/{EditViewPage-BEs5iGDi.js → EditViewPage-B-kExt8C.js} +4 -5
- package/dist/_chunks/{EditViewPage-BEs5iGDi.js.map → EditViewPage-B-kExt8C.js.map} +1 -1
- package/dist/_chunks/{EditViewPage-5pdbvsO_.mjs → EditViewPage-BPyVuPfM.mjs} +3 -3
- package/dist/_chunks/{EditViewPage-5pdbvsO_.mjs.map → EditViewPage-BPyVuPfM.mjs.map} +1 -1
- package/dist/_chunks/{Field-DNHm4wHx.js → Field-DPIsQRre.js} +140 -104
- package/dist/_chunks/Field-DPIsQRre.js.map +1 -0
- package/dist/_chunks/{Field-DcKuFHYK.mjs → Field-Dltnt1km.mjs} +138 -102
- package/dist/_chunks/Field-Dltnt1km.mjs.map +1 -0
- package/dist/_chunks/FieldTypeIcon-CMlNO8PE.mjs.map +1 -1
- package/dist/_chunks/FieldTypeIcon-Dnwq_IRF.js.map +1 -1
- package/dist/_chunks/{Form-CoRxWJOz.js → Form-BFi4MXMT.js} +5 -6
- package/dist/_chunks/{Form-CoRxWJOz.js.map → Form-BFi4MXMT.js.map} +1 -1
- package/dist/_chunks/{Form-CGwM_-5c.mjs → Form-C1IcWm1u.mjs} +3 -3
- package/dist/_chunks/{Form-CGwM_-5c.mjs.map → Form-C1IcWm1u.mjs.map} +1 -1
- package/dist/_chunks/{History-DEvr3Q_V.mjs → History-04ChQ4pl.mjs} +33 -9
- package/dist/_chunks/History-04ChQ4pl.mjs.map +1 -0
- package/dist/_chunks/{History-BcUTQrfG.js → History-wjcK4L0C.js} +34 -11
- package/dist/_chunks/History-wjcK4L0C.js.map +1 -0
- package/dist/_chunks/{ListConfigurationPage-BM4zZZcM.mjs → ListConfigurationPage-BYqPYLSU.mjs} +3 -3
- package/dist/_chunks/{ListConfigurationPage-BM4zZZcM.mjs.map → ListConfigurationPage-BYqPYLSU.mjs.map} +1 -1
- package/dist/_chunks/{ListConfigurationPage-BE_Ho7tV.js → ListConfigurationPage-CRbxIC3J.js} +4 -5
- package/dist/_chunks/{ListConfigurationPage-BE_Ho7tV.js.map → ListConfigurationPage-CRbxIC3J.js.map} +1 -1
- package/dist/_chunks/{ListViewPage-BkT8Eao0.js → ListViewPage-D5NY9183.js} +51 -51
- package/dist/_chunks/ListViewPage-D5NY9183.js.map +1 -0
- package/dist/_chunks/{ListViewPage-BK2mkrql.mjs → ListViewPage-FU2LBuhl.mjs} +50 -49
- package/dist/_chunks/ListViewPage-FU2LBuhl.mjs.map +1 -0
- package/dist/_chunks/{NoContentTypePage-C8mtyc4H.js → NoContentTypePage-BgQVE_Qb.js} +2 -2
- package/dist/_chunks/{NoContentTypePage-C8mtyc4H.js.map → NoContentTypePage-BgQVE_Qb.js.map} +1 -1
- package/dist/_chunks/{NoContentTypePage-BvcAutu9.mjs → NoContentTypePage-DCKUkwb8.mjs} +2 -2
- package/dist/_chunks/{NoContentTypePage-BvcAutu9.mjs.map → NoContentTypePage-DCKUkwb8.mjs.map} +1 -1
- package/dist/_chunks/{NoPermissionsPage-B5Y9Y78B.js → NoPermissionsPage-C5jwn70o.js} +2 -2
- package/dist/_chunks/{NoPermissionsPage-B5Y9Y78B.js.map → NoPermissionsPage-C5jwn70o.js.map} +1 -1
- package/dist/_chunks/{NoPermissionsPage-BmbRz7PR.mjs → NoPermissionsPage-jqve7C8l.mjs} +2 -2
- package/dist/_chunks/{NoPermissionsPage-BmbRz7PR.mjs.map → NoPermissionsPage-jqve7C8l.mjs.map} +1 -1
- package/dist/_chunks/{Preview-DcexhKJE.mjs → Preview-BMYN548c.mjs} +39 -12
- package/dist/_chunks/Preview-BMYN548c.mjs.map +1 -0
- package/dist/_chunks/{Preview-BF8ZDYqS.js → Preview-DaOihysv.js} +38 -12
- package/dist/_chunks/Preview-DaOihysv.js.map +1 -0
- package/dist/_chunks/{Relations-BKnoK1R0.js → Relations-CTGM7Hv5.js} +7 -10
- package/dist/_chunks/{Relations-BKnoK1R0.js.map → Relations-CTGM7Hv5.js.map} +1 -1
- package/dist/_chunks/{Relations-BjIzc4EK.mjs → Relations-gscPkxjF.mjs} +6 -8
- package/dist/_chunks/{Relations-BjIzc4EK.mjs.map → Relations-gscPkxjF.mjs.map} +1 -1
- package/dist/_chunks/{en-DTWPCdTS.js → en-BzQmavmK.js} +9 -3
- package/dist/_chunks/{en-DTWPCdTS.js.map → en-BzQmavmK.js.map} +1 -1
- package/dist/_chunks/{en-CfIXaZf9.mjs → en-CSxLmrh1.mjs} +9 -3
- package/dist/_chunks/{en-CfIXaZf9.mjs.map → en-CSxLmrh1.mjs.map} +1 -1
- package/dist/_chunks/hooks-BAaaKPS_.js.map +1 -1
- package/dist/_chunks/{index-DOzAG2cq.js → index-Ca7YWlAA.js} +241 -144
- package/dist/_chunks/index-Ca7YWlAA.js.map +1 -0
- package/dist/_chunks/{index-BW-rXkjn.mjs → index-DqasUQ6Q.mjs} +240 -142
- package/dist/_chunks/index-DqasUQ6Q.mjs.map +1 -0
- package/dist/_chunks/{layout-RC3W2obV.js → layout-BW80JSCd.js} +5 -6
- package/dist/_chunks/{layout-RC3W2obV.js.map → layout-BW80JSCd.js.map} +1 -1
- package/dist/_chunks/{layout-DFVbgjp2.mjs → layout-W3clJSCy.mjs} +4 -4
- package/dist/_chunks/{layout-DFVbgjp2.mjs.map → layout-W3clJSCy.mjs.map} +1 -1
- package/dist/_chunks/objects-BcXOv6_9.js.map +1 -1
- package/dist/_chunks/objects-D6yBsdmx.mjs.map +1 -1
- package/dist/_chunks/{relations-Dogh8HWI.mjs → relations-BlDkoeWh.mjs} +2 -2
- package/dist/_chunks/{relations-Dogh8HWI.mjs.map → relations-BlDkoeWh.mjs.map} +1 -1
- package/dist/_chunks/{relations-zam7-5H7.js → relations-C9Usz9k5.js} +2 -2
- package/dist/_chunks/{relations-zam7-5H7.js.map → relations-C9Usz9k5.js.map} +1 -1
- package/dist/_chunks/useDebounce-CtcjDB3L.js.map +1 -1
- package/dist/_chunks/useDebounce-DmuSJIF3.mjs.map +1 -1
- package/dist/_chunks/{useDragAndDrop-J0TUUbR6.js → useDragAndDrop-BMtgCYzL.js} +5 -9
- package/dist/_chunks/{useDragAndDrop-J0TUUbR6.js.map → useDragAndDrop-BMtgCYzL.js.map} +1 -1
- package/dist/_chunks/{useDragAndDrop-DdHgKsqq.mjs → useDragAndDrop-DJ6jqvZN.mjs} +4 -7
- package/dist/_chunks/{useDragAndDrop-DdHgKsqq.mjs.map → useDragAndDrop-DJ6jqvZN.mjs.map} +1 -1
- package/dist/admin/index.js +2 -1
- package/dist/admin/index.js.map +1 -1
- package/dist/admin/index.mjs +2 -1
- package/dist/admin/src/content-manager.d.ts +3 -2
- package/dist/admin/src/exports.d.ts +1 -0
- package/dist/admin/src/history/services/historyVersion.d.ts +1 -1
- package/dist/admin/src/pages/EditView/components/DocumentActions.d.ts +1 -1
- package/dist/admin/src/pages/EditView/components/DocumentStatus.d.ts +1 -1
- package/dist/admin/src/pages/EditView/components/FormInputs/BlocksInput/Blocks/Code.d.ts +7 -0
- package/dist/admin/src/pages/EditView/components/FormInputs/BlocksInput/Blocks/utils/prismLanguages.d.ts +49 -0
- package/dist/admin/src/pages/EditView/components/FormInputs/BlocksInput/utils/constants.d.ts +1 -0
- package/dist/admin/src/pages/EditView/components/FormInputs/DynamicZone/DynamicComponent.d.ts +4 -1
- package/dist/admin/src/pages/EditView/components/FormInputs/DynamicZone/Field.d.ts +4 -1
- package/dist/admin/src/preview/services/preview.d.ts +1 -1
- package/dist/admin/src/services/api.d.ts +1 -1
- package/dist/admin/src/services/components.d.ts +2 -2
- package/dist/admin/src/services/contentTypes.d.ts +3 -3
- package/dist/admin/src/services/documents.d.ts +16 -19
- package/dist/admin/src/services/init.d.ts +1 -1
- package/dist/admin/src/services/relations.d.ts +2 -2
- package/dist/admin/src/services/uid.d.ts +3 -3
- package/dist/server/index.js +230 -187
- package/dist/server/index.js.map +1 -1
- package/dist/server/index.mjs +231 -187
- package/dist/server/index.mjs.map +1 -1
- package/dist/server/src/controllers/utils/metadata.d.ts +1 -0
- package/dist/server/src/controllers/utils/metadata.d.ts.map +1 -1
- package/dist/server/src/history/controllers/history-version.d.ts +1 -1
- package/dist/server/src/history/controllers/history-version.d.ts.map +1 -1
- package/dist/server/src/history/services/history.d.ts +3 -3
- package/dist/server/src/history/services/history.d.ts.map +1 -1
- package/dist/server/src/history/services/utils.d.ts +6 -10
- package/dist/server/src/history/services/utils.d.ts.map +1 -1
- package/dist/server/src/index.d.ts +3 -2
- package/dist/server/src/index.d.ts.map +1 -1
- package/dist/server/src/preview/controllers/validation/preview.d.ts.map +1 -1
- package/dist/server/src/preview/index.d.ts.map +1 -1
- package/dist/server/src/preview/services/index.d.ts +1 -0
- package/dist/server/src/preview/services/index.d.ts.map +1 -1
- package/dist/server/src/preview/services/preview-config.d.ts +2 -0
- package/dist/server/src/preview/services/preview-config.d.ts.map +1 -1
- package/dist/server/src/preview/utils.d.ts +1 -0
- package/dist/server/src/preview/utils.d.ts.map +1 -1
- package/dist/server/src/register.d.ts.map +1 -1
- package/dist/server/src/services/document-metadata.d.ts +4 -2
- package/dist/server/src/services/document-metadata.d.ts.map +1 -1
- package/dist/server/src/services/index.d.ts +3 -2
- package/dist/server/src/services/index.d.ts.map +1 -1
- package/dist/server/src/services/utils/configuration/index.d.ts +2 -2
- package/dist/server/src/services/utils/configuration/layouts.d.ts +2 -2
- package/dist/server/src/services/utils/populate.d.ts +2 -2
- package/dist/server/src/services/utils/populate.d.ts.map +1 -1
- package/package.json +11 -10
- package/dist/_chunks/Field-DNHm4wHx.js.map +0 -1
- package/dist/_chunks/Field-DcKuFHYK.mjs.map +0 -1
- package/dist/_chunks/History-BcUTQrfG.js.map +0 -1
- package/dist/_chunks/History-DEvr3Q_V.mjs.map +0 -1
- package/dist/_chunks/ListViewPage-BK2mkrql.mjs.map +0 -1
- package/dist/_chunks/ListViewPage-BkT8Eao0.js.map +0 -1
- package/dist/_chunks/Preview-BF8ZDYqS.js.map +0 -1
- package/dist/_chunks/Preview-DcexhKJE.mjs.map +0 -1
- package/dist/_chunks/index-BW-rXkjn.mjs.map +0 -1
- package/dist/_chunks/index-DOzAG2cq.js.map +0 -1
- package/dist/admin/src/preview/constants.d.ts +0 -1
- package/dist/server/src/preview/constants.d.ts +0 -2
- package/dist/server/src/preview/constants.d.ts.map +0 -1
@@ -9,14 +9,13 @@ const reactIntl = require("react-intl");
|
|
9
9
|
const reactRouterDom = require("react-router-dom");
|
10
10
|
const styledComponents = require("styled-components");
|
11
11
|
const yup = require("yup");
|
12
|
+
const qs = require("qs");
|
12
13
|
const pipe = require("lodash/fp/pipe");
|
13
14
|
const dateFns = require("date-fns");
|
14
|
-
const qs = require("qs");
|
15
15
|
const toolkit = require("@reduxjs/toolkit");
|
16
16
|
const _interopDefault = (e) => e && e.__esModule ? e : { default: e };
|
17
17
|
function _interopNamespace(e) {
|
18
|
-
if (e && e.__esModule)
|
19
|
-
return e;
|
18
|
+
if (e && e.__esModule) return e;
|
20
19
|
const n = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } });
|
21
20
|
if (e) {
|
22
21
|
for (const k in e) {
|
@@ -36,13 +35,20 @@ const React__namespace = /* @__PURE__ */ _interopNamespace(React);
|
|
36
35
|
const mapValues__default = /* @__PURE__ */ _interopDefault(mapValues);
|
37
36
|
const yup__namespace = /* @__PURE__ */ _interopNamespace(yup);
|
38
37
|
const pipe__default = /* @__PURE__ */ _interopDefault(pipe);
|
39
|
-
const __variableDynamicImportRuntimeHelper = (glob, path) => {
|
38
|
+
const __variableDynamicImportRuntimeHelper = (glob, path, segs) => {
|
40
39
|
const v = glob[path];
|
41
40
|
if (v) {
|
42
41
|
return typeof v === "function" ? v() : Promise.resolve(v);
|
43
42
|
}
|
44
43
|
return new Promise((_, reject) => {
|
45
|
-
(typeof queueMicrotask === "function" ? queueMicrotask : setTimeout)(
|
44
|
+
(typeof queueMicrotask === "function" ? queueMicrotask : setTimeout)(
|
45
|
+
reject.bind(
|
46
|
+
null,
|
47
|
+
new Error(
|
48
|
+
"Unknown variable dynamic import: " + path + (path.split("/").length !== segs ? ". Note that variables only represent file names one level deep." : "")
|
49
|
+
)
|
50
|
+
)
|
51
|
+
);
|
46
52
|
});
|
47
53
|
};
|
48
54
|
const PLUGIN_ID = "content-manager";
|
@@ -190,7 +196,8 @@ const contentManagerApi = strapiAdmin.adminApi.enhanceEndpoints({
|
|
190
196
|
"InitialData",
|
191
197
|
"HistoryVersion",
|
192
198
|
"Relations",
|
193
|
-
"UidAvailability"
|
199
|
+
"UidAvailability",
|
200
|
+
"RecentDocumentList"
|
194
201
|
]
|
195
202
|
});
|
196
203
|
const documentApi = contentManagerApi.injectEndpoints({
|
@@ -208,7 +215,7 @@ const documentApi = contentManagerApi.injectEndpoints({
|
|
208
215
|
if (error) {
|
209
216
|
return [];
|
210
217
|
}
|
211
|
-
return [{ type: "Document", id: `${model}_LIST` }];
|
218
|
+
return [{ type: "Document", id: `${model}_LIST` }, "RecentDocumentList"];
|
212
219
|
}
|
213
220
|
}),
|
214
221
|
cloneDocument: builder.mutation({
|
@@ -222,7 +229,8 @@ const documentApi = contentManagerApi.injectEndpoints({
|
|
222
229
|
}),
|
223
230
|
invalidatesTags: (_result, _error, { model }) => [
|
224
231
|
{ type: "Document", id: `${model}_LIST` },
|
225
|
-
{ type: "UidAvailability", id: model }
|
232
|
+
{ type: "UidAvailability", id: model },
|
233
|
+
"RecentDocumentList"
|
226
234
|
]
|
227
235
|
}),
|
228
236
|
/**
|
@@ -241,8 +249,21 @@ const documentApi = contentManagerApi.injectEndpoints({
|
|
241
249
|
invalidatesTags: (result, _error, { model }) => [
|
242
250
|
{ type: "Document", id: `${model}_LIST` },
|
243
251
|
"Relations",
|
244
|
-
{ type: "UidAvailability", id: model }
|
245
|
-
|
252
|
+
{ type: "UidAvailability", id: model },
|
253
|
+
"RecentDocumentList"
|
254
|
+
],
|
255
|
+
transformResponse: (response, meta, arg) => {
|
256
|
+
if (!("data" in response) && arg.model === "plugin::users-permissions.user") {
|
257
|
+
return {
|
258
|
+
data: response,
|
259
|
+
meta: {
|
260
|
+
availableStatus: [],
|
261
|
+
availableLocales: []
|
262
|
+
}
|
263
|
+
};
|
264
|
+
}
|
265
|
+
return response;
|
266
|
+
}
|
246
267
|
}),
|
247
268
|
deleteDocument: builder.mutation({
|
248
269
|
query: ({ collectionType, model, documentId, params }) => ({
|
@@ -253,7 +274,8 @@ const documentApi = contentManagerApi.injectEndpoints({
|
|
253
274
|
}
|
254
275
|
}),
|
255
276
|
invalidatesTags: (_result, _error, { collectionType, model }) => [
|
256
|
-
{ type: "Document", id: collectionType !== SINGLE_TYPES ? `${model}_LIST` : model }
|
277
|
+
{ type: "Document", id: collectionType !== SINGLE_TYPES ? `${model}_LIST` : model },
|
278
|
+
"RecentDocumentList"
|
257
279
|
]
|
258
280
|
}),
|
259
281
|
deleteManyDocuments: builder.mutation({
|
@@ -265,7 +287,10 @@ const documentApi = contentManagerApi.injectEndpoints({
|
|
265
287
|
params
|
266
288
|
}
|
267
289
|
}),
|
268
|
-
invalidatesTags: (_res, _error, { model }) => [
|
290
|
+
invalidatesTags: (_res, _error, { model }) => [
|
291
|
+
{ type: "Document", id: `${model}_LIST` },
|
292
|
+
"RecentDocumentList"
|
293
|
+
]
|
269
294
|
}),
|
270
295
|
discardDocument: builder.mutation({
|
271
296
|
query: ({ collectionType, model, documentId, params }) => ({
|
@@ -283,7 +308,8 @@ const documentApi = contentManagerApi.injectEndpoints({
|
|
283
308
|
},
|
284
309
|
{ type: "Document", id: `${model}_LIST` },
|
285
310
|
"Relations",
|
286
|
-
{ type: "UidAvailability", id: model }
|
311
|
+
{ type: "UidAvailability", id: model },
|
312
|
+
"RecentDocumentList"
|
287
313
|
];
|
288
314
|
}
|
289
315
|
}),
|
@@ -296,7 +322,7 @@ const documentApi = contentManagerApi.injectEndpoints({
|
|
296
322
|
url: `/content-manager/collection-types/${model}`,
|
297
323
|
method: "GET",
|
298
324
|
config: {
|
299
|
-
params
|
325
|
+
params: qs.stringify(params, { encode: true })
|
300
326
|
}
|
301
327
|
}),
|
302
328
|
providesTags: (result, _error, arg) => {
|
@@ -378,7 +404,8 @@ const documentApi = contentManagerApi.injectEndpoints({
|
|
378
404
|
id: collectionType !== SINGLE_TYPES ? `${model}_${documentId}` : model
|
379
405
|
},
|
380
406
|
{ type: "Document", id: `${model}_LIST` },
|
381
|
-
"Relations"
|
407
|
+
"Relations",
|
408
|
+
"RecentDocumentList"
|
382
409
|
];
|
383
410
|
}
|
384
411
|
}),
|
@@ -409,7 +436,9 @@ const documentApi = contentManagerApi.injectEndpoints({
|
|
409
436
|
id: collectionType !== SINGLE_TYPES ? `${model}_${documentId}` : model
|
410
437
|
},
|
411
438
|
"Relations",
|
412
|
-
{ type: "UidAvailability", id: model }
|
439
|
+
{ type: "UidAvailability", id: model },
|
440
|
+
"RecentDocumentList",
|
441
|
+
"RecentDocumentList"
|
413
442
|
];
|
414
443
|
},
|
415
444
|
async onQueryStarted({ data, ...patch }, { dispatch, queryFulfilled }) {
|
@@ -439,7 +468,8 @@ const documentApi = contentManagerApi.injectEndpoints({
|
|
439
468
|
{
|
440
469
|
type: "Document",
|
441
470
|
id: collectionType !== SINGLE_TYPES ? `${model}_${documentId}` : model
|
442
|
-
}
|
471
|
+
},
|
472
|
+
"RecentDocumentList"
|
443
473
|
];
|
444
474
|
}
|
445
475
|
}),
|
@@ -452,7 +482,10 @@ const documentApi = contentManagerApi.injectEndpoints({
|
|
452
482
|
params
|
453
483
|
}
|
454
484
|
}),
|
455
|
-
invalidatesTags: (_res, _error, { model, documentIds }) =>
|
485
|
+
invalidatesTags: (_res, _error, { model, documentIds }) => [
|
486
|
+
...documentIds.map((id) => ({ type: "Document", id: `${model}_${id}` })),
|
487
|
+
"RecentDocumentList"
|
488
|
+
]
|
456
489
|
})
|
457
490
|
})
|
458
491
|
});
|
@@ -475,8 +508,7 @@ const {
|
|
475
508
|
useUnpublishManyDocumentsMutation
|
476
509
|
} = documentApi;
|
477
510
|
const buildValidParams = (query) => {
|
478
|
-
if (!query)
|
479
|
-
return query;
|
511
|
+
if (!query) return query;
|
480
512
|
const { plugins: _, ...validQueryParams } = {
|
481
513
|
...query,
|
482
514
|
...Object.values(query?.plugins ?? {}).reduce(
|
@@ -484,9 +516,6 @@ const buildValidParams = (query) => {
|
|
484
516
|
{}
|
485
517
|
)
|
486
518
|
};
|
487
|
-
if ("_q" in validQueryParams) {
|
488
|
-
validQueryParams._q = encodeURIComponent(validQueryParams._q);
|
489
|
-
}
|
490
519
|
return validQueryParams;
|
491
520
|
};
|
492
521
|
const isBaseQueryError = (error) => {
|
@@ -1686,7 +1715,7 @@ const useDocumentActions = () => {
|
|
1686
1715
|
};
|
1687
1716
|
};
|
1688
1717
|
const ProtectedHistoryPage = React__namespace.lazy(
|
1689
|
-
() => Promise.resolve().then(() => require("./History-
|
1718
|
+
() => Promise.resolve().then(() => require("./History-wjcK4L0C.js")).then((mod) => ({ default: mod.ProtectedHistoryPage }))
|
1690
1719
|
);
|
1691
1720
|
const routes$2 = [
|
1692
1721
|
{
|
@@ -1699,7 +1728,7 @@ const routes$2 = [
|
|
1699
1728
|
}
|
1700
1729
|
];
|
1701
1730
|
const ProtectedPreviewPage = React__namespace.lazy(
|
1702
|
-
() => Promise.resolve().then(() => require("./Preview-
|
1731
|
+
() => Promise.resolve().then(() => require("./Preview-DaOihysv.js")).then((mod) => ({ default: mod.ProtectedPreviewPage }))
|
1703
1732
|
);
|
1704
1733
|
const routes$1 = [
|
1705
1734
|
{
|
@@ -1712,31 +1741,31 @@ const routes$1 = [
|
|
1712
1741
|
}
|
1713
1742
|
];
|
1714
1743
|
const ProtectedEditViewPage = React.lazy(
|
1715
|
-
() => Promise.resolve().then(() => require("./EditViewPage-
|
1744
|
+
() => Promise.resolve().then(() => require("./EditViewPage-B-kExt8C.js")).then((mod) => ({ default: mod.ProtectedEditViewPage }))
|
1716
1745
|
);
|
1717
1746
|
const ProtectedListViewPage = React.lazy(
|
1718
|
-
() => Promise.resolve().then(() => require("./ListViewPage-
|
1747
|
+
() => Promise.resolve().then(() => require("./ListViewPage-D5NY9183.js")).then((mod) => ({ default: mod.ProtectedListViewPage }))
|
1719
1748
|
);
|
1720
1749
|
const ProtectedListConfiguration = React.lazy(
|
1721
|
-
() => Promise.resolve().then(() => require("./ListConfigurationPage-
|
1750
|
+
() => Promise.resolve().then(() => require("./ListConfigurationPage-CRbxIC3J.js")).then((mod) => ({
|
1722
1751
|
default: mod.ProtectedListConfiguration
|
1723
1752
|
}))
|
1724
1753
|
);
|
1725
1754
|
const ProtectedEditConfigurationPage = React.lazy(
|
1726
|
-
() => Promise.resolve().then(() => require("./EditConfigurationPage-
|
1755
|
+
() => Promise.resolve().then(() => require("./EditConfigurationPage-RQkymxCy.js")).then((mod) => ({
|
1727
1756
|
default: mod.ProtectedEditConfigurationPage
|
1728
1757
|
}))
|
1729
1758
|
);
|
1730
1759
|
const ProtectedComponentConfigurationPage = React.lazy(
|
1731
|
-
() => Promise.resolve().then(() => require("./ComponentConfigurationPage-
|
1760
|
+
() => Promise.resolve().then(() => require("./ComponentConfigurationPage-BLWQy8ru.js")).then((mod) => ({
|
1732
1761
|
default: mod.ProtectedComponentConfigurationPage
|
1733
1762
|
}))
|
1734
1763
|
);
|
1735
1764
|
const NoPermissions = React.lazy(
|
1736
|
-
() => Promise.resolve().then(() => require("./NoPermissionsPage-
|
1765
|
+
() => Promise.resolve().then(() => require("./NoPermissionsPage-C5jwn70o.js")).then((mod) => ({ default: mod.NoPermissions }))
|
1737
1766
|
);
|
1738
1767
|
const NoContentType = React.lazy(
|
1739
|
-
() => Promise.resolve().then(() => require("./NoContentTypePage-
|
1768
|
+
() => Promise.resolve().then(() => require("./NoContentTypePage-BgQVE_Qb.js")).then((mod) => ({ default: mod.NoContentType }))
|
1740
1769
|
);
|
1741
1770
|
const CollectionTypePages = () => {
|
1742
1771
|
const { collectionType } = reactRouterDom.useParams();
|
@@ -2106,6 +2135,7 @@ const PublishAction$1 = ({
|
|
2106
2135
|
const { _unstableFormatValidationErrors: formatValidationErrors } = strapiAdmin.useAPIErrorHandler();
|
2107
2136
|
const isListView = reactRouterDom.useMatch(LIST_PATH) !== null;
|
2108
2137
|
const isCloning = reactRouterDom.useMatch(CLONE_PATH) !== null;
|
2138
|
+
const { id } = reactRouterDom.useParams();
|
2109
2139
|
const { formatMessage } = reactIntl.useIntl();
|
2110
2140
|
const canPublish = useDocumentRBAC("PublishAction", ({ canPublish: canPublish2 }) => canPublish2);
|
2111
2141
|
const { publish } = useDocumentActions();
|
@@ -2208,10 +2238,12 @@ const PublishAction$1 = ({
|
|
2208
2238
|
transformData(formValues)
|
2209
2239
|
);
|
2210
2240
|
if ("data" in res && collectionType !== SINGLE_TYPES) {
|
2211
|
-
|
2212
|
-
|
2213
|
-
|
2214
|
-
|
2241
|
+
if (id === "create") {
|
2242
|
+
navigate({
|
2243
|
+
pathname: `../${collectionType}/${model}/${res.data.documentId}`,
|
2244
|
+
search: rawQuery
|
2245
|
+
});
|
2246
|
+
}
|
2215
2247
|
} else if ("error" in res && isBaseQueryError(res.error) && res.error.name === "ValidationError") {
|
2216
2248
|
setErrors(formatValidationErrors(res.error));
|
2217
2249
|
}
|
@@ -2264,6 +2296,7 @@ const PublishAction$1 = ({
|
|
2264
2296
|
};
|
2265
2297
|
};
|
2266
2298
|
PublishAction$1.type = "publish";
|
2299
|
+
PublishAction$1.position = "panel";
|
2267
2300
|
const UpdateAction = ({
|
2268
2301
|
activeTab,
|
2269
2302
|
documentId,
|
@@ -2286,6 +2319,117 @@ const UpdateAction = ({
|
|
2286
2319
|
const validate = strapiAdmin.useForm("UpdateAction", (state) => state.validate);
|
2287
2320
|
const setErrors = strapiAdmin.useForm("UpdateAction", (state) => state.setErrors);
|
2288
2321
|
const resetForm = strapiAdmin.useForm("PublishAction", ({ resetForm: resetForm2 }) => resetForm2);
|
2322
|
+
const handleUpdate = React__namespace.useCallback(async () => {
|
2323
|
+
setSubmitting(true);
|
2324
|
+
try {
|
2325
|
+
if (!modified) {
|
2326
|
+
return;
|
2327
|
+
}
|
2328
|
+
const { errors } = await validate(true, {
|
2329
|
+
status: "draft"
|
2330
|
+
});
|
2331
|
+
if (errors) {
|
2332
|
+
toggleNotification({
|
2333
|
+
type: "danger",
|
2334
|
+
message: formatMessage({
|
2335
|
+
id: "content-manager.validation.error",
|
2336
|
+
defaultMessage: "There are validation errors in your document. Please fix them before saving."
|
2337
|
+
})
|
2338
|
+
});
|
2339
|
+
return;
|
2340
|
+
}
|
2341
|
+
if (isCloning) {
|
2342
|
+
const res = await clone(
|
2343
|
+
{
|
2344
|
+
model,
|
2345
|
+
documentId: cloneMatch.params.origin,
|
2346
|
+
params
|
2347
|
+
},
|
2348
|
+
transformData(document)
|
2349
|
+
);
|
2350
|
+
if ("data" in res) {
|
2351
|
+
navigate(
|
2352
|
+
{
|
2353
|
+
pathname: `../${res.data.documentId}`,
|
2354
|
+
search: rawQuery
|
2355
|
+
},
|
2356
|
+
{ relative: "path" }
|
2357
|
+
);
|
2358
|
+
} else if ("error" in res && isBaseQueryError(res.error) && res.error.name === "ValidationError") {
|
2359
|
+
setErrors(formatValidationErrors(res.error));
|
2360
|
+
}
|
2361
|
+
} else if (documentId || collectionType === SINGLE_TYPES) {
|
2362
|
+
const res = await update(
|
2363
|
+
{
|
2364
|
+
collectionType,
|
2365
|
+
model,
|
2366
|
+
documentId,
|
2367
|
+
params
|
2368
|
+
},
|
2369
|
+
transformData(document)
|
2370
|
+
);
|
2371
|
+
if ("error" in res && isBaseQueryError(res.error) && res.error.name === "ValidationError") {
|
2372
|
+
setErrors(formatValidationErrors(res.error));
|
2373
|
+
} else {
|
2374
|
+
resetForm();
|
2375
|
+
}
|
2376
|
+
} else {
|
2377
|
+
const res = await create(
|
2378
|
+
{
|
2379
|
+
model,
|
2380
|
+
params
|
2381
|
+
},
|
2382
|
+
transformData(document)
|
2383
|
+
);
|
2384
|
+
if ("data" in res && collectionType !== SINGLE_TYPES) {
|
2385
|
+
navigate(
|
2386
|
+
{
|
2387
|
+
pathname: `../${res.data.documentId}`,
|
2388
|
+
search: rawQuery
|
2389
|
+
},
|
2390
|
+
{ replace: true, relative: "path" }
|
2391
|
+
);
|
2392
|
+
} else if ("error" in res && isBaseQueryError(res.error) && res.error.name === "ValidationError") {
|
2393
|
+
setErrors(formatValidationErrors(res.error));
|
2394
|
+
}
|
2395
|
+
}
|
2396
|
+
} finally {
|
2397
|
+
setSubmitting(false);
|
2398
|
+
}
|
2399
|
+
}, [
|
2400
|
+
clone,
|
2401
|
+
cloneMatch?.params.origin,
|
2402
|
+
collectionType,
|
2403
|
+
create,
|
2404
|
+
document,
|
2405
|
+
documentId,
|
2406
|
+
formatMessage,
|
2407
|
+
formatValidationErrors,
|
2408
|
+
isCloning,
|
2409
|
+
model,
|
2410
|
+
modified,
|
2411
|
+
navigate,
|
2412
|
+
params,
|
2413
|
+
rawQuery,
|
2414
|
+
resetForm,
|
2415
|
+
setErrors,
|
2416
|
+
setSubmitting,
|
2417
|
+
toggleNotification,
|
2418
|
+
update,
|
2419
|
+
validate
|
2420
|
+
]);
|
2421
|
+
React__namespace.useEffect(() => {
|
2422
|
+
const handleKeyDown = (e) => {
|
2423
|
+
if (e.key === "Enter" && (e.metaKey || e.ctrlKey)) {
|
2424
|
+
e.preventDefault();
|
2425
|
+
handleUpdate();
|
2426
|
+
}
|
2427
|
+
};
|
2428
|
+
window.addEventListener("keydown", handleKeyDown);
|
2429
|
+
return () => {
|
2430
|
+
window.removeEventListener("keydown", handleKeyDown);
|
2431
|
+
};
|
2432
|
+
}, [handleUpdate]);
|
2289
2433
|
return {
|
2290
2434
|
/**
|
2291
2435
|
* Disabled when:
|
@@ -2298,84 +2442,11 @@ const UpdateAction = ({
|
|
2298
2442
|
id: "global.save",
|
2299
2443
|
defaultMessage: "Save"
|
2300
2444
|
}),
|
2301
|
-
onClick:
|
2302
|
-
setSubmitting(true);
|
2303
|
-
try {
|
2304
|
-
const { errors } = await validate(true, {
|
2305
|
-
status: "draft"
|
2306
|
-
});
|
2307
|
-
if (errors) {
|
2308
|
-
toggleNotification({
|
2309
|
-
type: "danger",
|
2310
|
-
message: formatMessage({
|
2311
|
-
id: "content-manager.validation.error",
|
2312
|
-
defaultMessage: "There are validation errors in your document. Please fix them before saving."
|
2313
|
-
})
|
2314
|
-
});
|
2315
|
-
return;
|
2316
|
-
}
|
2317
|
-
if (isCloning) {
|
2318
|
-
const res = await clone(
|
2319
|
-
{
|
2320
|
-
model,
|
2321
|
-
documentId: cloneMatch.params.origin,
|
2322
|
-
params
|
2323
|
-
},
|
2324
|
-
transformData(document)
|
2325
|
-
);
|
2326
|
-
if ("data" in res) {
|
2327
|
-
navigate(
|
2328
|
-
{
|
2329
|
-
pathname: `../${res.data.documentId}`,
|
2330
|
-
search: rawQuery
|
2331
|
-
},
|
2332
|
-
{ relative: "path" }
|
2333
|
-
);
|
2334
|
-
} else if ("error" in res && isBaseQueryError(res.error) && res.error.name === "ValidationError") {
|
2335
|
-
setErrors(formatValidationErrors(res.error));
|
2336
|
-
}
|
2337
|
-
} else if (documentId || collectionType === SINGLE_TYPES) {
|
2338
|
-
const res = await update(
|
2339
|
-
{
|
2340
|
-
collectionType,
|
2341
|
-
model,
|
2342
|
-
documentId,
|
2343
|
-
params
|
2344
|
-
},
|
2345
|
-
transformData(document)
|
2346
|
-
);
|
2347
|
-
if ("error" in res && isBaseQueryError(res.error) && res.error.name === "ValidationError") {
|
2348
|
-
setErrors(formatValidationErrors(res.error));
|
2349
|
-
} else {
|
2350
|
-
resetForm();
|
2351
|
-
}
|
2352
|
-
} else {
|
2353
|
-
const res = await create(
|
2354
|
-
{
|
2355
|
-
model,
|
2356
|
-
params
|
2357
|
-
},
|
2358
|
-
transformData(document)
|
2359
|
-
);
|
2360
|
-
if ("data" in res && collectionType !== SINGLE_TYPES) {
|
2361
|
-
navigate(
|
2362
|
-
{
|
2363
|
-
pathname: `../${res.data.documentId}`,
|
2364
|
-
search: rawQuery
|
2365
|
-
},
|
2366
|
-
{ replace: true, relative: "path" }
|
2367
|
-
);
|
2368
|
-
} else if ("error" in res && isBaseQueryError(res.error) && res.error.name === "ValidationError") {
|
2369
|
-
setErrors(formatValidationErrors(res.error));
|
2370
|
-
}
|
2371
|
-
}
|
2372
|
-
} finally {
|
2373
|
-
setSubmitting(false);
|
2374
|
-
}
|
2375
|
-
}
|
2445
|
+
onClick: handleUpdate
|
2376
2446
|
};
|
2377
2447
|
};
|
2378
2448
|
UpdateAction.type = "update";
|
2449
|
+
UpdateAction.position = "panel";
|
2379
2450
|
const UNPUBLISH_DRAFT_OPTIONS = {
|
2380
2451
|
KEEP: "keep",
|
2381
2452
|
DISCARD: "discard"
|
@@ -2498,6 +2569,7 @@ const UnpublishAction$1 = ({
|
|
2498
2569
|
};
|
2499
2570
|
};
|
2500
2571
|
UnpublishAction$1.type = "unpublish";
|
2572
|
+
UnpublishAction$1.position = "panel";
|
2501
2573
|
const DiscardAction = ({
|
2502
2574
|
activeTab,
|
2503
2575
|
documentId,
|
@@ -2548,6 +2620,7 @@ const DiscardAction = ({
|
|
2548
2620
|
};
|
2549
2621
|
};
|
2550
2622
|
DiscardAction.type = "discard";
|
2623
|
+
DiscardAction.position = "panel";
|
2551
2624
|
const DEFAULT_ACTIONS = [PublishAction$1, UpdateAction, UnpublishAction$1, DiscardAction];
|
2552
2625
|
const intervals = ["years", "months", "days", "hours", "minutes", "seconds"];
|
2553
2626
|
const RelativeTime = React__namespace.forwardRef(
|
@@ -2667,7 +2740,7 @@ const HeaderToolbar = () => {
|
|
2667
2740
|
meta: isCloning ? void 0 : meta,
|
2668
2741
|
collectionType
|
2669
2742
|
},
|
2670
|
-
descriptions: plugins["content-manager"].apis.getDocumentActions(),
|
2743
|
+
descriptions: plugins["content-manager"].apis.getDocumentActions("header"),
|
2671
2744
|
children: (actions2) => {
|
2672
2745
|
const headerActions = actions2.filter((action) => {
|
2673
2746
|
const positions = Array.isArray(action.position) ? action.position : [action.position];
|
@@ -2875,6 +2948,7 @@ const ConfigureTheViewAction = ({ collectionType, model }) => {
|
|
2875
2948
|
};
|
2876
2949
|
};
|
2877
2950
|
ConfigureTheViewAction.type = "configure-the-view";
|
2951
|
+
ConfigureTheViewAction.position = "header";
|
2878
2952
|
const EditTheModelAction = ({ model }) => {
|
2879
2953
|
const navigate = reactRouterDom.useNavigate();
|
2880
2954
|
const { formatMessage } = reactIntl.useIntl();
|
@@ -2891,6 +2965,7 @@ const EditTheModelAction = ({ model }) => {
|
|
2891
2965
|
};
|
2892
2966
|
};
|
2893
2967
|
EditTheModelAction.type = "edit-the-model";
|
2968
|
+
EditTheModelAction.position = "header";
|
2894
2969
|
const DeleteAction$1 = ({ documentId, model, collectionType, document }) => {
|
2895
2970
|
const navigate = reactRouterDom.useNavigate();
|
2896
2971
|
const { formatMessage } = reactIntl.useIntl();
|
@@ -2964,6 +3039,7 @@ const DeleteAction$1 = ({ documentId, model, collectionType, document }) => {
|
|
2964
3039
|
};
|
2965
3040
|
};
|
2966
3041
|
DeleteAction$1.type = "delete";
|
3042
|
+
DeleteAction$1.position = ["header", "table-row"];
|
2967
3043
|
const DEFAULT_HEADER_ACTIONS = [EditTheModelAction, ConfigureTheViewAction, DeleteAction$1];
|
2968
3044
|
const Panels = () => {
|
2969
3045
|
const isCloning = reactRouterDom.useMatch(CLONE_PATH) !== null;
|
@@ -3026,7 +3102,7 @@ const ActionsPanelContent = () => {
|
|
3026
3102
|
strapiAdmin.DescriptionComponentRenderer,
|
3027
3103
|
{
|
3028
3104
|
props,
|
3029
|
-
descriptions: plugins["content-manager"].apis.getDocumentActions(),
|
3105
|
+
descriptions: plugins["content-manager"].apis.getDocumentActions("panel"),
|
3030
3106
|
children: (actions2) => /* @__PURE__ */ jsxRuntime.jsx(DocumentActions, { actions: actions2 })
|
3031
3107
|
}
|
3032
3108
|
),
|
@@ -3480,8 +3556,7 @@ const PublishAction = ({ documents, model }) => {
|
|
3480
3556
|
const refetchList = () => {
|
3481
3557
|
contentManagerApi.util.invalidateTags([{ type: "Document", id: `${model}_LIST` }]);
|
3482
3558
|
};
|
3483
|
-
if (!showPublishButton)
|
3484
|
-
return null;
|
3559
|
+
if (!showPublishButton) return null;
|
3485
3560
|
return {
|
3486
3561
|
actionType: "publish",
|
3487
3562
|
variant: "tertiary",
|
@@ -3549,8 +3624,7 @@ const DeleteAction = ({ documents, model }) => {
|
|
3549
3624
|
selectRow([]);
|
3550
3625
|
}
|
3551
3626
|
};
|
3552
|
-
if (!hasDeletePermission)
|
3553
|
-
return null;
|
3627
|
+
if (!hasDeletePermission) return null;
|
3554
3628
|
return {
|
3555
3629
|
variant: "danger-light",
|
3556
3630
|
label: formatMessage({ id: "global.delete", defaultMessage: "Delete" }),
|
@@ -3599,8 +3673,7 @@ const UnpublishAction = ({ documents, model }) => {
|
|
3599
3673
|
}
|
3600
3674
|
};
|
3601
3675
|
const showUnpublishButton = hasDraftAndPublishEnabled && hasPublishPermission && documents.some((entry) => entry.status === "published" || entry.status === "modified");
|
3602
|
-
if (!showUnpublishButton)
|
3603
|
-
return null;
|
3676
|
+
if (!showUnpublishButton) return null;
|
3604
3677
|
return {
|
3605
3678
|
variant: "tertiary",
|
3606
3679
|
label: formatMessage({ id: "app.utils.unpublish", defaultMessage: "Unpublish" }),
|
@@ -3705,7 +3778,7 @@ const TableActions = ({ document }) => {
|
|
3705
3778
|
strapiAdmin.DescriptionComponentRenderer,
|
3706
3779
|
{
|
3707
3780
|
props,
|
3708
|
-
descriptions: plugins["content-manager"].apis.getDocumentActions().filter((action) => action.name !== "PublishAction"),
|
3781
|
+
descriptions: plugins["content-manager"].apis.getDocumentActions("table-row").filter((action) => action.name !== "PublishAction"),
|
3709
3782
|
children: (actions2) => {
|
3710
3783
|
const tableRowActions = actions2.filter((action) => {
|
3711
3784
|
const positions = Array.isArray(action.position) ? action.position : [action.position];
|
@@ -3764,6 +3837,7 @@ const EditAction = ({ documentId }) => {
|
|
3764
3837
|
};
|
3765
3838
|
};
|
3766
3839
|
EditAction.type = "edit";
|
3840
|
+
EditAction.position = "table-row";
|
3767
3841
|
const StyledPencil = styledComponents.styled(Icons.Pencil)`
|
3768
3842
|
path {
|
3769
3843
|
fill: currentColor;
|
@@ -3840,6 +3914,7 @@ const CloneAction = ({ model, documentId }) => {
|
|
3840
3914
|
};
|
3841
3915
|
};
|
3842
3916
|
CloneAction.type = "clone";
|
3917
|
+
CloneAction.position = "table-row";
|
3843
3918
|
const StyledDuplicate = styledComponents.styled(Icons.Duplicate)`
|
3844
3919
|
path {
|
3845
3920
|
fill: currentColor;
|
@@ -3926,7 +4001,14 @@ class ContentManagerPlugin {
|
|
3926
4001
|
addDocumentHeaderAction: this.addDocumentHeaderAction.bind(this),
|
3927
4002
|
addEditViewSidePanel: this.addEditViewSidePanel.bind(this),
|
3928
4003
|
getBulkActions: () => this.bulkActions,
|
3929
|
-
getDocumentActions: () =>
|
4004
|
+
getDocumentActions: (position) => {
|
4005
|
+
if (position) {
|
4006
|
+
return this.documentActions.filter(
|
4007
|
+
(action) => action.position == void 0 || [action.position].flat().includes(position)
|
4008
|
+
);
|
4009
|
+
}
|
4010
|
+
return this.documentActions;
|
4011
|
+
},
|
3930
4012
|
getEditViewSidePanels: () => this.editViewSidePanels,
|
3931
4013
|
getHeaderActions: () => this.headerActions
|
3932
4014
|
}
|
@@ -3936,10 +4018,8 @@ class ContentManagerPlugin {
|
|
3936
4018
|
const getPrintableType = (value) => {
|
3937
4019
|
const nativeType = typeof value;
|
3938
4020
|
if (nativeType === "object") {
|
3939
|
-
if (value === null)
|
3940
|
-
|
3941
|
-
if (Array.isArray(value))
|
3942
|
-
return "array";
|
4021
|
+
if (value === null) return "null";
|
4022
|
+
if (Array.isArray(value)) return "array";
|
3943
4023
|
if (value instanceof Object && value.constructor.name !== "Object") {
|
3944
4024
|
return value.constructor.name;
|
3945
4025
|
}
|
@@ -3992,6 +4072,7 @@ const HistoryAction = ({ model, document }) => {
|
|
3992
4072
|
};
|
3993
4073
|
};
|
3994
4074
|
HistoryAction.type = "history";
|
4075
|
+
HistoryAction.position = "header";
|
3995
4076
|
const historyAdmin = {
|
3996
4077
|
bootstrap(app) {
|
3997
4078
|
const { addDocumentAction } = app.getPlugin("content-manager").apis;
|
@@ -4054,11 +4135,18 @@ const previewApi = contentManagerApi.injectEndpoints({
|
|
4054
4135
|
})
|
4055
4136
|
});
|
4056
4137
|
const { useGetPreviewUrlQuery } = previewApi;
|
4138
|
+
const ConditionalTooltip = ({ isShown, label, children }) => {
|
4139
|
+
if (isShown) {
|
4140
|
+
return /* @__PURE__ */ jsxRuntime.jsx(designSystem.Tooltip, { label, children });
|
4141
|
+
}
|
4142
|
+
return children;
|
4143
|
+
};
|
4057
4144
|
const PreviewSidePanel = ({ model, documentId, document }) => {
|
4058
4145
|
const { formatMessage } = reactIntl.useIntl();
|
4059
4146
|
const { trackUsage } = strapiAdmin.useTracking();
|
4060
4147
|
const { pathname } = reactRouterDom.useLocation();
|
4061
4148
|
const [{ query }] = strapiAdmin.useQueryParams();
|
4149
|
+
const isModified = strapiAdmin.useForm("PreviewSidePanel", (state) => state.modified);
|
4062
4150
|
const { data, error } = useGetPreviewUrlQuery({
|
4063
4151
|
params: {
|
4064
4152
|
contentType: model
|
@@ -4078,28 +4166,37 @@ const PreviewSidePanel = ({ model, documentId, document }) => {
|
|
4078
4166
|
};
|
4079
4167
|
return {
|
4080
4168
|
title: formatMessage({ id: "content-manager.preview.panel.title", defaultMessage: "Preview" }),
|
4081
|
-
content: /* @__PURE__ */ jsxRuntime.jsx(
|
4082
|
-
|
4169
|
+
content: /* @__PURE__ */ jsxRuntime.jsx(
|
4170
|
+
ConditionalTooltip,
|
4083
4171
|
{
|
4084
|
-
|
4085
|
-
|
4086
|
-
|
4087
|
-
|
4088
|
-
|
4089
|
-
children:
|
4090
|
-
|
4091
|
-
|
4092
|
-
|
4172
|
+
label: formatMessage({
|
4173
|
+
id: "content-manager.preview.panel.button-disabled-tooltip",
|
4174
|
+
defaultMessage: "Please save to open the preview"
|
4175
|
+
}),
|
4176
|
+
isShown: isModified,
|
4177
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(designSystem.Box, { cursor: "not-allowed", width: "100%", children: /* @__PURE__ */ jsxRuntime.jsx(
|
4178
|
+
designSystem.Button,
|
4179
|
+
{
|
4180
|
+
variant: "tertiary",
|
4181
|
+
tag: reactRouterDom.Link,
|
4182
|
+
to: { pathname: "preview", search: qs.stringify(query, { encode: false }) },
|
4183
|
+
onClick: trackNavigation,
|
4184
|
+
width: "100%",
|
4185
|
+
disabled: isModified,
|
4186
|
+
pointerEvents: isModified ? "none" : void 0,
|
4187
|
+
tabIndex: isModified ? -1 : void 0,
|
4188
|
+
children: formatMessage({
|
4189
|
+
id: "content-manager.preview.panel.button",
|
4190
|
+
defaultMessage: "Open preview"
|
4191
|
+
})
|
4192
|
+
}
|
4193
|
+
) })
|
4093
4194
|
}
|
4094
|
-
)
|
4195
|
+
)
|
4095
4196
|
};
|
4096
4197
|
};
|
4097
|
-
const FEATURE_ID = "preview";
|
4098
4198
|
const previewAdmin = {
|
4099
4199
|
bootstrap(app) {
|
4100
|
-
if (!window.strapi.future.isEnabled(FEATURE_ID)) {
|
4101
|
-
return;
|
4102
|
-
}
|
4103
4200
|
const contentManagerPluginApis = app.getPlugin("content-manager").apis;
|
4104
4201
|
contentManagerPluginApis.addEditViewSidePanel([PreviewSidePanel]);
|
4105
4202
|
}
|
@@ -4123,7 +4220,7 @@ const index = {
|
|
4123
4220
|
app.router.addRoute({
|
4124
4221
|
path: "content-manager/*",
|
4125
4222
|
lazy: async () => {
|
4126
|
-
const { Layout } = await Promise.resolve().then(() => require("./layout-
|
4223
|
+
const { Layout } = await Promise.resolve().then(() => require("./layout-BW80JSCd.js"));
|
4127
4224
|
return {
|
4128
4225
|
Component: Layout
|
4129
4226
|
};
|
@@ -4143,7 +4240,7 @@ const index = {
|
|
4143
4240
|
async registerTrads({ locales }) {
|
4144
4241
|
const importedTrads = await Promise.all(
|
4145
4242
|
locales.map((locale) => {
|
4146
|
-
return __variableDynamicImportRuntimeHelper(/* @__PURE__ */ Object.assign({ "./translations/ar.json": () => Promise.resolve().then(() => require("./ar-BUUWXIYu.js")), "./translations/ca.json": () => Promise.resolve().then(() => require("./ca-Cmk45QO6.js")), "./translations/cs.json": () => Promise.resolve().then(() => require("./cs-CkJy6B2v.js")), "./translations/de.json": () => Promise.resolve().then(() => require("./de-CCEmbAah.js")), "./translations/en.json": () => Promise.resolve().then(() => require("./en-
|
4243
|
+
return __variableDynamicImportRuntimeHelper(/* @__PURE__ */ Object.assign({ "./translations/ar.json": () => Promise.resolve().then(() => require("./ar-BUUWXIYu.js")), "./translations/ca.json": () => Promise.resolve().then(() => require("./ca-Cmk45QO6.js")), "./translations/cs.json": () => Promise.resolve().then(() => require("./cs-CkJy6B2v.js")), "./translations/de.json": () => Promise.resolve().then(() => require("./de-CCEmbAah.js")), "./translations/en.json": () => Promise.resolve().then(() => require("./en-BzQmavmK.js")), "./translations/es.json": () => Promise.resolve().then(() => require("./es-9K52xZIr.js")), "./translations/eu.json": () => Promise.resolve().then(() => require("./eu-VDH-3ovk.js")), "./translations/fr.json": () => Promise.resolve().then(() => require("./fr-B2Kyv8Z9.js")), "./translations/gu.json": () => Promise.resolve().then(() => require("./gu-BRmF601H.js")), "./translations/hi.json": () => Promise.resolve().then(() => require("./hi-CCJBptSq.js")), "./translations/hu.json": () => Promise.resolve().then(() => require("./hu-sNV_yLYy.js")), "./translations/id.json": () => Promise.resolve().then(() => require("./id-B5Ser98A.js")), "./translations/it.json": () => Promise.resolve().then(() => require("./it-DkBIs7vD.js")), "./translations/ja.json": () => Promise.resolve().then(() => require("./ja-7sfIbjxE.js")), "./translations/ko.json": () => Promise.resolve().then(() => require("./ko-woFZPmLk.js")), "./translations/ml.json": () => Promise.resolve().then(() => require("./ml-C2W8N8k1.js")), "./translations/ms.json": () => Promise.resolve().then(() => require("./ms-BuFotyP_.js")), "./translations/nl.json": () => Promise.resolve().then(() => require("./nl-bbEOHChV.js")), "./translations/pl.json": () => Promise.resolve().then(() => require("./pl-uzwG-hk7.js")), "./translations/pt-BR.json": () => Promise.resolve().then(() => require("./pt-BR-BiOz37D9.js")), "./translations/pt.json": () => Promise.resolve().then(() => require("./pt-CeXQuq50.js")), "./translations/ru.json": () => Promise.resolve().then(() => require("./ru-BT3ybNny.js")), "./translations/sa.json": () => Promise.resolve().then(() => require("./sa-CcvkYInH.js")), "./translations/sk.json": () => Promise.resolve().then(() => require("./sk-CvY09Xjv.js")), "./translations/sv.json": () => Promise.resolve().then(() => require("./sv-MYDuzgvT.js")), "./translations/th.json": () => Promise.resolve().then(() => require("./th-D9_GfAjc.js")), "./translations/tr.json": () => Promise.resolve().then(() => require("./tr-D9UH-O_R.js")), "./translations/uk.json": () => Promise.resolve().then(() => require("./uk-C8EiqJY7.js")), "./translations/vi.json": () => Promise.resolve().then(() => require("./vi-CJlYDheJ.js")), "./translations/zh-Hans.json": () => Promise.resolve().then(() => require("./zh-Hans-9kOncHGw.js")), "./translations/zh.json": () => Promise.resolve().then(() => require("./zh-CQQfszqR.js")) }), `./translations/${locale}.json`, 3).then(({ default: data }) => {
|
4147
4244
|
return {
|
4148
4245
|
data: prefixPluginTranslations(data, PLUGIN_ID),
|
4149
4246
|
locale
|
@@ -4203,4 +4300,4 @@ exports.useGetContentTypeConfigurationQuery = useGetContentTypeConfigurationQuer
|
|
4203
4300
|
exports.useGetInitialDataQuery = useGetInitialDataQuery;
|
4204
4301
|
exports.useGetPreviewUrlQuery = useGetPreviewUrlQuery;
|
4205
4302
|
exports.useUpdateContentTypeConfigurationMutation = useUpdateContentTypeConfigurationMutation;
|
4206
|
-
//# sourceMappingURL=index-
|
4303
|
+
//# sourceMappingURL=index-Ca7YWlAA.js.map
|