Added a requirement on layout_discovery module in the LayoutSource, seems good, keep going on review.
You cannot reproduce locally because you have layout_builder enabled.
I still have the issue:
Symfony\Component\DependencyInjection\Exception\ServiceNotFoundException: You have requested a non-existent service "plugin.manager.core.layout". Did you mean one of these: "plugin.manager.condition", "plugin.manager.views.sort"? in Drupal\Component\DependencyInjection\Container->get() (line 157 of core/lib/Drupal/Component/DependencyInjection/Container.php).
Drupal\display_builder\Plugin\UiPatterns\Source\LayoutSource::create() (Line: 21)
Drupal\Core\Plugin\Factory\ContainerFactory->createInstance() (Line: 85)
Drupal\Component\Plugin\PluginManagerBase->createInstance() (Line: 318)
Drupal\ui_patterns\SourcePluginManager->{closure:Drupal\ui_patterns\SourcePluginManager::createInstances():317}()
array_map() (Line: 316)
Drupal\ui_patterns\SourcePluginManager->createInstances() (Line: 187)
Drupal\ui_patterns\Element\ComponentFormBase::getSources() (Line: 368)
Drupal\ui_patterns\Element\ComponentSlotForm::buildAddSourceButton() (Line: 190)
Drupal\ui_patterns\Element\ComponentSlotForm::buildForm() (Line: 1065)
Drupal\Core\Form\FormBuilder->doBuildForm() (Line: 1128)
Drupal\Core\Form\FormBuilder->doBuildForm() (Line: 1128)
Drupal\Core\Form\FormBuilder->doBuildForm() (Line: 1128)
Drupal\Core\Form\FormBuilder->doBuildForm() (Line: 597)
Drupal\Core\Form\FormBuilder->processForm() (Line: 347)
Drupal\Core\Form\FormBuilder->buildForm() (Line: 130)
Drupal\display_builder\IslandPluginBase->build() (Line: 86)
Seems we call LayoutSource when out of layout context.
To reproduce:
- Disable layout_builder, layout_discovery (and possibly layout_options)
- Create a page layout
- Drag a component
- Check xhr request error
mogtofu33 → changed the visibility of the branch 3563204-settings-summary-rebase to hidden.
I added a link on a failing Playwright job on the right panel : External links > Playwright test report
So you can see the problem, it's a service seems you assume layout_discovery is enabled.
mogtofu33 → changed the visibility of the branch 3563204-implement-settings-summary to hidden.
Ok, Token source do not extend SourcePluginPropValue but directly SourcePluginBase, should we move the default summary there?
Strangely we lost the Token summary, I will try to investigate
30 was a bit too much for Display Builder in Layers panel, could be fix by the css there but so I thought 20 is good enough, with the Builder panel we have the whole content.
Some changes for review, use Symfony to truncate and htmlentites for textfield, because it should not receive html tags and this highlight them. Added truncate and strip_tags to token.
CI failing is not related to the code in this MR, will see if I can fix it, but probably a new branch is required.
Follow up work is on 📌 Replace LayersPanel::buildComponentSettingItem() by usage of PluginSettingsInterface::settingsSummary() Active
Sure, main work is on the ui_patterns side which give only the variant currently, let's create an issue there.
The UI icons do not need much and can work as it is.
That's interesting, the test is failing for Drupal 10.6 for missing icon twig function which was not yet in core.
Not sure the best approach, ignore previous or try to fix it.
Thanks for the report but it has been removed 1 week ago: https://git.drupalcode.org/project/display_builder/-/blob/1.0.x/composer...
Looking good, need more real tests.
For sure the window.addEventListener('htmx:load', triggerDrupalBehaviorsFromHtmxEvent); is way too much, and need to be replaced, will do some tryout on this issue.
Managing the tabs is more work, this feature request is simple and address only the content, which is a good start.
After merge we can have a follow up to hide the tabs.
Off course ComponentSource::settingsSummary() would be a good place, but as today it only add variant. So this is a quick win to have the config available in layer, and we can have a follow up to add it in UI Patterns.
Some Playwright tests can be flaky, but it's not the whole test, when you check the report it's only a small step.
And I am afraid there is something bigger here, something we may regret to ship in beta1
The HTMX part is not finished and messy, but it's not a problem as the js can be updated and refactored, for me not a blocker for beta1.
It works most of the time without SSE, and some refresh can fix some hang up.
Until then we have to break the problem, SSE will not work and makes the builder fail even without concurrent editing, do we release without or wait next year?
The Playwright test seems ok on local.
Our current attachBehaviors and HTMX core usage will need to be updated, but at least it works out of SSE.
So we probably need to decide which time frame we have to provide something we are confident in here.
mogtofu33 → made their first commit to this issue’s fork.