file re-org
Some checks failed
Deploy to Web Server flyer-crawler.projectium.com / deploy (push) Failing after 53s

This commit is contained in:
2025-11-25 11:37:41 -08:00
parent 4b5fe4f8df
commit 8968813ee0
71 changed files with 1678 additions and 246 deletions

View File

@@ -2,37 +2,37 @@
import React, { useState, useCallback, useEffect } from 'react';
import { Routes, Route } from 'react-router-dom';
import { Toaster } from 'react-hot-toast';
import { FlyerDisplay } from './components/FlyerDisplay';
import { ExtractedDataTable } from './components/ExtractedDataTable';
import { AnalysisPanel } from './components/AnalysisPanel';
import { PriceChart } from './components/PriceChart';
import { FlyerDisplay } from './features/flyer/FlyerDisplay';
import { ExtractedDataTable } from './features/flyer/ExtractedDataTable';
import { AnalysisPanel } from './features/flyer/AnalysisPanel';
import { PriceChart } from './features/charts/PriceChart';
import * as pdfjsLib from 'pdfjs-dist';
import { ErrorDisplay } from './components/ErrorDisplay';
import { Header } from './components/Header';
import { logger } from './services/logger'; // This is correct
import { isImageAFlyer, extractCoreDataFromImage, extractAddressFromImage, extractLogoFromImage } from './services/aiApiClient';
import type { FlyerItem, Flyer, MasterGroceryItem, DealItem, ProcessingStage, StageStatus, Profile, ShoppingList, ShoppingListItem, User } from './types';
import { BulkImporter } from './components/BulkImporter';
import { PriceHistoryChart } from './components/PriceHistoryChart'; // This import seems to have a supabase dependency, but the component is not provided. Assuming it will be updated separately.
import { BulkImporter } from './features/flyer/BulkImporter';
import { PriceHistoryChart } from './features/charts/PriceHistoryChart'; // This import seems to have a supabase dependency, but the component is not provided. Assuming it will be updated separately.
import { getAuthenticatedUserProfile, fetchFlyers as apiFetchFlyers, fetchMasterItems as apiFetchMasterItems, fetchWatchedItems as apiFetchWatchedItems, addWatchedItem as apiAddWatchedItem, removeWatchedItem as apiRemoveWatchedItem, fetchShoppingLists as apiFetchShoppingLists, createShoppingList as apiCreateShoppingList, deleteShoppingList as apiDeleteShoppingList, addShoppingListItem as apiAddShoppingListItem, updateShoppingListItem as apiUpdateShoppingListItem, removeShoppingListItem as apiRemoveShoppingListItem, processFlyerFile, fetchFlyerItems as apiFetchFlyerItems, fetchFlyerItemsForFlyers as apiFetchFlyerItemsForFlyers, countFlyerItemsForFlyers as apiCountFlyerItemsForFlyers, uploadLogoAndUpdateStore } from './services/apiClient'; // updateUserPreferences is no longer called directly from App.tsx
import { FlyerList } from './components/FlyerList';
import { FlyerList } from './features/flyer/FlyerList';
import { recordProcessingTime, getAverageProcessingTime } from './utils/processingTimer';
import { ProcessingStatus } from './components/ProcessingStatus';
import { ProcessingStatus } from './features/flyer/ProcessingStatus';
import { generateFileChecksum } from './utils/checksum';
import { convertPdfToImageFiles } from './utils/pdfConverter';
import { BulkImportSummary } from './components/BulkImportSummary';
import { BulkImportSummary } from './features/flyer/BulkImportSummary';
import { withTimeout } from './utils/timeout';
import { ProfileManager } from './components/ProfileManager';
import { ShoppingListComponent } from './components/ShoppingList';
import { VoiceAssistant } from './components/VoiceAssistant';
import { AdminPage } from './pages/AdminPage';
import { ProfileManager } from './features/auth/ProfileManager';
import { ShoppingListComponent } from './features/shopping/ShoppingList';
import { VoiceAssistant } from './features/voice-assistant/VoiceAssistant';
import { AdminPage } from './pages/admin/AdminPage';
import { AdminRoute } from './components/AdminRoute';
import { CorrectionsPage } from './pages/CorrectionsPage';
import { ActivityLog, ActivityLogClickHandler } from './components/ActivityLog';
import { WatchedItemsList } from './components/WatchedItemsList';
import { AdminStatsPage } from './pages/AdminStatsPage';
import { CorrectionsPage } from './pages/admin/CorrectionsPage';
import { ActivityLog, ActivityLogClickHandler } from './pages/admin/ActivityLog';
import { WatchedItemsList } from './features/shopping/WatchedItemsList';
import { AdminStatsPage } from './pages/admin/AdminStatsPage';
import { ResetPasswordPage } from './pages/ResetPasswordPage';
import { AnonymousUserBanner } from './components/AnonymousUserBanner';
import { AnonymousUserBanner } from './features/auth/components/AnonymousUserBanner';
import { VoiceLabPage } from './pages/VoiceLabPage'; // Import the new page
import { WhatsNewModal } from './components/WhatsNewModal';
import { QuestionMarkCircleIcon } from './components/icons/QuestionMarkCircleIcon';