Bootstrap 4: roadmap to first beta

Created on 4 November 2022, over 1 year ago
Updated 18 November 2023, 7 months ago

Problem/Motivation

Bootstrap 5 is being implemented, but let's not forget Bootstrap 4 which was the first public ui_suite β†’ implementation, so it needs some love.

Tasks for 4.0.0-alpha2

Big cleanup.

General:

  • Use CDN instead of asset composer (keep previous method in the doc)
    DONE: 357f23fe887e7c5170e15d56bf5f5db5760cb7bd
  • Fix dependencies: ui_patterns:ui_patterns_library instead of ui_patterns:ui_patterns
    DONE: 551238a5493f2938389b3358c4032ef044fcd314
  • Update to Bootstrap 4.6: https://blog.getbootstrap.com/2021/01/19/bootstrap-4.6.0/
    DONE: 315b8f91551ffcd566080b7c6d48a26e13ddc74c

Patterns:

  • Add Figure from https://getbootstrap.com/docs/4.6/content/figures/
    DONE: 0e402acc1e0a7cd019767c967ab73ecca58e3d4e
  • >> Cancelled because changing the heading level has an impact on the display
  • ⚠ Compatibility breaker. list_group: remove non-compliant #active & #disabled properties by splitting list_group & list_group_item
    DONE: 542bde6db1f82f96c549f5c8f487f5f546ed88f3

Patterns, reduce problematic PHP usage:

  • ⚠ Compatibility breaker. Carousel: remove _ui_suite_bootstrap_extract_carousel_image hook, split slides field between slides and captions, and don't forget to update the "carousel" example.
    DONE: 25c147c8a214c7ad0929332321728be0ab2816af
  • ⚠ Remove deprecated function (drupal_get_path) by refactoring with generic callbacks like what has been done in ui_suite_protocol.theme
    DONE: a516a07662ef9f1d958280ca477ba2bf13b1bad9

Styles:

  • Add p-* & m-* styles, because already used for previews and expected by users.
    DONE: 008a9f3feb698491eb576b2ffaaec61611c0d970
  • Add text-right previewed_with for spacing_padding_right
    DONE: 552222e74e6249d1a8c819d4fe36474467d7d22e
  • Compatiblity breaker Split border & border substractive
    DONE: df39ab32224e58a49961f1960f97d8717f870c6b

Examples:

  • ⚠ Remove 0, 1, 2.. string and make explicit when fake keys are used to overpass html_tag limitations.
    DONE: d85262dc519287a24af55bb2e92f0604c4e55ac3
  • Update carousel because grid_row component has changed
    DONE: 3dbb3f4e0945c8b9ebabbce82c19c611cceffd40

Tasks for 4.0.0-alpha3

Goal: from 70% to 80% of completion.

Patterns:

  • Backport table component from Bootstrap 5 (and its presenter template)
    DONE: 3f521af5326345796ad0503f93a66f97a97c52e1
  • Backport progress component from Bootstrap 5 (and its presenter template)
    DONE: 2ea5fb21c438991960dd446ad0f7bc0050b60075
  • Backport dropdown component from Bootstrap 5 (and introduce a presenter template for dropbutton-wrapper)
    WIP
  • Add spinner component
    DONE: 72d8153282b4953678bb502501a40bce56980afe
  • Add toast component
    DONE: 6b2452423ad809ea7ec24684b6266128bcf2a7c6 (but a JS issue)

Styles (after the next release of ui_styles):

Examples (after the next alpha release of u_example):

Tasks for 4.0.0-beta1

Goal: from 80% to 90% of completion.

Styles:

  • Add Clearfix, Float, Interactions, Overflow & Sizing

Goal: Big clean up, part 2.

Patterns:

  • Move scalar props from fields to settings: button.url, badge.url, media.image_url, list_group_item.url, pagination.current
    >> DONE: 5784d9ccd63a8ddf1cf1e1acf818252672a7ad87
  • Move other props from fields to settings, once ✨ Add links setting type Needs review is ready: breadcrumb.items, dropdown.menu, navbar.items and pagination.items

Patterns, reduce problematic PHP usage:

  • Move container to page.html.twig
  • Pagination: Convert current variable directly in Twig, once ✨ Add links setting type Needs review is ready
πŸ“Œ Task
Status

Active

Version

4.0

Component

Code

Created by

πŸ‡«πŸ‡·France pdureau Paris

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

Comments & Activities

Not all content is available!

It's likely this issue predates Contrib.social: some issue and comment data are missing.

Production build 0.69.0 2024