mirror of
				https://github.com/mealie-recipes/mealie.git
				synced 2025-10-31 10:38:18 -04:00 
			
		
		
		
	* update dev dependencies * upgrade eslint * resolve several errors * resolve eslint errors
		
			
				
	
	
		
			111 lines
		
	
	
		
			3.0 KiB
		
	
	
	
		
			Vue
		
	
	
	
	
	
			
		
		
	
	
			111 lines
		
	
	
		
			3.0 KiB
		
	
	
	
		
			Vue
		
	
	
	
	
	
| <template>
 | |
|   <div>
 | |
|     <BaseStatCard :icon="$globals.icons.bellAlert" :color="color">
 | |
|       <template #after-heading>
 | |
|         <div class="ml-auto text-right">
 | |
|           <h2 class="body-3 grey--text font-weight-light">
 | |
|             {{ $t("settings.events") }}
 | |
|           </h2>
 | |
| 
 | |
|           <h3 class="display-2 font-weight-light text--primary">
 | |
|             <small> {{ total }} </small>
 | |
|           </h3>
 | |
|         </div>
 | |
|       </template>
 | |
|       <div class="d-flex row py-3 justify-end">
 | |
|         <v-btn class="mx-2" small color="error lighten-1" @click="$emit('delete-all')">
 | |
|           <v-icon left> {{ $globals.icons.notificationClearAll }} </v-icon> {{ $t("general.clear") }}
 | |
|         </v-btn>
 | |
|       </div>
 | |
|       <template #bottom>
 | |
|         <v-virtual-scroll height="290" item-height="70" :items="events">
 | |
|           <template #default="{ item }">
 | |
|             <v-list-item>
 | |
|               <v-list-item-avatar>
 | |
|                 <v-icon large dark :color="icons[item.category].color">
 | |
|                   {{ icons[item.category].icon }}
 | |
|                 </v-icon>
 | |
|               </v-list-item-avatar>
 | |
| 
 | |
|               <v-list-item-content>
 | |
|                 <v-list-item-title>
 | |
|                   {{ item.title }}
 | |
|                 </v-list-item-title>
 | |
| 
 | |
|                 <v-list-item-subtitle>
 | |
|                   {{ item.text }}
 | |
|                 </v-list-item-subtitle>
 | |
|                 <v-list-item-subtitle>
 | |
|                   {{ $d(Date.parse(item.timeStamp), "long") }}
 | |
|                 </v-list-item-subtitle>
 | |
|               </v-list-item-content>
 | |
| 
 | |
|               <v-list-item-action class="ml-auto">
 | |
|                 <v-btn large icon @click="$emit('delete-item', item.id)">
 | |
|                   <v-icon color="error">{{ $globals.icons.delete }}</v-icon>
 | |
|                 </v-btn>
 | |
|               </v-list-item-action>
 | |
|             </v-list-item>
 | |
|           </template>
 | |
|         </v-virtual-scroll>
 | |
|       </template>
 | |
|     </BaseStatCard>
 | |
|   </div>
 | |
| </template>
 | |
| 
 | |
| <script lang="ts">
 | |
| import { defineComponent } from "@nuxtjs/composition-api";
 | |
| 
 | |
| export default defineComponent({
 | |
|   layout: "admin",
 | |
|   props: {
 | |
|     events: {
 | |
|       type: Array,
 | |
|       required: true,
 | |
|     },
 | |
|     total: {
 | |
|       type: Number,
 | |
|       default: 0,
 | |
|     },
 | |
|   },
 | |
|   data() {
 | |
|     return {
 | |
|       color: "accent",
 | |
|       selectedId: "",
 | |
|       icons: {
 | |
|         general: {
 | |
|           icon: this.$globals.icons.information,
 | |
|           color: "info",
 | |
|         },
 | |
|         recipe: {
 | |
|           icon: this.$globals.icons.primary,
 | |
|           color: "primary",
 | |
|         },
 | |
|         backup: {
 | |
|           icon: this.$globals.icons.database,
 | |
|           color: "primary",
 | |
|         },
 | |
|         schedule: {
 | |
|           icon: this.$globals.icons.calendar,
 | |
|           color: "primary",
 | |
|         },
 | |
|         migration: {
 | |
|           icon: this.$globals.icons.backupRestore,
 | |
|           color: "primary",
 | |
|         },
 | |
|         user: {
 | |
|           icon: this.$globals.icons.user,
 | |
|           color: "accent",
 | |
|         },
 | |
|         group: {
 | |
|           icon: this.$globals.icons.group,
 | |
|           color: "accent",
 | |
|         },
 | |
|       },
 | |
|     };
 | |
|   },
 | |
| });
 | |
| </script>
 | |
| 
 | |
| <style scoped></style>
 |