Ajout d'un système de pages pour la barre de navigation #42
Labels
No Label
bug
duplicate
enhancement
help wanted
independant
invalid
module/autre
module/backend
module/desktop
module/docs
module/frontend
module/scripts
module/sesam-vitale
module/utils
open-source
question
to-triage
wontfix
No Milestone
No project
No Assignees
3 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: P4Pillon/Krys4lide#42
Loading…
Reference in New Issue
Block a user
No description provided.
Delete Branch "feat/8_implement_main_ui_part2"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Détails
Cette PR explore une organisation en "pages" pour le rendu des différents "onglets" de la navbar.
Contrairement à la PR précédente (#40), les composants ajoutés viennent de la bibliothèque Flowbite
En plus des pages, cette PR :
Chargement...
par desskeleton
(sorte de placeholder visuels)hx-swap-oob
pour changer le titre dynamiquementPourquoi ?
No response
Documentation
No response
A part l'import de la librairie par le CDN je n'ai rien vu de spécifique.
J'ai testé la branche localement en tout cas, ça marche nickel.
J'ai été surpris lorsque l'on clique plusieurs fois sur un des menu, ça fait un appel à chaque fois.
Sinon au niveau des templates je n'arrive pas trop à comprendre comment vous voulez travailler mais j'imaginais que l'on se fixe un template de base qui fait déjà pas mal de chose comme par exemple flowbite-admin-dashboard, pour que chacun puisse prendre des bouts quand il en a besoin.
@ -6,6 +6,8 @@
<script src="/assets/js/htmx.min.js"></script>
<script src="//unpkg.com/alpinejs" defer></script>
<link href="/assets/css/style.css" rel="stylesheet">
<link href="https://cdn.jsdelivr.net/npm/flowbite@2.5.1/dist/flowbite.min.css" rel="stylesheet" />
Librairie à importer directement dans le projet comme htmx
Tu as cramé ma flemme ^^
Je comptais procrastiner cette tâche à plus tard, mais ... ok, je vais le faire 😂
D'ailleurs j'ai vu que c'était pareil pour
alpinejs
mais j'ai pas voulu en parler vu que ce n'était pas dans cette DA 🙂current
?)Perso, je ne vois aucune utilité et avantage à s'appuyer sur un tel template. C'est, globalement, des composants flowbite standard et un thème tailwind. Ça revient presque à partir sur un ERP : on te fout plein de trucs dont t'as pas besoin dans les pattes, et tu te prends les pieds dedans dès que tu veux faire les trucs à ta manière ^^
Autant s'appuyer directement sur Flowbite pour récupérer des composants, et construire notre propre thème au fur et à mesure ?
Pourquoi nous ajoutons Flowbite ?
Flowbite est + une piste de solution pour des composants d'interface, qu'un choix définitif.
C'est une techno un peu plus "haut niveau" que tailwindcss, sans être aussi "opinionated" qu'un "template kit"/"UI Kit" qui fournit un ensemble de composants + haut niveau mais avec un thème graphique donné.
Pour le POC, ça fera assez bien l'affaire : c'est une source de composants assez large, en licence MIT, et ça nous permettra de créer assez rapidement des bouts d'interface répondant aux besoins, tout en nous permettant d'explorer l'intégration que ça implique, l'usage de tailwind, etc.
Pour le plus long terme, on verra avec les personnes en charge du design si Flowbite leur convient, si un UI Kit leur convient, ou si on va chercher un autre design system basé sur tailwind mais + aligné avec les ambitions design.
J'ai approve mais il faudrait qu'on créer un ticket pour changer les dépendances a du loca, comme a soulever @kosssi. Ca permettrai d'avoir un build plus reproductible qui dépend pas de ressources externe :)
Thx
dafae11c0a
toe084372b44
Je l'ai finalement fait dans cette PR
J'ai regardé rapidement et je confirme le comportement.
Dans
crates/app/templates/layout/nav/nav-menu-items.html
, j'ai trouvé une manière de gérer la situation en :href="#"
hx-disabled
conditionné àitem.current
pour désactiver la gestion du lien par htmxMais en l'état, ça casse la navigation, car le système de
current
n'est pas fonctionnel : quand on clic surCPS
par exemple, ça ne vient pas rafraichir le menu et changer le statutcurrent
.Gardons nous ça pour plus tard.