Add svg spritsheet support and Icon component #38
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Suite au passage à vite, on à plus de solution pour utiliser facilement une iconfont.
Du coup on en est arrivé à la conclusion que le mieux c'est d'utiliser une spritesheet svg.
Void à déjà mis ça en place sur Hiker en utilisant ce plugin vite.
Sauf que ce plugin est pas archi top parce que il fonctionne que quand JS est actif, et il inclut toute la spritesheet à la fin du HTML.
Du coup j'ai fait un peu de recherche et j'ai trouvé ce plugin qui fonctionne quand JS est désactivé et qui crée un vrai fichier pour la spritesheet. (Et qui peut aussi générer plusieurs spritesheet et permet l'utilisation dans le css si jamais on à besoin).
Je l'ai déjà mis en place sur Hiker Website et @voidgraphics m'a demandé de le mettre sur Laravel Preset.
J'en ai profité pour créer un composant
Icon
qu'on pourra mettre dans les composants réutilisables (Comme dans IconButton qui fonctionne avec un iconfont pour le moment).Il n'y a rien de particulier à savoir pour l'utiliser, juste qu'il faut faire
yarn build
pour générer la spritesheet. (Et du coup rebuild a chaque fois qu'on rajoute/modifier un icone mais ça c'est logique)Le seul truc notable c'est que pour le moment il y a un bug avec ce plugin ou le HMR ne fonctionne pas avec Laravel en mode dev. En attendant que ce bug soit fixé il y a un workaround en faisant du cache busting manuel et on pourra changer quand ce sera fix :))