Skip to content

Commit

Permalink
Merge pull request #4637 from unicef/loading-button-program
Browse files Browse the repository at this point in the history
[AB#224937]-loading button program
  • Loading branch information
mmaciekk authored Feb 20, 2025
2 parents dd221a8 + 8faf2b6 commit 85aebfd
Show file tree
Hide file tree
Showing 5 changed files with 31 additions and 20 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ import { ProgramPartnerCard } from './ProgramPartnerCard';
import { FormikSelectField } from '@shared/Formik/FormikSelectField';
import { DividerLine } from '@core/DividerLine';
import { partnerAccessChoices } from '@components/programs/constants';
import { LoadingButton } from '@components/core/LoadingButton';

interface PartnersStepProps {
values;
Expand All @@ -21,6 +22,7 @@ interface PartnersStepProps {
submitForm: () => void;
setFieldValue;
programId?: string;
loading: boolean;
}

export const PartnersStep: FC<PartnersStepProps> = ({
Expand All @@ -32,6 +34,7 @@ export const PartnersStep: FC<PartnersStepProps> = ({
submitForm,
setFieldValue,
programId: formProgramId,
loading,
}) => {
const { t } = useTranslation();
const { baseUrl, programId, businessArea } = useBaseUrl();
Expand Down Expand Up @@ -73,7 +76,7 @@ export const PartnersStep: FC<PartnersStepProps> = ({
return (
<>
<Box display="flex" justifyContent="space-between" mt={2}>
<Grid size={{ xs:6 }}>
<Grid size={{ xs: 6 }}>
<Field
name="partnerAccess"
label={t('Who should have access to the program?')}
Expand Down Expand Up @@ -157,14 +160,15 @@ export const PartnersStep: FC<PartnersStepProps> = ({
{t('Back')}
</Button>
</Box>
<Button
<LoadingButton
data-cy="button-save"
variant="contained"
color="primary"
onClick={submitForm}
loading={loading}
>
{t('Save')}
</Button>
</LoadingButton>
</Box>
</Box>
</>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ import { FormikSelectField } from '@shared/Formik/FormikSelectField';
import { DividerLine } from '@core/DividerLine';
import { partnerAccessChoices } from '@components/programs/constants';
import { ProgramPartnerCard } from '../CreateProgram/ProgramPartnerCard';
import { LoadingButton } from '@components/core/LoadingButton';

interface PartnersStepProps {
values;
Expand All @@ -19,6 +20,7 @@ interface PartnersStepProps {
submitForm: () => void;
setFieldValue;
programId?: string;
loading: boolean;
}

export const PartnersStep: FC<PartnersStepProps> = ({
Expand All @@ -28,6 +30,7 @@ export const PartnersStep: FC<PartnersStepProps> = ({
submitForm,
setFieldValue,
programId: formProgramId,
loading,
}) => {
const { t } = useTranslation();
const { baseUrl, programId, businessArea } = useBaseUrl();
Expand Down Expand Up @@ -69,7 +72,7 @@ export const PartnersStep: FC<PartnersStepProps> = ({
return (
<>
<Box display="flex" justifyContent="space-between" mt={2}>
<Grid size={{ xs:6 }}>
<Grid size={{ xs: 6 }}>
<Field
name="partnerAccess"
label={t('Who should have access to the program?')}
Expand Down Expand Up @@ -145,14 +148,15 @@ export const PartnersStep: FC<PartnersStepProps> = ({
</Button>
</Box>
<Box display="flex">
<Button
<LoadingButton
data-cy="button-save"
variant="contained"
color="primary"
onClick={submitForm}
loading={loading}
>
{t('Save')}
</Button>
</LoadingButton>
</Box>
</Box>
</>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ export const CreateProgramPage = (): ReactElement => {
const { data: pdusubtypeChoicesData, loading: pdusubtypeChoicesLoading } =
usePduSubtypeChoicesDataQuery();

const [mutate] = useCreateProgramMutation({
const [mutate, { loading: loadingCreate }] = useCreateProgramMutation({
refetchQueries: () => [
{ query: ALL_PROGRAMS_QUERY, variables: { businessArea } },
],
Expand Down Expand Up @@ -362,6 +362,7 @@ export const CreateProgramPage = (): ReactElement => {
setStep={setStep}
submitForm={submitForm}
setFieldValue={setFieldValue}
loading={loadingCreate}
/>
)}
</div>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ export const DuplicateProgramPage = (): ReactElement => {
const { id } = useParams();
const location = useLocation();
const permissions = usePermissions();
const [mutate] = useCopyProgramMutation();
const [mutate, { loading: loadingCopy }] = useCopyProgramMutation();
const [step, setStep] = useState(0);
const { showMessage } = useSnackbar();
const { baseUrl, businessArea } = useBaseUrl();
Expand Down Expand Up @@ -383,6 +383,7 @@ export const DuplicateProgramPage = (): ReactElement => {
submitForm={submitForm}
setFieldValue={setFieldValue}
programId={id}
loading={loadingCopy}
/>
)}
</div>
Expand Down
25 changes: 13 additions & 12 deletions src/frontend/src/containers/pages/program/EditProgramPage.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -60,18 +60,19 @@ export const EditProgramPage = (): ReactElement => {
const { data: pdusubtypeChoicesData, loading: pdusubtypeChoicesLoading } =
usePduSubtypeChoicesDataQuery();

const [updateProgramDetails] = useUpdateProgramMutation({
refetchQueries: [
{
query: ALL_LOG_ENTRIES_QUERY,
variables: {
objectId: decodeIdString(id),
count: 5,
businessArea,
const [updateProgramDetails, { loading: loadingUpdate }] =
useUpdateProgramMutation({
refetchQueries: [
{
query: ALL_LOG_ENTRIES_QUERY,
variables: {
objectId: decodeIdString(id),
count: 5,
businessArea,
},
},
},
],
});
],
});

const [updateProgramPartners] = useUpdateProgramPartnersMutation({
refetchQueries: [
Expand Down Expand Up @@ -345,7 +346,6 @@ export const EditProgramPage = (): ReactElement => {
errors,
setErrors,
}) => {

const handleNextStep = async () => {
await handleNext({
validateForm,
Expand Down Expand Up @@ -437,6 +437,7 @@ export const EditProgramPage = (): ReactElement => {
submitForm={submitForm}
setFieldValue={setFieldValue}
programId={id}
loading={loadingUpdate}
/>
</div>
</Fade>
Expand Down

0 comments on commit 85aebfd

Please sign in to comment.