Skip to content

Commit 082190e

Browse files
purfectliteraturecysjonathan
authored andcommitted
refactor(NameDescriptionForm): remove react-emitter-factory
1 parent fb8e85d commit 082190e

File tree

4 files changed

+9
-18
lines changed

4 files changed

+9
-18
lines changed

client/app/bundles/course/group/forms/NameDescriptionForm.jsx

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import useEmitterFactory from 'react-emitter-factory';
1+
import { useEffect } from 'react';
22
import { Controller, useForm } from 'react-hook-form';
33
import { defineMessages, FormattedMessage } from 'react-intl';
44
import { yupResolver } from '@hookform/resolvers/yup';
@@ -44,7 +44,7 @@ const validationSchema = yup.object({
4444
});
4545

4646
const NameDescriptionForm = (props) => {
47-
const { initialValues, onSubmit } = props;
47+
const { initialValues, onSubmit, onDirtyChange } = props;
4848
const {
4949
control,
5050
handleSubmit,
@@ -55,13 +55,9 @@ const NameDescriptionForm = (props) => {
5555
resolver: yupResolver(validationSchema),
5656
});
5757

58-
useEmitterFactory(
59-
props,
60-
{
61-
isDirty,
62-
},
63-
[isDirty],
64-
);
58+
useEffect(() => {
59+
onDirtyChange?.(isDirty);
60+
}, [isDirty]);
6561

6662
return (
6763
<form
@@ -119,6 +115,7 @@ const NameDescriptionForm = (props) => {
119115
NameDescriptionForm.propTypes = {
120116
initialValues: PropTypes.object,
121117
onSubmit: PropTypes.func.isRequired,
118+
onDirtyChange: PropTypes.func,
122119
};
123120

124121
export default NameDescriptionForm;

client/app/bundles/course/group/pages/GroupNew/index.jsx

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -56,13 +56,11 @@ const PopupDialog = ({ dispatch, intl, isManagingGroups }) => {
5656
skipConfirmation={!isDirty}
5757
>
5858
<NameDescriptionForm
59-
emitsVia={(nameDescriptionForm) =>
60-
setIsDirty(nameDescriptionForm.isDirty)
61-
}
6259
initialValues={{
6360
name: '',
6461
description: '',
6562
}}
63+
onDirtyChange={setIsDirty}
6664
onSubmit={onFormSubmit}
6765
/>
6866
</GroupFormDialog>

client/app/bundles/course/group/pages/GroupShow/CategoryCard.jsx

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -172,13 +172,11 @@ const CategoryCard = ({
172172
skipConfirmation={!isDirty}
173173
>
174174
<NameDescriptionForm
175-
emitsVia={(nameDescriptionForm) =>
176-
setIsDirty(nameDescriptionForm.isDirty)
177-
}
178175
initialValues={{
179176
name: category.name,
180177
description: category.description,
181178
}}
179+
onDirtyChange={setIsDirty}
182180
onSubmit={onFormSubmit}
183181
/>
184182
</GroupFormDialog>

client/app/bundles/course/group/pages/GroupShow/GroupManager/GroupUserManager.jsx

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -496,13 +496,11 @@ const GroupUserManager = ({
496496
skipConfirmation={!isDirty}
497497
>
498498
<NameDescriptionForm
499-
emitsVia={(nameDescriptionForm) =>
500-
setIsDirty(nameDescriptionForm.isDirty)
501-
}
502499
initialValues={{
503500
name: group.name,
504501
description: group.description,
505502
}}
503+
onDirtyChange={setIsDirty}
506504
onSubmit={onFormSubmit}
507505
/>
508506
</GroupFormDialog>

0 commit comments

Comments
 (0)