feat(domain,frontend): remplace le catalogue d'icônes projet par des emojis Unicode système — #345 (QA verte)
Reprend à zéro la liste des icônes projet: catalogue d'emojis Unicode rendus par la police système, sans embarquer d'assets graphiques propriétaires. - domain: variante `emoji` ajoutée à ProjectIconSet (serde kebab-case) - ports TS: union ProjectIconSet alignée avec "emoji" - frontend: catalogue réécrit en 7 groupes (smileys, nature, food, activities, travel, objects, symbols), registres légaux et métadonnées supprimés, assets SVG projet retirés (angular.svg, NOTICE.md) - watermark CLI custom: rendu emoji direct avec libellé de repli dérivé du nom de dossier du cwd - i18n FR/EN des groupes du picker et tests mis à jour (domain settings, adapter projet, picker, panneau settings, chat custom) Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@ -45,6 +45,7 @@ fn language_roundtrips_as_stable_codes_and_rejects_unknown_values() {
|
||||
#[test]
|
||||
fn project_icon_roundtrips_for_every_known_set() {
|
||||
for (set, wire) in [
|
||||
(ProjectIconSet::Emoji, "emoji"),
|
||||
(ProjectIconSet::Devicon, "devicon"),
|
||||
(ProjectIconSet::SimpleIcons, "simple-icons"),
|
||||
(ProjectIconSet::Lucide, "lucide"),
|
||||
@ -64,6 +65,19 @@ fn project_icon_roundtrips_for_every_known_set() {
|
||||
}
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn legacy_project_icon_sets_remain_accepted() {
|
||||
for wire in ["devicon", "simple-icons", "lucide", "idea"] {
|
||||
let icon: ProjectIconRef = serde_json::from_value(serde_json::json!({
|
||||
"set": wire,
|
||||
"name": "legacy-icon"
|
||||
}))
|
||||
.unwrap();
|
||||
|
||||
assert_eq!(icon.name(), "legacy-icon");
|
||||
}
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn project_icon_rejects_unknown_sets_and_unstable_or_oversized_names() {
|
||||
assert!(
|
||||
|
||||
Reference in New Issue
Block a user