Merge, do not push to develop yet, Listening.tsx is not updated

This commit is contained in:
Carlos-Mesquita
2024-11-26 10:33:02 +00:00
44 changed files with 1989 additions and 1452 deletions

View File

@@ -1,9 +1,9 @@
import {Grading} from "@/interfaces";
import {Code, Group, User} from "@/interfaces/user";
import { Grading } from "@/interfaces";
import { Code, Group, User } from "@/interfaces/user";
import axios from "axios";
import {useEffect, useState} from "react";
import { useEffect, useState } from "react";
export default function useGradingSystem() {
export default function useGradingSystem(entity: string) {
const [gradingSystem, setGradingSystem] = useState<Grading>();
const [isLoading, setIsLoading] = useState(false);
const [isError, setIsError] = useState(false);
@@ -11,12 +11,12 @@ export default function useGradingSystem() {
const getData = () => {
setIsLoading(true);
axios
.get<Grading>(`/api/grading`)
.get<Grading>(`/api/grading?entity=${entity}`)
.then((response) => setGradingSystem(response.data))
.finally(() => setIsLoading(false));
};
useEffect(getData, []);
useEffect(getData, [entity]);
return {gradingSystem, isLoading, isError, reload: getData, mutate: setGradingSystem};
return { gradingSystem, isLoading, isError, reload: getData, mutate: setGradingSystem };
}

View File

@@ -1,11 +1,12 @@
import {useState, useMemo} from "react";
import { useState, useMemo } from "react";
import Input from "@/components/Low/Input";
import {search} from "@/utils/search";
import { search } from "@/utils/search";
export function useListSearch<T>(fields: string[][], rows: T[]) {
export function useListSearch<T>(fields: string[][], rows: T[], placeholder?: string) {
const [text, setText] = useState("");
const renderSearch = () => <Input type="text" name="search" onChange={setText} placeholder="Enter search text" value={text} />;
const renderSearch = () =>
<Input type="text" name="search" onChange={setText} placeholder={placeholder || "Enter search text"} value={text} />;
const updatedRows = useMemo(() => {
if (text.length > 0) return search(text, fields, rows);