Restructure omni services and add Chatwoot research snapshot

This commit is contained in:
Ruslan Bakiev
2026-02-21 11:11:27 +07:00
parent edea7a0034
commit b73babbbf6
7732 changed files with 978203 additions and 32 deletions

View File

@@ -0,0 +1,77 @@
<script setup>
import { computed } from 'vue';
import { Bar } from 'vue-chartjs';
import {
Chart as ChartJS,
Title,
Tooltip,
BarElement,
CategoryScale,
LinearScale,
} from 'chart.js';
const props = defineProps({
collection: {
type: Object,
default: () => ({}),
},
chartOptions: {
type: Object,
default: () => ({}),
},
});
ChartJS.register(Title, Tooltip, BarElement, CategoryScale, LinearScale);
const fontFamily =
'Inter,-apple-system,system-ui,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif';
const defaultChartOptions = {
responsive: true,
maintainAspectRatio: false,
legend: {
display: false,
labels: {
fontFamily,
},
},
animation: {
duration: 0,
},
datasets: {
bar: {
barPercentage: 1.0,
},
},
scales: {
x: {
ticks: {
fontFamily: fontFamily,
},
grid: {
drawOnChartArea: false,
},
},
y: {
type: 'linear',
position: 'left',
ticks: {
fontFamily: fontFamily,
beginAtZero: true,
stepSize: 1,
},
grid: {
drawOnChartArea: false,
},
},
},
};
const options = computed(() => {
return { ...defaultChartOptions, ...props.chartOptions };
});
</script>
<template>
<Bar :data="collection" :options="options" />
</template>