From 921591da10e8c2acb944fec5c175ac3eef154daa Mon Sep 17 00:00:00 2001 From: Alexandro Uc Santos Date: Wed, 31 Jan 2024 21:30:25 -0600 Subject: [PATCH] add: dashboard charts --- package-lock.json | 27 +++++ package.json | 2 + src/components/ChartLoad.vue | 52 +++++++++ src/components/ChartSegments.vue | 66 ++++++++++++ src/components/Header.vue | 6 +- src/data/segments.json | 50 +++++++++ src/views/FaqsView.vue | 3 +- src/views/HomeView.vue | 180 ++++++++++++++++++++++++++++++- 8 files changed, 382 insertions(+), 4 deletions(-) create mode 100644 src/components/ChartLoad.vue create mode 100644 src/components/ChartSegments.vue create mode 100644 src/data/segments.json diff --git a/package-lock.json b/package-lock.json index 5c41186..b6ad117 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,12 +9,14 @@ "version": "0.0.0", "dependencies": { "axios": "^1.6.2", + "chart.js": "^4.4.1", "html2pdf.js": "^0.10.1", "pinia": "^2.1.7", "qalendar": "^3.7.0", "sass": "^1.69.5", "sweetalert2": "^11.10.1", "vue": "^3.3.4", + "vue-chartjs": "^5.3.0", "vue-multiselect": "^3.0.0-beta.3", "vue-router": "^4.2.5", "vue3-google-map": "^0.18.0" @@ -474,6 +476,11 @@ "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==" }, + "node_modules/@kurkle/color": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@kurkle/color/-/color-0.3.2.tgz", + "integrity": "sha512-fuscdXJ9G1qb7W8VdHi+IwRqij3lBkosAm4ydQtEmbY58OzHXqQhvlxqEkoz0yssNVn38bcpRWgA9PP+OGoisw==" + }, "node_modules/@types/raf": { "version": "3.4.3", "resolved": "https://registry.npmjs.org/@types/raf/-/raf-3.4.3.tgz", @@ -701,6 +708,17 @@ "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==", "optional": true }, + "node_modules/chart.js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/chart.js/-/chart.js-4.4.1.tgz", + "integrity": "sha512-C74QN1bxwV1v2PEujhmKjOZ7iUM4w6BWs23Md/6aOZZSlwMzeCIDGuZay++rBgChYru7/+QFeoQW0fQoP534Dg==", + "dependencies": { + "@kurkle/color": "^0.3.0" + }, + "engines": { + "pnpm": ">=7" + } + }, "node_modules/chokidar": { "version": "3.5.3", "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", @@ -1377,6 +1395,15 @@ } } }, + "node_modules/vue-chartjs": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/vue-chartjs/-/vue-chartjs-5.3.0.tgz", + "integrity": "sha512-8XqX0JU8vFZ+WA2/knz4z3ThClduni2Nm0BMe2u0mXgTfd9pXrmJ07QBI+WAij5P/aPmPMX54HCE1seWL37ZdQ==", + "peerDependencies": { + "chart.js": "^4.1.1", + "vue": "^3.0.0-0 || ^2.7.0" + } + }, "node_modules/vue-multiselect": { "version": "3.0.0-beta.3", "resolved": "https://registry.npmjs.org/vue-multiselect/-/vue-multiselect-3.0.0-beta.3.tgz", diff --git a/package.json b/package.json index 0dedb2b..1ea8561 100644 --- a/package.json +++ b/package.json @@ -9,12 +9,14 @@ }, "dependencies": { "axios": "^1.6.2", + "chart.js": "^4.4.1", "html2pdf.js": "^0.10.1", "pinia": "^2.1.7", "qalendar": "^3.7.0", "sass": "^1.69.5", "sweetalert2": "^11.10.1", "vue": "^3.3.4", + "vue-chartjs": "^5.3.0", "vue-multiselect": "^3.0.0-beta.3", "vue-router": "^4.2.5", "vue3-google-map": "^0.18.0" diff --git a/src/components/ChartLoad.vue b/src/components/ChartLoad.vue new file mode 100644 index 0000000..a964cc2 --- /dev/null +++ b/src/components/ChartLoad.vue @@ -0,0 +1,52 @@ + + + + + \ No newline at end of file diff --git a/src/components/ChartSegments.vue b/src/components/ChartSegments.vue new file mode 100644 index 0000000..bb26af8 --- /dev/null +++ b/src/components/ChartSegments.vue @@ -0,0 +1,66 @@ + + + + + \ No newline at end of file diff --git a/src/components/Header.vue b/src/components/Header.vue index 20e623d..98213b5 100644 --- a/src/components/Header.vue +++ b/src/components/Header.vue @@ -5,7 +5,11 @@