mirror of
https://github.com/christianvidalwolf-prog/CrazeAnalytix.git
synced 2026-08-03 18:45:23 +02:00
feat(ui): remove experimental Gap Report tab and component from navigation
This commit is contained in:
@@ -23,8 +23,7 @@ const AdsPerformance = lazy(() => import('./components/AdsPerformance'));
|
|||||||
const ForecastView = lazy(() => import('./components/ForecastView'));
|
const ForecastView = lazy(() => import('./components/ForecastView'));
|
||||||
const VendorDataView = lazy(() => import('./components/VendorDataView'));
|
const VendorDataView = lazy(() => import('./components/VendorDataView'));
|
||||||
const ExperimentsView = lazy(() => import('./components/ExperimentsView'));
|
const ExperimentsView = lazy(() => import('./components/ExperimentsView'));
|
||||||
// ExperimentDetail and ExperimentForm are now integrated into ExperimentsView
|
|
||||||
const MarketGapReport = lazy(() => import('./components/MarketGapReport'));
|
|
||||||
|
|
||||||
// Loading fallback component
|
// Loading fallback component
|
||||||
const LoadingSpinner = () => (
|
const LoadingSpinner = () => (
|
||||||
@@ -51,7 +50,7 @@ const App: React.FC = () => {
|
|||||||
const [trafficData, setTrafficData] = useState<TrafficRecord[]>([]);
|
const [trafficData, setTrafficData] = useState<TrafficRecord[]>([]);
|
||||||
const [loading, setLoading] = useState(true);
|
const [loading, setLoading] = useState(true);
|
||||||
const [syncing, setSyncing] = useState(false);
|
const [syncing, setSyncing] = useState(false);
|
||||||
const [view, setView] = useState<'dashboard' | 'table' | 'weekly' | 'movers' | 'ads' | 'forecast' | 'vendor' | 'experiments' | 'gap'>('dashboard');
|
const [view, setView] = useState<'dashboard' | 'table' | 'weekly' | 'movers' | 'ads' | 'forecast' | 'vendor' | 'experiments'>('dashboard');
|
||||||
const [forecastData, setForecastData] = useState<ProductForecastData[]>([]);
|
const [forecastData, setForecastData] = useState<ProductForecastData[]>([]);
|
||||||
const [isChatOpen, setIsChatOpen] = useState(false);
|
const [isChatOpen, setIsChatOpen] = useState(false);
|
||||||
const [activeUrl, setActiveUrl] = useState<string | null>(() => localStorage.getItem('craze_csv_url') || PERMANENT_DROPBOX_URL);
|
const [activeUrl, setActiveUrl] = useState<string | null>(() => localStorage.getItem('craze_csv_url') || PERMANENT_DROPBOX_URL);
|
||||||
@@ -830,13 +829,7 @@ const App: React.FC = () => {
|
|||||||
>
|
>
|
||||||
<span className="text-lg">🧪</span> <span className="hidden lg:inline">Experiments</span>
|
<span className="text-lg">🧪</span> <span className="hidden lg:inline">Experiments</span>
|
||||||
</button>
|
</button>
|
||||||
<button
|
|
||||||
onClick={() => setView('gap')}
|
|
||||||
className={`flex items-center gap-2 px-3 py-2 rounded-md text-sm font-medium transition-all
|
|
||||||
${view === 'gap' ? 'bg-slate-800 text-white shadow-sm ring-1 ring-white/10' : 'text-slate-400 hover:text-white hover:bg-slate-800/50'}`}
|
|
||||||
>
|
|
||||||
<span>🌍</span> <span className="hidden sm:inline">Gap Report</span>
|
|
||||||
</button>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -962,11 +955,7 @@ const App: React.FC = () => {
|
|||||||
</div>
|
</div>
|
||||||
</Suspense>
|
</Suspense>
|
||||||
|
|
||||||
<Suspense fallback={<LoadingSpinner />}>
|
|
||||||
<div className={view === 'gap' ? '' : 'hidden'}>
|
|
||||||
<MarketGapReport data={rawData} />
|
|
||||||
</div>
|
|
||||||
</Suspense>
|
|
||||||
</div>
|
</div>
|
||||||
</>
|
</>
|
||||||
)}
|
)}
|
||||||
|
|||||||
Reference in New Issue
Block a user