@strapi/content-manager 5.0.0 → 5.0.2-beta.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/_chunks/{ComponentConfigurationPage-DfFSZQxe.mjs → ComponentConfigurationPage-BTKl8MfN.mjs} +3 -3
- package/dist/_chunks/{ComponentConfigurationPage-DfFSZQxe.mjs.map → ComponentConfigurationPage-BTKl8MfN.mjs.map} +1 -1
- package/dist/_chunks/{ComponentConfigurationPage-FqfsxQ1j.js → ComponentConfigurationPage-fkzXNK4D.js} +3 -3
- package/dist/_chunks/{ComponentConfigurationPage-FqfsxQ1j.js.map → ComponentConfigurationPage-fkzXNK4D.js.map} +1 -1
- package/dist/_chunks/{EditConfigurationPage-Cn0e8t3I.js → EditConfigurationPage-B0niBwBH.js} +3 -3
- package/dist/_chunks/{EditConfigurationPage-Cn0e8t3I.js.map → EditConfigurationPage-B0niBwBH.js.map} +1 -1
- package/dist/_chunks/{EditConfigurationPage-DdPNAbl3.mjs → EditConfigurationPage-n9ZG6sNR.mjs} +3 -3
- package/dist/_chunks/{EditConfigurationPage-DdPNAbl3.mjs.map → EditConfigurationPage-n9ZG6sNR.mjs.map} +1 -1
- package/dist/_chunks/{EditViewPage-DlxEHhUt.js → EditViewPage-C2CqLemB.js} +3 -3
- package/dist/_chunks/EditViewPage-C2CqLemB.js.map +1 -0
- package/dist/_chunks/{EditViewPage-B82x_x1b.mjs → EditViewPage-D7dC3a4m.mjs} +3 -3
- package/dist/_chunks/EditViewPage-D7dC3a4m.mjs.map +1 -0
- package/dist/_chunks/{Field-DufHXW17.mjs → Field-CkdBb2vz.mjs} +3 -3
- package/dist/_chunks/{Field-DufHXW17.mjs.map → Field-CkdBb2vz.mjs.map} +1 -1
- package/dist/_chunks/{Field-COL25JiC.js → Field-pyQYswH0.js} +3 -3
- package/dist/_chunks/{Field-COL25JiC.js.map → Field-pyQYswH0.js.map} +1 -1
- package/dist/_chunks/{Form-BssUwrTO.js → Form-EqGueEun.js} +2 -2
- package/dist/_chunks/{Form-BssUwrTO.js.map → Form-EqGueEun.js.map} +1 -1
- package/dist/_chunks/{Form-u_kAOhwB.mjs → Form-LjNm2Haf.mjs} +2 -2
- package/dist/_chunks/{Form-u_kAOhwB.mjs.map → Form-LjNm2Haf.mjs.map} +1 -1
- package/dist/_chunks/{History-C9t9UqpO.js → History-CDAPqxZq.js} +5 -5
- package/dist/_chunks/History-CDAPqxZq.js.map +1 -0
- package/dist/_chunks/{History-DRwA3oMM.mjs → History-CgQdxFAQ.mjs} +5 -5
- package/dist/_chunks/History-CgQdxFAQ.mjs.map +1 -0
- package/dist/_chunks/{ListConfigurationPage-BxfQJzPk.mjs → ListConfigurationPage-BDTfzFqb.mjs} +2 -2
- package/dist/_chunks/{ListConfigurationPage-BxfQJzPk.mjs.map → ListConfigurationPage-BDTfzFqb.mjs.map} +1 -1
- package/dist/_chunks/{ListConfigurationPage-BXYPohh-.js → ListConfigurationPage-DvXa6JgB.js} +2 -2
- package/dist/_chunks/{ListConfigurationPage-BXYPohh-.js.map → ListConfigurationPage-DvXa6JgB.js.map} +1 -1
- package/dist/_chunks/{ListViewPage-CELx2ysp.mjs → ListViewPage-7kfnXO7B.mjs} +15 -4
- package/dist/_chunks/{ListViewPage-CELx2ysp.mjs.map → ListViewPage-7kfnXO7B.mjs.map} +1 -1
- package/dist/_chunks/{ListViewPage-D2VD8Szg.js → ListViewPage-BKKv5nqq.js} +15 -4
- package/dist/_chunks/ListViewPage-BKKv5nqq.js.map +1 -0
- package/dist/_chunks/{NoContentTypePage-DtJ9jcfk.mjs → NoContentTypePage-Cr_T2WMx.mjs} +2 -2
- package/dist/_chunks/{NoContentTypePage-DtJ9jcfk.mjs.map → NoContentTypePage-Cr_T2WMx.mjs.map} +1 -1
- package/dist/_chunks/{NoContentTypePage-BV9IjJSM.js → NoContentTypePage-DwqblrUj.js} +2 -2
- package/dist/_chunks/{NoContentTypePage-BV9IjJSM.js.map → NoContentTypePage-DwqblrUj.js.map} +1 -1
- package/dist/_chunks/{NoPermissionsPage-DWleVYK7.mjs → NoPermissionsPage-BG4mb2u5.mjs} +2 -2
- package/dist/_chunks/{NoPermissionsPage-DWleVYK7.mjs.map → NoPermissionsPage-BG4mb2u5.mjs.map} +1 -1
- package/dist/_chunks/{NoPermissionsPage-Dp8NpF9I.js → NoPermissionsPage-CPgv_JPA.js} +2 -2
- package/dist/_chunks/{NoPermissionsPage-Dp8NpF9I.js.map → NoPermissionsPage-CPgv_JPA.js.map} +1 -1
- package/dist/_chunks/{Relations-DR7EUgyC.js → Relations-BAt1MkgZ.js} +40 -16
- package/dist/_chunks/Relations-BAt1MkgZ.js.map +1 -0
- package/dist/_chunks/{Relations-BTcf5xaw.mjs → Relations-DENILBUB.mjs} +41 -17
- package/dist/_chunks/Relations-DENILBUB.mjs.map +1 -0
- package/dist/_chunks/{index-BdMf2lfT.js → index-DQcL7aOp.js} +42 -16
- package/dist/_chunks/index-DQcL7aOp.js.map +1 -0
- package/dist/_chunks/{index-wnqzm4Q8.mjs → index-D_yVHHl5.mjs} +41 -16
- package/dist/_chunks/index-D_yVHHl5.mjs.map +1 -0
- package/dist/_chunks/{layout-2CfjL0T9.mjs → layout-DMyFsGdI.mjs} +3 -3
- package/dist/_chunks/{layout-2CfjL0T9.mjs.map → layout-DMyFsGdI.mjs.map} +1 -1
- package/dist/_chunks/{layout-B2MyZU-_.js → layout-DPnJ4Hsy.js} +3 -3
- package/dist/_chunks/{layout-B2MyZU-_.js.map → layout-DPnJ4Hsy.js.map} +1 -1
- package/dist/_chunks/{relations-C0w0GcXi.mjs → relations-B1kXf0He.mjs} +3 -7
- package/dist/_chunks/relations-B1kXf0He.mjs.map +1 -0
- package/dist/_chunks/{relations-BH7JJGGe.js → relations-zt3eHntv.js} +3 -7
- package/dist/_chunks/relations-zt3eHntv.js.map +1 -0
- package/dist/admin/index.js +1 -1
- package/dist/admin/index.mjs +1 -1
- package/dist/admin/src/preview/constants.d.ts +1 -0
- package/dist/admin/src/preview/index.d.ts +4 -0
- package/dist/server/index.js +55 -16
- package/dist/server/index.js.map +1 -1
- package/dist/server/index.mjs +55 -16
- package/dist/server/index.mjs.map +1 -1
- package/dist/server/src/bootstrap.d.ts.map +1 -1
- package/dist/server/src/controllers/relations.d.ts.map +1 -1
- package/dist/server/src/controllers/utils/metadata.d.ts +15 -1
- package/dist/server/src/controllers/utils/metadata.d.ts.map +1 -1
- package/dist/server/src/index.d.ts +4 -4
- package/dist/server/src/preview/constants.d.ts +2 -0
- package/dist/server/src/preview/constants.d.ts.map +1 -0
- package/dist/server/src/preview/index.d.ts +4 -0
- package/dist/server/src/preview/index.d.ts.map +1 -0
- package/dist/server/src/services/document-metadata.d.ts +8 -8
- package/dist/server/src/services/document-metadata.d.ts.map +1 -1
- package/dist/server/src/services/index.d.ts +4 -4
- 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/utils/index.d.ts +2 -0
- package/dist/server/src/utils/index.d.ts.map +1 -1
- package/package.json +6 -6
- package/dist/_chunks/EditViewPage-B82x_x1b.mjs.map +0 -1
- package/dist/_chunks/EditViewPage-DlxEHhUt.js.map +0 -1
- package/dist/_chunks/History-C9t9UqpO.js.map +0 -1
- package/dist/_chunks/History-DRwA3oMM.mjs.map +0 -1
- package/dist/_chunks/ListViewPage-D2VD8Szg.js.map +0 -1
- package/dist/_chunks/Relations-BTcf5xaw.mjs.map +0 -1
- package/dist/_chunks/Relations-DR7EUgyC.js.map +0 -1
- package/dist/_chunks/index-BdMf2lfT.js.map +0 -1
- package/dist/_chunks/index-wnqzm4Q8.mjs.map +0 -1
- package/dist/_chunks/relations-BH7JJGGe.js.map +0 -1
- package/dist/_chunks/relations-C0w0GcXi.mjs.map +0 -1
package/dist/server/index.mjs
CHANGED
@@ -669,7 +669,7 @@ const historyVersion = {
|
|
669
669
|
}
|
670
670
|
}
|
671
671
|
};
|
672
|
-
const getFeature = () => {
|
672
|
+
const getFeature$1 = () => {
|
673
673
|
if (strapi.ee.features.isEnabled("cms-content-history")) {
|
674
674
|
return {
|
675
675
|
register({ strapi: strapi2 }) {
|
@@ -692,7 +692,7 @@ const getFeature = () => {
|
|
692
692
|
}
|
693
693
|
};
|
694
694
|
};
|
695
|
-
const history = getFeature();
|
695
|
+
const history = getFeature$1();
|
696
696
|
const register = async ({ strapi: strapi2 }) => {
|
697
697
|
await history.register?.({ strapi: strapi2 });
|
698
698
|
};
|
@@ -700,6 +700,18 @@ const ALLOWED_WEBHOOK_EVENTS = {
|
|
700
700
|
ENTRY_PUBLISH: "entry.publish",
|
701
701
|
ENTRY_UNPUBLISH: "entry.unpublish"
|
702
702
|
};
|
703
|
+
const FEATURE_ID = "preview";
|
704
|
+
const getFeature = () => {
|
705
|
+
if (!strapi.features.future.isEnabled(FEATURE_ID)) {
|
706
|
+
return {};
|
707
|
+
}
|
708
|
+
return {
|
709
|
+
bootstrap() {
|
710
|
+
console.log("Bootstrapping preview server");
|
711
|
+
}
|
712
|
+
};
|
713
|
+
};
|
714
|
+
const preview = getFeature();
|
703
715
|
const bootstrap = async () => {
|
704
716
|
Object.entries(ALLOWED_WEBHOOK_EVENTS).forEach(([key, value]) => {
|
705
717
|
strapi.get("webhookStore").addAllowedEvent(key, value);
|
@@ -709,6 +721,7 @@ const bootstrap = async () => {
|
|
709
721
|
await getService$1("content-types").syncConfigurations();
|
710
722
|
await getService$1("permission").registerPermissions();
|
711
723
|
await history.bootstrap?.({ strapi });
|
724
|
+
await preview.bootstrap?.({ strapi });
|
712
725
|
};
|
713
726
|
const destroy = async ({ strapi: strapi2 }) => {
|
714
727
|
await history.destroy?.({ strapi: strapi2 });
|
@@ -2338,15 +2351,27 @@ const sanitizeMainField = (model, mainField, userAbility) => {
|
|
2338
2351
|
}
|
2339
2352
|
return mainField;
|
2340
2353
|
};
|
2341
|
-
const addStatusToRelations = async (
|
2342
|
-
if (!contentTypes$1.hasDraftAndPublish(strapi.
|
2354
|
+
const addStatusToRelations = async (targetUid, relations2) => {
|
2355
|
+
if (!contentTypes$1.hasDraftAndPublish(strapi.getModel(targetUid))) {
|
2343
2356
|
return relations2;
|
2344
2357
|
}
|
2345
2358
|
const documentMetadata2 = getService$1("document-metadata");
|
2346
|
-
|
2359
|
+
if (!relations2.length) {
|
2360
|
+
return relations2;
|
2361
|
+
}
|
2362
|
+
const firstRelation = relations2[0];
|
2363
|
+
const filters = {
|
2364
|
+
documentId: { $in: relations2.map((r) => r.documentId) },
|
2365
|
+
// NOTE: find the "opposite" status
|
2366
|
+
publishedAt: firstRelation.publishedAt !== null ? { $null: true } : { $notNull: true }
|
2367
|
+
};
|
2368
|
+
const availableStatus = await strapi.query(targetUid).findMany({
|
2369
|
+
select: ["id", "documentId", "locale", "updatedAt", "createdAt", "publishedAt"],
|
2370
|
+
filters
|
2371
|
+
});
|
2347
2372
|
return relations2.map((relation) => {
|
2348
|
-
const availableStatuses =
|
2349
|
-
(availableDocument) => availableDocument.documentId === relation.documentId
|
2373
|
+
const availableStatuses = availableStatus.filter(
|
2374
|
+
(availableDocument) => availableDocument.documentId === relation.documentId && (relation.locale ? availableDocument.locale === relation.locale : true)
|
2350
2375
|
);
|
2351
2376
|
return {
|
2352
2377
|
...relation,
|
@@ -2575,21 +2600,33 @@ const relations = {
|
|
2575
2600
|
attribute,
|
2576
2601
|
targetField,
|
2577
2602
|
fieldsToSelect,
|
2578
|
-
|
2579
|
-
|
2580
|
-
}
|
2581
|
-
target: {
|
2582
|
-
schema: { uid: targetUid }
|
2583
|
-
}
|
2603
|
+
status,
|
2604
|
+
source: { schema: sourceSchema },
|
2605
|
+
target: { schema: targetSchema }
|
2584
2606
|
} = await this.extractAndValidateRequestInfo(ctx, id);
|
2607
|
+
const { uid: sourceUid } = sourceSchema;
|
2608
|
+
const { uid: targetUid } = targetSchema;
|
2585
2609
|
const permissionQuery = await getService$1("permission-checker").create({ userAbility, model: targetUid }).sanitizedQuery.read({ fields: fieldsToSelect });
|
2586
2610
|
const dbQuery = strapi.db.query(sourceUid);
|
2587
2611
|
const loadRelations = relations$1.isAnyToMany(attribute) ? (...args) => dbQuery.loadPages(...args) : (...args) => dbQuery.load(...args).then((res2) => ({ results: res2 ? [res2] : [] }));
|
2612
|
+
const filters = {};
|
2613
|
+
if (sourceSchema?.options?.draftAndPublish) {
|
2614
|
+
if (targetSchema?.options?.draftAndPublish) {
|
2615
|
+
if (status === "published") {
|
2616
|
+
filters.publishedAt = { $notNull: true };
|
2617
|
+
} else {
|
2618
|
+
filters.publishedAt = { $null: true };
|
2619
|
+
}
|
2620
|
+
}
|
2621
|
+
} else if (targetSchema?.options?.draftAndPublish) {
|
2622
|
+
filters.publishedAt = { $null: true };
|
2623
|
+
}
|
2588
2624
|
const res = await loadRelations({ id: entryId }, targetField, {
|
2589
|
-
select: ["id", "documentId", "locale", "publishedAt"],
|
2625
|
+
select: ["id", "documentId", "locale", "publishedAt", "updatedAt"],
|
2590
2626
|
ordering: "desc",
|
2591
2627
|
page: ctx.request.query.page,
|
2592
|
-
pageSize: ctx.request.query.pageSize
|
2628
|
+
pageSize: ctx.request.query.pageSize,
|
2629
|
+
filters
|
2593
2630
|
});
|
2594
2631
|
const loadedIds = res.results.map((item) => item.id);
|
2595
2632
|
addFiltersClause(permissionQuery, { id: { $in: loadedIds } });
|
@@ -4053,7 +4090,9 @@ const documentMetadata = ({ strapi: strapi2 }) => ({
|
|
4053
4090
|
*/
|
4054
4091
|
async getAvailableLocales(uid2, version, allVersions, validatableFields = []) {
|
4055
4092
|
const versionsByLocale = groupBy("locale", allVersions);
|
4056
|
-
|
4093
|
+
if (version.locale) {
|
4094
|
+
delete versionsByLocale[version.locale];
|
4095
|
+
}
|
4057
4096
|
const model = strapi2.getModel(uid2);
|
4058
4097
|
const keysToKeep = [...AVAILABLE_LOCALES_FIELDS, ...validatableFields];
|
4059
4098
|
const traversalFunction = async (localeVersion) => traverseEntity(
|