[META] Make Drupal CMS modules ready for Drupal Canvas
>>> [!note] Migrated issue
<!-- Drupal.org comment -->
<!-- Migrated from issue #3523400. -->
Reported by: [gábor hojtsy](https://www.drupal.org/user/4166)
>>>
<h3 id="summary-problem-motivation">Problem/Motivation</h3>
<p>With Drupal Canvas coming stable in Drupal CMS 2.0, modules used in Drupal CMS need to be either </p>
<ul>
<li>Compatible with Canvas</li>
<li>Considered not even needing to be compatible (only has UI outside of Canvas)</li>
<li>Accepted to be incompatible <em>for now</em> (only has UI outside of Canvas)</li>
<li>Eliminated from Drupal CMS due to incompatibility</li>
</ul>
<h4 id="summary-steps-reproduce">Steps to reproduce</h4>
<h3 id="summary-proposed-resolution">Proposed resolution</h3>
<h4>Modules that are verified to be already compatible</h4>
<ul>
<li>linkit (57455 sites)
<ul>
<li>Integrates with CKEditor and works already in Canvas, but has to be enabled on the text format.</li>
</ul>
</li>
<li>tagify (71571 sites)
<ul>
<li><span class="drupalorg-gitlab-issue-link project-issue-status-info project-issue-status-7"><a href="https://www.drupal.org/project/tagify/issues/3519652" title="Status: Closed (fixed)">#3519652: Integrate Tagify element with XB</a></span></li>
<li>Making good progress, only the Tagify Select widget remains.</li>
</ul>
</li>
<li>trash (73097 sites)
<ul>
<li>Functionality works as expected if enabled for page entities. Just needs a work to update the confirmation message to reflect this.</li>
<li><span class="drupalorg-gitlab-issue-link project-issue-status-info project-issue-status-1"><a href="https://www.drupal.org/project/canvas/issues/3530375" title="Status: Active">#3530375: Update deletion confirmation message for Canvas entities for compatibility with trash module</a></span></li>
</ul>
</li>
<li>simple_sitemap (83874 sites)
<ul>
<li>Config supports page entities and pages are included as expected.
</li>
</ul>
</li>
<li>editoria11y (59144 sites)
<ul>
<li><a href="https://www.drupal.org/project/editoria11y/releases/2.2.14">2.2.14 removes conflicts and enables checking in Canvas previews</a></li>
</ul>
</li>
</ul>
<h4>Modules that are not yet compatible</h4>
<ul>
<li>pathauto (315419 sites)
<ul>
<li>These issues are expected to make the pathauto widget work without further work from pathauto.</li>
<li><span class="drupalorg-gitlab-issue-link project-issue-status-info project-issue-status-4"><a href="https://www.drupal.org/project/canvas/issues/3525070" title="Status: Postponed">#3525070: [PP-1] Make `Page` entities compatible with pathauto</a></span></li>
<li><span class="drupalorg-gitlab-issue-link project-issue-status-info project-issue-status-7"><a href="https://www.drupal.org/project/experience_builder/issues/3481719" title="Status: Closed (fixed)">#3481719: Get Semi-coupled Checkbox form elements to work with the State API</a></span></li>
<li><span class="drupalorg-gitlab-issue-link project-issue-status-info project-issue-status-7"><a href="https://www.drupal.org/project/experience_builder/issues/3526130" title="Status: Closed (fixed)">#3526130: \Drupal\experience_builder\ClientDataToEntityConverter::setEntityFields doesn't work with booleans outside of boolean field</a></span></li>
</ul>
</li>
<li>metatag (251163 sites)
<ul>
<li>Must have (basic metatag works fine with this): <span class="drupalorg-gitlab-issue-link project-issue-status-info project-issue-status-15"><a href="https://www.drupal.org/project/canvas/issues/3531991" title="Status: Patch (to be ported)">#3531991: `Page` has limited built-in metatag features, disable advanced form fields there as initial stop-gap</a></span></li>
<li>In the future: more definition needed in terms of advanced Canvas metadata fields, but can launch initial version without this.</li>
<li>Nice to have: <span class="drupalorg-gitlab-issue-link project-issue-status-info project-issue-status-1"><a href="https://www.drupal.org/project/canvas/issues/3485742" title="Status: Active">#3485742: Allow content created in Drupal Canvas to be used in meta tags and schema.org vocabularies</a></span></li>
</ul>
</li>
<li>webform (215375 sites)
<ul>
<li>Webforms would be integrated as their own components at first.</li>
<li><span class="drupalorg-gitlab-issue-link project-issue-status-info project-issue-status-7"><a href="https://www.drupal.org/project/webform/issues/3526637" title="Status: Closed (fixed)">#3526637: Make webform blocks fully validatable and thus show as as dynamic component in Experience Builder</a></span></li>
</ul>
</li>
<li>search_api (124329 sites)
<ul>
<li><span class="drupalorg-gitlab-issue-link project-issue-status-info project-issue-status-1"><a href="https://www.drupal.org/project/canvas/issues/3462219" title="Status: Active">#3462219: [META] Support alternative renderings of prop data added for the 'full' view mode such as for search indexing or newsletters</a></span></li>
<li><span class="drupalorg-gitlab-issue-link project-issue-status-info project-issue-status-7"><a href="https://www.drupal.org/project/canvas/issues/3534466" title="Status: Closed (fixed)">#3534466: Integrate with Search API: index inputs of component instances that are populated using fields (SDC + code components)</a></span></li>
</ul>
</li>
<li>yoast_seo (68550 sites)</li>
<li>focal_point (76099 sites)
<ul>
<li>Either Canvas will integrate with this module as part of image optimization, or will provide the functionality some other way.</li>
</ul>
</li>
<li>easy_breadcrumb (86708 sites)
<ul>
<li>There is no special UI component, it just provides extra config for breadcrumbs. It will require being able to add the breadcrumbs block via Canvas, but the module itself does not need updating.
</li>
</ul>
</li>
<li>search_api_exclude (56786 sites)</li>
<li>simple_search_form (56754 sites)</li>
<li>coffee (62610 sites)
<ul>
<li><span class="drupalorg-gitlab-issue-link project-issue-status-info project-issue-status-1"><a href="https://www.drupal.org/project/coffee/issues/3526952" title="Status: Active">#3526952: Make coffee module work in Drupal Canvas</a></span></li>
</ul>
</li>
<li>redirect (214752 sites)
<ul>
<li>(Low priority) Has custom form alter for entity forms but this is not the primary method of managing redirects.</li>
</ul>
</li>
<li>scheduler (112188 sites)</li>
<li>scheduler_content_moderation_integration (59534 sites)</li>
<li>menu_link_attributes (82170 sites)</li>
<li>ai (60936 sites)
<ul>
<li>This is covered elsewhere.</li>
</ul>
</li>
<li>token_or (70906 sites)
<ul>
<li>Not sure how this applies if we are not using Metatag</li>
</ul>
</li>
</ul>
<h4>Modules that would be used in potential site templates</h4>
<p>These are only used by the Event content type. This feature will be taken over by site templates. TBC whether any of the site templates require this functionality.</p>
<ul>
<li>addtocal_augment (64770 sites)
</li>
<li>address (82397 sites)
</li>
<li>geofield (105848 sites)
</li>
<li>leaflet (75279 sites)
</li>
<li>smart_date (62545 sites)
</li>
</ul>
<h4>Modules that do not apply inside Canvas and/or the Canvas backend does not need to be compatible with</h4>
<ul>
<li>token (348132 sites)
<ul>
<li>Canvas would likely not want to use token module as such (not this UI, and tokens themselves are a core feature).</li>
</ul>
</li>
<li>dashboard (80115 sites)
<ul>
<li>Canvas is not considered the ideal UI to edit dashboards, otherwise there is no connection to Canvas.</li>
</ul>
</li>
<li>svg_image (88178 sites)
<ul>
<li>This creates a media type for SVG image, so should not need any special handling for Canvas, which integrates with media library.</li>
</ul>
</li>
<li>seo_checklist (56380 sites)
</li>
<li>search_api_autocomplete (95074 sites)
</li>
<li>project_browser (85883 sites)
</li>
<li>eca (79635 sites)
</li>
<li>robots.txt (73163 sites)
</li>
<li>sam (65771 sites)
</li>
<li>easy_email_express (56444 sites)
</li>
<li>automatic_updates (56843 sites)
</li>
<li>login_emailusername (58499 sites)
</li>
<li>bpmn_io (57649 sites)
</li>
<li>add_content_by_bundle (59184 sites)
</li>
<li>ai_agents (60328 sites)
</li>
<li>ai_image_alt_text (59840 sites)
</li>
<li>ai_provider_openai (59780 sites)
</li>
<li>ai_provider_anthropic (59614 sites)
</li>
<li>field_group (212935 sites)
</li>
<li>captcha (163489 sites)
</li>
<li>honeypot (144833 sites)
</li>
<li>sitemap (56143 sites)
</li>
<li>klaro (64385 sites)
</li>
<li>better_exposed_filters (57382 sites)
</li>
<li>selective_better_exposed_filters (56855 sites)
</li>
<li>eca_core (57480 sites)
</li>
</ul>
<h3 id="summary-ui-changes">User interface changes</h3>
<h3 id="summary-data-model-changes">Configuration changes</h3>
> Related issue: [Issue #3481719](https://www.drupal.org/node/3481719)
> Related issue: [Issue #3526521](https://www.drupal.org/node/3526521)
issue