mirror of
https://github.com/claude-code-best/claude-code.git
synced 2026-06-17 05:45:51 +00:00
56 lines
1.5 KiB
TypeScript
56 lines
1.5 KiB
TypeScript
import { c as _c } from "react/compiler-runtime";
|
|
import React from 'react';
|
|
import { FpsMetricsProvider } from '../context/fpsMetrics.js';
|
|
import { StatsProvider, type StatsStore } from '../context/stats.js';
|
|
import { type AppState, AppStateProvider } from '../state/AppState.js';
|
|
import { onChangeAppState } from '../state/onChangeAppState.js';
|
|
import type { FpsMetrics } from '../utils/fpsTracker.js';
|
|
type Props = {
|
|
getFpsMetrics: () => FpsMetrics | undefined;
|
|
stats?: StatsStore;
|
|
initialState: AppState;
|
|
children: React.ReactNode;
|
|
};
|
|
|
|
/**
|
|
* Top-level wrapper for interactive sessions.
|
|
* Provides FPS metrics, stats context, and app state to the component tree.
|
|
*/
|
|
export function App(t0) {
|
|
const $ = _c(9);
|
|
const {
|
|
getFpsMetrics,
|
|
stats,
|
|
initialState,
|
|
children
|
|
} = t0;
|
|
let t1;
|
|
if ($[0] !== children || $[1] !== initialState) {
|
|
t1 = <AppStateProvider initialState={initialState} onChangeAppState={onChangeAppState}>{children}</AppStateProvider>;
|
|
$[0] = children;
|
|
$[1] = initialState;
|
|
$[2] = t1;
|
|
} else {
|
|
t1 = $[2];
|
|
}
|
|
let t2;
|
|
if ($[3] !== stats || $[4] !== t1) {
|
|
t2 = <StatsProvider store={stats}>{t1}</StatsProvider>;
|
|
$[3] = stats;
|
|
$[4] = t1;
|
|
$[5] = t2;
|
|
} else {
|
|
t2 = $[5];
|
|
}
|
|
let t3;
|
|
if ($[6] !== getFpsMetrics || $[7] !== t2) {
|
|
t3 = <FpsMetricsProvider getFpsMetrics={getFpsMetrics}>{t2}</FpsMetricsProvider>;
|
|
$[6] = getFpsMetrics;
|
|
$[7] = t2;
|
|
$[8] = t3;
|
|
} else {
|
|
t3 = $[8];
|
|
}
|
|
return t3;
|
|
}
|