Ajoute des packs d'emojis dedies par canal au selecteur d'emojis des messages C411, avec preselection automatique. Packs disponibles : Audio, Video, Ebook, Application, Jeux video, XXX (NSFW).
Ajoute des packs d'émojis dédiés par canal au sélecteur d'émojis des messages de c411.org, avec présélection automatique quand on est dans un canal couvert. Six packs couvrent aujourd'hui les principaux canaux thématiques.
Le sélecteur d'émojis natif du chat C411 propose quatre onglets génériques : Visages, Cœurs, Populaires, Gestes. Ils couvrent l'essentiel de la conversation courante, mais quand on discute dans un canal thématique (Audio, Ebook, Vidéo…), on aimerait bien avoir des émojis adaptés au contexte.
Sur les canaux couverts par un pack, le script injecte un onglet supplémentaire en première position dans le sélecteur d'émojis, et il est présélectionné à l'ouverture - donc le premier clic affiche directement la grille thématique.
Packs disponibles :
D'autres packs pourront être ajoutés au fil des suggestions de la communauté.
Le comportement est identique entre :
Les onglets natifs restent accessibles : un clic sur Visages, Cœurs, etc. bascule normalement vers la grille native ; un nouveau clic sur l'onglet du pack ramène la grille thématique.
Hors des canaux couverts, le script est totalement invisible - aucun onglet ajouté, aucun comportement modifié.
/messages?channel=13 et son équivalent plein écran
/messages/fullscreen?channel=13. Aucun effet ailleurs sur le site,
aucune requête réseau hors interaction utilisateur.display:none) quand
le pack est actif. Conséquence : les onglets natifs restent
pleinement fonctionnels - on bascule entre la grille du pack et la
grille native sans casser le rendu Vue.MutationObserver global détecte chaque ouverture du picker (sur
un canal éligible) et y injecte l'onglet - l'idempotence est
garantie par un attribut marqueur, donc pas de doublon en cas de
re-render.<textarea> puis un
évènement input est émis - Vue voit la modification comme une
saisie clavier normale, le bouton « Envoyer » s'active, etc.POST sur
/api/messages/channels/{channelId}/messages/{messageId}/reactions
avec le token CSRF de la session (récupéré dans le <meta> SSR
injecté par Nuxt). Le picker se referme automatiquement après
succès.{ channelId: { name, emojis } }. Pour ajouter un pack à un autre
canal, il suffit d'ajouter une entrée - la logique d'injection est
mutualisée.Le script est organisé en modules distincts (config, utilitaires,
client API, injection picker, observer SPA) puis concaténé en un seul
fichier par un script de build qui valide la syntaxe via node --check
avant chaque artefact.
Aucune dépendance externe. Le code est lisible, commenté en français, et placé sous licence MIT - tu peux l'inspecter, le forker ou le modifier librement.
Les packs #Vidéo, #Ebook, #Application, #Jeux vidéo et #XXX (NSFW) ont été proposés par Cbo (membre de la communauté C411). Merci à lui pour ce travail de curation thématique.
Utiliser l'onglet Feedback ou Discussions de cette page GreasyFork. Les suggestions de packs (canal + liste d'émojis) sont les bienvenues.