strapi/api-tests/core/content-manager/api/relations-cross-entity-ordering.test.api.js

243 lines
6.1 KiB
JavaScript
Raw Normal View History

'use strict';
const { createTestBuilder } = require('api-tests/builder');
const { createStrapiInstance } = require('api-tests/strapi');
const { createAuthRequest } = require('api-tests/request');
const modelsUtils = require('api-tests/models');
let strapi;
let rq;
const data = {
products: [],
shops: [],
};
let id1;
let id2;
let id3;
const populateShop = [
'products_ow',
'products_oo',
'products_mo',
'products_om',
'products_mm',
'products_mw',
'myCompo.compo_products_ow',
'myCompo.compo_products_mw',
];
const compo = (withRelations = false) => ({
displayName: 'compo',
category: 'default',
attributes: {
name: {
type: 'string',
},
...(!withRelations
? {}
: {
compo_products_ow: {
type: 'relation',
relation: 'oneToOne',
target: 'api::product.product',
},
compo_products_mw: {
type: 'relation',
relation: 'oneToMany',
target: 'api::product.product',
},
}),
},
});
const productModel = {
attributes: {
name: {
type: 'string',
},
},
displayName: 'Product',
singularName: 'product',
pluralName: 'products',
description: '',
collectionName: '',
};
const shopModel = {
attributes: {
name: {
type: 'string',
},
products_ow: {
type: 'relation',
relation: 'oneToOne',
target: 'api::product.product',
},
products_oo: {
type: 'relation',
relation: 'oneToOne',
target: 'api::product.product',
targetAttribute: 'shop',
},
products_mo: {
type: 'relation',
relation: 'manyToOne',
target: 'api::product.product',
targetAttribute: 'shops_mo',
},
products_om: {
type: 'relation',
relation: 'oneToMany',
target: 'api::product.product',
targetAttribute: 'shop_om',
},
products_mm: {
type: 'relation',
relation: 'manyToMany',
target: 'api::product.product',
targetAttribute: 'shops',
},
products_mw: {
type: 'relation',
relation: 'oneToMany',
target: 'api::product.product',
},
myCompo: {
type: 'component',
repeatable: false,
component: 'default.compo',
},
},
displayName: 'Shop',
singularName: 'shop',
pluralName: 'shops',
};
const createEntry = async (singularName, data, populate) => {
const { body } = await rq({
method: 'POST',
url: `/content-manager/collection-types/api::${singularName}.${singularName}`,
body: data,
qs: { populate },
});
return body;
};
const updateEntry = async (singularName, id, data, populate) => {
const { body } = await rq({
method: 'PUT',
url: `/content-manager/collection-types/api::${singularName}.${singularName}/${id}`,
body: data,
qs: { populate },
});
return body;
};
const cloneEntry = async (singularName, id, data, populate) => {
const { body } = await rq({
method: 'POST',
url: `/content-manager/collection-types/api::${singularName}.${singularName}/clone/${id}`,
body: data,
qs: { populate },
});
return body;
};
const getRelations = async (uid, field, id) => {
const res = await rq({
method: 'GET',
url: `/content-manager/relations/${uid}/${id}/${field}`,
});
return res.body;
};
// TODO: Fix relations
describe.skip('Relations', () => {
const builder = createTestBuilder();
beforeAll(async () => {
await builder.addComponent(compo(false)).addContentTypes([productModel, shopModel]).build();
await modelsUtils.modifyComponent(compo(true));
strapi = await createStrapiInstance();
rq = await createAuthRequest({ strapi });
const createdProduct1 = await createEntry('product', { name: 'Skate' });
const createdProduct2 = await createEntry('product', { name: 'Candle' });
const createdProduct3 = await createEntry('product', { name: 'Mug' });
data.products.push(createdProduct1);
data.products.push(createdProduct2);
data.products.push(createdProduct3);
feat(document-service): document id to id (#19573) * feat: return metadata on content manager endpoints (#19361) * feat: return metadata on content manager endpoints * feat: return meta * fix: cm tests * feat: fix cm metadata api tests (#19375) * feat: return metadata on content manager endpoints * feat: return meta * fix: cm tests * fix: admin test * chore(cm): refactor CM (#19341) * chore(cm): refactor EditView comes with a host of new re-usable APIs! * feat(cm): add useDocument hook * feat(cm): add useDocumentOperations hook * feat(cm): initialise EditView header * feat(cm): add useDocumentLayout hook * fix: listView from layout refactor * chore(cm): refactor editview form input renderer * chore: fix lint & ts * fix: re-add custom fields * test: fix admin/CM unit tests * docs(cm): add docs at a high level of how the CM works * test: add useDocumentRBAC tests * chore: pr amends * feat: add addEditViewSidePanel API to strapi (#19398) * feat: add addEditViewSidePanel API to strapi fix: don't pass all the query params to the create route * chore: pr amends * fix: return available status when content type doesnt have i18n enabled (#19419) * fix: return available status when content type doesnt have i18n enabled * chore: remove comment * fix(cm): list view & build process * feat: save and publish * feat: update contract * feat: dp tests * chore: use document from create and update * feat: save and publish single types * feat: return metadata on content manager endpoints (#19361) * feat: return metadata on content manager endpoints * feat: return meta * fix: cm tests * feat: fix cm metadata api tests (#19375) * feat: return metadata on content manager endpoints * feat: return meta * fix: cm tests * fix: admin test * chore(cm): refactor CM (#19341) * chore(cm): refactor EditView comes with a host of new re-usable APIs! * feat(cm): add useDocument hook * feat(cm): add useDocumentOperations hook * feat(cm): initialise EditView header * feat(cm): add useDocumentLayout hook * fix: listView from layout refactor * chore(cm): refactor editview form input renderer * chore: fix lint & ts * fix: re-add custom fields * test: fix admin/CM unit tests * docs(cm): add docs at a high level of how the CM works * test: add useDocumentRBAC tests * chore: pr amends * feat: add addEditViewSidePanel API to strapi (#19398) * feat: add addEditViewSidePanel API to strapi fix: don't pass all the query params to the create route * chore: pr amends * fix: return available status when content type doesnt have i18n enabled (#19419) * fix: return available status when content type doesnt have i18n enabled * chore: remove comment * fix(cm): list view & build process * feat: add publish & update action (#19423) * feat: return metadata on content manager endpoints (#19361) * feat: return metadata on content manager endpoints * feat: return meta * fix: cm tests * feat: fix cm metadata api tests (#19375) * feat: return metadata on content manager endpoints * feat: return meta * fix: cm tests * fix: admin test * chore(cm): refactor CM (#19341) * chore(cm): refactor EditView comes with a host of new re-usable APIs! * feat(cm): add useDocument hook * feat(cm): add useDocumentOperations hook * feat(cm): initialise EditView header * feat(cm): add useDocumentLayout hook * fix: listView from layout refactor * chore(cm): refactor editview form input renderer * chore: fix lint & ts * fix: re-add custom fields * test: fix admin/CM unit tests * docs(cm): add docs at a high level of how the CM works * test: add useDocumentRBAC tests * chore: pr amends * feat: add addEditViewSidePanel API to strapi (#19398) * feat: add addEditViewSidePanel API to strapi fix: don't pass all the query params to the create route * chore: pr amends * fix: return available status when content type doesnt have i18n enabled (#19419) * fix: return available status when content type doesnt have i18n enabled * chore: remove comment * feat: add publish & update action * feat: add published disabled state * test: fix suite * test: add unit for Panels * fix(cm): status not state for redirect * fix(cm): list view status & component main field property * chore: pr feedback * chore: apply suggestions Co-authored-by: markkaylor <mark.kaylor@strapi.io> --------- Co-authored-by: Marc Roig <marc12info@gmail.com> Co-authored-by: markkaylor <mark.kaylor@strapi.io> * feat: test single types * feat: wrap single type publish into a transaction * feat(cm): add unpublish & delete actions, also re-enable single-types (#19459) * fix: delete url was wrong way round * feat: compute modified status * fix(cm): reimplement ListSettingsView (#19432) * chore: PR feedback * feat: discard endpoint * feat: discard draft api tests * feat: unpublish and discard * chore: pr comments * chore: update sanitizer * feat(cm): add publish and save (#19500) * feat(cm): add publish and save * test(cm): fix unit for useDocumentActions * Update packages/core/content-manager/server/src/controllers/collection-types.ts Co-authored-by: Jamie Howard <48524071+jhoward1994@users.noreply.github.com> * Update packages/core/content-manager/shared/contracts/single-types-v5.ts Co-authored-by: Jamie Howard <48524071+jhoward1994@users.noreply.github.com> * feat(document-service): map document ID to entry ID (#19248) * feat: use document service in content manager * feat: update contracts with meta information * chore: group metadata types into a single type * feat: metadata information in single types * chore: change meta contract to return documents instead of strings * fix: remove unused type * fix: ignore doc id if entry is null * fix: update contract metadata * feat: document metadata service * feat: locale and status filtering * chore: add comment * chore: refactor metadata service * chore: refactor entity manager exists to handle single types * feat: refactor single type controllers to use documents * feat: get locale param from in cm endpoints * Revert "feat: get locale param from in cm endpoints" This reverts commit 856c38588b8f8521cadd85c8c933f42a36a2178a. * feat: get locale param from cm endpoints * Update packages/plugins/i18n/server/src/controllers/validate-locale-creation.ts Co-authored-by: Ben Irvin <ben@innerdvations.com> * fix: entity manager unit tests * chore: unit test document metadata * feat: prevent empty string locale filtering * fix: cm contract import * chore: test new d&p cm features * fix: search content manager api test * fix: cm tests * fix: cm tests * fix: cm tests * fix(content-manager): access to non default locale documents (#19190) * fix(content-manager): access to non default locale documents * chore(content-manager): revert route construction * fix(content-manager): api tests for number of draft relations * test(content-manager): counting number of draft relations for non default locales * chore(content-manager): remove default locale from entity manager countDraftRelations * chore: basic relations testing for document service * chore(e2e): disable edit view tests (#19235) * feat: get relation ids * chore: clean functions into other folders * chore: rename files * fix: group document ids by its uid * feat: id mapper * chore: improve typings * chore: rename transform functions * fix: id-transform tests * chore: simplify function return value * chore: improve comments * fix: api tests * fix: single types unit test * fix: skip relations test * fix: exclude fields * fix: short hand ifs * fix: merge conflict * fix: transform output of find one * Update packages/core/core/src/services/document-service/transform/utils.ts Co-authored-by: Ben Irvin <ben.irvin@strapi.io> * feat[Document Service]: Param transformation (#19373) * fix(core): wip param transformation * feat(core): wip param transformation based on relational status * feat(core): wip populate and filter transformation based on relational status * chore(core): simplify fields and sort * chore(core): clean up * feat(core): wip filter transformation with traverseQueryFilters * feat(core): reorganise and PR feedback * fix(core): filters traversal logic * feat(core): populate relational transformations * chore(core): reintroduce populate transformation * fix(core): enforce that fields must include id * fix(core): enforce that fields must include id * fix(core): filter and sort transformation * chore(core): typos * chore(core): further filters test cases * feat(core): support object based sorts * chore(core): fields test naming * feat(core): handle logical operators in filters * fix: skip conditions test * fix(core): switchIdForDocumentId (#19497) * fix: uniqueness test * fix: available status should be an array * fix: available statuses * fix: skip uniqueness folder * fix: skip uniqueness test errors * fix: skip failing test --------- Co-authored-by: Ben Irvin <ben@innerdvations.com> Co-authored-by: Jamie Howard <48524071+jhoward1994@users.noreply.github.com> Co-authored-by: Josh <37798644+joshuaellis@users.noreply.github.com> Co-authored-by: Jamie Howard <jamie.howard@strapi.io> Co-authored-by: Ben Irvin <ben.irvin@strapi.io> * chore: re-implement edit configuration (#19488) * chore: re-implement edit configuration * chore: cleanups * test: fix unit tests * feat(cm): add discard changes action (#19509) * feat(cm): add discard changes action * feat(cm): add discard when unpublishing * test(e2e): fix editview e2e * test(e2e): fix uniqueness partially * test(unit): fix unit tests for actions & add for discard * chore: bump playwright * fix(webkit): add shim for requestIdCallback * chore: pr amends * feat: return status on available locales * feat: add document-actions to list-view (#19523) * fix(cm): add gap and alignment for edit-view heading with super long names * fix(cm): list view status' * feat: add list-view actions * fix: conditions for actions to be enabled * fix: stay on draft tab when published * fix: stop propogation on list-view row click * test(e2e): fix editview tests * chore: update spelling error Co-authored-by: Jamie Howard <48524071+jhoward1994@users.noreply.github.com> --------- Co-authored-by: Jamie Howard <48524071+jhoward1994@users.noreply.github.com> * feat: test document metadata * chore: remove unnecessary unit test * fix: return modified on published documents * chore: init split single-type collection-type in document service * Fix/fields test case (#19481) * Update packages/core/content-manager/server/src/services/document-metadata.ts Co-authored-by: Jamie Howard <48524071+jhoward1994@users.noreply.github.com> * fix: pretty * chore: refactor middlewares * feat: send empty object if locale does not exist on document * feat: single types * chore: add tests to middlewares * feat: update locale using query params (#19546) * feat: return available locales when not finding locale * chore: update typings * feat: add clone action (#19526) * feat: add clone action * test(e2e): add auto clone tests * chore: pr amends * feat: add information to header actions menu (#19548) * feat: add information to header actions menu * fix: dont use non-null-assertion * feat: manage relations on publish (#19427) --------- Co-authored-by: Ben Irvin <ben@innerdvations.com> Co-authored-by: Jamie Howard <48524071+jhoward1994@users.noreply.github.com> Co-authored-by: Josh <37798644+joshuaellis@users.noreply.github.com> Co-authored-by: Jamie Howard <jamie.howard@strapi.io> * feat: v5 i18n relations (#19504) Co-authored-by: Ben Irvin <ben@innerdvations.com> Co-authored-by: Jamie Howard <48524071+jhoward1994@users.noreply.github.com> Co-authored-by: Josh <37798644+joshuaellis@users.noreply.github.com> Co-authored-by: Jamie Howard <jamie.howard@strapi.io> * fix: locale test api * feat: undo document id to id switch * feat: make documentId preceed id when connecting relations * fix: return documentId in clone method * fix: document service api tests * chore: start content-api v5 migration * chore: implement entire content-api without d&p endpoints * chore: refactor i18n (#19555) * chore: remove types package, should be using strapi * chore: refactor i18n settings page * feat: add i18n to CM * feat(i18n): add delete locale action (#19562) * chore: pr amends Co-authored-by: Simone <startae14@gmail.com> --------- Co-authored-by: Simone <startae14@gmail.com> * chore: add withCount & loosen the typings for now * fix: adapt content manager to use new doc service api (#19584) * fix: adapt content manager to use new doc service api * fix: fix cm setting ids * chore: pr suggestions * chore: remove console.log * chore: fix unit tests * enhancement: use defaultLocale on delete/publish/unpublish/discardDra… (#19583) * enhancement: use defaultLocale on delete/publish/unpublish/discardDraft by default, add * for all * fix: delete all locales if locale is undefined when deleting --------- Co-authored-by: Marc-Roig <marc12info@gmail.com> * feat(cm): re-implement validation (#19578) * feat: re-implement validation in the CM feat: add blocker feat: handle validation errors from the API chore: reimplement useFieldHint test(unit): fix fe tests chore: fix bad logical operator * chore: await notifications to leave before trying to go to other pages * fix: validation issues & blocker showing up incorrectly * fix: broken publish behaviour * fix(content-manager): uid availability and generation (#19518) * fix(content-manager): uid availability and generation * fix(content-manager): pass locale as is from UID service * fix(content-manager): match UIDs based on startsWith * fix: ts error * feat: default document service factory (#19592) * feat: default ds factory * fix: use uid and not content type in repository * Merge branch 'v5/main' into v5/id-to-documentId * fix: udpate document id references in content manager * chore: use root document service on content manager endpoints * feat: move single type logic into core api * fix: unit tests * fix: content-api tests * fix: remove doc service repository from documents * fix: upload file tests * fix: api tests * fix: remove id mapping on content manager * fix: send documentId and nod id on collection types * chore(content-manager): use documentId over id (#19618) * chore: use doucmentId over id * docs: update contributor documentation * test: update snapshots & msw return values * chore: fix ts * chore: make bulk actions documentIds argument the same time for consistency Co-Authored-By: Jamie Howard <48524071+jhoward1994@users.noreply.github.com> --------- Co-authored-by: Jamie Howard <48524071+jhoward1994@users.noreply.github.com> * fix: cm api tests * fix: remove type * fix: remove unused param --------- Co-authored-by: Josh <37798644+joshuaellis@users.noreply.github.com> Co-authored-by: Jamie Howard <jamie.howard@strapi.io>
2024-02-28 14:15:24 +01:00
id1 = data.products[0].documentId;
id2 = data.products[1].documentId;
id3 = data.products[2].documentId;
});
afterAll(async () => {
await strapi.destroy();
await builder.cleanup();
});
describe('Update entity relations does not break other relations', () => {
test('Update and disconnect relation does not break other relations', async () => {
// Create 2 entries connected to the same relations
const shops = [];
for (let i = 0; i < 2; i++) {
const createdShop = await createEntry(
'shop',
{
name: 'Cazotte Shop',
products_ow: { connect: [id1] },
products_oo: { connect: [id1] },
products_mo: { connect: [id1] },
products_om: { connect: [id1, id2] },
products_mm: { connect: [id1, id2] },
products_mw: { connect: [id1, id2] },
myCompo: {
compo_products_ow: { connect: [id1] },
compo_products_mw: { connect: [id1, id2] },
},
},
['myCompo']
);
shops.push(createdShop);
}
// Update shop 1 relation order
await updateEntry(
'shop',
feat(document-service): document id to id (#19573) * feat: return metadata on content manager endpoints (#19361) * feat: return metadata on content manager endpoints * feat: return meta * fix: cm tests * feat: fix cm metadata api tests (#19375) * feat: return metadata on content manager endpoints * feat: return meta * fix: cm tests * fix: admin test * chore(cm): refactor CM (#19341) * chore(cm): refactor EditView comes with a host of new re-usable APIs! * feat(cm): add useDocument hook * feat(cm): add useDocumentOperations hook * feat(cm): initialise EditView header * feat(cm): add useDocumentLayout hook * fix: listView from layout refactor * chore(cm): refactor editview form input renderer * chore: fix lint & ts * fix: re-add custom fields * test: fix admin/CM unit tests * docs(cm): add docs at a high level of how the CM works * test: add useDocumentRBAC tests * chore: pr amends * feat: add addEditViewSidePanel API to strapi (#19398) * feat: add addEditViewSidePanel API to strapi fix: don't pass all the query params to the create route * chore: pr amends * fix: return available status when content type doesnt have i18n enabled (#19419) * fix: return available status when content type doesnt have i18n enabled * chore: remove comment * fix(cm): list view & build process * feat: save and publish * feat: update contract * feat: dp tests * chore: use document from create and update * feat: save and publish single types * feat: return metadata on content manager endpoints (#19361) * feat: return metadata on content manager endpoints * feat: return meta * fix: cm tests * feat: fix cm metadata api tests (#19375) * feat: return metadata on content manager endpoints * feat: return meta * fix: cm tests * fix: admin test * chore(cm): refactor CM (#19341) * chore(cm): refactor EditView comes with a host of new re-usable APIs! * feat(cm): add useDocument hook * feat(cm): add useDocumentOperations hook * feat(cm): initialise EditView header * feat(cm): add useDocumentLayout hook * fix: listView from layout refactor * chore(cm): refactor editview form input renderer * chore: fix lint & ts * fix: re-add custom fields * test: fix admin/CM unit tests * docs(cm): add docs at a high level of how the CM works * test: add useDocumentRBAC tests * chore: pr amends * feat: add addEditViewSidePanel API to strapi (#19398) * feat: add addEditViewSidePanel API to strapi fix: don't pass all the query params to the create route * chore: pr amends * fix: return available status when content type doesnt have i18n enabled (#19419) * fix: return available status when content type doesnt have i18n enabled * chore: remove comment * fix(cm): list view & build process * feat: add publish & update action (#19423) * feat: return metadata on content manager endpoints (#19361) * feat: return metadata on content manager endpoints * feat: return meta * fix: cm tests * feat: fix cm metadata api tests (#19375) * feat: return metadata on content manager endpoints * feat: return meta * fix: cm tests * fix: admin test * chore(cm): refactor CM (#19341) * chore(cm): refactor EditView comes with a host of new re-usable APIs! * feat(cm): add useDocument hook * feat(cm): add useDocumentOperations hook * feat(cm): initialise EditView header * feat(cm): add useDocumentLayout hook * fix: listView from layout refactor * chore(cm): refactor editview form input renderer * chore: fix lint & ts * fix: re-add custom fields * test: fix admin/CM unit tests * docs(cm): add docs at a high level of how the CM works * test: add useDocumentRBAC tests * chore: pr amends * feat: add addEditViewSidePanel API to strapi (#19398) * feat: add addEditViewSidePanel API to strapi fix: don't pass all the query params to the create route * chore: pr amends * fix: return available status when content type doesnt have i18n enabled (#19419) * fix: return available status when content type doesnt have i18n enabled * chore: remove comment * feat: add publish & update action * feat: add published disabled state * test: fix suite * test: add unit for Panels * fix(cm): status not state for redirect * fix(cm): list view status & component main field property * chore: pr feedback * chore: apply suggestions Co-authored-by: markkaylor <mark.kaylor@strapi.io> --------- Co-authored-by: Marc Roig <marc12info@gmail.com> Co-authored-by: markkaylor <mark.kaylor@strapi.io> * feat: test single types * feat: wrap single type publish into a transaction * feat(cm): add unpublish & delete actions, also re-enable single-types (#19459) * fix: delete url was wrong way round * feat: compute modified status * fix(cm): reimplement ListSettingsView (#19432) * chore: PR feedback * feat: discard endpoint * feat: discard draft api tests * feat: unpublish and discard * chore: pr comments * chore: update sanitizer * feat(cm): add publish and save (#19500) * feat(cm): add publish and save * test(cm): fix unit for useDocumentActions * Update packages/core/content-manager/server/src/controllers/collection-types.ts Co-authored-by: Jamie Howard <48524071+jhoward1994@users.noreply.github.com> * Update packages/core/content-manager/shared/contracts/single-types-v5.ts Co-authored-by: Jamie Howard <48524071+jhoward1994@users.noreply.github.com> * feat(document-service): map document ID to entry ID (#19248) * feat: use document service in content manager * feat: update contracts with meta information * chore: group metadata types into a single type * feat: metadata information in single types * chore: change meta contract to return documents instead of strings * fix: remove unused type * fix: ignore doc id if entry is null * fix: update contract metadata * feat: document metadata service * feat: locale and status filtering * chore: add comment * chore: refactor metadata service * chore: refactor entity manager exists to handle single types * feat: refactor single type controllers to use documents * feat: get locale param from in cm endpoints * Revert "feat: get locale param from in cm endpoints" This reverts commit 856c38588b8f8521cadd85c8c933f42a36a2178a. * feat: get locale param from cm endpoints * Update packages/plugins/i18n/server/src/controllers/validate-locale-creation.ts Co-authored-by: Ben Irvin <ben@innerdvations.com> * fix: entity manager unit tests * chore: unit test document metadata * feat: prevent empty string locale filtering * fix: cm contract import * chore: test new d&p cm features * fix: search content manager api test * fix: cm tests * fix: cm tests * fix: cm tests * fix(content-manager): access to non default locale documents (#19190) * fix(content-manager): access to non default locale documents * chore(content-manager): revert route construction * fix(content-manager): api tests for number of draft relations * test(content-manager): counting number of draft relations for non default locales * chore(content-manager): remove default locale from entity manager countDraftRelations * chore: basic relations testing for document service * chore(e2e): disable edit view tests (#19235) * feat: get relation ids * chore: clean functions into other folders * chore: rename files * fix: group document ids by its uid * feat: id mapper * chore: improve typings * chore: rename transform functions * fix: id-transform tests * chore: simplify function return value * chore: improve comments * fix: api tests * fix: single types unit test * fix: skip relations test * fix: exclude fields * fix: short hand ifs * fix: merge conflict * fix: transform output of find one * Update packages/core/core/src/services/document-service/transform/utils.ts Co-authored-by: Ben Irvin <ben.irvin@strapi.io> * feat[Document Service]: Param transformation (#19373) * fix(core): wip param transformation * feat(core): wip param transformation based on relational status * feat(core): wip populate and filter transformation based on relational status * chore(core): simplify fields and sort * chore(core): clean up * feat(core): wip filter transformation with traverseQueryFilters * feat(core): reorganise and PR feedback * fix(core): filters traversal logic * feat(core): populate relational transformations * chore(core): reintroduce populate transformation * fix(core): enforce that fields must include id * fix(core): enforce that fields must include id * fix(core): filter and sort transformation * chore(core): typos * chore(core): further filters test cases * feat(core): support object based sorts * chore(core): fields test naming * feat(core): handle logical operators in filters * fix: skip conditions test * fix(core): switchIdForDocumentId (#19497) * fix: uniqueness test * fix: available status should be an array * fix: available statuses * fix: skip uniqueness folder * fix: skip uniqueness test errors * fix: skip failing test --------- Co-authored-by: Ben Irvin <ben@innerdvations.com> Co-authored-by: Jamie Howard <48524071+jhoward1994@users.noreply.github.com> Co-authored-by: Josh <37798644+joshuaellis@users.noreply.github.com> Co-authored-by: Jamie Howard <jamie.howard@strapi.io> Co-authored-by: Ben Irvin <ben.irvin@strapi.io> * chore: re-implement edit configuration (#19488) * chore: re-implement edit configuration * chore: cleanups * test: fix unit tests * feat(cm): add discard changes action (#19509) * feat(cm): add discard changes action * feat(cm): add discard when unpublishing * test(e2e): fix editview e2e * test(e2e): fix uniqueness partially * test(unit): fix unit tests for actions & add for discard * chore: bump playwright * fix(webkit): add shim for requestIdCallback * chore: pr amends * feat: return status on available locales * feat: add document-actions to list-view (#19523) * fix(cm): add gap and alignment for edit-view heading with super long names * fix(cm): list view status' * feat: add list-view actions * fix: conditions for actions to be enabled * fix: stay on draft tab when published * fix: stop propogation on list-view row click * test(e2e): fix editview tests * chore: update spelling error Co-authored-by: Jamie Howard <48524071+jhoward1994@users.noreply.github.com> --------- Co-authored-by: Jamie Howard <48524071+jhoward1994@users.noreply.github.com> * feat: test document metadata * chore: remove unnecessary unit test * fix: return modified on published documents * chore: init split single-type collection-type in document service * Fix/fields test case (#19481) * Update packages/core/content-manager/server/src/services/document-metadata.ts Co-authored-by: Jamie Howard <48524071+jhoward1994@users.noreply.github.com> * fix: pretty * chore: refactor middlewares * feat: send empty object if locale does not exist on document * feat: single types * chore: add tests to middlewares * feat: update locale using query params (#19546) * feat: return available locales when not finding locale * chore: update typings * feat: add clone action (#19526) * feat: add clone action * test(e2e): add auto clone tests * chore: pr amends * feat: add information to header actions menu (#19548) * feat: add information to header actions menu * fix: dont use non-null-assertion * feat: manage relations on publish (#19427) --------- Co-authored-by: Ben Irvin <ben@innerdvations.com> Co-authored-by: Jamie Howard <48524071+jhoward1994@users.noreply.github.com> Co-authored-by: Josh <37798644+joshuaellis@users.noreply.github.com> Co-authored-by: Jamie Howard <jamie.howard@strapi.io> * feat: v5 i18n relations (#19504) Co-authored-by: Ben Irvin <ben@innerdvations.com> Co-authored-by: Jamie Howard <48524071+jhoward1994@users.noreply.github.com> Co-authored-by: Josh <37798644+joshuaellis@users.noreply.github.com> Co-authored-by: Jamie Howard <jamie.howard@strapi.io> * fix: locale test api * feat: undo document id to id switch * feat: make documentId preceed id when connecting relations * fix: return documentId in clone method * fix: document service api tests * chore: start content-api v5 migration * chore: implement entire content-api without d&p endpoints * chore: refactor i18n (#19555) * chore: remove types package, should be using strapi * chore: refactor i18n settings page * feat: add i18n to CM * feat(i18n): add delete locale action (#19562) * chore: pr amends Co-authored-by: Simone <startae14@gmail.com> --------- Co-authored-by: Simone <startae14@gmail.com> * chore: add withCount & loosen the typings for now * fix: adapt content manager to use new doc service api (#19584) * fix: adapt content manager to use new doc service api * fix: fix cm setting ids * chore: pr suggestions * chore: remove console.log * chore: fix unit tests * enhancement: use defaultLocale on delete/publish/unpublish/discardDra… (#19583) * enhancement: use defaultLocale on delete/publish/unpublish/discardDraft by default, add * for all * fix: delete all locales if locale is undefined when deleting --------- Co-authored-by: Marc-Roig <marc12info@gmail.com> * feat(cm): re-implement validation (#19578) * feat: re-implement validation in the CM feat: add blocker feat: handle validation errors from the API chore: reimplement useFieldHint test(unit): fix fe tests chore: fix bad logical operator * chore: await notifications to leave before trying to go to other pages * fix: validation issues & blocker showing up incorrectly * fix: broken publish behaviour * fix(content-manager): uid availability and generation (#19518) * fix(content-manager): uid availability and generation * fix(content-manager): pass locale as is from UID service * fix(content-manager): match UIDs based on startsWith * fix: ts error * feat: default document service factory (#19592) * feat: default ds factory * fix: use uid and not content type in repository * Merge branch 'v5/main' into v5/id-to-documentId * fix: udpate document id references in content manager * chore: use root document service on content manager endpoints * feat: move single type logic into core api * fix: unit tests * fix: content-api tests * fix: remove doc service repository from documents * fix: upload file tests * fix: api tests * fix: remove id mapping on content manager * fix: send documentId and nod id on collection types * chore(content-manager): use documentId over id (#19618) * chore: use doucmentId over id * docs: update contributor documentation * test: update snapshots & msw return values * chore: fix ts * chore: make bulk actions documentIds argument the same time for consistency Co-Authored-By: Jamie Howard <48524071+jhoward1994@users.noreply.github.com> --------- Co-authored-by: Jamie Howard <48524071+jhoward1994@users.noreply.github.com> * fix: cm api tests * fix: remove type * fix: remove unused param --------- Co-authored-by: Josh <37798644+joshuaellis@users.noreply.github.com> Co-authored-by: Jamie Howard <jamie.howard@strapi.io>
2024-02-28 14:15:24 +01:00
shops[0].documentId,
{
name: 'Cazotte Shop',
products_om: { disconnect: [id2] },
products_mm: { disconnect: [id2] },
products_mw: { disconnect: [id2] },
myCompo: {
feat(document-service): document id to id (#19573) * feat: return metadata on content manager endpoints (#19361) * feat: return metadata on content manager endpoints * feat: return meta * fix: cm tests * feat: fix cm metadata api tests (#19375) * feat: return metadata on content manager endpoints * feat: return meta * fix: cm tests * fix: admin test * chore(cm): refactor CM (#19341) * chore(cm): refactor EditView comes with a host of new re-usable APIs! * feat(cm): add useDocument hook * feat(cm): add useDocumentOperations hook * feat(cm): initialise EditView header * feat(cm): add useDocumentLayout hook * fix: listView from layout refactor * chore(cm): refactor editview form input renderer * chore: fix lint & ts * fix: re-add custom fields * test: fix admin/CM unit tests * docs(cm): add docs at a high level of how the CM works * test: add useDocumentRBAC tests * chore: pr amends * feat: add addEditViewSidePanel API to strapi (#19398) * feat: add addEditViewSidePanel API to strapi fix: don't pass all the query params to the create route * chore: pr amends * fix: return available status when content type doesnt have i18n enabled (#19419) * fix: return available status when content type doesnt have i18n enabled * chore: remove comment * fix(cm): list view & build process * feat: save and publish * feat: update contract * feat: dp tests * chore: use document from create and update * feat: save and publish single types * feat: return metadata on content manager endpoints (#19361) * feat: return metadata on content manager endpoints * feat: return meta * fix: cm tests * feat: fix cm metadata api tests (#19375) * feat: return metadata on content manager endpoints * feat: return meta * fix: cm tests * fix: admin test * chore(cm): refactor CM (#19341) * chore(cm): refactor EditView comes with a host of new re-usable APIs! * feat(cm): add useDocument hook * feat(cm): add useDocumentOperations hook * feat(cm): initialise EditView header * feat(cm): add useDocumentLayout hook * fix: listView from layout refactor * chore(cm): refactor editview form input renderer * chore: fix lint & ts * fix: re-add custom fields * test: fix admin/CM unit tests * docs(cm): add docs at a high level of how the CM works * test: add useDocumentRBAC tests * chore: pr amends * feat: add addEditViewSidePanel API to strapi (#19398) * feat: add addEditViewSidePanel API to strapi fix: don't pass all the query params to the create route * chore: pr amends * fix: return available status when content type doesnt have i18n enabled (#19419) * fix: return available status when content type doesnt have i18n enabled * chore: remove comment * fix(cm): list view & build process * feat: add publish & update action (#19423) * feat: return metadata on content manager endpoints (#19361) * feat: return metadata on content manager endpoints * feat: return meta * fix: cm tests * feat: fix cm metadata api tests (#19375) * feat: return metadata on content manager endpoints * feat: return meta * fix: cm tests * fix: admin test * chore(cm): refactor CM (#19341) * chore(cm): refactor EditView comes with a host of new re-usable APIs! * feat(cm): add useDocument hook * feat(cm): add useDocumentOperations hook * feat(cm): initialise EditView header * feat(cm): add useDocumentLayout hook * fix: listView from layout refactor * chore(cm): refactor editview form input renderer * chore: fix lint & ts * fix: re-add custom fields * test: fix admin/CM unit tests * docs(cm): add docs at a high level of how the CM works * test: add useDocumentRBAC tests * chore: pr amends * feat: add addEditViewSidePanel API to strapi (#19398) * feat: add addEditViewSidePanel API to strapi fix: don't pass all the query params to the create route * chore: pr amends * fix: return available status when content type doesnt have i18n enabled (#19419) * fix: return available status when content type doesnt have i18n enabled * chore: remove comment * feat: add publish & update action * feat: add published disabled state * test: fix suite * test: add unit for Panels * fix(cm): status not state for redirect * fix(cm): list view status & component main field property * chore: pr feedback * chore: apply suggestions Co-authored-by: markkaylor <mark.kaylor@strapi.io> --------- Co-authored-by: Marc Roig <marc12info@gmail.com> Co-authored-by: markkaylor <mark.kaylor@strapi.io> * feat: test single types * feat: wrap single type publish into a transaction * feat(cm): add unpublish & delete actions, also re-enable single-types (#19459) * fix: delete url was wrong way round * feat: compute modified status * fix(cm): reimplement ListSettingsView (#19432) * chore: PR feedback * feat: discard endpoint * feat: discard draft api tests * feat: unpublish and discard * chore: pr comments * chore: update sanitizer * feat(cm): add publish and save (#19500) * feat(cm): add publish and save * test(cm): fix unit for useDocumentActions * Update packages/core/content-manager/server/src/controllers/collection-types.ts Co-authored-by: Jamie Howard <48524071+jhoward1994@users.noreply.github.com> * Update packages/core/content-manager/shared/contracts/single-types-v5.ts Co-authored-by: Jamie Howard <48524071+jhoward1994@users.noreply.github.com> * feat(document-service): map document ID to entry ID (#19248) * feat: use document service in content manager * feat: update contracts with meta information * chore: group metadata types into a single type * feat: metadata information in single types * chore: change meta contract to return documents instead of strings * fix: remove unused type * fix: ignore doc id if entry is null * fix: update contract metadata * feat: document metadata service * feat: locale and status filtering * chore: add comment * chore: refactor metadata service * chore: refactor entity manager exists to handle single types * feat: refactor single type controllers to use documents * feat: get locale param from in cm endpoints * Revert "feat: get locale param from in cm endpoints" This reverts commit 856c38588b8f8521cadd85c8c933f42a36a2178a. * feat: get locale param from cm endpoints * Update packages/plugins/i18n/server/src/controllers/validate-locale-creation.ts Co-authored-by: Ben Irvin <ben@innerdvations.com> * fix: entity manager unit tests * chore: unit test document metadata * feat: prevent empty string locale filtering * fix: cm contract import * chore: test new d&p cm features * fix: search content manager api test * fix: cm tests * fix: cm tests * fix: cm tests * fix(content-manager): access to non default locale documents (#19190) * fix(content-manager): access to non default locale documents * chore(content-manager): revert route construction * fix(content-manager): api tests for number of draft relations * test(content-manager): counting number of draft relations for non default locales * chore(content-manager): remove default locale from entity manager countDraftRelations * chore: basic relations testing for document service * chore(e2e): disable edit view tests (#19235) * feat: get relation ids * chore: clean functions into other folders * chore: rename files * fix: group document ids by its uid * feat: id mapper * chore: improve typings * chore: rename transform functions * fix: id-transform tests * chore: simplify function return value * chore: improve comments * fix: api tests * fix: single types unit test * fix: skip relations test * fix: exclude fields * fix: short hand ifs * fix: merge conflict * fix: transform output of find one * Update packages/core/core/src/services/document-service/transform/utils.ts Co-authored-by: Ben Irvin <ben.irvin@strapi.io> * feat[Document Service]: Param transformation (#19373) * fix(core): wip param transformation * feat(core): wip param transformation based on relational status * feat(core): wip populate and filter transformation based on relational status * chore(core): simplify fields and sort * chore(core): clean up * feat(core): wip filter transformation with traverseQueryFilters * feat(core): reorganise and PR feedback * fix(core): filters traversal logic * feat(core): populate relational transformations * chore(core): reintroduce populate transformation * fix(core): enforce that fields must include id * fix(core): enforce that fields must include id * fix(core): filter and sort transformation * chore(core): typos * chore(core): further filters test cases * feat(core): support object based sorts * chore(core): fields test naming * feat(core): handle logical operators in filters * fix: skip conditions test * fix(core): switchIdForDocumentId (#19497) * fix: uniqueness test * fix: available status should be an array * fix: available statuses * fix: skip uniqueness folder * fix: skip uniqueness test errors * fix: skip failing test --------- Co-authored-by: Ben Irvin <ben@innerdvations.com> Co-authored-by: Jamie Howard <48524071+jhoward1994@users.noreply.github.com> Co-authored-by: Josh <37798644+joshuaellis@users.noreply.github.com> Co-authored-by: Jamie Howard <jamie.howard@strapi.io> Co-authored-by: Ben Irvin <ben.irvin@strapi.io> * chore: re-implement edit configuration (#19488) * chore: re-implement edit configuration * chore: cleanups * test: fix unit tests * feat(cm): add discard changes action (#19509) * feat(cm): add discard changes action * feat(cm): add discard when unpublishing * test(e2e): fix editview e2e * test(e2e): fix uniqueness partially * test(unit): fix unit tests for actions & add for discard * chore: bump playwright * fix(webkit): add shim for requestIdCallback * chore: pr amends * feat: return status on available locales * feat: add document-actions to list-view (#19523) * fix(cm): add gap and alignment for edit-view heading with super long names * fix(cm): list view status' * feat: add list-view actions * fix: conditions for actions to be enabled * fix: stay on draft tab when published * fix: stop propogation on list-view row click * test(e2e): fix editview tests * chore: update spelling error Co-authored-by: Jamie Howard <48524071+jhoward1994@users.noreply.github.com> --------- Co-authored-by: Jamie Howard <48524071+jhoward1994@users.noreply.github.com> * feat: test document metadata * chore: remove unnecessary unit test * fix: return modified on published documents * chore: init split single-type collection-type in document service * Fix/fields test case (#19481) * Update packages/core/content-manager/server/src/services/document-metadata.ts Co-authored-by: Jamie Howard <48524071+jhoward1994@users.noreply.github.com> * fix: pretty * chore: refactor middlewares * feat: send empty object if locale does not exist on document * feat: single types * chore: add tests to middlewares * feat: update locale using query params (#19546) * feat: return available locales when not finding locale * chore: update typings * feat: add clone action (#19526) * feat: add clone action * test(e2e): add auto clone tests * chore: pr amends * feat: add information to header actions menu (#19548) * feat: add information to header actions menu * fix: dont use non-null-assertion * feat: manage relations on publish (#19427) --------- Co-authored-by: Ben Irvin <ben@innerdvations.com> Co-authored-by: Jamie Howard <48524071+jhoward1994@users.noreply.github.com> Co-authored-by: Josh <37798644+joshuaellis@users.noreply.github.com> Co-authored-by: Jamie Howard <jamie.howard@strapi.io> * feat: v5 i18n relations (#19504) Co-authored-by: Ben Irvin <ben@innerdvations.com> Co-authored-by: Jamie Howard <48524071+jhoward1994@users.noreply.github.com> Co-authored-by: Josh <37798644+joshuaellis@users.noreply.github.com> Co-authored-by: Jamie Howard <jamie.howard@strapi.io> * fix: locale test api * feat: undo document id to id switch * feat: make documentId preceed id when connecting relations * fix: return documentId in clone method * fix: document service api tests * chore: start content-api v5 migration * chore: implement entire content-api without d&p endpoints * chore: refactor i18n (#19555) * chore: remove types package, should be using strapi * chore: refactor i18n settings page * feat: add i18n to CM * feat(i18n): add delete locale action (#19562) * chore: pr amends Co-authored-by: Simone <startae14@gmail.com> --------- Co-authored-by: Simone <startae14@gmail.com> * chore: add withCount & loosen the typings for now * fix: adapt content manager to use new doc service api (#19584) * fix: adapt content manager to use new doc service api * fix: fix cm setting ids * chore: pr suggestions * chore: remove console.log * chore: fix unit tests * enhancement: use defaultLocale on delete/publish/unpublish/discardDra… (#19583) * enhancement: use defaultLocale on delete/publish/unpublish/discardDraft by default, add * for all * fix: delete all locales if locale is undefined when deleting --------- Co-authored-by: Marc-Roig <marc12info@gmail.com> * feat(cm): re-implement validation (#19578) * feat: re-implement validation in the CM feat: add blocker feat: handle validation errors from the API chore: reimplement useFieldHint test(unit): fix fe tests chore: fix bad logical operator * chore: await notifications to leave before trying to go to other pages * fix: validation issues & blocker showing up incorrectly * fix: broken publish behaviour * fix(content-manager): uid availability and generation (#19518) * fix(content-manager): uid availability and generation * fix(content-manager): pass locale as is from UID service * fix(content-manager): match UIDs based on startsWith * fix: ts error * feat: default document service factory (#19592) * feat: default ds factory * fix: use uid and not content type in repository * Merge branch 'v5/main' into v5/id-to-documentId * fix: udpate document id references in content manager * chore: use root document service on content manager endpoints * feat: move single type logic into core api * fix: unit tests * fix: content-api tests * fix: remove doc service repository from documents * fix: upload file tests * fix: api tests * fix: remove id mapping on content manager * fix: send documentId and nod id on collection types * chore(content-manager): use documentId over id (#19618) * chore: use doucmentId over id * docs: update contributor documentation * test: update snapshots & msw return values * chore: fix ts * chore: make bulk actions documentIds argument the same time for consistency Co-Authored-By: Jamie Howard <48524071+jhoward1994@users.noreply.github.com> --------- Co-authored-by: Jamie Howard <48524071+jhoward1994@users.noreply.github.com> * fix: cm api tests * fix: remove type * fix: remove unused param --------- Co-authored-by: Josh <37798644+joshuaellis@users.noreply.github.com> Co-authored-by: Jamie Howard <jamie.howard@strapi.io>
2024-02-28 14:15:24 +01:00
id: shops[0].myCompo.documentId,
compo_products_mw: { disconnect: [id2] },
},
},
[]
);
feat(document-service): document id to id (#19573) * feat: return metadata on content manager endpoints (#19361) * feat: return metadata on content manager endpoints * feat: return meta * fix: cm tests * feat: fix cm metadata api tests (#19375) * feat: return metadata on content manager endpoints * feat: return meta * fix: cm tests * fix: admin test * chore(cm): refactor CM (#19341) * chore(cm): refactor EditView comes with a host of new re-usable APIs! * feat(cm): add useDocument hook * feat(cm): add useDocumentOperations hook * feat(cm): initialise EditView header * feat(cm): add useDocumentLayout hook * fix: listView from layout refactor * chore(cm): refactor editview form input renderer * chore: fix lint & ts * fix: re-add custom fields * test: fix admin/CM unit tests * docs(cm): add docs at a high level of how the CM works * test: add useDocumentRBAC tests * chore: pr amends * feat: add addEditViewSidePanel API to strapi (#19398) * feat: add addEditViewSidePanel API to strapi fix: don't pass all the query params to the create route * chore: pr amends * fix: return available status when content type doesnt have i18n enabled (#19419) * fix: return available status when content type doesnt have i18n enabled * chore: remove comment * fix(cm): list view & build process * feat: save and publish * feat: update contract * feat: dp tests * chore: use document from create and update * feat: save and publish single types * feat: return metadata on content manager endpoints (#19361) * feat: return metadata on content manager endpoints * feat: return meta * fix: cm tests * feat: fix cm metadata api tests (#19375) * feat: return metadata on content manager endpoints * feat: return meta * fix: cm tests * fix: admin test * chore(cm): refactor CM (#19341) * chore(cm): refactor EditView comes with a host of new re-usable APIs! * feat(cm): add useDocument hook * feat(cm): add useDocumentOperations hook * feat(cm): initialise EditView header * feat(cm): add useDocumentLayout hook * fix: listView from layout refactor * chore(cm): refactor editview form input renderer * chore: fix lint & ts * fix: re-add custom fields * test: fix admin/CM unit tests * docs(cm): add docs at a high level of how the CM works * test: add useDocumentRBAC tests * chore: pr amends * feat: add addEditViewSidePanel API to strapi (#19398) * feat: add addEditViewSidePanel API to strapi fix: don't pass all the query params to the create route * chore: pr amends * fix: return available status when content type doesnt have i18n enabled (#19419) * fix: return available status when content type doesnt have i18n enabled * chore: remove comment * fix(cm): list view & build process * feat: add publish & update action (#19423) * feat: return metadata on content manager endpoints (#19361) * feat: return metadata on content manager endpoints * feat: return meta * fix: cm tests * feat: fix cm metadata api tests (#19375) * feat: return metadata on content manager endpoints * feat: return meta * fix: cm tests * fix: admin test * chore(cm): refactor CM (#19341) * chore(cm): refactor EditView comes with a host of new re-usable APIs! * feat(cm): add useDocument hook * feat(cm): add useDocumentOperations hook * feat(cm): initialise EditView header * feat(cm): add useDocumentLayout hook * fix: listView from layout refactor * chore(cm): refactor editview form input renderer * chore: fix lint & ts * fix: re-add custom fields * test: fix admin/CM unit tests * docs(cm): add docs at a high level of how the CM works * test: add useDocumentRBAC tests * chore: pr amends * feat: add addEditViewSidePanel API to strapi (#19398) * feat: add addEditViewSidePanel API to strapi fix: don't pass all the query params to the create route * chore: pr amends * fix: return available status when content type doesnt have i18n enabled (#19419) * fix: return available status when content type doesnt have i18n enabled * chore: remove comment * feat: add publish & update action * feat: add published disabled state * test: fix suite * test: add unit for Panels * fix(cm): status not state for redirect * fix(cm): list view status & component main field property * chore: pr feedback * chore: apply suggestions Co-authored-by: markkaylor <mark.kaylor@strapi.io> --------- Co-authored-by: Marc Roig <marc12info@gmail.com> Co-authored-by: markkaylor <mark.kaylor@strapi.io> * feat: test single types * feat: wrap single type publish into a transaction * feat(cm): add unpublish & delete actions, also re-enable single-types (#19459) * fix: delete url was wrong way round * feat: compute modified status * fix(cm): reimplement ListSettingsView (#19432) * chore: PR feedback * feat: discard endpoint * feat: discard draft api tests * feat: unpublish and discard * chore: pr comments * chore: update sanitizer * feat(cm): add publish and save (#19500) * feat(cm): add publish and save * test(cm): fix unit for useDocumentActions * Update packages/core/content-manager/server/src/controllers/collection-types.ts Co-authored-by: Jamie Howard <48524071+jhoward1994@users.noreply.github.com> * Update packages/core/content-manager/shared/contracts/single-types-v5.ts Co-authored-by: Jamie Howard <48524071+jhoward1994@users.noreply.github.com> * feat(document-service): map document ID to entry ID (#19248) * feat: use document service in content manager * feat: update contracts with meta information * chore: group metadata types into a single type * feat: metadata information in single types * chore: change meta contract to return documents instead of strings * fix: remove unused type * fix: ignore doc id if entry is null * fix: update contract metadata * feat: document metadata service * feat: locale and status filtering * chore: add comment * chore: refactor metadata service * chore: refactor entity manager exists to handle single types * feat: refactor single type controllers to use documents * feat: get locale param from in cm endpoints * Revert "feat: get locale param from in cm endpoints" This reverts commit 856c38588b8f8521cadd85c8c933f42a36a2178a. * feat: get locale param from cm endpoints * Update packages/plugins/i18n/server/src/controllers/validate-locale-creation.ts Co-authored-by: Ben Irvin <ben@innerdvations.com> * fix: entity manager unit tests * chore: unit test document metadata * feat: prevent empty string locale filtering * fix: cm contract import * chore: test new d&p cm features * fix: search content manager api test * fix: cm tests * fix: cm tests * fix: cm tests * fix(content-manager): access to non default locale documents (#19190) * fix(content-manager): access to non default locale documents * chore(content-manager): revert route construction * fix(content-manager): api tests for number of draft relations * test(content-manager): counting number of draft relations for non default locales * chore(content-manager): remove default locale from entity manager countDraftRelations * chore: basic relations testing for document service * chore(e2e): disable edit view tests (#19235) * feat: get relation ids * chore: clean functions into other folders * chore: rename files * fix: group document ids by its uid * feat: id mapper * chore: improve typings * chore: rename transform functions * fix: id-transform tests * chore: simplify function return value * chore: improve comments * fix: api tests * fix: single types unit test * fix: skip relations test * fix: exclude fields * fix: short hand ifs * fix: merge conflict * fix: transform output of find one * Update packages/core/core/src/services/document-service/transform/utils.ts Co-authored-by: Ben Irvin <ben.irvin@strapi.io> * feat[Document Service]: Param transformation (#19373) * fix(core): wip param transformation * feat(core): wip param transformation based on relational status * feat(core): wip populate and filter transformation based on relational status * chore(core): simplify fields and sort * chore(core): clean up * feat(core): wip filter transformation with traverseQueryFilters * feat(core): reorganise and PR feedback * fix(core): filters traversal logic * feat(core): populate relational transformations * chore(core): reintroduce populate transformation * fix(core): enforce that fields must include id * fix(core): enforce that fields must include id * fix(core): filter and sort transformation * chore(core): typos * chore(core): further filters test cases * feat(core): support object based sorts * chore(core): fields test naming * feat(core): handle logical operators in filters * fix: skip conditions test * fix(core): switchIdForDocumentId (#19497) * fix: uniqueness test * fix: available status should be an array * fix: available statuses * fix: skip uniqueness folder * fix: skip uniqueness test errors * fix: skip failing test --------- Co-authored-by: Ben Irvin <ben@innerdvations.com> Co-authored-by: Jamie Howard <48524071+jhoward1994@users.noreply.github.com> Co-authored-by: Josh <37798644+joshuaellis@users.noreply.github.com> Co-authored-by: Jamie Howard <jamie.howard@strapi.io> Co-authored-by: Ben Irvin <ben.irvin@strapi.io> * chore: re-implement edit configuration (#19488) * chore: re-implement edit configuration * chore: cleanups * test: fix unit tests * feat(cm): add discard changes action (#19509) * feat(cm): add discard changes action * feat(cm): add discard when unpublishing * test(e2e): fix editview e2e * test(e2e): fix uniqueness partially * test(unit): fix unit tests for actions & add for discard * chore: bump playwright * fix(webkit): add shim for requestIdCallback * chore: pr amends * feat: return status on available locales * feat: add document-actions to list-view (#19523) * fix(cm): add gap and alignment for edit-view heading with super long names * fix(cm): list view status' * feat: add list-view actions * fix: conditions for actions to be enabled * fix: stay on draft tab when published * fix: stop propogation on list-view row click * test(e2e): fix editview tests * chore: update spelling error Co-authored-by: Jamie Howard <48524071+jhoward1994@users.noreply.github.com> --------- Co-authored-by: Jamie Howard <48524071+jhoward1994@users.noreply.github.com> * feat: test document metadata * chore: remove unnecessary unit test * fix: return modified on published documents * chore: init split single-type collection-type in document service * Fix/fields test case (#19481) * Update packages/core/content-manager/server/src/services/document-metadata.ts Co-authored-by: Jamie Howard <48524071+jhoward1994@users.noreply.github.com> * fix: pretty * chore: refactor middlewares * feat: send empty object if locale does not exist on document * feat: single types * chore: add tests to middlewares * feat: update locale using query params (#19546) * feat: return available locales when not finding locale * chore: update typings * feat: add clone action (#19526) * feat: add clone action * test(e2e): add auto clone tests * chore: pr amends * feat: add information to header actions menu (#19548) * feat: add information to header actions menu * fix: dont use non-null-assertion * feat: manage relations on publish (#19427) --------- Co-authored-by: Ben Irvin <ben@innerdvations.com> Co-authored-by: Jamie Howard <48524071+jhoward1994@users.noreply.github.com> Co-authored-by: Josh <37798644+joshuaellis@users.noreply.github.com> Co-authored-by: Jamie Howard <jamie.howard@strapi.io> * feat: v5 i18n relations (#19504) Co-authored-by: Ben Irvin <ben@innerdvations.com> Co-authored-by: Jamie Howard <48524071+jhoward1994@users.noreply.github.com> Co-authored-by: Josh <37798644+joshuaellis@users.noreply.github.com> Co-authored-by: Jamie Howard <jamie.howard@strapi.io> * fix: locale test api * feat: undo document id to id switch * feat: make documentId preceed id when connecting relations * fix: return documentId in clone method * fix: document service api tests * chore: start content-api v5 migration * chore: implement entire content-api without d&p endpoints * chore: refactor i18n (#19555) * chore: remove types package, should be using strapi * chore: refactor i18n settings page * feat: add i18n to CM * feat(i18n): add delete locale action (#19562) * chore: pr amends Co-authored-by: Simone <startae14@gmail.com> --------- Co-authored-by: Simone <startae14@gmail.com> * chore: add withCount & loosen the typings for now * fix: adapt content manager to use new doc service api (#19584) * fix: adapt content manager to use new doc service api * fix: fix cm setting ids * chore: pr suggestions * chore: remove console.log * chore: fix unit tests * enhancement: use defaultLocale on delete/publish/unpublish/discardDra… (#19583) * enhancement: use defaultLocale on delete/publish/unpublish/discardDraft by default, add * for all * fix: delete all locales if locale is undefined when deleting --------- Co-authored-by: Marc-Roig <marc12info@gmail.com> * feat(cm): re-implement validation (#19578) * feat: re-implement validation in the CM feat: add blocker feat: handle validation errors from the API chore: reimplement useFieldHint test(unit): fix fe tests chore: fix bad logical operator * chore: await notifications to leave before trying to go to other pages * fix: validation issues & blocker showing up incorrectly * fix: broken publish behaviour * fix(content-manager): uid availability and generation (#19518) * fix(content-manager): uid availability and generation * fix(content-manager): pass locale as is from UID service * fix(content-manager): match UIDs based on startsWith * fix: ts error * feat: default document service factory (#19592) * feat: default ds factory * fix: use uid and not content type in repository * Merge branch 'v5/main' into v5/id-to-documentId * fix: udpate document id references in content manager * chore: use root document service on content manager endpoints * feat: move single type logic into core api * fix: unit tests * fix: content-api tests * fix: remove doc service repository from documents * fix: upload file tests * fix: api tests * fix: remove id mapping on content manager * fix: send documentId and nod id on collection types * chore(content-manager): use documentId over id (#19618) * chore: use doucmentId over id * docs: update contributor documentation * test: update snapshots & msw return values * chore: fix ts * chore: make bulk actions documentIds argument the same time for consistency Co-Authored-By: Jamie Howard <48524071+jhoward1994@users.noreply.github.com> --------- Co-authored-by: Jamie Howard <48524071+jhoward1994@users.noreply.github.com> * fix: cm api tests * fix: remove type * fix: remove unused param --------- Co-authored-by: Josh <37798644+joshuaellis@users.noreply.github.com> Co-authored-by: Jamie Howard <jamie.howard@strapi.io>
2024-02-28 14:15:24 +01:00
const updatedShop2 = await strapi.entityService.findOne(
'api::shop.shop',
shops[1].documentId,
{
populate: populateShop,
}
);
// shop2 relations should be unchanged
expect(updatedShop2.products_om).toMatchObject([{ id: id1 }, { id: id2 }]);
expect(updatedShop2.products_mm).toMatchObject([{ id: id1 }, { id: id2 }]);
expect(updatedShop2.products_mw).toMatchObject([{ id: id1 }, { id: id2 }]);
expect(updatedShop2.myCompo.compo_products_mw).toMatchObject([{ id: id1 }, { id: id2 }]);
});
});
});