35 lines
1.0 KiB
TypeScript
35 lines
1.0 KiB
TypeScript
import HydrogenOverview from './HydrogenOverview';
|
|
import HydrogenDaily from './HydrogenDaily';
|
|
import HydrogenSettlement from './HydrogenSettlement';
|
|
import type { HydrogenBoardScope } from './HydrogenBoardChrome';
|
|
|
|
export type HydrogenSubTab = 'daily' | 'overview' | 'settlement';
|
|
|
|
interface Props {
|
|
sub: HydrogenSubTab;
|
|
onSubChange?: (sub: HydrogenSubTab) => void;
|
|
onScopeChange?: (scope: HydrogenBoardScope) => void;
|
|
onDailyRangeTextChange?: (rangeText: string) => void;
|
|
onOverviewRangeTextChange?: (rangeText: string) => void;
|
|
}
|
|
|
|
export default function HydrogenView({
|
|
sub,
|
|
onSubChange,
|
|
onScopeChange,
|
|
onDailyRangeTextChange,
|
|
onOverviewRangeTextChange,
|
|
}: Props) {
|
|
if (sub === 'overview') {
|
|
return (
|
|
<HydrogenOverview
|
|
onSubChange={onSubChange}
|
|
onScopeChange={onScopeChange}
|
|
onRangeTextChange={onOverviewRangeTextChange}
|
|
/>
|
|
);
|
|
}
|
|
if (sub === 'settlement') return <HydrogenSettlement />;
|
|
return <HydrogenDaily scope="global" onRangeTextChange={onDailyRangeTextChange} />;
|
|
}
|