4646 <th :class =" sortingClass('id', params)" @click =" sort('id')" >#</th >
4747 <th :class =" sortingClass('title', params)" @click =" sort('title')" >Titre</th >
4848 <th :class =" sortingClass('status', params)" @click =" sort('status')" >Statut</th >
49- <th >Notes</th >
5049 <th >Assigné à</th >
50+ <th style =" width : 100px " :class =" sortingClass('priority', params)" @click =" sort('priority')" >Priorité</th >
5151 <th :class =" sortingClass('date', params)" @click =" sort('date')" >Date</th >
5252 </tr >
5353 </thead >
6464 <StarIcon class =" size-1 text-status-in_progress me-1" v-if =" bug.is_followed_by_me" />
6565 {{ bug.title }}
6666 </Link >
67- <small class =" text-secondary" >{{ getPriorityObject(bug.priority)?.extended_label}}</small >
67+
68+ <small class =" text-secondary" ><ChatBubbleLeftIcon class =" size-1" /> {{nb_notes_labels(bug)}}</small >
6869
6970 </p >
7071 </td >
7172 <td class =" align-middle" >
7273 <BagdeStatusBug :bug =" bug" />
7374 </td >
74-
75- <td class =" text-secondary text-sm text-center align-middle" ><span class =" badge text-bg-secondary rounded-pill" >{{nb_notes(bug.bug_comments_count)}}</span ></td >
7675 <td class =" text-secondary text-sm text-center align-middle" >
7776 <div class =" d-flex align-items-center" v-if =" bug.assigned_user" >
7877 <Avatar :user =" bug.assigned_user" class =" me-1 bordered" />
7978 {{ bug.assigned_user.full_name }}
8079 </div >
8180 <em class =" mb-0 opacity-75" v-else >Non assigné</em >
8281 </td >
82+ <td class =" align-middle" >
83+ <div class =" priority rounded-pill"
84+ data-bs-toggle =" tooltip"
85+ data-bs-placement =" bottom"
86+ :data-bs-title =" getPriorityObject(bug.priority)?.extended_label"
87+ :class =" bug_priority_class(bug)" ></div >
8388
89+ </td >
8490 <td class =" text-sm text-secondary" >
8591 <InfoDateBug :bug =" bug" />
8692 </td >
101107import AuthenticatedLayout from " @/Layouts/AuthenticatedLayout.vue" ;
102108import {PlusCircleIcon } from " @heroicons/vue/24/outline/index.js" ;
103109import Card from " @/Components/ui/Card.vue" ;
104- import {computed , ref , watch } from " vue" ;
110+ import {computed , onMounted , onUnmounted , ref , watch } from " vue" ;
105111import {router , Link , usePage } from " @inertiajs/vue3" ;
106112import InfoDateBug from " @/Components/ui/bug/InfoDateBug.vue" ;
107113import BagdeStatusBug from " @/Components/ui/bug/BagdeStatusBug.vue" ;
@@ -113,7 +119,9 @@ import {pickBy, throttle} from "lodash";
113119import FormSelect from " @/Components/ui/form/FormSelect.vue" ;
114120import Avatar from " @/Components/ui/user/avatar.vue" ;
115121import {StarIcon } from " @heroicons/vue/24/solid/index.js" ;
116- import {getPriorityObject , nb_notes } from " ../../Helpers/bug.js" ;
122+ import {bug_priority_class , getPriorityObject , nb_notes , nb_notes_labels } from " ../../Helpers/bug.js" ;
123+ import {ChatBubbleLeftIcon } from " @heroicons/vue/24/outline/index.js" ;
124+ import {disposeToolTips , enableToolTips } from " @/Helpers/bs_tooltips.js" ;
117125
118126const props = defineProps ({
119127 project: {
@@ -186,6 +194,9 @@ watch(params, throttle(function () {
186194 // request
187195 router .get (route (' projects.show' , props .project .slug ), my_params, {replace: true , preserveState: true })
188196}, 300 ), {deep: true })
197+ const tooltipList = ref ([]);
198+ onMounted (() => enableToolTips (tooltipList))
199+ onUnmounted (() => disposeToolTips (tooltipList))
189200 </script >
190201
191202<style scoped>
0 commit comments