Make the content kanban board work with REVISIONABLE entities
>>> [!note] Migrated issue <!-- Drupal.org comment --> <!-- Migrated from issue #3033859. --> Reported by: [ioana todea](https://www.drupal.org/user/3526833) >>> <h3>Current behavior:</h3> <ul> <li>Currently the Kanban board works only with Node entities.</li> </ul> <h3>Desired behavior:</h3> <ul> <li>The Kanban board should work with both Node entities and any other entities.</li> </ul> <h3>Restrictions:</h3> <ul> <li>The content moderation core module that is used by this module only works with revisionable entities, so this feature will only include this case. Other custom entities that are not revisionable will not be taken in consideration.</li> <li>Each custom entity that will be used on the Kanban board must have the following entity keys defined: status, created, type. The rest of the keys (e.g. entity id user id) can have any name because their values are retrieved dynamically.</li> <li>Each custom entity must have the entity links correctly defined in annotation, such as: add-form, edit-form and delete-form.</li> </ul> <h3>Functionality details:</h3> <ul> <li>Update the content kanban functionality to work with all revisionable entities.</li> <li>After applying this behaviour, all nodes and new entities that match the restriction criteria should appear in the Kanban board and behave normally.</li> <li>It is important to immediately run the Drupal updates after applying the patch in order to make the changes work properly with existing installations.</li> </ul> <h3>Description of the changes in code:</h3> <ul> <li>Updated all the queries to work dynamically with all the entities that are configured on the content moderation workflow type and update the structure of all processed data.</li> <li>Changed the structure of the &ldquo;NodeTypeConfig&rdquo; and the name of the class.</li> <li>Changed the callback for updating the workflow state on Kanban entries and added a new service EntityParamConverter for loading the entity based on the params given in the url.</li> <li>Updated the templates with the new data.</li> <li>Updated the Kanban Log entity, deleted 1 field and added 2 new fields.</li> <li>Did an update for the Kanban log to work with those 2 new fields and to have the old data in the new one.</li> <li>Changed the name of the functions and some parameters.</li> <li>Fix code sniffer errors and add dependency injection where was needed.</li> </ul>
issue