diff --git a/packages/strapi-plugin-content-type-builder/controllers/Components.js b/packages/strapi-plugin-content-type-builder/controllers/Components.js index 170e37d856..84064dc3c3 100644 --- a/packages/strapi-plugin-content-type-builder/controllers/Components.js +++ b/packages/strapi-plugin-content-type-builder/controllers/Components.js @@ -73,13 +73,13 @@ module.exports = { ctx.createComponent(compoToCreate); } - // const nestedComponentsToEdit = body.components.filter( - // compo => !_.has(compo, 'uid') - // ); + const nestedComponentsToEdit = body.components.filter( + compo => !_.has(compo, 'uid') + ); - // nestedComponentsToEdit.forEach(compo => { - // ctx.editComponent(compo.uid, compo); - // }); + for (let compoToEdit of nestedComponentsToEdit) { + ctx.editComponent(compoToEdit); + } return component; }) diff --git a/packages/strapi-plugin-content-type-builder/services/schema-manager/index.js b/packages/strapi-plugin-content-type-builder/services/schema-manager/index.js index d9400c0bfa..1f22eef949 100644 --- a/packages/strapi-plugin-content-type-builder/services/schema-manager/index.js +++ b/packages/strapi-plugin-content-type-builder/services/schema-manager/index.js @@ -165,6 +165,15 @@ const createTransaction = ({ components, contentTypes }) => { return handler; }, + /** + * create a component in the tmpComponent map + */ + editComponent(infos) { + const { uid } = infos; + + return tmpComponents.get(uid); + }, + flush() { return Promise.all( [