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

coreui / coreui-pro / 33621628573
94%
main: 94%

Build:
Build:
LAST BUILD BRANCH: v6-dev
DEFAULT BRANCH: main
Ran 02 Sep 2026 10:53AM UTC
Jobs 1
Files 68
Run time 1min
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

02 Sep 2026 10:51AM UTC coverage: 93.25% (+0.02%) from 93.232%
33621628573

push

github

web-flow
fix: release listeners, timers and generated DOM on dispose in the pickers, rating, focus trap, sidebar and navigation (#1051)

`BaseComponent.dispose()` only removes the listeners namespaced on the
component's own element, so everything a component hangs on other elements,
or registers without its namespace, survives `dispose()`, keeps the instance
reachable from the event registry and throws once the fields are nulled.

- DatePicker, DateRangePicker, DateTimePicker, TimePicker: `dispose()` now
  removes the click listeners on the popup menu, the indicator and the
  cleaner (and the `focusin` listeners on the two range fields), and removes
  the field, cleaner, indicator and separator it appended, so a second
  `new Picker(el)` builds one set of controls instead of two.
  `appendControlGroupField` returns the node it appended for that.
- Calendar: `_updateCalendar` runs its focus callback synchronously — the
  grid is rebuilt synchronously, so the 1 ms timer only opened a window in
  which `dispose()` left the callback running on nulled fields. `dispose()`
  clears the panels and classes it built, so re-initialising the same
  element no longer stacks panels.
- PasswordStrength: the `input`/`change` listeners on the paired field carry
  the component namespace, so `dispose()` removes only its own handlers
  instead of every `input` listener on that field.
- Rating: the delegated listeners are registered once; `update()` and
  `reset()` no longer stack a fresh set (events fired N+1 times). The
  per-item tooltips are disposed by `update()`, `reset()` and `dispose()`.
- FocusTrap: the document listeners are bound per instance and only those
  are removed, so two active traps no longer strip each other's handlers.
- Sidebar: disposing a sidebar shown on mobile disposes the backdrop and
  restores body scroll.
- Navigation: drop the extra `Data.set` on the raw constructor argument
  (a selector string left an entry no `dispose()` could remove) and the
  ... (continued)

4777 of 5364 branches covered (89.06%)

Branch coverage included in aggregate %.

63 of 64 new or added lines in 10 files covered. (98.44%)

1 existing line in 1 file now uncovered.

9135 of 9555 relevant lines covered (95.6%)

404.22 hits per line

Uncovered Changes

Lines Coverage ∆ File
1
79.17
-1.68% js/src/util/form-control-group.ts

Coverage Regressions

Lines Coverage ∆ File
1
64.2
-1.05% js/src/navigation.ts
Jobs
ID Job ID Ran Files Coverage
1 33621628573.1 02 Sep 2026 10:53AM UTC 68
93.25
GitHub Action Run
Source Files on build 33621628573
  • Tree
  • List 68
  • Changed 12
  • Source Changed 11
  • Coverage Changed 12
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #33621628573
  • 40003667 on github
  • Prev Build on v6-dev (#33621622545)
  • Next Build on v6-dev (#33621617807)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc