45 Commits

Author SHA1 Message Date
Josh
a8498df926
feat(cm): reimplement relations for draft & publish (#19642)
* feat(content-manager): Rework findAvailable and findExisting (#19597)

* feat(content-manager): wip rework findAvailable and findExisting

* chore(strapi): simplify relations controller

* feat(content-manager): entity Id based find available

* feat(content-manager): entity Id based find existing

* fix(content-manager): build issues

* chore(content-manager): cleanup

* fix(content-manager): relations controllers unit tests

* fix(content-manager): improve error handling

* fix(content-manager): simplify findExisting relations logic

* fix(content-manager): clean up types

* fix(content-manager): extend available relation API tests

* fix(content-manager): pr feedback

* feat(content-manager): cover find existing test cases

* feat(content-manager): test that we can only find available relations in the same locale

* fix: wip fix unit tests

* chore(content-manager): pr feedback

* fix(content-manager): use db layer to find relations

fix(content-manager): failing relations tests

* fix(content-manager): find relations test

* fix(content-manager): build issues

* fix(content-manager): return latest status of relations in findAvailable (#19681)

* fix(content-manager): return latest status of relations in findAvailable

* fix(content-manager): share logic for findAvailable and findExisting

* fix(admin): relation tests

* fix(content-manager): clean up types

* fix(content-manager): support status for find exisiting

* fix(content-manager): add status and locale filters to subQuery

* fix(content-manager): ts front and skip relations unit tests

* fix(content-manager): request specific status or get latest using document-metadata

* chore(content-manager): use interface

* fix(content-manager): tidy up target relation subquery

* fix(content-manager): tidy up and skip TS for build issues

* fix(content-manager): return status when requested

* chore(content-manager): dont re type entity service response

* fix(content-manager): use document metadata getManyAvailableStatus

* chore(content-manager): remove mapAsync

* feat: implement relations in the cm (#19702)

* Fix: Relating i18n and non-i18n content types (#19731)

* chore: re-enable e2e relation tests

* fix: return undefined

---------

Co-authored-by: Jamie Howard <48524071+jhoward1994@users.noreply.github.com>
Co-authored-by: Jamie Howard <jamie.howard@strapi.io>
Co-authored-by: Marc-Roig <marc12info@gmail.com>
2024-03-13 10:25:47 +00:00
Marc
9c51bcfcc5 feat: do not compute status on non D&P content types 2024-03-06 10:38:09 +01:00
Marc Roig
fe7a20fed1
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 13:15:24 +00:00
Josh
4f4e3c3acd
feat(cm): D&P pt2 (#19380)
* 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

* 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>

* 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

---------

Co-authored-by: Marc Roig <marc12info@gmail.com>
Co-authored-by: markkaylor <mark.kaylor@strapi.io>
Co-authored-by: Jamie Howard <48524071+jhoward1994@users.noreply.github.com>
Co-authored-by: Ben Irvin <ben@innerdvations.com>
Co-authored-by: Jamie Howard <jamie.howard@strapi.io>
Co-authored-by: Ben Irvin <ben.irvin@strapi.io>
Co-authored-by: Alexandre Bodin <bodin.alex@gmail.com>
Co-authored-by: Alexandre BODIN <alexandrebodin@users.noreply.github.com>
Co-authored-by: Simone <startae14@gmail.com>
2024-02-22 17:18:32 +00:00
Josh
08bc82a220 Merge branch 'develop' into v5/main 2024-02-07 18:27:45 +00:00
Bassel Kanso
425f7870d6
fix(cm): restore proper pagination object on relations response (#19445) 2024-02-07 14:31:51 +00:00
Jamie Howard
1097504b36
[core] document unique field validation per content type and locale (#19153)
* 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

* feat(core): document unique field validation per content type and locale

* feat(e2e): test document unique fields

* fix(admin): ts build

* fix: cm contract import

* chore: test new d&p cm features

* feat(core): validate document unique fields within one publication state

chore: remove build:ts

* 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

* test(document-service): api tests for unique document fields per publication state

* test(i18n): api tests for unique document fields per locale

* chore(api-tests): adjust author schema

* chore(e2e): disable edit view tests (#19235)

* fix(core): unique validation on publish

* fix(api-tests): un-localise author

* fix(e2e): incorrect path

* fix(admin): tidy up

* fix(admin): pass correct locale query params

fix(core): pass locale outside of filters

* chore(api-tests): wip comment for relatedEntityId logic

* fix(core): entity validator tests

* chore(api-tests): wip skip failing relations i18n test

* chore(e2e): clean up editview spec

* fix(content-manager): pass locale to publish and unpublish

* fix(content-manager): fix test:ts:back

* fix(e2e): update edit view expected path

* fix(entity-validator): default to null locale

fix(api-tests): wip i18n test changes

* fix(e2e): wip UID fields

* chore(content-type-builder): temporarily disable component unique field checkboxes (#19253)

* fix(admin): wip correctly pass params

feat(e2e): reintroduce uniqueness e2e tests

* Refactor UID validation for V5 (#19285)

* fix(database): wip remove UID unique DB constraint

* feat(content-manager): update uid checking endpoints to look at locale

* chore(admin): clean up

* fix(content-manager): single type unit tests

* fix(content-manager): send all params to uid endpoints

* feat(e2e): update tar backup to support unique CT

* fix(e2e): uniqueness spec

* chore(e2e): remove only

* fix(content-manager): only check UID availability against drafts

feat(api-tests): test case for UID validation across locales

* fix(content-manager): uid unit tests

* chore(api-tests): clean up

* chore(content-manager): clean up

* chore(i18n): remove relatedEntityId reference

---------

Co-authored-by: Marc-Roig <marc12info@gmail.com>
Co-authored-by: Ben Irvin <ben@innerdvations.com>
Co-authored-by: Josh <37798644+joshuaellis@users.noreply.github.com>
2024-01-29 15:35:20 +00:00
Marc Roig
ff8ed1fc36
feat: Draft & Publish V5 (#18941)
* feat: use document service in content manager
* feat: locale and status filtering
* feat: refactor single type controllers to use documents
* feat: get locale param from in cm endpoints
* feat: get locale param from cm endpoints
* feat: prevent empty string locale filtering
* fix(content-manager): access to non default locale documents
* chore(content-manager): revert route construction
* test(content-manager): counting number of draft relations for non default locales
* chore(content-manager): remove default locale from entity manager countDraftRelations


---------

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>
2024-01-25 18:43:08 +01:00
Marc-Roig
fc38bbf223
fix: ignore localizations field in non localized ct 2024-01-10 11:31:48 +01:00
Marc-Roig
54bac609ca
fix: content manager search api test 2023-11-14 18:56:03 +01:00
Alexandre BODIN
5ae0dc40cd feat!(content-manager): remove the ability to disable draft&publish (#18488)
* feat!: remove draft and publish triggering

* chore: update snapshots and tests

* test: adapt tests
2023-10-24 17:18:59 +01:00
Marc Roig
42f2df01d5
Merge pull request #17702 from strapi/fix/empty-role-names 2023-08-29 09:18:39 +02:00
Ben Irvin
aedf994e20
Merge branch 'main' into fix/sanitization-throw-instead-of-filter 2023-08-24 14:35:58 +02:00
Marc-Roig
9472ddff19
fix: use different email for testing 2023-08-21 14:51:34 +02:00
Marc-Roig
54cb286f94
chore: remove comment 2023-08-21 12:24:25 +02:00
Marc-Roig
7fbf6bf36c
test: content manager relations permissions 2023-08-21 12:23:27 +02:00
Ben Irvin
bdeb570b61 update test text 2023-08-10 16:46:04 +02:00
Marc-Roig
44fb047133
test: set relational field as default sort 2023-07-26 17:05:14 +02:00
Marc-Roig
3f5fd5aa9b fix: non visible fields test name 2023-07-25 11:20:59 +02:00
Marc-Roig
fc22534f01 test: can set non visible attribute as the default sort of CT 2023-07-25 11:20:59 +02:00
Marc-Roig
8b17c0ded6 test: non visible attributes can be filtered by 2023-07-25 11:20:59 +02:00
Marc Roig
df79981a07
Merge pull request #17262 from strapi/fix/relation-reordering-inv 2023-07-24 15:12:00 +02:00
Gustav Hansen
a6d17cebb9 Merge branch 'main' into feature/review-workflow-multiple-merge-18-07-23 2023-07-18 13:05:31 +02:00
markkaylor
a82de46746
feature/bulk-publish-v2 (#17185)
Co-authored-by: Simone <simone.taeggi@strapi.io>
Co-authored-by: markkaylor <mark.kaylor@strapi.io>
Co-authored-by: Josh <37798644+joshuaellis@users.noreply.github.com>
Co-authored-by: Rémi de Juvigny <remi.dejuvigny@strapi.io>
Co-authored-by: Fernando Chavez <fernando.chavez@strapi.io>
2023-07-18 09:03:55 +02:00
Gustav Hansen
72cc277165 Merge branch 'main' into feature/review-workflow-multiple-merge-17-07-23 2023-07-17 13:38:35 +02:00
Marc-Roig
a887260621
fix: split relations test file, as tests were doing too many requests 2023-07-14 11:21:28 +02:00
Alexandre Bodin
68528a363e Fix bulkDelete not found should return a count of 0 2023-07-12 17:15:12 +02:00
Marc-Roig
2d63671daa
fix: relations test relation disconnect breaking other relations 2023-07-12 09:43:27 +02:00
Marc-Roig
ee2cd841c9
tests: updating entity relations does not break other relations 2023-07-11 15:37:54 +02:00
Gustav Hansen
a886c69b56 Merge branch 'main' into feature/review-workflow-multiple-merge-07-2023 2023-07-07 13:35:15 +02:00
Marc-Roig
65294d29a4
test: publish entity with required component 2023-06-27 10:23:40 +02:00
Gustav Hansen
4410fb8f97 Merge branch 'main' into feature/review-workflow-multiple-merge-main 2023-06-22 12:17:05 +02:00
Marc-Roig
0654f395cd test: use entity service to load relations 2023-06-22 08:12:20 +01:00
Marc-Roig
e2fa85f848 skip cloning relations tests 2023-06-22 08:12:20 +01:00
Marc-Roig
bf324d0557 test: skip relations test
see if it fixes flakey tests
2023-06-22 08:12:20 +01:00
Marc
674dc96b89 refactor: mark uid as a prohibited field & separate auto-clone route (#16957)
Co-authored-by: Josh <37798644+joshuaellis@users.noreply.github.com>
2023-06-22 08:12:20 +01:00
Marc
21498fbda7 test: set and disconnect should not steal from one to X relations 2023-06-22 08:00:14 +01:00
Marc-Roig
2ac90b8e8e test: disconnect and clone relations 2023-06-22 07:59:49 +01:00
Marc-Roig
19f9273e7d test clone components 2023-06-22 07:59:49 +01:00
Marc-Roig
52bf461b06 test clone dynamic zones 2023-06-22 07:59:49 +01:00
Marc-Roig
d90a0c34bb test clone 2023-06-22 07:59:49 +01:00
Marc-Roig
8982eea28e test clone relations 2023-06-22 07:59:49 +01:00
Nathan Pichon
cd08c590a8
fix(review-workflow): the feature shouldn't be deactivated on content type creation (#17045)
* fix(reviewWorkflows): should not set review workflows as false on CT creation

* fix(reviewWorkflows): remove check on boolean to inject the stage attribute

* feat(reviewWorkflows): let people be able to deactivate rw stage attr

- without touching the old boolean for retro-compat
2023-06-21 18:09:16 +02:00
Nathan Pichon
b8ca9a01ce
feat(review workflow): Prevent too long table name for rw join table attributes (#16827)
* feat(review-workflow): prevent activating on content-type with a too long name

* chore(review-workflow): update warning message

* test(review-workflows): add a test for too long name content type

* test(review-workflows): fix describe condition

* chore(review-workflows): rename variable and constant

* chore(review-workflows): rename constants

* test(review-workflows): update test content type name length

* feat(review-workflows): validate that the content type have rw activated

* feat(review-workflows): simplify the validation step

* Update packages/core/admin/ee/server/services/review-workflows/review-workflows.js

Co-authored-by: Marc <marc12info@gmail.com>

* Update packages/core/admin/ee/server/services/review-workflows/review-workflows.js

Co-authored-by: Marc <marc12info@gmail.com>

* chore: remove unused import

* test(review-workflows): update unit tests

* test: disable review workflows

---------

Co-authored-by: Marc <marc12info@gmail.com>
2023-06-01 10:17:00 +02:00
Alexandre BODIN
feced1d72b
Move api tests to root of repo with same structure (#16242) 2023-04-05 10:32:20 +02:00