Problem/Motivation

The lb_plus module is refactoring how nested layouts work — replacing the path-based nestedStoragePath system with a UUID-based NestedAwareSectionStorage decorator. This eliminates the need to thread a nested storage path through routes, JS, and forms.

Proposed resolution

  • Move edit_plus_lb functionality (the Change tool's UpdateBlockForm, routing, and the block properties form alter) into edit_plus core, registered conditionally when lb_plus is available.
  • Replace the EntityConverter param converter decorator with a lighter EditPlusTempstoreActivationChecker that integrates with tempstore_plus's activation checker API.
  • Update BlockPropertiesEvent and LayoutBuilderBlockFormAlter to use lb_plus's new NestedSectionStorageInterface instead of the removed SectionStorageHandler.
  • Remove nestedStoragePath URL handling from JS — nested routing is now handled transparently by lb_plus.
  • Deprecate edit_plus_lb with an update hook to auto-uninstall.

API changes

  • BlockPropertiesEvent constructor signature changed — accepts a single SectionStorageInterface instead of two OverridesSectionStorage parameters. getSectionStorage() replaces getMainSectionStorage() / getCurrentSectionStorage().
  • edit_plus.param_converter.entity service replaced by edit_plus.activation_checker.

Comments

tim bozeman created an issue. See original summary.

  • tim bozeman committed 742e440d on 2.3.x
    feat: #3576286 Refactor nested layout support
    
    By: tim bozeman
    
tim bozeman’s picture

Status: Needs work » Fixed

Now that this issue is closed, review the contribution record.

As a contributor, attribute any organization that helped you, or if you volunteered your own time.

Maintainers, credit people who helped resolve this issue.

Status: Fixed » Closed (fixed)

Automatically closed - issue fixed for 2 weeks with no activity.