Initial commit - WhyRating Engine (Google Reviews Scraper)

This commit is contained in:
Alejandro Gutiérrez
2026-02-02 18:19:00 +00:00
parent 0543a08242
commit 2206ddeff2
136 changed files with 51138 additions and 855 deletions

View File

@@ -10,6 +10,7 @@ interface DashboardSectionProps {
section: DashboardSectionType;
pipelineId: string;
businessId?: string;
jobId?: string;
timeRange?: string;
}
@@ -20,6 +21,7 @@ export function DashboardSection({
section,
pipelineId,
businessId,
jobId,
timeRange = '30d',
}: DashboardSectionProps) {
const [collapsed, setCollapsed] = useState(section.collapsed ?? false);
@@ -37,6 +39,7 @@ export function DashboardSection({
try {
const data = await getWidgetData(pipelineId, widgetId, {
business_id: businessId,
job_id: jobId,
time_range: timeRange,
page: page || tablePagination[widgetId] || 1,
});
@@ -50,7 +53,7 @@ export function DashboardSection({
setWidgetLoading((prev) => ({ ...prev, [widgetId]: false }));
}
},
[pipelineId, businessId, timeRange, tablePagination]
[pipelineId, businessId, jobId, timeRange, tablePagination]
);
// Fetch all widget data on mount and when params change
@@ -60,7 +63,7 @@ export function DashboardSection({
fetchWidgetData(widget.id);
});
}
}, [section.widgets, collapsed, pipelineId, businessId, timeRange]);
}, [section.widgets, collapsed, pipelineId, businessId, jobId, timeRange]);
// Handle page change for tables
const handlePageChange = (widgetId: string, page: number) => {
@@ -109,7 +112,7 @@ export function DashboardSection({
<ChevronDown className="w-5 h-5 text-gray-500 mr-2" />
)}
<div>
<h2 className="text-lg font-semibold text-gray-900 dark:text-gray-100 group-hover:text-blue-600">
<h2 className="text-lg font-semibold text-gray-900 group-hover:text-blue-600">
{section.title}
</h2>
{section.description && (