Skip to content

Commit 7f12cb6

Browse files
committed
change structure
1 parent 9c11fc6 commit 7f12cb6

1 file changed

Lines changed: 21 additions & 9 deletions

File tree

components/form/settings.tsx

Lines changed: 21 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -207,15 +207,18 @@ export default function SettingsForms({ dataForm }: { dataForm: any }) {
207207

208208
const [usernamePeopleToAdd, setUsernamePeopleToAdd] = useState("")
209209
const [checkIfUsernameExist, setCheckIfUsernameExist] = useState(false)
210-
const addOrRemoveCollaborator = async (pseudo: string) => {
210+
const addCollaborator = async (pseudo: string) => {
211211
setCheckIfUsernameExist(true)
212212
checkIdAvailability("users", pseudo)
213213
.then((isAvailable) => {
214214
if (isAvailable) {
215215
let updatedFormData = {
216-
collaborators: dataForm.collaborators.includes(pseudo)
217-
? dataForm.collaborators.filter((item) => item !== pseudo)
218-
: [...dataForm.collaborators, pseudo],
216+
collaborators: [
217+
...dataForm.collaborators,
218+
{
219+
pseudo: pseudo,
220+
},
221+
],
219222
}
220223

221224
updateFormDocument({ id, updatedFormData })
@@ -234,6 +237,15 @@ export default function SettingsForms({ dataForm }: { dataForm: any }) {
234237
setCheckIfUsernameExist(false)
235238
})
236239
}
240+
const removeCollaborator = async (pseudo: string) => {
241+
let updatedFormData = {
242+
collaborators: dataForm.collaborators.filter(
243+
(item) => item.pseudo !== pseudo
244+
),
245+
}
246+
247+
updateFormDocument({ id, updatedFormData })
248+
}
237249

238250
const onSubmit = async (data) => {
239251
const {
@@ -403,7 +415,7 @@ export default function SettingsForms({ dataForm }: { dataForm: any }) {
403415
className="shrink-0"
404416
onClick={() => {
405417
setUsernamePeopleToAdd("")
406-
addOrRemoveCollaborator(usernamePeopleToAdd)
418+
addCollaborator(usernamePeopleToAdd)
407419
}}
408420
>
409421
{checkIfUsernameExist && (
@@ -416,23 +428,23 @@ export default function SettingsForms({ dataForm }: { dataForm: any }) {
416428
<div className="w-full flex flex-col gap-2">
417429
{dataForm.collaborators.map((collaborator, index) => (
418430
<div
419-
key={collaborator}
431+
key={collaborator.pseudo}
420432
className="w-full flex items-center bg-slate-50 dark:bg-slate-800 py-3 px-5 rounded-md"
421433
>
422434
<div className="w-full flex">
423435
<a
424-
href={`/user/${collaborator}`}
436+
href={`/user/${collaborator.pseudo}`}
425437
className="text-sm font-semibold underline underline-offset-4 cursor-pointer"
426438
>
427-
{collaborator}
439+
{collaborator.pseudo}
428440
</a>
429441
</div>
430442
<span
431443
className="shrink-0 block text-sm text-red-600 font-medium underline underline-offset-4 cursor-pointer"
432444
onClick={() => {
433445
isLoadingUpdateForm
434446
? undefined
435-
: addOrRemoveCollaborator(collaborator)
447+
: removeCollaborator(collaborator.pseudo)
436448
}}
437449
>
438450
Remove

0 commit comments

Comments
 (0)