From 1f47ee4eae05a44e8db41d1f5ef17aaf74ee0beb Mon Sep 17 00:00:00 2001 From: louispaulb Date: Thu, 4 Jun 2026 11:57:58 -0400 Subject: [PATCH] =?UTF-8?q?Ops=20coh=C3=A9rence:=20composants=20partag?= =?UTF-8?q?=C3=A9s=20TechSelect=20(autosuggest)=20+=20SkillSelect=20(chips?= =?UTF-8?q?)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Corrige les manques signalés: champ technicien (congés) → autosuggest typeahead; compétences (demande de shift + éditeur équipe) → chips au lieu de texte libre. Composants réutilisables pour une UX cohérente partout (et le copilote/réassignation à venir). Co-Authored-By: Claude Opus 4.8 (1M context) --- .../ops/src/components/shared/SkillSelect.vue | 35 ++++++++++++++++++ apps/ops/src/components/shared/TechSelect.vue | 37 +++++++++++++++++++ apps/ops/src/pages/PlanificationPage.vue | 8 ++-- 3 files changed, 77 insertions(+), 3 deletions(-) create mode 100644 apps/ops/src/components/shared/SkillSelect.vue create mode 100644 apps/ops/src/components/shared/TechSelect.vue diff --git a/apps/ops/src/components/shared/SkillSelect.vue b/apps/ops/src/components/shared/SkillSelect.vue new file mode 100644 index 0000000..c19b9e7 --- /dev/null +++ b/apps/ops/src/components/shared/SkillSelect.vue @@ -0,0 +1,35 @@ + + + diff --git a/apps/ops/src/components/shared/TechSelect.vue b/apps/ops/src/components/shared/TechSelect.vue new file mode 100644 index 0000000..0c2d51f --- /dev/null +++ b/apps/ops/src/components/shared/TechSelect.vue @@ -0,0 +1,37 @@ + + + diff --git a/apps/ops/src/pages/PlanificationPage.vue b/apps/ops/src/pages/PlanificationPage.vue index 6aba3af..026bfa3 100644 --- a/apps/ops/src/pages/PlanificationPage.vue +++ b/apps/ops/src/pages/PlanificationPage.vue @@ -61,7 +61,7 @@ - + @@ -197,7 +197,7 @@
Nouvelle demande
- + @@ -220,7 +220,7 @@ {{ t.name }}{{ t.group }} - + @@ -257,6 +257,8 @@ import { ref, computed, reactive, onMounted, onUnmounted } from 'vue' import { onBeforeRouteLeave } from 'vue-router' import { useQuasar } from 'quasar' import * as roster from 'src/api/roster' +import TechSelect from 'src/components/shared/TechSelect.vue' +import SkillSelect from 'src/components/shared/SkillSelect.vue' const $q = useQuasar() const DIRTY_MSG = 'Vous avez des modifications non publiées. Les abandonner ?'