Paris
Account created on 13 April 2012, over 13 years ago
  • Engagement Manager at Smile 
  • Business Unit Manager at Linagora 
#

Merge Requests

More

Recent comments

🇫🇷France pdureau Paris

In Profile entity & ProfileForm: from enable to enabled

Will be done in its own issue: 📌 Profile entity: From enable to status Active

🇫🇷France pdureau Paris

I will take the opportunity to remove this duplicate in tests/src/Kernel/DisplayBuilderTest.php:

#[CoversClass('\Drupal\display_builder\Entity\DisplayBuilder')]
#[CoversClass('\Drupal\display_builder\Entity\DisplayBuilder')]
🇫🇷France pdureau Paris

Not perfect, SSE is still fragile, but good enough for alpha5. At least, we cancelled the regression from 📌 Adopt Entity API for state mgmt, part 2: Move logic Active

Commit message with credits is here: https://new.drupal.org/contribution-record/11423227

🇫🇷France pdureau Paris

It may also be the opportunity of supporting the extra fields we are importing from Manage display or Layout Builder.

🇫🇷France pdureau Paris

Test feature:

  • Page Layout : OK, works as expected
  • View: OK, works as expected
  • Entity View: KO: Symfony\Component\Routing\Exception\RouteNotFoundException: Route "entity.entity_view_display.node.teaser" does not exist. in Drupal\Core\Routing\RouteProvider->getRouteByName() (line 214 of core/lib/Drupal/Core/Routing/RouteProvider.php).
  • Entity View Override: OK, no button because there is already the tabs

To discuss in a follow-up issue for beta1 (because changing the pluginId will alter config storage):

  • Wording: "Parent link" & "Allow a direct link in parent display."
  • Icon in button
  • Add title attribute to button.
🇫🇷France pdureau Paris

i have a weird freeze when i save an entity view display config.

It was a InstanceStorage::create() bug. Fixed

🇫🇷France pdureau Paris

To merge only if 📌 [1.0.0-beta1] Don't trigger useless requests and replace unchanged panels Active is merged with the "Remove previous use of current_island_id" commit.

🇫🇷France pdureau Paris

2 things to be careful about:

  • If the UIP2 AJAX issue is solved on 1.0.x (to be confirmed), it is not the case in ths MR so it may be a regression
  • the last commit Remove previous use of current_island_id is a bit bold with the removal of a badly understood mechanism:
-    if ($form_state->isRebuilding() && (!isset($options['current_island_id']) || $this->getPluginId() === $options['current_island_id'])) {
+    if ($form_state->isRebuilding()) {

if there is any doubt, let's revert it and move the change to a dedicated issue

🇫🇷France pdureau Paris

display_builder-1.0.0-alpha issue tag doesn't exist

🇫🇷France pdureau Paris

i have a weird freeze when i save an entity view display config.

🇫🇷France pdureau Paris

We will also do those non-relaetd tasks:

  • Merge InfoPanel into InstanceForm panel
  • Add readonly keywords to HistoryStep
🇫🇷France pdureau Paris

So, when do we want to block refresh:

  • BuilderPanel & LayersPanel: onRootDrop and onSlotDrop, but only on move (because we need the refresh to get the placeholder replacement when on add)
  • InstanceFormPanel: onInstanceFormChange and onInstanceUpdateButtonClick
  • ThirdPartySettings panels (UI Styles, UI Skins...)

Other islands triggering HTMX events but which needs to be refreshed:

  • HistoryButton (onUndo, onRedo, onClear)
  • MenuDelete (onClickDelete)
  • StateButtons (onSave, onReset, onRevert)
  • Menu (onClickDuplicate, onClickPaste)

Those islands don't trigger events:

  • ViewportSwitcher
  • ComponentLibraryPanel
  • BlockLibraryPanel
  • ...
🇫🇷France pdureau Paris

Wit the introduction of Instance entity in alpha5, it may be better to get rid of MockEntity.

🇫🇷France pdureau Paris

This may also the opportunity of tidying ApiController:

  • Move builder and island id to properties?
  • Merge update and thirdPartySettingsUpdate ?
🇫🇷France pdureau Paris

Work in progress. Green checkmark for saved not working yet.

🇫🇷France pdureau Paris

Can you provide guidance?

🇫🇷France pdureau Paris

Too late for alpha5

🇫🇷France pdureau Paris

Too late for alpha5

🇫🇷France pdureau Paris

As already shared, this task was done without confidence, step by step, without overview. I am not sure it works the expected way, but at least I have no fatal anymore.

Pipeline is KO, but it is about YML files I haven's touched:

fixtures/default_entity_view_full.yml                 1       0
fixtures/default_entity_view_teaser.yml               1       0
[x] Drupal.Files.EndFileNewline.TooMany                          2

https://git.drupalcode.org/project/display_builder_dev_tools/-/merge_req...

🇫🇷France pdureau Paris

In my personal opinion:

Overview page:

  • Component name
  • Description
  • Stories

Single page:

  • Everything, no accordion
🇫🇷France pdureau Paris

As the system grows over time, it is possible that more components become compatible with each other. And the decision of which component can go where depends on variables that are not known to SDC components.

As Laurrii, I would prefer to not add an alter hook. Let's keep PHP far away from SDC and theming in general.

I have changed my proposal from allowed to expected to show it is not enforced on lower levels, and tools will be able to decide the level of enforcement.

🇫🇷France pdureau Paris

Thansk for your feedbacks. Let's split them in 3 subjects.

Form experience

Disable the UI Patterns Source field in Entity Form Display by default. I think this is only possible in UI Patterns because it is a configuration in the field type.

Displays overrides tabs are automatically generated by EntityOverrideViewLocalTask. Do we make those configurable and managed as a field widgets instead?

>> We could add a checkbox to hide the tab and than we use field widget to make the field editable inside the edit form. Would be enough for me.

Those 2 points are related. It would be great to to find a single solution addressing for both.

Do we need to add messages like Layout builder does: " You are editing the layout template for all Basic page content items. " "You are editing the layout for this Basic page content item. Edit the template for all Basic page content items instead."

>> This is clear

Cool.

Translation

Test translations. See "️Translatability" in 📌 [PoC] Introduce a `ContentTypeTemplate` config entity Active

  • Translation is not clear for me. What do we support?
  • Synchronized or asynchron. Asynchron propably works already because this is a field. Do we support synchronized? (Which is actually the more relevant one from my point of view.)

So, let's explore the asynchron way. There are already some cool ideas. Let's discuss before starting the work. We can move the task to is dedicated alpha5 issue if needed.

Do we use Inline Blocks /Paragraphs for content so translation is mostly done in entities or do we use Components? Or both?

This will be addressed by adding/tweaking some sources with the content context. So, out of the scope of this issue.

Storage model

Unlimited vs limited cardinality: do we warn the user some sources positioned at the root may be removed at save? do we prevent the addition?

>> The simplest solution would be a "Help text" and filter out non mulit value cardinality

We need to go further than a help text. Moved to its own beta issue 📌 Cardinality constraint for slots Active

Production build 0.71.5 2024