improvement: treatment plan now save on debounce. save treatment button removed.
This commit is contained in:
@@ -15,12 +15,10 @@ interface TreatmentDetailsEditorProps {
|
||||
isDetailLocked: (detail: TreatmentDetailDraft) => boolean;
|
||||
disabled: boolean;
|
||||
canEdit: boolean;
|
||||
isDirty: boolean;
|
||||
saveBusy: boolean;
|
||||
saveStatus: 'idle' | 'dirty' | 'saving' | 'saved' | 'error';
|
||||
uploadBusy: boolean;
|
||||
onAddDetail: () => void;
|
||||
onPreview: () => void;
|
||||
onSave: () => void;
|
||||
onUploadFiles: (files: FileList | null) => void;
|
||||
}
|
||||
|
||||
@@ -32,12 +30,10 @@ export function TreatmentDetailsEditor({
|
||||
isDetailLocked,
|
||||
disabled,
|
||||
canEdit,
|
||||
isDirty,
|
||||
saveBusy,
|
||||
saveStatus,
|
||||
uploadBusy,
|
||||
onAddDetail,
|
||||
onPreview,
|
||||
onSave,
|
||||
onUploadFiles,
|
||||
}: TreatmentDetailsEditorProps) {
|
||||
const t = useTranslations('treatment');
|
||||
@@ -175,21 +171,19 @@ export function TreatmentDetailsEditor({
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{canEdit && (
|
||||
<div className="flex flex-wrap gap-3 pt-2 border-t border-border/60">
|
||||
<Button
|
||||
type="button"
|
||||
variant="primary"
|
||||
disabled={disabled || saveBusy}
|
||||
isLoading={saveBusy}
|
||||
onClick={onSave}
|
||||
>
|
||||
{t('saveDraft')}
|
||||
</Button>
|
||||
<p className="text-xs text-text-muted self-center">
|
||||
{isDirty ? t('unsavedChanges') : t('draftSaved')}. {t('detailsSaveHint')}
|
||||
</p>
|
||||
</div>
|
||||
{canEdit && saveStatus !== 'idle' && (
|
||||
<p
|
||||
className={`text-xs pt-2 border-t border-border/60 ${
|
||||
saveStatus === 'error' ? 'text-red-500' : 'text-text-muted'
|
||||
}`}
|
||||
role="status"
|
||||
aria-live="polite"
|
||||
>
|
||||
{saveStatus === 'dirty' && t('unsavedChanges')}
|
||||
{saveStatus === 'saving' && t('saveStatusSaving')}
|
||||
{saveStatus === 'saved' && t('saveStatusSaved')}
|
||||
{saveStatus === 'error' && t('saveStatusError')}
|
||||
</p>
|
||||
)}
|
||||
</div>
|
||||
);
|
||||
|
||||
Reference in New Issue
Block a user