feat: Add ability to sort canned responses (#9330)

Co-authored-by: jeffOtano <jeff@rinsed.com>
This commit is contained in:
Jeffrey Otano
2024-05-02 15:11:52 -06:00
committed by GitHub
parent ac93af6028
commit 2769b03cc8

View File

@@ -32,9 +32,25 @@
<th <th
v-for="thHeader in $t('CANNED_MGMT.LIST.TABLE_HEADER')" v-for="thHeader in $t('CANNED_MGMT.LIST.TABLE_HEADER')"
:key="thHeader" :key="thHeader"
class="last:text-right" class="last:text-right first:m-0 first:p-0"
> >
<p v-if="thHeader !== $t('CANNED_MGMT.LIST.TABLE_HEADER[0]')">
{{ thHeader }} {{ thHeader }}
</p>
<button
v-if="thHeader === $t('CANNED_MGMT.LIST.TABLE_HEADER[0]')"
class="cursor-pointer flex items-center p-0"
@click="toggleSort"
>
<p class="uppercase">
{{ thHeader }}
</p>
<fluent-icon
class="mb-2 ml-2"
:icon="sortOrder === 'asc' ? 'chevron-up' : 'chevron-down'"
/>
</button>
</th> </th>
</thead> </thead>
<tbody> <tbody>
@@ -132,6 +148,7 @@ export default {
cannedResponseAPI: { cannedResponseAPI: {
message: '', message: '',
}, },
sortOrder: 'asc',
}; };
}, },
computed: { computed: {
@@ -156,9 +173,20 @@ export default {
}, },
mounted() { mounted() {
// Fetch API Call // Fetch API Call
this.$store.dispatch('getCannedResponse'); this.$store.dispatch('getCannedResponse').then(() => {
this.toggleSort();
});
}, },
methods: { methods: {
toggleSort() {
this.records.sort((a, b) => {
if (this.sortOrder === 'asc') {
return a.short_code.localeCompare(b.short_code);
}
return b.short_code.localeCompare(a.short_code);
});
this.sortOrder = this.sortOrder === 'asc' ? 'desc' : 'asc';
},
showAlert(message) { showAlert(message) {
// Reset loading, current selected agent // Reset loading, current selected agent
this.loading[this.selectedResponse.id] = false; this.loading[this.selectedResponse.id] = false;