PHP Classes

File: resources/js/pages/Dashboard.vue

Recommend this page to a friend!
  Packages of Nyi Nyi Lwin   Laravel Nova Log Viewer   resources/js/pages/Dashboard.vue   Download  
File: resources/js/pages/Dashboard.vue
Role: Auxiliary data
Content type: text/plain
Description: Auxiliary data
Class: Laravel Nova Log Viewer
Display information about logs in Laravel Nova
Author: By
Last change:
Date: 10 months ago
Size: 2,568 bytes
 

Contents

Class file image Download
<template> <div class="nova-logs"> <heading class="mb-6">Nova Log Viewer</heading> <div class="flex mb-4" :class="{ 'dark': isDark, }"> <div class="w-1/3"> <Doughnut v-if="loaded" :chart-data="dataCollection" :options="{responsive: true, maintainAspectRatio: true}" :height="400"/> </div> <div> <div class="flex flex-wrap mb-4"> <div class="w-1/3 p-4" v-for="(percent, key) in percents" :key="key"> <div class="max-w-sm rounded overflow-hidden shadow-lg dark:shadow-gray-600" :style="percent.count !== 0 ? 'color: #FFF;background-color :' + percent.backgroundColor : '' "> <div class="px-6 py-4"> <div class="font-bold text-xl mb-2">{{ percent.name }}</div> <p class="text-grey-darker text-base"> {{ percent.count }} entries - {{ percent.percent }}% </p> <div class="progress mt-3"> <div class="bar" :style="{ width: percent.percent + '%' }"></div> </div> </div> </div> </div> </div> </div> </div> </div> </template> <script> import { Doughnut } from 'vue-chartjs'; import { ArcElement, Chart as ChartJS, Legend, Tooltip } from 'chart.js' import dark from '../utils/dark'; ChartJS.register(Tooltip, Legend, ArcElement) export default { components: { Doughnut, }, data() { return { loaded: false, dataCollection: {}, percents: {}, isDark: false, } }, async mounted() { this.loaded = false; dark((isDark) => this.isDark = isDark); try { const {data} = await Nova.request().get('/nova-vendor/php-junior/nova-log-viewer/get_chart_data'); this.dataCollection = data.chartData; this.percents = data.percents; console.log(data); this.loaded = true } catch (e) { console.error(e) } }, } </script> <style> .progress { width: 100%; background-color: #000; } .bar { height: 5px; background-color: #FFF; } </style>