Require `ContentTemplate`s to have at least one `dynamic` or `host-entity-url` prop source
>>> [!note] Migrated issue <!-- Drupal.org comment --> <!-- Migrated from issue #3541054. --> Reported by: [tedbow](https://www.drupal.org/user/240860) Related to !216 >>> <h3 id="overview">Overview</h3> <p>Originally Content Templates were required have at least 1 dynamic prop source.</p> <p>It was enforce by the schema </p> <pre>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ComponentTreeMeetRequirements:<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; inputs:<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; absence:<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; - adapter<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # This tree MUST contain at least one dynamic prop source, or it's not much of a template;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # it's just presenting static data.<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; presence:<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; - dynamic<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; - host-entity-url</pre><p> but this meant that in many issues in <span class="drupalorg-gitlab-issue-link drupalorg-gitlab-link-wrapper"><a href="https://git.drupalcode.org/project/canvas/-/work_items/3541000" class="drupalorg-gitlab-link">https://git.drupalcode.org/project/canvas/-/work_items/3541000</a></span> were blocked by this requirement.<br> Because these were not done<br> <span class="drupalorg-gitlab-issue-link drupalorg-gitlab-link-wrapper"><a href="https://git.drupalcode.org/project/canvas/-/work_items/3513590" class="drupalorg-gitlab-link">https://git.drupalcode.org/project/canvas/-/work_items/3513590</a></span><br> <span class="drupalorg-gitlab-issue-link project-issue-status-info project-issue-status-7"><a href="https://www.drupal.org/project/experience_builder/issues/3510896" title="Status: Closed (fixed)">#3510896: Add a new internal HTTP API for candidate `DynamicPropSource`s to enable a `ContentTemplate` UI</a></span></p> <p>It also allowed<br> <span class="drupalorg-gitlab-issue-link drupalorg-gitlab-link-wrapper"><a href="https://git.drupalcode.org/project/canvas/-/work_items/3541021" class="drupalorg-gitlab-link">https://git.drupalcode.org/project/canvas/-/work_items/3541021</a></span><br> <span class="drupalorg-gitlab-issue-link drupalorg-gitlab-link-wrapper"><a href="https://git.drupalcode.org/project/canvas/-/work_items/3541031" class="drupalorg-gitlab-link">https://git.drupalcode.org/project/canvas/-/work_items/3541031</a></span><br> which were the first 2 issue creating the UI to be completed without solving all the dynamic link problem</p> <h3 id="proposed-resolution">Proposed resolution</h3> <p>Add back enforcement and the test coverage that was removed in <span class="drupalorg-gitlab-issue-link drupalorg-gitlab-link-wrapper"><a href="https://git.drupalcode.org/project/canvas/-/work_items/3541021" class="drupalorg-gitlab-link">https://git.drupalcode.org/project/canvas/-/work_items/3541021</a></span><br> There was test MR that shows just the changes that need to reversed <a href="https://git.drupalcode.org/project/experience_builder/-/merge_requests/1438">https://git.drupalcode.org/project/experience_builder/-/merge_requests/1438</a></p> <h3 id="ui-changes">User interface changes</h3> > Related issue: [Issue #3510896](https://www.drupal.org/node/3510896)
issue