Skip to content

Commit c40f2ac

Browse files
Merge pull request #121 from VineetBala-AOT/main
Restrict condition attribute approval without saving the plan name
2 parents bbce8f9 + 9279469 commit c40f2ac

File tree

2 files changed

+8
-2
lines changed

2 files changed

+8
-2
lines changed

condition-web/src/components/ConditionDetails/ConditionAttribute/ApproveButton.tsx

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ interface ApproveButtonProps {
55
isApproved: boolean;
66
isAnyRowEditing: boolean;
77
showEditingError: boolean;
8+
isEditingPlanName?: boolean;
89
onApprove: (e: React.MouseEvent) => void;
910
label?: string;
1011
}
@@ -13,6 +14,7 @@ export const ApproveButton: React.FC<ApproveButtonProps> = ({
1314
isApproved,
1415
isAnyRowEditing,
1516
showEditingError,
17+
isEditingPlanName,
1618
onApprove,
1719
label
1820
}) => {
@@ -37,7 +39,7 @@ export const ApproveButton: React.FC<ApproveButtonProps> = ({
3739
: "Approve Condition Attributes"}
3840
</Button>
3941

40-
{showEditingError && isAnyRowEditing && (
42+
{showEditingError && (isAnyRowEditing || isEditingPlanName) && (
4143
<Box
4244
sx={{
4345
color: "#CE3E39",

condition-web/src/components/ConditionDetails/ConditionAttribute/ManagementPlan/ManagementPlanAccordion.tsx

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,7 @@ const ManagementPlanAccordion: React.FC<Props> = ({
6060
const [expanded, setExpanded] = useState(false);
6161

6262
const [isAnyRowEditing, setIsAnyRowEditing] = useState(false);
63+
const [isEditingPlanName, setIsEditingPlanName] = useState(false);
6364
const [showEditingError, setShowEditingError] = useState(false);
6465
const [conditionAttributeError, setConditionAttributeError] = useState(false);
6566
const [isConsultationRequired, setIsConsultationRequired] = useState(false);
@@ -180,6 +181,7 @@ const ManagementPlanAccordion: React.FC<Props> = ({
180181
setPlanNameError(false);
181182
setConditionAttributeError(false);
182183
handleUpdatePlan({ name: trimmedName }, () => setEditMode(false));
184+
setIsEditingPlanName(false);
183185
};
184186

185187
useEffect(() => {
@@ -217,7 +219,7 @@ const ManagementPlanAccordion: React.FC<Props> = ({
217219
e.stopPropagation();
218220
e.preventDefault();
219221

220-
if (isAnyRowEditing) {
222+
if (isAnyRowEditing || isEditingPlanName) {
221223
setShowEditingError(true);
222224
return;
223225
}
@@ -380,6 +382,7 @@ const ManagementPlanAccordion: React.FC<Props> = ({
380382
e.stopPropagation(); // Prevent accordion toggle
381383
e.preventDefault();
382384
setEditMode(true);
385+
setIsEditingPlanName(true);
383386
}}
384387
sx={{
385388
height: "28px",
@@ -486,6 +489,7 @@ const ManagementPlanAccordion: React.FC<Props> = ({
486489
isApproved={attributes.is_approved}
487490
isAnyRowEditing={isAnyRowEditing}
488491
showEditingError={showEditingError}
492+
isEditingPlanName={isEditingPlanName}
489493
onApprove={handleApprovePlan}
490494
label={
491495
attributes.is_approved

0 commit comments

Comments
 (0)