feat: #3619736 Use the whole Bootstrap Icons pack for the icon props
Follow-up on #3619736, on top of the merged work.
Badge, Button, Icon and Card Icon still carried a hand-kept enum of icon ids (43, 51, 51 and 43). Bootstrap Icon and Icon Toggle already dropped theirs. This drops the remaining four and keeps x-canvas-icon, so the picker offers the whole Bootstrap Icons pack.
- Removes 384 lines from the manifests.
- Lets Varbase Starter drop 188
allowed_icon_idsentries from its exported config. icon_sizekeeps its enum; those are utility classes, not icon ids.
Existing content stays valid. The Twig guards on icon is not empty and icon != 'none', so stored none values keep rendering.
Verified on Drupal 11.4 with Canvas 1.10.1: the Button picker goes from 51 icons to 2078, rocket (outside the old list) stores and renders, and the shipped pages keep their icons.
Two things to land with it:
- Needs Canvas Icon Picker #3619785. A prop with no allow list silently discards every icon change without it, which already affects Bootstrap Icon and Icon Toggle on this branch.
- Dropping an
enumrehashes the component version, so content pinned to the old hash disappears from the Canvas editor until the stored versions are rewritten. Varbase Starter #3619772 carries that migration.
Pipeline run locally with gitlab-ci-local: build, eslint, stylelint and cspell all pass.
This merge request was written with AI assistance, per the Drupal AI policy.
Remaining tasks
- File an issue about this project
- Addition/Change/Update/Fix to this project
- Testing to ensure no regression
Automated unit/functional testing coverage— manifest-only change, covered by the existing component discovery and install testsDeveloper Documentation support on feature change/addition—AGENTS.mdalready documentsx-canvas-iconUser Guide Documentation support on feature change/addition— the picker looks the same, it just offers more iconsUX/UI designer responsibilities— no visual changeAccessibility and Readability— no markup change- Reviewed by a human
- Code review by maintainers
- Full testing and approval
- Credit contributors
- Review with the product owner
- Update Release Notes and Update Helper on new feature change/addition
- Release