• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

MushroomObserver / mushroom-observer / 26131007222
96%
main: 96%

Build:
Build:
LAST BUILD BRANCH: jdc-rubocop-rails-2-35-3
DEFAULT BRANCH: main
Ran 19 May 2026 11:18PM UTC
Jobs 1
Files 1001
Run time 2min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

19 May 2026 11:14PM UTC coverage: 96.46%. Remained the same
26131007222

Pull #4303

github

nimmolo
Modal: knobs for header/controller/body_class; refactor Confirm + Spinner

Extends `Components::Modal` with three props so the two remaining
hand-rolled singleton modals (ModalConfirm, ModalProgressSpinner) can
compose Modal instead of inlining their own `.modal > .modal-dialog
> .modal-content` markup. Per the Modal docstring follow-up note,
this finishes the "predate this and inline their own modal markup"
cleanup.

Why central composition: every MO modal goes through one source of
truth for chrome styling. A future BS3 → BS4 / BS5 migration touches
`Components::Modal` once, not N hand-rolled modals.

New Modal props:

- `controller:` (String, default "modal") — Stimulus controller wired
  to the modal root. ModalConfirm uses "confirm-modal" (the Turbo
  confirm-replacement dialog has its own controller that mutates the
  title text and confirm-button action target at runtime).
- `header:` (Boolean, default true) — when false, skip rendering the
  `.modal-header` div entirely. ModalConfirm renders its title inside
  `.modal-body` so the Stimulus controller can target it without
  also tracking a header element; ModalProgressSpinner has no title
  at all. aria-labelledby is still emitted on the root (point it at
  the in-body element via `title_id:`).
- `body_class:` (String, default nil) — extra CSS classes appended
  to `.modal-body`. ModalConfirm wants `py-4`, ModalProgressSpinner
  wants `text-center`.

Refactored components:

- ModalConfirm: composes Modal with `header: false`,
  `controller: "confirm-modal"`, `body_class: "py-4"`,
  `title_id: "mo_confirm_title"`. Renders the title `<h4>` + buttons
  via with_body / with_footer slots.
- ModalProgressSpinner: composes Modal with `header: false`,
  `dialog_class: "modal-dialog modal-sm"`, `body_class: "text-center"`,
  `body_id: "modal_progress_spinner_body"`,
  `title_id: "modal_progress_spinner_caption"`, plus extra_data for
  the non-dismissible settings (keyboard: false, backdrop: static)
  a... (continued)
Pull Request #4303: Modal: knobs for header/controller/body_class; refactor Confirm + Spinner

25 of 25 new or added lines in 3 files covered. (100.0%)

38637 of 40055 relevant lines covered (96.46%)

667.03 hits per line

Jobs
ID Job ID Ran Files Coverage
1 26131007222.1 19 May 2026 11:18PM UTC 1001
96.46
GitHub Action Run
Source Files on build 26131007222
  • Tree
  • List 1001
  • Changed 3
  • Source Changed 3
  • Coverage Changed 3
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #26131007222
  • Pull Request #4303
  • PR Base - main (#26118402082)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc