Add Color and Spacing block support to Drupal Blocks

Created on 15 April 2024, 9 months ago
Updated 10 May 2024, 8 months ago

It would be cool if drupal blocks had block support for Color and Spacing out of the box. Merge Request incoming 🙏

Feature request
Status

Fixed

Version

3.0

Component

Code

Created by

🇨🇦Canada drclaw

Live updates comments and jobs are added and updated live.
Sign in to follow issues

Merge Requests

Comments & Activities

  • Pipeline finished with Skipped
    about 1 year ago
    #36201
  • Issue created by @drclaw
  • 🇨🇦Canada drclaw

    drclaw changed the visibility of the branch 3441157-add-color-and to hidden.

  • 🇨🇦Canada drclaw

    drclaw changed the visibility of the branch 3441157-add-color-and to active.

  • 🇨🇦Canada drclaw

    drclaw changed the visibility of the branch 3441157-add-color-and to hidden.

  • Pipeline finished with Success
    9 months ago
    Total: 246s
    #147489
  • First commit to issue fork.
  • 🇵🇹Portugal marcofernandes

    I agree. I also added support for content blocks.

  • Pipeline finished with Success
    8 months ago
    #147849
  • Pipeline finished with Canceled
    8 months ago
    #147853
  • 🇵🇹Portugal marcofernandes

    Hmm.. it's going to need some tweaks in order to run the Layout processor.

  • 🇵🇹Portugal marcofernandes

    I think we also need to add a wrapper to the block markup (save function) in order to set the css classes and style attributes (useBlockProps) for color and spacing support. This means some adjustments to the processor also in order to render the block markup with that wrapper.

  • 🇨🇦Canada drclaw

    Oh yeah, HA I got so hyped on getting it to work in the editor I didn't even realize it wasn't working on the front-end of the site 😂

    I'll see what I can do!

  • Status changed to Needs work 8 months ago
  • Pipeline finished with Failed
    8 months ago
    Total: 218s
    #155853
  • Status changed to Needs review 8 months ago
  • 🇨🇦Canada drclaw

    Looks like we can just use the StyleEngine you added a few weeks ago to render the block styles on the server-side! 🙌

  • Pipeline finished with Failed
    8 months ago
    Total: 283s
    #155858
  • Pipeline finished with Skipped
    8 months ago
    #155881
  • Pipeline finished with Failed
    8 months ago
    #156700
  • Pipeline finished with Failed
    8 months ago
    Total: 351s
    #156705
  • Pipeline finished with Failed
    8 months ago
    Total: 321s
    #156706
  • 🇵🇹Portugal marcofernandes

    Yes, you can go for that approach.
    Still, since those blocks don't use useBlockProps.save() on their save() function, classes related to color (ex: has-background-color-white) won't be applied.
    Btw, I added some validations to the LayoutProcessor to handle those blocks that don't have any JSON info.

    Still thinking that instead of getting the block styles (StyleEngine) and alter the block render, it won't be better to add a wrapper to handle useBlockProps.save() and also add the JSON definition so LayoutProcessor can, well, process them. 🤔

  • 🇵🇹Portugal marcofernandes

    I added a wrapper on the save() function to hold any classes from Gutenberg (color, font size, alignment, etc) and then fetch those classes and add it to the block build array. Applied to both block types.

    Probably this is going to change when we implement the remaining processors (color, spacing, etc) but, for now it will do just fine ;)

  • Pipeline finished with Failed
    8 months ago
    Total: 304s
    #156751
  • Pipeline finished with Success
    8 months ago
    Total: 247s
    #156761
  • Pipeline finished with Success
    8 months ago
    Total: 242s
    #157184
  • Status changed to Fixed 8 months ago
  • 🇵🇹Portugal marcofernandes

    Merged. Thank you drclaw ;)

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

  • Pipeline finished with Failed
    8 months ago
    Total: 253s
    #171764
  • Pipeline finished with Failed
    8 months ago
    Total: 182s
    #171790
  • Pipeline finished with Failed
    8 months ago
    Total: 181s
    #171818
  • Pipeline finished with Failed
    8 months ago
    Total: 155s
    #171821
  • Pipeline finished with Failed
    8 months ago
    Total: 188s
    #171847
  • Pipeline finished with Failed
    8 months ago
    Total: 157s
    #171867
  • Pipeline finished with Failed
    8 months ago
    Total: 228s
    #171875
  • Pipeline finished with Failed
    6 months ago
    #212999
  • Pipeline finished with Skipped
    6 months ago
    #218699
  • Pipeline finished with Canceled
    5 months ago
    Total: 160s
    #234200
  • Pipeline finished with Failed
    5 months ago
    #234201
  • Pipeline finished with Skipped
    5 months ago
    #245633
  • Pipeline finished with Failed
    4 months ago
    Total: 514s
    #258282
  • Pipeline finished with Failed
    4 months ago
    Total: 400s
    #258283
  • Pipeline finished with Canceled
    4 months ago
    Total: 87s
    #258289
  • Pipeline finished with Failed
    4 months ago
    Total: 368s
    #258290
  • Pipeline finished with Failed
    4 months ago
    Total: 401s
    #258935
  • Pipeline finished with Success
    4 months ago
    Total: 408s
    #258942
  • Pipeline finished with Success
    4 months ago
    Total: 366s
    #258961
  • Pipeline finished with Success
    4 months ago
    Total: 357s
    #259034
  • Pipeline finished with Success
    3 months ago
    Total: 188s
    #297336
  • Pipeline finished with Success
    3 months ago
    Total: 208s
    #297963
  • Pipeline finished with Skipped
    3 months ago
    #301081
  • Pipeline finished with Failed
    3 months ago
    Total: 768s
    #305278
  • Pipeline finished with Failed
    3 months ago
    Total: 350s
    #305301
  • Pipeline finished with Success
    3 months ago
    Total: 627s
    #305308
  • Pipeline finished with Failed
    3 months ago
    Total: 613s
    #305322
  • Pipeline finished with Failed
    3 months ago
    Total: 332s
    #305357
  • Pipeline finished with Failed
    3 months ago
    Total: 648s
    #305366
  • Pipeline finished with Failed
    3 months ago
    Total: 599s
    #305391
  • Pipeline finished with Failed
    3 months ago
    Total: 693s
    #305420
  • Pipeline finished with Failed
    3 months ago
    Total: 564s
    #305653
  • Pipeline finished with Failed
    3 months ago
    Total: 620s
    #306180
  • Pipeline finished with Failed
    3 months ago
    Total: 596s
    #306297
  • Pipeline finished with Failed
    3 months ago
    Total: 353s
    #306356
  • Pipeline finished with Failed
    3 months ago
    Total: 681s
    #306365
  • Pipeline finished with Failed
    3 months ago
    Total: 402s
    #306732
  • Pipeline finished with Success
    3 months ago
    Total: 690s
    #306741
  • Pipeline finished with Failed
    2 months ago
    Total: 154s
    #310254
  • Pipeline finished with Success
    2 months ago
    Total: 159s
    #310273
  • Pipeline finished with Success
    2 months ago
    Total: 589s
    #311634
  • Pipeline finished with Failed
    2 months ago
    Total: 647s
    #311875
  • Pipeline finished with Canceled
    2 months ago
    Total: 325s
    #311903
  • Pipeline finished with Failed
    2 months ago
    Total: 759s
    #311907
  • Pipeline finished with Failed
    2 months ago
    Total: 619s
    #312647
  • Pipeline finished with Failed
    2 months ago
    Total: 640s
    #312666
  • Pipeline finished with Failed
    2 months ago
    Total: 627s
    #312686
  • Pipeline finished with Failed
    2 months ago
    Total: 639s
    #312700
  • Pipeline finished with Failed
    2 months ago
    Total: 688s
    #312767
  • Pipeline finished with Failed
    2 months ago
    Total: 1073s
    #312796
  • Pipeline finished with Success
    2 months ago
    Total: 902s
    #312812
  • Pipeline finished with Success
    2 months ago
    Total: 809s
    #312854
  • Pipeline finished with Success
    2 months ago
    Total: 794s
    #312887
  • Pipeline finished with Success
    2 months ago
    Total: 805s
    #312989
  • Pipeline finished with Canceled
    2 months ago
    Total: 834s
    #313011
  • Pipeline finished with Success
    2 months ago
    Total: 907s
    #313020
  • Pipeline finished with Success
    about 2 months ago
    Total: 143s
    #332040
  • Pipeline finished with Success
    about 2 months ago
    Total: 139s
    #332065
  • Pipeline finished with Success
    about 2 months ago
    Total: 323s
    #333321
  • Pipeline finished with Failed
    about 2 months ago
    Total: 139s
    #333444
  • Pipeline finished with Failed
    about 2 months ago
    Total: 142s
    #333448
  • Pipeline finished with Success
    about 2 months ago
    Total: 138s
    #333464
  • Pipeline finished with Success
    about 2 months ago
    Total: 175s
    #333945
  • Pipeline finished with Failed
    about 1 month ago
    Total: 159s
    #337294
  • Pipeline finished with Success
    about 1 month ago
    Total: 165s
    #337299
  • Pipeline finished with Skipped
    about 1 month ago
    #342263
  • Pipeline finished with Failed
    10 days ago
    Total: 270s
    #370232
  • Pipeline finished with Canceled
    9 days ago
    Total: 112s
    #371320
  • Pipeline finished with Success
    9 days ago
    Total: 295s
    #371323
Production build 0.71.5 2024