Browse Source

search bar for client name added

pull/468/head
tm-sanjay 4 years ago
parent
commit
42b9f6fd5b
  1. 9
      src/www/index.html
  2. 15
      src/www/js/app.js

9
src/www/index.html

@ -53,12 +53,17 @@
</a>
</div>
</div>
<div class="shadow-md rounded-lg bg-white overflow-hidden">
<div class="flex flex-row flex-auto items-center p-3 px-5 border border-b-2 border-gray-100">
<div class="flex-grow">
<p class="text-2xl font-medium">Clients</p>
</div>
<!-- search bar -->
<div class="flex-grow">
<input type="text" v-model="search" placeholder="Search" class="border-2 border-gray-100 py-2 px-4 rounded">
</div>
<div class="flex-shrink-0">
<button @click="clientCreate = true; clientCreateName = ''; clientCreateStoreId = '';"
class="hover:bg-red-800 hover:border-red-800 hover:text-white text-gray-700 border-2 border-gray-100 py-2 px-4 rounded inline-flex items-center transition">
@ -74,7 +79,7 @@
<div>
<!-- Client -->
<div v-if="clients && clients.length > 0" v-for="client in clients" :key="client.id"
<div v-if="clients && clients.length > 0" v-for="client in filteredClients" :key="client.id"
class="relative overflow-hidden border-b border-gray-100 border-solid">
<!-- Chart -->

15
src/www/js/app.js

@ -31,6 +31,7 @@ new Vue({
password: null,
requiresPassword: null,
search: null,
clients: null,
clientsPersist: {},
clientDelete: null,
@ -112,6 +113,20 @@ new Vue({
},
},
},
computed: {
filteredClients() {
if (!this.clients) return null;
return this.clients.filter(client => {
if (!this.search) return true;
const search = this.search.toLowerCase();
return client.name.toLowerCase().includes(search)
|| client.address.toLowerCase().includes(search)
|| client.id.toLowerCase().includes(search);
});
}
},
methods: {
dateTime: value => {
return new Intl.DateTimeFormat(undefined, {

Loading…
Cancel
Save