Update pharmacokinetic parameters/calculations, add advanced settings, add disclaimer/citations, many improvements
This commit is contained in:
45
src/App.tsx
45
src/App.tsx
@@ -16,6 +16,7 @@ import DaySchedule from './components/day-schedule';
|
||||
import SimulationChart from './components/simulation-chart';
|
||||
import Settings from './components/settings';
|
||||
import LanguageSelector from './components/language-selector';
|
||||
import DisclaimerModal from './components/disclaimer-modal';
|
||||
import { Button } from './components/ui/button';
|
||||
|
||||
// Custom Hooks
|
||||
@@ -27,6 +28,25 @@ import { useLanguage } from './hooks/useLanguage';
|
||||
const MedPlanAssistant = () => {
|
||||
const { currentLanguage, t, changeLanguage } = useLanguage();
|
||||
|
||||
// Disclaimer modal state
|
||||
const [showDisclaimer, setShowDisclaimer] = React.useState(false);
|
||||
|
||||
React.useEffect(() => {
|
||||
const hasAccepted = localStorage.getItem('medPlanDisclaimerAccepted_v1');
|
||||
if (!hasAccepted) {
|
||||
setShowDisclaimer(true);
|
||||
}
|
||||
}, []);
|
||||
|
||||
const handleAcceptDisclaimer = () => {
|
||||
localStorage.setItem('medPlanDisclaimerAccepted_v1', 'true');
|
||||
setShowDisclaimer(false);
|
||||
};
|
||||
|
||||
const handleOpenDisclaimer = () => {
|
||||
setShowDisclaimer(true);
|
||||
};
|
||||
|
||||
const {
|
||||
appState,
|
||||
updateNestedState,
|
||||
@@ -66,6 +86,15 @@ const MedPlanAssistant = () => {
|
||||
|
||||
return (
|
||||
<div className="min-h-screen bg-background p-4 sm:p-6 lg:p-8">
|
||||
{/* Disclaimer Modal */}
|
||||
<DisclaimerModal
|
||||
isOpen={showDisclaimer}
|
||||
onAccept={handleAcceptDisclaimer}
|
||||
currentLanguage={currentLanguage}
|
||||
onLanguageChange={changeLanguage}
|
||||
t={t}
|
||||
/>
|
||||
|
||||
<div className="max-w-7xl mx-auto">
|
||||
<header className="mb-8">
|
||||
<div className="flex justify-between items-start">
|
||||
@@ -151,8 +180,20 @@ const MedPlanAssistant = () => {
|
||||
</div>
|
||||
|
||||
<footer className="mt-8 p-4 bg-muted rounded-lg text-sm text-muted-foreground border">
|
||||
<h3 className="font-semibold mb-2 text-foreground">{t('importantNote')}</h3>
|
||||
<p>{t('disclaimer')}</p>
|
||||
<div className="space-y-3">
|
||||
<div>
|
||||
<h3 className="font-semibold mb-2 text-foreground">{t('importantNote')}</h3>
|
||||
<p>{t('disclaimer')}</p>
|
||||
</div>
|
||||
<Button
|
||||
variant="outline"
|
||||
size="sm"
|
||||
onClick={handleOpenDisclaimer}
|
||||
className="w-full sm:w-auto"
|
||||
>
|
||||
{t('disclaimerModalFooterLink')}
|
||||
</Button>
|
||||
</div>
|
||||
</footer>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user