Skip to content

Commit

Permalink
remove scorer type page (#767)
Browse files Browse the repository at this point in the history
  • Loading branch information
larisa17 authored Jan 13, 2025
1 parent 06a89a4 commit b3b523f
Show file tree
Hide file tree
Showing 2 changed files with 34 additions and 4 deletions.
1 change: 1 addition & 0 deletions interface/components/CommunityList.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -129,6 +129,7 @@ const CommunityList = () => {
isOpen={selectUseCaseModalOpen}
existingScorers={communities}
onClose={() => setSelectUseCaseModalOpen(false)}
refreshCommunities={fetchCommunities}
/>
</>
);
Expand Down
37 changes: 33 additions & 4 deletions interface/components/UseCaseModal.tsx
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// --- React components/methods
import React, { useEffect, useState } from "react";
import React, { useEffect, useState, useCallback } from "react";
import { useNavigate } from "react-router-dom";

// --- Components
Expand All @@ -15,6 +15,7 @@ import {
ModalContent,
ModalBody,
ModalHeader,
useToast,
} from "@chakra-ui/react";
import {
DotsCircleHorizontalIcon,
Expand All @@ -23,7 +24,8 @@ import {
StatusOnlineIcon,
} from "./CustomIcons";
import { PrimaryBtn } from "./PrimaryBtn";
import { Community } from "../utils/account-requests";
import { warningToast } from "./Toasts";
import { Community, createCommunity } from "../utils/account-requests";

export interface UseCaseInterface {
icon: (fill?: string) => JSX.Element;
Expand Down Expand Up @@ -65,12 +67,14 @@ interface UseCaseModalProps {
isOpen: boolean;
existingScorers: Community[];
onClose: () => void;
refreshCommunities: () => void;
}

const UseCaseModal = ({
isOpen,
existingScorers,
onClose,
refreshCommunities,
}: UseCaseModalProps): JSX.Element => {
const [wizardStep, setWizardStep] = useState(1);
const [useCase, setUseCase] = useState<UseCaseInterface | undefined>(
Expand Down Expand Up @@ -133,6 +137,7 @@ const UseCaseModal = ({
setWizardStep={setWizardStep}
closeModal={closeModal}
existingScorers={existingScorers}
refreshCommunities={refreshCommunities}
/>
)}
</ModalBody>
Expand Down Expand Up @@ -239,6 +244,7 @@ interface UseCaseDetailsProps {
setScorerDescription: (description: string) => void;
setWizardStep: (wizardStep: number) => void;
closeModal: () => void;
refreshCommunities: () => void;
}

const UseCaseDetails = ({
Expand All @@ -248,10 +254,13 @@ const UseCaseDetails = ({
existingScorers,
setScorerName,
setScorerDescription,
closeModal,
refreshCommunities,
}: UseCaseDetailsProps) => {
const navigate = useNavigate();
const [useCaseError, setUseCaseError] = useState<string>();

const toast = useToast();
const [isLoading, setIsLoading] = useState(false);
const hasDuplicateName = () => {
const existingScorer = existingScorers.find(
(scorer) => scorer.name === scorerName
Expand All @@ -265,6 +274,25 @@ const UseCaseDetails = ({
}
};

const createScorer = useCallback(async () => {
try {
setIsLoading(true);
await createCommunity({
name: scorerName,
description: scorerDescription,
use_case: useCase!.title,
rule: "LIFO",
scorer: "WEIGHTED",
});
localStorage.setItem("scorerCreated", "true");
setIsLoading(false);
closeModal();
refreshCommunities();
} catch (e) {
toast(warningToast("Something went wrong. Please try again.", toast));
}
}, [scorerName, scorerDescription, useCase, toast, closeModal]);

const switchToSelectMechanism = () => {
if (!hasDuplicateName()) {
localStorage.setItem(
Expand All @@ -275,7 +303,8 @@ const UseCaseDetails = ({
description: scorerDescription,
})
);
navigate("/new-scorer");
console.debug("Saving the score here .... ");
createScorer();
}
};

Expand Down

0 comments on commit b3b523f

Please sign in to comment.