Skip to content

Commit 22f51df

Browse files
authored
feat: archived indicators and disabled button when editing archived template (#9503)
1 parent 2918111 commit 22f51df

File tree

3 files changed

+11
-1
lines changed

3 files changed

+11
-1
lines changed

frontend/src/component/releases/ReleasePlanTemplate/EditReleasePlanTemplate.tsx

+2
Original file line numberDiff line numberDiff line change
@@ -110,11 +110,13 @@ export const EditReleasePlanTemplate = () => {
110110
formatApiCode={formatApiCode}
111111
handleSubmit={handleSubmit}
112112
loading={loading}
113+
archived={!!template.archivedAt}
113114
>
114115
<StyledButtonContainer>
115116
<UpdateButton
116117
name='template'
117118
permission={RELEASE_PLAN_TEMPLATE_UPDATE}
119+
disabled={!!template.archivedAt}
118120
>
119121
Save changes
120122
</UpdateButton>

frontend/src/component/releases/ReleasePlanTemplate/TemplateForm/TemplateForm.tsx

+8-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import Input from 'component/common/Input/Input';
2-
import { styled, useTheme } from '@mui/material';
2+
import { Alert, styled, useTheme } from '@mui/material';
33
import type { IReleasePlanMilestonePayload } from 'interfaces/releasePlans';
44
import FormTemplate from 'component/common/FormTemplate/FormTemplate';
55
import { TemplateFormDescription } from './TemplateFormDescription';
@@ -45,6 +45,7 @@ interface ITemplateFormProps {
4545
errors: { [key: string]: string };
4646
clearErrors: () => void;
4747
formTitle: string;
48+
archived?: boolean;
4849
formatApiCode: () => string;
4950
handleSubmit: (e: React.FormEvent) => void;
5051
loading?: boolean;
@@ -61,6 +62,7 @@ export const TemplateForm: React.FC<ITemplateFormProps> = ({
6162
errors,
6263
clearErrors,
6364
formTitle,
65+
archived,
6466
formatApiCode,
6567
handleSubmit,
6668
children,
@@ -81,6 +83,11 @@ export const TemplateForm: React.FC<ITemplateFormProps> = ({
8183
description={<TemplateFormDescription />}
8284
formatApiCode={formatApiCode}
8385
>
86+
{archived && (
87+
<Alert severity='warning'>
88+
This template has been archived and can no longer be edited.
89+
</Alert>
90+
)}
8491
<StyledForm onSubmit={handleSubmit}>
8592
<StyledInput
8693
label='Template name'

frontend/src/interfaces/releasePlans.ts

+1
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ export interface IReleasePlanTemplate {
1515
createdAt: string;
1616
createdByUserId: number;
1717
milestones: IReleasePlanMilestonePayload[];
18+
archivedAt?: string;
1819
}
1920

2021
export interface IReleasePlan {

0 commit comments

Comments
 (0)