feat: #3620072 Re-export the Canvas component configs for the Canvas Icon Picker
Issue: https://www.drupal.org/project/rightup/issues/3620072
Re-exports five Canvas component configs against the converted theme, and rewrites the icon prop to the picker shape on every stored version, not only the active one:
| component | new active version | curated ids |
|---|---|---|
| badge | 60738022e738eef8 |
43 |
| button | 7c8b7b626a4fbd83 |
51 |
| icon | 9bc1e1a79ad3aca5 |
51 |
| icon-toggle | 89c883e11d4f832c |
50 |
| card-icon | 62345acf6ed14ba8 |
43 |
Rewriting the non-active stored versions is what does the work: content this recipe already placed edits through the picker rather than the old select, with no content re-pinning and no update hook, which matters because a theme cannot implement hook_update_N.
Each config gains canvas_icon_picker in its dependencies; options stays, because the other props on these components are still list_string.
This recipe does not install the module and does not set the packs: Varbase Admin Base does, in https://www.drupal.org/project/varbase_admin_base/issues/3620064. Land with the theme change, https://www.drupal.org/project/vartheme_bs5_rightup/issues/3620070.
Verified on a fresh Varbase 11 build applying this recipe during install: green, with every stored version of all five components on canvas_icon_picker/string, allowed_icon_ids matching the manifests, all five Canvas pages returning 200 anonymously, and the picker endpoints returning 403. Before this change the same build had the new active version on the picker but its stored versions still on options_select, which is exactly what this fixes.
The build's Error-level log entries all come from views.view.blog hardcoding the base theme namespace, which is unrelated and filed as https://www.drupal.org/project/varbase_blog_base/issues/3620071.
Files are re-encoded with Drupal's own Yaml::encode, so the diff is the real change rather than dumper reformatting: 1,228 added, 33 removed.
AI-Generated: Yes
Checkpoints:
- File an issue
- Addition/Change/Update/Fix
- Testing to ensure no regression
- Automated unit testing coverage
- Automated functional testing coverage
- UX/UI designer responsibilities
- Readability
- Accessibility
- Performance
- Security
- Developer Documentation
- User Guide Documentation
- Reviewed by human
- Code review by maintainers
- Full testing and approval
- Credit contributors
- Review with the product owner
- Release notes snippet
- Release