function onSubmit()

in projects/Aligned-Platform-EnergizeAI/app/src/components/topics/topic-form.tsx [50:112]


  function onSubmit(data: FormValues) {
    if (defaultValue) {
      updateMutation.mutate(
        {
          spaceId: space_id as string,
          topicId: defaultValue.id,
          title: data.title,
          description: data.description,
        },
        {
          onSuccess: () => {
            utils.topics.getTopicsTree.refetch()
            setOpen(false)

            form.reset()

            toast({
              title: "Success",
              description: "Topic updated successfully!",
              variant: "success",
            })
          },
          onError: (err) => {
            toast({
              title: "Error",
              description: err.message,
              variant: "destructive",
            })
          },
        },
      )
    } else {
      createMutation.mutate(
        {
          spaceId: space_id as string,
          title: data.title,
          description: data.description,
          parentId: parentTopicId,
        },
        {
          onSuccess: () => {
            utils.topics.getTopicsTree.refetch()
            setOpen(false)

            form.reset()

            toast({
              title: "Success",
              description: "Topic created successfully!",
              variant: "success",
            })
          },
          onError: (err) => {
            toast({
              title: "Error",
              description: err.message,
              variant: "destructive",
            })
          },
        },
      )
    }
  }