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

coreui / coreui-pro / 36699251031
96%
main: 94%

Build:
Build:
LAST BUILD BRANCH: v6-dev
DEFAULT BRANCH: main
Ran 30 Sep 2026 09:57AM UTC
Jobs 1
Files 76
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

30 Sep 2026 09:55AM UTC coverage: 95.285% (+0.001%) from 95.284%
36699251031

push

github

web-flow
fix(Combobox): sanitize the caret icon (#1472)

* fix(Combobox): sanitize the caret icon

Combobox inserted caretIcon with insertAdjacentHTML as given, so an icon read from data-coreui-caret-icon kept its event handlers: <img src=x onerror=...> ran its script in Chromium. The icon now goes through sanitizeByConfig like the icons of Chip, NumberInput, PasswordInput and the pickers, and Combobox defaults allowList to SVGAllowlist as they do, so the default SVG caret survives; the labels rendered from items are sanitized against the same list. The icon is parsed in a template and its first element becomes the caret, so an icon of which nothing survives draws no caret instead of marking the toggle's last child as one. sanitize: false keeps the icon as given. The options table names the new default.

* fix(Combobox): sanitize the caret against the SVG allow list only

The first version sanitized the caret with the Combobox's own allowList and moved that default to SVGAllowlist. That changed what html labels accept, split Combobox from ListBox, Autocomplete and MultiSelect, and a page that passed its own allowList for the labels lost the default caret. The caret is now sanitized the way MultiSelect and Autocomplete sanitize their picker icon, with { ...config, allowList: SVGAllowlist }, and allowList keeps its DefaultAllowlist default for the labels.

The icon's last element becomes the caret and every node of the icon is inserted, as before, so an icon with a visually hidden text in front of the SVG keeps the SVG as its caret. SVGAllowlist now allows xlink:href on use, the sprite form the icons docs use, which the caret rendered before it was sanitized; the URL check still removes a javascript: reference there.

* chore: raise the coreui.esm.js budget for the caret sanitizer

Sanitizing the Combobox caret against SVGAllowlist adds 48 B gzip to coreui.esm.js (zlib level 9, base 77e61d7b2 against this branch), and the base already sat at the 147.75 KB ceilin... (continued)

6278 of 6833 branches covered (91.88%)

Branch coverage included in aggregate %.

6 of 6 new or added lines in 1 file covered. (100.0%)

11346 of 11663 relevant lines covered (97.28%)

864.71 hits per line

Jobs
ID Job ID Ran Files Coverage
1 36699251031.1 30 Sep 2026 09:57AM UTC 76
95.29
GitHub Action Run
Source Files on build 36699251031
  • Tree
  • List 76
  • Changed 2
  • Source Changed 2
  • Coverage Changed 1
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #36699251031
  • 912690f5 on github
  • Prev Build on v6-dev (#36695145655)
  • Next Build on v6-dev (#36700012811)
  • 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