Skip to content

[#75029] Document Border Box List in Lookbook#23253

Merged
myabc merged 6 commits into
devfrom
implementation/75029-border-box-list-lookbook
May 21, 2026
Merged

[#75029] Document Border Box List in Lookbook#23253
myabc merged 6 commits into
devfrom
implementation/75029-border-box-list-lookbook

Conversation

@myabc

@myabc myabc commented May 18, 2026

Copy link
Copy Markdown
Contributor

Ticket

https://community.openproject.org/wp/75029

What are you trying to accomplish?

Documents Border Box List in Lookbook

Updates Border Box references to point to higher-level Border Box List component. Also removes old Border Box examples.

Screenshots

image

Merge checklist

  • Added/updated tests
  • Added/updated documentation in Lookbook (patterns, previews, etc)
  • Tested major browsers (Chrome, Firefox, Edge, ...)

@myabc myabc requested review from HDinger and Copilot May 18, 2026 15:28
@myabc myabc added this to the 17.5.x milestone May 18, 2026
@github-actions

github-actions Bot commented May 18, 2026

Copy link
Copy Markdown

Deploying openproject with PullPreview

Field Value
Latest commit ff22ca7
Job deploy
Status ✅ Deploy successful
Preview URL https://pr-23253-75029-border-box-ip-178-104-220-55.my.opf.run:443

View logs

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates Lookbook documentation to position BorderBoxListComponent as the recommended high-level component for structured list UIs, replacing the older lower-level Border Box docs/examples.

Changes:

  • Adds a dedicated Border Box List documentation page with anatomy, parameters, slots, variants, use cases, and example code.
  • Updates related Lookbook docs to reference Border Box List instead of the old Border Box component.
  • Removes the old OpPrimer::BorderBoxComponentPreview and collapsible example.

Reviewed changes

Copilot reviewed 7 out of 7 changed files in this pull request and generated no comments.

Show a summary per file
File Description
lookbook/previews/open_project/common/border_box_list_component_preview.rb Adds Lookbook display height metadata for the Border Box List preview.
lookbook/previews/op_primer/border_box_component_preview.rb Removes obsolete low-level Border Box preview class.
lookbook/previews/op_primer/border_box_component_preview/collapsible.html.erb Removes obsolete collapsible Border Box preview template.
lookbook/docs/components/border-box.md.erb Removes old Border Box documentation.
lookbook/docs/components/border-box-list.md.erb Adds new Border Box List documentation.
lookbook/docs/components/tables/border-box-table.md.erb Updates guidance to link to Border Box List for non-table content.
lookbook/docs/components/inset-box.md.erb Updates guidance to recommend Border Box List for more structured content.

@myabc

myabc commented May 18, 2026

Copy link
Copy Markdown
Contributor Author

This should probably wait for #23175 to be merged - so that we can cross-reference WorkPackageCardComponent.

Comment thread lookbook/docs/components/border-box-list.md.erb Outdated
@myabc myabc force-pushed the implementation/75029-border-box-list-lookbook branch from 9a1f37d to f8a5606 Compare May 20, 2026 17:52
@myabc myabc changed the base branch from dev to feature/71059-sprint-goals May 20, 2026 17:53
@myabc myabc marked this pull request as ready for review May 20, 2026 17:54
@myabc myabc force-pushed the implementation/75029-border-box-list-lookbook branch from f8a5606 to 8481335 Compare May 20, 2026 17:56
| `scheme` | `Symbol` | `:default` | Visual scheme. Use `:transparent` for list containers that should blend into their surrounding surface |
| `padding` | `Symbol` | `:default` | Row padding forwarded to the underlying `Primer::Beta::BorderBox`. Supports Primer BorderBox padding values such as `:condensed`, `:default`, and `:spacious` |
| `header_padding` | `Symbol` | `:inherit` | Header-only vertical padding override. Supports `:inherit`, `:condensed`, `:default`, and `:spacious` |
| `interactive` | `Boolean` | `false` | Announces counter and configured empty-state updates politely to assistive technologies |

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@bsatarnejad we're struggling to find a better name for this!

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@bsatarnejad We were thinking about aria_interactive or live_region_interactive to differentiate that clearly from existing aria attributes. Wdyt?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@HDinger @bsatarnejad let's address the API change in a follow up. In the meantime I've adjusted the documentation slightly.

Comment thread lookbook/docs/components/border-box-list.md.erb
Comment thread lookbook/docs/components/border-box-list.md.erb Outdated
@myabc myabc requested a review from psatyal May 20, 2026 18:13
@myabc myabc force-pushed the feature/71059-sprint-goals branch from adffea7 to 24ca5e6 Compare May 21, 2026 10:26
myabc added 4 commits May 21, 2026 12:28
Updates Border Box references to point to higher-level Border Box List
component. Also removes old Border Box examples.

https://community.openproject.org/wp/75029
Surfaces the keywords accepted by `with_header` and its sub-slots
(`with_description`, `with_action_button`, `with_menu`) in dedicated
tables so readers do not need to inspect the component source.

https://community.openproject.org/wp/75029
Drops the `title_arguments:` forward-reference to an `id` defined later
in the block. The `aria-describedby` wiring is an advanced pattern that
cluttered an introductory example.
Mentions that `with_empty_state` renders a `Primer::Beta::Blankslate`
and accepts `title:`, `description:`, and `icon:` keywords. Bumps the
work-package preview from 2 to 3 items for visual consistency with the
other preview scenarios.
@myabc myabc force-pushed the implementation/75029-border-box-list-lookbook branch from b8fc77c to ff22ca7 Compare May 21, 2026 10:28
@myabc myabc changed the base branch from feature/71059-sprint-goals to dev May 21, 2026 10:29

@HDinger HDinger left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks very good 👍 👏 Thanks for taking the time 🙇 I only have very small remarks

@@ -0,0 +1,192 @@
The Border Box List component displays compact, structured list items with

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nitpick: I prefer the technical component name but we don't do that consistently so feel free to ignore that.

Suggested change
The Border Box List component displays compact, structured list items with
The BorderBoxList displays compact, structured list items with

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

SHouldn't it be BorderBoxListComponent then?

Comment thread lookbook/docs/components/border-box-list.md.erb Outdated
Comment thread lookbook/docs/components/border-box-list.md.erb Outdated
| `scheme` | `Symbol` | `:default` | Visual scheme. Use `:transparent` for list containers that should blend into their surrounding surface |
| `padding` | `Symbol` | `:default` | Row padding forwarded to the underlying `Primer::Beta::BorderBox`. Supports Primer BorderBox padding values such as `:condensed`, `:default`, and `:spacious` |
| `header_padding` | `Symbol` | `:inherit` | Header-only vertical padding override. Supports `:inherit`, `:condensed`, `:default`, and `:spacious` |
| `interactive` | `Boolean` | `false` | Announces counter and configured empty-state updates politely to assistive technologies |

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@bsatarnejad We were thinking about aria_interactive or live_region_interactive to differentiate that clearly from existing aria attributes. Wdyt?

Comment thread lookbook/docs/components/border-box-list.md.erb
Address follow-up review comments by using the component name, clarifying interactive ARIA behavior, and grouping usage guidance.
@myabc myabc merged commit 1028224 into dev May 21, 2026
1 check passed
@myabc myabc deleted the implementation/75029-border-box-list-lookbook branch May 21, 2026 13:13
@github-actions github-actions Bot locked and limited conversation to collaborators May 21, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Development

Successfully merging this pull request may close these issues.

3 participants