Implemented sorted graph

This commit is contained in:
Sebastian Seedorf
2022-08-15 23:24:58 +02:00
parent 183396f599
commit 9082dcdd26
15 changed files with 464 additions and 71 deletions

View File

@@ -3,6 +3,7 @@ import {Group} from "../../src/types";
import {useLocalStorage} from "../../src/hooks/useLocalStorage";
import {ReactNodeLike} from "prop-types";
import pako from "pako";
import Dict = NodeJS.Dict;
interface Props {
children: ReactNodeLike
@@ -18,7 +19,7 @@ interface GroupContextType {
baseFactories: string[]
setBaseFactories(factories: string[]): void
groups: Record<string, Group>
groups: Dict<Group>
addGroup(name: string, exported?: string[], malls?: string[]): void
removeGroup(name: string): void
renameGroup(name: string, newName: string): void
@@ -56,7 +57,7 @@ const GroupContext = createContext<GroupContextType>(defaultValues);
export const useGroups = () => useContext(GroupContext)
interface StoredFile {
groups: Record<string, Group>,
groups: Dict<Group>,
basicValues: string[],
excludedSuggestions: string[]
}
@@ -64,7 +65,7 @@ interface StoredFile {
export const GroupProvider: FC<Props> = ({children}) => {
const [excludedSuggestions, setExcludedSuggestions] = useLocalStorage<string[]>('excludedSuggestions', [])
const [basicValues, setBasicValues] = useLocalStorage<string[]>('basicValues', [])
const [groups, setGroups] = useLocalStorage<Record<string, Group>>('serviceGroups', {})
const [groups, setGroups] = useLocalStorage<Dict<Group>>('serviceGroups', {})
const doNotSuggest = useMemo<Set<string>>(() => {
return new Set([...Object.values(groups).flatMap(group => [...group.exports, ...group.malls]), ...excludedSuggestions, ...basicValues])